Запоминающее устройство с коррекцией информации
Иллюстрации
Показать всеРеферат
СОЮЗ СОВЕТСКИХ
СОЦИАЛИСТИЧЕСКИХ
РЕСПУБЛИК цр 4 С 11 С 29/00
ОПИСАНИЕ ИЗОБРЕТЕНИЯ
Ф
1 ОСУДАРСТВЕННЫЙ КОМИТЕТ СССР
ПО ДЕЛАМ ИЗОБРЕТЕНИЙ И ОТКРЫТИЙ (61) 1070610 (21) 3949773/24-24 (22) 16.07.85 (46) 15.01.87. Бюл. N - 2 (71) Минский радиотехнический институт (72) О.А.Гордынец и П.П.Урбанович (53) 681.327.6 (088.8) (56) Авторское свидетельство СССР
Ф 10706, кл. С 11 С 29/00, 1982. (54) ЗАПОМИНАЮЩЕЕ УСТРОЙСТВО С КОРРЕКЦИЕЙ ИНФОРМАЦИИ, (57) Изобретение относится к области вычислительной техники, может быть использовано при создании быстродей,.Я0„, 12838 0 А2 ствующих запоминающих устройств повышенной надежности и является усовершенствованием изобретения по а.с.
У 1070610. Целью изобретения является повышение быстродействия устройства в режиме работы без ошибок. Запоминающее устройство содержит накопитель, коммутатор, регистры, триггеры, блок кодирования информации, элементы И, элемент НЕ, блок сравнения, блок суммирования сигналов ошибок, блок обнаружения ошибок. дешифраторы; формирователь сигналов ошибок, постоянный накопитель, блок приоритета, блок коррекции ошибок. 3 ил.
1 128386
Изобретение относится к вычислительной технике, в частности к запоминающим устройствам, и может быть использовано при создании быстродействующих запоминающих устройств по5 вышенной надежности.
Цель изобретения — повышение быст родействия устройства.
На фиг. 1 изображена функциональная схема предлагаемого устройства; на 10 фиг.2,3 - функциональные схемы блока обнаружения ошибок и блока приоритета соответственно, устройство содержит (Фиг,1) накопитель 1 с информационными 2, адресными 3 и управляющими 4 входами, коммутатор 5, первый регистр 6 с информационными входами 7, предназначенный для хранения признаков ошибок, триггер 8 с выходом 9, блок 10 кодирования информации, второй регистр 11 с инверсными выходами 12, предназначенный для хранения кодового слова, первый 13 и второй 14 элементы И, а также элемент НЕ 15. На фиг.1 обозначены установочный вход 16, управляющий выход 17, информационный выход 18 и вход 19, управляющие вход
20 и выход 21 сигналов прерывания устройства, вход 22 разрешения записи и вход 23 разрешения считывания первого регистра. Кроме гого, устройство содержит блок 24 сравнения с одними из входов 25, связанными с выходами второго регистра 11, блок 26
35 суммирования сигналов ошибок с одни ми из входов 27 и блок 28 обнаружения ошибок, первые входы 29 и выхо, ды 23 †.оторого соединены с соответст40 вующими выходами и вводами первого регистра 6. Устройство содержит также первый 30 и второй 31 дешифраторы, предназначенные для декодирования первого и второго признаков ошибок соответственно, входами соединенные с другими выходами 32 регистра 6 и выходами блока 24 соответственно, формирователь 33 сигналов ошибок, постоянный накопитель 34 с входами 35, блок 36 приоритета, входы 37 которого соединены с выходами блока 24, первый блок 38 коррекции ошибок с входами
39 и 40, соединенный соответственно с выходами накопителя 1 и выходами вто.рого дешифратора 31, второй блок 41 коррекции ошибок с выходами 42 и 43, подключенными соответственно к выхо" дам блока 38 и первого дешифратова
0 2
30, выходы 44 и 45 второго блока 41 коррекции соединены с соответствующими входами третьего регистра 46, выход которого соединен с одним входом
47 второго-коммутатора 48, второй вход 49 которого связан с одним выходом накопителя 1, а управляющий вход 50 — с выходом третьего элемен- та И 51 и третьим управляющим выходом устройства, входы элемента И 5 1 подключены к третьему выходу 52 блока 28 и выходу 9 триггера 8.
Блок обнаружения ошибок содержит (фиг.2) четвертый 53 и пятый 54 элементы И, элемент ИЛИ 55 и сумматор 56 по модулю два.
Блок приоритета содержит (фиг.3) элементы И 57.
Устройство работает следующим об" разом.
Постоянный накопитель 34 хранит признаки единичных ошибок в любом из разрядов считываемого слова из накопителя
В, режиме записи информации устройство работает обычным образом.
Данные, поступающие по входам 19 (фиг.1), дополненные нулевым символом на входе 20, поступают на входы блока 10, который кодирует информацию кодом Хемминга с кодовым расстоянием
d = 4 и выдает на свои выходы кодовое слово, которое помещается через первый коммутатор 5 в накопитель t no адресу на входах 3. При этом на выходе 9 триггера 8 присутствует нулевой сигнал.
В режиме считывания, задаваемым cctответствующим сигналом на входе 4 накопителя, выходные данные с выходов накопителя 1 подаются на блок 33 и одновременно на входы регистра 11 (на одном из входов регистра — нулевой сигнал, разрешающий запись в этот регистр), блока 24 и блока 38. При налйчии ошибки ее признак вырабатывается на выходах 27 блока 33, При первоначальном появлении однократной t = 1 ошибки вычисленный признак не равен нулю и имеет нечетный вес, о чем свидетельствует единичный сигнал на выходе сумматора (фиг.2).
При этом регистр 6 вырабатывает нулевой сигнал на выходе 29, а блок 28 вырабатывает на выходах 17 и 23 нулевые сигналы, которые запрещают выдачу нулевого признака из регистра 6 на выходы 32 и перезапись инверсного сло.
3 1283 ва с выходов 12 регистра 11 в накопитель 1, поскольку триггер б остается в нулевом состоянии. Одновременно на выходе 22 элемента И 14 устанавливается нулевой сигнал, запрещающий запись иэ блока 34 признака ошибки в регистр 6, тем самым на выход блока
26 поступает без изменения вычисленный блоком 33 признак ошибки, который дешифрируется блоком 3 1 и производит 10 исправление в блоке 38 первой появившейся ошибки. Исправленные информационные символы поступают через вход 4 без изменения на входы регистра 46.
При этом, поскольку считываемое слово 15 не инвертировалось ранее, то на выходе 44 блока 41 присутствует нулевой сигнал, который оставляет без изменений сигналы с входов 45- блока 41. Эти сигналы без изменения поступают на 20 входы коммутатора 48, так как на его управляющем входе 50 — нулевой символ.
В случае, если в считываемом слове нет ошибки, т ° е, вычисленный блоком
33 признак ошибки равен нулю, то на выходах элемента ИЛИ 55 (фиг.2) и элементов И 53 и 54 блока 28 устанавливаются нулевые сигналы, которые запрещают запись инверсного слова с выходов 12 регистра 11 (фиг.1) через З0 коммутатор 5 в накопитель 1 и считывание признака ошибки из регистра 6.
Нулевые сигналы на входах элемента
И 51 устанавливают на его входе 50 сигнал логической единицы, который Я5 разрешает запись в коммутатор 48 информации непосредственно с выходов накопителя (записываться могут только информационные биты кодового слова, который в режиме были на входах 40
19 устройства), минуя цепь, состоящую из блоков 26, 3 1, 38, 40 и 46. Одновременно единичный символ сигнализирует процессору (не показан) о том, что устройство готово к выполнению 45 следующей команды о записи или считывания необходимого слова.
В случае, когда в считываемом из накопителя 1 слове впервые появляются две ошибки, на что указывает нуле- 50 вой сигнал на выходе 29 регистра, 6 и ненулевой признак ошибки на выходах
27 блока 33, то на выходе 17 блока 28 появляется единичный сигнал. Этот сигнал поступает на выход 17 и указы- 55 вает на необходимость разрешения цикла считывания. Одновременно этот сигнал проходя через элемент НЕ 15, устанавливает триггер 8 в единичное
860 состояние и тем самым разрушает запись инверсного слова с выходов 12 регистра 11 в накопитель 1. Затем производится контрольное считывание инверсно хранимого слова и сравнение его в блоке 24 с прямым словом, хранимым в регистре 11, При этом возможны следующие три случая:
1. Две ошибки в прямом слове возникли из-за отказа и сбоя элементов памяти, В этом случае на одном иэ выходов блока 24, соответствующем отказацшему разряду, появится единичный сигнал, поскольку отказавший элемент памяти находится в одном и том же состоянии независимо от записываемой в него информации, Этот единичный сигнал спросит соответствующее слово в накопителе 34, в результате чего на входы 7 регистра 6 поступит для записи признак единичной ошибки отказавшего разряда. Одновременно, поскольку на выходах 27 блока 33 присутствует ненулевой признак единичной ошибки в инверсном считываемом слове (ошибка из-за слоя элемента памяти), на выходе 17 блока 28 появится нулевой сигнал, который, проходя через элемент НЕ 15, установит на выходе 22 элемента И 14 единичный сигнал (так как на выходе триггера 8 присутствует единичный сигнал). Этот сигнал разрешит запись признака единичной ошибки отказавшего разряда иэ накопителя
34 в регистр 6, Кроме того, поскольку в считываемом инверсном слове содержится одна ошибка из-за сбоя элемента памяти накопителя, то на выходе 23 блока 28 сформируется нулевой сигнал, который запретит выдачу признака единичной ошибки из регистра 6. Поэтому на выходы блока 26 поступит без изме-. нения признак единичной ошибки, сформированный блоком 33, который, дешифрируясь дешифратором 31, исправит ошибку в блоке 38, Исправленные информационные символы поступят через блок 41 Ges изменения на входы ре1 гистра 46, При этом, поскольку считы. ваемое слово хранится инвертированным, на выходе блока 41 — единичный сигнал, который изменит в регистре
46 значения сигналов с входов 45 на противоположные значения. Таким о6разом, произойдет исправление двух ошибок в хранимой информации, вызванных сбоем и отказом элементов па5 12838 мяти накопителя 1. С входов 49 информация не поступает в коммутатор 48 и далее на выход 18 устройства, так как на входе 50 коммутатора 48 — нулевой символ.
2. Две ошибки в прямом слове возникли из-за отказов элементов памяти. В этом случае при контрольном считывании на двух выходах блока 23, соответствующих отказавшим разрядам, f0 появятся единичные сигналы, поскольку отказавшие элементы памяти находятся в одном и том же состоянии независимо от записываемой информации. На выходах 35 блока 36 из этих f5 двух единичных сигналов, поступивших на входы 37, останется только один. Этот единичный сигнал спросит соответствующее .слово в накопителе
„34, в результате чего на входы 7 20 регистра 6 поступит для записи признак единичной ошибки одного из отказавших разрядов, Одновременно, поскольку на выходах 27 блока 33 присутствует нулевой признак, указывающий на отсутствие ошибок в инверсном считываемом слове (так как ошиб.ки из-за отказов элементов памяти в инверсном слове стали совпадать с записываемой инверсной информацией), 30 на выходе 17 блока 28 появится нулевой сигнал, который, проходя че,рез элемент НЕ 15, установит на выходе 22 элемента И 14 единичный сигнал (так как на выходе триггера 8 35 присутствует единичный сигнал). Этот сигнал разрешит запись признака единичной ошибки из накопителя 34 в регистр 6.. Кроме того, поскольку в считываемом инверсном слове не со- 40 держится ошибок и на выходе 23 блока 28 присутствует нулевой сигнал, запрещающий выдачу признака из регистра 6, то информация, считываемая из накопителя 1, проходит через 45 блоки 38 и 41 без изменения. При этом, так как считываемое слово хранится инвертированным, то на выходе
44 блока 41 присутствует единичный сигнал, который изменит в регистре 50
46 значения сигналов с входов 45 на противоположные и через блок 48 без изменения поступит на выход 18 устройства. Таким образом, произойдет исправление двух ошибок, вызванных 55
;отказами элементов памяти.
3. Две ошибки в прямом слове возникли из-за сбоев элементов памяти.
60 6
В этом случае при контрольном считы- вании на выходах 27 блока 33 появится нулевой признак четного веса, в результате чего на выходе 17 блока
28 появится единичный сигнал, который откроет элемент И 13 и, проходя через элемент НЕ 15, закроет элемент
И 14. В результате на выходах 22 и
21 появится соответственно нулевой и единичный сигнал, который закрепят запись признака в регистр 6 и выдадут сигнал прерывания на выход 21 устройства, указывающий на появление в считываемом слове некорректируемых устройством ошибок.
Когда в считываемом слове появится две ошибки и на выходе 29 регистра 6-единичный сигнал, указывающий, что в предыдущих тактах работы устройства в регистр 6 зафиксирован признак отказа, то на выходах 27 блока 33 появится ненулевой признак четного веса, а на выходах 17 и .27 блока 38 соответственно нулевой и единичный сигналы. Эти сигналы запретят запись признака единичной ошибки из накопителя 34 и разрешает считывание признака из регистра 6 на выходы 32. Благодаря этому на выходах блока 26 сформируется второй признак одиночной ошибки (не храни— мой в регистре 6) путем суммирования в блоке 26 признака двойной ошибки с выходов 27 блока 33 с признаком одиночной ошибки из регистра 6. Тем самым на соответствующих выходах 40 дешифратора 31 и выходах 43 дешифратора 30 сформируются единичные сигналы, соответствующие ошибочным разрядам. В блоках 38 и 41 произойдет исправление ошибок в считываемом слове. Если считываемое слово было инвертировано в предыдущих тактах работы устройства, то оно будет проинвертировано вновь в регистре 46 единичным сигналом на входе 44 и через блок 48 без изменения поступит на выход 18 устройства, На этом цикл считывания окончен, Нулевой или единичный сигналы на входе 44 регистра
46 указывают на то, каким хранится слово: прямым или инверсным, Для того, чтобы инверсное слово также было кодовым, необходимо, чтобы используемый код содержал слово, состоящее из одних единиц, или чтобы в проверочной матрице кода в приведен7 12 ном ступенчатом виде все столбцы имели нечетное число единиц.
В качестве примера приведена про верочная матрица удлиненного кода
Хемминга (восемь, четыре) с кодовым расстоянием d = 4, удовлетворяющая этим требованиям:
1 1 0 1 1 0 0 0
0 1 1 0 1 0 0
0 1 1 1 0 0 1 0
1 1 1 0 0 0 0 1
Таким образом, предлагаемое устройство выполняет те же функции, что и известное (базовый объект): хранение и выдачу двоичной информации с исправлением всех одиночных и некоторых типов двойных ошибок в кодовых словах. Однако известное устройство в режиме коррекции одиночной ошибки в слове (в режиме считывания информации) заканчивает цикл считывания за одинаковое время, т.е. считываемая информация проходит на выход устройства через все блоки, обрабатывающие слово в этом режиме. В то же время в предлагаемом устройстве при отсутствии ошибок (явление значительно более вероятное, чем наличие ошибок) считываемая информация проходит на выход устройства минуя регистр 6, блок (26) суммирования и дешифратор
31 т.е. линия последовательного прохождения считанной из накопителя
1 информации практически состоит из блоков 38, 41, 46, 48. Параллельная цепь (блоки 33, 28,. элемент И 51) 83860 8 мало влияет на общее быстродействие предлагаемого устройства, так как нужный сигнал на входе 50 блока 48 появляется практически одновременно с информацией на другом его входе 47.
Таким образом, в известном устройстве и при отсутствии ошибки, и при ее наличии информация проходит последовательно блоки: 33, 28, 6, 26, 31, 37, 41, 46 — всего восемь блоков, в то время как в предлагаемом — только че- тыре. Даже такое сопоставление показывает, что в режиме работы без ошибок быстродействие предлагаемого устройства примерно на 50Х выше, чем быстродействие известного. формулаизобретения
Запоминающее устройство с коррек-. цией информации по авт.св. Р 1070610, о т л и ч а ю щ е е с я тем, что, с целью повышения быстродействия устройства, оно содержит второй коммутатор и третий элемент И, первый и второй входы которого подключены соответственно к третьему выходу блока обнаружения ошибок и к выходу триггера, выход третьего элемента И явч гется третьим управляющим выходом устройства и подключен к управляющему, входу второго коммутатора, первый и второй информационные входы которого подключены соответственно к одному из
35 выходов накопителя и к выходу третьего регистра, выход второго коммутатора является информационным выходом устройства.
1283860
Со с тав итель С. Шус те н ко
Техред;А .Кравчук Корректор M.Ìàêñèìèøèíåö
Редактор А.Ренин
Заказ 7450/52 Тираж 589 Подписное
ВНИИПИ Государственйого комитета СССР по делам изобретений и открытий
113035, Москва, Ж-35, Раушская наб., д. 4/5
Производственно-полиграфическое предприятие, г.Ужгород, ул. Проектная, 4