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

 
 
3 страниц V  < 1 2 3 >  
Reply to this topicStart new topic
> Оптимальные способы модуляции и кодирования для коротких пакетов
Grumbler_2002
сообщение Oct 27 2012, 11:55
Сообщение #16


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

Группа: Свой
Сообщений: 154
Регистрация: 5-01-05
Из: г. Зеленоград
Пользователь №: 1 817



Цитата(Serg76 @ Oct 27 2012, 15:21) *
Я думал об этом, когда предлагал Вам сверточный турбокод. возьмите циркулярный сверточный код, тогда не будет никакого хвостовика, правда процедуру кодирования надо 2 раза проводить, но думаю это не будет проблемой. кроме того, можно поиграться с длиной кодового ограничения для нужной помехоустойчивости (в пределах разумного, конечно, потому как сложность декодирования растет по экспоненте в зависимости от длины кодового ограничения), ну и плюс к этому куча разных алгоритмов мягкого декодирования.


Кодирование два раза проводить не надо, только декодирование. Время кодирования даже уменьшится. Навскидку, сверточный код со скоростью 1/2 и кодовым ограничением 9 будет достаточно простым и мощным. Все простые сверточные турбо-коды будут хуже и потянут за собой и всё остальное.
Go to the top of the page
 
+Quote Post
Aner
сообщение Oct 27 2012, 12:07
Сообщение #17


Гуру
******

Группа: Свой
Сообщений: 4 869
Регистрация: 28-02-08
Из: СПБ
Пользователь №: 35 463



пакеты то размером 5-7 байт, и все, ...какое ещё сверточный код ?!
Go to the top of the page
 
+Quote Post
Serg76
сообщение Oct 27 2012, 12:17
Сообщение #18


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

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



Цитата(Grumbler_2002 @ Oct 27 2012, 14:55) *
Кодирование два раза проводить не надо, только декодирование. Время кодирования даже уменьшится. Навскидку, сверточный код со скоростью 1/2 и кодовым ограничением 9 будет достаточно простым и мощным. Все простые сверточные турбо-коды будут хуже и потянут за собой и всё остальное.

именно кодирование, сначала для вычисления состояния регистра кодера, а затем для получения проверочной части.

Цитата(Aner @ Oct 27 2012, 15:07) *
пакеты то размером 5-7 байт, и все, ...какое ещё сверточный код ?!

ну и что?
Go to the top of the page
 
+Quote Post
_Макс
сообщение Oct 27 2012, 12:52
Сообщение #19


Знающий
****

Группа: Участник
Сообщений: 691
Регистрация: 24-05-07
Пользователь №: 27 945



Цитата(Grumbler_2002 @ Oct 27 2012, 14:55) *
Кодирование два раза проводить не надо, только декодирование. Время кодирования даже уменьшится. Навскидку, сверточный код со скоростью 1/2 и кодовым ограничением 9 будет достаточно простым и мощным. Все простые сверточные турбо-коды будут хуже и потянут за собой и всё остальное.

Мне казалось по эффективности с турбо-кодами может сравнится только LDPC.

Цитата(Aner @ Oct 27 2012, 15:07) *
пакеты то размером 5-7 байт, и все, ...какое ещё сверточный код ?!

Значит после кодера будет 10-14, мне это устраивает.

Где-то видел софт в котором можно в виде блок схемы строить тракт и моделировать прием/передачу. Кажется таких программ существует множество. Что порекомендуете?
Go to the top of the page
 
+Quote Post
Serg76
сообщение Oct 27 2012, 12:56
Сообщение #20


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

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



Цитата(_Макс @ Oct 27 2012, 15:52) *
Мне казалось по эффективности с турбо-кодами может сравнится только LDPC.

для LDPC коротковато будет

Цитата(_Макс @ Oct 27 2012, 15:52) *
Где-то видел софт в котором можно в виде блок схемы строить тракт и моделировать прием/передачу. Кажется таких программ существует множество. Что порекомендуете?

Matlab, наверное sm.gif
Go to the top of the page
 
+Quote Post
_Макс
сообщение Oct 27 2012, 13:13
Сообщение #21


