Задание № 4
Цель работы:
Ознакомиться с САПР Quartus II фирмы Altera, получить практические навыки создания проектов по схемотехнике ЭВМ в САПР (ввод схем, компиляция и моделирование).
Реализация проекта
Шаг 1.
№ состояния |
№ состояния из варианта |
Двоичный код q3,q2,q1,q0 |
|
0 |
6 |
0110 |
|
1 |
4 |
0100 |
|
2 |
13 |
1011 |
|
3 |
10 |
1010 |
|
4 |
15 |
1111 |
|
5 |
5 |
0101 |
|
6 |
0 |
0000 |
|
7 |
3 |
0011 |
|
8 |
11 |
1011 |
|
9 |
12 |
1100 |
|
10 |
1 |
0001 |
|
11 |
9 |
1001 |
|
12 |
2 |
0010 |
|
13 |
14 |
1110 |
|
14 |
8 |
1000 |
|
15 |
7 |
0111 |
Составим таблицу перекодировки состояний автомата и их двоичный код.
Шаг 2.
Изобразим граф состояния с учетом таблицы перекодировки.
Шаг 3.
старое состояние |
условие |
новое состояние |
|||
№ |
код |
№ |
Код |
||
6 |
0110 |
- |
4 |
0100 |
|
4 |
0100 |
A=0 |
11 |
1011 |
|
4 |
0100 |
A=1 |
13 |
1101 |
|
11 |
1011 |
- |
12 |
1100 |
|
12 |
1100 |
- |
1 |
0001 |
|
1 |
0001 |
B=0 |
2 |
0010 |
|
1 |
0001 |
B=1 |
9 |
1001 |
|
2 |
0010 |
- |
3 |
0011 |
|
3 |
0011 |
- |
14 |
1110 |
|
14 |
1110 |
- |
8 |
1000 |
|
8 |
1000 |
- |
7 |
0111 |
|
7 |
0111 |
- |
6 |
0110 |
|
13 |
1101 |
- |
10 |
1010 |
|
10 |
1010 |
B=0 |
15 |
1111 |
|
10 |
1010 |
B=1 |
5 |
0101 |
|
15 |
1111 |
- |
0 |
0000 |
|
0 |
0000 |
- |
3 |
0011 |
|
9 |
1001 |
- |
3 |
0011 |
|
5 |
0101 |
- |
0 |
0000 |
Составим таблицу истинности автомата с учетом представленного графа.
Шаг 4.
Создаем проект как в Задании №1, выбирая при этом другое имя проекта, например: lab4. qpf. Чтобы создать новый файл, принадлежащий проекту, выбираем пункт меню FileNew.
Шаг 5.
Нужно создать файл, описывающий устройство. Это Design File. Выбираем создание схемы Block DiagramSchematic File.
Шаг 6.
Сохраняем наш новый файл под именем lab4. bdf.
Шаг 7.
В поле графического редактора схем нажимаем правую кнопку мыши и в выпадающем меню выбираем пункты InsertSymbol - вставить элемент. Или на панели инструментов выбираем кнопку Symbol Tool.
Шаг 8.
С помощью примитивов, входов, выходов проектируем функциональную схему в редакторе Quartus II без минимизации. Расставляем значения состояний в зависимости от логики таблицы истинности.
Шаг 9.
Прежде чем делать симуляцию нужно откомпилировать проект. Выбираем пункты меню ProcessingStart Compilation (или выбрать на панели инструментов кнопку Start Compilation).
Шаг 10.
Создадим файл для симуляции. В нем можно будет описывать входные сигналы и задавать выходные сигналы. Выбираем пункт меню FileNew и затем в появившемся диалоге VerificationDebugging Files University Program VWF (Vector Waveform File).
Шаг 11.
Надо выбрать элементы, которые будем смотреть и которые будем определять. Клик правой клавиши мыши на левой панели Names и в выпадающем меню выбираем пукнт InsertInsert Node or Bus.
Шаг 12.
Появилось диалоговое окно. В нем можно набрать имя выхода какого-нибудь сигнала или элемента. Полное имя сигнала может быть очень длинным и не всегда понятным. Поэтому лучше воспользоваться поиском сигнала в проекте. Нажимаем кнопку Node Finder. Появляется диалоговое окно для поиска сигналов в проекте Node Finder. Нажимаем кнопку List и видим список входов и выходов. Выбираем все нужные сигналы слева в таблице найденных сигналов Nodes Found и переносим их вправо в таблицу выбранных сигналов Selected Nodes. В данном задании достаточно добавить шину входящих сигналов, то есть Input Group, и все выходы. Нажимаем кнопку "OK".
Шаг 13.
Запускаем симулятор из пункта меню ProcessingRun Functional Simulation (или на панели инструментов выбрать кнопку Run Functional Simulation). С помощью кнопок Forcing Low (0) и Forcing High (1) на панели инструментов ставим определенные значения "0" и "1" для а и b.
Шаг 14.
Результат моделирования работы схемы в сигнальном редакторе.
Значение параметров сигналов в редакторе подробнее:
При значениях а=0 и b=0 сигнал идет по ветке (рис.1.1): 6-4-11-12-1-2-3-14-8-7, что соответствует графу.
При значениях а=0 и b=1 сигнал идет по ветке (рис.1.2): 6-4-11-12-1-9-3-14-8-7, что соответствует графу.
Рис. 1.2
При значениях а=1 и b= сигнал идет по ветке (рис.1.3): 6-4-13-10-5-0-3-14-8-7, что соответствует графу.
Рис. 1.3
При значениях а=0 и b=0 сигнал идет по ветке (рис.1.4): 6-4-13-10-15-0-3-14-8-7, что соответствует графу.
Рис. 1.4
- Введение
- Задание № 1. Графический ввод схемы и симуляция в Quartus II
- Алгебра логики и основные логические элементы
- Задание № 2. Описание логических схем при помощи языка AHDL
- Элементы языка AHDL. Зарезервированные ключевые слова
- Символы
- Имена в кавычках и без кавычек
- Числа в языке AHDL
- Логические операторы
- Задание № 3. Моделирование цифровых схем с использованием параметрических элементов
- Задание № 4
- Вывод
- Настройка Quartus II и создание папки нового проекта
- II.1 Графический редактор
- 2.1. Типовая последовательность выполнения работы.
- 2.2. Процесс моделирования работы узлов средствами пакета Quartus II
- 3.3.1. Графический ввод проекта
- Графические редакторы
- Практическая работа . Графические редакторы Графические редакторы
- Графические редакторы
- 6 Компиляция и верификация проекта в среде Quartus II