Главная | Обратная связь | Поможем написать вашу работу!
МегаЛекции

1.2. Практикум по теме. 1.3. Контрольные вопросы. 2. Представление комбинационных схем.  2.1. Параллельные и последовательные операторы




1. 2. Практикум по теме

 Для практического освоения материала раздела рекомендуется выполнить интерпретацию поведения программы сначала в пакете моделирования QuestaSim или ModelSim, а затем проанализировать работу синтезированного устройства в реальной ИС FPGA. Общие правила работы с пакетами типа QuestaSim v. 6. 5 и Quartus II v. 9. 0 имеются в приложении. Работа с другими (более поздними) версиями этих продуктов во многом аналогична. Для удобства работы обучающимся вместе с демо-версией пакета в общем случае предоставляются трафареты исходных текстов в электронном виде (исходные файлы).

 

Последовательность работы:

 

I. Подготовительный этап

1. Создать директорий для работы.

2. Скопировать в директорий шаблон рабочей программы lab1. vhd и пакет util_1164.

 

II. Моделирование

1. Запустить моделирующую программу (QuestaSim или ModelSim).

2. Просмотреть в редакторе текст файлаlab1. vhd. Для данного раздела исходный файл  lab1. vhd соответствует программе 1. 1. Source.

3. Выполнить компиляцию проекта.

4. Загрузить скомпилированный проект в систему моделирования.  

5. Открыть окна наблюдения Process, Signal, Wave.

6. Запустить процедуру моделирования, вызвав команду системы моделирования simulate.

5. Сформировать тестовую последовательность, используя команду

 системы моделирования FORCE (в пределах необходимого для полноты проверки числа комбинаций входных данных).

6. Выполнить моделирование в пошаговом режиме.

7. Выполнить моделирование в автоматическом режиме. Просмотреть временную диаграмму в окне Wave и убедиться в правильности вычисления логической функции.

 

III. Синтез и имплементация.

1. Открыть пакет Quartus II (версия задается преподавателем).

2. Создать новый проект – File / New Project Vizard, указав созданный директорий и программу lab1. vhd.

3. Компилировать проект (Processing / Start Compilation), выбрав в качестве ПЛИС схему соответствующую семейству MAX 3000A.

4. Оценить затраты на реализацию проекта Processing / Compilation Report.

5. Просмотреть RTL вид проекта и его топологическую реализацию – Tools / RTL View – Tools / Technology Map View.

6. Компилировать проект (Processing / Start Compilation), опираясь на данные о ПЛИС, соответствующие используемому учебному стенду (Assignments / Device).

7. Повторить пункты 4 и 5.

8. Задать номера контактов ИС, соответствующие подключению учебной платы DE0 (приложение III).

9. Выполнить компиляцию проекта с назначенными контактами.

10. Загрузить в ИС полученный загрузочный файл проекта и проверить работоспособность разработки.

 

1. 3. Контрольные вопросы

 

1.    Перечислите основные этапы реализации проектов в ПЛИС.

2.                Чем обусловлено расхождение в характеристиках и затратах на реализацию в двух выбранных вариантах?

3.                Какими альтернативными синтаксическими конструкциями можно описать приведенный проект?


2. Представление комбинационных схем

 2. 1. Параллельные и последовательные операторы

       Процессы в реальных дискретных устройствах происходят параллельно во времени, причем изменения в различных частях устройства могут происходить асинхронно, относительно независимо и в том числе одновременно. При моделировании такое поведение должно быть воспроизведено с требуемой степенью точности последовательными алгоритмами, реализуемыми в ЭВМ. Для правильного понимания принципов языкового описания и результатов моделирования следует достаточно четко представлять методы, заложенные в подсистемы моделирования САПР.

Операторы в языке VHDL с точки зрения порядка исполнения подразделяются на последовательные и параллельные. Базовым видом операторов языка являются параллельные операторы. Современные системы моделирования дискретных систем в большинстве случаев работают по событийному принципу. Модель каждого из параллельных операторов языка (процессов системы моделирования) в каждый момент модельного времени может находиться в одном из пяти состояний (Ready, Active, Wait Event, Wait Time, Complete) – рис. 2. 1.

 

 

 

Рис. 2. 1. Состояния процесса

При старте процедуры моделирования все процессы системы устанавливаются в состояние Ready. Состояние Ready соответствует готовности процесса к исполнению. В этом состоянии он ждет готовности системы моделирования к выполнению операций, определяемых его запланированными действиями и исходными данными моделируемой системы. Когда система моделирования может обрабатывать готовый процесс (одновременно в состоянии Ready может находиться несколько процессов), он переводится в активное состояние (Active) и начинает выполняться. Из этого состояния процессы могут переходить в три состояния. Состояние Wait Event соответствует ожиданию события, состояние Wait Time соответствует ожиданию перехода модельного времени к запланированному времени, и состояние Complete соответствует завершению процесса.

Исполнение параллельных операторов может инициировать события (в языке VHDL это порождается изменением состояния сигналов). На время исполнения всех операторов, инициированных одним и тем же событием, значения сигналов остаются неизменными. Эти значения сохраняются  даже в том случае, если какие-то из таких операторов предполагают изменение сигналов других «одновременно» исполняемых операторов. Для реализации такого поведения каждый сигнал имеет так называемый драйвер сигнала. В простейших случаях можно считать драйвер следующим значением сигнала, а сам сигнал текущим значением. Драйвер сигнала перезаписывается в текущее значение (собственно сам сигнал) только в тот момент модельного времени, когда не останется ни одного процесса в состоянии Ready. Подобное правило исполнения операторов и обеспечивает корректное моделирование взаимодействия параллельно протекающих процессов. Поэтому в отличие от обычных языков программирования (Паскаль, Си и т. д. ) результаты работы совокупности параллельных операторов не зависят от порядка их записи.

 

 

 

Рис. 2. 2. Пример комбинационной схемы

Текст программы, описывающий эту схему, может (и, как правило, должен) описываться, так, как приведено в листинге 2. 1. Этот и последующие примеры данного раздела при синтезе дают комбинационные схемы.

 

Листинг 2. 1 Описание схемы рис. 2. 2.

 

LIBRARY ieee;

USE ieee. std_logic_1164. ALL;

 

Поделиться:





Воспользуйтесь поиском по сайту:



©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...