Тема 6. Изучение вычислителяVHDL
Цель:Исследование процесса событийного моделирования.
Теоретические сведения.
Для описания структуры цифрового устройства широко используется структурное подмножество языка VHDL. Структурное описание основано на конкретизации компонентов и линий связи между ними и интерфейсом. Наиболее часто для задания структурных описаний в текстовом виде используется язык EDIF(ElectronicDesignInterchangeFormat). EDIF – формальный язык описания данных – формат, принятый в качестве стандарта в области САПР интегральных схем.
VHDL-описание устройства включает две отдельных части: внешнее и внутреннее представление. Внешнее представление определяет имя устройства (компонента) и его интерфейс. Интерфейс компонента – это список его портов (входов и выходов, контактов). Каждый порт задается именем, режимом и типом. Внутреннее представление называется архитектурой компонента.
Основной частью описания интерфейса является описание порта, порт символизирует отдельный сигнал, связывающий компонент с другими компонентами. В целом описание интерфейса представляет собой список объявлений интерфейса. Каждое объявление интерфейса определяет один или большее число портов, которые соответствуют вводам или выводам блока. Режим порта определяет способ использования сигнала внутри схемы: будет сигнал использоваться как входной или выходной.
Архитектура устройства в структурном описании является описанием на структурном подмножестве VHDL. Архитектура содержит описания элементов или блоков устройства. Использование элемента в описании называют экземпляром элемента (instance). В архитектуре обычно перечисляют точки связи, которым элемент подключается к другим элементам устройства. Точки подключения связей называют выводами (portreference) экземпляра. Выводы считаются частью структуры экземпляра элемента. Связи экземпляров символизируют «провода», которыми подключаются блоки устройства. Структурная модель может быть задана в виде списка экземпляров (instancebasednetlist) или в виде списка цепей (net-basednetlist).
Список экземпляров задает структуру соединений, используемых в устройстве, указанием для каждого экземпляра списка пар, содержащих вывод экземпляра и цепь, с которой связан этот вывод – списка подключения выводов элементов (portmap). В этом виде описания список цепей нужно собирать, анализируя списки подключения выводов элементов. Примером задания структуры соединений списком экземпляров является структурный стиль VHDL.
Структурное описание на VHDL – это текстовое представление графического описания схемы. Для схемы на рис. 2.3 из темы 2 структурное описание получается из списка пар двудольного графа
(x: IN1 N1, IN2 N2, OUTN3)
(y: IN1 N1, IN2 N2, OUTN4)
(z: IN1N3, IN2N4, OUTN5)
В формат VHDL этот список преобразуется добавлением ключевых слов portmapс указанием типа экземпляра элемента. Имена элементов служат меткой конструкции portmap.
x: Orportmap(IN1=>N1, IN2=>N2, OUT=>N3);
y: Or port map(IN1=> N1, IN2=>N2, OUT=>N4);
z: And port map(IN1=> N3, IN2=> N4, OUT=>N5);
На рис. 6.1 описана структура RS-триггера в виде архитектуры, именуемой Structure, которая входит в entity с именем latch. Модуль включает объявление (конструкцией component) логического элемента НЕ-ИЛИ – компонента nor с входными (a, b) и выходным (c) портами типа bit. Ключевые слова begin и end обрамляют конструкции описания компонентов структуры. Они указывают, что RS-триггер состоит из двух компонентов с именами n1 и n2 типа nor_gate. Конструкция portmap задает имена цепей, связывающих входные и выходные порты интерфейса RS-триггера с портами компонентов (рис. 6.1).
architecture structure of latch iscomponentnor_gateport (a,b: in bit; c: out bit);end component;begin n1: nor_gateport map (r,nq,q); n2: nor_gateport map (s,q,nq);endstructure; |
Рис. 6.1 – Пример структурного описания архитектуры на языке VHDL
Задание для самостоятельной работы
1) Построитьструктурное описание на языке VHDLдля комбинационной схемыв теме 5.
2) Преобразовать это структурное описание в потоковое описание.
3) Выполнить вычисления, задаваемые потоковым описанием.
4) Сравнить результаты вычислений с исходными.
Раздел 2. Электронные системы безопасности