RU2586574C1 - Полиномиальный модулярный вычислитель систем булевых функций с обнаружением ошибок - Google Patents

Полиномиальный модулярный вычислитель систем булевых функций с обнаружением ошибок Download PDF

Info

Publication number
RU2586574C1
RU2586574C1 RU2015125333/08A RU2015125333A RU2586574C1 RU 2586574 C1 RU2586574 C1 RU 2586574C1 RU 2015125333/08 A RU2015125333/08 A RU 2015125333/08A RU 2015125333 A RU2015125333 A RU 2015125333A RU 2586574 C1 RU2586574 C1 RU 2586574C1
Authority
RU
Russia
Prior art keywords
input
polynomial
inputs
outputs
values
Prior art date
Application number
RU2015125333/08A
Other languages
English (en)
Inventor
Артем Константинович Вишневский
Николай Александрович Михеев
Сергей Георгиевич Жданов
Original Assignee
Федеральное государственное казенное военное образовательное учреждение высшего профессионального образования "Военная академия Ракетных войск стратегического назначения имени Петра Великого" Министерства обороны Российской Федерации
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Федеральное государственное казенное военное образовательное учреждение высшего профессионального образования "Военная академия Ракетных войск стратегического назначения имени Петра Великого" Министерства обороны Российской Федерации filed Critical Федеральное государственное казенное военное образовательное учреждение высшего профессионального образования "Военная академия Ракетных войск стратегического назначения имени Петра Великого" Министерства обороны Российской Федерации
Priority to RU2015125333/08A priority Critical patent/RU2586574C1/ru
Application granted granted Critical
Publication of RU2586574C1 publication Critical patent/RU2586574C1/ru

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/60Methods or arrangements for performing computations using a digital non-denominational number representation, i.e. number representation without radix; Computing devices using combinations of denominational and non-denominational quantity representations, e.g. using difunction pulse trains, STEELE computers, phase computers
    • G06F7/64Digital differential analysers, i.e. computing devices for differentiation, integration or solving differential or integral equations, using pulses representing increments; Other incremental computing devices for solving difference equations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0727Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a storage system, e.g. in a DASD or network based storage system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/60Methods or arrangements for performing computations using a digital non-denominational number representation, i.e. number representation without radix; Computing devices using combinations of denominational and non-denominational quantity representations, e.g. using difunction pulse trains, STEELE computers, phase computers
    • G06F7/72Methods or arrangements for performing computations using a digital non-denominational number representation, i.e. number representation without radix; Computing devices using combinations of denominational and non-denominational quantity representations, e.g. using difunction pulse trains, STEELE computers, phase computers using residue arithmetic
    • G06F7/721Modular inversion, reciprocal or quotient calculation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/60Methods or arrangements for performing computations using a digital non-denominational number representation, i.e. number representation without radix; Computing devices using combinations of denominational and non-denominational quantity representations, e.g. using difunction pulse trains, STEELE computers, phase computers
    • G06F7/72Methods or arrangements for performing computations using a digital non-denominational number representation, i.e. number representation without radix; Computing devices using combinations of denominational and non-denominational quantity representations, e.g. using difunction pulse trains, STEELE computers, phase computers using residue arithmetic
    • G06F7/722Modular multiplication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/60Methods or arrangements for performing computations using a digital non-denominational number representation, i.e. number representation without radix; Computing devices using combinations of denominational and non-denominational quantity representations, e.g. using difunction pulse trains, STEELE computers, phase computers
    • G06F7/72Methods or arrangements for performing computations using a digital non-denominational number representation, i.e. number representation without radix; Computing devices using combinations of denominational and non-denominational quantity representations, e.g. using difunction pulse trains, STEELE computers, phase computers using residue arithmetic
    • G06F7/727Modulo N arithmetic, with N being either (2**n)-1,2**n or (2**n)+1, e.g. mod 3, mod 4 or mod 5

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Pure & Applied Mathematics (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Physics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • Algebra (AREA)
  • Quality & Reliability (AREA)
  • Error Detection And Correction (AREA)

Abstract

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

Description

Предлагаемое устройство относится к вычислительной технике и может быть использовано как специализированный вычислитель - универсальный в классе логических вычислений.
Известен самопроверяемый модулярный вычислитель систем логических функций [1], содержащий блок конъюнкций, входы которого являются входами устройства для подачи n булевых переменных, выходы которого подключены к первому блоку памяти, предназначенному для хранения коэффициентов первого полинома избыточной модулярной числовой нормальной формы, первый сумматор, второй блок памяти, входы которого соединены с выходами блока конъюнкций, при этом второй блок памяти предназначен для хранения коэффициентов второго полинома избыточной модулярной числовой нормальной формы, выходы первого блока памяти подключены к входам первого сумматора, выходы которого подключены к (s+1)-му, (s+2)-му, …, (d+s)-му входам (d - количество реализуемых булевых функций, составляющих информационные разряды разделимого AN-кода, s - количество избыточных булевых функций, соответствующих избыточным разрядам разделимого AN-кода) блока вычисления остатка по модулю и информационным входам регистра памяти, выходы которого являются выходами устройства выдачи значений d булевых функций, выходы второго блока памяти подключены к входам второго сумматора, выходы которого подключены к 1-му, 2-му, …, s-му входам блока вычисления остатка по модулю, выходы которого подключены к входам логического элемента ИЛИ-НЕ, выход которого подключен к первому входу элемента И, второй вход которого соединен с входом подачи синхроимпульсов устройства, а выход подключен к синхровходу регистра памяти.
Наиболее близкое по сущности технического решения заявленному устройству является самопроверяемый специализированный вычислитель систем булевых функций [2], содержащий блоки памяти, предназначенные для хранения коэффициентов полиномов избыточной числовой нормальной формы, входы которых являются входами устройства, к которым подключена шина подачи n булевых переменных, выходы которых соединены со входами многоместных сумматоров, выходы которых соединены с информационными входами многоканальных мультиплексоров, выходы первого мультиплексора подключены к (s+1)-му, (s+2)-му, …, (d+s)-му входам (d - количество реализуемых булевых функций, составляющие информационные разряды разделенного AN-кода, s - количество избыточных булевых функций, соответствующих избыточным разрядам разделенного AN-кода) блока вычисления остатка по модулю и информационным входам регистра памяти, выходы которого являются выходами устройства выдачи значений d булевых функций, выходы второго мультиплексора подключены к 1-му, 2-му, …, s-му входам блока вычисления остатка по модулю, выходы которого подключены к входам элемента ИЛИ-НЕ, выход которого подключен к первому входу элемента И, второй вход которого подключен к входу подачи синхроимпульсов устройства, а выход подключен к синхровходу регистра памяти, шина подачи коэффициентов полиномов избыточной числовой нормальной формы, подключенная к входам блоков памяти, многоканальные мультиплексоры выделения информационных разрядов реализуемых и избыточных булевых функций, блок памяти хранения адресов информационных разрядов, к входу которого подключена шина адреса, выходы которого подключены к адресным входам мультиплексоров.
Недостаток - низкая достоверность функционирования устройства.
Цель - повышение достоверности функционирования устройства.
Поставленная цель достигается тем, что в полиномиальный модулярный вычислитель систем булевых функций с обнаружением ошибок вычислений, содержащий блоки памяти хранения значений коэффициентов информационного полинома, управляющие входы которых подключены к управляющим входам устройства подачи значений коэффициентов информационного полинома, многоканальный мультиплексор, управляющий вход которого подключен к управляющему вход устройства подачи значения аддитивной переменной Х, устройство вычисления остатка по модулю Р, многовходовый логический элемент ИЛИ-НЕ, выход которого подключен к первому входу двухвходового логического элемента И, второй вход которого подключен к управляющему входу устройства подачи синхроимпульсов, выход которого подключен к управляющему входу регистра памяти, выходы которого являются выходами устройства выдачи значений булевых функций, введены 2n блоков памяти хранения значений вычетов аддитивной переменной X по модулю Р, управляющие входы которых подключены к управляющему входу устройства подачи значений вычетов аддитивной переменной X по модулю Р, а выходы подключены к информационным входам многоканального мультиплексора, 2k блоков памяти хранения значений коэффициентов контрольного полинома, управляющие входы которых подключены к управляющему входу устройства подачи значений коэффициентов контрольного полинома, 2k-1 блоков памяти хранения значений коэффициентов полинома-остатка, управляющие входы которых подключены к управляющему входу устройства подачи значений коэффициентов полинома-остатка, 2n умножителей по модулю Ρ информационного полинома, 1-е входы которых подключены к выходам многоканального мультиплексора, а 2-е входы подключены к выходам блоков памяти хранения значений коэффициентов информационного полинома, 2k умножителей по модулю Ρ контрольного полинома, 1-е входы которых подключены к выходам многоканального мультиплексора, а 2-е входы подключены к выходам блоков памяти хранения значений коэффициентов контрольного полинома, 2k-1 умножителей по модулю Ρ полинома-остатка, 1-е входы которых подключены к выходам многоканального мультиплексора, а 2-е входы подключены к выходам блоков памяти хранения значений коэффициентов полинома-остатка, 3-й многовходовых сумматора по модулю Р, где входы 1-го сумматора подключены к выходам умножителей по модулю Ρ информационного полинома, а выходы подключены к 1-й группе входов устройства вычисления остатка по модулю Ρ и к входам регистра памяти, входы 2-го сумматора подключены к выходам умножителей по модулю Ρ контрольного полинома, а выходы подключены к 2-й группе входов устройства вычисления остатка по модулю Р, входы 3-го сумматора подключены к выходам умножителей по модулю Ρ полинома-остатка, s двухвходовых логических элементов ИСКЛЮЧАЮЩЕЕ ИЛИ, 1-е входы которых подключены к выходам устройства вычисления остатка по модулю Р, а 2-е входы подключены к выходам 3-го многовходового сумматора по модулю Р.
Для представления системы булевых функций (СБФ) ƒ1, …, ƒd интерполяционным полиномом интерпретируем значения наборов переменных СБФ и значения функций на этих наборах как записи чисел в двоичной системе счисления и затем в десятичной:
Figure 00000001
В результате данной интерпретации получим функцию F(X), область значения и область определения которой {0, 1, …, 2n-1}.
Значения аргумента X являются равноудаленными узлами интерполирования, что обеспечивает возможность применения различных способов интерполяции к интерпретированной форме записи СБФ.
Воспользуемся методом интерполяции Лагранжа для представления F(X) степенным полиномом:
Figure 00000002
или
Figure 00000003
где ai - коэффициенты полинома, полученные после выполнения численных операций (i=0, 1, …, 2n-1).
Известно [3], что
Figure 00000004
где Ρ - простое число,
φ(P) - функция Эйлера.
Тогда (1) примет вид:
Figure 00000005
где bi≡ai (modΡ), i=0, 1, …, s-1;
Ρ - простое число, Ρ>s.
Пример 1. Пример представления системы булевых функций модулярным интерполяционным полиномом, заданной таблицей истинности:
Figure 00000006
Построим методом Лагранжа интерполяционный полином вида:
Figure 00000007
.
Используя свойство (2), полученный интерполяционный полином в модулярной форме примет вид:
Figure 00000008
Вычисление полинома.
Пусть X=6, то есть х1=1, х2=1, х3=0, тогда
H(Х)=7+8·6+5·62+4·63+64+6·66+9·67 (mod 11)=2848411 (mod 11)=5 (mod 11)=(101)2 (mod 11),
где соответственно старший разряд двоичного представления результата вычисления полинома соответствует ƒ1=1, ƒ2=0, ƒ3=1.
Рассмотрим выполнение контроля вычислений системы булевых функций в интерполяционной модулярной форме с использованием помехоустойчивого циклического кода.
Пусть полином (2) является информационным полиномом:
Figure 00000009
тогда
Figure 00000010
контрольный полином, соответствующий системе булевых функций, существенно зависимой от k переменных, и соответственно полином-остаток:
Figure 00000011
Пример 2. Рассмотрим построение контрольного полинома и получение полинома-остатка, для интерполяционного модулярного полинома (4), введем ошибку в вычисление информационного полинома:
К(Х)=4+Х+Х3 (mod 11),
соответствующий системе булевых функций:
Figure 00000012
тогда полином-остаток примет вид:
R(X)=7+7Х+5Х2 (mod 11).
Вычисление значения полинома с контролем ошибок. Пусть ошибка произошла при записи коэффициентов (коэффициент при X4 равен 5) информационного полинома, X=6, тогда:
Figure 00000013
K(Х)=4+6+63 (mod 11)=6 (mod 11),
Figure 00000014
,
R(X)=7+7·6+5·62 (mod 11)=6 (mod 11),
в результате чего
Figure 00000015
- ОШИБКА.
Структурная схема предлагаемого устройства представлена на фиг. 1, которое содержит 1.1, …, 1.2n - блоки памяти хранения значений вычетов аддитивной переменной X по модулю Р, 2.1, …, 2.2n - блоки памяти хранения значений коэффициентов информационного полинома; 3.1, …, 2.2k - блоки памяти хранения значений коэффициентов контрольного полинома; 4.1, …, 4.2k-1 - блоки памяти хранения значений коэффициентов полинома-остатка; 5 - многоканальный мультиплексор; 6.1, …, 6.2n - умножители по модулю Ρ [4] информационного полинома; 7.1, …, 7.2k - умножители по модулю Ρ контрольного полинома; 8.1, …, 8.2k-1 - умножители по модулю Ρ полинома-остатка; 9.1, …, 9.3 - многовходовые сумматоры по модулю Ρ [5]; 10 - устройство вычисления остатка по модулю Ρ [6]; 11.1…11.s - двухвходовые логические элементы ИСКЛЮЧАЮЩЕЕ ИЛИ; 12 - многовходовый логический элемент ИЛИ-НЕТ; 13 - регистр памяти; 14 - двухвходовый логический элемент И; 15 - управляющий вход устройства подачи значений коэффициентов полинома-остатка; 16 - управляющий вход устройства подачи значений коэффициентов контрольного полинома; 17 - управляющий вход устройства подачи значений коэффициентов информационного полинома; 18 - управляющий вход устройства подачи значений вычетов аддитивной переменной X по модулю Р; 19 - управляющий вход устройства подачи значения аддитивной переменной X; 20 - управляющий вход устройства подачи синхроимпульсов; 21.1, …, 21.d - выходы устройства выдачи значений булевых функций.
Управляющий вход устройства подачи значений вычетов аддитивной переменной X по модулю Ρ 18 является управляющим входом блоков памяти хранения значений вычетов аддитивной переменной X по модулю Ρ 1.1, …, 1.2n, управляющий вход устройства подачи значений коэффициентов информационного полинома 17 является управляющим входом блоков памяти хранения значений коэффициентов информационного полинома 2.1, …, 2.2n, управляющий вход устройства подачи значений коэффициентов контрольного полинома 16 является управляющим входом блоков памяти хранения значений коэффициентов контрольного полинома 3.1, …, 3.2k, управляющий вход устройства подачи значений коэффициентов полинома-остатка 15 является управляющим входом блоков памяти хранения значений коэффициентов полинома-остатка 4.1, …, 4.2k-1, управляющий вход устройства подачи значения аддитивной переменной X 19 является управляющим входом многоканального мультиплексора 5, входы которого подключены к выходам блоков памяти хранения значений вычетов аддитивной переменной X по модулю Ρ 1.1, …, 1.2n, где 1-й вход многоканального мультиплексора подключен к выходу блока памяти 1.1, и так далее, и 2n-й вход многоканального мультиплексора подключен к выходу блока памяти 1.2n, умножители по модулю Ρ информационного полинома 6.1, …, 6.2n, 1-е входы которых подключены к выходам многоканального мультиплексора 5, где 1-й вход умножителя 6.1 подключен к 1-му выходу многоканального мультиплексора 5, и так далее, и 1-й вход умножителя 6.2n подключен к 2n-му выходу многоканального мультиплексора 5, а 2-е входы подключены к выходам блоков памяти 2.1, …, 2.2n, где 2-й вход умножителя 6.1 подключен к выходу бока памяти 2.1, и так далее, и 2-й вход умножителя 6.2n подключен к выходу бока памяти 2.2n, умножители по модулю Ρ контрольного полинома 7.1, …, 7.2k, 1-е входы которых подключены к выходам многоканального мультиплексора 5, где 1-й вход умножителя 7.1 подключен к 1-му выходу многоканального мультиплексора 5, и так далее, и 1-й вход умножителя 7.2k подключен к 2k-му выходу многоканального мультиплексора 5, а 2-е входы подключены к выходам блоков памяти 3.1, …, 3.2k, где 2-й вход умножителя 7.1 подключен к выходу бока памяти 3.1, и так далее, и 2-й вход умножителя 7.2k подключен к выходу бока памяти 3.2k, умножители по модулю Ρ полинома-остатка 8.1, …, 8.2k-1, 1-е входы которых подключены к выходам многоканального мультиплексора 5, где 1-й вход умножителя 8.1 подключен к 1-му выходу многоканального мультиплексора 5, и так далее, и 1-й вход умножителя 8.2k-1 подключен к 2k-1-му выходу многоканального мультиплексора 5, а 2-е входы подключены к выходам блоков памяти 4.1, …, 4.2k-1, где 2-й вход умножителя 8.1 подключен к выходу бока памяти 4.1, и так далее, и 2-й вход умножителя 8.2k-1 подключен к выходу бока памяти 4.2k-1, многовходовые сумматоры по модулю Ρ 9.1, …, 9.3, где входы сумматора 9.1 подключены к выходам умножителей по модулю Ρ информационного полинома 6.1, …, 6.2n, а выходы с 1-го по d-й подключены соответственно к входам с 1-го по d-й 2-й группы входов устройства вычисления остатка по модулю Ρ 10 и подключены соответственно к входам с 1-го по d-й регистра памяти 13, входы сумматора 9.2 подключены к выходам умножителей по модулю Ρ контрольного полинома 7.1, …, 7.2k, а выходы с 1 по t-й подключены соответственно к входам с 1-го по t-й 2-й группы входов устройства вычисления остатка по модулю Ρ 10, входы сумматора 9.3 подключены к выходам умножителей по модулю Ρ полинома-остатка 8.1, …, 8.2k-1, а выходы с 1-го по s-й подключены соответственно к 2-м входам логических элементов ИСКЛЮЧАЮЩЕЕ ИЛИ 11.1, …, 11.s, первые входы которых подключены соответственно к выходам с 1-го по s-й устройства вычисления остатка по модулю Ρ 10, а выходы подключены соответственно к входам с 1-го по s-й многовходового логического элемента ИЛИ-НЕ 12, выход которого подключен к первому входу логического элемента И 14, 2-й вход которого подключен к управляющему входу устройства подачи синхроимпульсов, а выход подключен к управляющему входу регистра памяти 13, выходы которого являются выходами устройства выдачи значений булевых функций. 21.1, …, 21.d.
Работа полиномиального модулярного вычислителя систем булевых функций с обнаружением ошибок осуществляется следующим образом. В исходном состоянии с помощью управляющего сигнала, поступающего с управляющего входа устройства подачи значений вычетов аддитивной переменной X по модулю Ρ 18 на управляющие входы блоков памяти хранения значений вычетов аддитивной переменной X по модулю Ρ 1.1, …, 1.2n, осуществляется запись предвычисленных значений переменной X по модулю Ρ:
Figure 00000016
,
Figure 00000017
, …,
Figure 00000018
(Χ=0, 1, …, Ρ-1), которые затем поступают на входы многоканального мультиплексора 5. С помощью управляющего сигнала, поступающего с управляющего входа устройства подачи значений коэффициентов информационного полинома 17 на управляющие входы блоков памяти хранения значений коэффициентов информационного полинома 2.1, …, 2.2n, осуществляется запись коэффициентов информационного полинома
Figure 00000019
, которые затем поступают на вторые входы умножителей по модулю Ρ информационного полинома 6.1, …, 6.2n, где b0 поступает на вход умножителя 6.1, и так далее, и
Figure 00000020
поступает на вход умножителя 6.2n. С помощью управляющего сигнала, поступающего с управляющего входа устройства подачи значений коэффициентов контрольного полинома 16 на управляющие входы блоков памяти хранения значений коэффициентов контрольного полинома 3.1, …, 3.2k, осуществляется запись коэффициентов контрольного полинома
Figure 00000021
, которые затем поступают на вторые входы умножителей по модулю Ρ контрольного полинома 7.1, …, 7.2k, где с0 поступает на вход умножителя 7.1, и так далее, и
Figure 00000022
поступает на вход умножителя 7.2n. С помощью управляющего сигнала, поступающего с управляющего входа устройства подачи значений коэффициентов полинома-остатка 15, осуществляется запись коэффициентов полинома-остатка
Figure 00000023
, которые затем поступают на вторые входы умножителей по модулю Ρ контрольного полинома 8.1, …, 8.2k-1, где r0 поступает на вход умножителя 8.1, и так далее, и
Figure 00000024
поступает на вход умножителя 8.2k-1. В момент времени, соответствующий началу преобразования, с помощью управляющего сигнала, поступающего с управляющего входа устройства подачи значения аддитивной переменной X 19 на управляющий вход многоканального мультиплексора 5, осуществляется выбор группы вычетов аддитивной переменной X по модулю Р, где значению аддитивной переменной Х=0 соответствует группа вычетов
Figure 00000025
,
Figure 00000026
, …, 00 (mod Ρ), и так далее, и значению переменной Х=2n-1 соответствует группа вычетов
Figure 00000027
,
Figure 00000028
, … (2n-1)0 (mod Ρ), которые поступают соответственно на 1-е входы умножителей 6.1, …, 6.2n, 7.1, …, 7.2k, 8.1, …, 8.2k-1, где выполняется операция умножения коэффициентов на соответствующие им степени переменных по модулю Ρ (5-7). В следующий момент времени полученные произведения коэффициентов на степени переменных поступают на входы сумматоров 91, …, 9.3, в которых выполняется вычисление полиномов, соответственно в сумматоре 9.1 - вычисление полинома (5), в сумматоре 9.2 - вычисление полинома (6), и в сумматоре 9.3 - вычисление полинома (7). Из сумматора 9.3 значение вычисления информационного полинома поступает на входы 1-й группы входов устройства вычисления остатка по модулю Ρ 10, из сумматора 9.2 значение вычисления контрольного полинома поступает на входы 2-й группы входов устройства вычисления остатка по модулю Ρ 10, которое обеспечивает вычисление остатка от деления полинома (5) на полином (6) по модулю Р, далее полученный остаток поразрядно подается на 1-е входы двухвходовых логических элементов ИСКЛЮЧАЮЩЕЕ ИЛИ 11.1, …, 11.s, а из сумматора 9.3 результат вычисления полинома-остатка (7) поразрядно подается на 2-е входы двухвходовых логических элементов ИСКЛЮЧАЮЩЕЕ ИЛИ 11.1, …, 11.s, где соответствующие двоичные разряды результатов вычисления остатка от деления полинома (5) на (6) и полинома (7) суммируются по модулю 2 (если значения вычисления полинома остатка (7) и значение вычисления, полученное устройством получения остатка, по модулю Ρ 10 совпадают, то на выходе каждого логического элемента ИСКЛЮЧАЮЩЕЕ ИЛИ будет логический 0, в обратном случае (если ОШИБКА) будет хотя бы одно значение логической 1) и подаются на входы логического элемента ИЛИ-НЕ, где в случае ОШИБКИ на выходе будет логический 0, обеспечивающий запрет записи результата вычисления информационного полинома, подаваемого из сумматора 9.1 на входы регистра памяти 13, путем логического умножения на значение синхроимпульса, подаваемого с управляющего входа устройства подачи синхроимпульсов 20 на второй вход логического элемента И 14, и соответственно в случае отсутствия ошибки будет логическая 1. В случае записи результата вычисления полинома (7) в регистр памяти 13 значения вычисления булевых функций ƒ1, …, ƒd подаются соответственно на выходы устройства выдачи значений булевых функций 21.1, …, 21.d.
Таким образом, технический эффект достигается за счет реализации логических вычислений в безызбыточной полиномиальной модулярной форме, обеспечивающей применение методов помехоустойчивого кодирования (циклических помехоустойчивых кодов) в расширенных полях Галуа.
Литература
1. RU, №2417405, 2010.
2. RU, №2485575, 2013.
3. Финько О.А. Модулярная арифметика параллельных логических вычислений: Монография / Финько О.А.; Под ред. В.Д. Малюгина. - М.: Ин-т проблем управления им. В.А. Трапезникова РАН; Краснодар: Краснодарский воен. ин-т, 2003. - С 103-104. http://elibrary.ru/item.asp?id=23447304
4. RU, №1820377, 1993.
5. RU, №2299461, 2007.
6. RU, №2421781, 2011.

Claims (1)

  1. Полиномиальный модулярный вычислитель систем булевых функций с обнаружением ошибок вычислений, содержащий блоки памяти хранения значений коэффициентов информационного полинома, управляющие входы которых подключены к управляющим входам устройства подачи значений коэффициентов информационного полинома, многоканальный мультиплексор, управляющий вход которого подключен к управляющему входу устройства подачи значения аддитивной переменной X, устройство вычисления остатка по модулю Р, многовходовый логический элемент ИЛИ-НЕ, выход которого подключен к первому входу двухвходового логического элемента И, второй вход которого подключен к управляющему входу устройства подачи синхроимпульсов, выход которого подключен к управляющему входу регистра памяти, выходы которого являются выходами устройства выдачи значений булевых функций, отличающийся тем, что введены 2n блоков памяти хранения значений вычетов аддитивной переменной X по модулю Р, управляющие входы которых подключены к управляющему входу устройства подачи значений вычетов аддитивной переменной X по модулю Р, а выходы подключены к информационным входам многоканального мультиплексора, где выход 1-го блока памяти подключен к 1-му входу многоканального мультиплексора, и так далее, и выход 2n-го блока памяти подключен к 2n-му входу многоканального мультиплексора, 2k блоков памяти хранения значений коэффициентов контрольного полинома, управляющие входы которых подключены к управляющему входу устройства подачи значений коэффициентов контрольного полинома, 2k-1 блоков памяти хранения значений коэффициентов полинома-остатка, управляющие входы которых подключены к управляющему входу устройства подачи значений коэффициентов полинома-остатка, 2n умножителей по модулю Р информационного полинома, 1-е входы которых подключены к выходам многоканального мультиплексора, где 1-й вход 1-го умножителя подключен к 1-му выходу многоканального мультиплексора, и так далее, и 1-й вход 2n-го умножителя подключен к 2n-му выходу многоканального мультиплексора, а 2-е входы подключены к выходам блоков памяти хранения значений коэффициентов информационного полинома, где 2-й вход 1-го умножителя подключен к выходу 1-го блока памяти, и так далее, и 2-й вход 2n-го умножителя подключен к выходу 2n-го блока памяти, 2k умножителей по модулю Р контрольного полинома, 1-е входы которых подключены к выходам многоканального мультиплексора, где 1-й вход 1-го умножителя подключен к 1-му выходу многоканального мультиплексора, и так далее, и 1-й вход 2k-го умножителя подключен к 2k-му выходу многоканального мультиплексора, а 2-е входы подключены к выходам блоков памяти хранения значений коэффициентов контрольного полинома, где 2-й вход 1-го умножителя подключен к выходу 1-го блока памяти, и так далее, и 2-й вход 2k-го умножителя подключен к выходу 2k-го блока памяти, 2k-1 умножителей по модулю Р полинома-остатка, 1-е входы которых подключены к выходам многоканального мультиплексора, где 1-й вход 1-го умножителя подключен к 1-му выходу многоканального мультиплексора, и так далее, и 1-й вход 2k-1-го умножителя подключен к 2k-1-му выходу многоканального мультиплексора, а 2-е входы подключены к выходам блоков памяти хранения значений коэффициентов полинома-остатка, где 2-й вход 1-го умножителя подключен к выходу 1-го блока памяти, и так далее, и 2-й вход 2k-1-го умножителя подключен к выходу 2k-1-го блока памяти, 3-и многовходовых сумматора по модулю Р, где входы 1-го сумматора подключены соответственно к выходам умножителей по модулю Р информационного полинома, а выходы подключены соответственно к 1-й группе входов устройства вычисления остатка по модулю Р и к входам регистра памяти, входы 2-го сумматора подключены соответственно к выходам умножителей по модулю Р контрольного полинома, а выходы подключены соответственно к 2-й группе входов устройства вычисления остатка по модулю Р, входы 3-го сумматора подключены соответственно к выходам умножителей по модулю Р полинома-остатка, s двухвходовых логических элементов ИСКЛЮЧАЮЩЕЕ ИЛИ, 1-е входы которых подключены к выходам устройства вычисления остатка по модулю Р, где 1-й вход 1-го логического элемента ИСКЛЮЧАЮЩЕЕ ИЛИ подключен к первому выходу устройства вычисления остатка по модулю Р, и так далее, и 1-й вход s-го логического элемента ИСКЛЮЧАЮЩЕЕ ИЛИ подключен к s-му выходу устройства вычисления остатка по модулю Р, а 2-е входы подключены к выходам 3-го многовходового сумматора по модулю Р, где 2-й вход 1-го логического элемента ИСКЛЮЧАЮЩЕЕ ИЛИ подключен к первому выходу сумматора, и так далее, и 2-й вход s-го логического элемента ИСКЛЮЧАЮЩЕЕ ИЛИ подключен к s-му выходу сумматора.
RU2015125333/08A 2015-06-26 2015-06-26 Полиномиальный модулярный вычислитель систем булевых функций с обнаружением ошибок RU2586574C1 (ru)

Priority Applications (1)

Application Number Priority Date Filing Date Title
RU2015125333/08A RU2586574C1 (ru) 2015-06-26 2015-06-26 Полиномиальный модулярный вычислитель систем булевых функций с обнаружением ошибок

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
RU2015125333/08A RU2586574C1 (ru) 2015-06-26 2015-06-26 Полиномиальный модулярный вычислитель систем булевых функций с обнаружением ошибок

Publications (1)

Publication Number Publication Date
RU2586574C1 true RU2586574C1 (ru) 2016-06-10

Family

ID=56115500

Family Applications (1)

Application Number Title Priority Date Filing Date
RU2015125333/08A RU2586574C1 (ru) 2015-06-26 2015-06-26 Полиномиальный модулярный вычислитель систем булевых функций с обнаружением ошибок

Country Status (1)

Country Link
RU (1) RU2586574C1 (ru)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2637488C1 (ru) * 2016-10-07 2017-12-04 ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ КАЗЕННОЕ ВОЕННОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ОБРАЗОВАНИЯ "Военная академия Ракетных войск стратегического назначения имени Петра Великого" МИНИСТЕРСТВА ОБОРОНЫ РОССИЙСКОЙ ФЕДЕРАЦИИ Логический вычислитель в системе остаточных классов
RU2762209C1 (ru) * 2021-03-23 2021-12-16 федеральное государственное казенное военное образовательное учреждение высшего образования "Краснодарское высшее военное орденов Жукова и Октябрьской Революции Краснознаменное училище имени генерала армии С.М. Штеменко" Министерства обороны Российской Федерации УСТРОЙСТВО ПАРАЛЛЕЛЬНОГО ФОРМИРОВАНИЯ q-ЗНАЧНЫХ ПСЕВДОСЛУЧАЙНЫХ ПОСЛЕДОВАТЕЛЬНОСТЕЙ НА АРИФМЕТИЧЕСКИХ ПОЛИНОМАХ

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2373564C2 (ru) * 2007-11-06 2009-11-20 Андрей Викторович Щербаков Модулярный вычислитель систем булевых функций
RU2409840C2 (ru) * 2008-09-26 2011-01-20 Государственное образовательное учреждение высшего профессионального образования "Ставропольский военный институт связи ракетных войск" (СВИСРВ) Устройство для преобразования из полиномиальной системы классов вычетов в позиционный код
RU2417405C2 (ru) * 2009-06-08 2011-04-27 Сергей Михайлович Сульгин Самопроверяемый модулярный вычислитель систем логических функций
RU2461868C1 (ru) * 2011-10-03 2012-09-20 Федеральное государственное военное образовательное учреждение высшего профессионального образования "Военная академия связи имени Маршала Советского Союза С.М. Буденного" (г. Санкт-Петербург) Министерства обороны Российской Федерации Арифметический вычислитель систем булевых функций
RU2485575C1 (ru) * 2012-05-18 2013-06-20 Федеральное государственное казенное военное образовательное учреждение высшего профессионального образования "ВОЕННАЯ АКАДЕМИЯ СВЯЗИ имени Маршала Советского Союза С.М. Буденного" Министерства обороны Российской Федерации Самопроверяемый специализированный вычислитель систем булевых функций

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2373564C2 (ru) * 2007-11-06 2009-11-20 Андрей Викторович Щербаков Модулярный вычислитель систем булевых функций
RU2409840C2 (ru) * 2008-09-26 2011-01-20 Государственное образовательное учреждение высшего профессионального образования "Ставропольский военный институт связи ракетных войск" (СВИСРВ) Устройство для преобразования из полиномиальной системы классов вычетов в позиционный код
RU2417405C2 (ru) * 2009-06-08 2011-04-27 Сергей Михайлович Сульгин Самопроверяемый модулярный вычислитель систем логических функций
RU2461868C1 (ru) * 2011-10-03 2012-09-20 Федеральное государственное военное образовательное учреждение высшего профессионального образования "Военная академия связи имени Маршала Советского Союза С.М. Буденного" (г. Санкт-Петербург) Министерства обороны Российской Федерации Арифметический вычислитель систем булевых функций
RU2485575C1 (ru) * 2012-05-18 2013-06-20 Федеральное государственное казенное военное образовательное учреждение высшего профессионального образования "ВОЕННАЯ АКАДЕМИЯ СВЯЗИ имени Маршала Советского Союза С.М. Буденного" Министерства обороны Российской Федерации Самопроверяемый специализированный вычислитель систем булевых функций

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2637488C1 (ru) * 2016-10-07 2017-12-04 ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ КАЗЕННОЕ ВОЕННОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ОБРАЗОВАНИЯ "Военная академия Ракетных войск стратегического назначения имени Петра Великого" МИНИСТЕРСТВА ОБОРОНЫ РОССИЙСКОЙ ФЕДЕРАЦИИ Логический вычислитель в системе остаточных классов
RU2762209C1 (ru) * 2021-03-23 2021-12-16 федеральное государственное казенное военное образовательное учреждение высшего образования "Краснодарское высшее военное орденов Жукова и Октябрьской Революции Краснознаменное училище имени генерала армии С.М. Штеменко" Министерства обороны Российской Федерации УСТРОЙСТВО ПАРАЛЛЕЛЬНОГО ФОРМИРОВАНИЯ q-ЗНАЧНЫХ ПСЕВДОСЛУЧАЙНЫХ ПОСЛЕДОВАТЕЛЬНОСТЕЙ НА АРИФМЕТИЧЕСКИХ ПОЛИНОМАХ

Similar Documents

Publication Publication Date Title
Lyndon Identities in finite algebras
JP5259343B2 (ja) メモリ装置
JP2010518464A (ja) 半導体記憶装置
Dastan et al. A novel nanometric fault tolerant reversible divider
RU2586574C1 (ru) Полиномиальный модулярный вычислитель систем булевых функций с обнаружением ошибок
RU2500017C1 (ru) Накапливающий сумматор по модулю
US9933998B2 (en) Methods and apparatuses for performing multiplication
RU2373564C2 (ru) Модулярный вычислитель систем булевых функций
KR101770122B1 (ko) Simd 프로세서를 이용하는 갈로아 필드 이진 다항식 제산 장치 및 방법
RU2417405C2 (ru) Самопроверяемый модулярный вычислитель систем логических функций
Tang et al. A hybrid multimode BCH encoder architecture for area efficient re-encoding approach
CN103427799B (zh) 半导体集成电路及其操作方法
RU2579991C1 (ru) Самопроверяемый специализированный вычислитель систем булевых функций
RU2622881C1 (ru) Устройство для вычисления сумм парных произведений в полиномиальной системе классов вычетов
RU2586575C1 (ru) Модулярный полиномиальный вычислитель систем булевых функций
US3113204A (en) Parity checked shift register counting circuits
RU2626654C1 (ru) Умножитель по модулю
Gutiérrez-Naranjo et al. Performing arithmetic operations with spiking neural P systems
RU2559771C2 (ru) Устройство для основного деления модулярных чисел
Jambor Computing minimal associated primes in polynomial rings over the integers
RU2661797C1 (ru) Вычислительное устройство
RU2518998C1 (ru) Устройство для решения задач целочисленного линейного программирования
RU2637488C1 (ru) Логический вычислитель в системе остаточных классов
RU2485574C1 (ru) Способ организации умножения чисел с плавающей запятой, представленных в системе остаточных классов
RU2680035C1 (ru) Отказоустойчивый специализированный вычислитель систем булевых функций

Legal Events

Date Code Title Description
MM4A The patent is invalid due to non-payment of fees

Effective date: 20170627