Лекции по Вычислительным машинам, системам и сетям   

2. Микропроцессорный комплект К1810

2.1. Микропроцессор К1810ВМ86

Зарубежный аналог этой микросхемы имеет обозначение i8086. Этот микропроцессор (МП) относится к CISC-типу. Он имеет 20 адресных линий (т.е. может адресовать 220 = 1 Мбайт ячеек ОП) и 16 линий данных. МП может работать в двух режимах: минимальном и максимальном.

Минимальный режим используется, когда на основе МП реализуется несложная однопроцессорная система. Для сложных однопроцессорных и многопроцессорных систем используется максимальный режим.

2.2. Назначение входов/выходов ВМ86 в минимальном режиме

Обозначение МП ВМ86 на функциональных схемах приведено на рис.2.1. Рассмотрим назначение входов-выходов МП в минимальном режиме.

CLK (clock – частота) – вход тактовых импульсов. Синхросерия на этот вход обычно подается с микросхемы генератора К1810ГФ84 (i8284).

INTR (interrupt request – запрос на прерывание) – маски-руемый вход запросов на прерывание. Все запросы на прерывание от внешних устройств заводятся на этот вход через схему ИЛИ. Внутри процессора имеется флаг if. Если этот флаг установлен в единицу, МП воспринимает запросы на входе INTR, если установлен в ноль – игнорирует. Вход INTR называют статическим. Процессор опрашивает сигнал на этом входе на границах команд. Cигнал на этом входе должен иметь достаточную длительность, иначе процессор может его «не заметить».

Рис. 2.1

INTA (interrupt acknowledge – прерывание подтверж-даю) – выход подтверждения прерывания. Если МП воспринял запрос на входе INTR, то он вырабатывает два сигнала на выходе INTA, подтверждая тем самым прерывание. Эти сигналы предназначены для контроллера прерываний К1810ВН59 (i8259).

NMI (non-maskable interrupt ‑ немаскируемое прерыва-ние) – немаскируемый вход запросов на прерывание. МП всегда воспринимает запросы, поступающие на этот вход, независимо от состояния флага if. Сигналы подтверждения прерывания при этом не вырабатываются. Этот вход называют динамическим. Внутри процессора есть триггер, срабатывающий по переднему фронту сигнала на входе NMI. На границах команд процессор опрашивает состояние этого триггера. Таким образом, требования к длительности сигнала на входе NMI существенно ниже чем к длительности сигнала на входе INTR.

RESET – сброс микропроцессора. Сигнал на этот вход подается при включении питания или при нажатии кнопки RESET. Этот сигнал формируется генератором ГФ84. По этому сигналу происходит сброс в ноль всех флагов (т.е. внешние прерывания запрещаются), в регистры ip, es, ds и ss загружаются нули, а в регистр cs – единицы. Так как МП всегда формирует адрес следующей команды по формуле A = (cs)×16+(ip), то нетрудно видеть, что после сброса МП всегда стартует с адреса A = ffff0h+0000h = ffff0h.

READY – вход готовности. При обращении к памяти или порту внешнего устройства МП всегда выполняет так называемый цикл шины. Этот цикл состоит из четырех тактов (Т1, Т2, Т3 и Т4). Вначале такта Т4 происходит обмен информацией между МП и ОП или ВУ. Однако если в системе стоит медленная память, она может к этому моменту оказаться не готовой к обмену. В этом случае внешние схемы должны сформировать нулевой сигнал на входе READY, означающий, что устройство к обмену не готово. В такте Т3 МП проверяет вход READY и, если на нем единица, переходит к такту Т4. В противном случае МП вводит между тактами Т3 и Т4 такты ожидания. В каждом такте ожидания МП опрашивает вход READY и так до тех пор, пока на READY не появится единица.

TEST – МП проверяет сигнал на входе TEST, только когда он выполняет команду wait. Если при этом на входе TEST стоит ноль, МП переходит к следующей команде. В противном случае МП вводит «холостые» такты и через каждые пять тактов снова опрашивает вход TEST. Обычно этот вход используется при стандартном подключении арифметического сопроцессора К1810ВМ87 (i8087).

