Сделай Сам Свою Работу на 5

Микропроцессорное устройство управления

Устройство управления состоит из:

· Регистр команд – предназначен для приема и хранения команды перед выполнением.

· Очередь команд – предназначен для увеличения производительности за счёт считывания новой команды из памяти, до окончания выполнения текущей команды.

· Счетчик команд – регистр, хранящий относительный адрес следующей команды в памяти. Регистр увеличивает своё значение при считывании следующей команды из памяти на величину равную длине считанной команды в байтах.

· Микропрограммное устройство управления - содержит набор команд процессора, то есть для каждой поддерживаемой команды в нем содержится микропрограмма, состоящая из сигналов управления блоками процессора.

Принцип работы.

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

 

Сигналы магистрали процессора

Процессор Intel 486 имеет 168 контактов, среди которых 32 разрядная шина данных, 32 разрядная шина адреса и 104 разрядная шина управления.

Шина данных D31D0 – это двунаправленная шина, контроля четности, с 3 состоянием. По шине возможен обмен данными 32,16,8 разрядов.

Линия DP- для каждых 8 линей данных есть 1 дополнительная линия четности. С таким значением, чтобы количество единиц на полученных 9 линиях было четное.

PCHK# в случаи ошибки четности генерируются сигналом.

Для определения разрядности данных служат сигналы BS16# и BS8#.

BS16# BS8# Разрядность

 

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



А31-А0- это Двунаправленная шина с третьим состоянием определяет диапазон и количество адресов.

Минимальный адрес 00000000h16

Максимальный адрес FFFFFFFFh16

Количество адресов высчитывается по формуле a=232=4Гб

Так же на шину адреса процессор адресуется пространство ввода-вывода. Порты ввода-вывода предназначены для связи с различным видом устройств. Количество портов составляет 64Кб, то есть 216. Для портов адресов ввода-вывода BE3#, BE0# сигналы используются для указания линий шины адреса, используемых для передачи адреса BE0#A7-A0, BE1#A15-A8, BE2#A23-A16, BE3#A31-A24.

ABS# сигнал подтверждения установки адреса. # обозначает, что активный уровень сигнала 0. Сигнал используется для обозначения начала нового цикла магистрали после установки адреса. В следующем так же возвращается в исходное состояние до начала нового цикла. Сигналы передаваемые по системной шине считаются действительными по фронту синхронизирующей последовательности, вырабатываемой специальным тактовым генератором, и поступающим на вход синхронизаций CLOCK (CLK).

Эта синхронизирующая частота называется частотой системной шины (FSB). Один период синхронизирующей частоты является элементарным интервалом при реализации протоколов обмена и называется тактом магистрали. Полная передача данных выполняется в течении двух или более тактов и называется циклом магистрали. Для определения типа цикла магистрали используются выходные сигналы процессора W/R#, D/C#, M/IO#.

W/R# режим чтения / записи (0-читает, 1- пишет)

D/C# режим передачи данных / команд (0-команд, 1-данных )

M/IO# обращение к оперативной памяти / к портам ввода-вывода (1-ОЗУ, 0-ввода-вывода)

 

Типы циклов магистрали

M/IO# D/C# W/R# Типы циклов магистрали
Подтверждение прерывания
MALT- цикл остановки (специальный цикл ожидания)
Чтение данных из порта ввода-вывода
Запись данных в порт ввода-вывода
Чтение команды из памяти (выборка команды)
Комбинация зарезервированная
Чтение данных из памяти
Запись данных из памяти

 

Командный цикл- это набор циклов магистрали, которые нужно выполнять при выполнении команды.

Любая команда начинается с цикла выборки команды и выполняется в течении одного или нескольких циклов магистрали.

READY# выходной сигнал процессора.

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

МП  
   
M/IO#
D/C#
W/R#
READY
  Шина данных  
Медленное устройство  
     

 

Циклы захвата магистрали

Инициализировать передачу данных на магистрали могут несколько устройств (активные устройства). Для разделения доступа к магистрали существует механизм ее захвата. Основным активным устройством с максимальным приоритетом на доступ к магистрали является процессор.

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

HLDA – его устанавливает процессор в знак подтверждения отключения от шины.

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

LOCK#- Это выходной сигнал процессора, сообщающий устройствам о блокировании шины процессором.

PLOCK#-входной сигнал процессора, в котором устройство сообщает процессору о блокировании магистрали. При блокировании шины внешним устройством, цикл называют псевдо- блокированным.



©2015- 2018 stydopedia.ru Все материалы защищены законодательством РФ.