Запоминающее устройство с коррекцией групповых и пакетных ошибок
Изобретение относится к вычислительной технике, в частности к запоминающим устройствам, и может быть использовано в многоканальных системах передачи информации и для построения высоконадежных блоков памяти. Устройство содержит блоки памяти 1.1 - 1.5, регистр 2, первый блок 3 коррекции, блоки 4.1 - 4.4 суммирования по модулю два, блок 5 обнаружения ошибок, второй блок 10 коррекции, блок 11 управления. 4 ил.
Изобретение относится к вычислительной технике, в частности к запоминающим устройствам, и может быть использовано в многоканальных системах передачи информации и для построения высоконадежных накопителей информации.
Наиболее близким по технической сущности к изобретению является запоминающее устройство с коррекцией групповых ошибок [1] содержащее блоки памяти, имеющие две группы информационных входов/выходов, регистр, имеющий две группы информационных входов и две группы информационных выходов, группу блоков свертки по модулю два, блок коррекции, имеющий две группы информационных выходов и контрольную группу выходов, логический блок обнаружения ошибок, блок задержки и коммутатор, причем первая группа информационных входов регистра является информационным входом устройства, информационные выходы блока коррекции являются информационным выходом устройства, контрольные выходы блока коррекции являются контрольными выходами устройства, а выходы логического блока обнаружения ошибок являются выходами некорректируемых ошибок устройства, входы признака записи и признака считывания блоков памяти являются соответственно входом записи и входом считывания устройства, а адресные входы блоков памяти являются адресными входами устройства, входы блока обнаружения ошибок подключены к группе контрольных входов блока коррекции, установочный вход блока коррекции соединен с установочным входом устройства, две группы информационных выходов регистра связаны с входами блоков свертки по модулю два, выходы которых подключены к второй группе информационных входов регистра, ко второй группе информационных входов/выходов блоков памяти, а первые группы информационных входов регистра объединены с первой группой информационных входов блока коррекции и подключены ко второй группе информационных входов/выходов блоков памяти. В этом устройстве в режиме "Запись" слово данных поступает через регистр на первую и вторую группу входов блоков свертки по модулю два, которые формируют контрольные разряды двумерного итеративного кода, после чего сформированное кодовое слово записывается в блоки памяти. В режиме "Чтение" считанное кодовое слово поступает в блок коррекции и на первую и вторую группы входов блоков свертки по модулю два, которые формируют разряды синдрома. Блок коррекции анализирует синдром, сформированный в блоках свертки по модулю два, определяет номер отказавшего блока памяти и позиции ошибочных символов в нем. Затем происходит исправление ошибок отказавшего блока памяти, после чего исправленное слово данных поступает на выход устройства. Недостатками известного технического решения является его низкая надежность и ограниченные функциональные возможности. Они обусловлены низкой корректирующей и обнаруживающей способностью примененного в устройстве кода, невозможностью исправления ошибок в разных блоках памяти, пакетных ошибок, вызванных отказами блоков памяти, отсутствием контроля всех узлов самого устройства контроля. Технический результат, обеспечиваемый данным изобретением, заключается в увеличении надежности устройства и расширении его функциональных возможностей. Указанный технический результат достигается тем, что в запоминающее устройство с коррекцией групповых и пакетных ошибок, содержащее накопители, регистр, первый блок коррекции, блоки сумматоров по модулю два, блок обнаружения ошибок, выходы которого являются контрольными выходами устройства, причем входы признака записи накопителей являются входами записи устройства, входы признака считывания объединены с входом признака считывания первого блока коррекции и являются входом записи устройства, а адресные входы являются адресным входом устройства, введены блок управления и второй блок коррекции, контрольные группы выходов которого соединены поразрядно с контрольными группами входов первого блока коррекции и с контрольными группами входов/выходов накопителей, а информационные группы входов первого блока коррекции подключены к первым информационным группам входов второго блока коррекции и к входам блоков сумматоров по модулю два, выходы которых связаны со вторыми информационными группами входов второго блока коррекции, управляющие выходы которого соединены с контрольными и управляющими группами выходов первого блока коррекции, контрольные группы выходов которого соединены с входами первой группы блока обнаружения ошибок, вторые группы входов которого подключены к выходам блоков сумматоров по модулю два, а вход признака считывания блока обнаружения ошибок соединен с входом признака считывания накопителей, первые группы входов регистра объединены поразрядно с его первыми группами выходов и являются информационными входами/выходами устройства, вторые группы входов регистра соединены с информационными группами выходов второго блока коррекции, а вторые группы выходов соединены поразрядно с информационной группой входов первого блока коррекции и с информационной группой входов/выходов накопителей, первый вход и первый выход блока управления являются соответственно входом запуска устройства и выходом окончания цикла обращения устройства, второй и третий входы подключены соответственно к установочному входу устройства и к входу признака считывания устройства, второй и четвертый выходы блока управления соединены с первым и вторым входами разрешения записи в регистр, третий и пятый выходы связаны с вторым и первым входами разрешения считывания из регистра, а шестой и седьмой выходы подключены соответственно к входам синхронизации первого блока коррекции и к входам синхронизации накопителей. В результате сравнительного анализа в известном техническом решении не выявлены признаки, сходные с существенными признаками, отличающими заявляемое техническое решение от прототипа и являющимися достаточными для достижения обеспечиваемого изобретением технического результата. На фиг. 1 представлена функциональная схема предлагаемого устройства; на фиг. 2 функциональная схема коррекции одного (второго) накопителя; на фиг. 3 (а, б) представлены соответственно кодовая матрица примененного в устройстве кода и кодовая подматрица одной (второй) строки кодовой матрицы; на фиг. 4 временные диаграммы работы устройства в режимах "Запись" и "Чтение" соответственно. На чертежах введены следующие обозначения: S1-S16 информационные разряды итеративного кода; а1-а20 и В1-В4 соответственно контрольные разряды строк и столбцов кодовой матрицы;


