Комплексное исследование умножителей в диапазоне 3 - 64 бит

Материал из Модулярная арифметики
(Различия между версиями)
Перейти к: навигация, поиск
Строка 27: Строка 27:
 
|-
 
|-
 
|}
 
|}
 +
 +
== Ссылки на генераторы Verilog описаний исследуемых схем  ==
 +
Для каждой из схем были написаны генераторы поведенческих описаний на языке Verilog:
 +
 +
* [http://vscripts.ru/2013/high-bit-int-multiplication.php Модулярный умножитель со стандартным спец. базисом из трех модулей (''3 moduli set'')]
 +
* [http://vscripts.ru/2013/high-bit-int-multiplication-4-mod-generator.php Модулярный умножитель с продвинутым спец. базисом из 4-х модулей (''4 moduli set'')
 +
* [http://vscripts.ru/2013/high-bit-int-multiplication-hierarchical.php Иерархический двоичный умножитель [1].
 +
*
 +
  
 
== Сравнение двоичных схем  ==
 
== Сравнение двоичных схем  ==
Строка 36: Строка 45:
  
 
== Анализ эффективности САПР в режиме ULTRA high effort  ==
 
== Анализ эффективности САПР в режиме ULTRA high effort  ==
Граффики скомпонованы для иллюстрации эффективности ULTRA режима.  
+
Графики скомпонованы для иллюстрации эффективности ULTRA режима.  
 
[[Изображение:ultra1.JPG]]
 
[[Изображение:ultra1.JPG]]
  

Версия 12:25, 17 мая 2013

В рамках работы по разработке эффективных модулярных устройств было проведено исследование различных вариантов построения однотактовых двоичных и модулярных умножителей с входными операндами в диапазоне 3-64 бит. Такие устройства чрезвычайно важны в современной микроэлектронике. Каждый современный микропроцессор имеет такую операцию в составе своего набора инструкций, а продвинутые DSP процессоры содержат специальные вычислительные блоки для ускоренного вычисления [1]. Исследовались 4 варианта однотактовых умножителей:

  • Встроенный умножитель в САПР Synopsys Design Compiler.
  • Иерархический двоичный умножитель [1].
  • Модулярный умножитель со стандартным спец. базисом из трех модулей (3 moduli set) (2^n-1, 2^n, 2^n+1)
  • Модулярный умножитель с продвинутым спец. базисом из 4-х модулей (4 moduli set) (2^n-1, 2^n+1, 2^{n+1}-1, 2^{n+1}+1)

Синтез проводился в базисе 45 нм. в библиотеке NangateOpenCellLibrary.lib с помощью САПР Synopsys Design Compiler. Синтез проводился дважды для каждой из схем, на разных настройках "усилий" синтезатора - medium и ultra high effort. Таким образом, также проверялась способность САПРа по минимизации задержек для различных схем. Общее количество тестов выглядит следующим образом.

Модулярный Двоичный
3 moduli set 4 moduli set Встроенный Иерархический
medium effort ultra effort medium effort ultra effort medium effort ultra effort medium effort ultra effort

Ссылки на генераторы Verilog описаний исследуемых схем

Для каждой из схем были написаны генераторы поведенческих описаний на языке Verilog:


Сравнение двоичных схем

Иерархический умножитель прекрасно себя показал в сравнении с встроенным вариантом. Несмотря на возрастающую площадь, задержка сократилась примерно вдвое. Однако, на ULTRA настройках синтезатора все преимущества сошли на нет. И в площади и в задержке встроенный вариант "Synopsys DC" значительно превзошел иерархическую схему. Встроенный вариант оказался наиболее "восприимчив" к настройкам синтезатора.


Bin1.JPG Bin2.JPG

Анализ эффективности САПР в режиме ULTRA high effort

Графики скомпонованы для иллюстрации эффективности ULTRA режима. Ultra1.JPG

Ultra2.JPG

Ultra3.JPG


Наибольшую эффективность режима удалось достичь на схеме встроенного умножителя. Наименьшее влияние режим оказал на модулярные схемы. Средние значения коэффициентов увеличения производительности сведены в табличку.


Схема умножителя Средний коэффициент увеличения производительности
Встроенный умножитель в САПР Synopsys Design Compiler. 68
Иерархический двоичный умножитель 31
Модулярный умножитель со стандартным спец. базисом из трех модулей 28
Модулярный умножитель с продвинутым спец. базисом из 4-х модулей --

Площадь также сокращается. Наибольшее сокращение продемонстрировал иерархический умножитель.


[1] Vladimir V.Erokhin "Integer multiplication algorithms. Methodology and implementation results"


Персональные инструменты
Пространства имён

Варианты
Действия
Навигация