Способ повышения надежности микроэвм

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

 

Изобретение относится к цифровой вычислительной технике и предназначено для решения задачи обнаружения случайных срывов процессора микроЭВМ с заданной программы функционирования, что может быть вызвано действием случайных помех.

Известен способ обнаружения случайных «блужданий» в микроЭВМ, представленный в [1].

Данный способ обнаружения случайных «блужданий» в микроЭВМ заключается в том, что программу работы процессора в виде блока из его машинных кодов первоначально размещают с какого-либо адреса запоминающего устройства программ, в котором затем в некотором чередующемся порядке располагают блоки, содержащие машинные коды данных, необходимых для исполнения рабочей программы, и блоки-ловушки случайных «блужданий» процессора, в которые после всего записывают массивы самых коротких машинных кодов одних и тех же команд для обнаружения возможных случайных «блужданий» и целенаправленной реакции на них.

Случайные «блуждания» процессора возникают тогда, когда он срывается с заданной программы функционирования, интерпретируя машинные коды данных как коды команд, а коды команд - как операнды или как коды их адресов. Полагается, что при таком блуждании с некоторой вероятностью процессор извлечет данные из блоков-ловушек и интерпретирует их как код команды. Предлагается заполнять блоки-ловушки массивами самых коротких машинных кодов одних и тех же команд, например, «Сброс» или «Безусловный переход к команде с адресом А», что позволит обнаружить факт наличия случайного блуждания процессора и автоматически вернуть его к началу рабочей программы или некоторой заданной точке А программы. При правильном функционировании процессора его обращение к блокам-ловушкам исключается, что обеспечивается в процессе разработки программы работы микроЭВМ.

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

Однако известно, что в составе команд любой микроЭВМ содержатся команды условных и безусловных переходов, а так же команды организации циклических процессов. Это приводит к тому, что при возникновении срыва процессора с заданной программы функционирования траектория его случайного «блуждания» может длительное время находиться в блоке кодов рабочей программы или в блоках кодов данных. Такие ситуации либо принципиально не могут быть определены данным способом обнаружения случайных «блужданий», либо будут обнаружены через значительные промежутки времени, в течение которых может быть выполнена последовательность команд с непредсказуемыми последствиями.

Наиболее близким по технической сути является широко известный способ повышения надежности микроЭВМ (например, [2]), заключающийся в том, что к n-разрядному основному (программному) запоминающему устройству микроЭВМ предварительно добавляют дополнительное однобитовое запоминающее устройство, которые в рабочем режиме образуют единое (n+1)-разрядное запоминающее устройство, затем в n-разрядные ячейки основного запоминающего устройства загружают программу работы процессора в виде машинных кодов, после чего в каждую однобитовую ячейку дополнительного запоминающего устройства записывают единицу или ноль, таким образом, чтобы сумма единичных значений в кодах каждой (n+1)-разрядной ячейки основного и дополнительного запоминающих устройств была бы четной, что в режиме работы при чтении данных из основного и дополнительного запоминающих устройств автоматически проверяют многовходовым сумматором по модулю 2, сигнал с выхода которого подают на вход прерывания процессора, который переходит на подпрограмму обработки прерывания в случае неверного чтения кодов из основного и дополнительного запоминающих устройств.

Данный способ, известный более как «контроль четности», повышает надежность функционирования микроЭВМ за счет оперативного обнаружения случайных и/или фиксированных единичных искажений данных, считываемых из основного и дополнительного запоминающих устройств.

Недостатком данного способа повышения надежности является невозможность обнаружения фактов возникновения случайных «блужданий» процессора микроЭВМ.

Изобретение направлено на расширение функциональных возможностей способа повышения надежности микроЭВМ за счет дополнительной возможности обнаружения факта возникновения случайных «блужданий» и адекватной реакции на них с минимальными аппаратными затратами.