в2 2 + 6 + 10 + 14 + 0;
в3 3 + 7 + 11 + 15 + 0;
в4 4 + 8 + 12 + 16 + 0; соответственно. Сформированные информационные разряды в1-в4 поступают на вторые информационные входы блока 105 коррекции вместе с сигналом Гк5 с выхода блока 35 коррекции, и в блоке 105 коррекции начинается формирование контрольных разрядов а17-а20 согласно кодовой подматрице Н5(фиг. 4б) по формулам:
а17 в2 + в3 + в4 + 1;
а18 в1 + в3 + в4 + 1;
а19 в1 + в2 + в4 + 1;
а20 в1 + в2 + в3 + 1. Оформленные информационные разряды в1-в4 без изменения проходят со вторых информационных входов блока 105 коррекции на его информационные выходы и поступают вместе с информационными разрядами S1-S16, находящимися на вторых выходах РГ2, на информационные входы накопителей 11-15, а контрольные разряды а17-а20, сформированные на контрольных выходах блока 105 коррекции, вместе с контрольными разрядами а1-а16, сформированными на контрольных выходах блоков 101-104 коррекции, поступают на контрольные входы накопителей 11-15 и одновременно на контрольные входы блоков 31-35 коррекции. При отсутствии ошибок в сформированном для записи в память 40-разрядном кодовом слове, а следовательно, при отсутствии отказов в самой схеме контроля (в блоках 3, 4, 10), на контрольных выходах блоков 31-35 коррекции сигналы корректируемых КО1-КО5 или некорректируемых НКО1-НКО5 ошибок не формулируются и, следовательно, на первые входы блока 5 обнаружения ошибок не поступают. При возникновении неисправностей или отказов в схеме контроля в сформированных контрольных разрядах а1-а20, а следовательно, в сформированном для записи в память кодовом слове возникнут ошибки, а на контрольных выходах КО1-КО5 или НКО1-НКО5 блока 3 коррекции сформируются сигналы корректируемых или некорректируемых ошибок, которые поступают на первые входы блока 5 обнаружения ошибок, в результате чего на контрольном выходе 6 устройства формируется сигнал неисправности схемы контроля "Нп" (фиг. 2) по формуле

