Смекни!
smekni.com

Проектирование устройств на языке VHDL САПР MAXPLUS II (стр. 2 из 2)

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

Chip/ Input Output LCs

POF Device Pins Pins LCs % Utilized

count_l EPF8282ALC84-2 8 6 10 4 %

User Pins: 8 6 0

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

C

O R R R

N E E E

F S S S

_ ^ E E E

D D R R R

O C G V V V

N L q q q q N q q E E E

E K 0 1 2 3 D 4 5 D D D

--------------------------------------

/ 11 10 9 8 7 6 5 4 3 2 1 84

clk | 12

d0 | 13

+DATA0 | 14

d1 | 15

d2 | 16

VCCINT | 17

d3 | 18 EPF8282ALC84-2

d4 | 19

&d5 | 20

ld | 21

RESERVED | 22

RESERVED | 23

Рис. 3.12 Размещение внешних сигналов на контактах ПЛИС.

Анализируя загрузку логических ячеек, можно заметить, что используются ячейки только строки А (блоки А1 … А5), при этом наиболее загружен блок А3, в котором используются 3 ячейки. Эта информация отражена в следующих строках.

Logic Column Row

Array Interconnect Interconnect External

Block Logic Cells Driven Driven Clocks Interconnect

A1 1/8 (12%) 1/8(12%) 1/8(12%) 1/2 2/24( 8%)

A2 1/8 (12%) 1/8(12%) 1/8(12%) 1/2 3/24( 12%)

A3 5/8 (62%) 1/8(12%) 3/8(37%) 1/2 6/24( 25%)

A4 1/8 (12%) 1/8(12%) 1/8(12%) 1/2 3/24( 12%)

A5 1/8 (12%) 1/8(12%) 1/8(12%) 1/2 3/24( 12%)

A6 1/8 (12%) 1/8(12%) 0/8(0%) 1/2 3/24( 12%)

Результаты размещения можно просмотреть также в программе Floorplan Editor (см. рис. 3.13)

Рис. 3.13 Размещение проекта в ПЛИС


На рис. 3.14. показан пример моделирования работы счетчика. Возмущающие воздействия и результат моделирования отображены в окне графического редактора Wave Editor.

Рис. 3.14. Моделирование работы счетчика с синхронной загрузкой.

Шестиразрядный реверсивный счетчик на ПЛИС типа CPLD

Работу шестиразрядного реверсивного счетчика (см. рис. 3.15) синхронизирует синхросигнал clk, входной сигнал up_down задает направление счета, причем “1” соответствует прямому счету, все остальные значения – обратному. Выходной сигнал счетчика q задается как целое в диапазоне от 0 до 63.

Рис. 3.15. Реверсивный счетчик

Описание устройства задается следующим текстом на языке VHDL:

library IEEE;

use IEEE.std_logic_1164.all;

entity count_r is

port(clk : in STD_LOGIC;

up_down : in STD_LOGIC;

q : out INTEGER range 0 to 63);

end count_r;

architecture r of count_r is

begin

process (clk)

variable cnt: INTEGER range 0 to 63;

variable direction : INTEGER;

begin

if (up_down = '1') then

direction := 1;

else

direction := -1;

end if;

if (clk'event and clk = '1') then

cnt := cnt + direction;

end if;

q <= cnt;

end process;

end r;

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

На рис. 4.6. показан пример моделирования работы счетчика.

Рис. 3.16. Моделирование работы реверсивного счетчика.

Для реализации выберем ПЛИС типа CPLD EPM7032LC44-6 семейства MAX7000.

1.6 Создание символа

Часто на практике бывает так, что разрабатываемое устройство является частью более сложного проекта – корневого проекта (top project). Как правило, корневой проект является графическим, поэтому и нашу разработку следует представить в графическом виде – в виде модуля или “символа”, а затем этот символ перенести в корневой проект. Последовательность действий может быть такая: создание символа (см. рис. 3.17) и просмотр символа (см. рис. 3.18).


Рис. 3.17. Создание символа.


Рис. 3.18. Просмотр символа

Литература

1. Стешенко В. Б. ПЛИС фирмы ALTERA: проектирование устройств обработки сигналов. - М.: ДОДЭКА. 2000.