Полный одноразрядный сумматор по модулю

Изобретение относится к вычислительной технике и может быть использовано в цифровых вычислительных устройствах, а также в устройствах цифровой обработки сигналов и в криптографических приложениях. Техническим результатом является повышение быстродействия сумматора за счет параллельного выполнения операции сложения по модулю. Устройство содержит логические элементы «НЕ», «И», «ИЛИ». 1 ил., 1 табл.

 

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

Известен одноразрядный сумматор К155ИМ1, содержащий 4 двухвходовых логических элемента «И-НЕ», 2 двухвходовых логических элемента «ИЛИ», 6 двухвходовых логических элементов «И», 1 трехвходовый логический элемент «И», 1 четырехвходовый логический элемент «ИЛИ», 1 трехвходовый логический элемент «ИЛИ», 1 логический элемент «НЕ», соединенные между собой функционально (см. Справочник по интегральным микросхемам / Б.В.Тарабрин, С.В.Якубовский, Н.А.Барканов и др.; Под ред. Б.В.Тарабрина. - 2-е изд., перераб. и доп. - М.: Энергия, 1981, с.144).

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

Наиболее близким по технической сущности к заявляемому изобретению является полный одноразрядный сумматор по модулю, содержащий 7 логических элементов «НЕ», 7 двухвходовых логических элементов «И», 4 четырехвходовых логических элемента «И», 4 трехвходовых логических элемента «И», 2 трехвходовых логических элемента «ИЛИ», 1 четырехвходовый логический элемент «ИЛИ», 1 пятивходовый логический элемент «ИЛИ», соединенные между собой функционально (см. патент РФ №2427027, G06F 7/42, 20.08.2011, бюл. №23).

Недостатком данного устройства является низкое быстродействие.

Целью изобретения является повышение быстродействия.

