- •«Кузбасский государственный технический университет
- •1. Описание цикла лабораторных работ
- •2. Описание архитектуры учебной эвм
- •2.1. Программные модели для изучения архитектуры эвм
- •2.2 Структура учебной эвм
- •2.3. Представление данных в модели
- •2.4. Система команд учебной эвм
- •2.5. Состояния и режимы работы учебной эвм
- •2.6. Интерфейс пользователя
- •2.7. Микрокомандный уровень учебной эвм
- •2.8. Внешние устройства
- •2.8.1 Общая характеристика моделей внешних устройств
- •2.8.2 Контроллер клавиатуры
- •2.8.3. Дисплей
- •2.8.4. Блок таймеров
- •2.8.5. Тоногенератор
- •2.8.6. Блок индикаторов
- •2.9. Подсистема прерываний
- •2.9. Программная модель кэш-памяти
- •2.10. Программная модель alu-1
- •2.10.1. Общие сведения о программной модели alu-1
- •2.10.2. Операционный автомат
- •2.10.3. Регистры операционного автомата
- •2.10.4. Арифметико-логический блок
- •2.10.5. Блок сдвигателя
- •2.10.6. Счетчик
- •2.10.7. Микрооперации и логические условия
- •2.10.8. Управляющий автомат с программируемой логикой (уапл)
- •3. Лабораторные работы
- •3.1. Лабораторная работа № 1. Основы работы с программной моделью учебной эвм
- •3.1.1. Цель работы
- •3.1.2. Общие положения
- •3.1.3. Последовательность выполнения работы
- •3.1.4. Варианты заданий
- •3.1.5. Пример выполнения работы
- •3.1.6. Содержание отчета
- •3.2.3. Последовательность выполнения работы
- •3.2.4. Варианты заданий
- •3.2.5. Пример выполнения работы
- •3.2.6. Содержание отчета
- •3.3.3. Последовательность выполнения работы
- •3.3.4. Варианты заданий
- •3.3.5. Пример выполнения работы
- •3.3.6. Содержание отчета
- •3.3.7. Задания повышенной сложности
- •3.3.8. Контрольные вопросы
- •3.4. Лабораторная работа №4. Подпрограммы и стек
- •3.4.1. Цель работы
- •3.4.2. Общие положения
- •3.4.3. Последовательность выполнения работы
- •3.4.4. Варианты заданий
- •3.4.5. Пример выполнения работы
- •3.4.6. Содержание отчета
- •3.5.5 Пример выполнения работы
- •3.5.4 Варианты заданий
- •3.5.5 Пример выполнения работы
- •3.5.6. Содержание отчета
- •3.5.7. Задания повышенной сложности
- •3.5.8. Контрольные вопросы
- •3.6. Лабораторная работа №6. Программирование внешних устройств
- •3.6.1. Цель работы
- •3.6.2. Общие положения
- •3.6.3. Последовательность выполнения работы
- •3.6.4. Содержание отчета
- •3.6.5. Варианты заданий
- •3.6.6. Пример выполнения работы
- •3.6.7. Задания повышенной сложности
- •3.6.8. Контрольные вопросы
- •3.7. Лабораторная работа №7. Принципы работы кэш-памяти
- •3.7.1. Цель работы
- •3.7.2. Общие положения
- •3.7.3. Последовательность выполнения работы
- •3.7.4. Содержание отчета
- •3.7.5. Варианты заданий
- •3.7.6. Контрольные вопросы
- •Рекомендуемая литература
- •Лабораторный практикум по архитектуре эвм и систем
- •230201 «Информационные системы и технологии»
3.5.5 Пример выполнения работы
Пусть дана следующая последовательность команд, которые требуется выполнить на уровне микрокоманд:
RD #20
WR 30
ADD #5
WR @30
JNZ 2
Выполняя заданную последовательность команд в режиме Шаг при включенном Режиме микрокоманд и открытом окне Микрокомандный уровень, зафиксируем изменения в регистрах процессора и ячейках оперативной памяти в форме табл. 3.2.
Таблица 3.2
Состояние программной модели на уровне микрокоманд
3.5.6. Контрольные вопросы
1. Какие команды связаны с изменением состояния аккумулятора?
2. Какие действия выполняются в модели по микрокомандам MRd и RWr?
3. Как будет выглядеть микропрограмма для несуществующей команды «умножение модулей чисел»?
4. Что изменится в работе микропроцессора, если в каждой микропрограмме микрокоманду увеличения программного счетчика PC := PC + 1 переместить в самый конец микропрограммы?
3.5. Лабораторная работа № 5. Разработка микропрограммы арифметической операции
3.5.1. Цель работы
Цель работы – приобрести умение разрабатывать микропрограммы для выполнения простейших арифметических операций.
3.5.2. Общие положения
Реализация программы в ЭВМ сводится к последовательному выполнению команд. Каждая команда, в свою очередь выполняется как последовательность микрокоманд, реализующих элементарные действия над операционными элементами процессора.
…
3.5.3. Последовательность выполнения работы
Данная лабораторная работа предполагает выполнение следующих этапов:
1). Разработать граф-схему или текстовое описание алгоритма заданной операции.
2). Разработать микропрограмму, реализующую разработанный алгоритм для операционного автомата моделей АЛУ (ALU-1 или ALU-R).
3). Проверить выполнение разработанной микропрограммы на нескольких тестовых примерах.
4). Предложить структуру операционного автомата оптимальную для реализации разработанного алгоритма.
5). Выяснить является ли разбиение микроопераций, предлагаемое по умолчанию стандартной таблицей кодирования, приемлемым для реализации разработанной микропрограммы.
6). Если стандартное разбиение неприемлемо, то разбить множество использованных в программе микроопераций (МО) на подмножества несовместимых МО, закодировать микрооперации в подмножествах, доработать таблицу кодировки и сохранить ее в отдельном файле.
7). Записать микропрограмму на языке микроассемблера, описанного в разделе 2.Х.Х и скомпилировать ее.
8). Отладить микропрограмму в автономном режиме, задавая вручную различные значения логических условий.
9). В режиме Управление от управляющего автомата проверить функционирование АЛУ под управлением отлаженной микропрограммы на нескольких примерах.
3.5.4 Варианты заданий
В качестве заданий использованы арифметические операции сложения и вычитания, которые не требуют реализации циклов в микропрограммах. В этом случае достаточно использовать лишь переходы в зависимости от принятого способа кодирования операндов и сочетания знаков.
В таблице 3.11 приведены варианты заданий. Их особенность состоит в том, что операнды и результат могут быть представлены в различных кодах. В реальных АЛУ такого разброса в кодировках не существует поскольку это может значительно усложнить алгоритм при отсутствии преимуществ в реализации. Однако в учебных заданиях такой подход приемлем, поскольку это позволяет в рамках одного задания вспомнить особенности выполнения операций в различных кодах.
Таблица 3.11
Варианты заданий
Вар. |
Тип операции |
Код 1-го операнда |
Код 1-го операнда |
Код выполнения |
Код результата |
1 |
Сложение |
ПК |
ДК |
ОК |
ПК |
2 |
Сложение |
ОК |
ПК |
ДК |
ПК |
3 |
Вычитание |
ДК |
ПК |
ДК |
ПК |
4 |
Сложение |
ПК |
ПК |
ОК |
ДК |
5 |
Вычитание |
ДК |
ПК |
ДК |
ПК |
6 |
Вычитание |
ПК |
ДК |
ПК |
ДК |
7 |
Сложение |
ПК |
ПК |
ДК |
ПК |
8 |
Сложение |
ДК |
ПК |
ПК |
ДК |
9 |
Сложение |
ПК |
ПК |
ОК |
ДК |
10 |
Вычитание |
ПК |
ПК |
ПК |
ПК |
11 |
Сложение |
ДК |
ПК |
ДК |
ДК |
12 |
Сложение |
ПК |
ОК |
ДК |
ДК |
13 |
Вычитание |
ПК |
ПК |
ОК |
ПК |
14 |
Сложение |
ДК |
ПК |
ДК |
ДК |
В таблице 3.11 использованы следующие обозначения:
• ПК – прямой код;
• ОК – обратный код;
• ДК – дополнительный код.