SU1683013A1 - Устройство дл делени чисел - Google Patents
Устройство дл делени чисел Download PDFInfo
- Publication number
- SU1683013A1 SU1683013A1 SU894745603A SU4745603A SU1683013A1 SU 1683013 A1 SU1683013 A1 SU 1683013A1 SU 894745603 A SU894745603 A SU 894745603A SU 4745603 A SU4745603 A SU 4745603A SU 1683013 A1 SU1683013 A1 SU 1683013A1
- Authority
- SU
- USSR - Soviet Union
- Prior art keywords
- input
- output
- register
- code
- modular
- Prior art date
Links
Landscapes
- Complex Calculations (AREA)
Abstract
Изобретение относитс к вычислительной технике и предназначено дл использовани в арифметических устройствах непозиционного типа дл выполнени операции делени чисел, представленных в минимально избыточной модул рной системе счислени . Цель изобретени состоит в упрощении устройства при делении в модул рной системе счислени . Цель достигаетс за счет реализации итеративного алгоритма делени , базирующегос на операции умножени делител на два и формировани знака числа в модул рном коде. Устройство дл делени чисел содержит регистры 6 и 7, делимого и делител , регистр. 9 сдвига, вспомогательный регистр 17, блок 11 вычитани , блок 12 умножени , блок 13 сложени , параллельно-конвейерный формирователь 20 интегральных характеристик модул рного кода дл вычислени знака числа с частотой обращени fi 1/tMt (IMT длительность модульного такта), счетчик 8, элемент ИЛИ-НЕ 10, элементы И 14, 15, элемент 16 задержки, регистр 18 частного и элемент ИЛИ 19. 1 ил. сл с
Description
Изобретение относится к вычислительной технике и предназначено для использования в арифметических устройствах непозиционного типа для выполнения операции деления чисел, представленных в модулярной системе счисления.
Цель изобретения состоит в упрощении устройства при делении в модулярной системе счисления.
На чертеже приведена структурная схема устройства для деления чисел в модулярной системе счисления.
Устройство содержит вход 1 делимого, вход 2 делителя, тактовый вход 3, первый и второй установочные входы 4 и 5 устройства, регистр 6 делимого, регистр 7 делителя, счетчик 8, регистр 9 сдвига, элемент ИЛИНЕ 10, блок 11 вычитания, блок ^умножения, блок 13 сложения, первый и второй элементы И 14 и 15, элемент 16 задержки, вспомогательный регистр 17, регистр 18 частного, элемент ИЛИ 19, формирователь 20 интегральных характеристик модулярного кода, выход 21 остатка, выход 22 и выход 23 признака окончания работы устройства.
Входы 1 и 2 устройства соединены с. первыми информационными входами регистров делимого 6 и делителя 7 устройства. Разрядность регистров делимого 6 и делителя 7 составляет L- bi бит. Здесь и ниже 1=1 bi=]log2mi[(l=1, 2,...k); mi, m2,...,mk - основания модулярной системы счисления, являющиеся попарно простыми целыми числами, т. е. rm. mj=1; i, j=1, 2,...,k, iAj; через ]x[ обозначается наименьшее целое число, не меньшее х. Все модули mi(i=1,2.....к) выбираются нечетными,
Счетный вход счетчика 8 и вход управления сдвигом регистра 9 сдвига объединены и подключены к тактовому входу 3 устройства, вход обнуления счетчика 8 объединен с вторым входом второго элемента И 15 и подключен к выходу старшего разряда регистра 9 сдвига, установочный вход которого соединен с первым установочным входом 4 устройства.
Разрядность регистра 9 сдвига составляет Т+3 бит, где T=]log2k[, к - число оснований модулярной системы счисления. Выходы разрядов регистра 9 сдвига с нулевого по (Т+2)-й являются соответственно его выходами с первого по (Т+3)-й, вход нулевого разряда регистра 9 сдвига является его информационным входом, j-й выход регистра 9 сдвига соединен с j-входом элемента ИЛИ-НЕ 10 0=1,2.....Т+3), (Т+4)-й вход элемента ИЛИ-НЕ 10 объединен с вторым входом элемента ИЛИ 19, входом сброса регистра 18 частного, управляющим входом приема кода вспомогательного регистра 17 и подключен к второму установочному входу 5 устройства, выход элемента ИЛИ-НЕ 10 соединен с первым входом первого элемента И 14.
Блок 11 вычитания содержит вычитатели по модулям mi,m2,...,mk системы счисления.. Первый вход (вход уменьшаемого) и второй вход (вход вычитаемого) блока вычитания соединены с выходами регистров делимого 6 и делителя 7· устройства соответственно.
Блок 12 умножения содержит умножители по модулям ГП1,ГП2.....mk системы счисления и выполняет операцию модульного умножения входного числа на два.
Блок 13 сложения по входным величинам: модулярному коду ίχχ, χζ,,. ,/k) числа X, подаваемому на первый вход, и константе ν подаваемой на второй вход, формирует модулярный КОД ( У1, У2„ . -Ук ) числа Y = X + 2V, т.е. у) =# + 2V\ m/i)= 1,2,..к.Блок 13 сложения реализуется с помощью к долговременных запоминающих устройств, l-е из которых обладает емкостью 2ti+JI°92,O92M'· слов разрядностью bi бит и в память которого по адресу χι + 2bl ν записывается вычет yi (I =1,2.....k).
Элемент 16 задержки представляет собой цепочку из Т+3 последовательно соединенных регистров разрядностью L бит, вход перв·: о и выход (Т+3)-го из которых являются соответственно входом и выходом элемента 16 задержки. Управляющий вход выдачи кода (Т+3)-го регистра является управляющим входом выдачи кода элемента 16.
Разрядность вспомогательного регистра 17 и регистра 18 частного составляет L бит.
Формирователь 20 интегральных характеристик модулярного кода является известным устройством, представляющим собой упрощенный вариант параллельно-конвейерного устройства для формирования интегральных характеристик модулярного кода, быстродействие которого составляет Т+2 такта при пропускной способности одна операция в один такт. Формирователь 20 по входному модулярному· коду ( ···/&) числа X из диапазона D модулярной системы счисления осуществляет формирование лишь одной характеристики: знака S(X)£ {0,1} числа X; D={-M+1, -М+2..... М-1},
К- 1
М=Мк-1' m0, Мк-1= П mi, где т0 - вспомоI — 1 гательный модуль, выбираемый из условий о
jnk > 2mo+k-2, mo > k-1; $ 1=1,
2,...,к, через jv J m обозначается наименьший неотрицательный вычет, сравнимый с величиной Y по модулю т. '
Рассмотрим как работает устройство 5 для деления чисел в модулярной системе счисления. По сигналам ГуСт=1 и Г=1, подаваемым на первый 4 и второй 5 установочные входы устройства соответственно, в регистр 9 сдвига записывается (Т+3)-бито- Ю вый двоичный код единицы, регистр 18 частного обнуляется, первый элемент И 14 и элемент ИЛИ 19 в соответствии с булевыми выражениями Ti=S· (Г vd0 vdi.... νότ + 2) и Γ2=ΓΙ/Γι, 45 где S - выходная величина формирователя 20 интегральных характеристик модулярного кода, а - содержимое Его разряда регистра 9 сдвига (1=0,1.....Т+2), генерируют сигналы Г 1=0 и Г2=1, блокируя поступление нулевой информации с выходов элемента 16 задержки, вспомогательного регистра 17 и блока 12 умножения, в регистр 6 делимого подается модулярный код ( ai,O2,... Ok) делимого А, а в регистр 7 делителя и вспомогательный регистр 17 производится запись модулярного кода (βι, Д,... Д) делителя В ( са =|А)п| , β 1=1,2.....к; А > 0, В> 0).
На первом такте операции блок 11 вычитания получает модулярный код разности r£^=Ai-B0=A-B, который передается в элемент 16 задержки и формирователь 20 интегральных характеристик модулярного кода. В это же время блок 12 находит моду- 35 лярный код произведения В 1=2ВО, который запоминается в регистре 7 делителя. Заметим, что благодаря равенствам Г=0 и <50 =1 в данный момент Г 1=Г2=0.
После аналогичных действий в ходе 40 (j+1)-ro такта (j >0) в элемент 16 задержки и формирователь 20 интегральных характеристик модулярного кода с выхода блока 11 вычитания поступает модулярный код разности r{-^=Ai-Bj, а в регистре 7 делителя, формируется модулярный код числа Bj+1=2Bj.
На каждом такте работы устройства по сигналу Гт=1, подаваемому на тактовый вход 3 устройства, содержимое счетчика 8 увеличивается на единицу, а содержимое регистра 9 сдвига сдвигается на один бит в сторону старших разрядов, при этом выдвинутое значение дт +2 (Т+2)-го разряда поступает на вход сброса счетчика 8, обнуляя его в случае, когда <5т +2 =1. Впервые это происходит на (Т+3)-м такте. В этом же такте формирователь 20 интегральных характеристик модулярного кода завершает формирование знака
Si1) - S (Ri1)) числа
Ri1), который передается на соответствующие входы первого 14 и второго 15 элементов И. Если Sb1)^!, то на выходе второго элемента И 15 вырабатывается признак конца операции Eq = si1)дт + 2 = 1 .Искомые частные ОО и остаток R=A от деления А и В снимаются с выходов регистров делимого 6 и частного 18, а соответственно и с выходов 21 остатка 22 частного устройства. Если жеэ(1) =0, то описанный циклический процесс продолжа ется до тех пор, пока на некотором такте (обозначим его номер через T+Ji+4 (Ji > 0)) на выходе формирователя 20 интегральных характеристик модулярного кода не появится знак Sp\.i =1 отрицательной разности Rp\-1. Тогда в силу того, что <50 =<5i =<52.... =<5т+2=0. в ходе (T+Ji+4)-ro такта на выходах первого элемента И 14 и элемента ИЛИ 19 формируются единичные сигналы (Γι=Γ2=1), вследствие чего в регистр 6 делимого из элемента 16 задержки передается модулярный код числа A2=Rp), в ре гистр 7 делителя пересылается содержимое вспомогательного регистра 17 (модулярный код делителя В), а в младший разряд регистра 9 сдвига записывается единица. Параллельно с этим блок 13 сложения по входным величинам Со=0 и Ji, поступающим соответственно из регистра 18 частного и счетчика 8, получает модулярный код первого приближения Ci=C0+2i1 =2J1 частного С=[А/В], который по сигналу Γι=1 запоминается в регистре 18 частного.
На этом заканчивается первая итерация операции деления. Каждая из последующих итераций выполняется так же, как и первая. Итеративный процесс продолжается до тех пор, пока в ходе (Т+3)-го такта некоторой (г+1)-й итерации (г > 0) на выходе второго элемента И 15 не появится единичный сигнал Eq =1, указывающий на то, что форми рование частного с0, если г = 0
С = , ^211 , если г > 0
Ll = 1 и остатка R= | А|в=Аг+1 соответственно в регистрах частного 18 и делимого 6 завершено.
Claims (1)
- Формула изобретенияУстройство для деления чисел в модулярной системе счисления, содержащее регистры делимого и делителя, счетчик, регистр сдвига, элемент ИЛИ-HE, два элемента И, элемент задержки, вспомогатель7 ный регистр, элемент ИЛИ, блоки вычитания, сложения и умножения на два. причем вход делимого устройства соединен с первым информационным входом регистра делимого. второй информационный вход 5 которого соединен с выхоДом элемента задержки, вход которого соединен £ выходом блока вычитания, вход уменьшаемого которого соединен с выходами остатка устройства и регистра делимого, управляющий вход приема кода которого соединен с выходом Элемента ИЛИ и входом блокировки блока умножения на два, информационный вход которого соединен с входом вычитания блока вычитания и выходом регистра делителя, информационный вход которого соединен с входом делителя устройства и информационным входом вспомогательного регистра, Выход которого соединен с вторым информационным входом регистра делителя, тре- 20 тий информационный вход которого соединен с выходом блока умножения на два, тактовый вход устройства соединен со счетным входом счетчика и входом управления сдвигом регистра сдвига, установочный 25 Вход которого соединен с первым установочным выходом устройства, J-й выход регистра сдвига соединен с j-м входом элемента ИЛИ-НЕ 0=1, 2,.., Т+3; Т=]1одгк[, где к - число модулей системы счисления), (Т+4)-й вход 30 κοτςροΓΟ соединен с вторым установочным входом устройства, с первым входом элемента ИЛИ и с управляющим входом приема кода вспомогательного регистра, управляющий вход выдачи кода вспомогательного регистра соединен с одноименным входом элемента задержки, с информационным входом регистра сдвига, с вторым входом элемента ИЛИ и выходом первого элемента И, первый вход которого соединен с выходом элемента ИЛИ-НЕ, (Т+3)-й вход которого соединен с входом обнуления 10 счетчика и первым входом второго элементаИ, второй вход которого соединен с вторым входом первого элемента И, выход второго элемента И соединен с выходом признака окончания работы устройства, отличаю15 щеесятем,что,сцельюегоупрощения при делении в модулярной системе счисления, в него введены формирователь интегральных характеристик модулярного кода и регистр частного, выход которого соединен с выходом частного устройства и входом первого слагаемого блока сложения, вход второго слагаемого которого соединен с выходом счетчика, выход блока сложения соединен с информационным входом регистра частного, управляющий вход приема кода которого соединен с выходами первого элемента И, второй вход которого соединен с выходом формирователя интегральных характеристик модулярного кода, вход которого соединен с выходом блока вычитания, вход сброса регистра частного соединен с вторым установочным входом устройства.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
SU894745603A SU1683013A1 (ru) | 1989-10-03 | 1989-10-03 | Устройство дл делени чисел |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
SU894745603A SU1683013A1 (ru) | 1989-10-03 | 1989-10-03 | Устройство дл делени чисел |
Publications (1)
Publication Number | Publication Date |
---|---|
SU1683013A1 true SU1683013A1 (ru) | 1991-10-07 |
Family
ID=21472802
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
SU894745603A SU1683013A1 (ru) | 1989-10-03 | 1989-10-03 | Устройство дл делени чисел |
Country Status (1)
Country | Link |
---|---|
SU (1) | SU1683013A1 (ru) |
-
1989
- 1989-10-03 SU SU894745603A patent/SU1683013A1/ru active
Non-Patent Citations (1)
Title |
---|
Авторское свидетельство СССР Мг1287152,кл.G 06 F 7/72,1985. Авторское свидетельство СССР № 1241240, кл. G 06 F 7/72, 1984. * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6049815A (en) | Method and apparatus for finite field multiplication | |
US5101431A (en) | Systolic array for modular multiplication | |
US20100306299A1 (en) | Circuits and Methods for Performing Exponentiation and Inversion of Finite Field Elements | |
JPH02148225A (ja) | 有限体の乗法的逆数元を計算するデータ処理方法及び装置 | |
US20010054053A1 (en) | Method and apparatus for finite field multiplication | |
US6662201B1 (en) | Modular arithmetic apparatus and method having high-speed base conversion function | |
SU1683013A1 (ru) | Устройство дл делени чисел | |
US6912558B2 (en) | Multiplication module, multiplicative inverse arithmetic circuit, multiplicative inverse arithmetic control method, apparatus employing multiplicative inverse arithmetic circuit, and cryptographic apparatus and error correction decoder therefor | |
Orup et al. | VICTOR an efficient RSA hardware implementation | |
SU1756887A1 (ru) | Устройство дл делени чисел в модул рной системе счислени | |
SU518777A1 (ru) | Устройство дл вычислени среднеквадратического отклонени | |
SU1125618A2 (ru) | Устройство дл вычислени квадратного корн | |
SU1140114A1 (ru) | Устройство дл масштабировани чисел в остаточной системе счислени | |
SU1125619A1 (ru) | Устройство дл определени ранга числа | |
KR100438456B1 (ko) | 유한필드상의 디지트 시리얼 시스톨릭 곱셈기 | |
RU2680035C1 (ru) | Отказоустойчивый специализированный вычислитель систем булевых функций | |
RU2057364C1 (ru) | Программируемый цифровой фильтр | |
SU1132295A2 (ru) | Вычислительный узел цифровой сетки | |
SU691848A1 (ru) | Устройство дл вычислени корн п той степени | |
KR20090070061A (ko) | 다정도 캐리 세이브 가산기를 이용한 듀얼필드상의확장성있는 몽고매리 곱셈기 | |
SU1264168A1 (ru) | Генератор псевдослучайной последовательности | |
SU1672448A1 (ru) | Устройство дл сложени чисел в модул рной системе счислени | |
SU960807A2 (ru) | Функциональный преобразователь | |
SU1413625A1 (ru) | Последовательно-параллельное устройство дл умножени чисел | |
SU1317433A1 (ru) | Устройство дл вычислени экспоненциальной функции в модул рной системе счислени |