Главная  Микропроцессорные системы 

[0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15] [16] [17] [18] [19] [20] [21] [22] [23] [24] [25] [26] [27] [28] [29] [30] [31] [32] [33] [34] [35] [36] [37] [38] [39] [40] [41] [42] [43] [44] [45] [46] [47] [48] [49] [50] [51] [52] [53] [54] [55] [ 56 ] [57] [58] [59] [60] [61] [62] [63] [64] [65] [66] [67] [68] [69] [70] [71] [72] [73] [74] [75] [76] [77] [78] [79] [80] [81] [82] [83] [84] [85] [86] [87] [88] [89] [90] [91] [92]

ва-состояния, содержащегося в МБР7. Для этого определенные выходы МБР? (соответствующие состояниям «Ввод» или «Вывод») соединены с входами ВКг каждого из остальных регистров. Кроме того, логическая сумма сигналов на выходах «Ввод» и «Вывод» МБР? используется для разделения адресов внешних устройств и ЗУ. Если оба сигнала равны нулю, то обмен с любым из внешних устройств запрещается (путем подачи специального сигнала на управляющий вход дешифратора, обозначенный ВУ/ЗУ), и происходит обмен с ЦПЭ или ПЗУ. Сигнал «Запись - Вывод» (Зп.-Выв.), снимаемый с соответствующего разряда МБР?, определяет режим работы ОЗУ (чтение или запись данных), а сигнал «Подтверждение прерывания» (П. Пр.) используется для разрешения выдачи кода. RST с МБР6 на шину данных. Оба эти сигнала задаются определенными разрядами слова-состояния, которое выдается из ЦПЭ на МБР?.

Следует заметить, что в данном варианте системы нет необходимости в специальном дешифраторе для управления входами «Выбор кристалла» ПЗУ и ОЗУ, так как требуемый объем памяти реализуется с помощью одной микросхемы ПЗУ (с организацией 256X8) и одной микросхемы ОЗУ (объемом не более 32X8). Соответствующие выводы «ВК» У микросхем ПЗУ и ОЗУ подсоединяются непосредственно к источнику питания ([/и.п). В случае необходимости увеличения объема памяти дешифратор для выбора кристалла строится аналогично дешифратору выбора внешних устройств.

Представленная на рис. 5.6 структурная схема микропроцессорной системы является результатом рассмотренного этапа проектирования, в ходе которого опреде-. ляются также основные технические параметры отдельных узлов схемы. Дальнейшая конкретизация аппаратной и программной частей разработанного в общих чертах алгоритма составляет содержание следующего этапа.

5.2.4. этап детализации

Как уже отмечалось в § 5.1, на данном этапе аппаратная и программная части микропроцессорной системы могут разрабатываться уже независимо. Задача детализации отдельных узлов аппаратной части до уровня



функциональных схем хорошо известна специалистам радиотехнического профиля и является предметом рассмотрения многочисленных книг по импульсным и цифровым устройствам (например, [24]). Поэтому здесь остановимся, главным образом, на программной части этапа детализации, которая заключается в разработке рабочей программы выбранного алгоритма на языке ассемблера МП. Основой программирования служит система команд МП К580, приведенная в приложении, и укрупненная схема алгоритма, представленн&я на рис. 5.5.

В рассматриваемом алгоритме имеется два неопределенных программных блока (ПБ)-«Поиск» и «Контроль», которые необходимо конкретизировать.

/. Программный блок «Поиск». Выбранная структура микропроцессорной системы (см. рис. 5.6) включает в себя аппаратные средства, осуществляющие операцию обнаружения и поиска сигнала, которая завершается измерением начального значения то- Поэтому соответствующая программная часть в этом случае сводится к управляющим операциям, обеспечивающим необходимое взаимодействие МП с внешними устройствами. Пример такой программы с необходимыми краткими пояснениями представлен в табл. 5.7. Используемая в этой таблице форма записи двух- и трехбайтовых команд (столбец 3) при соответствующей порядковой нумерации байтов (столбец 2) удобна для определения необходимого объема ПЗУ. Обозначения МАх и МОх (где X - любое целочисленное значение) используются здесь для указания адресов ячеек ПЗУ и ОЗУ соответственно. Эти адреса всегда двухбайтовые.

В рассматриваемый программный блок включена универсальная подпрограмма «Прерывание», которая используется также в других блоках программы (см. ПБ «Отсчет» в табл. 5.8). Поэтому она содержит операции сохранения содержимого регистров В и С (команды PUSH В, POP В), излишние для данного блока. Для этой подпрограммы удобно использовать отдельную нумерацию байтов (столбец 2). Для обращения к подпрограмме «Прерывание» служит метка МА1 (столбец 1), обозначающая первый байт начального адреса подпрограммы. Такая форма обозначения меток будет использоваться в дальнейшем при составлении других программ.



Таблица 5.7

Метка

Номер байта

Мнемонические обозначения

Число тактов

Описание операций и краткие пояснения

ПБ .Поиск"

LXTSP М02\ М022

Непосредственная загрузка указателя стэка д-чя обслуживания ПП „Прерывание". Адрес соответствующей ячейки ОЗУ указывается вторым и третьим байтами команды

MVfA SCR

Загрузка в А управляющего слова SCR, содержащегося во втором байте, которое обеспечивает переключение УУ (см. рис. 5.6) в режим поиска

MBR5

Вывод родержимого А иа ВУ с адресом, соответствующим МБР5

Разрещение прерывания

Останов программы (команда HLT) или переход к основной программе с возвратом в данную программу после отработки ПП „Прерывание"

Поступление на МП сигнала прерывания (сигнал готовности СГ1 от МБР1). Выдача на щину данных команды RST, код которой определяет адрес следующей команды IMP (адрес (MAl) {МА2))

9 10 11

JMP МАЗ MA4

Переход к ПП „Прерывание" по адресу {МАЪ) (МЛ4)

Выполнение ПП „Прерывание" (записанной ниже в данной таблице), результатом которой является гапись значения Хо нз МБР1 в ячейку ОЗУ по адресу {М0\) {М02)



[0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15] [16] [17] [18] [19] [20] [21] [22] [23] [24] [25] [26] [27] [28] [29] [30] [31] [32] [33] [34] [35] [36] [37] [38] [39] [40] [41] [42] [43] [44] [45] [46] [47] [48] [49] [50] [51] [52] [53] [54] [55] [ 56 ] [57] [58] [59] [60] [61] [62] [63] [64] [65] [66] [67] [68] [69] [70] [71] [72] [73] [74] [75] [76] [77] [78] [79] [80] [81] [82] [83] [84] [85] [86] [87] [88] [89] [90] [91] [92]

0.0011