Рефераты. Разработка двоичного сумматора по модулю 13

Рис.3. Схема сумматора. Вариант 2.


Таблица 2.


Количество использованных ресурсов ПЛИС

макроячейки

(macrocells)

конъюнкт. термы

(product terms)

входы функц. блоков

(func. block inputs)

xc9500xl

24

167

98

CoolRunner

18

91

39

 

Вариант 3

Проанализировав данную схему (рис.4.), можно сделать вывод о том, что она является наиболее сложной схемой, в плане реализации, а также по количеству использованных ресурсов ПЛИС (таблица 3).

Рис.4. Схема сумматора. Вариант 3.


Таблица 3.


Количество использованных ресурсов ПЛИС

макроячейки

(macrocells)

конъюнкт. термы

(product terms)

входы функц. блоков

(func. block inputs)

xc9500xl

26

241

73

CoolRunner

20

67

29


2.3 Описание сумматора на языке VHDL


Данный способ реализации цифровых устройств пользуется наибольшей популярностью во всем мире. Ниже приведен текст на языке VHDL, описывающий поведение десятичного сумматора с кодом 7-4-2-1, и результаты трассировки данного варианта.


library IEEE;

use IEEE.STD_LOGIC_1164.ALL;

use IEEE.STD_LOGIC_ARITH.ALL;

use IEEE.STD_LOGIC_UNSIGNED.ALL;

entity sum_vhdl is

Port ( I : in std_logic_vector(8 downto 0);

O : out std_logic_vector(4 downto 0));

end sum_vhdl;


architecture Behavioral of sum_vhdl is

signal sum: std_logic_vector(4 downto 0);

signal sum_prom: std_logic_vector(3 downto 0);

signal A: std_logic_vector(3 downto 0);

signal B: std_logic_vector(3 downto 0);

begin


A <= I(4 downto 1) when I(4 downto 1) < "0111" else (I(4 downto 1) - "0001");


B <= I(8 downto 5) when I(8 downto 5) < "0111" else (I(8 downto 5) - "0001");


sum <= ('0'&A) + ('0'&B) + I( 0 );


sum_prom(3 downto 0) <= sum(3 downto 0) when sum < "01101"

else (sum(3 downto 0) + "0011");


O(3 downto 0) <= sum_prom(3 downto 0) when sum_prom(3 downto 0) < "0111"

else (sum_prom(3 downto 0) + "0001");



O( 4 ) <= '0' when sum < "01101" else '1';


end Behavioral;


Таблица 4.


Количество использованных ресурсов ПЛИС

макроячейки

(macrocells)

конъюнкт. термы

(product terms)

входы функц. блоков

(func. block inputs)

xc9500xl

18

241

74

CoolRunner

21

80

42

 

2.4 Сравнительный анализ используемых ресурсов для различных вариантов реализации схемы


Таблица 5. Результаты трассировки для xc9500xl.

xc9500xl

Количество использованных ресурсов ПЛИС

macrocells

product terms

function block inputs

Вариант 1

23

160

92

Вариант 2

24

167

98

Вариант 3

26

241

73

Вариант 4 (VHDL)

18

241

74


Таблица 6. Результаты трассировки для CoolRunner.

CoolRunner

Количество использованных ресурсов ПЛИС

macrocells

product terms

function block inputs

Вариант 1

15

78

29

Вариант 2

18

91

39

Вариант 3

20

67

29

Вариант 4 (VHDL)

21

80

42

 

2.5 Покрытие блоков


Проведя сравнительный анализ по таблицам 5, 6, можно сделать вывод о том, что оптимальным является первый вариант разложения. Проведем покрытие блоков при помощи мультиплексоров типа 4/1.

С помощью мультиплексора типа 4/1 можно реализовать любую логическую функцию 3-х аргументов, поскольку при разложении исключаются 2 аргумента, а на входы  подаются функции одного аргумента. Это могут быть либо константы «0», «1», либо функция тождества, либо функция инверсии 3-го аргумента.

