Устройство для вычисления и хранения остатков по модулю три
Иллюстрации
Показать всеРеферат
Изобретение относится к вычислительной технике и может быть использовано при контроле арифметических узлов. Цель изобретения - расширение области применения устройства . Устройство содержит входной триггер 4, рабочие триггеры 5, б, счетный триггер 7, коммутаторы 8, 14, элементы И-НЕ 9-11, элементы И-ИЛИ-НЕ 12, 13 коммутатора 8, элементы И-ИЛИ-НЕ 15, 16 коммутатора 14, выходные триггеры 17, 18. Устройство обеспечивает контроль последовательного числа в дополнительном коде. 2 ил., 2 табл.
СОЮЗ СОВЕТСНИХ
СОЦИАЛИСТИЧЕСНИХ
РЕСПУБЛИН (51) 5 С 06 F 11/10. О "" ..C.
Р0 бог. 7
ГОСУДАРСТВЕННЫЙ КОМИТЕТ
ПО ИЗОБРЕТЕНИЯМ И ОТКРЬГГИЯМ
ПРИ ГКНТ СССР
1 (21) 4687868/24 (22) 30.03.89 (46) 28.02.91. Бюл, ¹ 8 (72) О.В.Подрубный, В.А.Старых и Б.Н.Чернуха (53) 681.3(088,8) (56) Авторское свидетеньство СССР
¹ 1211733, кл. С 06 F 11/10, 1982.
Авторское свидетельство СССР
¹ 13434t5, клг С 06 F 11/10,, 1987.
I (54) УСТРОЙСТВО ДЛЯ ВЫЧИСЛЕНИЯ И
ХРАНЕНИЯ ОСТАТКОВ ЛО ИОДУЛЮ ТРИ (57) Изобретение относится к вычис„„SU„„1631544 А 1 лительной технике и может быть использовано при контроле арифметических узлов. Цель изобретения расширение сбласти применения устройства. Устройство содержит входной
\ триггер 4, рабочие триггеры 5, 6, счетный триггер 7, коммутаторы 8, 14, элементы И-НЕ 9-11, элементы
И-ИЛИ-НЕ 12, 13 коммутатор.- 8, элементы И-ИЛИ-НЕ 15, 16 коммутатора
14, выходные триг" åðû 17, 18. Устройство обеспечивает контроль последовательного числа в допел::ительном коде. 2 ил., 2 табл.
1631544
Изобретение относится к вычисли-—
"гельной технике и может быть использовано при контроле работы арифметических узлов.
Цель изобретения — расширение области применения устройства.
На фиг. 1 приведена функциональная схема устройства, на фиг. 2 временная диаграмма сигналов на входах и выходах устройства.
Устройство содержит информационный вход 1 устройства, тактовый 2 и установочный 3 входы устройства, входной триггер 4, рабочие триггеры 5 и 6, счетный триггер 7, второй коммутатор 8 на элементах И-НЕ 9-11 и элементах И-ИЛИ-НЕ 12 и 13, первый коммутатор 14 на элементах И-ИЛИ-НК
15 и 16, выходные триггеры 17 и 18, первый 19 и второй 20 информационные выходы устройства,-входы и выходы
21-65 узлов устройства.
В описании приняты обозначения: а„значение i-го разряда двоичного кода 25 числа, поступающего на вход 1 устройст, ва, R < — остаток по модулю три для i младших разрядов входного числа, Т1 и Т2 — состояния рабочих триггеров 5 и 64 91, 02 — состояние. Выходов 60 и 62 узла 8 S< — признак четностй
Э текущего разряда, хранящийся в триггере 7. S; = О означает, что текущий разряд а, операнда, поступающего на вход 1 устройства является четным, S, = 1 означает, что текущий разряд а операнда, поступаю1 ,.щего на вход устройства, является нечетным..Младший разряд обрабатываемого кода является нечетным (первым). Общее количество разрядов входного числа для определенности считают четным. Вычисление остатков по модулю три для чисел, поступающих в последовательном двоичном коде, основано на том факте, что сумма ос- -. татков по модулю три от чисел А,, взятая еще раз по модулю три, равняется остатку по модулю три от суммы чисел А,.
Алгоритм вычисления остатков по
mod 3 можно записать следующим образом:
1. Установить рабочие триггеры в состояние О., 2. Если очередной разряд а, вход- ного числа, записанный в триггер 4, равен О, то состояние рабочих триггеров не изменяется.
3. Если очередной разряд а ° входного числа, записанный в триггер 4, равен 1, то текущий остаток R; Ä no модулю три от ранее обработанных разрядов входного числа, зафиксированный в рабочих триггерах 5 и 6, необходимо заменить на новый остаток
R;, который определяется соотношением
"-, = (R,, + r ) mod 3., (1) где г, = 1 в случае i — четное, г = 2 в случае i — нечетное.
<
4. Если i =- и, где n — разрядность обрабатываемых чисел, то выдают сформированный остаток по шос1 3 на г выход устройства и переходят к п,1, если i ф и, то переходят к п.2.
Данный алгоритм можно записать в виде табл.1, в которой значение данной переменной в данной ситуации может быть любым.
Непосредственно из табл.1 следуют логические выражения для значений D1, 02 кода нового остатка по модулю три:
01 =, Т1 Т2 S + Т1-Т2 Б; (2а)
92 = Т1 "Т2 Б + Т1 ° T2 Б (26)!
Алгоритм, задаваемый табл.1, обеспечивает правильное вычисление остатка для чисел без знака (положительных).
В сжатом виде алгоритм корректировки для отрицательных чисел в дополнительном коде можно представить в табл.2.
Отсюда (Р 1 а дл. 2 ):
1.2 = а„ Т2 + à, Т1 Т2 > (За)
L1 = ая T1 + ад Т1 Т2. (Зб)
Устройство работает следующим образом.
Данные поступают в последовательном коде младшими разрядами вперед ,на вход 1 устройства в соответствии с временной диаграммой на фиг.2 (представлен случай и = 8) и записываются в триггер 4 по фронту син хросигнала, поступающего на вход синхронизации устройства 2. В момент . поступления первого разряда очеред ного числа на вход 1 устройства, на ,вход 3 устройства поступает высокий
< уровень сигнала, который обеспечива,ет установку триггера 7 в состояние
1631544 записывается код (T1, Т2), что соответствует первой строке табл,2 и первым членам выражений (За) и (Зб) . Если в триггере 4 записано a = 1,т.е.
5 обрабатывается отрицательное число в дополнительном коде, то высокий уровень на прямом выходе 25 триггера 4 разрешает прохождение информации с входа 53 элемента И-ИЛИ-НЕ 15 на его выход 64 и с входа 59 элемента И-ИЛИНЕ 16 на его выход 65, При этом на вход 66 триггера 17 поступает сигнал
Т1 Т2, формируемый элементом И-НЕ 9, что соответствует второму члену выражения (Зб), а на вход 67 триггера
18 поступает сигнал Т1- Т2, формируемый элементом И-НЕ 11, что соответствует второму члену выражения (За).
Таким образом происходит корректировка вычисленного кода остатка по модулю три от входного числа в соответствии с табл.2 (строки 2-4), и в следующем такте правильное значение остатка запишется в триггеры 17 и 18. 25
Одновременно с этим происходит запись в триггер 4 первого разряда следующего числа и установка триггеров
5 и 6 в "О", а триггера 7 — в "1", после чего весь процесс повторяется для нового числа.
Таким образом, предложенное устройство обеспечивает вычисление остатков по модулю три для последовательных чисел, представленных в дополнительном коде, формула изобретения устройство для вычисления и хране- 0 ния остатков по модулю три, содержащее два выходных триггера и первый коммутатор, причем прямые выходы первого и второго выходных триггеров подключены соответственно к первому и второму информационным выходам устройства, тактовые входы первого и второго выходных триггеров подключены к тактовому входу устройства, о т л и ч а ю щ е е с я тем, что, с целью расширения области применения устройства, в него введены входной триггер, счетный триггер, два рабочих триггера, три элемента
И-НЕ и второй коммутатор, причем так товые входы входного, счетного и рабочих триггеров подключены к такто-, вому входу устройства, нулевые входы рабочих триггеров, единичный вход счетного триггера и входы разрешения записи выходных триггеров подключены к установочному входу устройства, прямой и инверсный выходы входного триггера соединены соответственнб с первым и вторым управляющими входами первого коммутатора, первый и второй разряды выхода которого соединены с информационными входами первого и второго выходных триггеров соответственно, информационный вход входного триггера подключен:к информационному входу устройства, прямой выход входHoI 0 триггера соединен с входами разрешения записи первого и второго рабочих триггеров, инверсные выходы которых соединены с первыми разрядами первого и второго информационных входов первого коммутатора соответственно, инверсный выход первого рабочего триггера и прямой выход второго рабочего триггера соединены соответственно с первым и вторым входами первого элемента И-НЕ, прямой и инверсный выходы первого рабочего триггера соединены соответственно с первыми входами второго и третьего элементов И-НЕ, вторые входы которых соединены с инверсным выходом второго рабочего триггера, прямой и инверсный выходы счетного триггера соединены соответственно с первым и вторым управляющими входами второго коммутатора, первый и второй разряды выхода которого соединены информационными входами первого и второго рабочих триггеров соответственно, выходы первого и третьего элементов И-НЕ сое-, динены с вторыми разрядами первого и второго информационных входов первого коммутатора соответственно, выходы первого и третьего элементов
И-НЕ соединены с первыми разрядами первого и второго информационных входов второго коммутатора соответственно, выходы третьего и второго элементов И-НЕ соединены с вторыми разрядами первого и второго информационных входов второго коммутатора соответственно, инверсный выход счетного триггера соединен с информационным входом счетного триггера.
5 1631544
"1", триггеров 5 и 6 - в состояние
"О" и разрешает запись в выходные триггеры 17 и 18 вычисленного остатка по модулю 3 для предыдущего числа. Установка триггеров 5, 6 и 7 происходит одновременно с записью 1-ro разряда очередного числа в триггер 4 по фронту синхросигнала. Коммутатор
8, элементы И-НЕ 9-11 реализуют строки с 2-й по 9-ю табл.1, т.е. формируют сигналы D1, D2 в соответствии с выражением (2).
Если триггер 7 находится в сос тоянии "1", т.е. в триггер 4 записался нечетный разряд входного числа (1-й, 3-й и т.д.}, то низкий уровень на выходе 47 триггера 7 запрещает прохождение информации с входа 57 элемента И-ИЛИ-НЕ 12 íà его выход 60 и с входа 55 элемента И-ИЛИ-HE 13 на его выход 62, а высокий уровень на выходе 44 триггера 7 разрешает прохождение информации с входа 52 элемента И-ИЛИ-НЕ 12 на его выход 60 и далее на вход 61 триггера 5 и разрешает прохождение информации с входа
58 элемента И-ИЛИ-HF. 13 на его выход 62 и далее на вход 63 триггера 6.
В результате этого на вход 61 триггера 5 проходит сигнал Т1, Т2, формируемый элементом И-HE u дважды проинвертированный на выходе элемента
И-НЕ 9 и на выходе элемента И-ИЛИ-НЕ
12, что соответствует второму члену выражения (2а). На вход 63 триггера
6 проходит сигнал Т1, Т2, формируемый эЛементом И-НЕ 11 и дважды проинвертированный, что соответствует второму члену выражения (2б). Триггер 7 по каждому очередному фронту синхросигнала переключается в противоположное состояние, что обеспечивается обратной связью с инверсного выхода
47 триггера 7 на его вход 48. Если триггер 7 находится в состоянии "О", т.е. в триггер 4 записался четный разряд входного числа (2-й,4-й и т.д.), то низкий уровень на выходе 44 триг- гера 7 запрещает прохождение информации с входа 58.элемента И-ИЛИ-НЕ 13 на его выход 62 и с входа 52 элемента И-ИЛИ-НЕ 12 íà его выход 60, а высокий уровень иа выходе 47 триг-. гера 7 разрешает прохождение информации с входа 57 элемента И-ИЛИ-НЕ
12 на его выход 60 и далее на вход
61 рабочего триггера 5 и разрешает прохождение информации с входа 55 элемента И-ИЛИ-НЕ l3 íà его выход .62 и далее на вход 63 триггера 6. В результате этого на вход 61 триггера
5 поступает сигнал Т1 Т2 формируеВ мый элементом И-НЕ 11, что соответствует первому члену выражения (2а), на вход 63 триггера 6 поступает сигнал Т1 Т2, сформированный элементом
И-НЕ 10, что соответствует первому члену выражения (2б). Сформированные коммутатором 8 сигналы записываются в рабочие триггеры 5 и б.в том случае, если очередной разряд входного числа, записанный в триггер 4, равен "1". В этом случае высокий уровень с выхода 25 триггера 4 поступает на входы 26 разрешения записи триггеров 5 и 6, что обеспечивает их
20 обновление в соответствии со строками 2-9 табл.1, Если очередной разряд входного числа, записанный в триггер
4, равен "О", то низкий уровень, поступающий с. выхода 25 триггера 4
25 на входы 26 разрешениБ записи триггеров 5 и 6; блокирует прием новой информации в эти триггеры, и в них сохраняется код остатка по модулю 3, вычисленный в предылчяем такте (реализуется строка 1 .табл.1). Последний (знаковый) разряд обрабатываемого числа записывается в триггер 4, после чего в следующем такте на установочный вход 3 устройства поступает высокий уровень сигнала установки, 35 который проходит на входы 24 разрешения записи выходных триггеров 17 и 18 и разрешает прием в них информации с выходов 64 и 65 блока обра40 б отки знака (фиг . 2) . При этом если в триггере 4 записано а = О, т.е. срабатывается положительное число, то высокий уровень на инверсном выходе
29 триггера 4 разрешает прохождение информации с входа 37 элемента
И-ИЛИ-НЕ 15 на его выход 64 и с входа 43 элемента И-ИЛИ-НЕ 16 на его выход 65. Соответственно на вход 66 триггера 17 поступает с выхода триг50 гера 5 уровень, соответствующий первому разряду Т1 вычисленного кода остатка по модулю 3 для мантиссы обрабатываемого числа, на вход 67 триг" гера 18 поступает с выхода триггера .6 уровень, соответствующий второму разряду Т2 вычисленного кода остатка
1, по модулю три для мантиссы обрабаты" ваемого числа, в результате чего в следующем такте в триггеры 17 и 18
1631544
Таблица 1
Т2
Э2 Примечание
Т2 . Рабочие триггеры в режиме хранения
0
Запрещенное состояние, признак ошибки
Т1
% 0
0
0
1
Запрещенное состояние признак ошибки
Таблица 2
Код R„, Т1 Т2
0 (}
0 1
1 — 0
3УУ
Составитель В.Гречнев
Техред Д.Сердюкова Корректор Л.Патай
Редактор Л.Пчолинская
Заказ 547
ВНИИПИ Государственного
113035, Тираж 406 Подписное комитета по изобретениям и открытиям при ГКНТ СССР
Москва, Ж-35, Раушская наб., д. 4/5
Производственно-издательский комбинат "Патент", г. Ужгород, ул. Гагарина, 101
0 1
0 1
0 1
0 1
0
0
1
1
0
0
Т1
1
Т2
0