RU186547U1 - Процессор повышенной достоверности функционирования - Google Patents

Процессор повышенной достоверности функционирования Download PDF

Info

Publication number
RU186547U1
RU186547U1 RU2018136392U RU2018136392U RU186547U1 RU 186547 U1 RU186547 U1 RU 186547U1 RU 2018136392 U RU2018136392 U RU 2018136392U RU 2018136392 U RU2018136392 U RU 2018136392U RU 186547 U1 RU186547 U1 RU 186547U1
Authority
RU
Russia
Prior art keywords
inputs
outputs
block
register
control
Prior art date
Application number
RU2018136392U
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 RU2018136392U priority Critical patent/RU186547U1/ru
Application granted granted Critical
Publication of RU186547U1 publication Critical patent/RU186547U1/ru

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • 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

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

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

Description

Полезная модель относится к области вычислительной техники и предназначена для повышения достоверности функционирования ЭВМ за счет обнаружения 100% одиночных ошибок и максимального количества двойных ошибок при минимальных временных и аппаратурных затратах.
Известен процессор (Калабеков Б.А, Микропроцессоры и их применение в системах передачи и обработки сигналов, М.: Радио и связь, 1988, 368 с. (стр. 30, рис. 1.3)), содержащий управляющий узел, операционный узел, первая группа входов управляющего узла является входами процессора, вторая группа входов управляющего узла подключена к первым выходам операционного узла, выходы управляющего узла подключены к первым входам операционного узла, вторые входы, которого являются входами данных, а вторые выходы являются выходами данных.
Недостатком устройства является низкая достоверность функционирования процессора, так как не обеспечивается обнаружение ошибок при выполнении арифметических и логических операций - преобразователей информации сумматора, регистров сдвига, устройств выполнения логических операций.
Наиболее близким по техническому решению является процессор повышенной достоверности функционирования по патенту №2439667 от 2012 г., содержащий управляющий узел, операционный узел, дешифратор кода операции, генератор тактовых импульсов, блок управления, первый коммутатор, второй коммутатор, третий коммутатор, счетчик команд, счетчик сдвигов, регистр адреса, регистр числа, регистр сумматора, регистр дополнительный, регистр дополнительного кода, сумматор, блок контроля, управляющую память, блок логических операций и контроля, включающий блок логического сложения по mod2, блок логического сложения, блок логического умножения, функциональную схему формирования поправки при выполнении арифметических операций, функциональную схему формирования поправки при выполнении операции ИЛИ, функциональную схему формирования поправки при выполнении операции И, функциональную схему формирования поправки при выполнении операции сдвига, первый блок элементов неравнозначности, второй блок элементов неравнозначности, третий блок элементов неравнозначности, первый блок элементов ИЛИ, второй блок элементов ИЛИ, блок кодирования, первый блок элементов И, второй блок элементов И, элемент И, первые входы управляющего узла является входами процессора, вторая группа входов управляющего узла подключена к первым выходам операционного узла, выходы управляющего узла подключены к первым входам операционного узла, вторые входы которого являются входами данных, а вторые выходы являются выходами данных, выходы устройства обмена подключены к первому входу блока управления и к первому входу второго коммутатора, вторые входы которого подключены к выходам запоминающего устройства, первые выходы второго коммутатора поступают на вход устройства обмена, вторые выходы поступают на вход запоминающего устройства, а третьи выходы подключены соответственно к первым входам счетчика команд, счетчика сдвигов, регистра числа, регистра сумматора, регистра дополнительного, регистра дополнительного кода, к входам дешифратора кода операции, к вторым входам блока управления, к первому входу первого коммутатора, первый выход которого подключен к первому входу регистра адреса, третий вход блока управления подключен к выходам дешифратора кода операции а четвертый вход подключен к выходам генератора тактовых импульсов, а пятый вход подключен к первому выходу управляющей памяти, первый выход блока управления подключен к входу управляющей памяти, первые выходы которой подключены к первым входам блока контроля, второй выход блока управления подключен к второму входу первого коммутатора, третьи и четвертые входы которого подключены соответственно к выходам регистра адреса и счетчика команд, а с второго выхода снимается адрес ячейки памяти запоминающего устройства, третий выход блока управления подключен соответственно к вторым входам блока контроля, к вторым входам счетчика команд, счетчика сдвигов, регистра адреса, регистра числа, регистра сумматора, регистра дополнительного, регистра дополнительного кода, к первой группе входов третьего коммутатора, к третьей группе входов второго коммутатора, к первой группе входов блока логических операций и контроля и является выходом синхроимпульсов, второй, третий, четвертый пятый выходы управляющей памяти подключены к третьим и четвертым пятым и шестым входам блока контроля при этом второй выход подключен к четвертому входу второго коммутатора, а третьи, четвертые и пятые выходы блока управляющей памяти подключены соответственно к третьим, четвертым пятым и шестым входам счетчика команд, счетчика сдвигов, регистра адреса, регистра числа, регистра сумматора, регистра дополнительного, регистра дополнительного кода, к первой группе входов третьего коммутатора, к третьей группе входов второго коммутатора, к первой группе входов блока логических операций и контроля и являются выходам управляющих сигналов, сигналов считывания, сигналов записи, сигналов установки устройств в нулевое состояние, шестой выход блока управляющей памяти подключен к пятому входу блока управления, выходы регистра числа, регистра сумматора, регистра дополнительного, регистра дополнительного кода подключены к вторым входам третьего коммутатора и к пятым входам второго коммутатора, выход счетчика сдвигов подключен к шестым входам второго коммутатора, первые выходы третьего коммутатора подключены соответственно к входам сумматора и к вторым входам блока логических операций и контроля, выходы сумматора подключены к третьим входам блока логических операций и контроля, вторые, третьи, четвертые, пятые, шестые и седьмые выходы третьего коммутатора подключены к четвертым, пятым, шестым, седьмым, восьмым и девятым входам блока логических операции и контроля, выходы которого подключены к седьмым, восьмым и девятым входам второго коммутатора.
Недостатком устройства является низкая обнаруживающая способность двойных ошибок при выполнении арифметических и логических операций.
Задачей полезной модели является повышение обнаруживающей способности двойных ошибок в работе процессора встроенными средствами контроля при выполнении арифметических и логических операций.
Сущность полезной модели заключается в том, что в процессоре повышенной достоверности функционирования, содержащем управляющий узел, операционный узел, дешифратор кода операции, генератор тактовых импульсов, блок управления, первый коммутатор, второй коммутатор, третий коммутатор, счетчик команд, счетчик сдвигов, регистр адреса, регистр числа, регистр сумматора, регистр дополнительный, регистр дополнительного кода, сумматор, блок контроля, управляющую память, первый блок кодирования, второй блок кодирования, блок логических операций и контроля, включающий блок логического сложения по mod2, блок логического сложения, блок логического умножения, функциональную схему формирования поправки при выполнении арифметических операций, функциональную схему формирования поправки при выполнении операции ИЛИ, функциональную схему формирования поправки при выполнении операции И, функциональную схему формирования поправки при выполнении операции сдвига, элемент задержки, первый блок элементов неравнозначности, второй блок элементов неравнозначности, третий блок элементов неравнозначности, первый блок элементов ИЛИ, второй блок элементов ИЛИ, блок кодирования, первый блок элементов И, второй блок элементов И, элемент И, первые входы управляющего узла является входами процессора, вторая группа входов управляющего узла подключена к первым выходам операционного узла, выходы управляющего узла подключены к первым входам операционного узла, вторые входы которого являются входами данных, а вторые выходы являются выходами данных, выходы устройства обмена подключены к первому входу блока управления и к первому входу второго коммутатора, вторые входы которого подключены к выходам запоминающего устройства, первые выходы второго коммутатора поступают на вход устройства обмена, вторые выходы поступают на вход запоминающего устройства, а третьи выходы подключены соответственно к первым входам счетчика команд, счетчика сдвигов, регистра числа, регистра сумматора, регистра дополнительного, регистра дополнительного кода, к входам дешифратора кода операции, к вторым входам блока управления, к первому входу первого коммутатора, первый выход которого подключен к первому входу регистра адреса, третий вход блока управления подключен к выходам дешифратора кода операции, а четвертый вход подключен к выходам генератора тактовых импульсов, а пятый вход подключен к первому выходу управляющей памяти, первый выход блока управления подключен к входу управляющей памяти, первые выходы которой подключены к первым входам блока контроля, второй выход блока управления подключен к второму входу первого коммутатора, третьи и четвертые входы которого подключены соответственно к выходам регистра адреса и счетчика команд, а с второго выхода снимается адрес ячейки памяти запоминающего устройства, третий выход блока управления подключен соответственно к вторым входам блока контроля, к вторым входам счетчика команд, счетчика сдвигов, регистра адреса, регистра числа, регистра сумматора, регистра дополнительного, регистра дополнительного кода, к первой группе входов третьего коммутатора, к третьей группе входов второго коммутатора, к первой группе входов блока логических операций и контроля и является выходом синхроимпульсов, второй, третий, четвертый пятый выходы управляющей памяти подключены к третьим и четвертым пятым и шестым входам блока контроля при этом второй выход подключен к четвертому входу второго коммутатора, а третьи, четвертые и пятые выходы блока управляющей памяти подключены соответственно к третьим, четвертым пятым и шестым входам счетчика команд, счетчика сдвигов, регистра адреса, регистра числа, регистра сумматора, регистра дополнительного, регистра дополнительного кода, к первой группе входов третьего коммутатора, к третьей группе входов второго коммутатора, к второй группе входов блока логических операций и контроля и являются выходам управляющих сигналов, сигналов считывания, сигналов записи, сигналов установки устройств в нулевое состояние, сигналов сдвига, шестой выход блока управляющей памяти подключен к пятому входу блока управления, выходы регистра числа, регистра сумматора, регистра дополнительного, регистра дополнительного кода подключены к вторым входам третьего коммутатора и к пятым входам второго коммутатора, выход счетчика сдвигов подключен к шестым входам второго коммутатора, первые выходы третьего коммутатора подключены соответственно к входам сумматора и к третьим входам блока логических операций и контроля, выходы сумматора подключены к четвертым входам блока логических операций и контроля, вторые, третьи, четвертые, пятые, шестые и седьмые выходы третьего коммутатора подключены к пятым, шестым, седьмым, восьмым, девятым и десятым входам блока логических операции и контроля, первые выходы блока логических операции и контроля подключены к входам первого блока кодирования, первый и второй выходы первого блока кодирования подключены соответственно к двенадцатому и тринадцатому входам блока логических операции и контроля, вторые выходы блока логических операции и контроля подключены к входам второго блока кодирования, первый и второй выходы второго блока кодирования подключены соответственно к четырнадцатому и пятнадцатому входам блока логических операции и контроля, третий, четвертый и пятый выходы блока логических операции и контроля подключены к входам второго коммутатора.
На фиг. 1 представлена блок-схема устройства, на фиг. 2-таблица 1, где представлены сравнительные характеристики предлагаемого кода.
В процессоре повышенной достоверности функционирования первый и второй блоки кодирования содержат по третьему выходу, причем первый блок 20 кодирования формирует значения разрядов поправки на своем первом p1, втором p2 и третьем p3 выходе путем сложения по модулю 2 информационных символов s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, поступающих с первых выходов блока 19 логических операции и контроля на входы первого блока кодирования, в соответствии с правилом: p1=s3 ⊕ s6 ⊕ s7 ⊕ s8 ⊕ s9 ⊕ s10 ⊕ s11, p2=s2 ⊕ s4 ⊕ s5 ⊕ s8 ⊕ s9 ⊕ s10 ⊕ s11, p3=s1 ⊕ s4 ⊕ s5 ⊕ s6 ⊕ s7 ⊕ s10 ⊕ s11 ⊕ s12, первый, второй выходы первого блока 20 кодирования подключены соответственно к двенадцатому и тринадцатому входам блока 19 логических операции и контроля, а третий выход подключен к шестнадцатому входу блока 19 логических операции и контроля, второй блок 21 кодирования, формирующий значения проверочных контрольных разрядов на первом r1C, втором r2C и третьем r3C выходах путем сложения по модулю 2 значений информационных символов y1C, y2C, y3C, y4C, y5C, y6C, y7C, y8C, y9C, y10C, y11C, y12C, полученных при выполнении арифметических и логических операций и поступающих со вторых выходов блока 19 логических операции и контроля на входы второго блока кодирования в соответствии с правилом: r1C=y3C ⊕ y6C ⊕ y7C ⊕ y8C ⊕ y9C ⊕ y10C ⊕ y11C, r2C=y2C ⊕ y4C ⊕ y5C ⊕ y8C ⊕ y9C ⊕ y10C ⊕ y11C, r3C=y1C ⊕ y4C ⊕ y5C ⊕ y6C ⊕ y7C ⊕ y10C ⊕ y11C ⊕ y12C, первый и второй выходы второго блока 21 кодирования подключены соответственно к четырнадцатому и пятнадцатому входам блока 19 логических операции и контроля, а третий выход подключен к семнадцатому входу блока 19 логических операции и контроля.
Работа схемы формирования поправки при выполнении арифметических операций аналогична работе схемы формирования поправки при выполнении арифметических операций прототипа и формирует значения переносов по правилу:
Figure 00000001
Так, при выполнении арифметических операций, результат суммы с выхода сумматора 16, поступает на второй вход блока 19 логических операций и контроля. Одновременно значения информационных разрядов слагаемых поступают на четвертый вход блока 19 логических операций и контроля при этом, схема формирования поправки при выполнении арифметических операций формирует вектор переносов s1, s2…s12.
Требуется сложить два числа, содержащих по 12 информационных разрядов:
АK=001 011 111 001 000, ВK=001 100 ПО 011 100.
Номера разрядов проставлены справа налево, начиная с первого по двенадцатый не считая контрольные разряды.
Сложение по mod 2 значений контрольных разрядов первым блоком элементов неравнозначности и арифметическое суммирование значений информационных разрядов сумматором 16, с учетом переносов, даст результат:
Figure 00000002
При сложении информационных разрядов перенос единичных значений сигналов осуществляется во второй, третий, шестой, седьмой, восьмой, девятый, десятый и одиннадцатый разряды.
В результате на выходе схемы формирования поправки при выполнении арифметических операций получаем значения разрядов переносов: SП =011 111 100 110, которые через первый блок 61 элементов ИЛИ поступают на вход первого блока 20 кодирования.
Первый блок 20 кодирования формирует значения разрядов поправки на своем первом p1, втором p2 и третьем p3 выходе путем сложения по модулю 2 информационных символов s1,s2,s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, поступающих с первых выходов блока 19 логических операции и контроля, в соответствии с правилом: p1=s3 ⊕ s6 ⊕ s7 ⊕ s8 ⊕ s9 ⊕ s10 ⊕ s11, p2= s2 ⊕ s4 ⊕ s5 ⊕ s8 ⊕ s9 ⊕ s10 ⊕ s11, p3= s1 ⊕ s4 ⊕ s5 ⊕ s6 ⊕ s7 ⊕ s10 ⊕ s11 ⊕ s12
-разряды переносов пронумерованы слева направо.
Кодирование значений переносов предлагаемым кодом даст значение поправки Pк=110.
Поразрядное сложение по mod2 вторым блоком элементов неравнозначности значения поправки Pк=110 и значения Sk mod2=100, полученного на выходе первого блока элементов неравнозначности и даст правильное значение контрольных разрядов для полученной арифметической суммы: S к=011 000 101 100 010.
Второй блок 21 кодирования формирует значения проверочных контрольных разрядов на первом r1C, втором r2C и третьем г3C выходах путем сложения по модулю 2 значений информационных символов y1C, y2C, y3C, y4C, y5C, y6C, y7C, y8C, y9C, y10C, y11C, y12C, полученных при выполнении арифметической операции (результата суммы S=011 000 101 100) в соответствии с правилом: r1C=y3C ⊕ y6C ⊕ y7C⊕ y8C ⊕ y9C ⊕ y10C ⊕ y11C, r2C=y2C ⊕ y4C ⊕ y5C ⊕ y8C ⊕ y9C ⊕ y10C ⊕ y11C, r3C =y1C ⊕ y4C ⊕ y5C ⊕ y6C ⊕ y7C ⊕ y10C ⊕ y11C ⊕ y12C - В результате получим значения
проверочных разрядов: r1C=0; r2C=1; r3C=0.
Сравнение контрольных разрядов сформированных относительно результата суммирования вторым блоком 21 кодирования с значением переданных контрольных разрядов с учетом поправки третьим блоком элементов неравнозначности даст нулевой результат, что свидетельствует об отсутствии ошибки. При контроле операции сдвига вправо, схема формирования поправки при выполнении операции сдвига формирует относительно исходной информации значения разрядов для вычисления поправки в соответствии с выражениями:
s12=z1⊕y12; s1112⊕у11; s10=y11⊕y10; s9=y10⊕y9; s8=y9⊕y8; s7=y8⊕y7; S6=y7⊕y6; s5=y6⊕y5; s4=y5⊕y4; s3=y4⊕y3; s2=y3⊕y2; s1=y2⊕y1.
При сдвиге вправо, при отсутствии переноса из другого регистра Ак =001 011 111 001 000 получим двоичный набор для получения поправки Р равный: SP=001 110 000 101.
При кодировании данного набора первым блоком 20 кодирования получим значение поправки Р=010.
Сложение по mod2 вторым блоком элементов неравнозначности значений контрольных разрядов с значением поправки даст правильное значение контрольных разрядов при сдвиге информационных разрядов вправо:
Figure 00000003
Второй блок 21 кодирования формирует значения контрольных разрядов относительно информации, полученной при сдвиге вправо.
Третьим блоком элементов неравнозначности осуществляется сравнение значений контрольных разрядов полученных при операции сдвига информации вправо и сформированных значений контрольных разрядов с учетом поправки относительно исходной информации.
Значение символов для формирования поправки при сдвиге влево, формируются на основе исходного значения информационных разрядов следующим образом: s1=z1⊕y1; s2=y1⊕y2; s3=y2⊕y3; xs4=y3⊕y4; s5=y4⊕ys; s6=y5⊕y6; s7=y6⊕y7; s8=y7⊕y8; s9=y8⊕y9; s10=y9⊕y10; s11=y10⊕y11; s12=y11⊕y12.
При проведении операции сдвига влево, при отсутствии переноса из другого регистра, на один разряд для двоичного набора АК=001 011 111 001 000, получаем кодовый набор: AКЛ=010 111 110 010 000, у которого значение контрольных разрядов не соответствует полученному результату,значению контрольных разрядов равного 110.
Информация на выходе схемы формирования поправки при выполнении операции сдвига имеет вид: SL=011 100 001 010. При кодировании данного набора первым блоком 20 кодирования получим значение поправки Р=110.
Сложение по mod2 вторым блоком элементов неравнозначности исходного значения контрольных разрядов с значением поправки даст правильное значение контрольных разрядов при сдвиге информационных разрядов влево:
Figure 00000004
Второй блок 21 кодирования формирует значения контрольных разрядов относительно информации, полученной при сдвиге влево.
Третьим блоком элементов неравнозначности осуществляется сравнение значений контрольных разрядов, полученных при операции сдвига информации влево и сформированных значений контрольных разрядов с учетом значения поправки относительно исходной информации.
При выполнении логического сложения, значение вектора для вычисления поправки к контрольным разрядам осуществляется схемой формирования поправки при выполнении операции ИЛИ, путем выполнения операции И относительно одноименных разрядов слагаемых.
Так, например, при выполнении операции ИЛИ относительно информационных разрядов и сложения по mod2 контрольных разрядов первым блоком элементов неравнозначности чисел AК= 001 001 111 001 110 и BК= 001 100 110 010 101.
Логическое сложение информационных разрядов кодовых наборов и сложение по mod 2 контрольных разрядов даст результат:
Figure 00000005
В данном случае полученное значение контрольных разрядов 011 не соответствует требуемому значению контрольных разрядов: 010.
Функциональная схема формирования поправки при выполнении операции ИЛИ выполняет логическую операцию И относительно информационных разрядов рассматриваемых чисел, в результате получим кодовый набор:
Figure 00000006
Кодирование полученного двоичного набора первым блоком 20 кодирования даст значения поправки к контрольным разрядам при выполнении операции ИЛИ: Рили =001.
Сложение по mod2 полученного значения контрольных разрядов с значением поправки даст правильное значение контрольных разрядов для рассматриваемого примера.
Figure 00000007
Аналогичным образом формируется поправка при выполнении логического умножения, только при формировании вектора поправки схемой формирования поправки при выполнении операции И, реализуется поразрядная операция ИЛИ относительно одноименных разрядов множимого и множителя. Для операций сложения по mod2 блоком сложения по mod2 формирование поправки к контрольным разрядам не требуется.
Значения контрольных разрядов, сформированные вторым блоком кодирования относительно информационных разрядов, полученных при выполнении арифметических и логических операций, поразрядно сравниваются третьим блоком элементов неравнозначности с переданными значениями контрольными разрядами с учетом поправки. При отсутствии ошибок на его выходах получаем нулевое значение сигналов.
Работа процессора начинается с приходом сигнала "Пуск" по входной группе 22 входов устройства обмена процессора с периферийными блоками. По этой команде блок 5 выдает команду на считывание с управляющей памяти 18 содержимого первой ячейки памяти.
В первой ячейке памяти расположена команда "Сброс системы", которая устанавливает в исходное состояние регистры и блоки процессора, В счетчик 9 команд записывается "1", устройство управления 1 выдает микрокоманды в следующей последовательности:
1) На первом такте сигналы микрокоманды и значения контрольных разрядов поступают на выход блока 17 контроля, где проводится обнаружение и коррекция возникающих ошибок.
В этом случае, при считывании микрокоманды, кодирующей схемой блока 17 контроля проводится формирование контрольных разрядов принятого кодового набора.
Схемой обнаружения ошибки блока 17 контроля производится поразрядное сравнения сформированных и переданных значений контрольных разрядов.
В случае возникновения ошибок, на выходе блока 17 контроля, появится единичный сигнал, свидетельствующий о ее наличии, который при поступлении синхроимпульса через второй коммутатор 7 поступает на устройство обмена.
Если ошибок нет, набор микрокоманд поступает на вход считывания счетчика 9 команд и на вход записи регистра 11 адреса, при этом содержимое счетчика 9 команд пересылается в регистр 11 адреса или через первый коммутатор 6 на адресные входы запоминающего устройства при естественной выборке команд непосредственно со счетчика 9 команд;
2) На втором такте к содержимому счетчика 9 команд прибавляется единица - подготавливается адрес следующей команды;
3) На третьем такте сигналы микрокоманды поступают на вход считывания регистра 11 адреса и на вход считывания содержимого ячейки памяти запоминающего устройства по указанному адресу. При этом команда, хранящаяся в первой ячейке памяти, записывается в регистр 12 числа;
4) На четвертом такте сигналы микрокоманды подаются на вход считывания регистра 12 числа, вход второго коммутатора 7 и на вход дешифратора 3 кода операции, где раскодируются, после чего управляющий узел 1 переходит ко второму этапу работы.
Для примера рассмотрим порядок исполнения одной из команд, записанной в регистре 12 числа после выполнения первых четырех тактов.
Пусть в поле кода операции команды содержимого регистра 12 числа записана команда сложения содержимого регистра 13 сумматора с числом расположенным запоминающем устройстве по адресу, указанному в поле адреса регистра 12 числа, при использовании одноадресной команды.
Управляющий узел 1 при этом выдает следующие микрокоманды:
5) на пятом такте сигналы микрокоманды подаются на вход считывания регистра 12 числа, на вход второго коммутатора 7, первого коммутатора 6 и на вход записи регистра 11 адреса при этом адрес, хранящийся в регистре 12 числа записывается в регистр 11 адреса, содержимое регистра 12 числа обнуляется;
6) На шестом такте сигналы микрокоманды подаются на вход считывания регистра 11 адреса, на вход первого коммутатора 6, на вход считывания запоминающего устройства и на вход записи регистра 12 числа, в этом случае из запоминающего устройства в регистр 12 числа записывается второе слагаемое при этом полагаем, что первое слагаемое уже находится в регистре 13 сумматора;
7) На седьмом такте сигналы микрокоманды подаются на вход считывания регистра 12 числа и регистра 13 сумматора, при этом арифметико-логическое устройство осуществляет операцию сложения и запись результата сложения в регистр 13 сумматора следующим образом.
Результат суммы с выхода сумматора 16, поступает на блок 19 логических операций и контроля, далее устройство работает в соответствии с примером выполнения арифметических операций, приведенном выше. При этом сформированные значения контрольных разрядов относительно полученной операции сравниваются с переданными значениями контрольных разрядов в блоке 19 логических операций и контроля. При отсутствии ошибки на его выходах имеем нулевые значения сигналов. При наличии ошибки на выходе блока 19 логических операций и контроля появится единичное значение сигнала.
Аналогичным образом процессор функционирует при выполнении логических операций.
8) На восьмом такте выдается микрокоманда "Конец операций" осуществляется переход на следующую операцию, блок 5 управления приводится в исходное состояние и выдает разрешение на начало выполнения следующей команды, адрес которой указан в счетчике 9 команд.
Алгебраический линейный код, используемый в предлагаемой полезной модели, имеет большую обнаруживающую способность двойных ошибок по отношению к коду, используемому в прототипе.
В прототипе полезной модели представлен алгебраический линейный код с двумя контрольными разрядами, проверочная матрица которого имеет вид:
Figure 00000008
где два последних столбца соответствуют контрольным разрядам.
В аналитическом виде, значений двух контрольных разрядов формируется по правилу:
Figure 00000009
Число N1- не обнаруживаемых двойных ошибок кодом равно:
Figure 00000010
, где k - число информационных разрядов.
Общее число двойных ошибок N2 равно:
Figure 00000011
Следовательно, процент обнаруживаемых двойных ошибок равен
Figure 00000012
Представленный линейный код обнаруживает 100% одиночных ошибок и, в зависимости от числа информационных разрядов, следующий процент двойных ошибок: в шестиразрядном двоичном коде - РO6 =75%, для девятиразрядного двоичного кода - РO9 =74,5%, для двенадцатиразрядного - PO12 =74%, пятнадцатиразрядного - PO15 =73%, восемнадцатиразрядного - PO18 =72%, двадцатиодногоразрядного -PO21=70%, для двадцатичетырехразрядного - РO24=69,5%, для двадцатисемиразрядного - РO27=69%„ для шестидесятиразрядного - РO60=67%.
Проверочная матрица H для предлагаемого кода имеет вид:
Figure 00000013
Проверки для формирования значений контрольных разрядов определяются выражением:
Figure 00000014
на фигуре 2 представлены сравнительные обнаруживающие способности двойных ошибок (Pобн2) предлагаемого кода с кодом Хэмминга, алгебраического линейного кода с кодовым расстоянием d=3, обнаруживающим 100% двойных ошибок, в зависимости от числа информационных разрядов- k (проверочных разрядов-r).
Рассматриваемый код, по сравнению с кодом используемым в прототипе, имеет большую обнаруживающую способность, а по отношению к линейному коду с кодовым расстоянием d=3, при незначительном снижении вероятности обнаружения двойных ошибок, код имеет меньше проверочных разрядов, меньше аппаратурных затрат на построение кодирующего и декодирующего устройства, а также меньше аппаратурных затрат, связанных с хранение значений проверочных разрядов, что позволяет обеспечить выигрыш в достоверности функционирования контролируемого устройства.