Это достигается тем, что предварительно количество входов сумматора по модулю два увеличивают до (n+2), на (n+2) вход которого дополнительно подают единичный признак чтения кода команды, который в режиме работы автоматически формируется процессором микроЭВМ, а на этапе записи данных в дополнительное запоминающее устройство в каждый его бит записывают единицу или ноль, таким образом, чтобы в (n+1) битах дополнительного запоминающего устройства и основного запоминающего устройства, в ячейках которого содержатся коды команд, сумма единичных значений была бы нечетной, а в ячейках которого содержатся все остальные коды - четной, при этом в режиме правильной работы микроЭВМ и отсутствии «блужданий» при чтении из основного и дополнительного запоминающих устройств будет сохраняться четность (n+2) бит, одновременно поступающих на вход сумматора по модулю два.

Рассмотрим осуществление заявляемого способа повышения надежности микроЭВМ.

Процессор микроЭВМ при выполнении рабочей программы должен обладать способностью формировать единичный признак чтения кода команды при обращении к основному запоминающему устройству, аналогично тому, как этот признак (M1) формируется в широко известном микропроцессоре КР 580 ВМ 80А [3].

На фиг.1 представлен фрагмент структурной схемы микроЭВМ, где 1 - процессор; 2 - однонаправленная шина адреса; 3 - двунаправленная n-разрядная шина данных; 4 - шина управления; 5 - схема «И»; 6 - сумматор по модулю 2 на (n+2) входа; 7 - дополнительное однобитовое запоминающее устройство; 8 - основное (программное) n-разрядное запоминающее устройство; 9 - формирователь стробирующего сигнала (С).

На фиг.2 представлена временная диаграмма, характеризующая временное соотношение между сигналом чтения (Чт) из основного и дополнительного запоминающего устройств и стробирующим сигналом (С).

На фиг.3 представлен вариант размещения кодов в основном и дополнительном запоминающих устройствах в соответствии с заявляемым способом повышения надежности микроЭВМ, при этом

Кi - код i-ой команды;

Оij - код j-го операнда i-ой команды;

Дп - код n-ых данных.

Способ осуществляется следующим образом.

На основе предварительного анализа рабочей программы процессора 1, представленной в виде двоичных кодов, определяют адреса тех ячеек основного запоминающего устройства 8, в которых будут содержаться коды команд. Для каждой такой ячейки определяется количество единичных значений, содержащихся в коде команды, при этом если количество единичных значений в коде команде четное, то в соответствующий бит дополнительного запоминающего устройства 7 должна впоследствии записываться единица (то есть код команды дополняется до нечетности). Для всех других кодовых слов рабочей программы, включая и неиспользуемые программой ячейки основного запоминающего устройства 8, кодовые слова при помощи дополнительного запоминающего устройства 7 дополняются до четности.

Затем рабочая программа процессора 1, представленная в виде двоичных кодов, загружается в основное запоминающее устройство 8, а в дополнительное запоминающее устройство 7 загружаются найденные значения бит. Загрузка информации в основное 8 и дополнительное 7 запоминающие устройства может производиться как в составе микроЭВМ, так и вне нее.

В рабочем режиме функционирования основное 8 и дополнительное 7 запоминающие устройства образуют единое (n+1) разрядное запоминающее устройство, где n-разрядность шины данных процессора 1. На адресные входы основного 8 и дополнительного 7 запоминающих устройств одновременно подаются коды адреса, формируемые процессором 1 на шине адреса 2. Все n выходов основного запоминающего устройства 8 стандартно подключаются к шине данных 3 и дополнительно к n входам (n+2) входового сумматора по модулю два 6. К (n+1)-му входу сумматора 6 подключается выход дополнительного запоминающего устройства 7, а к (n+2)-му входу сумматора 6 подключается сигнал признака чтения кода команды, формируемый процессором 1 при выполнении программы и передаваемый по шине управления 4. Сигнал с выхода сумматора по модулю два 6 поступает на первый вход схемы «И» 5, на второй вход которой поступает стробирующий сигнал С, который в свою очередь формируется формирователем 9 из сигнала чтения (Чт), одновременно поступающего из шины управления 4 на соответствующие входы запоминающих устройств 7 и 8. Выход схемы «И» подключается к входу прерывания процессора 1. Временные соотношения между сигналами чтения (Чт) и стробирования (С) показаны на фиг.2.

