Цитата(tegumay @ Oct 19 2005, 20:45)
А корпуса?))
А остаточные классы мы недавно проходили, только преобразовывать данные из них и обратно очень весело для проца))
Извините если небольшой оффтопик... хотел раз уж затронули эту тему сделать небольшое сообщение.
Результаты моей работы таковы.
Все модульные операции (умножение, сложение, вычитание) выполняются в СОК за 1 такт и время выполнения (при достаточном количестве блочной памяти на используемой ПЛИС) зависит только от скорости блочной памяти.
Устройство преобразования работает за log2(n) где n - количество разрядов двоичного числа на входе. Скорость работы равна опять же скорости работы блочной памяти. В конвейерном режиме преобразование выполняется за 1 такт опять же с задержкой на указанное выше количество тактов.
Преобразование из СОК в ОПСС (обобщенная позиционная система счисления, где числа можно сравнивать и вычислять другие позиционные характеристики) производится за несоклько большее чем прямое преобразование число тактов, опять же со скоростью блочной памяти и за 1 такт в конвейерном режиме.
Окончательное преобразование для вывода результата в позиционной системе счисления будет ограничено работой умножителя разрядностью входного двоичного числа. Т.е. это операция действительно медленная по сравнению с остальными но требуется только для вывода результатов.
Учитывая что все что работает на блочной памяти (все кроме последнего) работает практически с одинаковой скоростью независимо от разрядности входного числа все не так уж плохо...
кстати спасибо всем кто ответил по поводу выбора ПЛИС. Это стимулировало поискать меня и сделать для себя обзор того что существует. Выбор я остановил на одной из микросхем VirtexIV.
С уважением, Yuri aka Frob.