Если в состоянии останова, то алгоритм переходит.
В противном случае : готов ли процессор к обмене информацией? Если МП готов к обмену => не находится ли МП в процессе захвата (=> осуществляется лишь ввод или вывод данных), т.е. в регистр команд засылается содержимое шины данных по сигналу DBIN (Т3). Происходит анализ конца цикла (КЦ) (т.е. четвёртого и пятого циклов может и не быть). Если нет КЦ, то выполняется ОП; если опять нет КЦ, то опять ОП.
Если конец команды (КК), то анализируется триггер на прерывание (TI). Если он не активен, то происходит считывание следующего байта, если он активен – то выполняется прерывание.
В каждом машинном цикле происходит одно обращение к памяти или к портам => в каждом цикле машинных циклов, сколько требуется для обращения к памяти или портам.
Исключения:
1. Команда HLT требует одно обращение к памяти, а выполняется за два машинных цикла.
2. Команда DAD – требует 1 обращение к памяти, а выполняется за 5 машинных циклов.
|
|
|
|
|
|
|
|
|
|
|
|
1. Если во втором такте обнаружен сигнал запроса захвата HOLD, то при чтении МП считывает содержимое ШД и вырабатывает сигнал подтверждения захвата, отключаясь при этом от ШД и ША (шины адреса). Если в этот момент осуществляется машинный цикл записи, МП заканчивает машинный цикл записи и переходит в режим захвата. После этого по каждому такту анализируется вход HOLD, если на этом входе снят сигнал запроса захвата, то МП выходит в точку алгоритма «проверка конца команды» и снимает свой байт.
2. Состояние останова МП.
МП переходит в это состояние после выполнения машинного цикла чтения кода команды останова HLT. Первый машинный такт - чтение команды, второй - обслуживание останова.
Выполнение командного цикла в STA (копирование данных из аккумулятора в ячейку памяти, адрес которой указан в 2-х дополнительных байтах команды).
Первый такт МЦ:
Содержимое счётчика выставляется на шину адресов
(AB¬PC); (PC) ¬(PC)+1
Второй такт:
Анализируется, есть ли останов, READY, HOLD.
Третий такт:
(PK) ¬((AB)) в регистр команд записывается содержимое ячейки памяти, адрес которой выставлен на шине адресов.
Машинный цикл 2:
Чтение памяти.
1-й такт: на шину адресов выставляют содержимое программного счётчика, сам счётчик увеличивается на 1.
2-й такт: осуществляются все проверки.
3-й такт: (Z) ¬((AB)), во внутренний регистр Z записывается содержимое ячейки памяти, адрес которой находится на ША.
МЦ 3:
Чтение памяти. 2 первых такта совпадают со вторым МЦ.
Такт 3: в (W) ¬((AB))
МЦ 4:
Запись в память.
1 такт: (AB) ¬(WZ) на шине адресов выставляется адрес регистров WZ.
2 такт: проверки.
3 такт: ((AB)) ¬(A)
4 такт: настройка УУ - подготовка к следующему МЦ итого 13 машинных тактов.
Система команд МП i8080.
Большинство универсальных МП имеет расширенную систему команд, что сделано для упрощения процесса программирования.
Все команды МП можно классифицировать по 5 признакам:
1. по функциональному назначению
2. по числу адресов
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.