Процессор 1 начинает свою работу с того, что устанавливает на шину адреса 2 двоичный код ячейки памяти основного 8 и дополнительного 7 запоминающих устройств, из которой будет считываться записанная в них информация. Одновременно с установкой кода на шине адреса 2 процессор 1 формирует на одной из линий шины управления 4 сигнал, поступающий на (n+2) вход сумматора 6 и свидетельствующий о том, что данные, считанные процессором 1 из данной ячейки основного запоминающего устройства 8, будут интерпретироваться процессором 1 как код команды. Иначе говоря, процессор формирует признак чтения кода команды из ячейки основного запоминающего устройства 8. Далее на одной из линий шины управления 4 формируется сигнал чтения из ячеек с одинаковым адресом основной 8 и дополнительной 7 памяти. Одновременно с фронтом сигнала чтения запускается формирователь 9, предназначенный для выработки сигнала стробирования схемы «И» 5. С началом действия сигнала чтения на выходах основного 8 и дополнительного 7 запоминающих устройств формируются коды, записанные в их ячейках памяти. Код из основного 8 запоминающего устройства поступает в шину данных 3 и на n входов сумматора 6. На (n+1) вход сумматора 6 поступает код с дополнительного 7 запоминающего устройства. К моменту формирования фронта сигнала стробирования сумматор 6 формирует на своем выходе стабильный признак четности или нечетности (n+2) разрядного входного кода. Сигнал с выхода сумматора 6 поступает на второй вход схемы «И» 5. При единичном значении стробирующего сигнала, поступающего на первый вход схемы «И» 5, проверяется значение сигнала с выхода сумматора 6. Если на выходе сумматора 6 сформирован «0», то это свидетельствует о том, что код, считанный из основного 8 и дополнительно 7 запоминающих устройств, не имеет единичных искажений и правильно интерпретируется процессором 1. Если на выходе сумматора 6 сформирована «1», то это свидетельствует о том, что код, считанный из основного 8 и дополнительно 7 запоминающих устройств, либо имеет единичные искажения, либо этот код не правильно интерпретируется процессором 1, при этом на выходе схемы «И» будет сформирован единичный сигнал, по длительности примерно равный стробирующему сигналу и вызывающий прерывание процессора. Подпрограмма обслуживания данного прерывания выбирается пользователем микроЭВМ и ориентируется на целенаправленную реакцию на возможные случайные сбои.

Как видно из фиг.3, процессор 1 начинает свою работу с команды, расположенной в нулевой ячейке основного запоминающего устройства 8, и правильно функционирует до команды, размещенной в четвертой ячейке основной памяти 8. Из пятой ячейки процессором 1 правильно считываются данные. При попытке процессора 1 интерпретации данных, находящихся в шестой ячейке, в качестве кода команды, будет сформирован сигнал ошибки с выхода сумматора 6. Аналогичным образом обнаруживается попытка процессора 1 интерпретации кода команды, расположенного в шестой ячейке, в качестве кода операнда или данных.

Из данных, представленных на фиг.3, однозначно следует также, что единичные искажения данных, считываемых процессором 1 из основного 8 и дополнительного 7 запоминающих устройств при правильной интерпретации процессором 1 кодов команд, будут обнаружены с минимальными временными задержками.

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

Данный способ повышения надежности наиболее эффективен для микроЭВМ, базирующихся на процессорах с Гарвардской архитектурой и реализующих программу, содержащую большой объем табличных данных и/или кодов символьных переменных.

Источники информации

1. Шевкопляс Б.В. Микропроцессорные структуры. Инженерные решения: Справочник. - М.: Радио и связь, 1993. - 256 с., стр.89.

2. Карлащук В.И. Электронная лаборатория на IBM PC. Лабораторный практикум на базе Electronics Workbench и MATLAB. - М.: СОЛОН-Пресс, 204. - 800 с., стр.366.

3. Микропроцессоры и микропроцессорные комплекты интегральных микросхем: Справочник. В 2 т. / В.-Б. Б.Абрайтис, Н.Н.Аверьянов, А.И.Белоус и др.; Под ред. В.А.Шахнова. - М.: Радио и связь, 1988. - T.1. - 386 с.