Знающий
****

Группа: Участник
Сообщений: 691
Регистрация: 24-05-07
Пользователь №: 27 945



Цитата(Aner @ Oct 27 2012, 14:05) *
... десятки километров при миливаттном передатчике в условиях NLOS. Что-то нереальное, ...

Голова для того, чтобы думать))
Go to the top of the page
 
+Quote Post
Serg76
сообщение Oct 27 2012, 13:43
Сообщение #22


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

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



Цитата(_Макс @ Oct 27 2012, 13:26) *
Насчет зависимости КПД передатчика от модуляции не знал.

Здесь скорее зависимость не от модуляции как таковой, а от выбора режима работы УМ передатчика. Для QPSK пригоден режим класса "А" или "АВ", в то время как для CPM видов можно использовать режим класса "С", который энергетически более предпочтителен, но и обладает, соответственно, большим уровнем нелинейных искажений, прежде всего по интермодуляции.
Go to the top of the page
 
+Quote Post
_Макс
сообщение Oct 27 2012, 14:49
Сообщение #23


Знающий
****

Группа: Участник
Сообщений: 691
Регистрация: 24-05-07
Пользователь №: 27 945



Цитата(Serg76 @ Oct 27 2012, 16:43) *
Для QPSK пригоден режим класса "А" или "АВ", в то время как для CPM видов можно использовать режим класса "С", который энергетически более предпочтителен, но и обладает, соответственно, большим уровнем нелинейных искажений, прежде всего по интермодуляции.

Я всеже склонен полагать, что великое множество усилителей для того же 802.11, например, работают в классе C. Привести вам даташиты в доказательство к сожалению не смогу т.к. класс обычно умалчивается производителем.
Go to the top of the page
 
+Quote Post
Serg76
сообщение Oct 27 2012, 14:58
Сообщение #24


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

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



Цитата(_Макс @ Oct 27 2012, 17:49) *
Я всеже склонен полагать, что великое множество усилителей для того же 802.11, например, работают в классе C. Привести вам даташиты в доказательство к сожалению не смогу т.к. класс обычно умалчивается производителем.

может быть, я не утверждаю. может дополнительно уровень НИ снижается за счет предыскажений или другими конструктивными/схемотехническими методами.
Go to the top of the page
 
+Quote Post
Aner
сообщение Oct 27 2012, 16:10
Сообщение #25


Гуру
******

Группа: Свой
Сообщений: 4 869
Регистрация: 28-02-08
Из: СПБ
Пользователь №: 35 463



QUOTE (_Макс @ Oct 27 2012, 16:13) *
Голова для того, чтобы думать))

Это вы ошибаетесь, глубоко! Голова для того чтобы ею есть.

Думаю, что полезно еще и знать, обладать современными знаниями, практикой, опытом, а не только думать.
Ряд законов природы, технологические возможности (на этом тех этапе развития) не перепрыгнешь.
А только загонишь себя в тупик разочарований, думательной головой.
Go to the top of the page
 
+Quote Post
AFK
сообщение Oct 27 2012, 20:40
Сообщение #26


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

Группа: Участник
Сообщений: 159
Регистрация: 4-12-08
Пользователь №: 42 200



Цитата(_Макс @ Oct 27 2012, 17:49) *
Я всеже склонен полагать, что великое множество усилителей для того же 802.11, например, работают в классе C

А как же E? crying.gif
Go to the top of the page
 
+Quote Post
Grumbler_2002
сообщение Oct 27 2012, 21:13
Сообщение #27


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

Группа: Свой
Сообщений: 154
Регистрация: 5-01-05
Из: г. Зеленоград
Пользователь №: 1 817



Цитата(Serg76 @ Oct 27 2012, 16:17) *
именно кодирование, сначала для вычисления состояния регистра кодера, а затем для получения проверочной части.


Вы что-то путаете. При кодировании первые К-1 бит образуют начальное состояние кодера. После кодирования бит с К-го по N-ый по текущему и начальному состоянию кодера выбираем из таблицы значение оставшихся К-1 бит. Кодируем этот остаток и получаем закольцованную решетку. Таким образом, время кодирования уменьшается на К-1 бит по сравнению с приведением кодера в фиксированное известное состояние.

