Тема 2 Архитектура микропроцессоров



Лекция 13 Структура микропроцессорной системы

Цели лекции:

Изучение принципов построения микропроцессорных систем и взаимодействия устройств в составе микропроцессорной системы.

 

Структура микропроцессорной системы

МПС - сложная система, включающая в себя большое количество различных устройств. Основой ее является микропроцессор. Связь устройств ЭВМ между собой осуществляется с помощью сопряжений, которые в вычислительной технике называются интерфейсами.

Интерфейс - это совокупность программных и аппаратных средств, предназначенных для передачи информации между компонентами ЭВМ и включающих в себя электронные схемы, линии, шины и сигналы адресов, данных и управления, алгоритмы передачи сигналов и правила интерпретации сигналов устройствами.

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

Подробное изучение интерфейсов и системных шин не входит в задачи данного курса. Поэтому эти вопросы мы будем рассматривать лишь с точки зрения общего представления об организации работы микропроцессорной системы и принципах взаимодействия составляющих ее устройств.

Основным способом организации МПС является магистрально-модульный (рис. 8.1): все устройства, включая и микропроцессор, представляются в виде модулей, которые соединяются между собой общей магистралью. Обмен информацией по магистрали удовлетворяет требованиям некоторого общего интерфейса, установленного для магистрали данного типа. Каждый модуль подключается к магистрали посредством специальных интерфейсных схем.

 

 

Рисунок 13.1 – Магистрально-модульный принцип построения МП системы

 

На интерфейсные схемы модулей возлагаются следующие задачи:

- обеспечение функциональной и электрической совместимости сигналов и протоколов обмена модулей и системной магистрали;

- преобразование внутреннего формата данных модуля в формат данных системной магистрали и обратно;

- обеспечение восприятия единых команд обмена информацией и преобразование их в последовательность внутренних управляющих сигналов.

Эти интерфейсные схемы могут быть достаточно сложными. Обычно они выполняются в виде специализированных микропроцессорных БИС. Такие схемы принято называть контроллерами.

Контроллеры обладают высокой степенью автономности, что позволяет обеспечить параллельную во времени работу периферийных устройств и выполнение программы обработки данных микропроцессором.

Кроме того, предварительно буферируя данные, контроллеры обеспечивают пересылку сразу для многих слов, расположенных по подряд идущим адресам, что позволяет использование так называемого "взрывного"

(burst) режима работы шины - 1 цикл адреса и следующие за ним многочисленные циклы данных.

Недостатком магистрально-модульного способа организации ЭВМ является невозможность одновременного взаимодействия более двух модулей, что ставит ограничение на производительность компьютера.

Взаимодействие микропроцессора с оперативной памятью (ОП) и внешними устройствами (ВУ) проиллюстрировано на рисунке 13.2.

 

 

Рисунок 13.2 - Взаимодействие микропроцессора с оперативной памятью и внешними устройствами

Микропроцессор формирует адрес внешнего устройства или ячейки оперативной памяти и вырабатывает управляющие сигналы - либо IOR/IOW при обращении на чтение/запись из внешнего устройства, либо MR/MW для чтения/записи из оперативной памяти.

Для обмена информацией с внешними устройствами в МП имеются только 2 команды:

- команда ввода IN AX, DX записывает в регистр AX число из внешнего устройства, адрес которого находится в регистре DX ; при этом вырабатывается сигнал IOR ( INput/OUTput Read ).);

- команда вывода OUT DX, AX выводит информацию из регистра AX во внешнее устройство, адрес которого находится в регистре DX ; при этом вырабатывается сигнал IOW ( INput/OUTput Write ).

Сигналы IOR/IOW формируются при выполнении только этих команд.

Формирование сигналов MR/MW происходит в командах, для которых операнд и/или приемник результата располагаются в оперативной памяти, например, ADD [EBX], AX.

В связи с этим возможны два основных способа организации адресного пространства микропроцессорной системы:

1) с общим адресным пространством внешних устройств и оперативной памяти;

2) с независимыми адресными пространствами.

В первом случае к портам ввода/вывода можно обращаться как к ячейкам оперативной памяти. Достоинством такого подхода является возможность использовать различные режимы адресации при обращении к внешним устройствам, а также выполнять над содержимым портов ввода/вывода различные арифметико-логические операции. Но в то же время при этом сокращается емкость адресуемой ОП и снижается защищенность системы, так как она лишается дополнительных средств защиты, связанных с выполнением команд ввода/вывода (не работает поле IOPL регистра флагов). К тому же нарушение в логике работы программы (формирование неверного адреса оперативной памяти) может привести к ложному срабатыванию внешнего устройства.

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

