_Sam_ 0 15 марта, 2005 Опубликовано 15 марта, 2005 · Жалоба Есть двоичный рекурсивный код. Получается при помощи формулы, например такой x11 = x1 xor x5 xor x10, но вообще необязательно xor , может быть любая бинарная операция, равно как и количество операндов входящих в неё, кроме того допускается использование констант. Для этой формулы задаётся начальная константа = 0 и осуществляется рекурсивное построение кода. У меня есть такой код(2^17 значений) и формула по которой он был синтезирован. Задача сводится к тому чтобы, для произвольного 17разрядного значения кода определить число шагов рекурсии, которое необходимо для его синтеза. Самый простой способ - использование ппзу емкостью 2^17 слов. Тогда адрес - это одно из значений кода, а то что лежит по адресу - искомое число шагов рекурсии. Хотелось бы найти более простое решение, которое можно было бы реализовать в качестве комбинационной логике на ПЛИС. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
yornik 0 15 марта, 2005 Опубликовано 15 марта, 2005 · Жалоба На мой взгляд, Вы слишком большой оптимист, если думаете, что решение может быть найдено для такого общего случая. Самое похожее, что мне встречалось - это нахождение члена рекуррентного ряда по его номеру (e.g., числа Фибоначчи x(n+2) = x(n+1)+x(n), x(0)=x(1)=1), и там, как, впрочем, и в теории простейших диффуров, все упирается в невозможность формулой определить корни уравнения степени более 4. Предполагаю (я совсем не математик), что использование в уравнении только 0 и 1 (а не всех целых чисел) не делает задачу аналитически решаемой в общем случае. Еще, это напоминает задачу построения системы связи с шумоподобными сигналами при необходимости обеспечить синхронизацию приемника за заданное время. Но книжек по теме назвать не смогу. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
_Sam_ 0 16 марта, 2005 Опубликовано 16 марта, 2005 · Жалоба Посмотрел на задачу немного с другой стороны. Есть два множества, элементы которых однозначно отображаются друг на друга. Найти закон отображения. Наверняка должны быть какие-нибудь математические пакеты, которые позволяют это сделать, хотя бы в первом приближении. По поводу нулей и единиц возникла такая мысль. Составить для каждого разряда свою ДНФ и попытаться её минимизировать. Естественно порядки не те , чтобы делать это вручную. Может попробую на этой недели сгенерировать эти формулы и загнать их например в LeonardoSpectrum. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться