Предполагается, что FPGA обеспечивает только простые логические элементы и триггеры и что бит-бит является N битами и содержит значение, когда выбран используемый бит, а затем ресурсы, используемые два решения:
- Сдвиг решение:
- N триггеров для движущимися
- N 2-1 мультиплексоров для триггера загрузки
- Мультиплексор раствора:
- (N - 1) 2-1 мультиплексоров для увеличения Н-1 мультиплексор
- log2 (N) триггера для счетчика
Так что этот вес в направлении mux-решение, так как оба требуют почти одинакового количества 2-1 мультиплексоров из-за требуемой начальной загрузки N-разрядного сдвигового регистра, но для решения мультиплексирования требуется меньше триггеров.
Однако FPGA сильно зависят от LUT, которые обычно основаны на небольшой памяти, а дополнительная особенность заключается в том, что эти небольшие воспоминания часто могут использоваться в качестве сдвиговых регистров. FPGA с этой функцией позволяет записывать LUT-память напрямую, а затем перемещаться, и это можно сделать без использования 2-1 мультиплексоров для загрузки. Таким образом, в этом случае ресурсы, используемые для решения сдвига являются:
- решения сдвига с LUT для сдвига:
- ? LUT для загрузки и сдвиг
Поэтому вывод о том, что лучший способ для определения и достижения оптимального решения для ПЛИСА, должна знать и использовать особенность конкретного целевого FPGA, а затем попробовать чтобы убедиться, что инструмент синтеза правильно отображает дизайн.
Я думаю, вы получите ответы на все: http://electronics.stackexchange.com/ – idstam
Я думал, что это нормально, чтобы публиковать здесь. Я видел, что есть тег, поэтому я подумал, что все в порядке. Спасибо за помощь. – haster8558
Этот вопрос представляется не по теме, потому что он перекрестно размещен на EE. http://electronics.stackexchange.com/questions/144254/shift-register-vs-multiplexer –