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

 
 
2 страниц V   1 2 >  
Reply to this topicStart new topic
> корректирующие коды, FEC 10-4 -> 10-8
_4afc_
сообщение Sep 9 2011, 13:25
Сообщение #1


Профессионал
*****

Группа: Свой
Сообщений: 1 262
Регистрация: 13-10-05
Из: Санкт-Петербург
Пользователь №: 9 565



Есть канал, в нём возникают ошибки с вероятностью 10-4.
Стоял у меня на нём рид-соломон, который исправлял одну ошибку из 255 байт.
Данные шли, ошибки не мешали и всё было хорошо.

И вдруг мне говорят - сделай в новой версии 10-8.

Вот я и задумался, а для того чтоб сделать FEC 10-4 -> 10-8 это сколько ошибок надо исправлять и на какой длине?

Что, если я возьму того же соломона, и укорочу с 2040бит (255 байт) до 960бит (120байт) - то ошибок типа вообще не будет?

Насколько сильно надо извернуться, чтоб получить 10-8?

Go to the top of the page
 
+Quote Post
SKov
сообщение Sep 9 2011, 15:25
Сообщение #2


Знающий
****

Группа: Свой
Сообщений: 812
Регистрация: 22-01-05
Из: SPb
Пользователь №: 2 119



Цитата(_4afc_ @ Sep 9 2011, 17:25) *
Есть канал, в нём возникают ошибки с вероятностью 10-4.
Стоял у меня на нём рид-соломон, который исправлял одну ошибку из 255 байт.
Данные шли, ошибки не мешали и всё было хорошо.

И вдруг мне говорят - сделай в новой версии 10-8.

Вот я и задумался, а для того чтоб сделать FEC 10-4 -> 10-8 это сколько ошибок надо исправлять и на какой длине?

Что, если я возьму того же соломона, и укорочу с 2040бит (255 байт) до 960бит (120байт) - то ошибок типа вообще не будет?

Насколько сильно надо извернуться, чтоб получить 10-8?

Я немножко не понял, какие это вероятности. Предположим, что 10-4 это вероятность ошибки в двоичном символе кода с длиной 8*255.
Тогда исправление одной ошибки обеспечивает аж 1.8 E-2 на выходе декодера (это вероятность ошибки на блок).
Чтобы в тех же условиях получить на выходе декодера вероятность ошибки на блок 2.4E-9, надо исправлять 6 любых двоичных ошибок.
А при чем тут байтовый Рид-Соломон?
Go to the top of the page
 
+Quote Post
Serg76
сообщение Sep 9 2011, 17:33
Сообщение #3


Профессионал
*****

Группа: Участник
Сообщений: 1 050
Регистрация: 4-04-07
Пользователь №: 26 775



Цитата(_4afc_ @ Sep 9 2011, 16:25) *
Насколько сильно надо извернуться, чтоб получить 10-8?

Чудес, как говорится, не бывает. Либо увеличиваем избыточность, либо поднимаем энергетику в канале. Кстати, что за канал?
Go to the top of the page
 
+Quote Post
_4afc_
сообщение Sep 12 2011, 08:38
Сообщение #4


Профессионал
*****

Группа: Свой
Сообщений: 1 262
Регистрация: 13-10-05
Из: Санкт-Петербург
Пользователь №: 9 565



Цитата(SKov @ Sep 9 2011, 19:25) *
Я немножко не понял, какие это вероятности. Предположим, что 10-4 это вероятность ошибки в двоичном символе кода с длиной 8*255.
Тогда исправление одной ошибки обеспечивает аж 1.8 E-2 на выходе декодера (это вероятность ошибки на блок).


Я тоже немножко не понял: 0.0001 превратилось у вас в блоке в 0.018? Т.е. исправив одну ошибку сделали канал в 180 раз хуже?
Как вы это рассчитали?

Вероятности у меня простые - гонится поток бит. В среднем, каждый 10000 бит - ошибочный (в худшем случае, да и то, давно мерили).
На заре разработки - поставил Рида-Соломона, ошибки пропали - все исправлялись.

