RU204275U1 - FAIL-SAFE PROCESSOR WITH ERROR CORRECTION IN THE DATA BYTE - Google Patents
FAIL-SAFE PROCESSOR WITH ERROR CORRECTION IN THE DATA BYTE Download PDFInfo
- Publication number
- RU204275U1 RU204275U1 RU2021101724U RU2021101724U RU204275U1 RU 204275 U1 RU204275 U1 RU 204275U1 RU 2021101724 U RU2021101724 U RU 2021101724U RU 2021101724 U RU2021101724 U RU 2021101724U RU 204275 U1 RU204275 U1 RU 204275U1
- Authority
- RU
- Russia
- Prior art keywords
- block
- inputs
- outputs
- register
- switch
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C29/08—Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
- G11C29/12—Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
- G11C29/38—Response verification devices
- G11C29/42—Response verification devices using error correcting codes [ECC] or parity check
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Error Detection And Correction (AREA)
Abstract
Полезная модель относится к области вычислительной техники. Техническим результатом заявленной полезной модели является коррекция ошибок в байте информации, возникающих в процессоре ЭВМ при выполнении арифметических и логических операций из-за отсутствия или возникновения лишних переносов. Технический результат достигается за счет отказоустойчивого процессора с коррекцией ошибок в байте информации, содержащего управляющий узел, операционный узел, дешифратор кода операции, генератор тактовых импульсов, блок управления, первый коммутатор, второй коммутатор, третий коммутатор, счетчик команд, счетчик сдвигов, регистр адреса, регистр числа, регистр сумматора, регистр дополнительный, регистр дополнительного кода, сумматор, блок логических операций и контроля, включающий блок логического сложения по mod2, блок инвертирования, блок логического сложения, блок логического умножения, функциональную схему формирования поправки при выполнении арифметических операций, функциональную схему формирования поправки при выполнении операции ИЛИ, функциональную схему формирования поправки при выполнении операции И, функциональную схему формирования поправки при выполнении операции сдвига, элемент задержки, первый блок элементов неравнозначности, второй блок элементов неравнозначности, третий блок элементов неравнозначности, первый блок элементов ИЛИ, второй блок элементов ИЛИ, блок кодирования, первый блок элементов И, второй блок элементов И, элемент И. 3 ил.The utility model relates to the field of computing. The technical result of the claimed utility model is the correction of errors in the information byte that occur in the computer processor when performing arithmetic and logical operations due to the absence or occurrence of unnecessary transfers. The technical result is achieved due to a fault-tolerant processor with error correction in the information byte containing the control node, the operational node, the operation code decoder, the clock pulse generator, the control unit, the first switch, the second switch, the third switch, the command counter, the shift counter, the address register, number register, adder register, additional register, additional code register, adder, block of logical operations and control, including block of logical addition according to mod2, block of inversion, block of logical addition, block of logical multiplication, functional diagram of correction formation when performing arithmetic operations, functional diagram forming a correction when performing an OR operation, a functional diagram of forming a correction when performing an AND operation, a functional diagram of generating a correction when performing a shift operation, a delay element, a first block of unequal elements, a second block of unequal elements, a third block of unequal elements, the first block of OR elements, the second block of OR elements, a coding block, the first block of AND elements, the second block of AND elements, an AND element. 3 Il.
Description
Полезная модель относится к вычислительной технике. Известно устройство хранения и передачи данных с исправлением ошибок в байте информации и обнаружением ошибок в байтах информации (Патент на изобретение №2448359 «Устройство хранения и передачи данных с исправлением ошибок в байте информации и обнаружением ошибок в байтах информации» авторы: Борисов К.Ю., Малофеев Ю.Г., Осипенко П.Н., Павлов А.А., Павлов П.А., Павлов А.А., Хоруженко О.В., Царьков А.Н., от о5.04. 2011 г.), содержащие узел памяти, входной блок кодирования, выходной блок кодирования, блок вычисления синдрома ошибки, дешифратор, коммутатор, блок коммутаторов, корректор, блок корректоров, отличающаяся тем, что оно дополнительно содержит первый блок элементов ИЛИ, второй блок элементов ИЛИ, инвертор, элемент И, блок элементов И, вход установки устройства в нулевое состояние, вход записи, вход считывания, адресные входы, двадцати четырех разрядные информационные входы, вход синхронизации, информационные выходы, выход сигнала «ошибка», вход установки в нулевое состояние, вход записи, вход считывания, адресные входы, подключены соответственно к первому, второму, третьему и четвертому входам узла памяти, вход синхронизации подключен к пятому входу узла памяти и к первому входу блока элементов И, информационные входы подключены к шестым входам узла памяти и к входам входного блока кодирования который формирует значения контрольных разрядов r1, r2, r3, r4, r5, r6, r7, r8 путем сложения по модулю 2 информационных символов x1 x2 х3, z1 z2 z3, a1 а2 а3, c1 c2 с3, e1 е2 е3, f1 f2 f3, g1 g2 g3, h1 h2 h3., поступающих на входы входного блока кодирования, в соответствии с правилом: r1=x1⊕z1 ⊕а1 ⊕с1 ⊕e1⊕f1 ⊕g1⊕h1; r2=x2⊕z2 ⊕а2 ⊕с2⊕е2⊕f2 ⊕g2⊕h2; r3=x3⊕z3⊕a3⊕c3⊕e3⊕f3 ⊕g3⊕h3; r4=x1⊕ z3⊕ а2⊕ а3⊕ c2⊕ е1⊕ е3⊕ f1⊕ f2⊕ f2⊕g1⊕ g2⊕ g3; r5=x2⊕ х3⊕ z1⊕ а3⊕ c1⊕ с3⊕е1⊕е2⊕ f2⊕g1⊕ g2⊕ g3; r6=х3⊕ z2⊕ z3⊕ а1⊕ c1⊕ c2⊕ е2⊕ f1⊕ f3g1⊕ g2⊕ g3; r7=х3⊕ z3⊕ а1⊕ а3⊕ c2⊕ е1⊕ f2⊕g1⊕ g2⊕ g3; r8=x1⊕ x2⊕ z2⊕ а2⊕ а3⊕ с3⊕ е3⊕ f2⊕f3 ⊕g1⊕ g2⊕ g3, которые поступают на седьмые входы узла памяти, информационные выходы узла памяти подключены соответственно к первым входам корректора, блока корректоров и к входам выходного блока кодирования, который формирует значения проверочных контрольных разрядов rП1, r2П, r3П, r4П, r5П, r6П r7П r8П путем сложения по модулю 2 информационных символов х1П x2П х3П, z1П z2П z3П, a1П а2П а3П, c1П с2П с3П, e1П е2П е3П, f1П f2П f3П, g1П g2П g3П, h1П h2П h3П, поступающих на входы входного блока кодирования с информационных выходов узла памяти, в соответствии с правилом:: r1П=x1П⊕z1П ⊕а1П ⊕с1П ⊕е1П⊕f1П ⊕g1П⊕h1П; r2П=x2П⊕z2П ⊕а2П ⊕с2П⊕е2П⊕f2П ⊕g2П⊕h2П; r3П=x3П⊕z3П⊕a3П⊕c3П⊕e3П⊕f3П ⊕g3П⊕h3П; r4П=х1П⊕ z3П⊕ а2П⊕ а3П⊕ с2П⊕ е1П⊕ е3П⊕ f1П⊕ f2П⊕g1П⊕ g2П⊕ g3П; r5П=x2П⊕ х3П⊕ z1П⊕ а3П⊕ с1П⊕ с3П⊕е1П⊕е2П⊕ f2П⊕g1П⊕ g2П⊕ g3П; r6П=x3П⊕ z2П⊕ z3П⊕ а1П⊕ с1П⊕ с2П⊕ е2П⊕ f1П⊕ f3П⊕g1П⊕ g2П⊕ g3П; r7П=x3П⊕ z3П⊕ а1П⊕ а3П⊕ с2П⊕ е1П⊕ f2П⊕g1П⊕ g2П⊕ g3П; r8П=x1П⊕ x2П⊕ z2П⊕ а2П⊕ а3П⊕ с3П⊕ е3П⊕ f2П⊕f3П ⊕g1П⊕ g2П⊕ g3П, выходы выходного блока кодирования подключены к первым входам блока вычисления синдрома ошибки к вторым входам которого, подключены выходы контрольных разрядов узла памяти, первые выходы блока вычисления синдрома ошибки подключены к первым входам дешифратора, к первым входам коммутатора, к входам первого блока элементов ИЛИ и к первым входам блока коммутаторов, вторые выходы блока вычисления синдрома ошибки подключены к вторым входам дешифратора и к вторым входам первого блока элементов ИЛИ, выходы дешифратора подключены к входам второго блока элементов ИЛИ, при этом первый выход дешифратора подключен к второму входу коммутатора, а вторые выходы подключены к вторым входам блока коммутаторов, выход второго блока элементов ИЛИ через инвертор подключен к первому входу элемента И, второй вход которого подключен к выходу первого блока элементов ИЛИ, выход элемента И является выходом сигнала «ошибка», выходы коммутатора подключены к вторым входам корректора, выходы блока коммутаторов подключены к вторым входам блока корректоров, выходы корректора и блока корректоров подключены к вторым входам блока элементов И, выходы которого являются информационными выходами устройства.The utility model relates to computer technology. Known device for storing and transmitting data with error correction in information bytes and error detection in information bytes (Patent for invention No. 2448359 "Device for storing and transmitting data with error correction in information bytes and error detection in information bytes" authors: Borisov K.Yu. , Malofeev Yu.G., Osipenko P.N., Pavlov A.A., Pavlov P.A., Pavlov A.A., Horuzhenko O.V., Tsar'kov A.N., dated April 5, 2011 .) containing a memory unit, an input coding unit, an output coding unit, an error syndrome calculation unit, a decoder, a switch, a switch unit, a corrector, a corrector unit, characterized in that it additionally contains a first block of OR elements, a second block of OR elements, an inverter , element And, block of elements And, input of setting the device to zero state, write input, read input, address inputs, twenty-four-bit information inputs, synchronization input, information outputs, signal output "error", input of setting to zero, input records, read input, address inputs, are connected respectively to the first, second, third and fourth inputs of the memory unit, the synchronization input is connected to the fifth input of the memory unit and to the first input of the block of elements AND, information inputs are connected to the sixth inputs of the memory unit and to the inputs of the input a coding unit that generates the values of the check bits r 1 , r 2 , r 3 , r 4 , r 5 , r 6 , r 7 , r 8 by adding
Недостатком устройства является ограниченная область его применения, так как оно не позволяет корректировать ошибки в устройствах обработки информации.The disadvantage of the device is the limited scope of its application, since it does not allow correcting errors in information processing devices.
Наиболее близким по техническому решению является процессор повышенной достоверности функционирования (Патент на изобретение №2439667 «Процессор повышенной достоверности функционирования» авторы: Бобков С.Г., Осипенко П.Н., Павлов А.А., Павлов П.А., Павлов А.А., Хоруженко О.В., Царьков А.Н., от 08.07.2010 г.), содержащий управляющий узел, операционный узел, первые входы управляющего узла является входами процессора, вторая группа входов управляющего узла подключена к первым выходам операционного узла, выходы управляющего узла подключены к первым входам операционного узла, вторые входы которого являются входами данных, а вторые выходы являются выходами данных, отличающееся тем, что он дополнительно содержит дешифратор кода операции, генератор тактовых импульсов, блок управления, первый коммутатор, второй коммутатор, третий коммутатор, счетчик команд, счетчик сдвигов, регистр адреса, регистр числа, регистр сумматора, регистр дополнительный, регистр дополнительного кода, сумматор, блок контроля, управляющую память, блок логических операций и контроля, включающий блок логического сложения по mod2, блок инвертирования, блок логического сложения, блок логического умножения, функциональную схему формирования поправки при выполнении арифметических операций, функциональную схему формирования поправки при выполнении операции ИЛИ, функциональную схему формирования поправки при выполнении операции И, функциональную схему формирования поправки при выполнении операции сдвига, элемент задержки, первый блок элементов неравнозначности, второй блок элементов неравнозначности, третий блок элементов неравнозначности, первый блок элементов ИЛИ, второй блок элементов ИЛИ, блок кодирования, первый блок элементов И, второй блок элементов И, элемент И, выходы устройства обмена подключены к первому входу блока управления и к первому входу второго коммутатора, вторые входы которого подключены к выходам запоминающего устройства, первые выходы второго коммутатора поступают на вход устройства обмена, вторые выходы поступают на вход запоминающего устройства, а третьи выходы подключены соответственно к первым входам счетчика команд, счетчика сдвигов, регистра числа, регистра сумматора, регистра дополнительного, регистра дополнительного кода, к входам дешифратора кода операции, к вторым входам блока управления, к первому входу первого коммутатора, первый выход которого подключен к первому входу регистра адреса, третий вход блока управления подключен к выходам дешифратора кода операции а четвертый вход подключен к выходам генератора тактовых импульсов, а пятый вход подключен к первому выходу управляющей памяти, первый выход блока управления подключен к входу управляющей памяти, первые выходы которой подключены к первым входам блока контроля, второй выход блока управления подключен к второму входу первого коммутатора, третьи и четвертые входы которого подключены соответственно к выходам регистра адреса и счетчика команд, а с второго выхода снимается адрес ячейки памяти запоминающего устройства, третий выход блока управления подключен соответственно к вторым входам блока контроля, к вторым входам счетчика команд, счетчика сдвигов, регистра адреса, регистра числа, регистра сумматора, регистра дополнительного, регистра дополнительного кода, к первой группе входов третьего коммутатора, к третьей группе входов второго коммутатора, к первой группе входов блока логических операций и контроля и является выходом синхроимпульсов, второй, третий, четвертый пятый выходы управляющей памяти подключены к третьим и четвертым пятым и шестым входам блока контроля, при этом второй выход подключен к четвертому входу второго коммутатора, а третьи, четвертые и пятые выходы блока управляющей памяти подключены соответственно к третьим, четвертым пятым и шестым входам счетчика команд, счетчика сдвигов, регистра адреса, регистра числа, регистра сумматора, регистра дополнительного, регистра дополнительного кода, к первой группе входов третьего коммутатора, к третьей группе входов второго коммутатора, к первой группе входов блока логических операций и контроля и являются выходам управляющих сигналов, сигналов считывания, сигналов записи, сигналов установки устройств в нулевое состояние, шестой выход блока управляющей памяти подключен к пятому входу блока управления, выходы регистра числа, регистра сумматора, регистра дополнительного, регистра дополнительного кода подключены к вторым входам третьего коммутатора и к пятым входам второго коммутатора, выход счетчика сдвигов подключен к шестым входам второго коммутатора, первые выходы третьего коммутатора подключены соответственно к входам сумматора и к вторым входам блока логических операций и контроля, выходы сумматора подключены к третьим входам блока логических операций и контроля, вторые, третьи, четвертые, пятые, шестые, седьмые и восьмые выходы третьего коммутатора подключены к четвертым, пятым, шестым, седьмым, восьмым, девятым и десятым входам блока логических операции и контроля, выходы которого подключены к седьмым, восьмым и девятым входам второго коммутатора.The closest in technical solution is a processor with increased reliability of functioning (Patent for invention No. 2439667 "Processor with increased reliability of functioning" authors: Bobkov S.G., Osipenko P.N., Pavlov A.A., Pavlov P.A., Pavlov A A.A., Khoruzhenko O.V., Tsar'kov A.N., dated 08.07.2010), containing a control node, an operational node, the first inputs of the control node are the inputs of the processor, the second group of inputs of the control node is connected to the first outputs of the operational node , the outputs of the control node are connected to the first inputs of the operational node, the second inputs of which are data inputs, and the second outputs are data outputs, characterized in that it additionally contains an operation code decoder, a clock pulse generator, a control unit, the first switch, the second switch, the third switch, command counter, shift counter, address register, number register, adder register, additional register, complementary code register, adder, block to control, control memory, block of logical operations and control, including block of logical addition according to mod2, block of inversion, block of logical addition, block of logical multiplication, functional diagram of correction formation when performing arithmetic operations, functional diagram of correction formation when performing OR operation, functional diagram of formation corrections when performing an AND operation, a functional diagram of forming a correction when performing a shift operation, a delay element, a first block of unequal elements, a second block of unequal elements, a third block of unequal elements, a first block of OR elements, a second block of OR elements, a coding block, a first block of AND elements , the second block of elements And, the element And, the outputs of the exchange device are connected to the first input of the control unit and to the first input of the second switch, the second inputs of which are connected to the outputs of the memory device, the first outputs of the second switch go to the input of the device about exchange, the second outputs go to the input of the memory device, and the third outputs are connected, respectively, to the first inputs of the command counter, shift counter, number register, adder register, additional register, additional code register, to the inputs of the operation code decoder, to the second inputs of the control unit, to the first input of the first switch, the first output of which is connected to the first input of the address register, the third input of the control unit is connected to the outputs of the operation code decoder, and the fourth input is connected to the outputs of the clock pulse generator, and the fifth input is connected to the first output of the control memory, the first output of the control unit is connected to the input of the control memory, the first outputs of which are connected to the first inputs of the control unit, the second output of the control unit is connected to the second input of the first switch, the third and fourth inputs of which are connected respectively to the outputs of the address register and the command counter, and from the second output the address of the memory cell is removed. th device, the third output of the control unit is connected, respectively, to the second inputs of the control unit, to the second inputs of the command counter, shift counter, address register, number register, adder register, additional register, additional code register, to the first group of inputs of the third switch, to the third group inputs of the second switch, to the first group of inputs of the block of logical operations and control and is the output of sync pulses, the second, third, fourth fifth outputs of the control memory are connected to the third and fourth fifth and sixth inputs of the control unit, while the second output is connected to the fourth input of the second switch, and the third, fourth and fifth outputs of the control memory unit are connected, respectively, to the third, fourth, fifth and sixth inputs of the command counter, shift counter, address register, number register, adder register, additional register, additional code register, to the first group of inputs of the third switch, to the third group of inputs of the second switch, to the first group of inputs of the block of logical operations and control and are outputs of control signals, read signals, write signals, signals for setting devices to a zero state, the sixth output of the control memory unit is connected to the fifth input of the control unit, outputs of the number register, adder register, register additional, additional code register are connected to the second inputs of the third switch and to the fifth inputs of the second switch, the output of the shift counter is connected to the sixth inputs of the second switch, the first outputs of the third switch are connected respectively to the inputs of the adder and to the second inputs of the logical operations and control unit, the outputs of the adder are connected to the third inputs of the block of logical operations and control, the second, third, fourth, fifth, sixth, seventh and eighth outputs of the third switch are connected to the fourth, fifth, sixth, seventh, eighth, ninth and tenth inputs of the block of logical operations and control, the outputs of which are connected by the seventh th, eighth and ninth inputs of the second switch.
Недостатком устройства является недостаточная отказоустойчивость процессора, так как не обеспечивается коррекция возникающих ошибок.The disadvantage of the device is the insufficient fault tolerance of the processor, since no correction of the arising errors is provided.
Задачей полезной модели является коррекция ошибок в байте информации, возникающих в процессоре ЭВМ при выполнении арифметических и логических операций из-за отсутствия или возникновения лишних переносов.The task of the utility model is to correct errors in the information byte that occur in the computer processor when performing arithmetic and logical operations due to the absence or occurrence of unnecessary hyphens.
Сущность полезной модели заключается в том, что процессор, содержащий управляющий узел, операционный узел, дешифратор кода операции, генератор тактовых импульсов, блок управления, первый коммутатор, второй коммутатор, третий коммутатор, счетчик команд, счетчик сдвигов, регистр адреса, регистр числа, регистр сумматора, регистр дополнительный, регистр дополнительного кода, сумматор, блок логических операций и контроля, включающий блок логического сложения по mod2, блок инвертирования, блок логического сложения, блок логического умножения, функциональную схему формирования поправки при выполнении арифметических операций, функциональную схему формирования поправки при выполнении операции ИЛИ, функциональную схему формирования поправки при выполнении операции И, функциональную схему формирования поправки при выполнении операции сдвига, элемент задержки, первый блок элементов неравнозначности, второй блок элементов неравнозначности, третий блок элементов неравнозначности, первый блок элементов ИЛИ, второй блок элементов ИЛИ, блок кодирования, первый блок элементов И, второй блок элементов И, элемент И, первый, вторые, третьи, четвертые, пятые входы блока логических операций и контроля, первые, вторые, третьи выходы блока логических операций и контроля, управляющую память, входы от устройства обмена, входы данных из запоминающего устройства, выход на устройство обмена, выходы данных на запоминающее устройство, выход адреса запоминающего устройства, выходы синхроимпульсов, выходы для сигналов управления, выходы для команды считывание, выходы для сигналов записи, выходы для сигналов установки в нулевое состояние, выходы устройства обмена подключены к первому входу блока управления и к первому входу второго коммутатора, вторые входы которого подключены к выходам запоминающего устройства, первые выходы второго коммутатора поступают на вход устройства обмена, вторые выходы поступают на вход запоминающего устройства, а третьи выходы подключены соответственно к первым входам счетчика команд, счетчика сдвигов, регистра числа, регистра сумматора, регистра дополнительного, регистра дополнительного кода, к входам дешифратора кода операции, к вторым входам блока управления, к первому входу первого коммутатора, первый выход которого подключен к первому входу регистра адреса, третий вход блока управления подключен к выходам дешифратора кода операции, а четвертый вход подключен к выходам генератора тактовых импульсов, а пятый вход подключен к первому выходу управляющей памяти, первый выход блока управления подключен к входу управляющей памяти, второй выход блока управления подключен к второму входу первого коммутатора, третьи и четвертые входы которого подключены соответственно к выходам регистра адреса и счетчика команд, а с второго выхода снимается адрес ячейки памяти запоминающего устройства, третий выход блока управления подключен к вторым входам счетчика команд, счетчика сдвигов, регистра адреса, регистра числа, регистра сумматора, регистра дополнительного, регистра дополнительного кода, к первой группе входов третьего коммутатора, к третьей группе входов второго коммутатора, к первому входу блока логических операций и контроля и является входом синхроимпульсов, вторые, третьи, четвертые и пятые выходы блока управляющей памяти подключены соответственно к третьим, четвертым пятым и шестым входам счетчика команд, счетчика сдвигов, регистра адреса, регистра числа, регистра сумматора, регистра дополнительного, регистра дополнительного кода, к первой группе входов третьего коммутатора, к третьей группе входов второго коммутатора, к вторым входам блока логических операций и контроля и являются выходами управляющих сигналов, сигналов считывания, сигналов записи, сигналов установки устройств в нулевое состояние, выходы регистра числа, регистра сумматора, регистра дополнительного, регистра дополнительного кода подключены к вторым входам третьего коммутатора и к четвертым входам второго коммутатора, выход счетчика сдвигов подключен к пятым входам второго коммутатора, первые выходы третьего коммутатора подключены соответственно к входам сумматора и к третьим входам блока логических операций и контроля, выходы сумматора подключены к четвертым входам блока логических операций и контроля, вторые выходы третьего коммутатора подключены к пятым входам блока логических операции и контроля, отличающееся тем, что он дополнительно содержит дешифратор, блок элементов ИЛИ, блок элементов И, корректор, причем первые выходы блока логических операций и контроля подключены к первым входам корректора, вторые выходы подключены к шестым входам второго коммутатора, третьи выходы блока логических операций и контроля подключены к первым входам блока элементов И и к входам дешифратора, первая группа выходов которого подключена к вторым входам блока элементов И, третий вход которого подключен к третьему выходу блока управления, а выход подключен к второму входу корректора, выходы корректора подключены к седьмым входам второго коммутатора, вторая группа выходов дешифратора подключена к входам блока элементов ИЛИ, выход которого подключен к восьмому входу второго коммутатора.The essence of the utility model lies in the fact that a processor containing a control unit, an operating unit, an operation code decoder, a clock pulse generator, a control unit, a first switch, a second switch, a third switch, a command counter, a shift counter, an address register, a number register, a register adder, additional register, additional code register, adder, block of logical operations and control, including block of logical addition according to mod2, block of inversion, block of logical addition, block of logical multiplication, functional diagram of correction formation when performing arithmetic operations, functional diagram of correction formation during execution OR operations, a functional diagram of the correction generation when performing an AND operation, a functional diagram of a correction generation when performing a shift operation, a delay element, the first block of unequal elements, the second block of unequal elements, the third block of unequal elements, the first block is an element s OR, second block of OR gates, coding block, first block of AND gates, second block of AND gates, AND gate, first, second, third, fourth, fifth inputs of logical operations and control block, first, second, third outputs of logical operations block and control, control memory, inputs from an exchange device, data inputs from a storage device, an output to an exchange device, data outputs to a storage device, an output of a storage device address, sync pulse outputs, outputs for control signals, outputs for a read command, outputs for write signals, outputs for signals of setting to zero, outputs of the exchange device are connected to the first input of the control unit and to the first input of the second switch, the second inputs of which are connected to the outputs of the memory device, the first outputs of the second switch go to the input of the exchange device, the second outputs go to the input of the memory device , and the third outputs are connected respectively to the first inputs of the count chik commands, shift counter, number register, adder register, additional register, additional code register, to the inputs of the operation code decoder, to the second inputs of the control unit, to the first input of the first switch, the first output of which is connected to the first input of the address register, the third input of the block control unit is connected to the outputs of the operation code decoder, and the fourth input is connected to the outputs of the clock pulse generator, and the fifth input is connected to the first output of the control memory, the first output of the control unit is connected to the input of the control memory, the second output of the control unit is connected to the second input of the first switch, the third and the fourth inputs of which are connected, respectively, to the outputs of the address register and the command counter, and the address of the memory cell is removed from the second output, the third output of the control unit is connected to the second inputs of the command counter, shift counter, address register, number register, adder register, additional register , regis tra additional code, to the first group of inputs of the third switch, to the third group of inputs of the second switch, to the first input of the block of logical operations and control and is the input of clock pulses, the second, third, fourth and fifth outputs of the control memory unit are connected respectively to the third, fourth, fifth and to the sixth inputs of the command counter, shift counter, address register, number register, adder register, additional register, additional code register, to the first group of inputs of the third switch, to the third group of inputs of the second switch, to the second inputs of the block of logical operations and control and are the outputs of the control signals, read signals, recording signals, signals for setting devices to a zero state, the outputs of the number register, adder register, additional register, additional code register are connected to the second inputs of the third switch and to the fourth inputs of the second switch, the output of the shift counter is connected to the fifth inputs of the second about the switch, the first outputs of the third switch are connected, respectively, to the inputs of the adder and to the third inputs of the logical operations and control unit, the outputs of the adder are connected to the fourth inputs of the logical operations and control unit, the second outputs of the third switch are connected to the fifth inputs of the logical operations and control unit, which differs in that that it additionally contains a decoder, a block of OR elements, a block of AND elements, a corrector, and the first outputs of the logical operations and control block are connected to the first inputs of the corrector, the second outputs are connected to the sixth inputs of the second switch, the third outputs of the logical operations and control block are connected to the first the inputs of the I element block and the inputs of the decoder, the first group of outputs of which is connected to the second inputs of the I element block, the third input of which is connected to the third output of the control unit, and the output is connected to the second input of the corrector, the outputs of the corrector are connected to the seventh inputs of the second switch, the second group output ov of the decoder is connected to the inputs of the OR element block, the output of which is connected to the eighth input of the second switch.
Процессор (фиг. 1) содержит управляющий узел 1, операционный узел 2, дешифратор 3 кода операции, генератор 4 тактовых импульсов, блок 5 управления, первый коммутатор 6, второй коммутатор 7, третий коммутатор 8, счетчик 9 команд, счетчик 10 сдвигов, регистр 11 адреса, регистр 12 числа, регистр 13 сумматора, регистр 14 дополнительный, регистр 15 дополнительного кода, сумматор 16, блок 17 логических операций и контроля, первый 18, второй 19, третий 20, четвертый 21, пятый 22 входы блока 17 логических операций и контроля, первый 23, второй 24, третий 25 выходы блока 17 логических операций и контроля, управляющая память 26, входы 27 устройства обмена, входы 28 данные из запоминающего устройства, выход 29 на устройство обмена, выходы 30 данные на запоминающее устройство, выход 31 адреса запоминающего устройства, выходы 32 синхроимпульсов, выходы 33 для сигналов управления, выходы 34 для команды считывание, выходы 35 для сигналов записи, выходы 36 для сигналов установки в нулевое состояние, дешифратор 37, блок 38 элементов ИЛИ, блок 39 элементов И, корректор 40.The processor (Fig. 1) contains a
Блок 17 логических операций и контроля (фиг. 2) содержит блок 41 сложения по mod2, блок 42 логического сложения, блок 43 логического умножения, функциональную схему 44 формирования поправки при выполнении арифметических операций, функциональную схему 45 формирования поправки при выполнении операции ИЛИ, функциональную схему 46 формирования поправки при выполнении операции И, функциональную схему 47 формирования поправки при выполнении операции сдвига, элемент 48 задержки, первый блок 49 элементов неравнозначности, второй блок 50 элементов неравнозначности, третий блок 51 элементов неравнозначности, первый блок 52 элементов ИЛИ, второй блок 53 элементов ИЛИ, первый блок 54 кодирования, второй блок 55 кодирования, первый блок 56 элементов И, второй блок 57 элементов И.The
Функциональная схема 44 формирования поправки при выполнении арифметических операций (фиг. 3) содержит первый элемент 58 И, второй элемент 59 И, третий элемент 60 И, четвертый элемент 61 И, пятый элемент 62 И, шестой элемент 63 И, первый элемент 64 ИЛИ, второй элемент 65 ИЛИ, третий элемент 66 ИЛИ, четвертый элемент 67 ИЛИ, пятый элемент 68 ИЛИ, шестой элемент 69 ИЛИ.The functional diagram 44 of the formation of the correction when performing arithmetic operations (Fig. 3) contains the
Функциональная схема 47 формирования поправки при выполнении операции сдвига.Functional diagram 47 for generating a correction when performing a shift operation.
Выходы 27 устройства обмена подключены к первому входу блока 5 управления и к первому входу второго коммутатора 7, вторые входы 28 которого подключены к выходам запоминающего устройства, первые выходы второго коммутатора 7 поступают на вход 29 устройства обмена, вторые выходы поступают на вход запоминающего устройства, а третьи выходы подключены соответственно к первым входам счетчика 9 команд, счетчика 10 сдвигов, регистра 12 числа, регистра 13 сумматора, регистра 14 дополнительного, регистра 15 дополнительного кода, к входам дешифратора 3 кода операции, к вторым входам блока 5 управления, к первому входу первого коммутатора 6, первый выход которого подключен к первому входу регистра 11 адреса, третий вход блока 5 управления подключен к выходам дешифратора 3 кода операции, а четвертый вход подключен к выходам генератора 4 тактовых импульсов, а пятый вход подключен к первому выходу управляющей памяти 26, первый выход блока 5 управления подключен к входу управляющей памяти 26, второй выход блока 5 управления подключен к второму входу первого коммутатора 6, третьи и четвертые входы которого подключены соответственно к выходам регистра 11 адреса и счетчика 9 команд, а с второго выхода 31 снимается адрес ячейки памяти запоминающего устройства, третий выход блока 5 управления подключен к вторым входам счетчика 9 команд, счетчика 10 сдвигов, регистра 11 адреса, регистра 12 числа, регистра 13 сумматора, регистра 14 дополнительного, регистра 15 дополнительного кода, к первой группе входов третьего коммутатора 8, к третьей группе входов второго коммутатора 7, к первому входу 18 блока 17 логических операций и контроля и является входом синхроимпульсов, вторые, третьи, четвертые и пятые выходы блока управляющей памяти подключены соответственно к третьим, четвертым пятым и шестым входам счетчика 9 команд, счетчика 10 сдвигов, регистра 11 адреса, регистра 12 числа, регистра 13 сумматора, регистра 14 дополнительного, регистра 15 дополнительного кода, к первой группе входов третьего коммутатора 8, к третьей группе входов второго коммутатора 7, к вторым входам 19 блока 17 логических операций и контроля и являются выходами управляющих сигналов, сигналов считывания, сигналов записи, сигналов установки устройств в нулевое состояние, выходы регистра 12 числа, регистра 13 сумматора, регистра 14 дополнительного, регистра 15 дополнительного кода подключены к вторым входам третьего коммутатора 8 и к четвертым входам второго коммутатора 7, выход счетчика 10 сдвигов подключен к пятым входам второго коммутатора 7, первые выходы третьего коммутатора 8 подключены соответственно к входам сумматора 16 и к третьим входам 20 блока 17 логических операций и контроля, выходы сумматора 16 подключены к четвертым входам 21 блока 17 логических операций и контроля, вторые выходы третьего коммутатора 8 подключены к пятым входам 22 блока 17 логических операции и контроля, отличающееся тем, что он дополнительно содержит дешифратор 37, блок 38 элементов ИЛИ, блок 39 элементов И, корректор 40, причем первые выходы блока 17 логических операций и контроля подключены к первым входам корректора 40, вторые выходы подключены к шестым входам второго коммутатора 7, третьи выходы блока 17 логических операций и контроля подключены к первым входам блока 30 элементов И и к входам дешифратора 37, первая группа выходов которого подключена к вторым входам блока 39 элементов И, третий вход которого подключен к третьему выходу блока 5 управления, а выход подключен к второму входу корректора 40, выходы корректора 40 подключены к седьмым входам второго коммутатора 7, вторая группа выходов дешифратора 37 подключена к входам блока 38 элементов ИЛИ, выход которого подключен к восьмому входу второго коммутатора 7.The
Процессор предназначен для обработки информации, поступающей с оперативного запоминающего устройства на вход 28.The processor is designed to process information coming from the random access memory to input 28.
Для обнаружения и исправления ошибок в оперативном запоминающем устройстве используются коды с обнаружением и исправлением байтов ошибок (в этом случае, под байтом ошибок понимаются ошибки, кратность которых не превышает число разрядов b блока информации).To detect and correct errors in the random access memory, codes with the detection and correction of error bytes are used (in this case, the error byte means errors whose multiplicity does not exceed the number of bits b of the information block).
В этом случае имеем кодовый наборIn this case, we have a code set
значение контрольных разрядов r1 f r2 f… rb f, r1 g r2 g........ rb g, позволяют сформировать значение синдрома ошибки при этом, первая часть контрольных разрядов r1 f r2 f… rb f определяет вектор ошибки (ошибочные разряды в блоке информации), а значение второй части контрольных разрядов r1 g r2 g........ rb g предназначено для определения номер ошибочного блока (байта) информации.the value of the check digits r 1 f r 2 f ... r b f , r 1 g r 2 g ........ r b g , allow to form the value of the error syndrome in this case, the first part of the check digits r 1 f r 2 f … R b f determines the error vector (erroneous bits in the information block), and the value of the second part of the check bits r 1 g r 2 g ........ r b g is intended to determine the number of the erroneous block (byte) of information.
Число байтов информации определяется по формуле: w=2b The number of bytes of information is determined by the formula: w = 2 b
Таким образом, кодовый набор передается в видеThus, the code set is transmitted in the form
Результат сложения по mod2 переданных значений контрольных разрядов, ri f, ri g и контрольных разрядов ri fП, ri gП сформированных относительно полученных информационных разрядов даст значение синдрома ошибки, включающего две частиThe result of mod2 addition of the transmitted values of the check bits, r i f , r i g and check bits r i fП , r i gП formed with respect to the received information bits will give the value of the error syndrome, which includes two parts
Значение синдрома ошибки Sf определяет вектор ошибки (ошибочные разряды в блоке информации), а значение синдрома ошибки Sg определяет номер ошибочного блока (байта) информации.The value of the error syndrome S f determines the error vector (erroneous bits in the information block), and the value of the error syndrome S g determines the number of the erroneous block (byte) of information.
Стратегия декодирования заключается на следующих положениях:The decoding strategy is based on the following provisions:
1. Sf=0; Sg=0. Ошибок нет.1. S f = 0; S g = 0. There are no errors.
2. Sf=0; Sg≠0. Произошла ошибка в контрольных разрядах или не корректируемая ошибка в байтах информации.2. S f = 0; S g ≠ 0. An error occurred in the check bits or an uncorrectable error in the information bytes.
3. Sf≠0; Sg≠0 (Sg=0). Произошла ошибка в информационных байтах (в одном байте - корректируемая, в двух - обнаруживаемая).3. S f ≠ 0; S g ≠ 0 (S g = 0). An error occurred in information bytes (one byte - corrected, two - detectable).
Для кода (32,8) значение второй части контрольных разрядов формируется проверками:For the code (32.8), the value of the second part of the check bits is formed by checks:
r1=x1⊕z1 ⊕а1 ⊕с1 ⊕e1⊕f1 ⊕g1⊕h1;r 1 = x 1 ⊕z 1 ⊕а 1 ⊕с 1 ⊕e 1 ⊕f 1 ⊕g 1 ⊕h 1 ;
r2=x2⊕z2 ⊕а2 ⊕c2⊕e2⊕f2 ⊕g2⊕h2;r 2 = x 2 ⊕z 2 ⊕a 2 ⊕c 2 ⊕e 2 ⊕f 2 ⊕g 2 ⊕h 2 ;
r3=х3⊕z3⊕а3⊕с3⊕е3⊕f3 ⊕g3⊕h3;r 3 = x 3 ⊕z 3 ⊕а 3 ⊕с 3 ⊕е 3 ⊕f 3 ⊕g 3 ⊕h 3 ;
r4=x1⊕ z3⊕ а2⊕ а3⊕ c2⊕ е1⊕ е3⊕ f1⊕ f2⊕g1⊕ g2⊕ g3;r 4 = x 1 ⊕ z 3 ⊕ a 2 ⊕ a 3 ⊕ c 2 ⊕ е 1 ⊕ е 3 ⊕ f 1 ⊕ f 2 ⊕g 1 ⊕ g 2 ⊕ g 3 ;
r5=x2⊕ х3⊕ z1⊕ а3⊕ c1⊕ с3⊕е1⊕е2⊕ f2⊕g1⊕ g2⊕ g3;r 5 = x 2 ⊕ x 3 ⊕ z 1 ⊕ a 3 ⊕ c 1 ⊕ c 3 ⊕е 1 ⊕е 2 ⊕ f 2 ⊕g 1 ⊕ g 2 ⊕ g 3 ;
r6=х3⊕ z2⊕ z3⊕ а1⊕ c1⊕ c2⊕ е2⊕ f1⊕ f3⊕g1⊕ g2⊕ g3;r 6 = x 3 ⊕ z 2 ⊕ z 3 ⊕ a 1 ⊕ c 1 ⊕ c 2 ⊕ е 2 ⊕ f 1 ⊕ f 3 ⊕g 1 ⊕ g 2 ⊕ g 3 ;
r7=х3⊕ х3⊕ а1⊕ а3⊕ c2⊕ е1⊕ f2⊕g1⊕ g2⊕ g3;r 7 = x 3 ⊕ x 3 ⊕ a 1 ⊕ a 3 ⊕ c 2 ⊕ e 1 ⊕ f 2 ⊕g 1 ⊕ g 2 ⊕ g 3 ;
r8=x1⊕ x2⊕ z2⊕ а2⊕ а3⊕ с3⊕ е3⊕ f2⊕f3 ⊕g1⊕ g2⊕ g3.r 8 = x 1 ⊕ x 2 ⊕ z 2 ⊕ a 2 ⊕ a 3 ⊕ c 3 ⊕ e 3 ⊕ f 2 ⊕f 3 ⊕g 1 ⊕ g 2 ⊕ g 3 .
В табл. 1 представлены значения синдромов ошибок кода (32,8), исправляющего кратные ошибки в блоке информации и обнаруживающего ошибки в произвольных блоках информации.Table 1 shows the values of error syndromes of the code (32,8), which corrects multiple errors in the block of information and detects errors in arbitrary blocks of information.
Процессор включает в себя два основных устройства: управляющий узел 1 и операционный узел 2.The processor includes two main devices:
Управляющий узел 1 координирует действия узлов операционного узла 2 между собой и с другими устройствами ЭВМ, а также выполняет набор операций, включающих команды обращения к памяти. Он вырабатывает в определенной временной последовательности управляющие сигналы, под действием которых в узлах операционного узла 2 выполняются требуемые действия.The
Каждое такое элементарное действие, выполняемое в операционном узле 2 в течение одного тактового периода, называется микрооперацией.Each such elementary action performed in the
В определенные тактовые периоды одновременно могут выполняться несколько микроопераций. Такая совокупность одновременно выполняемых микроопераций называется микрокомандой, а весь набор микрокоманд, предназначенных для решения определенной задачи, называется микропрограммой.Several micro-ops can be executed simultaneously at certain clock periods. Such a set of simultaneously executed micro-operations is called a microinstruction, and the entire set of microinstructions designed to solve a specific task is called a microprogram.
Общий временной интервал, в течение которого происходит выборка, хранение и преобразование одной команды в набор управляющих сигналов, называется циклом работы управляющего узла 1.The total time interval during which the sampling, storage and transformation of one command into a set of control signals occurs is called the operating cycle of the
Таким образом, управляющий узел 1 осуществляет преобразование команды в соответствующий набор управляющих сигналов и обеспечивает:Thus, the
чтение команды, находящейся в очередной ячейке памяти;reading the command located in the next memory cell;
расшифровку кода операции (команды);decoding of the operation code (command);
отыскание операндов (чисел) по указанному адресу, содержащемуся в команде;finding operands (numbers) at the specified address contained in the command;
обеспечить выдачу управляющих сигналов в операционный узел для выполнения над ними действий, указанных в коде операции команды.ensure the issuance of control signals to the operating unit for performing the actions on them specified in the command operation code.
В данном случае используется микропрограммный управляющий узел 1, в котором микрокоманды хранятся в управляющей памяти 19.In this case,
В этом случае, слова, отображающие команды хранятся в памяти в последовательно пронумерованных ячейках, что позволяет формировать адрес очередной команды, добавлением единицы к адресу предыдущей команды, при этом слово состоит из нескольких частей: например, кода операции, указывающего вид операции и адресов чисел, над которыми должна быть произведена соответствующая операция.In this case, words representing commands are stored in memory in sequentially numbered cells, which allows you to form the address of the next command by adding one to the address of the previous command, while the word consists of several parts: for example, an operation code indicating the type of operation and addresses of numbers, over which the corresponding operation should be performed.
Дешифратор 3 кода операций по выбранной из оперативной памяти команде определяет номер требуемой микропрограммы в управляющей памяти 26.The
Генератор 4 тактовых импульсов предназначен для формирования тактовых и синхронизирующих импульсов.The generator of 4 clock pulses is designed to generate clock and synchronizing pulses.
Счетчик 9 команд предназначен для формирования адреса ячейки памяти очередной команды, путем естественной выборки, т.е. прибавлением к его содержимому единицы.The
Регистр 11 адреса предназначен для формирования адреса ячейки памяти при командах условного или безусловного перехода с возвратом.Register 11 address is designed to form the address of the memory cell in the instructions of the conditional or unconditional jump with return.
Блок 5 управления предназначен для определения адреса очередной микрокоманды в управляющей памяти 20, формирования адреса очередной команды (управления работой первого коммутатора 6), координации работы (выдачи синхроимпульсов) устройств процессора 1.The
Управляющая память 26 представляет собой постоянное запоминающее устройство и предназначена для выдачи (в зависимости от кода операции) выдачи управляющих сигналов (сигналов управления, сигналов считывания, сигналов записи, сигналов установки в нулевое состояние) на функциональные узлы процессора. При этом слово памяти содержит информационные разряды (для управляющих сигналов) и контрольные разряды, сформированные на основе предлагаемого метода кодирования.The
Операционный узел 2 предназначен для выполнения арифметических и логических операций и включает в свой состав (фиг. 1) счетчик 10 сдвигов, регистр 12 числа, регистр 13 сумматора, регистр 14 дополнительный, регистр 15 дополнительного кода, сумматор 16, блок 17 логических операций и контроля.
Счетчик 10 сдвигов предназначен для подсчета количества сдвигов при выполнении операций умножения и деления, количества сдвигов промежуточных результатов и нормализации.The counter 10 shifts is designed to count the number of shifts when performing multiplication and division operations, the number of shifts of intermediate results and normalization.
Регистр 11 адреса представляет собой регистр памяти и предназначен для хранения адресе очередной команды.
Регистр 12 числа представляет собой регистр памяти и предназначен для хранения операндов при выполнении арифметических и логических операций (хранения множимого, при выполнении операции умножения и делителя при выполнении операции деления).The register 12 of the number is a memory register and is intended for storing operands when performing arithmetic and logical operations (storing the multiplicand when performing a multiplication operation and a divisor when performing a division operation).
Регистр 13 сумматора (аккумулятора) представляет собой регистр сдвига (вправо -при выполнении операции умножения и влево - при выполнении операции деления), и предназначен для хранения делимого старших разрядов результата умножения.The
Заметим, что при выполнении операции деления, блоком 5 управления анализируется значение знакового разряда регистра 12 числа и регистра 13 сумматора.Note that when performing the division operation, the
Регистр 14 дополнительный представляет собой регистр сдвига (вправо - при выполнении операции умножения и влево - при выполнении операции деления), и предназначен для хранения множителя и младших разрядов результата умножения при выполнении операции умножения и результата деления при выполнении операции деления).The
Заметим, что при выполнении операции умножения, блоком 5 управления анализируется значение младшего разряда регистра 14 дополнительного.Note that when performing the multiplication operation, the
Регистр 15 дополнительного кода представляет собой регистр памяти и предназначен для хранения отрицательного числа в дополнительном коде (при выполнении операции вычитания и операции деления).The
Блок 17 логических операций и контроля (фиг. 2) предназначен для обнаружения и коррекции ошибок, возникающих при выполнении арифметических и логических операций.
Сумматор 16 представляет собой параллельный n-разрядный сумматор и предназначен для выполнения операции сложения чисел, например, двух кодовых наборовThe
В результате арифметического сложения информационных разрядов и сложения по mod2 значений контрольных получим результатAs a result of arithmetic addition of information bits and mod2 addition of control values, we obtain the result
Анализ полученного результата, позволяет сделать вывод, что значения контрольных не соответствуют результату суммы информационных разрядов.Analysis of the result obtained allows us to conclude that the control values do not correspond to the result of the sum of information bits.
Для формирования требуемого значения контрольных разрядов к полученному значению контрольных разрядов прибавляется поправка, сформированная относительно функции переносов, путем кодирования ее рассматриваемым методом кодирования информации.To form the required value of the check digits, an amendment formed with respect to the transfer function is added to the obtained value of the check digits by encoding it with the considered information coding method.
Функциональная схема 44 формирования поправки при выполнении арифметических операций (Фиг. 3) формирует функцию переносов относительно рассматриваемых слагаемыхThe functional diagram 44 of the formation of the amendment when performing arithmetic operations (Fig. 3) generates the function of transfers with respect to the terms under consideration
Для рассматриваемого примера имеем функцию переносовFor the example under consideration, we have the transfer function
Sп=011 111 111 011 100 111 110000.S p = 011 111 111 011 100 111 110000.
Значения разрядов функции переносов через первый блок 52 элементов ИЛИ поступают на вход первого блока 54 кодирования, с выходов которого снимается значения поправки к значениям контрольных разрядов при выполнении арифметических операций.The values of the digits of the carry function through the
Для полученной функции переносов значение поправки равно Пк=10101110.For the obtained transfer function, the correction value is P k = 10101110.
В первом блоке 49 элементов неравнозначности осуществляется поразрядное сложение по mod2 значений контрольных разрядов слагаемых. Во втором блоке 50 элементов неравнозначности осуществляется поразрядное сложение результата суммы значений контрольных разрядов с значениями разрядов поправки. В результате имеем правильное значение контрольных разрядов для арифметической операции сложения. Для нашего примера получим значение контрольных разрядовIn the first block 49 of unequal elements, the bitwise addition mod2 of the values of the check digits of the addends is carried out. In the second block 50 unequal elements, the bitwise addition of the result of the sum of the values of the check digits with the values of the correction digits is carried out. As a result, we have the correct value of the check digits for the arithmetic addition operation. For our example, we get the value of the check digits
. ...
Вторым блоком 55 кодирования осуществляется кодирование результата суммы слагаемых, поступающего с выходов сумматора 16.The
Третьим блоком 51 неравнозначности осуществляется поразрядное сравнение значений контрольных разрядов сформированных относительно полученной арифметической суммы и сформированных на втором блоке 50 элементов неравнозначности. С выходов третьего блока 51 снимается значение синдрома ошибки.The third block 51 unequalities is a bitwise comparison of the values of the check bits formed with respect to the received arithmetic sum and generated on the second block 50 unequal elements. The value of the error syndrome is removed from the outputs of the third block 51.
При сдвиге вправо, функциональная схема 47 формирования поправки при выполнении операции сдвига формирует функцию сдвига на основе исходных значений информационных разрядов следующим образомWhen shifting to the right, the functional circuit 47 for generating a correction when performing the shift operation generates a shift function based on the initial values of the information bits as follows
где z1 - значение сигнала переноса из другого регистра, например, в старший разряд регистра дополнительного из младшего разряда регистра сумматора при выполнении операции умножения.where z 1 is the value of the transfer signal from another register, for example, to the high-order bit of the additional register from the low-order bit of the adder register when performing the multiplication operation.
Значение разрядов функции сдвигов через первый блок 52 элементов ИЛИ поступают на вход первого блока 54 кодирования, с входов которого снимается значение поправки к контрольным разрядам при сдвиге вправо.The value of the bits of the function of shifts through the
Во втором блоке 50 элементов неравнозначности осуществляется поразрядное сложение значений поправки с значениями контрольных разрядов сдвигаемой информации.In the second block 50 of unequal elements, the bitwise addition of the correction values with the values of the check bits of the shifted information is carried out.
Одновременно результаты сдвига информационных разрядов, через блок 52 элементов ИЛИ поступают на вход второго блока 54 кодирования. Результаты значений контрольных разрядов, сформированных на втором блоке 50 элементов неравнозначности и поступающих с выходов второго блока 55 кодирования, поразрядно сравниваются третьим блоком 51 элементов неравнозначности, с выходов которого снимается значение синдрома ошибки.At the same time, the results of the shift of information bits, through the
Например, при сдвиге вправо и отсутствии переноса из другого регистра кодового набораFor example, when shifting to the right and there is no transfer from another register of the code set
получим двоичный набор для формирования поправки Рwe get a binary set for the formation of the correction P
При кодировании данного набора с помощью предложенного метода первым блоком 54 кодирования значение поправки составит Р=110 10111. Сложение по mod2 вторым блоком 50 элементов неравнозначности исходного значения контрольных разрядов и значения поправки приведет к правильному значению контрольных разрядов при сдвиге информационных разрядов вправоWhen coding this set using the proposed method by the
Где SП - результат, полученный при сдвиге исходного кодового набора вправо.Where S P is the result obtained by shifting the original code set to the right.
Значения символов поправки при сдвиге влево формируются на основе исходного значения информационных разрядов следующим образомThe values of the correction symbols when shifting to the left are formed on the basis of the initial value of the information bits as follows
где z1 - значение сигнала переноса старшего разряда одного регистра в младший разряд регистра сдвига.where z 1 is the value of the signal for transferring the high-order bit of one register to the low-order bit of the shift register.
Формирование синдрома ошибки при сдвиге влево осуществляется аналогичным образом.The formation of the error syndrome when shifting to the left is carried out in a similar way.
При выполнении операции логического сложения, значение вектора для вычисления поправки к контрольным разрядам осуществляется схемой 46 формирования поправки при выполнении операции ИЛИ путем выполнения операции И относительно одноименных разрядов слагаемых и кодирования полученного результата рассматриваемым методом.When performing the operation of logical addition, the value of the vector for calculating the correction to the check bits is carried out by the circuit 46 for generating the correction when performing the OR operation by performing the AND operation with respect to the bits of the addends of the same name and encoding the result obtained by the method in question.
Так, например, при выполнении операции ИЛИ относительно информационных разрядов блоком 42 элементов ИЛИ и сложения по mod2 контрольных разрядов первым блоком 49 элементов неравнозначности (фиг. 2) чисел А и В имеем результатSo, for example, when performing the OR operation with respect to the information bits by the block 42 of OR elements and adding mod2 of the check bits by the first block 49 of unequal elements (Fig. 2) of the numbers A and B, we have the result
Функциональную схему 45 формирования поправки при выполнении операции ИЛИ выполняет операцию И относительно информационных разрядов даст значение вектора для вычисления поправкиThe functional diagram 45 of the formation of the correction when performing the OR operation performs the AND operation with respect to the information bits will give the vector value for calculating the correction
В этом случае первый блок 54 кодирования сформирует значение поправки: Р=10000010.In this case, the
В результате сложения по mod2 вторым блоком 50 элементов неравнозначности значения поправки и значений контрольных разрядов, поступающих с первого блока 49 элементов неравнозначности, получим результат: 10010100, т.е. имеем правильное значение контрольных разрядов для операции ИЛИ.As a result of addition mod2 by the second block of 50 unequal elements of the correction value and the values of the check digits coming from the first block of 49 unequal elements, we get the result: 10010100, i.e. we have the correct value of the check digits for the OR operation.
Результаты значений контрольных разрядов сформированных на втором блоке 50 элементов неравнозначности и поступающих с выходов второго блока 55 кодирования поразрядно сравниваются третьим блоком 51 элементов неравнозначности, с выходов которого снимается значение синдрома ошибки.The results of the values of the check bits formed on the second block 50 of the unequal elements and coming from the outputs of the
Аналогичным образом формируется поправка при выполнении логического умножения, только при формировании вектора поправки схемой 46 формирования поправки при выполнении операции И, реализуется поразрядная операция ИЛИ относительно одноименных разрядов множимого и множителя.Similarly, an amendment is formed when performing logical multiplication, only when the correction vector is generated by the correction generation circuit 46 when the AND operation is performed, a bitwise OR operation is performed with respect to the same-named digits of the multiplier and the multiplier.
Для операций логического сложения по mod2 блоком 41 сложения по mod2 формирование поправки к контрольным разрядам не требуется.For the operations of logical addition mod2 by the mod2 addition unit 41, the formation of a correction to the check bits is not required.
Так, например, при выполнении операции сложения по mod2 информационных разрядов блоком 41 сложения по mod2 и контрольных разрядов первым блоком 49 элементов неравнозначности (фиг. 2) чисел А и В имеем результатSo, for example, when performing the operation of addition mod2 of information bits by the block 41 of addition mod2 and check bits by the first block 49 of unequal elements (Fig. 2) of numbers A and B, we have the result
Значения контрольных разрядов, сформированные вторым блоком 55 кодирования относительно информационных разрядов, полученных при выполнении арифметических и логических операций, поразрядно сравниваются третьим блоком 51 элементов неравнозначности с переданными значениями контрольными разрядами с учетом поправки.The check bit values generated by the
При отсутствии ошибок на его выходах имеем нулевое значение сигналов.In the absence of errors at its outputs, we have a zero signal value.
Работа полезной модели начинается с приходом сигнала "Пуск" по входной группе 27 входов устройства обмена процессора с периферийными блоками. По этой команде блок 5 выдает команду на считывание с управляющей памяти 26 содержимого первой ячейки памяти.The work of the utility model begins with the arrival of the "Start" signal through the
В первой ячейке памяти расположена команда "Сброс системы", которая устанавливает в исходное состояние регистры и блоки процессора, В счетчик 9 команд записывается "1", устройство управления 1 выдает микрокоманды в следующей последовательности:The first memory cell contains the "System Reset" command, which initializes the registers and blocks of the processor, "1" is written to the
1) На первом такте сигналы микрокоманды поступает на вход считывания счетчика 9 команд и на вход записи регистра 11 адреса, при этом содержимое счетчика 9 команд пересылается в регистр 11 адреса (или через первый коммутатор 6 на адресные входы запоминающего устройства при естественной выборке команд непосредственно со счетчика 9 команд);1) On the first clock cycle, the micro-command signals are fed to the read input of the
2) На втором такте к содержимому счетчика 9 команд прибавляется единица - подготавливается адрес следующей команды;2) On the second cycle, one is added to the contents of the counter of 9 commands - the address of the next command is prepared;
1) На третьем такте сигналы микрокоманды поступают на вход считывания регистра 11 адреса и на вход считывания содержимого ячейки памяти запоминающего устройства по указанному адресу. При этом команда, хранящаяся в первой ячейке памяти, записывается в регистр 12 числа;1) On the third cycle, the microinstruction signals are fed to the read input of the
2) На четвертом такте сигналы микрокоманды подаются на вход считывания регистра 12 числа, вход второго коммутатора 7 и на вход дешифратора 3 кода операции, где раскодируются, после чего управляющий узел 1 переходит ко второму этапу работы.2) On the fourth clock cycle, the micro-command signals are fed to the input of reading the register 12, the input of the second switch 7 and to the input of the
Для примера рассмотрим порядок исполнения одной из команд, записанной в регистре 12 числа после выполнения первых четырех тактов.For example, consider the order of execution of one of the instructions written in register 12 after the first four clock cycles.
Пусть в поле кода операции команды содержимого регистра 12 числа записана команда сложения содержимого регистра 13 сумматора с числом, расположенным запоминающем устройстве по адресу, указанному в поле адреса регистра 12 числа, (при использовании одноадресной команды).Let in the field of the operation code of the command of the contents of the register 12 numbers written the command of adding the contents of the
Управляющий узел 1 при этом выдает следующие микрокоманды:In this case, the
3) на пятом такте сигналы микрокоманды подаются на вход считывания регистра 12 числа, на вход второго коммутатора 7, первого коммутатора 6 и на вход записи регистра 11 адреса (адрес, хранящийся в регистре 12 числа, записывается в регистр 11 адреса, содержимое регистра 12 числа обнуляется);3) on the fifth clock cycle, the microinstruction signals are fed to the input of reading the register 12, to the input of the second switch 7, the
4) На шестом такте сигналы микрокоманды подаются на вход считывания регистра 11 адреса, на вход первого коммутатора 6, на вход считывания запоминающего устройства и на вход записи регистра 12 числа (из запоминающего устройства в регистр 12 числа записывается второе слагаемое (считаем, что первое слагаемое уже находится в регистре 13 сумматора);4) On the sixth clock cycle, the microinstruction signals are fed to the read input of the
5) На седьмом такте сигналы микрокоманды подаются на вход считывания регистра 12 числа и регистра 13 сумматора, при этом арифметико-логическое устройство осуществляет операцию сложения и запись результата сложения в регистр 13 сумматора следующим образом.5) On the seventh clock cycle, the microinstruction signals are fed to the read input of the number register 12 and the
Результат суммы с выхода сумматора 16, поступает на блок 17 логических операций и контроля (фиг. 2), далее устройство работает в соответствии с примером выполнения арифметических операций, приведенном вышеThe result of the sum from the output of the
В результате арифметического сложения информационных разрядов и сложения по mod2 значений контрольных и значений поправки получим результат: S=010000010011101101000110 101 11000.As a result of arithmetic addition of information bits and mod2 addition of control values and correction values, we get the result: S = 010000010011101101000110 101 11000.
При этом сформированные значения контрольных разрядов относительно полученной операции сравниваются с переданными значениями контрольных разрядов третьим блоком 51 элементов неравнозначности (фиг. 2). При отсутствии ошибки на его выходах имеем нулевые значения сигналов.In this case, the generated values of the check bits with respect to the operation obtained are compared with the transmitted values of the check bits by the third block 51 of unequal elements (Fig. 2). If there is no error at its outputs, we have zero signal values.
При возникновении ошибки в результате суммирования, например, в третьем разряде суммы блока информации -X, получим результатIf an error occurs as a result of summation, for example, in the third bit of the sum of the information block -X, we get the result
S=1*10 000010011101101000110 001 01001.S = 1 * 10 000010011101101000110 001 01001.
В этом случае на выходе третьего блока 51 элементов неравнозначности (фиг. 2) получим значение синдрома ошибки:In this case, at the output of the third block 51 of unequal elements (Fig. 2), we obtain the value of the error syndrome:
100 10001.100 10001.
Совокупность значений разрядов синдрома ошибки определяет адрес байта информации, имеющего ошибку, при этом значения первых трех разрядов синдрома ошибки являются вектором ошибки и определяют ошибочный разряд в байте информации. В соответствии с таблицей 1, полученный синдром ошибки указывает на ошибку в третьем разряде байта информации-Х.The set of values of the bits of the error syndrome determines the address of the information byte having an error, while the values of the first three bits of the error syndrome are the error vector and determine the erroneous bit in the information byte. According to Table 1, the resulting error syndrome indicates an error in the third bit of the information byte-X.
Таблица 1. Значения синдромов ошибок кода (32,8), исправлющего байты ошибок в блоке информации и обнаруживающего в произвольных блоках информации Table 1. Values of error syndromes of the code (32,8), which corrects error bytes in a block of information and detects in arbitrary blocks of information
Значения вектора ошибки поступают на первые входы блока 39 элементов И. С выхода дешифратора 37 на второй вход блока 39 элементов И поступает сигнал, указывающий адрес байта информации, имеющего ошибку. На первые входы корректора 40 с выходов 23 блока 17 логических операций и контроля поступают значения информационных разрядов, а на вторые входы корректора 40, при поступлении синхроимпульса на третьи входы блока 39 элементов И, поступают значения вектора ошибки. В корректоре 40 осуществляется коррекция ошибочных информационных разрядов, путем поразрядного сложения по mod2 значений вектора ошибки с информационными разрядами байта информации, имеющего ошибку.The values of the error vector are fed to the first inputs of the
С выходов корректора 40, значения информационных разрядов и значения контрольных разрядов с выходов 24 блока 17 логических операций и контроля поступают на входы второго коммутатора 7.From the outputs of the
Аналогичным образом процессор функционирует при выполнении логических операций.The processor functions in a similar way when performing logical operations.
При возникновении некорректируемой ошибки, сигналы с выходов дешифратора 37 через блок 38 элементов ИЛИ и второй коммутатор 7 поступают в систему прерывания, где формируется сигнал «Отказ процессора».When an uncorrectable error occurs, the signals from the outputs of the
8) На восьмом такте выдается микрокоманда "Конец операций" осуществляется переход на следующую операцию, блок 5 управления приводится в исходное состояние и выдает разрешение на начало выполнения следующей команды, адрес которой указан в счетчике 9 команд.8) On the eighth cycle, a micro-command "End of operations" is issued, the transition to the next operation is carried out, the
Claims (1)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
RU2021101724U RU204275U1 (en) | 2021-01-26 | 2021-01-26 | FAIL-SAFE PROCESSOR WITH ERROR CORRECTION IN THE DATA BYTE |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
RU2021101724U RU204275U1 (en) | 2021-01-26 | 2021-01-26 | FAIL-SAFE PROCESSOR WITH ERROR CORRECTION IN THE DATA BYTE |
Publications (1)
Publication Number | Publication Date |
---|---|
RU204275U1 true RU204275U1 (en) | 2021-05-18 |
Family
ID=75920600
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
RU2021101724U RU204275U1 (en) | 2021-01-26 | 2021-01-26 | FAIL-SAFE PROCESSOR WITH ERROR CORRECTION IN THE DATA BYTE |
Country Status (1)
Country | Link |
---|---|
RU (1) | RU204275U1 (en) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU51428U1 (en) * | 2004-10-19 | 2006-02-10 | Алексей Николаевич Царьков | FAULT-RESISTANT PROCESSOR OF INCREASED FUNCTIONAL RELIABILITY |
RU2359315C2 (en) * | 2007-04-28 | 2009-06-20 | Учреждение Российской академии наук Научно-исследовательский институт системных исследований РАН (НИИСИ РАН) | Hybrid microprocessor |
US20100146335A1 (en) * | 2008-12-10 | 2010-06-10 | Moyer William C | Error detection in a multi-processor data processing system |
RU2439667C1 (en) * | 2010-07-08 | 2012-01-10 | Межрегиональное общественное учреждение "Институт инженерной физики" | Processor of higher functioning reliability |
RU2448359C1 (en) * | 2011-04-05 | 2012-04-20 | Межрегиональное общественное учреждение "Институт инженерной физики" | Apparatus for storing and transmitting data with error correction in data byte and error detection in data bytes |
-
2021
- 2021-01-26 RU RU2021101724U patent/RU204275U1/en not_active IP Right Cessation
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU51428U1 (en) * | 2004-10-19 | 2006-02-10 | Алексей Николаевич Царьков | FAULT-RESISTANT PROCESSOR OF INCREASED FUNCTIONAL RELIABILITY |
RU2359315C2 (en) * | 2007-04-28 | 2009-06-20 | Учреждение Российской академии наук Научно-исследовательский институт системных исследований РАН (НИИСИ РАН) | Hybrid microprocessor |
US20100146335A1 (en) * | 2008-12-10 | 2010-06-10 | Moyer William C | Error detection in a multi-processor data processing system |
RU2439667C1 (en) * | 2010-07-08 | 2012-01-10 | Межрегиональное общественное учреждение "Институт инженерной физики" | Processor of higher functioning reliability |
RU2448359C1 (en) * | 2011-04-05 | 2012-04-20 | Межрегиональное общественное учреждение "Институт инженерной физики" | Apparatus for storing and transmitting data with error correction in data byte and error detection in data bytes |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US4402045A (en) | Multi-processor computer system | |
US8010875B2 (en) | Error correcting code with chip kill capability and power saving enhancement | |
Avizienis | Arithmetic algorithms for error-coded operands | |
RU2439667C1 (en) | Processor of higher functioning reliability | |
Agrawal et al. | On modulo (2 n+ 1) arithmetic logic | |
US3098994A (en) | Self checking digital computer system | |
US4994993A (en) | System for detecting and correcting errors generated by arithmetic logic units | |
RU2417409C2 (en) | Fault-tolerant processor | |
RU204275U1 (en) | FAIL-SAFE PROCESSOR WITH ERROR CORRECTION IN THE DATA BYTE | |
US3218612A (en) | Data transfer system | |
RU2758065C1 (en) | Fault-tolerant processor with error correction in a byte of information | |
RU2758410C1 (en) | Fail-safe processor with error correction in two bytes of information | |
RU204690U1 (en) | FAIL-SAFE PROCESSOR WITH ERROR CORRECTION IN TWO BYTES OF INFORMATION | |
US9218239B2 (en) | Apparatuses and methods for error correction | |
Maamar et al. | A 32 bit RISC processor with concurrent error detection | |
RU51428U1 (en) | FAULT-RESISTANT PROCESSOR OF INCREASED FUNCTIONAL RELIABILITY | |
RU102407U1 (en) | CPU COMPUTER | |
CN115220790A (en) | Data processing method, processor and electronic equipment | |
WO2022151724A1 (en) | Error correction system | |
RU2816550C1 (en) | Information storage and reading device with single error correction | |
RU2708956C2 (en) | Processor with high reliability of operation | |
RU106771U1 (en) | DEVICE FOR STORAGE AND TRANSFER OF DATA WITH CORRECTION OF ERRORS IN THE BYTE OF INFORMATION AND DETECTION OF ERRORS IN THE BYtes OF INFORMATION | |
RU186547U1 (en) | PROCESSOR OF INCREASED OPERATING RELIABILITY | |
US3196259A (en) | Parity checking system | |
Bu et al. | A hybrid self-diagnosis mechanism with defective nodes locating and attack detection for parallel computing systems |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
MG9K | Termination of a utility model due to grant of a patent for identical subject |
Ref document number: 2758065 Country of ref document: RU Effective date: 20211026 |