Генератор Verilog для вычисления скалярного произведения на базе модулярной арифметики

Выберите размерность входных данных (от 4 до 24 бит):
Выберите максимальную длину вектора (от 4 до 1024):
Округлить результат:
Добавить 2 допонительных модуля для коррекции ошибки:
Разрядность выхода рассчитывается таким образом что бы операции над самым длинным вектором не выводили за границы диапазона.

Битность входа: 8 Максимальное значение на входе: 255
Битность выхода: 18 Максимальное значение на выходе: 260100
Набор модулей: 3 5 7 11 13 17 19
Покрываемый диапазон: 4849845


Описание:
1) Задержка между данными и получением ответа на выходе устройства ровно 6 тактов: 2 такта конвейера прямое преобразование, 3 такта конвейера умножение и последний такт конвейера на сложение.
2) Отсутствует обратное преобразование результата, которое будет выполняться всего один раз в самом конце вычислений. Для этого можно использовать модуль отсюда: конвейерный обратный преобразователь на базе полиадического кода или отсюда конвейерный обратный преобразователь на базе полиадического кода с коррекцией ошибок".
3) Test bench может работать некорректно на данных выходящих за 32 бита. Но сама схема должна работать корректно.



На главную