Файл: Каган Б.М. Цифровые вычислительные машины и системы учеб. пособие.pdf

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

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

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

Добавлен: 09.04.2024

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

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

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

ры нового слагаемого. В результате сложения разряд регистра суммы устанавливается в состояние 1 при не­ четном количестве единиц слагаемых и в состояние О при четном количестве единиц слагаемых. Разряд реги­

стра переносов

устанавливается

в состояние

1, если

в предыдущем,

младшем разряде

хотя бы две

цифры

слагаемых являются единицами, и устанавливается в со­ стояние 0, если число единиц в слагаемых меньше двух.

Согласно этим правилам перенос в сумматоре рас­ пространяется не более чем на один разряд. На рис. 3-77 показана схема двух разрядов сумматора с запоминани­ ем переноса. На рисунке приняты следующие обозначе­ ния: а, — цифра /-го разряда регистра суммы; Ьі циф­ ра /-го разряда регистра второго числа; Сі — цифра /-го разряда регистра переноса; а,-і, bj-ь сг- 1— соответст­ венно цифры регистров суммы, второго числа и перено­ са из предыдущего, младшего разряда.

Для завершения выполнения сложения и получения окончательного результата необходимо сложить содер­ жимое регистра суммы и регистра переносов с распро­ странением переносов одним из описанных выше спо­ собов.

Приведем пример выполнения сложения трех чисел в сумматоре с запоминанием переноса:

1 - е

0 0 0 0 0 0 0 0

с у м м и р о в а н и е

 

 

0 1 1 0 1 1 1 1

 

0 1 0 1 1 0 1 0

 

1 0 0 1 0 1 0 0

2 - е

0 0 1 1 0 1 0 1

с у м м и р о в а н и е

0 0 0 1 0 1 1 1

 

0 0 1 0 1 0 1 0

 

1 0 1 1 0 1 1 0

 

1 1 1 0 0 0 0 0

С о д е р ж и м о е

р е г и с т р а

п е р е н о -

с а .

 

 

С о д е р ж и м о е р е г и с т р а с у м м ы —

1 - е ч и с л о .

 

С о д е р ж и м о е

р е г и с т р а

2 - г о ч и с ­

л а — 2 - е ч и с л о .

 

С о д е р ж и м о е

р е г и с т р а

п е р е н о ­

с о в .

 

 

С о д е р ж и м о е

р е г и с т р а

с у м м ы .

С о д е р ж и м о е

р е г и с т р а 2 - г о ч и с ­

л а — 3 - е ч и с л о .

 

С о д е р ж и м о е

р е г и с т р а

п е р е н о ­

с о в .

 

 

С о д е р ж и м о е

р е г и с т р а

с у м м ы

( п р о и з в о д и т с я з а п у с к с к в о з н о г о п е р е н о с а ) .

О к о н ч а т е л ь н ы й р е з у л ь т а т в р е ­ г и с т р е с у м м ы .

Сумматоры с запоминанием переноса требуют допол­ нительного регистра для хранения цифр переноса, но позволяют при умножении и делении выполнять сложе-

233


ние как поразрядную операцию, не затрачивая времени на распространение переноса.

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

Кроме сигналов переноса в каждом разряде отдель­ ными схемами вырабатывается сигнал инверсии перено­ са. Назовем сигнал переноса — переносом 1, а сигнал инверсии переноса —• переносом 0.

Сумматор снабжается отдельной цепью распростра­ нения переноса 0, аналогичной цепи распространения пе­ реноса 1. Тогда в каждом разряде при выполнении сло­ жения должен присутствовать хотя бы один из этих сиг­ налов. Если объединить эти два сигнала в каждом разряде схемой ИЛИ, то на выходе ее появится сигнал в момент появления переноса в данном разряде.

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

Дополнительное оборудование, необходимое для формирования сигналов переноса 0, может быть исполь­ зовано для контроля правильности формирования пере­ носов. Так как в каждом разряде не должны появляться оба сигнала (перенос 1 и перенос 0), то легко можно проконтролировать возникновение ложных сигналов пе­ реноса. Для этого в каждом разряде используется одна схема И, на входы которой подаются сигнал переноса 1 и сигнал переноса 0. Выходы всех схем И объединяют­ ся одной схемой ИЛИ, выход которой подсоединяется к триггеру сбоя. В случае появления в каком-либо разря­ де ложного сигнала переноса 1 или переноса 0 триггер сбоя фиксирует ошибку.

Сигнал на выходе схемы определения момента окон­

чания распространения переноса спер реализует

функ­

цию вида

 

