Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ПТЦА ч2 КЛ.doc
Скачиваний:
27
Добавлен:
20.08.2019
Размер:
16.45 Mб
Скачать

14 Язык задания поведения цу - vhdl и синтезатор leonardo

В современных комплексах автоматизированного проектирования цифровых систем в виде больших интегральных схем (БИС), сверхбольших интегральных схем (СБИС) или многоуровневых программируемых логических интегральных схем (МПЛИС) и заказных кристаллов, широкое применение получил язык VHDL (Very high speed integrated circuits Hardware Description Language), для формального алгоритмического описания синтезируемых проектов. Язык VHDL является входным языком для многих современных САПР. Он предназначен для описания процесса моделирования цифровых систем и используется на алгоритмическом и логическом этапах проектирования автоматов. Он позволяет описывать поведение, т.е. алгоритмы функционирования цифровых систем, проводить иерархическое, структурное моделирование, описывать асинхронные параллельные процессы, регулярные структуры и др.

Основные стандарты языка:

-VHDL-87 (ANSI\IEEE Std 1076-1987), разработан в США по инициативе министерства обороны;

-VHDL-93 (ANSI\IEEE Std 1076-1993) ориентирован на проектирование цифровых систем;

-VHDL-AMS (ANSI\IEEE Std 1076.1-1999), язык описан в стандарте Р1076.6\D1.12, 1998г. ориентирован на проектирование цифровых и аналоговых систем.

Изначально VHDL разрабатывался как язык моделирования. Однако проблема синтеза логических схем стала центральной и, поэтому, был разработан ряд систем автоматического синтеза схем по описаниям на языке VHDL. Одной из наиболее популярных является система Leonardo, автоматического синтеза логических схем.

С использованием языка VHDL и синтезатора Leonardo, алгоритмическое и логическое проектирование ЦУ включает следующие этапы:

-составление и моделирование алгоритмического VHDL-описания проекта будущей цифровой системы;

-автоматический синтез логической схемы в заданной библиотеке элементарных и целевых функций;

-повторное моделирование логической схемы с целью верификации (сравнения) поведения алгоритмического VHDL –описания и полученной логической схемы.

В практике автоматизированного проектирования, с помощью VHDL -кодов, используют и получают различные формы задания систем булевых функций (СДНФ, ДНФ).

Широкое распространение получили и модели конечных автоматов Мили и Мура. Разработаны и применяются различные формы задания таких конечных автоматов: совмещенная таблица переходов и выходов конечного автомата, граф автомата, в котором вершинам соответствуют абстрактные внутренние состояния автомата, а дуги соответствуют переходам между состояниями.

Для наглядного (графического) задания автоматов различными фирмами разработаны специальные программные средства, позволяющие по изображению графа автомата, нарисованному в специальном графическом редакторе, получить VHDL - код автомата с закодированными входными, выходными сигналами. В частности, к ним относится система Renoir. По графу автомата автоматически записывается VHDL- код.

Микропрограммный автомат (МА) является одной из форм задания конечного автомата для случая, когда абстрактные входные и выходные сигналы автомата закодированы булевыми переменными 9, а состояния МА являются абстрактными (не закодированными). Микропрограммный автомат может задаваться графически – в виде граф – схемы алгоритма. Одна и та же ГСА может быть представлена различными, структурными схемами –автоматом Мили (Mealy), либо автоматом Мура (Moore).

Получение различных структурных схем связанно с различными методиками разметки (представления отмеченных состояний) ГСА- так называется процесс ввода внутренних состояний автомата.

На рисунке 14.1 приведен пример ГСА, в 10 рассматриваются методики кодирования состояний и перехода от ГСА либо к графу автомата (графу переходов между состояниями), либо к табличной форме задания размеченной ГСА. На рисунке 14.1 и далее, знаком «звездочка» обозначены отмеченные вершины ГСА, которые определяются на этапе высокоуровневого синтеза, в процессе получения функционально- структурного описания цифровой системы (схемы) по ее алгоритмическому описанию на VHDL- языке.

Для задания состояний автомата в архитектурном теле определяется перечислимый тип t_state.

Начальное состояние автомата определяется отметкой а1. Начальное состояние при этом не указывается, так как при инициализации во время моделирования будет взят элемент нижней границы перечислимого типа, это и будет элемент а1.

Для синтеза важно установить способы кодирования перечислимого типа, элементами которого являются внутренние состояния автомата. Способы кодирования в VHDL- языке задаются атрибутами.

После введения на граф–схеме автомата отмеченных состояний аі, обычно строят табличную форму задания автомата Мили, эквивалентную ГСА но более наглядную, особенно при большом числе состояний.

Таблица 14.1 Таблица переходов автомата Мили

В первом столбце таблицы 14.1 показано состояние аm микропрограммного автомата, из которого совершается переход, во втором столбце – состояние aS, куда совершается переход. Каждому переходу соответствует строка таблицы 14.1.

VHDL –модель автомата Мили, построенная по эквивалентным формам задания (ГСА- рисунок 14.1; Таблица 14.1-Переходов автомата Мили), представляется графом автомата Мили.