Способ повышения надежности микроЭВМ, заключающийся в том, что к n-разрядному основному (программному) запоминающему устройству микроЭВМ предварительно добавляют дополнительное однобитовое запоминающее устройство, которые в рабочем режиме образуют единое (n+1)-разрядное запоминающее устройство, затем в n-разрядные ячейки основного запоминающего устройства загружают программу работы процессора в виде машинных кодов, после чего в каждую однобитовую ячейку дополнительного запоминающего устройства записывают единицу или ноль, таким образом, чтобы сумма единичных значений в кодах каждой (n+1)-разрядной ячейки основного и дополнительного запоминающих устройств была бы четной, что в режиме работы при чтении данных из основного и дополнительного запоминающих устройств автоматически проверяют многовходовым сумматором по модулю 2, сигнал с выхода которого подают на вход прерывания процессора, который переходит на подпрограмму обработки прерывания в случае неверного чтения кодов из основного и дополнительного запоминающих устройств, отличающийся тем, что предварительно количество входов сумматора по модулю два увеличивают до (n+2), на (n+2) вход которого дополнительно подают единичный признак чтения кода команды, который в режиме работы автоматически формируется процессором микроЭВМ, а на этапе записи данных в дополнительное запоминающее устройство в каждый его бит записывают единицу или ноль, таким образом, чтобы в (n+1) битах дополнительного запоминающего устройства и основного запоминающего устройства, в ячейках которого содержатся коды команд, сумма единичных значений была бы нечетной, а в ячейках которого содержатся все остальные коды - четной, при этом в режиме правильной работы микроЭВМ и отсутствии «блужданий» при чтении из основного и дополнительного запоминающих устройств будет сохраняться четность (n+2) бит, одновременно поступающих на вход сумматора по модулю два.



 

Похожие патенты:

Изобретение относится к вычислительной технике. Технический результат заключается в повышении эффективности кодирования и декодирования с учетом ошибок и пробелов в переданных данных.

Изобретение относится к вычислительной технике. Технический результат заключается в осуществлении с высокой скоростью контроля по четности вводимых и хранящихся данных.

Изобретение относится к области вычислительной техники, а именно к микропроцессорным системам с кэш-памятью, блоками обнаружения и коррекции ошибок и встроенным блоком самотестирования.

Изобретение относится к области кодирования и декодирования данных, в частности к способу и устройству декодирования кода порождающей матрицы с низкой плотностью.

Изобретение относится к области передачи информации и предназначено для измерения значения отношения сигнал-шум на входе декодера. .

Изобретение относится к вычислительной технике и может быть использовано при создании высоконадежных вычислительных систем. .

Изобретение относится к вычислительной технике и может быть использовано для организации контроля работоспособности сдвигателей двоичных кодов высокопроизводительных цифровых вычислительных машин и систем.

Изобретение относится к вычислительной технике, в частности к обнаружению и исправлению ошибок при передаче информации по каналам связи или записи/чтения информации на устройствах памяти, например системах магнитной, магнитооптической, оптической памяти.