Для достижения поставленной цели в полный одноразрядный сумматор по модулю, содержащий четыре двухвходовых логических элемента «И», три четырехвходовых логических элемента «И», шесть логических элементов «НЕ» и один логический элемент «ИЛИ», ко входам которого подключены выходы второго, третьего и четвертого двухвходовых логических элементов «И» и выход которого является выходом переноса сумматора, причем ко входу второго двухвходового логического элемента «И» подключены вход первого и второго числа суммирования сумматора, ко входу третьего двухвходового логического элемента «И» подключены вход первого числа и вход переноса сумматора, ко входу четвертого двухвходового логического элемента «И» подключены вход второго числа и вход переноса сумматора, вход первого числа сумматора подключен ко входу шестого логического элемента «НЕ», вход второго числа сумматора подключен ко входу пятого логического элемента «НЕ», вход переноса сумматора подключен ко входу четвертого логического элемента «НЕ», вход модуля сумматора подключен ко входу третьего логического элемента «НЕ», выход которого подключен к первому входу первого и к первому входу второго четырехвходовых логических элементов «И», вход переноса модуля сумматора подключен ко входу второго логического элемента «НЕ» и к первому входу пятого четырехвходового логического элемента «И», управляющий вход сумматора подключен ко входу первого логического элемента «НЕ», введены пять четырехвходовых, шестнадцать пятивходовых и восемь шестивходовых логических элементов «И», один двадцатичетырехвходовый и один девятивходовый логические элементы «ИЛИ», причем вход первого числа сумматора подключен к пятому входу третьего, четвертого, седьмого, восьмого, одиннадцатого, двенадцатого, пятнадцатого, шестнадцатого пятивходовых логических элементов «И», к шестому входу третьего, четвертого, седьмого, восьмого шестивходовых логических элементов «И», к четвертому входу третьего, четвертого, седьмого, восьмого четырехвходовых логических элементов «И», вход второго числа сумматора подключен к четвертому входу второго, третьего, шестого, седьмого, десятого, одиннадцатого, четырнадцатого, пятнадцатого пятивходовых логических элементов «И», к пятому входу второго, третьего, шестого, седьмого шестивходовых логических элементов «И», к третьему входу второго, третьего, шестого, седьмого четырехвходовых логических элементов «И», вход переноса сумматора подключен к третьему входу первого, третьего, пятого, седьмого, девятого, одиннадцатого, тринадцатого, пятнадцатого пятивходовых логических элементов «И», к четвертому входу второго, четвертого, шестого, восьмого шестивходовых логических элементов «И», ко второму входу первого, третьего, пятого, седьмого четырехвходовых логических элементов «И», вход модуля сумматора подключен к третьему входу пятого, шестого, седьмого, восьмого шестивходовых логических элементов «И», ко второму входу тринадцатого, четырнадцатого, пятнадцатого, шестнадцатого пятивходовых логических элементов «И», вход переноса модуля сумматора подключен к первому входу пятого, шестого, седьмого, восьмого и ко второму входу девятого, десятого, одиннадцатого, двенадцатого пятивходовых логических элементов «И», ко второму входу пятого, шестого, седьмого, восьмого шестивходовых логических элементов «И», к второму входу первого двухвходового логического элемента «И», к первому входу шестого, седьмого, восьмого четырехвходовых логических элементов «И», управляющий вход сумматора подключен к первому входу всех восьми шестивходовых логических элементов «И», выход первого логического элемента «НЕ» подключен к первому входу первого, второго, третьего, четвертого, девятого, десятого, одиннадцатого, двенадцатого пятивходовых логических элементов «И», выход второго логического элемента «НЕ» подключен ко второму входу первого, второго, третьего четвертого и к первому входу тринадцатого, четырнадцатого, пятнадцатого, шестнадцатого пятивходовых логических элементов «И», ко второму входу первого, второго, третьего, четвертого шестивходовых логических элементов «И», выход третьего логического элемента «НЕ» подключен к третьему входу первого, второго, третьего, четвертого шестивходовых логических элементов «И», ко второму входу пятого, шестого, седьмого, восьмого пятивходовых логических элементов «И», к первому входу третьего, четвертого четырехвходовых логических элементов «И», к первому входу первого двухвходового логического элемента «И», выход четвертого логического элемента «НЕ» подключен к третьему входу второго, четвертого, шестого, восьмого, десятого, двенадцатого, четырнадцатого, шестнадцатого пятивходовых логических элементов «И», к четвертому входу первого, третьего, пятого, седьмого шестивходовых логических элементов «И», ко второму входу второго, четвертого, шестого, восьмого четырехвходовых элементов «И», выход пятого логического элемента «НЕ» подключен к четвертому входу первого, четвертого, пятого, восьмого, девятого, двенадцатого, тринадцатого, шестнадцатого пятивходовых логических элементов «И», к пятому входу первого, четвертого, пятого, восьмого шестивходовых логических элементов «И», к третьему входу первого, четвертого, пятого, восьмого четырехвходовых логических элементов «И», выход шестого логического элемента «НЕ» подключен к пятому входу первого, второго, пятого, шестого, девятого, десятого, тринадцатого, четырнадцатого пятивходовых логических элементов «И», к шестому входу первого, второго, пятого, шестого шестивходовых логических элементов «И», к четвертому входу первого, второго, пятого, шестого четырехвходовых логических элементов «И», выходы всех шестнадцати пятивходовых и всех восьми шестивходовых логических элементов «И» подключены ко входам двадцатичетырехвходового логического элемента «ИЛИ», выход которого является информационным выходом сумматора, выход первого двухвходового и выходы всех восьми четырехвходовых логических элементов «И» подключены ко входам девятивходового логического элемента «ИЛИ», выход которого является выходом переноса модуля сумматора, выходы второго, третьего, четвертого двухвходовых логических элементов «И» подключены ко входам трехвходового логического элемента «ИЛИ», выход которого является выходом переноса сумматора.

Поставленная цель повышения быстродействия достигается за счет того, что сокращено количество элементов, через которые должен последовательно пройти сигнал при выполнении арифметической операции суммирования по модулю. В устройстве-прототипе (см. патент РФ №2427027, G06F 7/42, 20.08.2011, бюл. №23) количество последовательных элементов, через которые должен пройти сигнал при выполнении такой операции, составляет 6, а в предлагаемом устройстве количество таких элементов составляет 3, т.е. быстродействие устройства повышается в 2 раза.

Сущность изобретения заключается в реализации следующего способа суммирования двух чисел 0≤a<m и 0≤b<m по модулю m. Если (a+b)<m, то выполняется обычное суммирование S=a+b и эта сумма S является результатом. Если же (S=a+b)>m и по исходному условию сумма S при 0≤а<m и 0≤b<m не может превышать 2m-2, то из суммы S вычитается значение m и результат является суммой (a+b) mod m. При этом на выходе переноса сумматора, осуществляющего вычитание, появляется сигнал. Данный сигнал является признаком превышения суммы S значения m и используется для выбора результата (a+b) или (a+b)-m. В соответствии с этим полный одноразрядный сумматор по модулю, из которого затем может быть составлен сумматор по модулю для произвольного числа разрядов, должен выполнить суммирование ai, и bi разрядов с учетом разряда переноса pIni из младших разрядов и полученную сумму Si выдать на выход устройства при отсутствии сигнала переноса модуля со старшего разряда или вычесть из нее разряд модуля mi при наличии такового.

