реклама на сайте
подробности

 
 
> Обнаружение в канале связи битовых ошибок, нужна идея для реализации
Костян
сообщение Jul 19 2012, 11:40
Сообщение #1


Знающий
****

Группа: Свой
Сообщений: 740
Регистрация: 24-07-06
Из: Minsk
Пользователь №: 19 059



Итак дано:

Канал связи между двумя устройствами, в котором допускаются единичные битовые ошибки (1..2 бита на пакет длинной 128 бит). Канал является высокоскоростной последовательной шиной со скоростями передачи ~3ГБит/с. Данные передаются пакетами по 64 байта.

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

Выход кажется простым - применить код Хэмминга, который обнаруживает 2 бита ошибки. Но для последовательной передачи данных применяется кодер 8b/10b, для которого изменения одного бита информации приводит к изменению целого байта.

Есть ли решение, для защиты от единичных битовых ошибок в данном случае ?
Эскизы прикрепленных изображений
Прикрепленное изображение
 
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
i-mir
сообщение Jul 23 2012, 16:03
Сообщение #2


Частый гость
**

Группа: Свой
Сообщений: 197
Регистрация: 17-06-10
Из: Киев
Пользователь №: 57 986



Я бы взглянул на вашу задачу со стороны физики.

Вопрос - кто является генератором ошибок при
передаче данных, учитывая что 1 ошибка на 128 бит
это достаточно много. Обычно на порядки меньше.

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

Если так, то лучше банально контролировать четность
каждого байта. Можно также рассчитать вероятность
появления двух ошибок в одном байте - она будет малой.

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



Go to the top of the page
 
+Quote Post
Костян
сообщение Jul 24 2012, 07:22
Сообщение #3


Знающий
****

Группа: Свой
Сообщений: 740
Регистрация: 24-07-06
Из: Minsk
Пользователь №: 19 059



QUOTE (i-mir @ Jul 23 2012, 14:03) *
Я подозреваю, что проблема в аппаратной части
работающей на пределе возможностей, т.е. вероятность
срыва фронтов достаточно велика.

верно, второй источник ошибок - импульсные помехи

QUOTE
Если так, то лучше банально контролировать четность
каждого байта. Можно также рассчитать вероятность
появления двух ошибок в одном байте - она будет малой.

в данном случае не пройдет. так как 1 бит ошибки в закодированном при помощи 8b/10b превращается в целый байт ошибки, в этом то и вся проблема, что в канале передачи не чистая информация, а пройденная через кодер 8b/10b и я не могу подсчитать четность в каждом слове.

QUOTE
эффективность побайтного контроля в вашем случае может быть плюсом.

решение прежние - ловить пачку ошибок длинной 2 байта.

Хитрость со структорой 8b/10b не пройдет, в патенте есть связь кодера 3b/4b на всю схему 8b/10b :-(
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 22nd August 2025 - 03:18
Рейтинг@Mail.ru


Страница сгенерированна за 0.01798 секунд с 7
ELECTRONIX ©2004-2016