MN/MX (minimum/maximum) – если на этот вход «запаяна» единица, МП работает в минимальном режиме, если ноль – в максимальном.

HOLD захват. В минимальном режиме это вход. Если на этот вход приходит единица, то МП прекращает выполнение текущей команды и отключается от шин. После этого МП находится в состоянии «спячки» до тех пор, пока на HOLD не появится ноль. Сигнал на вход HOLD формирует контроллер прямого доступа к памяти.

HLDA (hold acknowledge) – подтверждение захвата. В минимальном режиме это выход. Этот сигнал обычно заводится на контроллер прямого доступа к памяти и сообщает последнему, что он может брать управление системной шиной на себя.

A/D 15-0 (address/data) – 16-разрядная мультиплексная шина адрес/данные. По этим линиям передается как адрес, так и данные, но в разные моменты времени. На эти линии МП выставляет 16 младших разрядов адреса при обращении к ОП и весь адрес при обращении к порту ВУ. Адрес на эти линии выставляется в такте Т1 в сопровождении стробирующего сигнала на выходе ALE. В такте Т2 адрес снимается, и далее по этим линиям происходит передача данных в сопровождении сигнала на выходе DEN. Поскольку адрес необходим нам до конца цикла шины (до такта Т4), его приходится запоминать во внешнем регистре. Кроме того, для правильной работы системы шину адрес/данные демультиплексируют, т.е. разделяют на шину адреса (ША) и шину данных (ШД), как показано на рис. 2.2. Здесь ШФ – шинные формирователи.

Рис. 2.2

А16 – А19 – при обращении к ОП на эти линии МП выставляет старшие четыре разряда адреса. В такте Т2 адрес с этих линий снимается (т.е. его также надо запоминать во внешнем регистре), и на эти линии МП выставляет сигналы состояния S3 – S6 (state). Последние обычно используются только при отладке системы.

BHE (bus high enable) – разрешение старшей половины шины данных. МП может производить обмен по ШД как словами (2 байта), так и отдельными байтами. В последнем случае байт может передаваться по старшей или по младшей половине ШД. Для решения этой проблемы и предназначен сигнал BHE. Если на BHE стоит ноль, то в данном цикле шины по старшей половине ШД будут передаваться данные. Совместно с сигналом на линии А0 сигнал BHE задает формат передачи информации по шине данных (табл. 2.1). В такте Т2 сигнал BHE снимается и, следовательно, его надо запоминать во внешнем регистре. Далее на эту линию выставляется зарезервированный фирмой сигнал состояния S7.

Таблица 2.1

BHE

A0

Формат передачи

0

0

Слово (по D15-0)

0

1

Байт по старшей половине ШД (D15-8)

1

0

Байт по младшей половине ШД (D7-0)

1

1

Нет передачи по ШД

RD (read) – чтение. Сигнал вырабатывается, когда МП выполняет операцию считывания информации из ОП или порта ВУ.

WR (write) – запись. Сигнал вырабатывается, когда МП выполняет операцию записи информации в ОП или порт ВУ.

M/IO (memory/input-output) – память/ВУ. Если МП обра-щается к ОП, на этот выход выставляется единица, если к ВУ – ноль. Данный сигнал позволяет разделить адресное пространство портов и адресное пространство памяти.

Сигналы RD, WR и M/IO подаются на внешние логические схемы, которые формируют системные управляющие сигналы MR («читаю память»), MW («пишу в память»), IOR («читаю порт») и IOW (« пишу в порт»).

DT/R (data transmit/receive – отправка/получение инфор-мации) – сигнал, дублирующий пару сигналов RD и WR. Если на выходе DT/R стоит единица, МП выдает информацию, если ноль – принимает. Сигнал используется для управления шинными формирователями, стоящими на ШД, задавая направление передачи информации, он более удобен для этой цели чем RD и WR, поскольку имеет большую длительность.

DEN (data enable – информация доступна) – сигнал, стробирующий передачу информации по ШД.

ALE (address latch enable – разрешено защелкнуть адрес) – сигнал, стробирующий выдачу адреса.



*****
© Банк лекций Siblec.ru
Формальные, технические, естественные, общественные, гуманитарные, и другие науки.