Микропроцессорный комплект Серии К1810 Исполнитель
- Скачано: 48
- Размер: 85 Kb
Микропроцессорный комплект Серии К1810
План:
1. Микросхема К1810ВМ86 (Intel 8086).
2. Архитектура МП.
3. Сегментация памяти и вычисление адресов.
{spoiler=Подробнее}
Состав: К1810ВМ86 – центральный процессор (16 бит)
ВМ88 – центральный процессор с восьмибитной шиной данных;
ВМ87 – арифметический сопроцессор;
ВМ59 – процессор ввода/вывода;
ГР84 – генератор тактовых импульсов;
ВГ88 – контроллер системной шины;
ВБ89 – арбитр системной шины
ВТ02 – контроллер для подключения динамической памяти объемом
16 Кбайт
ВТ03 – контроллер для подключения динамической памяти объемом
64 Кбайт
ВН54 – интервальный таймер
ВТ37 – контроллер прямого доступа к памяти
ВН59 – программируемый контроллер прерываний
ИР86/87 – шинные формирователи (с инверсией / без инверсии)
ИР82/83 - регистры-защелки (с инверсией / без инверсии)
- Микросхема К1810ВМ86 (Intel
Шестнадцатиразрядный однокристальный МП выполняющий около 2 млн. операций в секунду. Синхронизируется тактовой частотой 25 МГЦ.
Имеет 20-ти разрядную шину адреса, что позволяет обеспечить прямую адресацию 1 Мбайт внешней памяти. Область адресного пространства памяти разбита на сегменты по 64 Кб. Такая организация памяти обеспечивает удобный механизм вычисления физических адресов . ША и ШД мультиплексированы. При организации вычислительных систем их нужно разделить (регистры-защелки). МП может обращаться как к памяти, так и к внешним устройствам.
При обращении к внешним устройствам используются 16 младших линий ША. Следовательно можно подключить 64 К 8-битных внешних устройств, либо 32 К 16-ти разрядных. МП имеет многоуровневую систему прерываний: 256 векторов прерываний. Данный МП является дальнейшим совершенствованием К580ВМ80. Система команд сходна, но более расширена. Программное обеспечение легко переводится с одного МП на другой.
Функциональная схема:
В первый такт обмена на AD0-15 устанавливаются младшие 16 бит адреса памяти или адрес внешнего устройства, сопровождается эта информация сигналом ALE. Во втором такте обмена выставляются данные, которые сопровождаются сигналом DEN. ALE и DEN управляют регистрами-защелками. AD16/ST3-AD19/ST6 – мультиплексированные линии адреса состояния.
В первый такт обмена выдается 4 старших разряда адреса памяти, а при обращении к внешнему устройству – нули. Во втором такте выдаются сигналы состояния МП, причем сигналы ST3-ST4 определяют сегментный регистр участвующий в формировании физического адреса.
ST3 | ST4 | Рег. |
0 1 0 1 |
0 0 1 1 |
ES SS CS DS |
Сегментные регистры. Участвуют в формиро- вании физического адреса.
ST5 – дублирует состояние флага разрешения прерываний.
BHE – разрешение старшего байта. Работает совместно с сигналом А0, обеспечивая механизм передачи информации по ШД.
BHE | A0 | Вид передачи данных |
0 0 1 1 |
0 1 0 1 |
Передается 16-ти битное слово Передается старший байт AD8-AD15 Передается младший байт AD0-AD7 Нет обращения |
|
|
RD –сигнал чтения.
WR – сигнал записи.
M/IO – обращение к памяти или внешним устройствам.
DT/R – направление передачи информации:
«1» - в МП; «0» - из МП.
INTA, INTR – запрос на маскируемое прерывание (INTA – подтверждение прерывания).
NMI – запрос на немаскируемое прерывание.
HOLD – запрос на переход в режим прямого доступа к памяти.
HLDA – подтверждение захвата шины.
TEST – проверочный вход, используется в команде WAIT для организации холостых тактов: «1» - МП выполняет «0», с периодичностью 5 Т проверяет состояние этого сигнала.
MN/MX – минимальный / максимальный режимы, определяющие конфигурацию вычислительной системы. MN- ограничение объема памяти и т.д.
- Архитектура МП.
МП содержит в своем составе 14 регистров общего назначения.
AX=AH+AL
BX=BH+BL
CX=CH+CL
DX=DH+DL
Все остальные регистры общего назначения являются неделимыми:
SP используются при обращениях к стеку для хранения
BP адресной информации
SI при обращении к памяти или внешнему устройству
DI
Сегментные регистры:
CS – определят начальный адрес сегмента кода в котором хранится программа;
SS – хранит начальный адрес сегмента стека;
DS – начальный адрес сегмента данных;
ES – начальный адрес дополнительного сегмента под данные;
IP – хранит смещение очередной команды переданной для выполнения.
DA=CS+IP
F- регистр флагов
0F | DF | IF | SF | ZF | AF | PF | CF |
AD15 AD0
CF – флаг переноса, фиксирует возникновение переноса при сложении или заеме при вычитании, а также выдвижение старшего байта при операциях сдвига;
PF- флаг четности, фиксирует четное число;
AF – флаг вспомогательного переноса, фиксирует перенос или заем из разряда D4 в D3 при операции сложения и из D3 в D4 при вычитании. Используется при преобразовании кодов из двоичного в двоично-десятичный и наоборот;
ZF – флаг нуля, сигнализирует о получении нулевого результата;
SF – флаг знака, дублирует состояние старшего бита результата операции;
OF – флаг переполнения разрядной сетки, сигнализирует о потере старшего бита при сложении.
Названные 6 флагов сигнализируют о результатах арифметических операций. Оставшиеся 3 флага относятся к флагам управления:
DF – флаг направления обработки команд программы, «0» -выполняется команда от меньших адресов к большим.
IF – флаг разрешения прерываний, если он установлен, то процессор реагирует на запросы прерывания по входу INTR;
TF – флаг трассировки, «1» - МП выполняет команды программы в пошаговом режиме.
В состав МП входит устройство управления, которое дешифрует команды и обеспечивает соответствующие управляющие сигналы. Имеется регистр – очередь команд объемом 6 байт в который загружается очередная команда предназначенная для выполнения. Буфер шины адреса – данных представляет собой 16 двунаправленных усилителей, обеспечивающих номинальную нагрузочную способность шины. Буфер адреса состоит из 4-х двунаправленных усилителей выполняющих аналогичную функцию. Сумматор адресов служит для вычисления физических адресов ячеек памяти. АЛУ – 16-ти разрядное.
- Сегментация памяти и вычисление адресов.
Память в ЭВМ на базе К1810ВМ86 организуется как одномерный массив байтов, каждый из которых имеет свой 20-разрядный физический адрес(00000-FFFFF).
Порядок размещения данных в памяти обычный: слово занимает 2 соседние ячейки памяти, причем первым идет младший байт слова, а вторым старший. Физическим адресом слова считается адрес младшего байта слова.
20-ти битный физический адрес ячейки памяти содержится в объекте: сегмент + смещение. Причем на сегмент и на смещение отводится по 2 байта. Следовательно полный физический адрес размещается в 4-х ячейках памяти.
00002 смещение
00003
00004 сегмент
00005
- Физическим адресом этого модуля считается адрес младшего байта смещения.
Все пространство памяти объемом 1М разбито на сегменты по 64 К (16 сегментов). Каждому сегменту программой задается его начальный адрес который заносится в сегментные регистры (CS,SS,DS,ES).Такая организация вычислений 20-ти разрядного фактического адреса обусловлена тем, что МП является 16-ти разрядным и все вычислительные операции должны выполняться словами.
Механизм вычисления фактического адреса следующий: содержимое сегментного регистра сдвигается на 4 бита влево. К содержимому смещения присваивается 4 нуля слева.
Сегмент смещение
- 0
A | B | C | D | 1 | 2 | 3 | 4 |
- 0
A | B | C | D | 0 |
+
- 0
0 | 1 | 2 | 3 | 4 |
A | C | F | 0 | 4 |
При суммировании может возникать перенос из разряда A19 в A20. Этот перенос игнорируется. Аналогичную кольцевую организацию имеет каждый сегмент. При выборке команда: CS +IP = ФА команды. При обращении к стеку: SS +SP =ФА стека.
Обращение к данным может производиться из любого сегментного регистра: DS (SS,CS,ES) +EA = ФА данных. EA – эффективный адрес, константа, указанная в программе.
К данным можно обратиться через индексные регистры SI и DI; причем индексный регистр хранит смещение на адрес ячейки памяти, откуда данные можно извлечь. А DI хранит смещение на адрес ячейки памяти, куда данные можно направить: DS(SS,CS,ES) +SI=ФА данных; ES+DI =ФА данных. Обращение через регистр BX: ES(CS,SS,DS)+BX= ФА данных. Такая модульная организация памяти посегментно позволяет писать программы в виде отдельных модулей.
{/spoilers}