Устройство для кодирования и декодирования последовательного кода с коррекцией одиночных ошибок
Иллюстрации
Показать всеРеферат
ОПИСАНИЕ
ИЗОБРЕТЕНИЯ
К АВТОРСКОМУ СВИДЕТЕЛЬСТВУ
Союз Советскик
Социалистическик
Республик
" 732877 (61) Дополнительное к авт. свид-ву (22) Заявлено 30,03.76 (2! ) 2344065/18-24 с присоединением заявки ре (23) Приоритет
Опубликовано 05.05.80. Бюллетень М 17
Дата опубликования описания 08.05.80 (51)М. Кл.
5 06 F 11/12
Н 04 1. 1/10
Воударствеиим1 комитет
СССР аа делам изобретений и открытий (53) УДК681.3 (088.8) В. Э. Вершков, В. Н. Грачев, В. К. Дюков и В.,В. Карасев (72) Авторы изобретения (7!) Заявитель (54) УСТРОЙСТВО ДЛЯ КОДИРОВАНИЯ И ДЕКОДИРОВАНИЯ
ПОСЛЕДОВАТЕЛЬНОГО КОДА С КОРРЕКЦИЕЙ
ОДИНОЧНЫХ ОШИБОК
Изобретение относится к вычислительной технике и может быть применено в устройствах обмена цифровых вычислительных машин, в периферийных устройствах цифровых систем, а также в различных уст ройствах передачи дискретных данных.
Известно устройство для кодирования и декодирования и коррекции одиночной ошибки, содержащее сдвигающий регистр, по входу и выходу связанный соответственно с ппи о емными и передающими линиями связи (1
В указанном устройстве производится преобразование исходного параллельного кода в последовательный при выдаче информации и соответственно обратное пре15 образование последовательного кода в параллельный при приеме информации, причем каждая из этих операций осуществляется за счет сдвига информации в сдвигающем регистре.
Использование режима сдвига информа« ции обусловливает недостаточно высокую достоверность функционирования этих устройств при прямом и обратном преобразо2 ванин кодов. Например, вследствие того, что в формировании информации последнего разряда передаваемого или принимаемого сообшения участвуют цепи переноса и триггеры практически всех разрядов регистра„ неисправность, любого из этих элементов приводит к возникновению ошибок, не обнаруживаемых контролем. Использование в этих устройствах сдвигаюших уст ройств не допускает также диагностирование отказов их элементов.
Наиболее близким к предлагаемому по технической сущности и достигаемому результату является устройство для кодирования и декодирования последовательного кода с коррекцией одиночной ошибки, содержащее сдвиговой регистр числа, осуществляющий прием и выдачу информации с соответствующим прямым и обратным преобразованием последовательного кода в параллельный, соединенные с двухпроводной линией связи шифратор, кодирующий каждый разряд выдаваемого числа, и. входной дешифратор, преобразующий пиинкт з 73287 маемый код в код "1" или О, триггер со счетным входом для образования контрольного кода выдаваемой информации и для контроля принимаемой информации, счетчик разрядов числа, счетчик и дешифратор количества ошибок, регистр хранения номера искаженного разряда и дешифратор этого номера (21.
Основным недостатком этого устройства является пониженная достоверность ip преобразования параллельного кода в последовательный при выдаче информации и соответственно последовательного кода в параллельный при приеме информации, обусловленная применением сдвигового регистра, надежность функционирования которого в каждом такте связи зависит от исправности срабатывания практически каждого его элемента. Недостаточная достоверность передачи информации в данном 20 устройстве определяется также тем, что при приеме сообщения данные в триггер контроля на четкость ответвляются со входа сдвигового регистра, при этом правильное срабатывание контроля является всего лишь необходимым, но недостаточным условием для безошибочной установки принятого кода на триггерах сдвигового регистра.
Недостатки данного устройства, заклю- З0 чаются также в невозможности диагностирования неисправного узла, "разрушении" информации в регистре после выдачи слова,обусловленное спецификой работы сдви«
roaol o регистра, что, в свою очередь, ис- З ключает возможность оперативного повторения передачи слова, искаженного многократной ошибкой.
Наконец, использование для перекоди40 ровки двоичного кода в корреляционный парафазный код специального шифратора является неоправданным, так как при наличии триг еров эта процедура может быть выполнена за счет одновременного
45 считывания состояния триггера с его единичного и нулевого выходов.
Бель изобретения - повышение достоверности.
Указанная цель достигается тем, что в устройство для кодирования и декодирования последовательного кода с коррекцией одиночных ошибок, содержащее регистр, триггер проверки на четкость,входной дешифратор, счетчик количества ошибок, дешифратор количества ошибок, счетчик разрядов числа, дешифратор номера разряда числа и регистр хранения номера искаженного разряда, причем первый вы7 ход входного дешифратора соединен со входом счетчика количества ошибок, выход которого соединен с первым входом дешифратора количества ошибок, выход счетчика разрядов числа соединен с первым входом регистра хранения номера искаженного разряда, входы входного дешифратора являются информационными входами устройства, введены блок сравнения, входной и выходной коммутаторы, причем nepBb é х второй выходы выходного коммутатора являются выходами устройства, первый выход выходного коммутатора соединен с первым входом блока сравнения, выход которого соединен со счетным входом триггера проверки на четность, первый выход триггера проверки на четность соединен с первым входом выходного коммутатора и со вторым входом дешифратора количества ошибок, выход которого сое— ) динен с первыми входами входного коммутатора и дешифратора номера разряда числа, первый и второй выходы входного коммутатора соединены соответственно со вторым входом блока сравнения и с первым входом регистра, выход которого соединен с информационным входом выходного коммутатора, второй выход триггера проверки на четность соединен со вторым входом выходного коммутатора, первый„ второй и третий выходы дешифратора номера разряда числа соединены соответственно с трг-тьим входом дешифратора количества ошибок, со вторым входом входного коммутатора, с третьим. входом выходного коммутатора, кроме того, первый выход дешифратора номера разряда числа соединен с третьим входом блока сравнения, первый и второй выходы входного дешифратора соединены соответственно со вторым входом регистра хранения номера. искаженного разряда и с третьим входом входного коммутатора, выход регистра хранения номера искаженного разряда соединен со вторым входом дешифратора номера разряда числа, третий и четвертый входы которого соединены соответственно с выходом счетчика разрядов числа и с управляющим входом устройства.
На чертеже приведена структурная схема предлагаемого устройства.
Устройство содержит регистр 1, триггер 2 проверки на четность, входной дешифратор. 3, счетчик 4 количества ошибок, дешифратОр 5 количества ошибок, счетчик б разрядов числа, дешифратор 7 номера разряда числа, регистр 8 хранения номера искаженного разряда, входной коммутатор
732877
9, .выходной коммутатор 10, блок 11 сравнения, шину 12 "Передача и передающую 13 и приемную 14 двухпроводные линии связи, Входы входного дешифратора 3 соединены с приемной линией связи 14, его первый выход соединен со вторым входом регистра 8 хранения номера искаженного разряда, у которого первый вход соединен с выходом счетчика 6 разрядов числа, и входом счетчика 4 количества ошибок, выход которого соединен с первым входом дешифратора 5 количества ошибок.
Первый вход дешифратора 7 номера разряда числа соединен с выходом дешифратора 5 количества ошибок, к которому также подключен первый вход входного коммутатора 9, его второй вход — с выходом регистра 8 хранения номера искаженного разряда, третий вход — с выходом счетчика 6 разрядов числа и четвертый вход — с управляющим входом шины 12
Передача».
Второй вход входного коммутатора 9
25 поразрядно соединен с шинами первого выхода дешифратора 7 номера разряда числа, его третий вход — со вторым выходом входного дешифратора 3, а второй выход поразрядно — с единичными входами тригзю геров регистра 1, Первый и второй входы выходного коммутатора 10 соединены соответственно с единичным и нулевым выходами триггера 2 проверки на четкость, а первый и . 35 второй выходы с передающей линией 13 связи
Третий вход выходного коммутатора
10 поразрядно соединен с шинами второ40
ro выхода дешифратора 7 номера разряда числа, его информационный вход также поразрядно соединен единичными выходами триггеров регистра 1.
Первый вход блока 11 сравнения сое45 динен с первым выходом выходного коммутатора 10, второй вход со вторым выходом входного коммутатора 9, третий вход с пер1! вым выходом дешифратора 7 номера разряда числа, к которому также подключен третий вход дешифратора 5 количества ошибок. Выход блока 1 1 сравнения соединен со счетным входом триггера 2 проверки на четкость, единичный выход которого также соединен со вторым входом дешифратора 5 количества ошибок.
Устройство работает следующим обра зом.
При выдаче информации на регистре 1 устанавливается код передаваемого сообщения.
При этом поразрядно на информационном входе выходного коммутатора 10 с единичных и нулевых плеч триггеров регистра 1 в соответствии с заданным кодом устанавливаются открывающие и закрывающие потенциалы. Если триггер
1 -го разряда в регистре 1 находится в единичном состоянии, то по этому разряду на второй и третий входы выходного коммутатора 10 поступают соответственно открывающий и закрывающий потенциалы, если триггер находится в нулевом состоянии, то по этому разряду удерживаются соответственно закрывающий и оч крываюший потенциалы.
Перед началом выдачи информации на счетчике 6 разрядов числа устанавливается код "И ", соответствующий количеству информационных разрядов в передаваемом сообщении. Далее на.управляющий вход дешифратора 7 номера разряда числа по шине 12 "Передача поступает первый тактирующий сигнал. В соответствии с расшифрованным состоянием счетчика 6 дешифратор 7 вырабатывает на третьем выходе сигнал, который, поступая на третий вход выходного коммутатора 10, опрашивает состояние триггера первого разряда регистра 1. При этом, если этот триггер находится в нулевом состоянии, то на первый и второй выходы выходного коммутатора 10 выдается код "1, если триггер находится в состоянии "1", то на этих же выходах появляется код 10». Далее выработанная кодовая посылка поступает в передающую линию связи 13.
Аналогичным образом срабатывают последующие тактирующие сигналы, поступающие по шине 12 Передача". Ка>кдый из этих сигналов вычитает единицу из состояния счетчика 6 разрядов числа (эта цепь на схеме не показана), в результате чего дешифратор 7 на своем втором выходе вырабатывает сигналы, последовательно оп= рашивающие состояние триггеров регистра 1 от первого до последнего информационного разряда.
Одновременно подается сигнал с первого выхода выходного коммутатора 10 на первый вход блока 11 сравнения, который при отсутствии сигналов на его втором и третьем входах (что определяется соответственно режимом выдачи информации и выдачей информационных разрядов) по каждой кодовой посылке "10" пропускает
732877
7 сигнал на свой выход, переключая триггер
2 в противоположное состояние, что, в свою очередь, определяет четность количества.единиц в переданном слове, После выдачи состояния триггеров всех информационных разрядов на счетчике количества разрядов устанавливается код
"0-00", при котором дешифратор 7 вырабатывает последний выдающий сигнал.
Этот сигнал опрашивает состояние тригге- 10 ра 2, который к этому моменту времени хранит информацию, полностью соответствующую четности количества единиц в переданном слове. Если число единиц в переданном слове четко, то триггер 2 находится в нулевом состоянии и в последней (контрольной) посылке в передаваемую линию связи 13 передается код 01".
Если число единиц в слове нечетно, то триггер 2 находится в единичном состоя- 20 нии и в контрольной посылке передается код 10 . При коде "0-00" на счетчике
6 разрядов числа дешифратор 7 вырабатывает сигнал также на свой первый выход, который, поступая на третий вход блока сравнения 11 (независимо от информации, поступающей на его первый вход с выхода выходного коммутатора 10, т.е, даже при считывании единичного состояния триггера 2), блокирует прохождение сигналов на счетный вход триггера 2, что сохраняет его состояние, а следовательно, и ре» зультат контроля до начала выдачи следующего слова.
При приеме слова в устройство в зави- З> симости от нулевого или единичного значения информации разряда, передаваемой в данной посылке, на вход входного дешифратора 3 из приемной линии 14 связи последовательно поступают кодовые посылки "01" или 10". Дешифратор 3 преобразует эти посылки в двоичный код. Причем, если на вход дешифратора 3 поступает код "10", то на его второй выход выдается сигнал, который далее поступает на третий вход входного коммутатора 9, ес-. ли же не посгупает код 01", то на выход дешифратора 3 сигнал не выдается.
Управление установкой принимаемой информации, также как и при выдаче информации, осуществляется дешифратором
7 номера разряда, который расшифровывает состояние счетчика 6, ведущего подсчет количества принятых разрядов числа.
Перед началом приема очередного слова регистр 1 и триггер 2 проверки на четность устанавливаются в 0", а на счетчике 6 количества разрядов числа
8 устанавливается код и+1", который на единицу превышает код, устанавливаемый на этом счетчике в режиме выдачи информации.
При приеме по каждому тактирующему сигналу, поступающему по шине 12: "Передача", дешифратор 7 в зависимости от состояния счетчика 6 вырабатывает на шины своего первого выхода сигналы, которые поразрядно поступают на первый вход входного коммутатора 9. Этот блок в соответствии с номером разряда числа разрешает прохождение сигнала со второго выхода входного дешифратора 3 на один из своих выходов. Если с выхода входного дешифратора 3 поступил сигнал, что соответствуетприемукода 10, то в момент тактирования со второго выхода входного коммутатора
9 на единичный вход регистра 1, соответствующий номеру разряда числа, подается сигнал, который переключает этот триггер в единичное состояние. Если же со второго выхода дешифратора 3 сигнал не выдается, что соответствует приему кода "01 то на выход входного коммутатора 9 сигнал также не выдается, в результате чего триггер регистра 1 в соответствующем разряде остается в нулевом состоянии.
Одновременно с управлением установкой принимаемой информации дешифратор
7 номера разряда числа вырабатывает сигналы по третьему выходу, что обеспечивает последовательное считывание на контроль состояния триггеров регистра 1, которое осуществляется непосредственно после установки на них принятого кода.
При этом возбуждение шин на втором выходе дешифратора 7, ввиду сдвига исходного кода на счетчике разрядов числа 6, происходит с отставанием на единицу относительно возбуждения шин на третьем выходе этого дешифратора. Так при коде
" И +1" на счетчике 6 на третьем выходе дешифратора 7 возбуждается первая шина, что обеспечивает соответствующую установку триггера первого разряда регистра
1, а на втором выходе дешифратора 7 вообще не возбуждается ни одна шина.
При коде "д" на счетчике 6 на третьем выходе дешифратора 7 возбуждается вторая шина, а на втором выходе первая, что соответственно обеспечивает прием информации во второй разряд регистра 1 и опрос состояния триггера первого разряда регистра 1, B которое он был установлен в предыдущем такте связи. Б случае единичного состояния триггера первого разряда в момент опроса на первый выход
10 прохождению сигнала на выход этого блока, сохраняя прежнее состояние триггера 2.
Если после просчета состояния триггера (tl-1 )-ro разряда триггера 2 находится в единичном состоянии, что свидетельствует о нечетном количестве единиц в (И -1)-ых разрядах, то код контрольной посылки должен быть неравнозначен состоянию триггера И -го разряда.
Если в И-ом разряде имеет место нулевое состояние, то в контрольной посылке должен поступить код 1», если в
l1-ом разряде имеет место единичное состояние, то в контрольной посылке должен поступить код 0, В этих случаях сигнал со входа блока 11 неравнозначности проходит на его выход и далее поступает на счетный вход триггера 2, переключая его в нулевое состояние.
После приема контрольной посылки на счетчике разрядов числа 6 устанавливается код 0-00, при котором вырабатывается сигнал коррекции возможной ошибки.
Если в процессе приема слова на входной дешифратор 3 из линии 14 связи поступает код»00 или "11, то на его первык выход выдается сигнал ошибки, который переписывает соответствующее номеру сбившегося разряда числа состояние счетчика 6 количества разрядов в регистр 8 хранения номера искаженного разряда и одновременно запоминается в счетчике 4 количества ошибок, при этом на второй выход входного дешифратора 3 сигнал не выдается.
При опросе дешифратора 7 (код "0-00") на счетчике 6 вырабатывается сигнал на его первый выход, откуда о«поступает на второй вход дешифратора 5 количества ошибок, опрашивая его состояние. Если в это время на первом входе дешифратора 5 с выхода счетчика 4 удерживается код 1", что соответствует обнаружению одиночной ошибки, и на второй вход с ед ничного выхода триггера 2 проверки на четность поступает открывающий потенциал, что соответствует нарушению четности количества единиц в принятом слове, То на выход дешифратора 5 с незначительной задержкой выдается сигнал, который поступает на первый вход дешифратора 7 номера разряда числа и на первый вход входного коммутатора 9, При этом дешифратор 7 расшифровывает состояние регистра 8 хранения номера искаженного разряда, возбуждая на своем втором выходе соответствующую шину, в результате чего выходной коммутатор 9 пропускает сиг(732877 выходного коммутатора 10 выдается сигнал, который блоком сравнения ll пропускается на счетный вход триггера 2, что обеспечивает контроль на четность принимаемой информации.
После приема. последнего (-го) информационного разряда на счетчике 6 количества разрядов устанавливается код
1», при этом в регистре 1 принимает код всех Yl информационных разрядов сло- (0 ва, а в триггер 2 контроля на четность передается состояние всех триггеров регистра 1, кроме последнего (-го). В последней (ii +1)»ой посылке в устройство поступает .код контрольного разряда переданного слова. Код "1", находящийся в этот момент на счетчике 6, возбуждает на третьем выходе дешифратора 7 (0+1)-ю шину, а на втором выходе — 8 -ую шину.
Входной коммутатор 9 разрешает прохож- 20 дение принимаемого сигнала на свой первый выход, откуда он далее поступает на второй вход блока 1 1 сравнения. Одновременное возбуждение И -ой шины на вто 25 ром выходе дешифратора 7 опрашивает выходной коммутатор 10, считывая на первый вход блока 11 сравнения состояние триггера последнего (И -ro) разряда регистра 1. При этом на счетный вход триг30 гера 2 блок 11 сравнения пропускает сигнал только в том случае, если принимаемый код контрольного разряда слова и состояние триггера последнего разряда регистра 1 неравнозначны, что не нарушает правильность механизма определения четности количества единиц в переданном слове.
Действительно, если после просчета состояния триггера (И -1)-ro разряда.
40 триггер 2 находится в нулевом состоянии, то это означает, что в (Н- 1)-ых разрядах числа было четное количество единиц. При этом, если триггер И-го разряда находится в нулевом состоянии, 45 то в последней (контрольной) посылке в устройство должен поступить код О». В этом случае ни на первый, ни на второй входы блока 11 сравнения сигналы не поступают соответственно триггер 2 осВ
50 тается в прежнем состоянии.
Если в Yl -ом разряде имеет место единица, то в (0+1)-ой (контрольной) посылке должен поступить код "1». При этом на первый и второй входы блока 11 сравнения одновременно поступают сигналы с первого выхода выходного коммутатора 10 и с первого выхода входного. коммутатора 9, что также препятствует
732877 пел со своего второго входа на единичный вход триггера сбившегося" разряда, Этот сигнал переключает триггер в единичное состояние, корректируя ошибку, возникшую при приеме. Если нарушения четности не зафиксированы или обнаружена более чем одноразовая ошибка, то работа дешифратора 5 количества ошибок полностью блокируется.
При коде 0-00 на счетчике 6 одног r
10 временно с выработкой сигнала на первый выход дешифратор 7 вырабатывает сигнал на свой второй выход, который опрашивает состояние триггера 2, однако переключение триггера 2 не происходит в виду того, что сигнал с первого выхода дешифратора 7, опрашиваюший дешифратор 5 количества ошибок, одновременно подается на вход блоке 11 сравнения, запрещая прохождение сигналов на его выход. Это ис- ключает сброс в."0 триггера 2, сохраняя в нем на момент коррекции информацию о нарушении четности.
Основным техническим преимушеством предлагаемого устройства является повышеннея достоверность преобразования параллельного кода в последовательный при выдаче информации и соответственно последовательного кода в параллельный при приеме информации. Повышение достоверности обеспечивается тем, что прием и выдача информации осуществляется без использования режима сдвига информации в резисторе, в результате чего из цепей регистре полностью исключены схемы переноса информации. Поэтому в предлагаемом устройстве триггеры регистра как при выдаче, так и при приеме информации работают в статическом режиме, т,е, процесс выдачи информации заключается в опросе состояния триггера, беэ каких-либо его переключений, прием информации состоит всего лишь в разовой установке триггера в единичное состояние, либо вообше в от- 4> сутствии какого-либо оперирования с ним (если передается "0")„ "Съем" состояния осушествляется непосредственно с триггера того разряда регистра, информация которого передается, Аналогично установка принятой информации осушествляется непосредственно на триггер соответствуюшего разряда регистра.
Повышение достоверности обеспечивается в устройстве также тем, что выдача на контроль передаваемой и принимаемой информации осушествляется тоже непосред" ственно с триггеров регистра, при этом отсутствие нарушения четности свидетельствует не только о неисправности передачи информации, но и о верности ее установки на триггерах регистра.
Важным преимушеством предлагаемого устройства является возможность глубокого диагностирования неисправности его элементов, которое обеспечивается тем, что отказы триггеров регистра или обрамляющего регистр оборудования не приводят к размножению ошибок, а вызывают всего лишь возникновение локализованной неперемещаюшейся неисправности, а также сохранение информации на передаюшем конце после выдачи слова, что позволяет оперативно повторить его выдачу в случаях, когда передача подвергается многократной ошибке.
Формула изобретения
Устройство для кодирования и декодирования последовательного кода с коррекцией одиночных ошибок, содержашее регистр, триггер проверки не четность, входной дешифратор, счетчик количества ошибок, дешифратор количества ошибок, счетчик разрядов числа, дешифратор номера разряда числа и регистр хранения номера искаженного разряда, причем первый выход входного дешифратора соединен со входом счетчике количества ошибок, выход которого соединен с первым входом дешифретора количества ошибок, выход счетчика разрядов числа соединен с первым входом регистра хранения номера искаженного разряда, входы входного дешифратора яитяются информационными входами устройстве, о т л и ч а ю ш е е с я . тем, что, с целью повышения достоверности, в устройство введены блок сравнения, входной и выходной коммутаторы, причем первый и второй выходы выходного коммутатора являются выходами устройства, первый выход выходного коммутатора соединен с первым входом блоке сравнения, выход которого соединен со счетным входом триггера проверки не четность, первый выход триггера проверки на четность соединен с первым входом выходного коммутатора и со вторым входом дешифратора количества ошибок, выход которого соединен с первыми входами входного коммутатора и дешифрвтора номера разряда числа, первый и второй выходы входного коммутатора соединены соответственно со вторым входом блока сравнения и с первым входом регистра, выход которого соединен с информационным входом выходного ком13 732877 14 мутатора, второй выход триггера провер- мутатора, выход регистра хранения номеки на четность соединен со вторым вхо- ра искаженного разряда соединен co ВТодом коммутатора, первый, второй и тре- рым входом дешифратора номера -разряда тий выходы дешифратора номера разряда числа, третий и четвертый входы которочисла соединены соответственно с третьим 5 го соединены соответственно с выходом входом дешифратора количества ошибок, счетчика разрядов числа и с управляющим со вторым входом входного коммутатора, входом устройства. с третьим входом выходного коммутатора, кроме того, первый выход дешифрато- Источники информации, ра номера разряда числа соединен с тре- 1О принятые во внимание при экспертизе тьим входом блока сравнения, первый и 1. Авторское свидетельство СССР второй выходы входного дешифратора сое- № 310249, 5 06 Р ll/00, 1971. динены соответственно со вторым входом 2. Авторское свидетельство СССР регистра хранения .номера искаженного № 365709, кл. Я 06 Р 11/12, 1973 разряда и с третьим входом входного ком- > {прототип).
ВЗ
Составитель И. Сигалов
Редактор Л, Веселовская Техред И.Асталош Корректор В. Бутяга
Заказ 1554/10 Тираж 751 Подписное
БНИИПИ Государственного комитета СССР по делам изобретений и открытий
113035, Москва, Ж-35, Раушская наб., д. 4/5.
Филиал ППП Патент", r. Ужгород, ул. Проектная, 4