Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь FAQ Написать работу КАТЕГОРИИ: ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву
Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Импорт и экспорт конечных автоматовСодержание книги
Поиск на нашем сайте Вы можете импортировать и экспортировать конечные автоматы между TDF файлами и другими файлами проекта, определяя входные и выходные порты как MACHINE INPUT или MACHINE OUTPUT в разделе Subdesign. Прототип функции, который представляет файл, содержащий конечный автомат, должен указывать, какие входы и выходы принадлежат конечному автомату с помощью предварения имен сигналов ключевым словом MACHINE. Типы портов MACHINE INPUT и MACHINE OUTPUT нельзя использовать в файле проекта верхнего уровня. Хотя высокоуровневый файл с этими портами полностью не компилируется, Вы можете использовать команду Project Save & Check (меню File) для проверки его синтаксиса и команду Create Default Include File (меню File) для создания Include файла, который представляет текущий файл. Вы можете переименовать конечный автомат с помощью временного имени, вводя объявление псевдоимени автомата в раздел Variable. Вы можете использовать это псевдоимя в файле, где создан этот автомат или в файле, который использует порт MACHINE INPUT для импорта конечного автомата. Затем Вы можете применить это имя вместо исходного имени автомата. Файл ss_def.tdf, приведенный ниже, определяет и экспортирует конечный автомат ss с помощью порта ss_out.
SUBDESIGN ss_def ( clk, reset, count: INPUT; ss_out: MACHINE OUTPUT; ) VARIABLE ss: MACHINE WITH STATES (s1, s2, s3, s4, s5); BEGIN ss_out = ss;
CASE ss IS WHEN s1=> IF count THEN ss = s2; ELSE ss = s1; END IF; WHEN s2=> IF count THEN ss = s3; ELSE ss = s2; END IF; WHEN s3=> IF count THEN ss = s4; ELSE ss = s3; END IF; WHEN s4=> IF count THEN ss = s5; ELSE ss = s4; END IF; WHEN s5=> IF count THEN ss = s1; ELSE ss = s5; END IF; END CASE;
ss.(clk, reset) = (clk, reset); END;
Файл ss_use.tdf, приведенный ниже, импортирует конечный автомат с помощью порта ss_in.
SUBDESIGN ss_use ( ss_in: MACHINE INPUT; out: OUTPUT; ) BEGIN out = (ss_in == s2) OR (ss_in == s4); END;
Файл top1.tdf, приведенный ниже, использует ссылки для вставки экземпляров функций ss_def и ss_use. Прототипы функций для ss_def и ss_use содержат ключевые слова MACHINE, которые указывают какие входы и выходы являются автоматными.
FUNCTION ss_def (clk, reset, count) RETURNS (MACHINE ss_out); FUNCTION ss_use (MACHINE ss_in) RETURNS (out);
SUBDESIGN top1 ( sys_clk, /reset, hold: INPUT; sync_out: OUTPUT; ) VARIABLE ss_ref: MACHINE; %объявление псевдоимени автомата % BEGIN ss_ref = ss_def(sys_clk,!/reset,!hold); sync_out = ss_use(ss_ref); END;
Внешний конечный автомат можно также реализовать в TDF файле верхнего уровня с помощью объявления экземпляра в разделе Variable. Файл top2.tdf, приведенный ниже, имеет такую же функциональность, как и top1.tdf, но использует объявления экземпляров, вместо ссылок.
FUNCTION ss_def (clk, reset, count) RETURNS (MACHINE ss_out); FUNCTION ss_use (MACHINE ss_in) RETURNS (out);
SUBDESIGN top2 ( sys_clk, /reset, hold: INPUT; sync_out: OUTPUT; ) VARIABLE sm_macro: ss_def; sync: ss_use; BEGIN sm_macro.(clk, reset, count) = (sys_clk,!/reset,!hold); sync.ss_in = sm_macro.ss_out; sync_out = sync.out; END; Синтаксис языка AHDL Стилизация описаний на языке AHDL 7. "Золотые" правила использования языка AHDL 8. Контекстно-зависимая справка по языку AHDL Для получения контекстно-зависимой помощи, Вы сперва должны сохранить Ваш текстовой файл с расширением. tdf. Контекстно-зависимая помощь доступна для следующих элементов: · Арифметические операторы (в булевых выражениях) · Арифметические операторы (в арифметических выражениях) · Компараторы · Логические операторы · Мегафункции · Макрофункции · Примитивы · Зарезервированные идентификаторы · Зарезервированные ключевые слова · Символы
[M1] Процесс копирования присваиваний ресурсов, сделанных компилятором, из файла подгонки в ACF файл. Используется для сохранения текущей подгонки при дальнейших компиляциях. [M2]
|
||
|
Последнее изменение этой страницы: 2017-02-05; просмотров: 179; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 216.73.216.198 (0.007 с.) |