Главная страница Комод Кухня Компьютерный стол Плетеная мебель Японский стиль Литература
Главная  Кремниевые микросхемы 

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 [ 42 ] 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60

Какие устройства микропроцессора участвуют в управлении и пересылке данных?

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

Регистр команд

Входы кода


ВмЗы Цу Зв 0.sQi Чз % Од Управление очисткой

, , , , , I м .ВходыUyQssll-Wla

I И I I I I I 2 ! г I г I I

К следуюш,ии Элементам деихисрратора номанд

Рис. 9.1. Фрагмент схемы дешифратора команд для формирования управляющих сигналов ADD и CLEAR

мает 16 двоичных разрядов, то этот регистр 16-разрядный, либо используются два 8-разрядных регистра. Регистр - указатель адреса памяти - может использоваться также для изменения или формирования другого адреса во время выполнения команды.

Другой регистр, часто называемый буферным, используется для хранения слова, которое должно быть пере-



писано в память или которое только что считано из ячейки памяти.

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

Например, если код операции для команды ADD (СЛОЖИТЬ) есть 6D (т. е. ОИОИОЬ), а для команды CLEAR (ОЧИСТИТЬ) - 18 (т. е. OOOIIOOO2), то с помощью логической схемы па рис. 9.1 сформируются управляющие сигналы ADD и CLEAR тогда и только тогда, когда в регистр команд поступят соответствующие коды этих операций Q7QsQ5Q4Q3Q2QiQo-

При коде операции ОНО ПОЬ на каждый вход схемы И (элемента а) поступит положительный потенциал Ur, и, следовательно, точно такой же сигнал появится на выходе элемента а. При любом другом коде операции по крайней мере на одном из входов элемента а появится нулевой сигнал, поэтому управляющий сигнал ADD на выходе элемента а сформирован не будет (на выходе элемента а будет нулевой сигнал). Аналогичные рассуждения справедливы и для элемента Ь, на выходе которого появится сигнал U+ только при поступлении кода операции 0001 IOOO2.

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

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



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

Например, слово 6DCB00 могло бы представлять выражение СЛОЖИТЬ содержимое ячейки ООСВ с содержимым аккумулятора . Значения первых двух шестнад-цатеричных разрядов (6D) являются операционным кодом, команды, а следующие четыре (СВОО) - адресом в памяти. Когда этот адрес считывается, его содержимое представляет собой данные, подлежащие обработке.

Микропроцессор обычно содержит еще 1-разрядный регистр, называемый внутренним флагом. Его содержимое используется для указания, должен ли микропроцессор произвести выборку части команды из памяти или просто выполнить команду. Этот флаг иногда называется регистром выборки/исполнения команды. Если флаг выставлен (в регистре записана 1), то микропроцессор воспринимает считываемое из памяти слово как часть команды. Если флаг не выставлен (в регистре хранится 0), то слово воспринимается им как данные, подлежащие обработке. Этот флаг пользователю не доступен, поэтому рассматривать его не будем.

Существует, кроме того, еще один регистр, называемый программным счетчиком или счетчиком команд (PC - Program Counter), который содержит адрес очередной команды, подлежащей выборке. Адреса представляют собой 16-разрядные слова. Поэтому в качестве счетчика команд в микропроцессоре часто используются два 8-разрядных регистра. Один из них, называемый НИЖНИМ (LOW), предназначен для хранения восьми самых младших разрядов адреса. Он обозначается как PCL (Program Counter Low). Другой - ВЕРХНИМ (HIGH). Он предназначен для хранения восьми самых старших разрядов адреса и обозначается РСН (Program Counter High). Когда команда выполняется, программа продвигается на серию шагов во время обработки данных. Каждый такой шаг увеличивает число, хранящееся в счетчике команд, до тех пор, пока оно не укажет ячей ку памяти, в которой хранится очередная команда, подлежащая выборке.

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



1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 [ 42 ] 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60

© 2007 EPM-IBF.RU
Копирование материалов разрешено в случае наличия письменного разрешения