Анализ работы исходной схемы
Input:
A[3..0] – шина адреса
D[7..0] – шина данных, записываемых в устройство
CS – разрешение активности устройства (активный уровень – низкий, логический «0»)
WR – строб операции записи данных в устройство (по переходу уровня из логического «0» в логическую «1»)
RD – разрешение чтения данных из устройства (при логическом «0»)
Output:
Q[7..0] – шина данных, читаемых из устройства
Работа схемы проиллюстрирована на рисунке 6.
Рисунок 6 – Осциллограмма работы исходной схемы
Операция 1 – запись данных в регистр RA (адрес 0)
Сигнал разрешения активности CS уходит в логический «0», выставляются данные для записи D[7..0] = 8, сигнал WR уходит в логический «0» и по его стробу при переходе в логическую «1» данные, в соответствии с адресом и схемой подключения, записываются в регистр RA.
Операция 2 – запись данных в регистр RB (адрес 1).
Операция 3 – чтение данных по адресу 2.
Внесение изменений в исходную схему Изменение адресов регистров ra, rb, регистра дискретных входов rsa и результата логической функции y
Необходимо задать для регистра RA адрес 13, для регистра RB адрес 14, для регистра RSA адрес 15 и для результата логической функции Y адрес 8. Для этого изменим подписи на входах EN регистров и входах элементов 2ИЛИ-НЕ.
По заданию необходимо реализовать логическую функцию
Y = (RA или не SA) + RB.
Новая функция имеет операцию суммирования, что потребует применения сумматора.
Числа RA, RB и SA, над которыми и проводится операция вычисления результата функции Y, примем положительными, так как в задании не упоминается наличие старшего знакового бита у исходных значений. Это значит, что результирующее число Y может иметь пределы от 0 (RA = 0, SA = 0, RB = 0) до 510 (RA = 255, SA = 255, RB = 255). С учётом этого применим для выполнения данной логической операции 9‑разрядный сумматор.
Полученная схема вычисления результата функции Y представлена на рисунке 7. Рассмотрим подробнее работу схемы в целом.
Рисунок 7 – Схема вычисления результата функции Y
На первый вход сумматора подаётся результат вычисления с помощью элемента NOR2 значения (RA или SA), на второй – значение RB. На выходе получаем 9‑ти разрядное значение. При выводе результатов мы отдельно выводим 9‑ый бит для того, чтобы не повышать разрядность выходной шины.
Осциллограмма работы схемы представлена на рисунке 8:
Рисунок 8 – Осциллограмма работы устройства
Операция 1 – запись данных в регистр RSA (адрес 15)
Сигнал разрешения активности CS уходит в лог. «0», выставляются данные для записи SA[7..0] = 20, сигнал RD уходит в лог. «1» и по его стробу при переходе в лог. «0» данные, в соответствии с адресом и схемой подключения, записываются в регистр RSA.
Операция 2 – запись данных в регистр RA (адрес 13).
Операция 3 – запись данных в регистр RB (адрес 14).
Операция 4 – чтение данных по адресу 8.
Операция 5 – запись новых данных в регистр RA (адрес 13).
Операция 6 – чтение новых данных по адресу 8.
Проверка правильности вычисления значения функции Y (Q) для операции 4:
SA10 = 7; RA10 = 21; RB10 = 24;
SA2 = 111; RA2 = 10101;
RA2 ИЛИ НЕ SA2 =НЕ (RA2 ИЛИ SA2 )= 111010002 = 232;
(RA10 или не SA10) + RB10 = 256.