Теперь мне говорят - в новой разработке обеспечить вероятность 1E-8.
Чешу репу как перевести вероятность ошибки в количество исправляемых ошибок в блоке sm.gif

Цитата(SKov @ Sep 9 2011, 19:25) *
Чтобы в тех же условиях получить на выходе декодера вероятность ошибки на блок 2.4E-9, надо исправлять 6 любых двоичных ошибок.
А при чем тут байтовый Рид-Соломон?


Шесть ошибок в блоке 8*255 бит? Не скажите как это рассчитывалось?
А если блок будет 8*40 бит - что, достаточно исправлять одну?

Рид-Соломон при том, что есть работающая его реализация sm.gif
Т.е. он написан, работает и действительно исправляет единичные ошибки.
По началу вводили даже глубокое перемежение - но оно оказалось избыточным на тот момент.

Сейчас стоит задача - понять, что допустим 1E-8="6 любых двоичных ошибок"=FEC "такой-то" или лучше sm.gif


Цитата(Serg76 @ Sep 9 2011, 21:33) *
Чудес, как говорится, не бывает. Либо увеличиваем избыточность, либо поднимаем энергетику в канале. Кстати, что за канал?


Да без разницы сейчас какой канал. На выходе модема должно быть 10-8.
Я хочу в данный момент просто оценить вычислительную сложность гоняя данные через Матлаб или Си, чтобы понять -
сколько МИПСов мне надо и какими блоками кидать данные чтоб получить 10-8, и из чего я смогу его получить.

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

Сейчас бы оценить, без паяльника.
Go to the top of the page
 
+Quote Post
Serg76
сообщение Sep 12 2011, 10:46
Сообщение #5


Профессионал
*****

Группа: Участник
Сообщений: 1 050
Регистрация: 4-04-07
Пользователь №: 26 775



Цитата(_4afc_ @ Sep 12 2011, 11:38) *
Да без разницы сейчас какой канал. На выходе модема должно быть 10-8.
Я хочу в данный момент просто оценить вычислительную сложность гоняя данные через Матлаб или Си, чтобы понять -
сколько МИПСов мне надо и какими блоками кидать данные чтоб получить 10-8, и из чего я смогу его получить.

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

Сейчас бы оценить, без паяльника.

Тогда экспериментируйте с избыточностью (длиной блока). про канал спросил из чистого любопытства, т.к. разработка
приемного тракта начинается именно с анализа канала передачи, а в вашем случае похоже вы зря сделали выбор в пользу РС.
Go to the top of the page
 
+Quote Post
SKov
сообщение Sep 12 2011, 11:41
Сообщение #6


Знающий
****

Группа: Свой
Сообщений: 812
Регистрация: 22-01-05
Из: SPb
Пользователь №: 2 119



Цитата(_4afc_ @ Sep 12 2011, 12:38) *
Я тоже немножко не понял: 0.0001 превратилось у вас в блоке в 0.018? Т.е. исправив одну ошибку сделали канал в 180 раз хуже?
Как вы это рассчитали?


Вероятность 0.018 это вероятность того, что в блоке длиной 256*8 бит
появится больше одной ошибки при условии, что вероятность ошибки в бите = 1e-4.
Считается по биномиальной формуле.

Цитата
Вероятности у меня простые - гонится поток бит. В среднем, каждый 10000 бит - ошибочный (в худшем случае, да и то, давно мерили).
На заре разработки - поставил Рида-Соломона, ошибки пропали - все исправлялись.

Значит реально вероятность была меньше 1e-4.

Цитата
Шесть ошибок в блоке 8*255 бит? Не скажите как это рассчитывалось?
А если блок будет 8*40 бит - что, достаточно исправлять одну?

По биномиальной формуле.
для 8*40 бит вероятность, что на них ляжет больше одной ошибки = 5e-4;
Go to the top of the page
 
+Quote Post
brig01
сообщение Sep 15 2011, 05:13
Сообщение #7


Участник
*

Группа: Участник
Сообщений: 38
Регистрация: 7-05-10
Пользователь №: 57 120



Если задержка в декодере не принципиальны можно добавить "перемежение", если используются QAM-мы то можно посмотреть есть или нет кодирование Грея, ну если
принципиально решить эту проблему то можно перейти на "современные" коды (LDPC,Турбокоды). Ну или увеличить избыточность и будет счастье.