На фиг.1 представлена схема полного одноразрядного сумматора по модулю.

Полный одноразрядный сумматор по модулю содержит 6 логических элементов «НЕ» 10, 4 двухвходовых логических элементов «И» 14, 8 четырехвходовых логических элементов «И» 13, 16 пятивходовых логических элементов «И» 11, 8 шестивходовых логических элементов «И» 12, 1 трехвходовый логический элемент «ИЛИ» 17, 1 девятивходовый логический элемент «ИЛИ» 16, 1 двадцатичетырехвходовый логический элемент «ИЛИ» 15 с соответствующими связями. На вход 1 подается разряд первого числа суммирования ai, на вход 2 - второго числа суммирования bi. Вход 3 служит входом переноса числа pIni. На вход 4 подается разряд модуля mi. Вход 5 служит входом переноса модуля pmIni. Вход 6 является управляющим входом W. Выход 7 является выходом переноса pOuti, выход 8 - выходом переноса модуля pmOuti. Выход 9 является информационным выходом Si.

Одноразрядный сумматор по модулю работает следующим образом. Полный одноразрядный сумматор по модулю состоит из логических элементов «НЕ», «И», «ИЛИ», соединенных таким образом, чтобы выполнялись следующие вычисления:

Полный одноразрядный сумматор по модулю, содержащий четыре двухвходовых логических элемента «И», три четырехвходовых логических элемента «И», шесть логических элемента «НЕ» и один логический элемент «ИЛИ», ко входам которого подключены выходы второго, третьего и четвертого двухвходовых логических элементов «И» и выход которого является выходом переноса сумматора, причем ко входу второго двухвходового логического элемента «И» подключены вход первого и второго числа суммирования сумматора, ко входу третьего двухвходового логического элемента «И» подключены вход первого числа и вход переноса сумматора, ко входу четвертого двухвходового логического элемента «И» подключены вход второго числа и вход переноса сумматора, вход первого числа сумматора подключен ко входу шестого логического элемента «НЕ», вход второго числа сумматора подключен ко входу пятого логического элемента «НЕ», вход переноса сумматора подключен ко входу четвертого логического элемента «НЕ», вход модуля сумматора подключен ко входу третьего логического элемента «НЕ», выход которого подключен к первому входу первого и к первому входу второго четырехвходовых логических элементов «И», вход переноса модуля сумматора подключен ко входу второго логического элемента «НЕ» и к первому входу пятого четырехвходового логического элемента «И», управляющий вход сумматора подключен ко входу первого логического элемента «НЕ», отличающийся тем, что в него введены пять четырехвходовых, шестнадцать пятивходовых и восемь шестивходовых логических элементов «И», один двадцатичетырехвходовый и один девятивходовый логических элементов «ИЛИ», причем вход первого числа сумматора подключен к пятому входу третьего, четвертого, седьмого, восьмого, одиннадцатого, двенадцатого, пятнадцатого, шестнадцатого пятивходовых логических элементов «И», к шестому входу третьего, четвертого, седьмого, восьмого шестивходовых логических элементов «И», к четвертому входу третьего, четвертого, седьмого, восьмого четырехвходовых логических элементов «И», вход второго числа сумматора подключен к четвертому входу второго, третьего, шестого, седьмого, десятого, одиннадцатого, четырнадцатого, пятнадцатого пятивходовых логических элементов «И», к пятому входу второго, третьего, шестого, седьмого шестивходовых логических элементов «И», к третьему входу второго, третьего, шестого, седьмого четырехвходовых логических элементов «И», вход переноса сумматора подключен к третьему входу первого, третьего, пятого, седьмого, девятого, одиннадцатого, тринадцатого, пятнадцатого пятивходовых логических элементов «И», к четвертому входу второго, четвертого, шестого, восьмого шестивходовых логических элементов «И», ко второму входу первого, третьего, пятого, седьмого четырехвходовых логических элементов «И», вход модуля сумматора подключен к третьему входу пятого, шестого, седьмого, восьмого шестивходовых логических элементов «И», ко второму входу тринадцатого, четырнадцатого, пятнадцатого, шестнадцатого пятивходовых логических элементов «И», вход переноса модуля сумматора подключен к первому входу пятого, шестого, седьмого, восьмого и ко второму входу девятого, десятого, одиннадцатого, двенадцатого пятивходовых логических элементов «И», ко второму входу пятого, шестого, седьмого, восьмого шестивходовых логических элементов «И», к второму входу первого двухвходового логического элемента «И», к первому входу шестого, седьмого, восьмого четырехвходовых логических элементов «И», управляющий вход сумматора подключен к первому входу всех восьми шестивходовых логических элементов «И», выход первого логического элемента «НЕ» подключен к первому входу первого, второго, третьего, четвертого, девятого, десятого, одиннадцатого, двенадцатого пятивходовых логических элементов «И», выход второго логического элемента «НЕ» подключен ко второму входу первого, второго, третьего, четвертого и к первому входу тринадцатого, четырнадцатого, пятнадцатого, шестнадцатого пятивходовых логических элементов «И», ко второму входу первого, второго, третьего, четвертого шестивходовых логических элементов «И», выход третьего логического элемента «НЕ» подключен к третьему входу первого, второго, третьего, четвертого шестивходовых логических элементов «И», ко второму входу пятого, шестого, седьмого, восьмого пятивходовых логических элементов «И», к первому входу третьего, четвертого четырехвходовых логических элементов «И», к первому входу первого двухвходового логического элемента «И», выход четвертого логического элемента «НЕ» подключен к третьему входу второго, четвертого, шестого, восьмого, десятого, двенадцатого, четырнадцатого, шестнадцатого пятивходовых логических элементов «И», к четвертому входу первого, третьего, пятого, седьмого шестивходовых логических элементов «И», ко второму входу второго, четвертого, шестого, восьмого четырехвходовых элементов «И», выход пятого логического элемента «НЕ» подключен к четвертому входу первого, четвертого, пятого, восьмого, девятого, двенадцатого, тринадцатого, шестнадцатого пятивходовых логических элементов «И», к пятому входу первого, четвертого, пятого, восьмого шестивходовых логических элементов «И», к третьему входу первого, четвертого, пятого, восьмого четырехвходовых логических элементов «И», выход шестого логического элемента «НЕ» подключен к пятому входу первого, второго, пятого, шестого, девятого, десятого, тринадцатого, четырнадцатого пятивходовых логических элементов «И», к шестому входу первого, второго, пятого, шестого шестивходовых логических элементов «И», к четвертому входу первого, второго, пятого, шестого четырехвходовых логических элементов «И», выходы всех шестнадцати пятивходовых и всех восьми шестивходовых логических элементов «И» подключены ко входам двадцатичетырехвходового логического элемента «ИЛИ», выход которого является информационным выходом сумматора, выход первого двухвходового и выходы всех восьми четырехвходовых логических элементов «И» подключены ко входам девятивходового логического элемента «ИЛИ», выход которого является выходом переноса модуля сумматора, выходы второго, третьего, четвертого двухвходовых логических элементов «И» подключены ко входам трехвходового логического элемента «ИЛИ», выход которого является выходом переноса сумматора.



 

