Буферные регистры выполнены на восьми разрядных микросхемах 8282. Входы данных этих микросхем подключены к выходам AD0-AD15 микропроцессора, выходы подключены к шине адреса. На вход стробирования STB поступает сигнал сторбирования адреса STB с процессора, ко входу выбора микросхемы OE подведен логический “0”.
Шинный формирователь выполнен на восьми разрядной микросхеме 8286. Входы данных этой микросхемы подключены к входам/выходам AD0-AD7 микропроцессора, выходы подключены к шине данных. На вход направления передачи данных поступает сигнал OP/IP с процессора, ко входу выбора микросхемы CS подведен сигнал DE формируемый процессором.
На микросхеме DD6 выполнен дешифратор адреса для контроллера прерываний (8259). Ко входу дешифратора подключены все разряды шины адреса и сигнал M/IO. На выходе дешифратора формируется логический “0” если все разряды шины адреса находятся в состоянии логического “0” и сигнал M/IO сигнализирует о выборе устройства ввода/вывода. Выход дешифратора подключен ко входу CS (выбор микросхемы) контроллера прерываний.
Контроллер прерываний выполнен на микросхеме 8259. Микросхема подключается к шине данных через входы/выходы D0-D7. Вход A0, подключенный к младшему разряду шины адреса используется для выбора регистров контроллера при обмене данными между контроллером и процессором. Выход INT подключенный к одноименному входу процессора используется для формирования запроса прерывания контроллером, в свою очередь вход контроллера INTA обеспечивает получение подтверждения прерывания. Сигналы R и W являются стробирующими сигналами чтения и записи информации соответственно. Вход SP подтянутый к логической “1”, служит для выбора роли микросхемы (ведущий “1”, ведомый “0”) если используется несколько микросхем одновременно. На входы IR0, IR1 поступают запросы прерывания от модуля ввода/вывода.
4. Разработка функциональной схемы модуля памяти.
Модуль памяти включает в себя оперативное запоминающее устройство выполненное на двух микросхемах (DD4, DD5) с организацией 32Кx4, постоянное запоминающее устройство в виде восьми микросхем (DD6÷DD13) с организацией 8Кx1 и дешифратор старших разрядов адреса выполненный на микросхемах DD1÷DD3, обеспечивающий обращение к ОЗУ в диапазоне адресов 0000h÷7FFFh, и к ПЗУ в диапазоне адресов E000h÷FFFFh. Эти адреса были вычислены из расчета:
Для ОЗУ: Начальный адрес + объем памяти (байт) – 1
Для ПЗУ: Конечный адрес – объем памяти (байт) + 1
Для данного варианта начальный адрес ОЗУ равен 0000h, объем памяти 256 Кбит = 32 Кбайт, следовательно:
0000h + 8000h (32 Кбайт) – 1 = 7FFFh
Конечный адрес ПЗУ равен FFFFh, объем ПЗУ 64 Кбит = 8 Кбайт, следовательно:
FFFFh – 2000h (8 Кбайт) + 1 = E000h
Ниже, на рисунке 3 представлена функциональная схема модуля ввода/вывода и таблица распределения адресного пространства.
Рис. 3. Функциональная схема модуля ввода/вывода,
таблица распределения адресного пространства.
На микросхемах DD1, DD3 выполнена комбинационная логическая схема, выходной сигнал которой является входным сигналом CS (выбор микросхемы) для микросхем памяти ОЗУ DD4, DD5. Ниже представлена таблица истинности для этой КЛС:
№
А15
M/IO
R
W
Q
1
x
0
x
x
1
2
1
x
x
x
1
3
x
x
1
1
1
4
0
1
0
1
0
5
0
1
1
0
0
Учитывая что сигналом выбора микросхем для DD4, DD5 является логический "0", из таблицы видно что память ОЗУ будет выбрана только тогда, когда:
· старший разряд адреса (А15) равен "0", что обеспечивает доступ к адресам в диапазоне 0000h¸7FFFh;
· сигнал M/IO равен "1" (выбор модуля памяти);
· один из сигналов R или W равен "0" (строб чтения или записи).
Комбинационная логическая схема выполненная на микросхеме DD2, выходной сигнал которой является входным сигналом CS (выбор микросхемы) для микросхем памяти ПЗУ DD6¸DD13, обеспечивает доступ к этим микросхемам только в момент чтения информации из ПЗУ. Ниже представлена таблица истинности для этой КЛС:
№
А13
А14
А15
M/IO
R
Q
1
x
x
x
x
1
1
2
x
x
x
0
x
1
3
0
x
x
x
x
1
4
x
0
x
x
x
1
5
x
x
0
x
x
1
6
1
1
1
1
0
0
Учитывая что сигналом выбора микросхем для DD6¸DD13 является логический "0", из таблицы видно что память ПЗУ будет выбрана только тогда, когда:
· старшие разряды адреса А13, А14, А15 равны "1", что обеспечивает доступ к адресам в диапазоне E000h¸FFFFh;
· сигнал M/IO равен "1" (выбор модуля памяти);
· сигнал R равен "0" (чтение памяти).
Адресные входы микросхем памяти ОЗУ DD4 и DD5, подключены к младшим 14-ти разрядам шины адреса, что позволяет адресовать 16384 ячеек памяти. Выходы данных этих микросхем подключены к шине данных таким образом что выходы микросхемы DD4 подключены к младшим четырем разрядам шины данных, а выходы микросхемы DD5 к старшим четырем. В итоге, поскольку к шине адреса эти микросхемы подключены одинаково, мы имеем адресацию к восьмиразрядным ячейкам памяти.
Адресные входы микросхем памяти ПЗУ DD6¸DD13, подключены к младшим 12-ти разрядам шины адреса, что позволяет адресовать 4096 ячеек памяти. Выходы данных этих микросхем подключены к шине данных таким образом что каждая микросхема подключена к одному из разрядов шины данных. В итоге, поскольку мы имеем восемь микросхем ПЗУ, и к шине адреса эти микросхемы подключены одинаково, мы имеем адресацию к восьмиразрядным ячейкам памяти.
5. Разработка функциональной схемы модуля ввода/вывода.
Модуль ввода/вывода содержит в себе два порта – параллельный порт ввода, выполненный на микросхеме 8255, и последовательный порт вывода, выполненный на микросхеме 8251. Так же в состав модуля ввода/вывода входят комбинационные логические схемы выполняющие роль дешифраторов адреса портов, и логическая схема, фиксирующая изменение состояния информационных входов порта ввода, для формирования сигнала запроса прерывания. Функциональная схема модуля ввода/вывода представлена на рисунке 4.