--------------------
Ох не лёгкая это работа попасть в группу "свой"....
Go to the top of the page
 
+Quote Post
Serg76
сообщение Sep 15 2011, 17:02
Сообщение #8


Профессионал
*****

Группа: Участник
Сообщений: 1 050
Регистрация: 4-04-07
Пользователь №: 26 775



Цитата(brig01 @ Sep 15 2011, 08:13) *
если используются QAM-мы то можно посмотреть есть или нет кодирование Грея


И что? много вы знаете систем, где не используется манипуляционный код Грея, или ему подобных (модифицированных)? Наверное, ни одной. К тотму же Грей применяется не только в КАМ-ах.


Цитата(brig01 @ Sep 15 2011, 08:13) *
ну если принципиально решить эту проблему то можно перейти на "современные" коды (LDPC,Турбокоды). Ну или увеличить избыточность и будет счастье.


Вряд ли здесь понадобятся такие мощные коды. Наверное, достаточно будет ограничиться БЧХ.
Go to the top of the page
 
+Quote Post
Serg76
сообщение Sep 15 2011, 19:17
Сообщение #9


Профессионал
*****

Группа: Участник
Сообщений: 1 050
Регистрация: 4-04-07
Пользователь №: 26 775



Цитата(brig01 @ Sep 15 2011, 08:13) *
Если задержка в декодере не принципиальны можно добавить "перемежение"

Каким образом в данном конкретном случае вы собираетесь уменьшить вероятность битовой ошибки с помощью перемежения?
Go to the top of the page
 
+Quote Post
SKov
сообщение Sep 15 2011, 20:39
Сообщение #10


Знающий
****

Группа: Свой
Сообщений: 812
Регистрация: 22-01-05
Из: SPb
Пользователь №: 2 119



Цитата(Serg76 @ Sep 15 2011, 21:02) *
Вряд ли здесь понадобятся такие мощные коды. Наверное, достаточно будет ограничиться БЧХ.

Для канала с жестким выходом БЧХ предпочтительнее.
LDPC хорошо работают, если есть непрерывный выход.
Go to the top of the page
 
+Quote Post
Serg76
сообщение Sep 16 2011, 05:18
Сообщение #11


Профессионал
*****

Группа: Участник
Сообщений: 1 050
Регистрация: 4-04-07
Пользователь №: 26 775



Цитата(SKov @ Sep 15 2011, 23:39) *
Для канала с жестким выходом БЧХ предпочтительнее.
LDPC хорошо работают, если есть непрерывный выход.

Это понятно, хотя и тот и другой можно обрабатывать
как мягкими, так и жесткими алгоритмами декодирования.
Мягкие дают в среднем 2 дБ энергетического выигрыша.
Go to the top of the page
 
+Quote Post
brig01
сообщение Sep 16 2011, 11:17
Сообщение #12


Участник
*

Группа: Участник
Сообщений: 38
Регистрация: 7-05-10
Пользователь №: 57 120



Цитата(Serg76 @ Sep 16 2011, 00:02) *
И что? много вы знаете систем, где не используется манипуляционный код Грея, или ему подобных (модифицированных)? Наверное, ни одной. К тотму же Грей применяется не только в КАМ-ах.




Вряд ли здесь понадобятся такие мощные коды. Наверное, достаточно будет ограничиться БЧХ.


Эх... больная тема, знаю даже серийно выпускаемое оборудование где НЕ используется код Грея, более того знаю даже инженеров которые ещё год назад говорили а н.хер оно нам надо wacko.gif

Если есть возможность организовать мягкое решение, почему бы и не сделать, децибелы карман не тянут rolleyes.gif ?

Цитата(Serg76 @ Sep 16 2011, 02:17) *
Каким образом в данном конкретном случае вы собираетесь уменьшить вероятность битовой ошибки с помощью перемежения?


Если ошибка в РК групповая, что помешает?


--------------------
Ох не лёгкая это работа попасть в группу "свой"....
Go to the top of the page
 
