|
сумматор при сложении возникают ошибки |
|
|
|
 |
Ответов
|
May 18 2015, 04:11
|
Знающий
   
Группа: Свой
Сообщений: 721
Регистрация: 23-10-08
Из: next to Odessa
Пользователь №: 41 112

|
Цитата(Golikov A. @ May 17 2015, 22:04)  если 1 сумматор должен за 16 тактов сложить 16 значений, то 2 сумматора должны за 16 тактов сложить уже 8 значений, то есть по 2 такта на значение. И так далее... то есть можно поставить в параллель 4 сумматора... Хороший метод! Есть еще один, он описан в XST User Guide от Xilinx, специально для ускорения в сумматорах с большой разрядностью. Там отдельно суммируются старшие и младшие части, с разрывом переноса. Младшие части суммируются как обычно на одном сумматоре, а вот для суммирования старших применяют уже два отдельных сумматора. При этом на один подают единицу переноса в младший разряд, а на второй нет. Потом выходы сумматоров старших частей поступают на двух-входовой коммутатор, управляемый сигналом выхода переноса с сумматора младших частей, и на выходе коммутатора сформируется реальная сумма старших частей. Таким образом, избегают сквозного переноса вдоль всего много разрядного сумматора.
Эскизы прикрепленных изображений
|
|
|
|
|
May 18 2015, 06:46
|
Знающий
   
Группа: Свой
Сообщений: 802
Регистрация: 11-05-07
Из: Томск
Пользователь №: 27 650

|
Цитата(Serhiy_UA @ May 18 2015, 11:11)  Хороший метод! Есть еще один, он описан в XST User Guide от Xilinx, специально для ускорения в сумматорах с большой разрядностью. Там отдельно суммируются старшие и младшие части, с разрывом переноса. Младшие части суммируются как обычно на одном сумматоре, а вот для суммирования старших применяют уже два отдельных сумматора. При этом на один подают единицу переноса в младший разряд, а на второй нет. Потом выходы сумматоров старших частей поступают на двух-входовой коммутатор, управляемый сигналом выхода переноса с сумматора младших частей, и на выходе коммутатора сформируется реальная сумма старших частей. Таким образом, избегают сквозного переноса вдоль всего много разрядного сумматора. По моему опыту работы с продукцией Xilinx (про Альтеру молчу ибо не имел опыта) сквозной перенос через 32 бита будет по времянке гораздо лучше, чем перенос через 16 бит плюс внешний _асинхронный_ мультиплексор 2 в 1. Видимо эта рекомендация относилась к очень старым семействам Xilinx. В современных архитектурах логика переноса настолько разогнана по времянке, что пользовать какие-то трюки для ускрения переноса становится бессмысленно.
|
|
|
|
|
May 18 2015, 07:14
|
Знающий
   
Группа: Свой
Сообщений: 721
Регистрация: 23-10-08
Из: next to Odessa
Пользователь №: 41 112

|
Цитата(Bad0512 @ May 18 2015, 09:46)  ...что пользовать какие-то трюки для ускрения переноса становится бессмысленно. Возможно, так. Но метод такой есть, и я его применял лет 6 назад на FLEX10K (Альтера), что очень мне тогда помогло. Интересно так же и то, что в последних XST User Guide от Xilinx этот метод уже не упоминается.. Хотя кто его знает, может, кому и сгодится, скажем, при суммировании на очень больших разрядностях...
|
|
|
|
Сообщений в этой теме
sergey sva сумматор при сложении возникают ошибки May 17 2015, 16:32 Maverick Цитата(sergey sva @ May 17 2015, 19:32) Н... May 17 2015, 16:53 des00 Цитата(sergey sva @ May 18 2015, 00:32) с... May 17 2015, 17:07 sergey sva Тамквест на некоторые цепи которые работают от дру... May 17 2015, 17:11 Александр77 Цитата(sergey sva @ May 17 2015, 20:11) И... May 17 2015, 17:48 des00 Цитата(sergey sva @ May 18 2015, 01:11) Т... May 17 2015, 17:50  des00 Цитата(Serhiy_UA @ May 18 2015, 11:11) Ес... May 18 2015, 06:31 sergey sva Переделал счетчик на 16 разрядный на 100мгц считае... May 19 2015, 07:30
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0
|
|
|