Похожие патенты:

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

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

Изобретение относится к вычислительной технике. .

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

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

Изобретение относится к вычислительной технике и может быть использовано в цифровых вычислительных устройствах для формирования кодовых последовательностей. .

Изобретение относится к области вычислительной техники и может быть использовано в вычислительных системах для преобразования двоичных кодов в коды системы остаточных классов (СОК).

Изобретение относится к вычислительным модулярным нейрокомпьютерным системам и предназначено для выполнения основной операции деления модулярных чисел. .

Изобретение относится к вычислительной технике и, в частности, к модулярным нейрокомпьютерным средствам и предназначено для определения ошибок в кодовых конструкциях непозиционного кода полиномиальной системы классов вычетов (ПСКВ), представленных в расширенных полях Галуа GF(2v).

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

Изобретение относится к вычислительной технике и предназначено для построения быстродействующих параллельно-конвейерных умножителей

Изобретение относится к вычислительной технике и может быть использовано в цифровых вычислительных устройствах, а также в устройствах цифровой обработки сигналов и в криптографических приложениях. Техническим результатом является расширение функциональных возможностей за счет введения операции суммирования по модулю. Устройство содержит n-разрядный и (n+1)-разрядный сумматоры, мультиплексор и регистр. 1 ил.

Изобретение относится к вычислительной технике и предназначено для построения быстродействующих параллельно-конвейерных умножителей. Техническим результатом является повышение скорости вычисления. Способ содержит этапы: осуществляют параллельную запись остатка по основанию p1 множимого в элементы памяти, параллельно выполняют подсчет количества единиц bi в каждом столбце i-ой матрицы, сдвигают двоичное число b1 на один разряд вправо, суммируют с числом b2, полученную сумму b 2 s сдвигают на один разряд вправо и суммируют с числом b3. Аналогичным образом осуществляют сдвиг полученных сумм и суммирование их с последующими числами до получения суммы b 2 * m − 1 s , при этом младший разряд числа b1 является первым разрядом s1 произведения, младший разряд каждой полученной суммы b i s является i-ым разрядом произведения. Сдвигают двоичное число b 2 * m − 1 s , младший разряд полученного числа является (2*m)-м разрядом искомого произведения S2*m. В случае если s больше p1, производится коррекция полученного произведения s путем последовательного вычитания из s основания p1 до тех пор, пока s не станет меньше p1, иначе коррекция не производится, аналогично вычисляются и корректируются произведения m-разрядных остатков по остальным основаниям, одновременно суммируют порядки сомножителей, полученная сумма является порядком искомого произведения. 2 ил.