В конце цикла кодирования, после проверки исправности самой схемы контроля, блок 11 управления формирует (на седьмом выходе) сигнал CS1, поступающий на вход синхронизации блока накопителей 1, в результате чего производится запись кодового слова в накопители 11-15, причем строка кодовой матрицы (фиг. 3, а) записывается в отдельный накопитель: в накопитель 11 записываются разряды S1-S4, а1-а4; в накопитель 12 разряды S5-S8, a5-a8; в накопитель 13 разряды S9-S12, a9-a12; в накопитель 14 разряды S13-S16, а13-а16 а в накопитель 15(контрольный накопитель) разряды в1-в4, а14-а18. Затем сигналы "Чт2", СS3 и СS1 на третьем, шестом и седьмом выходах блока управления 11 снимаются. По окончании цикла "Запись" на вход 14 устройства выдается сигнал "Ответ". При обнаружении неисправности в схеме контроля (при появлении сигнала Нп на выходе 6 устройства) работа устройства должна быть прервана для устранения этих неисправностей, ибо в режиме "Запись" ошибки, вызванные неисправностями схемы контроля, исправлены быть не могут. Например, если на выходы 12 устройства в очередном цикле записи поступает слово данных S1-S16, состоящее из 16 нулей, то при отсутствии неисправностей в схеме контроля на входах каждого накопителя 11-15 и на входах каждого блока 31-35 коррекции должна сформироваться комбинация: 00001111. Если слово данных S1-S16 состоит из 16 единиц, на входах каждого накопителя 11-15 и блока 31-35 коррекции должна сформироваться комбинация 11110000 и т. д. В режиме "Чтение" на вход 9 устройства поступает адрес выбранной ячейки памяти, на вход 8 признак считывания, на вход 13 сигнал "Запуск". После окончания сигнала "Запуск" блок 11 управления формирует (на седьмом выходе) сигнал СS1, поступающий на вход синхронизации блока накопителей 1 и разрешающий считывание 40-разрядного кодового слова из накопителей памяти, и одновременно (на шестом выходе) сигнал СS3, поступающий на вход блока 3 коррекции и разрешающий его работу. После этого в устройстве начинается процесс декодирования информации (в два шага). На первом шаге декодирования в блоках 31-35 независимо друг от друга происходит исправление t-битовых (в нашем случае однобитовых) ошибок и обнаружение некорректируемых (t + 1)-битовых или пакетных n-битовых ошибок (в нашем случае 2-битовых или 8-битовых каждого из пяти накопителей). В конце первого этапа декодирования на информационных выходах накопителей 11-15 сигналы S1-S16 и в1-в4, которые поступают на первые информационные входы блоков 101-105 коррекции и на входах блоков 41-44 сумматоров по модулю два. Одновременно на управляющих выходах блоков 31-35 коррекции формируются сигналы Гд1-Гд5 (готовность декодирования), а на контрольных выходах сигналы корректируемых КО1-КО5 и некорректируемых НКО1-НКО5 ошибок каждого накопителя 11-15. Исправление ошибок в блоках 31-35 коррекции происходит по формуле:
Sijвых= Чт








cоответственно. Сформированные в блоках сумматоров по модулю два значения


Sijвых=Sijвх






KO=Чт






