Функциональное диагностирование дискретных систем, страница 11

          Код с суммированием относится к классу разделимых кодов с обнаружением ошибок. В словах кода можно выделить информационную (  разрядов) и контрольную ( разрядов) части. Другие названия кода: код Бергера, -код (). Число слов кода равно . Множество информационных слов кода образуют все возможные -разрядные двоичные векторы. Контрольная часть кодового слова определяется следующим образом. Подсчитывается число единичных разрядов в информационном векторе кодового слова. Это число представляется в двоичном виде (вспомогательное слово). Контрольное слово образуется из вспомогательного слова путем замены в нем единичных разрядов на нулевые и наоборот. В табл. 6.10 представлен пример построения 5S3-кода. Число контрольных разрядов рассчитывается по формуле

.                              (6.7)

                                                                                          Т а б л и ц а   6.10

Информационные разряды

Вспомогательные разряды

Контрольные разряды

  

 

 

0   0   0

0   0

1   1

0   0   1

0   1

1   0

0   1   0

0   1

1   0

0   1   1

1   0

0   1

1   0   0

0   1

1   0

1   0   1

1   0

0   1

1   1   0

1   0

0   1

1   1   1

1   1

0   0

          В информационном векторе обнаруживаются однонаправленные ошибки любой кратности, так как при этом изменяется число единиц в кодовом векторе. Например, в следующем случае

                                          

                              1   0   0          1   0       – правильный вектор

                                   ¯  ¯

                              1   1   1          1  0       – искаженный вектор

имеет место несоответствие числа единиц в информационной части слова числу, записанному в контрольной части.

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

                                          

                              1   0   0         1   0       – правильный вектор

                              ¯  ¯

                              0   1   0         1   0       – искаженный вектор

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

          Например,

             

 1   0   0         1   0       – правильный вектор

                                                     ¯  ¯

                                1   0   0         0   1      – искаженный вектор

          В схеме контроля по коду с суммированием (см. рис. 6.4) дополнительный блок g(x) вычисляет функции  с таким расчетом, чтобы при подаче на вход схемы любого рабочего вектора  на  выходах  блоков   и  формировались слова -кода (). При этом на выходах основного блока  реализуются информационные разряды, а на выходах дополнительного блока – контрольные разряды кода. В качестве компаратора используется самопроверяемый тестер -СПТ.

          Рассмотрим схему, заданную системой функций (6.1). На рис. 6.29 приведена полная схема контроля.

Рис.6.29. Пример схемы контроля по коду с суммированием

Так как  = 3, то в соответствии с (6.7)  = 2. Дополнительный блок  реализует два контрольных разряда 5S3-кода  и , которые заданы в табл. 6.11 в соответствии с правилом построения кода с суммированием. Из табл. 6.11 следует, что  и  . Выходы основного и дополнительного блоков соединяются со входами 5S3-СПТ.

Т а б л и ц а   6.11

  

  

 

0   0   0

1   0   0

1   0

0   0   1

0   1   0

1   0

0   1   0

0   0   1

1   0

0   1   1

0   0   0

1   1

1   0   0

1   1   0

0   1

1   0   1

0   1   1

0   1

1   1   0

1   0   0

1   0

1   1   1

1   0   0

1   0