Преобразователь кода системы остаточных классов в позиционный код
Изобретение относится к области вычислительной техники и предназначено для преобразования кода системы остаточных классов в позиционный код. Целью изобретения является повышение быстродействия . Преобразователь содержит выходной регистр 10, сдвигатель 11, сумматоры 1,2,3, вычитатели 4 и 5, группу мультиплексоров 12, группу элементов И 13, элемент И 6, элемент ИЛИ 14, элемент ИСКЛЮЧАЮЩЕЕ ИЛИ 7, элементы 8, 9 задержки. 1 ил.
СОЮЗ СОВЕТСКИХ
СОЦИАЛИСТИЧЕСКИХ
РЕСПУБЛИК (я)5 Н 03 M 7/18
ГОСУДАРСТВЕННЫЙ КОМИТЕТ
ПО ИЗОБРЕТЕНИЯМ И ОТКРЫТИЯМ
ПРИ ГКНТ СССР
Ы1"
ОПИСАНИЕ ИЗОБРЕТЕНИЯ (л) 4
Ы
К АВТОРСКОМУ СВИДЕТЕЛЬСТВУ (21) 4774470/24 (22) 27.12.89 (46) 30.05.92. Бюл. М 20 (71) Институт кибернетики им. В. М. Глушкова и Институт проблем моделирования в энергетике АН УССР (72) Е, А. Смичкус и В. Л. Баранов (53) 681.3(088.8) (56) Авторское свидетельство СССР
hL 11222288229900, кл. Н 03 М 7/18, 1984.
Авторское свидетельство СССР
N. 1388997, кл. Н 03 М 7/18, 1986, Авторское свидетельство СССР
М 1624699, кл, Н 03 М 7/18, 1988.
„„5U„„1737735 А1 (54) ПРЕОБРАЗОВАТЕЛЬ КОДА СИСТЕМЫ
ОСТАТОЧНЫХ КЛАССОВ В ПОЗИЦИОННЫЙ КОД (57) Изобретение относится. к области вычислительной техники и предназначено для преобразования кода системы остаточных классов в позиционный код. Целью изобретения является повышение быстродействия. Преобразователь содержит выходной регистр 10, сдвигатель 11, сумматоры 1, 2, 3, вычитатели 4 и 5, группу мультиплексоров
12, группу элементов И 13, элемент И 6, элемент ИЛИ 14, элемент ИСКЛЮЧАЮЩЕЕ
ИЛИ 7, элементы 8, 9 задержки. 1 ил, 77 !7 !7и
1737735
Изобретение относится к вычислительной технике и может быть использовано в цифровых преобразователях вычислительных систем для перевода кода из системы остаточных классов в позиционный код.
Известен преобразователь кода системы остаточных классов в позиционный код, содержащий три регистра сдвига, блок умножения, сумматор-вычитатель, сумматор, вычитатель, формирователь дополнительного кода, переключатель основания системы остаточных классов, переключатель диапазона представления чисел, коммутатор, блок сравнения кодов, блок управления, два триггера, четыре элемента И, элемент ИСКЛЮЧАЮЩЕЕ ИЛИ и два элемента задержки.
Недостаток этого преобразователя заключается в низком быстродействии преобразования, выполняемого за (2п+1) тактов, где и — количество разрядов представления остатков а1 иааф по основаниям Р и Р системы остаточных классов, Известен также преобразователь кода системы остаточных классов в позиционный код, содержащий четыре регистра сдвига вычитатель, сумматор-вычитатель, три сумматора, формирователь дополнительного кода, переключатель основания системы остаточных классов, коммутатор, блок синхронизации, схему сравнения кодов, два триггера, четыре элемента И, элемент ИСКЛЮЧАЮЩЕЕ ИЛИ и три элемента задержки.
Недостатком известного преобразователя кода системы остаточных классов в позиционный код является низкое быстродествие преобразования, выполняемого также за (2п+1) тактов.
Наиболее близким к предлагаемому является преобразователь кода системы остаточных классов в позиционный код, содержащий три сумматора, два вычитателя, три элемента И, элемент ИСКЛЮЧАЮЩЕЕ ИЛИ, два элемента задержки, четыре операционных регистра, переключатель основания системы остаточных классов, коммутатор, блок синхронизации, схему сравнения кодов и два триггера.
Недостаток этого устройства заключается в низком быстродействии преобразования, которое выполняется за 2п тактов, где и — количество разрядов представления остатков.
Цель изобретения — повышение быстродействия преобразования, Поставленная цель достигается тем, что преобразователь кода системы остаточ10
55 ных классов в позиционный код, содержащий с первого по третий сумматоры, первый и второй вычитатели, элемент И, элемент
ИСКЛЮЧАЮЩЕЕ ИЛИ и первый и второй элементы задержки, причем входы разрядов вычитаемого и уменьшаемого первого вычитателя соединены соответственно с входами разрядов первого и второго информационных входов преобразователя, входы разрядов первого и второго слагаемых первого сумматора соединены соответственно с входами разрядов первого и второго информационных входов преобразователя, первый и второй входы элемента ИСКЛЮЧАЮЩЕЕ ИЛИ соединены с входами младших разрядов первого и второго информационных входов преобразователя, содержит выходной регистр, сдвигатель, группу мультиплексоров, группу элементов
И и элемент ИЛИ, причем выходы с первого по и-й (n — разрядность информации) разрядов выхода первого вычитателя соединены с соответствующими входами элемента
ИЛИ и входами соответствующих разрядов входа первого слагаемого третьего сумматора, вход первого разряда входа второго слагаемого которого соединен с входом "0" преобразователя, входы с второго по (и+1)-й разрядов входа второго слагаемого третьего сумматора соединены соответственно с выходами с первого по и-й разрядов выхода первого вычитателя, прямой выход (и+1)-го разряда выхода которого соединен с входом (и+1)-го разряда входа первого слагаемого и входами (и+2)-го и (и+3)-го разрядов входов первого и второго слагаемых третьего сумматора, выход которого соединен с информационными входом сдвигателя, входы разрядов входа задания величины сдвига которого соединены с входами соответствующих разрядов входа задания основания преобразователя, выходы разрядов выхода первого сумматора соединены с входами соответствующих разрядов входа первого слагаемого второго сумматора, инверсный выход (и+1)-го разряда выхода первого вычитателя и выход элемента ИЛИ соединены соответственно с первым и вторым входами элемента И, входы с первого по 2п-й разрядов входа задания диапазона преобразователя соединены с первыми информационными входами соответствующих мультиплексоров группы и с первыми входами соответствующих элементов И группы, вторые входы которых соединены с выходом элемента И, первый информационный вход (2n+1)-го мультиплексора и второй информационный вход первого мультиплексора группы соединены с входом логического нуля преобразователя, вторые
1737735 информационные входы с второго по (2п+1)й мультиплексоров группы соединены соответственно с выходами с первого по 2п-й элементов И группы, выход элемента ИСКЛЮЧАЮЩЕЕ ИЛИ соединен с управляющими входами мультиплексоров группы, выходы которых соединены с входами соответствующих разрядов входа второго слагаемого второго сумматора, выход сдвигателя соединен с входом вычитаемого второго вычитателя, выход которого соединен с информационным входом выходного регистра, вход установки в нуль которого соединен с входом начальной установки преобразователя, вход запуска преобразователя через первый элемент задержки соединен с третьим входом элемента И, выход первого элемента задержки через второй элемент задержки соединен с входом разрешения записи выходного регистра, выходы разрядов с второго по (2п+1)-й выхода второго сумматора соединены соответственно с входами с первого по 2п-й разрядов входа уме 1ьшаемого второго вычитателя, входы с (n+2)-го по (2п+1)-й разрядов входа первого слагаемого второго сумматора, входы (и+1)х разрядов входов первого и второго слагаемых первого сумматора, входы (и+1)-х разрядов входов уменьшаемого и вычитаемого первого вычитателя соединены с входом "0" преобразователя.
На чертеже изображена структурная схема преобразователя кода системы остаточных классов в позиционный код.
Преобразователь кода системы остаточных классов в позиционный код содержит сумматоры 1-3, вычитатели 4 и 5, элемент И 6, элемент ИСКЛЮЧАЮЩЕЕ
ИЛИ 7, элементы 8 и 9 задержки, выходной регистр 10, сдвигатель 11, группу мультиплексоров 121 12(2n+1), группу элементов И
13(1) — 12(2п), элемент или 14, информационные входы 15(1) — 15(n) и 16(1) — 16(n), входы
17(1)-17(n) задания основания, входы 18(1)18(2n) задания диапазона, вход 19 начальной установки и вход 20 запуска преобразователя.
Входы разрядв первого и второго слагаемых сумматора 1 соединены соответственно с входами разрядов информационных входов 15(1) — 15(n) и 16(1) — 16(n) преобразователя (где и — количество разрядов представления остатков). Входы разрядов вычитаемого и уменьшаемого вычитателя 4 соединены соответственно с входами разрядов информационных входов 15(1)-15(п) и 16(1) — 16() преобразователя. Выходы разрядов выхода сумматора 1 соединены с входами соответствующих разрядов входа первого слагаемого сумматора 2. Инверсный выход (и+1)-го разряда выхода вычитателя 4 и выход элемента ИЛИ 14 соединены соответственно с первым и вторым входами элемента И 6. Первый и второй входы эле5 мента ИСКЛЮЧАЮЩЕЕ ИЛИ 7 соединены с входами младших разрядов информационных входов 15(1) и 16(1) преобразователя.
Выходы с первого по и-й разрядов выхода вычитателя 4 соединены с соответствующи10 ми входами элемента ИЛИ 14 и входами соответствующих разрядов входа первого слагаемого сумматора 3, вход первого разряда входа второго слагаемого которого соединен с входом "0" преобразователя.
15 Входы с второго по (и+1)-й разрядов входа второго слагаемого сумматора 3 соединены соответственно с выходами с первого по и-й разрядов выхода вычитателя 4, прямой выход (и+1)-го разряда выхода которого сое20 динен с входом (и+1)-го разряда входа первого слагаемого и входами (п+2) и (n+3)ro разрядов входов первого и второго слагаемых сумматора 3, выход которого соединен с информационным входом сдви25 гателя 11, входы разрядов входа задания величины сдвига которого соединены с входами соответствующих разрядов входа 17 задания основания преобразователя. Входы с первого по 2п-й разряд входа 18 зада30 ния диапазона преобразователя соединены с первыми информационными входами соответствующих мультиплексоров 12(1) — 12(n) группы и первыми входами соответствующих элементов И 13(1) — 13(2n) группы, вторые
35 входы которых соединены с выходом элемента И 6, Первый информационный вход мультиплексора 12(2n+1) и второй информационный вход мультиплексора 12(1) группы соединены с входом "0" преобразователя.
40 Вторые информационные входы мультиплексоров с 12(2) по 12(2n+1) группы соединены соответственно с выходами элементов И
13(1) — 13(2n) группы. Выход элемента ИСКЛЮЧАЮЩЕЕ ИЛИ 7 соединен с управляю45 щими входами мультиплексоров группы
12(1) — 12(2n+1), выходы которых соединены с входами соответствующих разрядов входа второго слагаемого сумматора 2. Выход сдвигателя 11 соединен с входом вычитае50 мого вычитателя 5, выход которого соединен с информационным входом выходного регистра 10, вход установки в "0" которого соединен с входом 19 начальной установки преобразователя. Вход запуска 20 преобра55 зователя через элемент 8 задержки соединен с третьим входом элемента И 6. Выход элемента 8 задержки через элемент 9 задержки соединен с входом разрешения записи выходного регистра 10. Выходы с второго по (2п+1)-й разрядов выхода сумматора 2 сое1737735 входом "О" преобразователя.
Преобразователь кода системы остаточ- 10 ных классов в позиционный код работает
20
25 формирует из сигналов младших разрядов остатков Q1 и аг единичный управляющий сигнал в случае комбинации кодов Π— 1 и 1 — 0 и нулевой сигнал при комбинациях Π— 0 и 45
1 — 1, Если оба остатка а1 и аг — четные или нечетные, то на выходе элемента ИСКЛЮЧАЮЩЕЕ ИЛИ 7 действует нулевой сигнал, Если один остаток — четный, а другой — нечетный, и наоборот, то элемент ИСКЛЮЧА- .50
ЮЩЕЕ ИЛИ 7 формирует сигнал "1", при котором мультиплексоры 12(1) — 12(2n) пропускают на свои выходы параллельный 2п-разрядный двоичный код величины, действующий на входах 18(1) — 18(2 ) задания диапазона преобразователя.
Дальнейшая работа преобразователя зависит от значения величины аг — а1, формируемой вычитателем 4. Если Q2 >а1, то динены соответственно со входами с первого по 2п-й разрядов входа уменьшаемого вычитателя 5. Входы с (n+2)-ãî по (2n+1)-й разрядов входа первого слагаемого сумматора 2, входы (п+1)-х разрядов входов первого и второго слагаемых сумматора 1, входы (n+1)-х разрядов входов уменьшаемого и вычитаемого вычитателя 4 соединены с следующим образом.
В исходном состояни на вход 19 начальной установки преобразователя подают сигнал установки выходного регистра 10 в нулевое состояние, На информационные входы 15(1) — 15(п) и 16(1) — 16() подают соответственно параллельные и-разрядные двоичные коды остатков а1 и аг по основаниям
Р1=6 2 — 1и P2=6 2 +1, гдето=0,1,2, 3,.... На входы 18(1) — 18(п) задания диапазона представления чисел подают параллельныи
2п-разрядный двоичный код произведения оснований Р1 Рг. На входы 17(1) — 17(n) задания основания остаточных классов подают параллельный и-разрядный двоичный код величины m, определяющий основания P1=
=6 2 -1иРг=6 2 +1.
Запуск преобразователя осуществляется путем подачи сигнала "1" на вход 20 запуска преобразователя. Спустя время, равное времени выполнения операции вычитания в параллельном (n+1)-разрядном вычитателе 4, на выходе элемента 8 задержки устанавливается сигнал "1", снимающий блокировку элемента И 6.
Параллельный (и+1)-разрядный вычитатель 4 формирует двоичный код разности аг — a1. Параллельный (n+1)-разрядный сумматор 1 формирует двоичный код суммы а1 +а2. Злемент ИСКЛЮЧАЮЩЕЕ ИЛИ 7
40 аг — а1 > О и в знаковом (n+1)-м разряде на его инверсном выходе действует единичный сигнал. В этом случае Q2 — а1 > О, хотя бы в одном разряде вычитателя 4 действует единичный сигнал, который проходит на выход элемента ИЛИ 14, B результате на выходе элемента И 6 формируется единичный сигнал, снимающий блокировку элемента И
13(1) — 13(2n). В случае нулевого сигнала на выходе элемента ИСКЛЮЧАЮЩЕЕ ИЛИ (2n+1)-разрядный двоичный код величины 2
Р1 Рг, действующий на выходах мультиплексоров 12(1) — 12(2n+1), подается на входы сумматора 2, на выходе которого формируется (2n+1)-разрядный двоичный код величины 2 Р1 Р2+(аг +а1).
Если имеет место аг (а1, то аг — а1 (О и элемент И 6 блокируется нулевым сигналом выхода элемента ИЛИ 14 при аг =a1 или нулевым сигналом инверсного выхода знакового (n+1)-ro разряда вычитателя 4 при Q2 >Q1. Блокировка элементов И 13(1) — 13(2n) нулевым сигналом выхода элемента И 6 обеспечивает формирование нулевых сигналов на выходах мультиплексоров 12(1) — 12(2n+1) в случае нулевого сигнала на выходе элемента ИСКЛЮЧАЮЩЕЕ ИЛИ 7, В этом случае на выходе сумматора 2 формируется двоичный код величины а1 +аг.
Таким образом, имеется три случая формирования различных кодов на выходе сумматора 2:
1) Р1. Рг+ (a1 +аг), если а1 — четное, аг — нечетное, или Q1 — нечетное,Q2 — четное;
2) 2 Р1 Рг+(а1 + a2), если а1 и Q2 — оба четные или нечетные; аг >а1;
3) (а1 + Q2) ЕСли а1 и аг — O6a чЕтныЕ или нЕчЕтныЕ; Q2 (а1.
В зависимости от управляющих сигналов на выходах элементов И 6 и ИСКЛЮЧАЮЩЕЕ ИЛИ 7 на входы уменьшаемого вычитателя 5 поступает с выхода сумматора
2 двоичный код одной из трех величин
Р1 Рг+ (а1 +Q2) 2 Р1 Рг+ (Q2+a1) или (a1 + аг).
Одновременно с формированием двоичного кода на выходе сумматора 2 на выходе (n+3)-разрядного сумматора 3 формируется двоичный код величины 3 (Q2 — а1), так как на его входы nepeoro слагаемого поступает с выхода вычитателя
4 двоичный код величины (Q2 — Q1),а на входы второго слагаемого — сдвинутый на один разряд в сторону старших разрядов двоичный код величины 2 (Q2 — а1), Так как на выходе вычитателя 4 отрицательная раз1737735
10 ность (a2 — а1) формируется в дополнительном коде, то выход знакового (и+1)-го разряда вычитателя 4 соединен с входами обоих слагаемых в (п+2)-м и (и+3)-м разрядах сумматора 3, чтобы обеспечить сложение до- 5 полнительных кодов величин (аг — а1) и 2 (аг — a1). Сдвигатель 11 выполняет сдвиг на
m разрядов в сторону старших разрядов (и+3)-разрядного двоичного кода величины 3 (аг — а1), действующего на выходах "0 сумматора 3.
Параметр m = О, 1, 2, 3,...,(n — 3) определяет основания Р1 = 6 .2 — 1 и Рг = 6 .2 +1 системы остаточных классов и задается в виде двоичного кода на входах 17(1) — 17(11) задания основания преобразователя, соединенных с входами задания величины сдвига сдвигателя 11, На выходах сдвигателя 11 формируется 2п-разрядный двоичный код величины 3 2 (а2 — а1), который посту- 20 пает на входы вычитаемого 2п-разрядного вычитателя 5. Входы уменьшаемого вычитателя 5 с первого по 2п-й соединены соответственно с BTopofo по (2п+1)-й выходами сумматора 2, что равносильно сдвигу двоич- 25 ного кода сумматора 2 на один разряд в сторону младших разрядов или уменьшению его на 1/2. На выходе вычитателя 5 формируется 2п-разрядный позиционный код преобразованного числа А согласно an- 30 горитму:
1)А=2 (Р1 Р2+(а1 +аг)) — 3 2 (аг — a1), =I если a1 — четное, a2 — нечетное; или а1 — нечетное, аг — четное;
2)А= — (2 Р1 Рг+(а1 +аг))-3. 2 (аг -а1), 1 если а1 и a2 — оба четные или нечетные;
a2 > а1
1 п1
3) А = — (а1 +аг) — 3. 2 .(a2 — а1), если а1 и a2 — оба четные или нечетные; а2 а1
Сигнал 1, сформированный на выходе 4 элемента задержки 8, спустя время, равное времени выполнения операции суммирования сумматором 3, сдвига сдвигателем 11 и выполнения операции вычитания вычитателем 5, начинает действовать на выходе элемента задержки 9. По этому сигналу
2п-разрядный позиционный код преобразованного числа А, действующий на выходах вычитателя 5 записывается в 2п-разрядный выходной регистр 10.
Рассмотрим процесс преобразования на примерах при основаниях
P1=11; Рг= 13; и =4 и m =1.
Пример 1. a1 = 9; a2 = 7; Р1 Рг = 143, Так как а1 иаг — оба нечетные и аг (a1, то имеем третий случай преобразования: аг О 1 1 1 аг О 1 1 1 а1 1001 а1 1001
Выч. 41 1 116 См. ПГ0000
1111110 См.2 000010000
См.3 1111010
Сдв.11 11110100
Выч. 5 О О О 1 О 1 0.0 А = 20
П ример 2. a1=2; а2=12; 2Р1 Р2=286.
Так как а1 иаг — оба четные или аг > а1, то имеем второй случай преобразования; аг 1100 а1 0010
В ыч. 4. О 1 О 1 О аг 1100 а1 001 О
См 01110
См.3 0011110
Сдв. 11 00 1 1 1 1 00 а1 + аг О О О О О 1 1 1 0
2Р1 Р2 100011110
См,2 100101100
Выч.5 01011010
А=90
Пример 3. а1=10; а2=7; Р1 Рг==143.
Так как a1 — четное, аг — нечетное, то имеем первый случай преобразования: аг 0111 а1 1010»
Выч,4 111 01 аг 0111 а1 1010
См. 1 1 0001 а2 0111 а1 1010
Выч.4 11101
1111101
См.3 1110111
Сдв.11 11101110 аг 0111 а1 1010
СM.1 10001 а1+аг 000010001
Р1 Р2 010001111
См.2 010100000
А =98
1737735
5
15
25
Технико-экономический эффект от использования изобретения по сравнению с прототипом заключается в повышении быстродействия преобразования в и раз. Так как каждый из элементов 8 и 9 задержки вносит задержку в один такт, то предложенное устройство выполняет преобразование за два такта, в то время как прототип выполняет преобразование за 2п тактов. Например, при представлении остатков на п = 16 разрядах быстродействие предложенного преобразователя в 16 раз выше, чем быстродействие устройства-прототипа.
Формула изобретения
Преобразователь кода системы остаточных классов в позиционный код,содержащий с первого по третий сумматоры, первый и второй вычитатели, элемент И, элемент
ИСКЛЮЧАЮЩЕЕ ИЛИ, первый и второй элементы задержки, причем входы разрядов вычитаемого и уменьшаемого первого вычитателя соединены соответственно с входами разрядов первого и второго информационных входов преобразователя, входы разрядов первого и второго слагаемых первого сумматора соединены соответственно с входами разрядов первого и второго информационных входов преобразователя, первый и второй входы элемента ИСКЛЮЧАЮЩЕЕ ИЛИ соединены с входами младших разрядов первого и второго информационных входов преобразователя, отличающийся тем, что, с целью повышения быстродействия, он содержит выходной регистр, сдвигатель, группу мультиплексоров, группу элементов И и элемент
ИЛИ, причем выходы с первого по п-й (n— разрядность информации) разрядов выхода первого вычитателя соединены с соответствующими входами элемента ИЛИ и входами соответствующих разрядов входа первого слагаемого третьего сумматора, вход первого разряда входа второго слагаемого которого соединен с входом "0" преобразователя, входы с второго по (и+1)-й разрядов входа второго слагаемого третьего сумматора соединены соответственно с выходами с первого по и-й разрядов выхода первого вычитателя, прямой выход (и+1)-го разряда выхода которого соединен с входом (и+1)-го разряда, входами первого слагаемого и входами (и+2)-го и (п+3)-го разрядов входов первого и второго слагаемых третьего сумматора, выход которого соединен с информационным входом сдвигателя, входы разрядов входа задания величины сдвига которого соединены с входами соответствующих разрядов входа задания основания преобразователя, выходы разрядов выхода первого сумматора соединены с входами соответствующих разрядов входа первого слагаемого второго сумматора, инверсный выход(п+1)-го разряда выхода первого вычитателя и выход элемента ИЛИ соединены соответственно с первым и вторым входами элемента И, входы с первого по 2п-й разрядов входа задания диапазона преобразователя соединены с первыми информационными входами соответствующих мультиплексоров группы и первыми входами соответствующих элементов И группы, вторые входы которых соединены с выходом элемента И, первый информационный вход (2п+1)-ro мультиплексора и второй.информационный вход первого мультиплексора группы соединены с входом "0" преобразователя, вторые информационные входы с второго по (2п+1)-й мультиплексоров группы соединены соответственно с первого по 2п-й выходами элементов И группы, выход элемента ИСКЛЮЧАЮЩЕЕ
ИЛИ соединен с управляющими входами мультиплексоров группы, выходы которых соединены с входами соответствующих разрядов входа второго слагаемого второго сумматора, выход сдвигателя соединен с входом вычитаемого второго Bычитателя, выход которого соединен с информационным входом выходного регистра, вход установки в "0" которого соединне с входом начальной установки преобразователя, вход запуска преобразователя через первый элемент задержки соединен с третьим входом элемента И, выход первого элемента задержки через второй элемент задержки соединен с входом разрешения записи выходного регистра, выходы с второго по (2п+1)-й разрядов выхода второго сумматора соединены соответственно с входами с первого по 2п-й разрядов входа уменьшаемого второго вычитателя, входы с (n+2)-го по (2п+1)-й разрядов входа первого слагаемого второго сумматора, входы (и+1)-х разрядов входов первого и второго слагаемых первого сумматора, входы (и+1)-х разрядов входов уменьшаемого и вычитаемого первого вычитателя соединены с входом "0" преобразователя,





