Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
lr3.doc
Скачиваний:
0
Добавлен:
10.11.2019
Размер:
271.87 Кб
Скачать

Лабораторна робота №3 дослідження схем і мікропрограмування операцій Зсуву в блоці обробки даних (бод) лабораторного стенда мт1804

Мета роботи: Вивчення й дослідження схем і мікрокоманд операцій зсуву, придбання практичних навичок мікропрограмування операцій зсуву центрального процесорного елемента ВС1 лабораторного стенда МТ1804.

Методичні вказівки до виконання лабораторної роботи

Функціональна схема для виконання операцій зсуву в центральному процесорі ВС1 (DD29) лабораторного стенда наведені на рис. 1.9 (л.р. 1). Безпосередньо в процесорі ВС1 (DD29) виконуються мікрооперації зсуву праворуч або ліворуч коду, запис якого виконано в даному такті роботи або в акумулятор PQ, або в РОН регістрової пам'яті ВС1. В звільнившийся при зсуві розряд (в 3-ій при зсуві праворуч й 0-ої при зсуві ліворуч) записується стан сигналу, формованого на виході мультиплексорів DD35 й DD30. Як керуючі сигнали мультиплексорів DD35 й DD30 використовуються 24-ий (MS2), 22-ий (I7) і 20-ий (MS1) розряди РМК (табл. 1.1, л.р. 1). Сигнал I7 переводить в активний стан мультиплексор DD35 при виконанні у ВС1 мікрооперації зсуву праворуч: I8-I6=100 й 101. При виконанні мікрооперацій зсуву ліворуч коду на вході як PQ так і РОН (I8 I7 I6 = 110) або тільки на вході РОН (I8 I7 I6 = 111) сигнал (I7) активізує мультиплексор DD30 і виходи цього мультиплексора переходять із високоімпедансного у двійковий стан. У силу цього на відкритих входах ВС1 PQ0 й PR0 формуються коди, установлювані керуючими сигналами MS2 й MS1 РМК. У мікрокоманді ці керуючі сигнали MS2 й MS1 установлюються залежно від реалізованої операції зсуву й відповідно до табл. 1.7 (л.р. 1). Наприклад, при реалізації операцій зсуву одиничної довжини з уведенням 0 сигналів MS2 й MS1, які приймаються рівними нульовому значенню (00).

У табл. 3.1 наведений приклад мікропрограми, що реалізує операції зсуву одинарної й подвійної довжини.

Мікрокоманда 0 цієї програми здійснює завантаження числа 210 у РОН0. Мікрокоманда 1 виконує циклічний зсув цього коду (у РОН0) ліворуч на один розряд. Наступна мікрокоманда 2 циклічно зрушує вміст РОН0 праворуч на один розряд. Третя мікрокоманда (МК3) очищує Q-регістр ВС1 (Q=0). Мікрокоманда 4 виконує зсув подвійної довжини (РОН0 + PQ) ліворуч (MS2 MS1 = 10, Q(3)→POH0(0), POH0(3)→Q(0)), п'ята мікрокоманда (МК5) – зсув подвійної довжини РОН0 і РQ праворуч (табл. 1.7, л.р. 1). Мікрокоманда 6 є порожньою (I8 I7 I6 = 001) і не змінює вмісту регістрів РОН ВС1 (NOP-команда).