Логическая последовательность первого блока:


   0012   345*    6633   700*

Матрицы разложения имеют вид:


1)

2)

3)


Используя данные разложения, представим схему данного блока (графическая работа “Схема электрическая принципиальная блока DC1”).


Логическая последовательность второго блока:


    0112    2302  1203    0013   0222   0013   13*3   1120



Матрицы разложения имеют вид:

1)

2)


Используя данные разложения, представим схему данного блока (графическая работа “Схема электрическая принципиальная блока DC2”).

Логическая последовательность третьего блока:


    0123   0124   056*    723*

Матрицы разложения имеют вид:


1)

2)

3)


Используя данные разложения, представим схему данного блока (графическая работа “Схема электрическая принципиальная блока DC3”).

Логическая последовательность четвертого блока:


  0123   4560   2347   *476

Матрицы разложения имеют вид:


1)

2)

3)


Используя данные разложения, представим схему данного блока (графическая работа “Схема электрическая принципиальная блока DC4”).

Логическая последовательность пятого блока:


   0123   4125    2345  6457

Матрицы разложения имеют вид:


1)

2)

3)

Используя данные разложения, представим схему данного блока (графическая работа “Схема электрическая принципиальная блока DC5”).

После покрытия блокa получили наглядную экономию ресурсов ПЛИС.


Таблица 7.


Количество использованных ресурсов ПЛИС

макроячейки

(macrocells)

конъюнкт. термы

(product terms)

входы функц. блоков

(func. block inputs)

xc9500xl

20

160

91

CoolRunner

15

77

29


Вывод


Для нетривиальных схем методы декомпозиции дают существенный выигрыш по отношению к используемым ресурсам. Как видно из таблиц 5-6, традиционный в наше время подход описания цифровых устройств (VHDL) для сумматора в коде 7-4-2-1 при трассировке в кристалл не дает существенного выигрыша, чем схема, полученная в результате декомпозиции.

Из таблиц 5-6, видно, что для разных типов ПЛИС оптимальный результат дают разные варианты реализации. Это связано с особенностью структуры тех или иных ПЛИС и требует отдельных исследований.

Поиск оптимального решения задачи синтеза складывается из рассмотрения и анализа нескольких вариантов реализации комбинационной схемы для различных типов ПЛИС. В некоторых случаях возникает необходимость оценивать не только используемые ресурсы ПЛИС, но и задержку прохождения сигнала через схему.

Как видно из таблиц 5-6, для реализации сумматора по модулю 13 с весовыми коэффициентами 7-4-2-1 наиболее оптимальными вариантами являются схемы №1 и №2. После покрытия схемы №1 мультиплексорами типа 4/1, заметен существенный выигрыш в использовании ресурсов ПЛИС, о чем свидетельствуют результаты таблицы 7.


Список литературы


·        Коновалов В.Н., Белов А.А., Коновалов И.В., Нежельский П.Н.: Автоматизированный синтез комбинационных логических схем на основе многоуровневой декомпозиции. – КФ МГТУ им. Н.Э. Баумана, – 35с.: ил.

·        Голубев Ю.П.: Автоматизация проектирования преобразователей дискретной информации. – Калуга: Издательство «Гриф», 2003. -652 с.

·        Грэгори, Кейт: Использование Visual C++ 6. Специальное издание.: Пер. с англ. – М.; СПб.; К.: Издательский дом «Вильямс», 2003. – 864 с.: ил.

·        Соловьев В.В.: Проектирование цифровых систем на основе программируемых логических интегральных схем. – М.: Горяцая линия-Телеком, 2001. – 636 с. ил.

·        Кузелин М.О., Кнышев Д.А., Зотов В.Ю.: Современные семейства ПЛИС фирмы Xilinx. Справочное пособие. – М.: Горячая линия–Телеком, 2004. – 440 с.: ил.


Страницы: 1, 2, 3



2012 © Все права защищены
При использовании материалов активная ссылка на источник обязательна.