Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

книги из ГПНТБ / Корнейчук В.И. Арифметические устройства ЭЦВМ учеб. пособие

.pdf
Скачиваний:
5
Добавлен:
23.10.2023
Размер:
4.91 Mб
Скачать

. Л Р й а д м ш ч г а д а У С Т Р О Й С Т В А

чебное п о с о б и е )

В.К. Корнейчук

' Vt

ч. ^

V 't

-а-

МВ И ССО УССР Киевский ордена Ленина политехнический институт

им.50-летия Великой Октябрьской социалистической революции

Кафедра вычислительной техники

В.И.КОППИЙЧУК

АРИФМЕТИЧЕСКИЕ УСТРОЙСТВА ЭЦВМ

/Учебное пособие/

Киев - 1973

І І П і д и U 1 ü b И IS

Настоящее учебное пособие является четвертой частый'кон­ спекта лекций по теории и проектированию ЦВМ, читавшихся авто­ ром в течение ряда лет для студентов факультета автоматики и елѳктроприборостроѳния . Наряду с классическим материалом, изло­ женным. в учебниках, читатель найдет здесь ряд новых идей и іірин ципов,освещенных в монографиях и журнальных статьях. Нея исполь зованная при этом литература приводится в заглавиях параграфов и может быть рекомендована для более подробного изучения соот­ ветствующих вопросов.

Хотя идея решения задач при изучении теории ЦВМ и не на­ шла распространения в отечественной учебной литературе по ЦВМ, автор считает, что решение задач является важным моментом при

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

В подготовке рукописи к печати участвовали сотрудники кафедры ВТ ДЕМЕНТЬЕВА В .Г ., МАСЬКО Л ., и студенты ВИКТОРОВ 0. и КИРИЧЕНКО А. за что автор им весьма признателен. Автор бла­ годарен также кандидату технических наук ТАРАОЕНКО и.II. за

редактирование

рукописи.

 

Гос. публичная

 

маѵчно-техничэакая

 

библио.ока СОС^

 

Э КЗЕМ П Л Я Р

/ У . Ж /

ЧИТАЛЬНОГО ЗАЛА |

1.

Введение.......................................................

 

 

 

 

 

 

5

I Л .

Назначение,классификация и основные

 

 

 

 

характеристики арифметических устройств

............

5

1 .2 . Способы управления работой арифметических

 

 

устройств..........................................................................

 

 

 

 

 

 

б

2.

Суммирующие блоки..........................................................

 

 

 

 

 

8

2 Л .

Блоки для сложения и вычитания чисел в прямых

 

 

кодах..................................................................................

 

 

 

 

 

 

8

2 .2 . Глоки для

сложения и вычитания чисел в

допол­

 

нительных кодах...........................................

 

 

 

•.................

 

12

2 .3 . Блоки для

сложения и вычитания чисел с

плаваю­

 

щей запятой......................................................................

 

 

 

 

 

13

2 .4 . Оценка времени выполнения операции

сложения

 

 

чисел с плавающей запятой.........................................

 

 

 

18

2 .5 .

Суммирующие блоки последовательного

действия.

. . 20

3.

Глоки для умножения чисел.........................................

 

 

 

2 2

3 .1 . Основные методы реализации

умножения чисел в

 

 

^прямых кодах...................................................................

 

 

 

 

 

2 2

3 .2 .

Способы повышения быстродействия блоков

 

 

 

умножения.............................

 

 

............................

 

................

 

29

3 .3 . Логические

способы ускорения умножения

за

 

 

счет использования операций суммирования и вы-32

 

питания..............................................................................

 

 

 

 

 

 

 

3.4. Ускорение

умножения за счет использования до­

 

 

полнительных цепей

сдви га..........................

 

 

" ..........

3 5

3 .5 . Ускорение

умножения

за

счет

использования

 

 

сдвлгателей................

 

 

 

 

 

39

3 .6 . Ускорение

умножения

за

счет

использования

 

 

дополнительных сумматоров...........................................

 

 

 

41

3.7 . Умножение

чисел в дополнительных кодах

.............

47

3 .8 . Последовательные блоки умножения..........................

 

 

50

3.9 . Десятичные блоки умножения....................................

 

 

 

53

4.

Блоки для деления чисел.............................................

 

 

 

59

4.1.

Основные методы реализации деления чисел в

 

 

прямых кодах.............................................................

 

 

 

 

 

59

4 .2 . Логические

способы ускорения деления...................

 

65

<1,2.

Аппаратные способы ускорения деления..........................

71

1.4. Деление чисел в дополнительных кол с...........................

79

4.5.

Последонатольные блоки деления.......................................

80

4 .6 .

Десятичные блоки деления..................................................

82

о.Едоки для выполнения редких и вспомогательных