Изобретение относится к вычислительной технике и может быть использовано в вычислительных системах, функционирующих в системе остаточных классов. Техническим результатом является повышение быстродействия устройства и сокращение аппаратных затрат. Устройство содержит входные регистры, схемы определения знака, схемы сдвига полярности чисел, просмотровые таблицы (память) для хранения констант и , сумматор и логический элемент «исключающее или», схему анализа знаков чисел. 3 ил.

Устройство относится к вычислительной технике и может быть использовано в вычислительных системах, функционирующих в системе остаточных классов. Техническим результатом является повышение быстродействия устройства определения знака числа и сокращения оборудования. Устройство содержит входные регистры для временного хранения разрядов исходного числа, память для хранения произведений и параллельный сумматор. 3 ил.

Изобретение относится к вычислительной технике и может быть использовано для выполнения операции умножения чисел, представленных в модулярно-позиционном формате с плавающей точкой на универсальных многоядерных процессорах. Техническим результатом является повышение скорости вычисления за счет замены операции умножения t-разрядных позиционных мантисс сомножителей n параллельно выполняемыми операциями умножения q-разрядных знакопозиций чисел в системе счисления в остаточных классах. Способ реализуется на универсальном многоядерном вычислителе, содержащем g k-разрядных вычислительных ядер, каждое из которых обеспечивает выполнение системы из f операций, в состав которых входят операции алгебраического умножения и алгебраического сложения над числами, представленными в позиционных целочисленных форматах данных. При организации выполнения операций умножения каждое число, множитель и множимое, представляется в модулярно-позиционном формате с плавающей точкой в виде (1+k+q·n) - элементного вектора.

Изобретение относится к вычислительной технике, в частности к модулярным спецпроцессорам, функционирующим в полиномиальной системе классов вычетов и способным сохранять работоспособное состояние при возникновении ошибки за счет реконфигурации структуры. Техническим результатом является повышение скорости преобразования. Устройство содержит вход запуска устройства, группу сдвиговых регистров, блок синхронизации, выход устройства, блоки трехвходовых элементов И, сумматор по модулю два, группу информационных входов, группу управляющих входов устройства, группу блоков расчета ортогональных базисов, каждый из которых содержит блоки памяти, сумматор по модулю, регистр, преобразователь индекс-элемент, умножитель. 2 ил., 2 табл.

Изобретение относится к вычислительной технике и предназначено для выполнения операции сравнения двух чисел, представленных в системе остаточных классов. Техническим результатом является повышение быстродействия и обеспечение контроля корректности результата операции сравнения. Представленные положения обеспечиваются за счет использования новой интервально-позиционной характеристики модулярной арифметики, которая аппроксимирует с двух сторон относительную величину числа в модулярном представлении. Устройство содержит группы входных регистров для хранения сравниваемых модулярных чисел, блоки вычисления интервально-позиционной характеристики, блок поразрядного сравнения модулярных чисел, блоки проверки правильности интервально-позиционных характеристик, блок сравнения интервально-позиционных характеристик, двухвходовой двоичный дешифратор. 4 ил.

Изобретение относится к вычислительной технике и предназначено для выполнения операции определения знака числа, представленного в системе остаточных классов. Техническим результатом является повышение быстродействия и обеспечение контроля корректности определения знака. Устройство содержит группу входных регистров для хранения числа, представленного в коде симметричной системы остаточных классов, энергонезависимые регистры для хранения интервально-позиционной характеристики константы - наибольшего положительного числа в симметричной системе остаточных классов, блок вычисления интервально-позиционной характеристики, блок проверки правильности интервально-позиционной характеристики, блок сравнения интервально-позиционных характеристик, двухвходовой двоичный дешифратор. 3 ил.

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