
подгон 2018 (легендарный) / 2 курс / Схемотехника-20241122T220722Z-001 / Лабы / ЛР 1 / Lab1
.docxАрифметико-логические основы и схемотехника цифровых электронных вычислительных машин
Лабораторный практикум
Лабораторная работа №1
«Комбинационные схемы»
для подготовки бакалавров по ООП НИУ
по направлению 230100.62
"Информатика и вычислительная техника"
(факультет МПиТК),
Профиль "Элементы и устройства микропроцессорных информационно-управляющих систем"
Лабораторная работа «Комбинационные схемы»
Цели работы: изучить методы синтеза комбинационных схем в потенциальной системе элементов; получить навыки работы с САПР MAX+PLUS II; получить навыки в синтезе, наладке и экспериментальном исследовании синтезируемых схем.
Продолжительность работы - 4 часа.
Лабораторное задание
1. Ознакомить с правилами техники безопасности в учебном кабинете.
2. Выполнить синтез структур комбинационных схем, заданных в индивидуальном задании, построить временные диаграммы работы.
3. Получить допуск к лабораторной работе, показав преподавателю выполненное задание и ответив на вопросы теоретической части.
Пример индивидуального задания
Используя карты Карно, минимизировать функции алгебры логики (ФАЛ), заданные числовым представлением СКНФ или СДНФ:
Порядок выполнения работы
Для минимизации ФАЛ, заданных в индивидуальном задании, потребуются эталонные карты Карно для ФАЛ четырёх переменных (для y1, y2) и пяти переменных (для y3, y4), которые представлены на рис.1.
Рис.1.
Эталонные карты Карно для функций
алгебры логики:
а
- четырёх переменных; б
- пяти переменных
Эталонные карты
показывают места расположения номеров
наборов при данном расположении
переменных, от которых зависит функция.
В индивидуальном задании в скобках
указаны номера наборов, в которых функция
должна принимать значение логического
«0», если ФАЛ задана числовым представлением
СКНФ (символ «
»
перед скобкой), и значение логической
«1», если ФАЛ задана числовым представлением
СДНФ (символ «
»
перед скобкой). «×» ставится в тех номерах
наборов, которые указаны в скобках после
«×», оставшиеся пустые клетки, заполняются
«1», если ФАЛ задана числовым представлением
СКНФ, и «0», если ФАЛ задана числовым
представлением СДНФ.
Заполнив все клетки нужными значениями, получим рабочие карты Карно, показанные на рис.2.
Рис.2.
Рабочие караты Карно для функций алгебры
логики:
а
- y1;
б
- y2;
в
- y3,
г
- y4
При минимизации ФАЛ в формате ДНФ с помощью карт Карно выбираем набор покрытий (прямоугольная область, состоящая из 1, 2, 4, 8 или 16 клеток), которые покрывают все единичные клетки в карте и не покрывают ни одну клетку, содержащую логический «0». Покрытия должны иметь максимальную площадь, они также могут пересекаться. Клетки, отмеченные знаком «×», могут попадать в покрытия, а могут и остаться непокрытыми. Знак «×» находится в тех номерах наборов, в которых разработчику безразлично, какое значение примет функция: «0» или «1». После того как набор покрытий выбран (функция минимизирована), все номера наборов, в которых стоял знак «×», доопределились до конкретных значений логического «0» или логической «1»: если клетка, содержащая «×», попала хотя бы в одно покрытие, её значение стало логической «1», если клетка не попало ни в одно покрытие, то её значение доопределилось до логического «0».
Для минимизации функций алгебры логики выбираем покрытия, показанные на рис.3.
Рис.3.
Рабочие караты Карно с покрытиями для:
а
- y1;
б
- y2;
в
- y3,
г
- y4
Минимизируя функции, получаем следующие аналитические выражения для ФАЛ y1, y2, y3, y4:
По полученным ФАЛ составим временные диаграммы работы, которые показаны на рис.4. Временные диаграммы можно составлять как по аналитическим выражениям для y1, y2, y3, y4, так и по картам Карно. Действительно, «0» или «1» в клетках карты Карно однозначно показывает значение функции в каждом из наборов. А каждая клетка, содержащая «×», доопределилась до логической «1», если попала хотя бы в одно из покрытий, либо до логического «0», если осталась непокрытой.
Рис.4.
Временные диаграммы работы функций
Реализация схемы функций в среде Quartus II
1. Запустить Quartus II
Рис. 2.1 Стартовый экран Quartus II
2. Создать новый проект
2.1. Выбрать один из следующих вариантов
- Create a New Project на стартовом экране
Или
- File-> New Project Wizard в основном окне программы
На экране отобразится окно, изображённое на Рис. 2.2.
Рис. 2.2 Мастер создания проекта (часть1)
Нажать кнопку Next
2.2.Задать имя и директорию проекта
Создаём папку на рабочем столе (например, Lab1)
Важно! В пути и имени проекта не должно содержаться русских символов.
Рис. 2.3.
2.3.
Рис. 2.4
Нажать Next
2.4. Выбрать целевое устройство
Рис. 2.5. Выбор целевого устройства
В поле Family выбрать Cyclone II (Важно! Иначе симулятор работать не будет!)
В поле Available devices выбрать EP2C35F672I8
2.5.
Рис. 2.6.
Нажать Next
2.6.
Рис. 2.7.
Нажать Finish
2.8.
Рис. 2.8. Внешний вид программы после создания проекта
3Создать файл для рисования схемы
File->New
Рис 2.9 Окно создания нового файла
В появившемся окне (Рис. 2.9) выбрать пункт Block Diagram/Schematic File и нажать OK.
Рис. 2.10 Новый схематик файл
Нажать File->Save as
Рис. 2.11. Сохранение схематик файла
Задать имя файла (Например Lab1)
Убедиться, что стоит галочка напротив Add file to current project
Нажать Сохранить
Посмотреть и выбрать файлы, включённые в проект, можно в окошке Project Navigator во вкладке Files (См. ниже)
Не волнуйтесь файл *.vwf будет создан позже.
4. Рисование схемы
4.1.
Вызвать
окно выбора символа можно двойным кликом
мышки по полю вкладки *.bdf
или
нажав на кнопку
Рис. 2.12 Окно выбора символа
В поле Name нужно ввести имя нужного символа (На Рис. 2.12 изображён процесс выбора двухвходового логического И (Name = and2))
Таблица 1. Изображения компонентов
Имя символа |
Изображение в |
Изображение |
Описание |
And2 |
|
|
двухвходовый вентиль «И» |
Or2 |
|
|
двухвходовый вентиль «ИЛИ» |
xor |
|
|
сумма по модулю 2 |
Not |
|
|
«не» |
dff |
|
|
D - триггер |
jkff |
|
|
JK - триггер |
Input |
|
Различные варианты |
Вход схемы |
Output |
|
Различные варианты |
Выход схемы |
Таблица 2
Имена и названия символов
Имя компонента |
Описание |
Input |
Входной сигнал |
Output |
Выходной сигнал |
Andn |
n-входовой вентиль «И», n = 2, 3, … |
Orn |
n-входовой вентиль «ИЛИ», n = 2, 3,… |
Nandn |
n-входовой вентиль «И-НЕ», n = 2, 3,… |
Norn |
n-входовой вентиль «ИЛИ-НЕ», n = 2, 3,… |
xor |
Двухвходовой вентиль «исключающее или» |
xorn |
n-входовой вентиль «исключающее или», n = 3, 4, 8 |
Not |
Инвертор |
Dff |
D-триггер |
Jkff |
JK-триггер |
Wire |
Повторитель (позволяет дать цепи другое имя) |
4.2
Выбираем нужные символы (согласно заданию и рисуем схему)
- Двойным щелчком мыши по символу можно задать ему другое имя
- Чтобы задать имя цепи нужно выделить её и нажать Shift, после чего можно писать имя (Только латиницей)
- Имена выходов давать в соответствии с номером задания (Например y1, y2, y3, y4)
5. Компиляция проекта
Выбираем Processing->Start compilation
Дожидаемся окончания компиляции и убеждаемся в отсутствии ошибок
(warring игнорируем)
6. Симуляция проекта
6.1.
File->New
Выбираем пункт University Program VWF
6.2. Добавление входов и выходов
Рис. Waveform Editor после вставки входов-выходов
6.3 Настройка отображения значений группы входов, как Беззнаковое десятичное (Для красоты)
Выделить группу входов и нажать правую кнопку мыши
6.4 Задание тестовых воздействий
Нажимаем кнопку Count Value (См рисунок)
6.5. Выбор симулятора
По умолчанию в Quartus, в качестве симулятора, выбран ModelSim, который не установлен в компьютерном классе, поэтому следует выполнить следующие действия для установки штатного средства моделирования.
Simulation->Options
Выбрать Quartus II Simulator и нажать OK
Нажать OK
6.6. Запуск Симуляции
Ждём окончания и проверяем
7 Показать результат преподавателю, получить отлично и пойти в столовую..