Файл: Лабораторная работа 1 Синтез комбинационных схем Лабораторная работа 2 Построение систем памяти.pdf
ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 24.10.2023
Просмотров: 271
Скачиваний: 19
ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РФ
ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ
УЧРЕЖДЕНИЕ ВЫСШЕГО ОБРАЗОВАНИЯ
«ВОЛГОГРАДСКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ
УНИВЕРСИТЕТ»
Лабораторная работа № 1 «Синтез комбинационных схем»
Лабораторная работа № 2 «Построение систем памяти»
А.Е. Андреев, В.А. Егунов, П.Д. Кравченя
Методические указания к лабораторным работам по дисциплине
«Архитектура ЭВМ»
Волгоград 2016
2
УДК 004.25 (075) + 004.315 (075)
Р е ц е н з е н т доцент кафедры «Вычислительная техника» канд.техн.наук
Наумов Вадим Юрьевич
Издаётся по решению редакционно-издательского совета
Волгоградского государственного технического университета.
Лабораторная работа № 1 «Синтез комбинационных схем».
Лабораторная работа № 2 «Построение систем памяти»: метод. указания к лабораторным работам по дисциплине «Архитектура ЭВМ» / сост. А.Е.
Андреев, В.А. Егунов, П.Д. Кравченя – Волгоград : ИУНЛ ВолгГТУ, 2016.
– 32 с.
Предназначены для студентов второго курса, обучающихся по направлениям 09.03.01 «Информатика и вычислительная техника» и
09.03.04 «Программная инженерия»
(с) Волгоградский государственный технический университет
3
Лабораторная работа № 1. Синтез комбинационных схем
Цели работы: 1. Изучить ряд типовых комбинационных схем, их таблиц истинности и правил построения.
2.
Познакомиться с программой САПР Altera Quartus, ее возможностями и приемами работы в ней.
3.
Построить заданное операционное устройство или узел, проследив на его примере иерархию организации цифровых устройств.
1 Основные типы логических элементов, их функции и
представление на схемах
Построение цифровых электронных устройств базируется на правилах
Булевой алгебры, которые позволяют получать устройства требуемой функциональности путем соответствующего объединения базовых логических элементов. Базовые логические элементы — это схемы, реализованные на основе электронных ключей и выполняющие основные логические операции: И, ИЛИ, НЕ, ИСКЛЮЧАЮЩЕЕ ИЛИ (XOR) и т.д.
Базовые логические элементы составляют основу для проектирования сложных цифровых устройств, выполняющих различные логические функции. Базовые логические элементы могут изготавливаться в виде отдельных интегральных микросхем. Таблицы истинности некоторых базовых элементов и их обозначения на схемах приведены в таблице 1.
Для схем, состоящих из базовых логических элементов, можно рассчитать сложность и время задержки. Сложность схемы в логических элементах определяется как сумма сложностей всех базовых логических элементов, из которых она состоит. Сложность базовых элементов с одним или двумя входами принимается равной 1
.э
л
С
, с тремя входами —
4 1,5
.э
л
С
, с четырьмя — 2
.э
л
С
и т.д. (по 0,5
.э
л
С
на каждый дополнительный вход).
Время задержки схемы определяется максимальным количеством
базовых элементов, через которые способен пройти сигнал по пути от входов схемы до ее выходов.
Табл. 1. Характеристики базовых логических элементов
Базовый логический элемент
Таблица истинности
Советское обозначение
Зарубежное обозначение
И
Вход
X1
Вход
X2
Выход
Y
0 0
0 0
1 0
1 0
0 1
1 1
ИЛИ
Вход
X1
Вход
X2
Выход
Y
0 0
0 0
1 1
1 0
1 1
1 1
НЕ
Вход X
Выход Y
0 1
1 0
XOR
Вход
X1
Вход
X2
Выход
Y
0 0
0 0
1 1
1 0
1 1
1 0
2 Пример создания и моделирования простейшей схемы в системе
Altera Quartus
Рассмотрим процесс создания и анализа простейшей схемы с помощью
5
САПР Altera Quartus. Необходимо создать схему, состоящую из одного двухвходового логического элемента «И» (конъюнктора), входы которого подключаются ко входам схемы, а выход является единственным выходом схемы. Данная схема представлена на рисунке 1.
Рис. 1. Схема логического элемента «И» в САПР Altera Quartus
1. Создайте новый проект Quartus (File → New Project Wizard). В открывшемся окне (см. рис. 1) следует указать директорию расположения проекта и его название. Настоятельно рекомендуется указывать директорию, отличную от стандартной и связанную с именем пользователя, создающего проект. Русские буквы, пробелы и
нестандартные символы использовать не следует!
Рис. 2. Запрос САПР Quartus на создание нового проекта
6 2. После создания проекта добавьте в него новый файл схемы (File →
New → Block Diagram / Schematic File).
3. Поместите на схему один двухвходовой коньюнктор (and2) с помощью пункта контекстного меню области проектирования Insert →
Symbol.
4. Разместите входы схемы (input) слева от коньюнктора, а выход (output) справа от конъюнктора, как показано на рисунке 2
(также с помощью Insert → Symbol).
5. Переименуйте элементы схемы, дважды щелкнув на их изображении и вписав новое имя. Соедините компоненты, как показано на рисунке 2.
6. Сохраните схему в файле.
7. Установите данный файл главным в проекте, что позволит системе скомпилировать и промоделировать его. Для этого следует открыть окно обозревателя проектов (View → Utility Windows → Project Navigator) и в нем открыть вкладку Files. В контекстном меню сохраненного файла схемы следует выбрать пункт Set As Top-Level Entity.
8. Запустите компиляцию проекта (Processing → Start Compilation).
При необходимости следует исправить ошибки. Добейтесь успешной компиляции.
9. Создайте новый файл временных диаграмм (File → New → Vector
Waveform File). В созданном файле выполните загрузку входов и выходов схемы (в левой части диаграммы под «Name» следует открыть контекстное меню, в нем выбрать «Insert Node Or Bus → Node Finder → выбрать в поле
Filter "Pins: all" → List → >> → OK»).
10. Задайте с помощью редактора временных диаграмм последовательность изменения сигналов на входах. Это можно сделать различными способами. Можно вручную установить нужные значения сигналов на требуемых входах с помощью инструментов на панели слева.
7
Но проще воспользоваться механизмом счетчиков, позволяющим автоматически задать все возможные сигналы на множестве входов. Для этого входы нужно объединить в группу (Выделить сигналы X и Y слева
→ в контекстном меню «Group ...» → назвать группу → OK). Теперь следует выделить группу, в контекстном меню выбрать «Value → Count
Value... → Radix: ASCII → OK». Последовательности сигналов будут задавать все необходимые комбинации, как показано на рисунке 3.
Обратите внимание, что задавать значения выхода вручную не нужно! В настоящий момент на нем наблюдается неопределенное состояние
(отображающееся сеткой), которое сменится значениями сигналов после моделирования схемы.
Рис. 3. Диаграммы сигналов схемы логического элемента «И» в САПР Altera
Quartus до моделирования
11. Сохраните файл временной диаграммы.
12. Откройте Панель Симуляции (Processing → Simulator Tool).
Выберите в ней тип симуляции «Timing», укажите моделируемый файл диаграммы и нажмите на кнопку «Generate Functional Simulation Netlist».
Дождитесь окончания процесса.
13. Запустите симуляцию схемы (Processing → Start Simulation). При необходимости следует исправить ошибки. Добейтесь успешной симуляции.
14. Просмотрите результат моделирования, нажав на кнопку «Open» или «Report». Временная диаграмма выглядит примерно так, как показано
8 на рисунке 4. На ней представлена фактически таблица истинности конъюнктора. Задержка сигнала от входа до выхода примерно равна 8 нс.
15. Просмотрите временные параметры схемы, рассчитанные временным анализатором. Для этого необходимо запустить временной анализ (Processing → Start... → Start Timing Analyzer) и в открывшемся окне результатов открыть вкладку tpd. Пример представлен на рисунке 5.
16. Вернитесь на Панель Симуляции, смените тип симуляции на
«Functional» и повторите симуляцию. Получите функциональную диаграмму конъюнктора (см. рисунок 6).
17.
Сравните между собой временную и функциональную диаграммы.
Объясните различия.
Рис. 4. Временная диаграмма логического элемента «И» в Quartus
Рис. 5. Временные параметры схемы логического элемента «И» в Quartus
9
Рис. 6. Функциональная диаграмма логического элемента «И» в Quartus
3 Порядок выполнения работы
1. Выполните компиляцию и моделирование схемы конъюнктора по методике, описанной выше. Сделайте скрины схемы, функциональной и временной диаграмм, результатов работы временного анализатора и поместите их в протокол.
2. Составьте комбинационную схему (КС) по таблице истинности функции, приведенной в таблице 2. В ней
0 1
2 3
A
A
A
A
— двоичный код номера варианта (подгруппы или компьютера).
Табл. 2. Таблица истинности некоторой функции
1
X
2
X
3
X
3 2
1
,
,
X
X
X
F
0 0
0 1
0 0
1 0
A
0 1
0 0
0 1
1 1
1 0
0 1
A
1 0
1 2
A
1 1
0 0
1 1
1 3
A
В процессе выполнения задания создайте новый файл схемы в текущем проекте. Получите таблицу истинности, соответствующую варианту, на ее основе составьте аналитическое выражение функции
3 2
1
,
,
X
X
X
F
в виде
СДНФ или СКНФ, минимизируйте его и создайте схему, ему соответствующую. Промоделируйте распространение сигналов в схеме и
10 получите функциональную диаграмму. Проверьте правильность синтеза
КС, сравнив функциональную диаграмму с таблицей истинности.
Определите сложность схемы в логических элементах
.э
л
С
и время задержки
З
T
в
. э
л
З
T
(время задержки на одном логическом элементе).
Вставьте в протокол таблицу истинности, аналитическое выражение функции в виде СДНФ или СКНФ, математические выкладки, соответствующие процессу минимизации функции, скрины построенной схемы и функциональной диаграммы, рассчитанные сложность и время задержки.
3. Составьте таблицу истинности и КС одноразрядного полного
двоичного сумматора (ОПДС). Сумматор имеет три входа: A, B, C и два выхода: S (выход младшего разряда суммы A, B, C) и P (выход переноса при сложении — старший разряд суммы A, B, C). Создайте новый файл схемы в текущем проекте и постройте в нем схему сумматора. Получите функциональные диаграммы работы сумматора, определите сложность схемы и время задержки. Проверьте правильность синтеза схемы ОПДС, сравнив функциональную диаграмму с таблицей истинности. В протокол занесите таблицу истинности, аналитические выражения функций
C
B
A
S
,
,
и
C
B
A
P
,
,
в виде СДНФ или СКНФ, математические выкладки, соответствующие процессу минимизации функций, скрины построенной схемы и функциональной диаграммы, рассчитанные сложность и время задержки.
4. Поместите корректно функционирующую схему ОПДС в подсхему
текущего проекта. Для этого следует выбрать «File → Create / Update →
Create Symbol Files for Current File» и ввести название подсхемы
(желательно осмысленное).
5. Создайте новый файл схемы в текущем проекте. В нем составьте схему параллельного сумматора с последовательным переносом на 4
11 разряда на основе ОПДС, созданного ранее. ОПДС, как и используемые ранее примитивы, доступен через контекстное меню области проектирования «Insert → Symbol». Получите функциональную диаграмму работы параллельного сумматора, с помощью которой проверьте работоспособность схемы. Определите сложность схемы и время задержки. В протокол занесите скрины схемы параллельного сумматора, функциональной диаграммы, рассчитанные сложность и время задержки.
6. Создайте новый файл схемы в текущем проекте. В нем составьте схему 4-х разрядного мультиплексора 2 x 1. Для этого составьте схему
одноразрядного мультиплексора 2 x 1, поместите его в подсхему и на ее основе в новом файле схемы того же проекта соберите 4-х разрядный мультиплексор. Мультиплексор (коммутатор, переключатель) на один разряд представляет собой КС, имеющую
n
2
информационных входов
(каналов),
n
адресных входов и один выход. На этот выход мультиплексора передается один из входов, двоичный код номера которого подается на адресные входы. Мультиплексор на
m
разрядов представляет собой
m
одноразрядных мультиплексоров с одной общей схемой выбора канала (с помощью дешифратора
n
n 2
). Постройте функциональные диаграммы всех созданных мультиплексоров, определите их сложности и времена задержки. Всю необходимую информацию занесите в протокол.
7. Изучите работу одного из триггеров (по вариантам):
1)
асинхронного RS-триггера (триггер необходимо собрать самостоятельно);
2)
синхронного RS-триггера со статическим управлением
(триггер необходимо собрать самостоятельно);
3)
синхронного RS-триггера с динамическим управлением
(следует использовать библиотечный триггер SRFF)
12 4)
синхронного JK-триггера с динамическим управлением
(следует использовать библиотечный триггер JKFF);
5)
синхронного D-триггера с динамическим управлением
(следует использовать библиотечный триггер DFF);
6)
синхронного Т-триггера с динамическим управлением на базе библиотечного JK-триггера (JKFF).
Библиотечные триггеры, как и остальные примитивы, доступны через контекстное меню области построения Insert → Symbol.
В данном задании требуется составить таблицу переходов соответствующего триггера, его схему и функциональную диаграмму. С помощью диаграммы необходимо проверить корректность работы триггера.
8. Составьте схему операционного устройства или узла по вариантам:
1) 4-х разрядный сумматор-вычитатель для выполнения сложения- вычитания в дополнительном коде;
2) 4-х разрядный параллельный регистр с двумя каналами записи;
3) сдвиговый регистр на 4 бита и получить из него арифметический
сдвигатель для выполнения сдвигов в обоих направлениях в
дополнительном коде;
4) сдвиговый регистр на 4 бита и получить из него арифметический
сдвигатель для выполнения сдвигов в обоих направлениях в обратном
коде;
5) быстродействующий сдвигатель для выполнения сдвига 4-х
разрядного числа вправо на произвольное число разрядов (от 0 до 3) за один такт;
6) накапливающий 4-х разрядный параллельный сумматор с последовательным переносом;
7) устройство перевода 6-и разрядного числа из прямого кода в
дополнительный;
13 8) устройство перевода 6-и разрядного числа из прямого кода в
обратный.
В данном задании требуется составить схему соответствующего устройства и получить его функциональную диаграмму, с помощью которой доказать корректность работы узла. Всю необходимую информацию требуется занести в протокол.
4 Требования к представлению лабораторной работы
К отчетному занятию необходимо иметь работающий проект Altera
Quartus
со всеми выполненными заданиями и полностью
оформленный протокол, быть готовым по требованию преподавателя продемонстрировать работу любого из устройств, входящих в состав работы, или внести в него изменения. Протокол лабораторной работы оформляется в электронном и печатном вариантах. В протокол включаются результаты лабораторной работы (согласно заданиям, приведенным выше), сопровождаемые пояснительными записями.
Протокол должен завершаться подробными выводами, в которых обобщаются и анализируются результаты, полученные при выполнении лабораторной работы. Титульный лист протокола должен содержать шапку следующего формата:
АРХИТЕКТУРА ЭВМ
Кафедра ЭВМ и Систем
Лабораторная работа № 1
Синтез и исследование комбинационных схем, построение простых операционных устройств
Вариант 1
Фамилия студента
Иванов И.И.
Группа
ИВТ-265
Дата выполнения
Дата отчета
Оценка (баллы)
Подпись преподавателя с расшифровкой