С п е р = ( c i V c J (cgVca)* • *(c„v Сп),

(3-54)

3-18. С У М М А Т О Р - В Ы Ч И Т А Т Е Л Ь

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

При этом, если производится сложение чисел, кото­ рые имеют одинаковые знаки, или вычитание чисел, име­ ющих разные знаки, должно выполняться арифметиче­ ское сложение чисел. Если производится сложение чи­ сел с разными знаками или вычитание чисел с одинако­ выми знаками, то должно выполняться арифметическое вычитание чисел.

Операция вычитания в ЦВМ часто сводится к опе­ рации арифметического сложения при помощи обратно­ го или дополнительного кодов, используемых при пред­ ставлении отрицательных чисел. При этом, как показа­ но в гл. 2, операция сложения распространяется и на разряды знаков, рассматриваемых как разряды целой

части чисел.

вычитания с использованием об­

При

выполнении

ратного

кода для получения правильного результата

в сумматоре должна

быть организована цепь цикличе­

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

Преобразование прямого кода в обратный может быть выполнено путем подачи сигнала на счетные вхо­ ды триггеров регистра, в котором расположено число. Если триггеры этого регистра не имеют счетных входов, то преобразование кода может быть выполнено путем переключения выходов триггеров регистра на входе сум­ матора (рис. 3-45).

Если числа хранятся в памяти в прямом коде, то иногда целесообразно производить прямое вычитание чисел. Рассмотрим, как производится прямое вычитание двух двоичных чисел обычным способом.

Двоичныечисла

Десятичные

эквиваленты

_101101

Уменьшаемое

45

010110

Вычитаемое

22

010111

Разность

23

235


Если в каком-либо

разряде

уменьшаемого

стоит О,

а в вычитаемом в этом разряде

находится

1, то необхо­

димо занять

1 из соседнего старшего разряда

уменьша­

емого. Если

в данном

разряде

цифры

уменьшаемого

и вычитаемого одинаковы и в

уменьшаемом

из

этого

разряда занята 1, то заем 1 распространяется

к

сосед­

нему старшему разряду.

 

 

 

 

 

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

ковы и из этого разряда уменьшаемого

занимается 1.

Эти правила поясняются табл. 3-33.

 

 

 

Заем1из

Т а б л и ц а 3-33

Цифра

Цифра

Цифра

Заем1из

данногораз­

следующего

уменьша­

вычита­ рядаумень­

разности

разряда

емого

емого

шаемого

 

уменьшаемого

0

0

0

0

0

0

1

0

1

1

1

0

0

1

0

1

1

0

0

0

0

0

1

1

1

0

2

1

0

1

1

0

1

0

0

1

1

1

1

1

С помощью табл. 3-33 можно составить

булевы

функции для разности и цифры заема:

 

R, = а, bi di V a-bi dtV at b( dtV ac bt d-

(3-55)

di+i = at bi di V at bt d(\ / at bt dtV at bt dt,

(3-56)

где а* —цифра уменьшаемого в г'-м разряде; Ьі цифра вычитаемого в і-м разряде; d{ — цифра заема из і-го раз­

ряда уменьшаемого; Ri — цифра разности

в t-м разряде.

Выражение для цифры заема можно

преобразовать

к виду

 

d,+1- a i b . V a l dlV b l dr

(3-57)

Сравнивая выражение для разности Rt (3-55) с вы­ ражением (3-28) для Si, видим, что они отличаются

236


только тем, что вместо цифры переноса С; стоит цифра заема di. Таким образом, для вычитания можно пользо­ ваться тем же оборудованием, что и для сложения, если

при

 

вычитании

сигнал

су bf

 

заема

посылать

в те же

 

цепи,

 

в которые

посыла­

 

 

 

ется

сигнал

переноса

при

 

& 1

 

сложении. Сравнивая вы­

 

 

ражение (3-57) для циф­

 

т

 

ры заема di с выражени­

 

&

 

ем (3-30) для цифры пе­

 

 

реноса Сі, видим, что по­

 

т

 

следний член у них оди­

 

 

 

наков

(если заменить пе­

 

& г

 

ренос Сі заемом di). По­

 

 

 

этому для

передачи

сиг­

 

& 7

 

нала

 

заема

при

вычита­

 

&

 

нии достаточно

добавить

 

 

две схемы И в цепь пере­

 

т

 

носа при сложении.

 

 

 

 

 

т

 

Можно

написать

вы­

 

 

ражение булевой алгебры

 

 

 

для образования

резуль­

Ьі

 

 

тата

 

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

і і

 

ния,

если обозначить

уп­

 

 

 

равляющий уровень

сло­

Рис. 3-78. Одноразрядный комби­

жения D и управляющий

национный

сумматор-вычитатель.

уровень вычитания R:

 

 

 

 

 

St = а, bt с, Vfl, bi ct\fat bt ctV fl, bi c,;

(3-58)

 

cl+l = ö(. b. D V a. c. D V a{ b{ R \/ at ct R\Jbi ci.

(3-59)

Схема одного разряда сумматора-вычитателя комби­ национного типа, реализующая эти соотношения, пока­ зана на рис. 3-78. В таком сумматоре при прямом вычи­ тании большего числа из меньшего результат получает­

ся не в прямом, а в дополнительном коде.

Убедимся

в этом на примере.

Десятичные

Двоичные

 

числа

 

эквиваленты

010110

Уменьшаемое

_ 22

101101

Вычитаемое

45

101001

Разность в дополнительном коде

 

1,010111

Прямой код результата.

 

237


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

3-19. М Е Ж С О Е Д И Н Е Н И Я Б Ы С Т Р О Д Е Й С Т В У Ю Щ И Х И Н Т Е Г Р А Л Ь Н Ы Х С Х Е М

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

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

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

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

Для случая межсоединений можно применять следующую клас­ сификацию линий связи:

1) межсоединения, имеющие длину, меньшую чем 0,0001 дли­ ны волны, соответствующей максимальной частоте активного спект­ ра сигнала, эквивалентны электрической схеме из последовательно

ипараллельно включенных резисторов;

2)межсоединения, для которых 1/К лежит в диапазоне 0,0001— 0,05, могут рассматриваться как схемы с сосредоточенными сопро­ тивлениями, емкостями и индуктивностями;

238