реклама на сайте
подробности

 
 
> Сложение чисел, Какой метод будет работать быстрее?
BlackOps
сообщение Oct 10 2010, 23:24
Сообщение #1


Знающий
****

Группа: Свой
Сообщений: 618
Регистрация: 7-06-08
Из: USSR
Пользователь №: 38 121



вот к примеру простенкий код:
Код
entity test1 is
port (
b : in std_logic_vector(7 downto 0);
c : in std_logic_vector(7 downto 0);
    a : out std_logic_vector(7 downto 0)
    );
end entity;

architecture Behavioral of test1 is
begin
a <= b + c;
end Behavioral;


а вот РТЛ реализация прикреплена.

так вот я думаю... данная сгенерированная реализация ето не что иное как Carry-Lookahead-Adder?

К примеру который приведен на етой страничке:
Carry-Lookahead-Adder

хотя..если сравнивать подробнее то это разные реализации...

Так вот вопрос такой... стоит ли однажды написать свою реализацию сумматора по принципу того что показан на линке вышеа потом инстанциировать его где нужно вместо того чтобы писать c <= a + b?
Или вполне нормально писать c <= a + b в результате чего синтезатор сгенерит то что я прикрепил файлом? Что будет быстрее работать?

я сейчас понял это одинаковые реализации, просто в случае с синтезатором он сгенерил мультиплексоры, а та что на линке в виде гейтов показана..

значит я так понял использовать сложение также быстро и ничего в этом плохово нету

Сообщение отредактировал BlackOps - Oct 10 2010, 22:49
Эскизы прикрепленных изображений
Прикрепленное изображение
 


--------------------
Нажми на кнопку - получишь результат, и твоя мечта осуществится
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Shtirlits
сообщение Oct 11 2010, 10:05
Сообщение #2


Знающий
****

Группа: Свой
Сообщений: 845
Регистрация: 18-10-04
Из: Pereslavl-Zalessky, Russian Federation
Пользователь №: 905



Carry look ahead работает на длинных сумматорах, так как мультиплексор старших разрядов должен оказаться выгоднее прохождения переноса напрямую. Интуиция говорит что-то о 128 битах и больше. Нужно смотреть datasheet в разделе performance на конкретную микросхему и прикидывать.

Писание сумматора самому может быть осмыслено, если синтезатор не справляется на данной архитектуре.
Однако, использование самописного сумматора вместо абстрактоного оператора + ограничивает возможности портирования.

В упомянутой теме еще не все точки на i поставлены, так как было мало попыток для xilinx, где в принципе возможно ручное размещение и упаковка. Возможно, использование carry даст нужный результат, когда сумматоры будут расположены не кружочком, как их ставят роботы, а по уму.
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 19th July 2025 - 22:17
Рейтинг@Mail.ru


Страница сгенерированна за 0.01385 секунд с 7
ELECTRONIX ©2004-2016