+Quote Post
Serg76
сообщение Sep 16 2011, 16:52
Сообщение #13


Профессионал
*****

Группа: Участник
Сообщений: 1 050
Регистрация: 4-04-07
Пользователь №: 26 775



Цитата(brig01 @ Sep 16 2011, 14:17) *
Эх... больная тема, знаю даже серийно выпускаемое оборудование где НЕ используется код Грея, более того знаю даже инженеров которые ещё год назад говорили а н.хер оно нам надо wacko.gif


Описание оборудования приведите. Фамилии этих инженеров озвучивать не надо.

Цитата(brig01 @ Sep 16 2011, 14:17) *
Если ошибка в РК групповая, что помешает?


Еще раз смотрим постановку задачи, где четко сказано, что канал характеризуется вероятностью появления ошибки 1е-4. канал скорее всего близок к АБГШ. А теперь прикиньте вероятность появления сдвоенной ошибки в таком канале. Примерно 1е-8. Так нужен в этом канале перемежитель или нет?
Go to the top of the page
 
+Quote Post
brig01
сообщение Sep 17 2011, 06:05
Сообщение #14


Участник
*

Группа: Участник
Сообщений: 38
Регистрация: 7-05-10
Пользователь №: 57 120



Цитата(Serg76 @ Sep 16 2011, 23:52) *
Описание оборудования приведите. Фамилии этих инженеров озвучивать не надо.



Еще раз смотрим постановку задачи, где четко сказано, что канал характеризуется вероятностью появления ошибки 1е-4. канал скорее всего близок к АБГШ. А теперь прикиньте вероятность появления сдвоенной ошибки в таком канале. Примерно 1е-8. Так нужен в этом канале перемежитель или нет?



Описание оборудования приводить не буду, т.к. коммерческая тайна, инженеров сдавать тем более не буду обидятся.

Ещё раз перечитал топик автора темы ни где не увидел слово AWGN(АБГШ). Постановка задачи была как "Есть канал, в нём возникают ошибки с вероятностью 10-4."

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





--------------------
Ох не лёгкая это работа попасть в группу "свой"....
Go to the top of the page
 
+Quote Post
Serg76
сообщение Sep 17 2011, 06:36
Сообщение #15


Профессионал
*****

Группа: Участник
Сообщений: 1 050
Регистрация: 4-04-07
Пользователь №: 26 775



Цитата(brig01 @ Sep 17 2011, 09:05) *
Описание оборудования приводить не буду, т.к. коммерческая тайна, инженеров сдавать тем более не буду обидятся.

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

Цитата(brig01 @ Sep 17 2011, 09:05) *
Ещё раз перечитал топик автора темы ни где не увидел слово AWGN(АБГШ). Постановка задачи была как "Есть канал, в нём возникают ошибки с вероятностью 10-4."

про АБГШ это мое предположение. можно рассмотреть и другой канал, в котором ошибки будут носить ПРЕИМУЩЕСТВЕННО одиночный характер. у автора топика ведь канал такого рода.

Цитата(brig01 @ Sep 17 2011, 09:05) *
Встречный вопрос вы железе на реальных трассах, подчёркиваю НЕ в симуляторе, видели чтобы ошибки были только одиночные? Я не видел.


КОНЕЧНО, обыкновенный спутниковый канал. Вся проблема будет состоять в том, какими вероятностными характеристиками будет обладать этот канал. Если там будет Eb/No = 20 дБ, то там вообще никаких ошибок не будет. Если взять Eb/No = 10 дБ, то там вероятность появления одиночной ошибки будет примерно 1е-6, а появление сдвоенной ошибки вообще маловероятно. И при чем здесь реализация: железо или софт? самое главное правильно реализованный алгоритм обработки, а на чем обрабатывать сигнал абсолютно не важно, если конечно вопрос не касается достаточно больших скоростей.

В общем еще раз говорю НЕ НУЖЕН в данном случае, т.е. конкретно в данной задаче, никакой перемежитель. об этом даже сам автор говорит. Придется, наверное, менять схему кодирования. Я бы посмотрел в сторону БЧХ.
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 15th June 2025 - 16:12
Рейтинг@Mail.ru


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