Здавалка
Главная | Обратная связь

Управление процессором



Что делать с управляющими сигналами?Воспользовавшись блок-схемой процессора можно нарисовать точную и подробную электрическую схему, на которой будет показано, как необходимо соединить входные и выходные сигналы данных всех узлов процессора. Однако эти узлы имеют не только сигналы данных, но и управляющие сигналы, о которых блок-схема не дает никакого представления, и прежде чем рисовать такую схему, нужно понять, что делать с этими управляющими сигналами. Разбираться в этом вопросе следует начать с одного довольно простого дела. Нужно аккуратно выписать в таблицу список изображенных на блок-схеме узлов, а для каждого узла определить список сигналов, необходимых для управления этим узлом. Тогда получится примерно следующая таблица:

Узел Список сигналов Примечание
АЛУ Выбор операции 0 См. таблицу функций АЛУ
Выбор операции 1
Выбор операции 2
Выбор операции 3
Выбор операции 4
Сдвигатель Выбор сдвига 0   00 – без сдвига 01 – сдвиг на бит влево 10 – сдвиг на бит вправо
Выбор сдвига 1
Регистровый файл А Запись в файл А = запись в файл
Регистровый файл В Запись в файл В = запись в файл
Селектор А Выбор входа А 0 00 – регистровый файл 01 – выход сдвигателя 10 – счетчик команд 11 – регистр данных шины
Выбор входа А 1
Селектор В Выбор входа В 0 0 – регистровый файл 1 – выход сдвигателя
Буферный регистр А Запись в регистр А  
Буферный регистр В Запись в регистр В  
Счетчик команд Запись в счетчик команд  
Увеличение счетчика команд = (чтение команды) и (ответ шины)
Сброс счетчика команд = общий сброс
Регистр адреса шины Запись адреса шины  
Селектор адреса шины Выбор источника адреса = чтение команды
Разрешение выдачи адреса на шину = (чтение данных по шине) или (чтение команды по шине) или (запись по шине)
Регистр входных данных шины Запись в регистр входных данных шины = ответ шины
Регистр выходных данных шины Запись в регистр выходных данных шины  
Разрешение выдачи данных на шину = запись по шине
Регистр команд Запись в регистр команд = (чтение команды) и (ответ шины)
Сброс регистра команд = общий сброс
Регистр состояний Запись в регистр состояний  
Сброс регистра состояний  
Шина Запись по шине  
Чтение команды по шине  
Чтение данных по шине  
Запрос шины  
Селектор адреса A Выбор входа = фаза выполнения команды
Селектор адреса B Выбор входа = фаза выполнения команды

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

Передача данных по шине.Для гипотетического процессора целесообразно использовать шину с максимально простыми правилами передачи данных. Для примера, можно предположить, что шина состоит из 32 разрядной шины адреса (два младших разряда всегда равны нулю) и 32 разрядной шины данных. Передача по шине осуществляется 32-разрядными словами. Если необходимо считать данные с какого-то устройства на шине, например из оперативной памяти, процессор должен сначала выдать на шину адреса адрес слова, которое он хочет прочитать, установить сигнал типа операции в состояние «чтение», и затем установить сигнал запроса шины. Через некоторое время после этого он должен получить сигнал ответа шины, который означает, что на шине данных присутствует необходимая информация. Получив сигнал ответа шины, процессор записывает данные в регистр входных данных шины, и только после этого убирает с шины адрес и сигнал запроса. При записи процессор должен выдать данные на шину одновременно с адресом, а сигнал ответа шины означает, что данные приняты устройством и их можно убрать с шины. Использование таких управляющих сигналов и правил их формирования гарантирует, что данные по шине будут передаваться без искажений.

 







©2015 arhivinfo.ru Все права принадлежат авторам размещенных материалов.