При декодировании обычно первые L бит, где L - глубина декодирования, декодируются дважды, чтобы получить последние L бит информации, пользуясь закольцованностью решетки. Таким образом, длина пакета ограничивается снизу глубиной декодирования, которая зависит от относительной скорости кода и кодового ограничения. Для 1/2 и К<=9 это обычно 4-6К, то есть примерно от 36 бит для предложенного кода. Есть и другие ограничения, но, как мне кажется, проще промоделировать и определиться, задавшись целевыми потерями.
Go to the top of the page
 
+Quote Post
Serg76
сообщение Oct 27 2012, 22:10
Сообщение #28


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

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



Цитата(Grumbler_2002 @ Oct 28 2012, 00:13) *
Вы что-то путаете. При кодировании первые К-1 бит образуют начальное состояние кодера. После кодирования бит с К-го по N-ый по текущему и начальному состоянию кодера выбираем из таблицы значение оставшихся К-1 бит. Кодируем этот остаток и получаем закольцованную решетку. Таким образом, время кодирования уменьшается на К-1 бит по сравнению с приведением кодера в фиксированное известное состояние.

При декодировании обычно первые L бит, где L - глубина декодирования, декодируются дважды, чтобы получить последние L бит информации, пользуясь закольцованностью решетки. Таким образом, длина пакета ограничивается снизу глубиной декодирования, которая зависит от относительной скорости кода и кодового ограничения. Для 1/2 и К<=9 это обычно 4-6К, то есть примерно от 36 бит для предложенного кода. Есть и другие ограничения, но, как мне кажется, проще промоделировать и определиться, задавшись целевыми потерями.

да ничего я не путаю. напоминаю, что передача пакетная. для циркулярных сверточных кодов начальное и конечное состояния кодера совпадают, необходимо просто вычислить это правильное начальное состояние. это и делается в первом проходе кодирования при нулевом состоянии кодера и таблички, про которую Вы говорили. Теперь зная правильное начальное состояние, кодируем исходный пакет и получаем проверочную часть. В DVB-RCS делается так.
Go to the top of the page
 
+Quote Post
Grumbler_2002
сообщение Oct 27 2012, 23:06
Сообщение #29


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

Группа: Свой
Сообщений: 154
Регистрация: 5-01-05
Из: г. Зеленоград
Пользователь №: 1 817



Цитата(Serg76 @ Oct 28 2012, 02:10) *
да ничего я не путаю. напоминаю, что передача пакетная. для циркулярных сверточных кодов начальное и конечное состояния кодера совпадают, необходимо просто вычислить это правильное начальное состояние. это и делается в первом проходе кодирования при нулевом состоянии кодера и таблички, про которую Вы говорили. Теперь зная правильное начальное состояние, кодируем исходный пакет и получаем проверочную часть. В DVB-RCS делается так.


Там же сверточный турбо-код, нет? Для него ситуация несколько сложнее, но и всё равно не требуется двух проходов, а только несколько больше полутора. Как кодируется обычный сверточный код за один проход - я написал. Подкину Вам материальчик, чтобы было понятнее.
Прикрепленные файлы
Прикрепленный файл  TurboTB_Ref4.pdf ( 88.32 килобайт ) Кол-во скачиваний: 733
 
Go to the top of the page
 
+Quote Post
Serg76
сообщение Oct 28 2012, 07:47
Сообщение #30


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

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



Цитата(Grumbler_2002 @ Oct 28 2012, 02:06) *
Там же сверточный турбо-код, нет? Для него ситуация несколько сложнее, но и всё равно не требуется двух проходов, а только несколько больше полутора. Как кодируется обычный сверточный код за один проход - я написал. Подкину Вам материальчик, чтобы было понятнее.

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

Прикрепленный файл  en_301790v010501p.pdf ( 1.46 мегабайт ) Кол-во скачиваний: 918


P.S. за доку спасибо, эта статья у меня есть.

Сообщение отредактировал Serg76 - Oct 28 2012, 07:49
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 20th July 2025 - 19:40
Рейтинг@Mail.ru


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