СЛ ГЯ

Л .

.2 .

операций....................................................................................

 

 

85

Блоки для

извлечения

корня..............................................

ѲЬ

Генераторы

случайных

чисел..............................................

90

5.-3. Блоки преобразования чисел из одной системы

 

 

счисления в другую................................................................

 

92

6

,

Основы проектирования

арифметических устройств....

99

6

Л .

Структуры арифметических устройств..............................

99

6 .2 . Расчет разрядной

сетки

арифметического

 

 

 

устройства................................................................................

 

 

104

6 .3 .

Выбор параметров

арифметических устройств,...............

107

- 4 -

1 . В В Е Д Е Н И Е 1 ,1 . НА311АЧЕ1ШЕЛСЛАССИФИКАЛИЯ И ОСНОВНЫЕ ХАРАКТЕРИСТИКИ

АРИФМЕТИЧЕСКИХ УСТРОЙСТВ

/Г -

І2 /~

Арифметические

устройства /АУ/

предназначены для вы­

полнения операций

над машинными словами/ т . ѳ . , числами,коман­

дами и кодами других объектов/,Набор операций,выполняе­ мых АУ, должен обладать функциональной полнотой для того, чтобы с их помощью можно было реализовать любой вычисли­ тельный алгоритм. Однако с целью повышения быстродействия и упрощения программирования указанный набор обычно обла­ дает значительной избыточностью,а число операций колеб­ лется от нескольких десятков /18 в машине "Киев"/ до нескольких сотен /около 600 в машине "Стретч"/. При всем разнообразии наборов операций в их составе всегда имеются основные арифметические операции / -J- — , х , ; / и наиболее важные логические операции,такие как сравне­ ние / т . е . определение того,какое из условий А>В, А=В или А<В выполняется/,поразрядная конъюнкция и др. Набор опе­ раций, выполняемых АУ,является важнейшей его характерис­

тикой» К временным характеристикам АУ относятся средние времена выполнения отдельных операций и среднее время выполнения операции в № т

где

 

^

^іРі>

 

-частота появления

£-ой операции, t ;

- среднее

 

 

время

выполнения

£ -ой операции.

 

Для определения

исследуют программы различных за­

дач. Такие исследования показали,что P^ SS 0,15,

Р^=0,І2,

Рд=0,І4, Pg, =0,02,

Ед=0,002,

Рв =0,І5,где Рф ,Р* ,РЛ,Р*,Ру ,

Рс -частота появления операций сложения умножения,логичес­ ких операций,извлечения корня,деления и сдвига. При зтом для различных задач Р^' имеют различные значения.

Любое АУ имеет в своем составе не менее двух регист­ ров, сумматор и блок местного управления /ЕМУ/,вырабатывав ющий необходимую последовательность управляющих сигналов. По способам обмена информацией между регистрами и суммато—

- 5 -

ром различают последовательные, параллельные и последова- тельно-параллелыше АУ. В универсальных ЦВМ используются, как правило, параллельные АУ, так как их применение позво­ ляет более, чем в П раз повысить быстродействие по срав­ нению с последовательными АУ при увеличении аппаратурных затрат менее, чем в 2 раза. Последовательные и последова­ тельно-параллельные АУ применяются в специализированны* ЦВМ в тех случаях, когда к быстродействию машин не предъяв­ ляется жестких требований.

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

В зависимости от принятой системы счисления различают деся­

тичные

и двоичные АУ.

Применяются также системы с основанием

2 І И

= 2 ,3 ,4 , ... / . В

машине "Сетунь" используется ^троичная

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

1.2. Способы управления работой АУ С 2 ,5 ,6 ,7 ,1 1 Ц

Выполнение какой-либо операции в АУ сводится к выпол­ нению последовательности элементарных операций /микроопера­ ций/ на регистрах, сумматоре и счетчиках. К таким микроопе­ рациям относятся: ВК - выдача прямого кода с ре істра; ВОК - выдачаобратного кода с регистра; Г - "гашение" или сброс в и регистра; Ш - прием прямого кода на регистр;

- 6 -

ПОК - прием обратного кода

на

регистр; ли? - сдвиг кода в

регистре ? на I разряд влево;

ПСР - сдвиг кода в регистре Р

на I разряд вправо; +ІСЛ -

прибавление /вычитание/ I к со­

держимому счетчика Л. Последовательность микроопераций, вы­ полнение которой приводит к выполнению операции, будем назы­ вать микроалгоритмом данной операции. Б зависимости от спо­ соба реализации микроалгоритмов различают АУ со схемным и АУ с микропрограммным способом управления операциями. В АУ со схемным управлением Ем/ состоят из отдельных схем, каждая из которых управляет одной операцией. При этом часть узлов может быть общей для всех схем. В Ы.1У из устройства управле­