Claims (1)

  1. Процессор повышенной достоверности функционирования, содержащий управляющий узел, операционный узел, дешифратор кода операции, генератор тактовых импульсов, блок управления, первый коммутатор, второй коммутатор, третий коммутатор, счетчик команд, счетчик сдвигов, регистр адреса, регистр числа, регистр сумматора, регистр дополнительный, регистр дополнительного кода, сумматор, блок контроля, управляющую память, первый блок кодирования, второй блок кодирования, блок логических операций и контроля, включающий блок логического сложения по mod2, блок логического сложения, блок логического умножения, функциональную схему формирования поправки при выполнении арифметических операций, функциональную схему формирования поправки при выполнении операции ИЛИ, функциональную схему формирования поправки при выполнении операции И, функциональную схему формирования поправки при выполнении операции сдвига, первый блок элементов неравнозначности, второй блок элементов неравнозначности, третий блок элементов неравнозначности, первый блок элементов ИЛИ, второй блок элементов ИЛИ, блок кодирования, первый блок элементов И, второй блок элементов И, элемент И, первые входы управляющего узла является входами процессора, вторая группа входов управляющего узла подключена к первым выходам операционного узла, выходы управляющего узла подключены к первым входам операционного узла, вторые входы которого являются входами данных, а вторые выходы являются выходами данных, выходы устройства обмена подключены к первому входу блока управления и к первому входу второго коммутатора, вторые входы которого подключены к выходам запоминающего устройства, первые выходы второго коммутатора поступают на вход устройства обмена, вторые выходы поступают на вход запоминающего устройства, а третьи выходы подключены соответственно к первым входам счетчика команд, счетчика сдвигов, регистра числа, регистра сумматора, регистра дополнительного, регистра дополнительного кода, к входам дешифратора кода операции, к вторым входам блока управления, к первому входу первого коммутатора, первый выход которого подключен к первому входу регистра адреса, третий вход блока управления подключен к выходам дешифратора кода операции, а четвертый вход подключен к выходам генератора тактовых импульсов, а пятый вход подключен к первому выходу управляющей памяти, первый выход блока управления подключен к входу управляющей памяти, первые выходы которой подключены к первым входам блока контроля, второй выход блока управления подключен к второму входу первого коммутатора, третьи и четвертые входы которого подключены соответственно к выходам регистра адреса и счетчика команд, а с второго выхода снимается адрес ячейки памяти запоминающего устройства, третий выход блока управления подключен соответственно к вторым входам блока контроля, к вторым входам счетчика команд, счетчика сдвигов, регистра адреса, регистра числа, регистра сумматора, регистра дополнительного, регистра дополнительного кода, к первой группе входов третьего коммутатора, к третьей группе входов второго коммутатора, к первой группе входов блока логических операций и контроля и является выходом синхроимпульсов, второй, третий, четвертый пятый выходы управляющей памяти подключены к третьим и четвертым пятым и шестым входам блока контроля, при этом второй выход подключен к четвертому входу второго коммутатора, а третьи, четвертые и пятые выходы блока управляющей памяти подключены соответственно к третьим, четвертым, пятым и шестым входам счетчика команд, счетчика сдвигов, регистра адреса, регистра числа, регистра сумматора, регистра дополнительного, регистра дополнительного кода, к первой группе входов третьего коммутатора, к третьей группе входов второго коммутатора, к второй группе входов блока логических операций и контроля и являются выходам управляющих сигналов, сигналов считывания, сигналов записи, сигналов установки устройств в нулевое состояние, сигналов сдвига, шестой выход блока управляющей памяти подключен к пятому входу блока управления, выходы регистра числа, регистра сумматора, регистра дополнительного, регистра дополнительного кода подключены к вторым входам третьего коммутатора и к пятым входам второго коммутатора, выход счетчика сдвигов подключен к шестым входам второго коммутатора, первые выходы третьего коммутатора подключены соответственно к входам сумматора и к третьим входам блока логических операций и контроля, выходы сумматора подключены к четвертым входам блока логических операций и контроля, вторые, третьи, четвертые, пятые, шестые и седьмые выходы третьего коммутатора подключены к пятым, шестым, седьмым, восьмым, девятым и десятым входам блока логических операции и контроля, первые выходы блока логических операции и контроля подключены к входам первого блока кодирования, первый и второй выходы которого подключены соответственно к двенадцатому и тринадцатому входам блока логических операции и контроля, вторые выходы блока логических операции и контроля подключены к входам второго блока кодирования, первый и второй выходы которого подключены соответственно к четырнадцатому и пятнадцатому входам блока логических операции и контроля, третий, четвертый и пятый выходы блока логических операции и контроля подключены к входам второго коммутатора, отличающийся тем, что первый и второй блоки кодирования дополнительно содержат по третьему выходу, причем первый блок кодирования формирует значения разрядов поправки на своем первом p1, втором р2 и третьем p3 выходе путем сложения по модулю 2 информационных символов s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, поступающих с первых выходов блока логических операций и контроля на входы первого блока кодирования, в соответствии с правилом:
    Figure 00000015
    Figure 00000016
    Figure 00000017
    первый, второй выходы первого блока кодирования подключены соответственно к двенадцатому и тринадцатому входам блока логических операций и контроля, а третий выход подключен к шестнадцатому входу блока логических операции и контроля, второй блок кодирования, формирующий значения проверочных контрольных разрядов на первом r1C, втором r2C и третьем r3C выходах путем сложения по модулю 2 значений информационных символов y1C, y2C, y3C, y4C, y5C, y6C, y7C, y8C, y9C, y10C, y11C, y12C, полученных при выполнении арифметических и логических операций и поступающих со вторых выходов блока логических операций и контроля на входы второго блока кодирования в соответствии с правилом:
    Figure 00000018
    Figure 00000019
    Figure 00000020
    первый и второй выходы второго блока кодирования подключены соответственно к четырнадцатому и пятнадцатому входам блока логических операций и контроля, а третий выход подключен к семнадцатому входу блока логических операций и контроля.