Для виконання мікропрограми спочатку необхідно здійснити ручне мікропрограмування мікропрограмної пам'яті (МПП). Для цього перемикачем SA14 у стенді встановлюється режим ЗАВАНТАЖЕННЯ. Для запису команди в МПП адреса МК установлюється на перемикачах (SA11-SA8). Номер поточної тетради МК, що завантажується, задається на перемикачах (SA3-SA1), а її вміст – на (SA7-SA4). Після однократного натискання кнопки SB1 уміст поточної тетради (на (SA7-SA4)), записується в необхідний осередок кристала МПП (рис. 1.3, рис. 8, л.р. 1). Необхідно врахувати, що тригер Q34.2 у режимі ЗАВАНТАЖЕННЯ (SA14) забезпечує передачу адреси МК із виходу перемикачів SA11-SA8 безпосередньо на адресні входи кристалів DD3-DD10 МПП через блок мікропрограмного керування ВУ1 шляхом формування на його вході сигналів керування S1S0 = 11 (рис. 1.11, л.р. 1). Інакше кажучи, у стенді ВУ1 у режимі ЗАВАНТАЖЕННЯ є прозорим для адресного коду SA11-SA8. Вихід активного кристала обраного осередку МПП при цьому автоматично за допомогою перемикачів (SA3-SA1) комутирується на індикатори МПП (VD8-VD5) (рис. 1.8, л.р.1), які призначені для контролю вмісту тетради, яка записується.

Для виконання кожної конкретної МК програми її вміст варто завантажити в РМК. У режимі ЗАВАНТАЖЕННЯ (SA14) для цього досить на перемикачах SA11-SA8 набрати адресу МК, по якому на виході МПП установиться код необхідної МК, і один раз натиснути кнопку SB2 (рис. 1.4, л.р. 1). У результаті сигнал Q34.1 (ГОІ) по задньому фронті негативного імпульсу ( ) виконує запис у РМК команду на виході МПП. Завантажена в такий спосіб у РМК команда далі зберігається в РМК протягом усього такту, тобто до наступного натискання SB2. Це дозволяє за допомогою SА11-SА8 читати із МПП наступну МК, паралельно виконуючи в АЛП ВС1 мікрооперації, що були активізовані попередньою командою, що залишається в РМК.

Відзначимо, що якщо перемикачі (SА3-SА1) у режимі виконання програми будуть установлені в положення 001, то на індикаторах (VD12-VD9) у кожному такті (у проміжку між двома натисканнями кнопки SВ2) буде висвітлюватися вміст шини Y стенда, тобто вміст вихідної шини комбінаційного АЛП, що реалізує в даному такті код операції (I8-I0), тобто та, що зберігається в РМК.

Для виконання першої команди розглянутої програми (табл. 3.1) перемикачі (SА11-SА8) необхідно встановити в стан 0000 й один раз натиснути кнопку SВ2. Після цього в РМК буде виконано запис умісту команди МК0 (рис. 1.4, л.р.1), а в АЛП ВС1 ініційована команда запису числа 2 у РОН0. У силу цього на вихідній шині Y АЛП буде видано число 2, що тільки при наступному натисканні SB2 (у наступному такті) буде записане в РОН0. При цьому якщо до другого натискання кнопки SВ2 на (SА11-SА8) буде встановлена адреса МК1 (0001), то паралельно з ініціалізацією запису числа 2 у РОН0, у комбінаційному АЛП ВС1 буде виконуватися мікрооперація команди МК1, тобто операція циклічного зсуву ліворуч цього вмісту РОН0 (числа 2). При цьому на індикаторах шини Y ВС1 (VD12-VD9) при кожнім натисканні SВ2 (у кожному такті) код буде змінюватися в послідовності: 4, 8, 1, 2, 4 і т.д.

Аналогічним чином можливо досліджувати операцію циклічного зсуву праворуч РОН0 шляхом ініціалізації МК2 (при положенні адресних перемикачів (SА11-SА8) = 0010).

При багаторазовому виконанні операції зсуву ліворуч подвійної довжини (мікрокоманда МК4) світлодіоди (VD12-VD9) будуть у стані: 2, 4, 8, 0, 0, 0, 0, 1, 2, 4 і т.д.

При багаторазовому виконанні операції зсуву праворуч подвійної довжини (мікрокоманда МК5) індикатори VD12-VD9 після кожного натискання кнопки SВ2 будуть у стані: 2, 1, 0, 0, 0, 0, 8, 4, 2 і т.д.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]