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

 
 
> закодировать байт, чтобы исправлялось две ошибки
totor
сообщение Jun 9 2008, 13:39
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 22
Регистрация: 21-04-08
Пользователь №: 36 977



Надо построить АППАРАТНО (на элементах логики и регистрах) кодер-декодер для байта, исправляющий две ошибки.
Предположительно, можно использовать код Рида-Соломона (12(?),8) или БЧХ. Сверточные коды не подходят.

Нашел много теории, в том числе и "Информация, восставшая из пепла" Криса Касперски, и кучу иностранных статей. но при попытке вывести из этих математических абстракций схему кодера с паралельными входом и выходом ничего не выходит crying.gif
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
totor
сообщение Jun 10 2008, 12:05
Сообщение #2


Участник
*

Группа: Участник
Сообщений: 22
Регистрация: 21-04-08
Пользователь №: 36 977



07.gif

а иметь такое ПЗУ для декодирования синдрома - это вообще обязательно?
Go to the top of the page
 
+Quote Post
MrYuran
сообщение Jun 10 2008, 12:32
Сообщение #3


Беспросветный оптимист
******

Группа: Свой
Сообщений: 4 640
Регистрация: 26-12-07
Из: Н.Новгород
Пользователь №: 33 646



Цитата(totor @ Jun 10 2008, 15:05) *
а иметь такое ПЗУ для декодирования синдрома - это вообще обязательно?

Я сделал очень просто.
Написал на ТурбоПаскале 7.0 программку, которая перебирала все возможные вектора ошибок с количеством ошибок <=3, вычисляла для каждого вектора синдром и формировала файл прошивки ПЗУ.
То есть в моём случае все вычисления производились за несколько секунд на нормальном компе на этапе проектирования.
Если без ПЗУ, то придётся выполнять все вычисления в реалтайме, и вряд ли это реализуемо на логике и регистрах (если конечно из этой логики и регистров не собрать простенький процессор smile.gif )
Но при скоростях порядка мегабит/с простенького процессора может не хватить.

Наверняка ещё есть "железные" кодеры/декодеры, например, CRC или того же Рида-Соломона, т.к. технология восстановления данных очень широко используется в разнообразных винчестерах/CD-ромах


--------------------
Программирование делится на системное и бессистемное. ©Моё :)
— а для кого-то БГ — это Bill Gilbert =)
Go to the top of the page
 
+Quote Post
totor
сообщение Jun 10 2008, 12:53
Сообщение #4


Участник
*

Группа: Участник
Сообщений: 22
Регистрация: 21-04-08
Пользователь №: 36 977



именно железные меня и интересуют. но в CD-ромах, думаю, это на микроконтроллере делается.sad.gif

вот один из самых толковых источников по теме(третья часть статьи):
http://www.av5.com/journals-magazines-online/1/35/308
но тут, как и везде, кодер с последовательным выходом. а я над параллельным колдую - 8входов,12-14выходов.
Go to the top of the page
 
+Quote Post



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

 


RSS Текстовая версия Сейчас: 31st July 2025 - 08:22
Рейтинг@Mail.ru


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