V HKO1(


V HKO3(


HKO=Чт


V HKO1 V HKO2 V HKO3 V HKO4 V HKO5
V





В результате неисправностей в накопителях 11, 13, 14 и 15 и полного отказа типа "8 единиц" второго накопителя 12 на входы блоков 31-35коррекции поступает при считывании кодовое слово с десятью (из сорока) ошибочными символами S1, S9, S13 и в1 соответственно накопителей 11, 13, 14, 15 и S5, S7, S8, a5, a7, a8- второго накопителя 12:

На первом этапе декодирования в блоках 31, 33, 34, 35 коррекции происходит исправление ошибочных информационных символов S1, S9, S13, в1 и формирование признаков корректируемых ошибок КО1, КО3, КО4, КO5соответственно первого, третьего, четвертого и пятого накопителей, а в блоке 32 коррекции происходит "обнуление" информационных разрядов S5, S6, S7, S8 и формирование признака некорректируемой ошибки НКО2 второго накопителя 12. В конце первого этапа декодирования на первые информационные входы блоков 101-105 коррекции и на входы блока 4 сумматоров по модулю два поступает исправленное слово с одним ошибочным символом S6 второго накопителя 12:

На втором этапе декодирования блоков 41-44 сумматоров по модулю два формируются вторые (исправленные) значения информационных символов S5-S8 второго накопителя по формулам:




На управляющем входе блока 102 коррекции присутствует сигнал НКО2, который пропускает на информационные выходы блока 102 коррекции вторые (исправленные) значения информационных символов S5-S8:


(









1000,
0100,
0010,
0001. выходы блока 105 коррекции в режиме "Чтение" отключены. В конце цикла декодирования блок 11 управления формирует (на четвертом выходе) сигнал "3п2", и исправное слово данных S1-S16 записывается в регистр 2. Затем сигналы СS1, CS3 и 3п2 снимаются, и блок 11 управления формирует (на пятом выходе) сигнал "Чт1". В результате чего исправленное слово данных S1-S16 считывается на информационные выходы 12 устройства. По окончании цикла "Чтение" на выход 14 устройства выдается сигнал "Ответ". Таким образом, предлагаемое устройство, реализующее двумерный итеративный код с кодовым расстоянием d 4 (t + 1), где (t + 1) кратность исправляемой ошибки каждого накопителя; t


исправлять одну ошибку в одном накопителе;
обнаруживать двухбитовые ошибки в разных накопителях. Известное устройство не может исправлять даже двухбитовую ошибку в разных накопителях, не может исправить пакетную ошибку в разных накопителях, не может исправлять пакетную ошибку, вызванную отказом одного накопителя, не может гарантированно обнаруживать ошибки, вызванные неисправностями самого устройства. В предлагаемом устройстве дополнительное введение второго блока коррекции ошибок и блока управления с соответствующими связями, а также усложнение логики блока обнаружения ошибок позволяет:
одновременно исправлять t-битовые групповые ошибки в разных накопителях и (t + 1)-битовую или n-битовую ошибку одного накопителя;
одновременно исправлять t N-разрядных групповых ошибок в n накопителях, если записывать в накопители столбцы кодовой матрицы;
обнаруживать в режимах "Чтение" и "Запись" все ошибки, вызванные неисправностями устройства контроля, что позволяет дополнительно использовать режим "Запись" в качестве режима "Диагностика" для поиска неисправностей в устройстве, что обеспечивает глобальный контроль устройства и расширяет функциональные возможности предлагаемого устройства. Расширенные (по сравнению с прототипом) функциональные возможности заявляемого устройства объясняются тем, что оно способно одновременно исправлять ошибки различной конфигурации. Поэтому данное устройство является оптимальным для использования в вычислительных сетях, представляющих собой симбиоз компьютеров, накопителей информации и линий связи, имеющих разную структуру и поэтому различные конфигурации ошибок. Применение данного устройства в вычислительных сетях позволяет проводить коррекцию информации в одной точке и, следовательно, обеспечить высокую суммарную надежность вычислительной сети.
Формула изобретения
РИСУНКИ
Рисунок 1, Рисунок 2, Рисунок 3, Рисунок 4PC4A - Регистрация договора об уступке патента Российской Федерации на изобретение
Номер и год публикации бюллетеня: 14-2000
(73) Патентообладатель:
ЗАО "КОЛУМБ ПЕРВЫЙ" (RU)
Договор № 9391 зарегистрирован 12.11.1999
Извещение опубликовано: 20.05.2000