RU2018136392U 2018-10-16 2018-10-16 Процессор повышенной достоверности функционирования RU186547U1 (ru)

Priority Applications (1)

Application Number Priority Date Filing Date Title
RU2018136392U RU186547U1 (ru) 2018-10-16 2018-10-16 Процессор повышенной достоверности функционирования

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
RU2018136392U RU186547U1 (ru) 2018-10-16 2018-10-16 Процессор повышенной достоверности функционирования

Publications (1)

Publication Number Publication Date
RU186547U1 true RU186547U1 (ru) 2019-01-23

Family

ID=65147498

Family Applications (1)

Application Number Title Priority Date Filing Date
RU2018136392U RU186547U1 (ru) 2018-10-16 2018-10-16 Процессор повышенной достоверности функционирования

Country Status (1)

Country Link
RU (1) RU186547U1 (ru)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU211968U1 (ru) * 2022-02-14 2022-06-30 Федеральное государственное бюджетное учреждение "4 Центральный научно-исследовательский институт" Министерства обороны Российской Федерации Устройство для вычисления вероятности передачи информации

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU51428U1 (ru) * 2004-10-19 2006-02-10 Алексей Николаевич Царьков Отказоустойчивый процессор повышенной достоверности функционирования
RU2004130209A (ru) * 2004-10-14 2006-03-27 Алексей Николаевич Царьков (RU) Способ построения отказоустройчивого процессора повышенной достоверности функционирования
US20080052494A1 (en) * 2003-10-24 2008-02-28 Reinhard Weiberle Method And Device For Operand Processing In A Processing Unit
RU2439667C1 (ru) * 2010-07-08 2012-01-10 Межрегиональное общественное учреждение "Институт инженерной физики" Процессор повышенной достоверности функционирования

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080052494A1 (en) * 2003-10-24 2008-02-28 Reinhard Weiberle Method And Device For Operand Processing In A Processing Unit
RU2004130209A (ru) * 2004-10-14 2006-03-27 Алексей Николаевич Царьков (RU) Способ построения отказоустройчивого процессора повышенной достоверности функционирования
RU51428U1 (ru) * 2004-10-19 2006-02-10 Алексей Николаевич Царьков Отказоустойчивый процессор повышенной достоверности функционирования
RU2439667C1 (ru) * 2010-07-08 2012-01-10 Межрегиональное общественное учреждение "Институт инженерной физики" Процессор повышенной достоверности функционирования

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU211968U1 (ru) * 2022-02-14 2022-06-30 Федеральное государственное бюджетное учреждение "4 Центральный научно-исследовательский институт" Министерства обороны Российской Федерации Устройство для вычисления вероятности передачи информации

