Комплексное исследование обратных преобразователей

Материал из Модулярная арифметики
Перейти к: навигация, поиск

Описание эксперимента

Было проведено исследование универсальных обратных преобразователей (для произвольных систем модулей). Для тестирования использовались следующие подходы:

Исследовались задержка и площадь. Также для спец. систем модулей сравнивались параметры со специализированными конвертерами.

Библиотека стандартных ячеек

NangateOpenCellLibrary.lib

Скрипт для запуска

set seq_run {"poilad-lut-511-512-513" "poilad-511-512-513" "seq-511-512-513"}
set comb_run {"comb-511-512-513"}

foreach design $comb_run {

	lappend search_path "../libs" "../src" "./verilog" "./"
	set target_library "NangateOpenCellLibrary.db"
	set link_library [list "*" $target_library]

	analyze -format verilog $design.v

	elaborate reverse_conv
	uniquify
	current_design reverse_conv
	check_design
	set_load [load_of [get_lib_pins NangateOpenCellLibrary/INV_X4/A]] [all_outputs]
	set_driving_cell -lib_cell DFFRS_X2 -library NangateOpenCellLibrary -pin Q  [all_inputs] 
	set_max_delay -to [all_outputs] 0 
	set_max_area 0 
	compile
	report_timing -significant_digits 6 -max_paths 10 > "timing.$design.rpt"
	report_area > "area.$design.rpt"
	report_power -analysis_effort high > "power.$design.rpt"

	remove_design -all
}

#with_clock
foreach design $seq_run {

	lappend search_path "../libs" "../src" "./verilog" "./"
	set target_library "NangateOpenCellLibrary.db"
	set link_library [list "*" $target_library]

	analyze -format verilog $design.v

	elaborate reverse_conv
	uniquify
	current_design reverse_conv
	check_design
	set_load [load_of [get_lib_pins NangateOpenCellLibrary/INV_X4/A]] [all_outputs]
	set_driving_cell -lib_cell DFFRS_X2 -library NangateOpenCellLibrary -pin Q  [all_inputs] 
	set_max_delay -to [all_outputs] 0 
	set_max_area 0 
	create_clock clk -period 0.1
	set_clock_uncertainty 0.0 [all_clocks]
	set_dont_touch_network [all_clocks]
	compile
	report_timing -significant_digits 6 -max_paths 10 > "timing.$design.rpt"
	report_area > "area.$design.rpt"
	report_power -analysis_effort high > "power.$design.rpt"

	remove_design -all
}

Результаты

Модули (3 5 7)

Метод Задержка Общая латентность Площадь Мощность
CRT 2 Комбинационная 1.657336 1.657336 588 0.454
CRT 2 Конвеерная 1.03069 2.06138 678 0.493
Полиадический c LUT 0.408523 1.225569 468 2.3425
Полиадический без таблиц LUT 0.694463 2.083389 507 3.1857

Модули (193 257 449)

Метод Задержка Общая латентность Площадь Мощность
CRT 2 Комбинационная 4.360145 4.360145 4162 5.1871
CRT 2 Конвеерная 3.181364 6.362728 4317 37
Полиадический c LUT 1.034454 3.103362 81678 107
Полиадический без таблиц LUT 2.091278 6.273834 3213 27


Выводы

Файлы с входными данными

Файл с результатами