ния /УУ/ ЦВМ поступают сигналы начала выполнения L-яой опе­ рации /НО / , а из БМУ в УУ поступают сигналы конца выполне­ ния операции /КО/, При микропрограммном, способе управления операциями каждой микрооперации ставят в соответствие неко­ торое слово, которое называют микрокомандой. Последователь­ ности микроопераций, т .е . микроалгоритму, соответствует по­ следовательность микрокоманд, которую называют микропрограм­ мой данной операции, микропрограммы операций хранятся в спе­ циальном ЗУ микропрограмм, код операции задает адрес первой микрокоманды данной микропрограммы. Управление операциями пу­ тем последовательного считывания из ЗУ и расшифровки микроко­ манд, входящих и микропрограмму данной операции, составляет идею микропрограммного способа управления операциями. Наряду со схемным и микропрограммным способами существует также смешанное управление операциями, при котором часть микроопе­ раций реализуется схемным, а другая - микропрограммным спо­ собом. Каждый из перечисленных способов имеет свои преимуще­ ства и недостатки. Причем в последнее время чаще применяется микропрограммный способ управления. Однако ниже при изучении схем для выполнения отдельных арифметических операций будет использоваться исключительно схемный способ построения ЕМУ на линиях задержки /ЛЗ/. Это объясняется тем, что, с одной стороны, схемные БМУ более прозрачны при изучении, а с другой стороны, нецелесообразно строить микропрограммный БМУ для уп­ равления одной операцией.

Выполнение любой операции в АУ начинается с подготови­ тельных микроопераций извлечения операндов из ЗУ и фиксации их в определенном порядке в регистрах АУ. Однако с целью уп­ рощения изложения, работа схем, выполняющих отдельные опера­ ции, будет рассматриваться,начиная с момента, когда”все под-^- готовительные микрооперации по извлечению и фиксации операн­ дов завершены.

- 7 -

2. СЛіМ.іРУІДШІГ, БЛОКИ 2 .1 . БЛОКИ ДЛЯ іЛйЗ-ЬііИЯ И ВЫЧИТАНИЯ ЧИСЕЛ В 11РЛ.МЫХ

КОДАХ /1,4,11-14,19-21/ .

В ЗУ числа могут храниться в прямом или дополнительном кодах. Из ЗУ извлекаются операнды /т .е . числа, участвующие в операции/ и пересылаются в регистры АУ в том виде, в котором оли хранились в ЗУ. Позгому, в зависимости от того, в каких ко­ дах хранятся числа, различают ^персщии в прямых и дополнитель­ ных кодах.

При построении суммирующих блоков /СВ/ для сложения и вычитания чисел в прямых кодах некоторые трудности возникают при реализации операции вычитания. Преодоление этих трудно­ стей осуществляется путем замены операции вычитания операцией сложения прямого кода одного операнда с дополнительным или обратным кодом второго операнда, при использовании дополни­ тельного кода /ДК/ результат операции также будет представлен ДК. Так как № положительного числа совпадает с прямим кодом этого же числа, то получение прямого кода результата не вызы­ вает затруднений. При отрицательном же результате для получе­

ния прямого

кода

необходимо произвести поразрядную инверсию

и добавить

I

в младший

разряд. По времени

это равноценно

сум­

мированию. следовательно,

для

получения

результата необходимо

время

6 + w )é+

/г д е

 

 

время однократного суммирования,

W - вероятность поучения ДК результата. Вследствие того,что

фактическая задержка, вносимая СЕ, увеличивается

в //+ *'

/

раза

по сравнению с

£+ ,

ДК

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

пря­

мых кодах не

используются.

 

 

 

 

 

 

 

 

 

 

Алгоритм сложения с использованием обратных кодов

 

состоит и следующем:

 

 

 

 

 

 

 

 

 

 

1.

Если Х0

= /+ /,

то

подать

на сумматор /2Г/ прямой Код числа X.

Если Xв = / - /," то

подать

на

57

обратный

код числа X.

 

 

2.

Если !/0=/+/

и Х0 =/+/

или

У0 = /- / и

= /- /,

то

подать

па

27

прямой код

числа

У.

Если У0 = /- /

и.0» =/+/

или

У0

=/+/

и

,Ус = / - /,

то

подать

па

27

обратный код

числа

У.

 

 

 

3. Образовать

 

прдаой код результата.

 

 

 

 

 

 

 

 

Следует помнить, что JT в данном

еду чае

должен иметь

цепь ц и к л и ч е с к о г о

переноса

и оперировать с двумя знаковыми

разрядами так же, как и с основными разрядами, а результат

.получается

всегда

в

обратном коде. Однако*

так

как обратный

- 8 -

Соседние файлы в папке книги из ГПНТБ