Файл: Вводый курс цифровой электроники (К.Фрике, 2003).pdf

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 15.06.2025

Просмотров: 4582

Скачиваний: 2

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

356 Глава 15, Принципы построения микропроцессоров

того, чтобы эффективно проводить преобразование Фурье (FFT, fast Faurier transformation).

и—N

шина

данных

И—N

операционный

блок

АЛУ

регистры

адресная

шина

ЗУ

ввод/вывод

Рис . 15.2. Принципиальная структура компьютера фон-Неймана. Управляюпцая шина, соединяющая все блоки между собой, не показана.

Типичная структура универсального регистерно-арифметичес- кого устройства представлена на рис. 15.3. Оно состоит из двух ре­ гистров А и В. Регистр А часто обозначают как «накапливающий регистр» (accumulator). Он принимает результат операции.

С помощью представленного устройства могут проводится логи­ ческие операции сложения и вычитания. Для умножения и деления может быть применен сдвиговый регистр со сдвигом вправо и влево. Во флаг-регистре содержится информация о результатах операций. Так определенный бит во флаг-регистре является индикацией того, что результат равен О, другой бит показывает, состоялся ли перенос (carry). Содержание флаг-регистра может быть р^ля осуществления разветвления программы.

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


15.3. Операционные

блоки 357

шина данных

IID

CLK

ID

>2С\

G2

регистр А

P^^G2

регистр В

I

управляющая

i

шина состоянии

шина

АЛУ

флаг-

регистр

сдвиговый регистр

Рис. 15.3. Типичное ориентированное по шинам регистерно-арифметичес- кое устройство.

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

15.3.2. Система шин

Работа операционных блоков основывается на применении систем шин. В качестве альтернативного варианта применяются мульти­ плексоры, которые управляют потоком сигналов.

Технологическими предпосылками применения шин являются:

применение выходов типа tri-state

Высокий коэффициент разветвления драйверов шин, малая на­ грузка, соответствующая входам вентилей.

Управление шинами происходит в соответствии тактовыми сигналами.

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


Глава 15. Принципы построения микропроцессоров

подключен только один выход. Большинство блоков драйве­ ров шин рассчитывается так, чтобы столкновения не имели места. Пусть с помоп];ью имеюш;их одинаковую длину симво­ лов Enable («разрешаюп];ий») и disable («запреп1;ающий») осуш;е- ствляется управление двумя выходами, работаюш;ими на одну ширину. В этом случае результируюш;ее время, в течение ко­ торого один из выходов остается низкоомным, должно полно­ стью лежать внутри интервала времени, в течение которого другой выход является высокоомным.

В системах шин все схемные блоки имеют, как правило, оди­ наковую ширину слов.

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

15.4. Управляющие блоки

Различают управляющие блоки с фиксированной структурой и управляюп];ие блоки с микропрограммным управлением. Первые имеют большее быстродействие. Их предпочитают вводить, когда требу­ ется реализация малого числа команд. Это справедливо ^\ля компью­ теров типа RISC (reduced instruction set computers, «компьютеры с уменьшенным набором команд»).

Управляюш;ие блоки с микпропрограммным управлением явля­ ются очень гибкими, их можно легко приспособить для различных случаев применения. С другой стороны они являются более медлен­ ными, поскольку требуют времени J\ля вывода команды из ЗУ.

Объясним функцию типичного управляющего блока с помопдью рис. 15.4. Для каждой команды машинной программы в ROM стар­ товых адресов содержится стартовый адрес, по которому в ROM микропрограмм можно найти первую микропрограммную команду из последовательности команд, соответствуюш;их указанной коман­ де, заданной в машинном коде. Часть машинной команды, которая определяет выбор регистра операционного блока, прямо передается в операционный блок. В рассматриваемом случае могут быть обра­ ботаны 256 машинных команд.

Между ROM стартовых адресов и ROM микропрограмм включен мультиплексор, который позволяет получить три разных адреса р,ля следуюш;ей микрокоманды:


15.4' Управляющие блоки

первая микропрограммная команда задается с помощью ROM стартовых адресов;

с помощью инкрементной переключательной схемы адрес мо­ жет быть повышен на 1;

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

регистр команд (машинный код)

I

код

код

микрокоманды

регистра

mmmmJf

%,т

инкрсментная]

ЗУ стартовых

схема

адресов

Пй'

256x1 OBit

ЗУ

микропрограмм

lKx32Bit

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

MUX 8:1

(флаги) АЛУ

управляющая шина АЛУ

регистр

Р и с . 15 . 4 . Типичный управляющий блок.

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