Особенности обмена информацией микропроцессора с внешними устройствами. Упрощенная временная диаграмма этого процесса представлена на рисунке 13.3.

 

Рисунок 13.3 - Временная диаграмма обмена информацией между микропроцессором и внешним устройством

 

При таком обмене микропроцессор использует стандартный цикл шины длительностью два периода тактового генератора, начало которого определяется сигналом A DS шины.

Однако если в обмене задействованы относительно медленное внешнее устройство или оперативная память, которые не успевают завершить обмен в текущем цикле работы микропроцессора, то они сбрасывают сигнал READY, который проверяется микропроцессором в конце второго тактового сигнала цикла. При READY = 0 МП вставляет дополнительные такты ожидания в цикл шины, чтобы дать возможность внешнему устройству завершить операцию ввода/вывода. Однако сигнал неготовности внешнего устройства не может длиться более установленного времени (для шины ISA - 2,5 мкс), в противном случае генерируется прерывание по ошибке ввода/вывода. Это предотвращает зависание системы в случае, например, механического повреждения данного контакта.

В общем случае стандартный цикл шины при обмене уже включает несколько дополнительных тактов ожидания. При этом циклы обращения к памяти короче циклов обращения к портам ввода/вывода.

Минимальная длительность цикла определяется чипсетом и может программироваться опциями BIOS Setup заданием тактов ожидания. Если ОП или внешнее устройство не нуждаются в дополнительных тактах, то их контроллеры выставляют на шину сигнал OWS, по которому дополнительные такты не вставляются.


Прямой доступ к памяти

В МПС используются два основных способа организации передачи данных между памятью и периферийными устройствами: программно управляемая передача и прямой доступ к памяти ПДП ( Direct Memory Access - DMA ).

Программно управляемая передача данных осуществляется при непосредственном участии и под управлением процессора. Например, при пересылке блока данных из внешнего устройства в оперативную память процессор должен выполнить следующую последовательность шагов:

1) сформировать начальный адрес области обмена ОП;

2) занести длину передаваемого массива данных в один из своих внутренних регистров, который будет играть роль счетчика;

3) выдать команду чтения информации из ВУ; при этом на шину адреса из МП выдается адрес ВУ, на шину управления - сигнал чтения данных из ВУ, а считанные данные заносятся во внутренний регистр МП;

4) выдать команду записи информации в ОП; при этом на шину адреса из МП выдается адрес ячейки оперативной памяти, на шину управления - сигнал записи данных в ОП, а на шину данных выставляются данные из регистра МП, в который они были помещены при чтении из ВУ;

5) модифицировать регистр, содержащий адрес оперативной памяти;

6) уменьшить счетчик длины массива на длину переданных данных;

7) если переданы не все данные, то повторить шаги 3-6, в противном случае закончить обмен.

Программно управляемый обмен ведет к нерациональному использованию мощности микропроцессора, который вынужден выполнять большое количество относительно простых операций, приостанавливая работу над основной программой. При этом действия, связанные с обращением к оперативной памяти и к внешнему устройству, обычно требуют удлиненного цикла работы микропроцессора, что приводит к еще более существенным потерям производительности.

Альтернативой программно управляемому обмену служит прямой доступ к памяти - способ быстродействующего подключения внешнего устройства, при котором оно обращается к оперативной памяти, не прерывая работы процессора. Такой обмен происходит под управлением отдельного устройства - контроллера прямого доступа к памяти (КПДП).

Схема включения КПДП в состав микропроцессорной системы представлена на рисунке 13.4

 


Рисунок 13.4 - Структура МПС с контроллером прямого доступа к памяти

 

Перед началом работы контроллер ПДП необходимо инициализировать: занести начальный адрес области ОП, с которой производится обмен, и длину передаваемого массива данных. В дальнейшем по сигналу запроса прямого доступа контроллер фактически выполняет все те действия, которые обеспечивал микропроцессор при программно управляемой передаче.

Последовательность действий КПДП при запросе на прямой доступ к памяти со стороны внешнего устройства следующая:

