М1: РОР РSW ;Восстановление содержимого аккумулятора и регистра
;признаков
ЕІ ;Разрешение прерываний
RЕТ ;Возврат в основную программу
Р8.30. В подпрограмме необходимо предусмотреть сохранение в стеке и последующее восстановление содержимого аккумулятора и регистра признаков. Сохранять содержимое регистровой пары НL, а также других РОНов нет необходимости, так как в подпрограмме оно не меняется.
Р8.31. Обращение к подпрограмме СOSN в процессе выполнения подпрограммы обработки прерываний реализуется с помощью команды САLL СОSN. В остальном решение аналогично решению задачи 8.30.
Р8.32. При проектировании МПС, предназначенной для проверки работоспособности модулей ОЗУ, за основу можно взять схему на рис. 8.2, к которой необходимо подключить ПЗУ, ОЗУ и индикаторы. Можно использовать БИС ПЗУ типа КР556РТ5 с емкостью памяти 512x8 и 8 БИС ОЗУ типа КР565РУ2А с общей емкосгью памяти 1024x8. (Для решения поставленной задачи столь большая память не требуется; предполагается, что МПС выполняет и другие функции.)
Для подключения индикаторов (светодиодов, динамика) следует использовать регистр К589ИР12.
Алгоритм представлен на рис. Р.8.7.
Проверка работоспособности модуля производится последовательно ячейка за ячейкой1 путем записи и считывания тестового сигнала и сравнения считанной информации с тестовым сигналом. При совпадении этой информации для всех ячеек осуществляется переход к новому тестовому сигналу; после проверки на всех тестовых сигналах выдается звуковой сигнал низкого тона, свлидетельствующий об исправности модуля. При несовпадении информации для какой-либо ячейки на каком-либо тестовом сигнале индицируются адрес дефектной ячейки и номер дефектной БИС и выдается звуковой сигнал высокого тона, свидетельствующий о неисправности модуля.
Рис. Р8.7. Алгоритм проверки работоспособности модулей ОЗУ
При составлении программы необходимо руководствоваться следующими соображениями:
для адресации ячеек проверяемого модуля необходимо выбрать область памяти емкостью 1 Кбайт, не используемую в самой МГ7С (капример. от F000 до F3FF ), для перехода от одного тестозого сигнала к другому можно использовать тот факт, что рекомендсванные в задании тестовые сигналы отличаются один от другого на постоянную, величину 01010101;
совпадение считанной из ячейки информации с записанной: целесообразно проверять с помощью команды суммирования по mod2; при этом несовпадающий бит будет указывать на номер дефектной БИС.
Р8.33. Пусть , где R(j) – j-й минтерм или имиликант фунхции F:
причем
Для запоминания в МПС функции F закодируем каждый из минтермов R(j)двумя n-разрядными кодами М(j) = m1 m2 ...mn и С(j} = с1с2...сп, образуемыми по правилу, которое представлено в табл. Р8.2.
Таблица Р8.2
ri |
mi |
ci |
xi |
1 |
1 |
1 |
0 |
|
1 |
0 |
0 |
Таблица Р8.3
bi |
mi |
ci |
ti |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
Ф |
0 |
1 |
0 |
0 |
0 |
1 |
1 |
1 |
1 |
0 |
0 |
0 |
1 |
0 |
1 |
Ф |
1 |
1 |
0 |
1 |
1 |
1 |
1 |
0 |
Например, mi=1 означает, что в R(j) входит .xi ; или а сi = 1— что xi входит в неинвертированном виде.
Пусть необходимо вычислить функцию F на наборе значений аргументов х1=bі, х2 = b2 , ..., хn= bn . который задан кодом В = b1 b2...bп, введенным в МПС.
Составим тест T(j) =t1 t2 ...tn но правилу, предсгавленному в табл. Р8.3.
Сопоставляя табл. Р8.2 и табл. Р8.3, легко заключить, что данный импликант или минтерм на заданном наборе значений аргументов будет равен 1 в том, и только в том случае, если все ti (i=1, ..., п) равны 0. Полагая в табл. Р8.3 Ф = 1, получаем
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.