Разработка микропроцессорной системы на базе микропроцессора I-8088, содержащей: RAM – 4 кб; ROM –2 кб; периферия – I-8255, I-8279, страница 7

Тактируется вся схема сигналами с ГТИ. МП работает на частоте 5 МГц, а ПККИ допускает частоту до 3 МГц. Чтобы выполнить это условие, ко входам X1 и X2 ГТИ подключен кварц на 15 МГц. Таким образом, на выход CLK подается сигнал с частотой 5 МГц (в три раза меньше входной) и коэффициентом заполнения 33% (именно такой требуется процессору), а на выход PCLK - с частотой 2,5 МГц (в шесть раз меньше входной) и коэффициентом заполнения 50%. CLK соединяется с одноименным входом МП, а PCLK с входом CLK ПККИ. Ещё один важный момент – это заземление входа F/~C. Если подать на него логическую единицу, то ГТИ будет тактироваться внешним генератором через вход EFI. В данной работе используется кварцем, поэтому нужно подать логический ноль на F/~C. В случае использования резонатора также рекомендуется заземлить вход CSYNC. Режим READY не используется, поэтому входы RDY и AEN подключены так, чтобы на READY всегда была единица, т.е. не было никакого влияния на МП.

У МП I-8088 есть два режима работа: максимальный и минимальный. Максимальный в схеме без надобности, поэтому на вход MN/~MX подается единица. Прерывания в разрабатываемой микропроцессорной системе (МПС) не используются, поэтому входы NMI и INTR заземлены. Не используется и прямой доступ к памяти, так что вход HOLD тоже заземлен. Режим TEST также не используется и на одноименный вход подается ноль. 20 адресных выходов позволяют адресовать до 1Мб памяти. В нашей же системе самый большой объем памяти – это 4кб, так что для адресации используются только 12 бит и ещё бит для выбора типа памяти (RAM или ROM), остальные адресные выходы не используются. По идее, для выбора типа памяти должен использоваться дешифратор адреса, но, так как всего два типа и много свободных адресных выходов, было решено не использовать дешифратор, а выбирать тип адресуемой памяти в зависимости от значения бита A12.

Для экономии ножек, младшая часть адреса (8 бит) мультиплексирована с шиной данных. Чтобы её демультиплексировать нужен регистр, в качестве которого используется I-8282. В начале машинного цикла на выходе процессора ALE появляется единица и по шине AD (address-data) выдается адрес. По сигналу ALE (который подается на вход STB) регистр I-8282 открывается для адреса. Далее сигнал ALE снова обращается в ноль, и регистр закрывается. А адрес будет доступен с выходов O в течении всего машинного цикла (~OE вход заземлен). Адресные выходы 8-15 доступны на протяжении всего машинного цикла.

Во втором и далее тактах машинного цикла на шину AD выдаются данные, и становится нулевым сигнал ~DEN. Данные с шины AD идут в шинный формирователь (ШФ) для усиления. В качестве ШФ используется I-8286 (U6). Низким уровнем сигнала ~DEN (поданным на вход CD), он включается. Сигнал процессора DT/~R управляет направлением передачи данных и подается на вход T/~R ШФ. T – передача из A в B (для процессора это “запись”). R – передача из B в A (“чтение”).

Полученные шины адреса и данных подаются на память и на периферийные устройства (ПУ). Выбор того с чем работать делается с помощью сигнала процессора IO/~M. Рассмотрим его использование в контексте описания подключения каждого из чипов памяти и ПУ к процессору.

ОЗУ CY7C135 – это память, к которой можно одновременно выполнять две операции чтения/записи. Но это здесь не нужно, поэтому ровно половина входов/выходов не используются (~CER всегда высокий). Входы A0L-A11L – адресные входы, I/O0L-I/O7L – двунаправленные входы данных. ~ OE заземлен, что означает постоянное разрешение на выдачу данных. Тип операции – чтение или запись определяется сигналом ~SS0 с процессора, подаваемым на вход R/~WL. Логическая единица – чтение, ноль – запись. Сигнал выбора кристалла ~CEL формируется по следующей формуле ~(~(IO/~M) & ~A12). То есть, только когда IO/~M низкий (работа с памятью) и A12 низкий, получается активный уровень ~CEL (низкий).