1) Принять запрос на ПДП (сигнал DRQ ) от ВУ.

2) Сформировать запрос к МП на захват шин (сигнал HRQ ).

3) Принять сигнал от МП ( HLDA ), подтверждающий факт перевода микропроцессором своих шин в третье состояние.

4) Сформировать сигнал, сообщающий устройству ввода-вывода о начале выполнения циклов прямого доступа к памяти ( DACK).

5) Сформировать на шине адреса компьютера адрес ячейки памяти, предназначенной для обмена.

6) Выработать сигналы, обеспечивающие управление обменом ( IOR, MW для передачи данных из ВУ в оперативную память и IOW, MR для передачи данных из оперативной памяти в ВУ).

7) Уменьшить значение в счетчике данных на длину переданных данных.

8) Проверить условие окончания сеанса прямого доступа (обнуление счетчика данных или снятие сигнала запроса на ПДП). Если условие окончания не выполнено, то изменить адрес в регистре текущего адреса на длину переданных данных и повторить шаги 5-8.

Прямой доступ к памяти позволяет осуществлять обмен данными между внешним устройством и оперативной памятью параллельно с выполнением процессором программы.

Структура КПДП представлена на рисунке 13.5.


Рисунок 13.5 - Структура контроллера прямого доступа к памяти

Контроллер состоит из четырех идентичных каналов, позволяющих подключить к системе до четырех устройств, работающих в режиме ПДП.

В состав каждого канала входят следующие регистры:

а) MR ( Mode Register ) - регистр режима. Определяет следующие параметры передачи:

1) порядок изменения (увеличения или уменьшения) адреса ОП при передаче;

2) возможность автоинициализации;

3) режим обслуживания:

4) одиночная передача (контроллер возвращает магистраль процессору после каждого цикла ПДП);

5) блочная передача (контроллер владеет магистралью в течение передачи всего массива);

6) по требованию (окончание передачи определяется снятием сигнала DRQ или подачей сигнала IEOP на внешний вход КПДП);

7) каскадирование;

б) CAR ( Current Address Register ) - регистр текущего адреса;

в) BAR ( Base Address Register ) - базовый регистр адреса;

г) CWR ( Current Word Register ) - текущий счетчик данных;

д) WCR ( W0ord ConTRol Register ) - базовый счетчик данных.

Значения в регистрах BAR и WCR устанавливаются при инициализации и в ходе циклов ПДП не меняются. В регистры CAR и CWR в начале выполнения ПДП заносятся значения из регистров BAR и WCR соответственно. При выполнении ПДП эти регистры изменяются.

Управляющие регистры, общие для всего контроллера:

а) CR ( Command Register ) - регистр команд - определяет:

1) режим память-память или обычный. В режиме память-память осуществляется обмен по схеме ПДП между двумя областями ОП (только для каналов 0 и 1) с использованием буферного регистра TR ( Temporary Register );

2) запрет/разрешение ПДП;

3) порядок изменения приоритетов каналов:

4) фиксированный приоритет;

5) циклическое изменение приоритета после обработки запроса на ПДП по одному из каналов;

6) явное указание наиболее приоритетного канала;

7) уровень сигналов DRQ и DACK (настройка на активный уровень сигналов под особенности работы внешних устройств);

б) SR ( Status Register ) - регистр условий: используется для фиксации признаков обмена по каждому из каналов и программных запросов на ПДП.

Во избежание ложных срабатываний внешних устройств, не использующих в данный момент режим прямого доступа, контроллерПДП во время режима ПДП вырабатывает сигнал AEN, который блокирует работу остальных внешних устройств:

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

При этом ведомый КПДП подключается к одному из каналов ведущего контроллера по схеме подключения внешнего устройства, а непосредственно с микропроцессором связывается только ведущий контроллер. В стандартной конфигурации персональной ЭВМ применяются два КПДП (ведущий и ведомый), которые позволяют подключить до семи внешних устройств, причем два канала закреплены за накопителями на жестком и гибком дисках.

 


Рисунок 13.6 - Каскадное включение контроллеров прямого доступа к памяти

 

В максимальной конфигурации при использовании ведущего и четыре ведомых КПДП, подключенных к каждому из каналов ведущего, к МП можно подключить до 16 внешних устройств, работающих в режиме ПДП.


Дата добавления: 2019-09-13; просмотров: 291; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!