Similar Documents

Publication Publication Date Title
TWI517173B (zh) 更新可靠度資料之設備及方法
WO2017124237A1 (zh) 内存设备及基于多层rram交叉阵列的数据处理方法
CN112214349B (zh) 一种数据循环冗余校验装置和方法
RU2439667C1 (ru) Процессор повышенной достоверности функционирования
CN101488369B (zh) Bch码控制器接口电路
RU2417409C2 (ru) Отказоустойчивый процессор
Wang et al. Reliable and secure memories based on algebraic manipulation correction codes
Nielsen List decoding of linear block codes
RU186547U1 (ru) Процессор повышенной достоверности функционирования
US3218612A (en) Data transfer system
RU2708956C2 (ru) Процессор повышенной достоверности функционирования
RU164633U1 (ru) Устройство хранения и передачи информации с обнаружением ошибок
CN102096610A (zh) 利用纠错码和同步信息的数据行存储及传输
CN103151078A (zh) 一种存储器检错纠错码生成方法
RU102407U1 (ru) Процессор эвм
RU51428U1 (ru) Отказоустойчивый процессор повышенной достоверности функционирования
RU2450332C1 (ru) Устройство хранения информации с обнаружением одиночных и двойных ошибок
CN101931415B (zh) 编码装置及方法、译码装置及方法和纠错系统
RU204275U1 (ru) Отказоустойчивый процессор с коррекцией ошибок в байте информации
RU2758065C1 (ru) Отказоустойчивый процессор с коррекцией ошибок в байте информации
US9218239B2 (en) Apparatuses and methods for error correction
RU2758410C1 (ru) Отказоустойчивый процессор с коррекцией ошибок в двух байтах информации
CN205647493U (zh) 一种自纠正多位错误的有限状态机电路
RU76479U1 (ru) Устройство памяти с обнаружением двойных ошибок
RU2816550C1 (ru) Устройство хранения и считывания информации с коррекцией одиночных ошибок

Legal Events

Date Code Title Description
MM9K Utility model has become invalid (non-payment of fees)

Effective date: 20201017