Изобретение относится к устройству обработки данных и к способу обработки данных. Технический результат - повышение устойчивости данных к ошибке. Для этого в случае, когда код LDPC (проверки на четность низкой плотности), имеющий длину кода 16200 битов и скорость кодирования 8/15, отображают на 16 сигнальных точек, если (#i+1)-е биты из старших значащих битов знаковых битов для 4×2 битов и символьных битов для 4×2 битов из двух последовательных символов устанавливают в качестве битов b#i и y#i, соответственно, демультиплексор выполняет взаимную замену для выделения b0, b1, b2, b3, b4, b5, b6 и b7 для y0, y4, y3, y1, y2, y5, y6 и y7, соответственно. Настоящая технология может применяться в передающей системе и т.п., которая передает код LDPC. 12 н.п. ф-лы, 78 ил.

Изобретение относится к устройствам и способам обработки данных. Технический результат - повышение устойчивости к ошибкам данных. Для этого когда заданный код LDPC (проверки четности с низкой плотностью), имеющий длину кода 16200 битов и скорость кода равную 8/15, отображают на 256 точек сигналов, при этом (#i+1)-ый бит, отсчитанный от самого верхнего бита из 8×1 знаковых битов, a (#i+1)-ый бит, отсчитанный от самого верхнего бита из 8×1 символьных битов одного символа выражены в качестве бита b#i и бита y#i соответственно, причем демультиплексор выполнен с возможностью перестановки для назначения бита b0 в качестве бита y2, бита b1 в качестве бита y6, бита b2 в качестве бита y1, бита b3 в качестве бита y0, бита y4 в качестве бита y7, бита b5 в качестве бита y5, бита b6 в качестве бита y3 и бита b7 в качестве бита y4. Настоящая технология может применяться, например, в системах передачи, которые передают коды LDPC. 4 н.п. ф-лы, 75 ил.

Изобретение относится к технике связи и предназначено для передачи и приема в системах связи/радиовещания. Технический результат - повышение надежности связи и широковещания за счет эффективного восстановления искаженной информации. Для этого в устройстве и способе для осуществления сокращения и прореживания в случае осуществления кодирования и декодирования предусмотрено использование матрицы проверки четности в системе связи/широковещания. В способе эксплуатации передающей стороны определяется количество битов, подлежащих заполнению нулями. Определяется количество групп битов N p a d , где все биты подлежат заполнению нулями. Все биты в группах битов с 0-й по ( N p a d -1)-ю, указанных шаблоном сокращения, заполняются нулями. Информационные биты отображаются в позиции незаполненных битов в информационных битах Бозе-Чаудхури-Хоквенгема (BCH). Информационные биты BCH кодируются по BCH для генерации информационных битов LDPC. Информационные биты LDPC кодируются с LDPC для генерации кодового слова с заполнением нулями. 4 н. и 10 з.п. ф-лы, 25 ил., 18 табл.

Раскрыты способы и устройство для улучшенной обратно совместимой передачи данных DMX. В некоторых вариантах осуществления способы и устройство, относящиеся к расширению протокола DMX, обеспечивают обнаружение ошибок усовершенствованными управляемыми устройствами DMX при поддержке полной совместимости с неусовершенствованными управляемыми устройствами DMX. Способы и устройство могут использовать байт контрольной суммы пакета, который вставлен в пределы пакета стартового кода и является контрольной суммой множества байтов в пакете стартового кода. В некоторых разновидностях множество байтов в пределах пакета стартового кода могут дополнительно перемежаться согласно схеме перемежения. Технический результат- расширение функциональных возможностей протокола, обнаружение и/или исправление ошибок для повышения надежности освещения.4 н. и 16 з.п. ф-лы, 8 ил.

Группа изобретений относится к области связи и может быть использована для передачи и приема информации в вещательной системе/системе связи. Техническим результатом является обеспечение стабильности системы. Способ содержит сравнение количества битов информационного слова, которое необходимо передать, с заранее установленным пороговым значением; определение первой пары параметров, если количество битов информационного слова меньше заранее установленного порогового значения; определение второй пары параметров, если количество битов информационного слова не меньше заранее установленного порогового значения; определение количества битов, которые необходимо исключить, на основе одной из первой пары параметров и второй пары параметров; и исключение определенного количества битов, которые необходимо исключить, относительно битов четности кодового слова, сформированного путем кодирования информационного слова. 4 н. и 10 з.п. ф-лы, 12 ил.

Изобретение относится к цифровой вычислительной технике. Техническим результатом от использования заявляемого изобретения является расширение функциональных возможностей за счет оперативного контроля в рабочем режиме за целостностью байтовой структуры многобайтных команд. Способ позволяет непосредственно в рабочем режиме микроЭВМ параллельно с контролем единичных искажений, считываемых из основного и дополнительного запоминающих устройств данных и правильности интерпретации процессором кодов команд, дополнительно проводить проверку целостности байтовой структуры команды процессора, под которой понимается последовательное чтение байт многобайтных команд, при котором обращение к ячейкам памяти производится так, что адрес последующей ячейки памяти должен точно на единицу отличаться от адреса предшествующей ячейки памяти до тех пор, пока не будут прочитаны все байты многобайтной команды, что повышает вероятность оперативного обнаружения факта возникновения случайных «блужданий» процессора при сбоях в шинах адреса или счетчика команд микроЭВМ. 2 ил.

Группа изобретений относится к области электроники и может быть использована для управления временем обращения к памяти. Техническим результатом является уменьшение времени обращения к памяти. Устройство содержит устройство памяти, имеющее один или более элементов памяти; логику управления памятью, выполненную с возможностью: приема запроса от инициатора запроса через шину данных для данных, хранящихся в одном или более элементах памяти; и извлечения данных из упомянутого одного или более элементов памяти, определения, находится ли шина данных в состоянии простоя, и в ответ на определение, что шина данных находится в состоянии простоя: передачи данных из устройства в инициатор запроса по шине данных; инициирования алгоритма кода коррекции ошибок после начала передачи данных; и передачи индикатора кода коррекции ошибок в инициатор запроса через шину данных. 2 н. и 8 з.п. ф-лы, 8 ил.

Изобретение относится к вычислительной технике. Технический результат заключается в предотвращении ошибки при записи, вызываемой константной неисправностью в импедансном запоминающем устройстве. Способ записи, предназначенный для запоминающего устройства, в котором получают n численных значений, которые должны быть записаны; определяют n битов, соответствующих этим n численным значениям, которые должны быть записаны, и информацию о константных неисправностях, содержащихся в этих n битах; группируют эти n битов в В групп битов способом группирования путем регулирования интервала между двумя смежными битами в одной и той же группе, так, чтобы В групп битов удовлетворяли группировочному условию, и, в случае, когда эти n битов представляют двухмерный массив, состоящий из В строк и А столбцов, любые два бита, которые принадлежат к одной и той же группе, находились в различных строках и столбцах или в одной и той же строке; и соответственно записывают эти n численных значений в соответствии с информацией о константной неисправности, входящей в состав каждой группы битов в В группах битов, и численным значением, которое должно быть записано и которое соответствует информации о константной неисправности, входящей в состав каждой группы битов в В группах битов. 2 н. и 14 з.п. ф-лы, 6 ил., 5 табл.

Перестановочный декодер с режимом обучения относится к технике связи и может использоваться при проектировании новых и модернизации существующих систем обмена данными с применением блоковых помехоустойчивых кодов. Техническим результатом является повышение производительности декодера. Устройство содержит блок приема, блок мягких решений символов, детектор режимов, блок упорядочения оценок, накопитель оценок, датчик последовательностей столбцов, переключатель режимов, блок отрицательных решений, накопитель кодовой комбинации, блок эквивалентного кода, блок контроля линейности, блок исправления стираний, блок сравнения и обратных перестановок, блок положительных решений. 1 ил.

Группа изобретений относится к области электроники и может быть использована для отображения адреса встроенного кода коррекции ошибки (ЕСС). Техническим результатом является экономия электроэнергии и уменьшение задержки доступа к данным. Устройство содержит процессор и логическую схему управления памятью, выполненную с возможностью приема запроса на доступ к данным в запоминающем устройстве, причем данные отображены на страницу памяти, содержащую множество строк кэш; смещения по меньшей мере части из множества строк кэш для встраивания в данные информации ЕСС; повторного отображения упомянутой части из множества строк кэш в другое местоположение в памяти и доступа к данным и информации ЕСС на странице памяти, при этом запоминающее устройство разделено на множество частичных массивов; запрос на запись направлен в выбранный частичный массив, логическую схему, выполненную с возможностью повторного отображения упомянутой части из множества строк кэш в заданное местоположение в выбранном частичном массиве, причем указанный частичный массив дополнительно содержит указанную информацию ЕСС, причем заданное местоположение соответствует верхней части указанного частичного массива. 3 н. и 15 з.п. ф-лы, 12 ил.
Наверх