Запоминающее устройство с динамическим резервированием
Изобретение относится к вычислительной технике и может быть использовано для построения надежных запоминающих устройств оперативной или постоянной памяти произвольного доступа, работающих в реальном масштабе времени. Целью изобретения является повышение надежности запоминающего устройства за счет обеспечения оперативного парирования сбоев и отказов элементов памяти как в основных разрядах считываемых слоев, так и в контрольных, а также учета постоянных отказов разрядных битовых секций, выявленных на тестах после хранения. Запоминающее устройство с динамическим резервированием содержит основной и резервный блоки памяти, выходной регистр, блок задания режимов, блок задания неисправностей, блок контроля, группу блоков сравнения, блок реконфигурации разбит на группу коммутаторов. 2 з.п. ф-лы, 4 ил.
Изобретение относится к вычислительной технике и может быть использовано для построения надежных запоминающих устройств оперативной или постоянной памяти произвольного доступа, работающих в реальном масштабе времени.
Известно резервированное оперативное запоминающее устройство, содержащее, например, два накопителя, часть разрядов которых используется для хранения контрольной информации, входные и выходные коммутаторы, блоки свертки по модулю 2, блок управления и схему поразрядного сравнения считываемой информации [1]. Недостаток устройства в том, что оно не исправляет многоразрядные ошибки, а при двух накопителях исправляет не более двух одиночных разрядных неисправностей. Известно устройство для замещения ошибочных данных в запоминающих ячейках (многоразрядных словах) некорректируемого накопителя, в котором ошибочная ячейка основного накопителя замещается на ячейку из дополнительного (заявка ФРГ N 2646162, кл. G 11 C 29/00, 1979). Известна интегральная память с резервированием столбцов данных, в которой все столбцы элементов накопителя разбиты на группы, и каждой группе ставится в соответствии резервный столбец (заявка Франции N 2611301, кл. G 11 C 29/00, 1988). Общим недостатком этих двух устройств является то, что при отказах отдельных элементов накопителя заменяются на резервные не только отказавшие элементы, но и исправные, входящие в соответствующее слово, как в заявке ФРГ, или во все столбцы, занимающие в группах одинаковое положение, как в заявке Франции. Известно полупроводниковое ЗУ, выполняющее функцию коррекции ошибок и имеющее резервный блок. В этом устройстве с помощью двух селекторов имеется возможность локализации и замены отказавшего элемента памяти на пересечении горизонтальных и вертикальных групп элементов. Ошибки в группах обнаруживаются контролем на четность (патент США N 4768193, кл. G 06 F 11/10, 11/20, 1988). Недостатком этого ЗУ является то, что ввиду невысокой эффективности контроля на четность для многоразрядных ошибок при их возникновении во многих случаях элемент памяти локализовать будет невозможно и при этом заменяется вся группа элементов, в строке или столбце, в том случае и исправные элементы в группе. Известно запоминающее устройство с динамическим резервированием, содержащее n битовых секций (разрядов) основной памяти и S резервной с общими адресными и управляющими линиями выбора слова. n разрядных линий основной памяти и S разрядных линий резервной соединены через схему реконфигурации с регистром данных. Устройство позволяет производить замену отказавших элементов памяти на резервные для каждого слова и каждого разряда на основании информации об отказах, занесенной в дополнительную память. Недостатком устройства является невозможность оперативного исправления выходных данных при возникновении сбоев и неисправностей в элементах накопителя. При возникновении, например, неисправности в этом устройстве необходимо провести тесты и результат тестов записать в дополнительную память. А сбои вообще тестами не обнаруживаются. Цель предлагаемого технического решения - повышение надежности путем обеспечения оперативности переключения резерва при появлении сбоев и отказов элементов памяти. Указанная цель достигается тем, что в известное устройство, содержащее основной и резервный блоки памяти, блок реконфигурации и выходной регистр, причем адресные и управляющие входы основного и резервного накопителей объединены и являются адресными и управляющими входами устройства, выходы основного и резервного блоков памяти подключены к соответствующим входам блока реконфигурации, выходы которого соединены с соответствующими входами выходного регистра, выходы которого являются выходами устройства, управляющий вход выходного регистра является входом стробирования считывания устройства, введены блок задания режимов, блок задания неисправностей, блок контроля, группа блоков сравнения, а блок реконфигурации состоит из групп коммутаторов. Первый информационный вход каждого коммутатора и первый вход соответствующего блока сравнения объединены и подключены к соответствующему выходу основного блока памяти. Второй информационный вход каждого коммутатора и второй вход соответствующего блока сравнения объединены и подключены к соответствующему выходу резервного блока памяти. Выход блока сравнения соединен с первым управляющим входом соответствующего коммутатора. Вторые управляющие входы коммутаторов объединены и подключены к выходу блока контроля, информационные входы которого и соответствующие информационные входы выходного регистра объединены и подключены к выходам соответствующих коммутаторов, третьи управляющие входы которых соединены с соответствующими прямыми выходами блока задания режимов, инверсные выходы которого подключены к четвертым управляющим входам соответствующих коммутаторов, пятые управляющими входы которых соединены с соответствующими выходами блока задания неисправностей. Управляющий вход блока контроля соединен с входом стробирования считывания устройства. На фиг. 1 показана структурная схема запоминающего устройства с динамическим резервированием; на фиг. 2 - пример реализации коммутатора; на фиг. 3 - пример возможной реализации блока контроля; на фиг. 4 - пример временной диаграммы работы устройства, причем высокий уровень сигналов соответствует логической "1". Устройство (фиг. 1) содержит основной 1 и резервный 2 блоки памяти, каждый из которых предназначен для хранения n-разрядных слов, сопровождаемых "k" контрольными разрядами. Между n + k соответствующими выходными разрядными линиями основного и резервного блоков памяти включены n + k блоков сравнения 3. Каждый из n + k коммутаторов 4 первым и вторым информационными входами соединен с разрядными линиями соответственно основного 1 и резервного 2 блоков памяти, а информационным выходом - с соответствующим разрядом выходного регистра 5 и входом блока контроля 6. Первый управляющий вход каждого коммутатора 4 соединен с выходом соответствующего блока сравнения 3, второй - с выходом блока контроля 6, третий, четвертый и пятый соединены соответственно с прямым и инверсным выходами триггера соответствующего разряда блока задания режимов 7 и с соответствующим выходом блока задания неисправностей 8. Коммутатор 4 содержит с первого по четвертый элементы И соответственно 9, 10, 12, 14, первый 11 и второй 15 элементы ИЛИ, элемент НЕ 13. Первый, второй и третий входы первого элемента И 9, являются соответственно первым, вторым и третьим управляющими входами коммутатора, четвертым и пятым управляющими входами которого являются соответственно первый и второй входы второго элемента И 10, выход которого соединен с первым входом первого элемента ИЛИ 11, второй вход которого соединен с выходом первого элемента И 9. Вход элемента НЕ 13 и первый вход третьего элемента И 12 объединены и подключены к выходу первого элемента ИЛИ 11. Выход элемента НЕ 13 соединен с первым входом четвертого элемента И 14, второй вход которого является первым информационным входом коммутатора 4, вторым информационным входом которого является второй вход третьего элемента И 12, выход которого соединен с первым входом второго элемента ИЛИ 15, второй вход которого соединен с выходом четвертого элемента И 14. Выход второго элемента ИЛИ 15 является выходом коммутатора. Блок контроля 6 (фиг. 3) содержит элемент ИЛИ 16, "к" элементов ИСКЛЮЧАЮЩЕЕ ИЛИ 171-17к, "к" сумматоров по модулю 2 181-18к, триггер 19, элемент ИЛИ 20, формирователь 21, n/к входов каждого сумматора по модулю 2 181-18к соединены с группой входов блока контроля 6, соединенных с выходами коммутаторов 4, коммутирующих разряды основных слов. Выходы сумматоров по модулю 2 181-18к соединены с первыми входами соответствующих элементов ИСКЛЮЧАЮЩЕЕ ИЛИ 171-17к, вторые входы которых соединены с соответствующими "к" входами блока контроля 6, соединенных с выходами коммутаторов 4, коммутирующих контрольные разряды блоков памяти. Выходы элементов ИСКЛЮЧАЮЩЕЕ ИЛИ 171-17к соединены с входами элемента ИЛИ 16, выход которого соединен с прямым установочным входом триггера 19, вход синхронизации которого через двухвходовой элемент ИЛИ 20 соединен с входом и выходом формирователя 21, вход которого является управляющим входом блока контроля 6, а выход соединен с инверсным установочным входом триггера 19, прямой выход которого является выходом блока контроля 6. Устройство работает следующим образом. По одинаковым адресам слов основного 1 и резервного 2 блоков памяти хранятся одинаковые данные. Чтение и запись (если память типа ОЗУ) производится синхронно. Блоки задания режимов 7 и задания неисправностей 8 осуществляют независимое управление по каждому разряду считываемых слов. Эти блоки представляют собой, например, программно-доступные регистры со стороны процессора ЦВМ, в состав которой может входить рассматриваемое устройство. С помощью блока задания режимов 7 для каждого разряда слов может быть установлен динамический или статический режим работы соответствующего коммутатора 4. Динамический режим коммутатора 4 i-го разряда соответствует значению логической "1" i-го разряда регистра задания режимов 7. При этом логический "0" с инверсного выхода триггера i-го разряда регистра задания режимов 7, поступая через четвертый управляющий вход коммутатора 4 на элемент И 10, блокирует возможность управления коммутатором по i-му разряду регистра задания неисправностей 8, сигнал которого поступает через пятый управляющий вход коммутатора 4 на второй вход элемента И 10. До момента считывания слова из блоков памяти на первом и втором входах элемента И 9 присутствуют логические нули, поступающие соответственно через первый управляющий вход коммутатора 4 с выхода блока сравнения и через второй управляющий вход - с выхода блока контроля. На третьем входе элемента И 9 присутствует сигнал логической "1", поступающий через третий управляющий вход коммутатора 4 с прямого выхода триггера соответствующего разряда регистра задания режимов 7. Поскольку на обоих входах элемента ИЛИ 11 присутствуют логические "0", то и на первом входе элемента И 12 будет "0". Тем самым запрещается прохождение сигнала с i-по разряда резервного блока памяти 2 через второй вход элемента И 12, через элемент ИЛИ 15 на выход коммутатора 4. Одновременно сигналом логической "1" с выхода элемента НЕ 13, поступающего на первый вход элемента И 14, разрешено прохождение сигнала с i-го разряда основного блока памяти 1 через второй вход элемента И 14, элемент ИЛИ 15 на выход коммутатора 4. Если при считывании слова блок сравнения 3 и блок контроля 6 сигналов ошибок не вырабатывают, то в выходной регистр 5 через коммутаторы 4 записывается слово, считанное из основного блока памяти. Пусть, например, произошел отказ или сбой в битовой секции i-го разряда основного блока памяти на определенном адресе (или группе адресов). При считывании слова по этому адресу блок контроля 6 вырабатывает сигнал ошибки, а блок сравнения 3 - сигнал несравнения. Таким образом, на первом и втором входах элемента И 9 коммутатора 4 появятся логические "1". А поскольку на третьем входе уже была "1" (установлен динамический режим), этот единичный сигнал проходит на первый вход элемента И 12 и через элемент НЕ 13 на первый вход элемента И 14. В результате на выход коммутатора 4 вместо сигнала с разрядной линии основного блока памяти проходит сигнал с разрядной линии резервного блока памяти через второй информационный вход коммутатора 4, элементы И 12, ИЛИ 15. Временная диаграмма переключения выходной информации коммутатора 4 при фиксации искаженного разряда считанного слова (на примере переключения одного разряда) показана на фиг. 4. Сигнал ошибки блока контроля 6 после возникновения сохраняется до конца строба считывания. Его сброс, т.е. обнуление триггера 19, происходит по сигналу с выхода формирователя 21 (по заднему фронту строба считывания), поступающего на инверсный установочный вход триггера 19 и одновременно через элемент ИЛИ 20 на его вход синхронизации. Если откажет какой-либо разряд резервного блока памяти 2, то соответствующий коммутатор не переключается, так как несмотря на наличие сигнала несравнения с блока 3, блок контроля 6 сигнала ошибки не выработает. В общем случае, в динамическом режиме при чтении производится оперативное замещение информации отдельных разрядных линий основного блока памяти на линии резервного, если имеется сигнал их несравнения и сигнал ошибки для считываемого слова. Это исправление информации осуществляется также и для контрольных разрядов. Использование такого динамического переключения резерва для каждого элемента памяти, стоящего на пересечении разрядной и адресной линий, дает большой выигрыш в надежности при простоте реализации. Однако при некоторых сочетаниях неисправностей, применяя только динамический режим, исправить выходную информацию не представляется возможным. Например, пусть в i-м разряде резервного блока памяти отказали все элементы i-й битовой секции. При чтении слов постоянно срабатывает i-й блок сравнения 3, но сигнал ошибки не вырабатывается, так как на выход коммутатора 4 подключена разрядная линия основного блока памяти. Если при этом возникнет сбой или отказ в другой битовой секции основного блока памяти r
Формула изобретения
1. ЗАПОМИНАЮЩЕЕ УСТРОЙСТВО С ДИНАМИЧЕСКИМ РЕЗЕРВИРОВАНИЕМ, содержащее основной и резервный блоки памяти, блок реконфигурации и выходной регистр, причем адресные входы основного и резервного накопителей объединены и являются адресными входами устройства, управляющие входы основного и резервного блоков памяти объединены и являются управляющими входами устройства, выходы основного и резервного блоков памяти подключены к соответствующим входам блока реконфигурации, выходы которого соединены с соответствующими входами выходного регистра, выходы которого являются выходами устройства, управляющий вход выходного регистра является входом стробирования считывания устройства, отличающееся тем, что, с целью повышения надежности устройства путем обеспечения оперативного переключения резерва при появлении сбоев и отказов элементов памяти, в него введены блок задания режимов, блок задания неисправностей, блок контроля, группа блоков сравнения, блок реконфигурации состоит из группы коммутаторов, причем первый информационный вход каждого коммутатора и первый вход соответствующего блока сравнения объединены и подключены к соответствующему выходу основного блока памяти, второй информационный вход каждого коммутатора и второй вход соответствующего блока сравнения объединены и подключены к соответствующему выходу резервного блока памяти, выход блока сравнения соединен с первым управляющим входом соответствующего коммутатора, вторые управляющие входы коммутаторов объединены и подключены к выходу блока контроля, информационные входы которого и соответствующие информационные входы выходного регистра объединены и подключены к выходам соответствующих коммутаторов, третьи управляющие входы которых соединены с соответствующими прямыми выходами блока задания режимов, инверсные выходы которого подключены к четвертым управляющим входам соответствующих коммутаторов, пятые управляющие входы которых соединены с соответствующими выходами блока задания неисправностей, управляющий вход блока контроля соединен с входом стробирования считывания устройства. 2. Устройство по п.1, отличающееся тем, что каждый коммутатор содержит с первого по четвертый элементы И, первый и второй элементы ИЛИ, элемент НЕ, причем первый, второй и третий входы первого элемента И являются соответственно первым, вторым и третьим управляющими входами коммутатора, четвертым и пятым управляющими входами которого являются соответственно первый и второй входы второго элемента И, выход которого соединен с первым входом первого элемента ИЛИ, второй вход которого соединен с выходом первого элемента И, вход элемента НЕ и первый вход третьего элемента И объединены и подключены к выходу первого элемента ИЛИ, выход элемента НЕ соединен с первым входом четвертого элемента И, второй вход которого является первым информационным входом коммутатора, вторым информационным входом которого является второй вход третьего элемента И, выход которого соединен с первым входом второго элемента ИЛИ, второй вход которого соединен с выходом четвертого элемента И, выход второго элемента ИЛИ является выходом коммутатора. 3. Устройство по п.1, отличающееся тем, что блок контроля содержит первый и второй элементы ИЛИ, K элементов ИСКЛЮЧАЮЩЕЕ ИЛИ, формирователь импульса, триггер, k сумматоров по модулю два, причем i вход сумматора по модулю два (где i = 1 ... n/k) является j информационным входом блока (где j = 1 ... n), выход сумматора по модулю два соединен с первым входом соответствующего элемента ИСКЛЮЧАЮЩЕЕ ИЛИ, выход которого соединен с соответствующим входом первого элемента ИЛИ, выход которого соединен с прямым установочным входом триггера, вход синхронизации которого соединен с выходом второго элемента ИЛИ, первый вход которого и вход формирователя импульса объединены и являются управляющим входом блока, выходом которого является прямой выход триггера, инверсный установочный вход которого и второй вход второго элемента ИЛИ объединены и подключены к выходу формирователя импульса, второй вход m элемента ИСКЛЮЧАЮЩЕЕ ИЛИ является m информационным входом блока (где m = n + 1 ... n + k).РИСУНКИ
Рисунок 1, Рисунок 2, Рисунок 3, Рисунок 4