Блочный перемежитель

Простейшие вопросы в области инженерной разработки

Блочный перемежитель

Postby ortah on 14 Apr 2018, 19:16

Здравствуйте, уважаемые товарищи!
Вот пытаюсь сделать блочный перемежитель. Суть его работы заключается в произвольном перемешивании бит информационного сигнала, с целью устранения идущих подряд нулей или единиц, что уменьшит количество ошибок в случае воздействия помехи. Вот результат моей работы. Проблема в том, что на выходе количество подряд идущих одинаковых символов только увеличилось. Подскажите пожалуйста, как мне это исправить?
Заранее спасибо за советы!
Attachments
Снимок.PNG
Снимок2.PNG
ortah
beginner
beginner
 
Posts: 10
Joined: 25 Sep 2017, 20:35
LabVIEW Version: 13
Karma: 0

Re: Блочный перемежитель

Postby IvanLis on 14 Apr 2018, 22:20

ortah wrote:Здравствуйте, уважаемые товарищи!
Вот пытаюсь сделать блочный перемежитель. Суть его работы заключается в произвольном перемешивании бит информационного сигнала, с целью устранения идущих подряд нулей или единиц, что уменьшит количество ошибок в случае воздействия помехи. Вот результат моей работы. Проблема в том, что на выходе количество подряд идущих одинаковых символов только увеличилось. Подскажите пожалуйста, как мне это исправить?
Заранее спасибо за советы!


У Вас путаются понятия "скремблирование" и "перемежение", а соответственно цели использования и ожидаемый результат.

Скремблирование делается с целью выравнивания вероятностей появления "0" и "1", но это не значит, что они будут идти строго по порядку (получится меандр). Это позволяет решить ряд проблем, в том числе с рассинхронизацией и потерей энергетики при появлении постоянной составляющей.
Одно из условий скремблирования - без изменения скорости, а реализуется путем наложения ПСП.

Перемежение делается для борьбы с пакетизированными (сгруппированными) ошибками и используются совместно с помехоустойчивым кодированием (иначе смысл теряется).
Например в пакете 16bit в результате помехи были искажены 16bit, тут уже любые помехоустойчивые коды бессильны, но если раскидать эти ошибки равномерно по 16 пакетам (по одной на пакет), то ошибка будет гарантированно исправлена при декодировании.
Делается перемежение тоже без изменения скорости, но реализуется путем организации буфера, например 16*16. В него построчно загоняются 256bit, но а считываются столбцами. На приемном конце выполняется обратная операция.
При этом соотношение и положение "0" и "1" вообще не рассматривается.

Так что из всего, что сейчас сделано в программе мало что пригодится. Переделывайте все заново.
Если Вы замахиваетесь на цифру, то используйте и генератор соответствующий: Digital Pattern Generator (http://zone.ni.com/reference/en-XX/help ... l_pattern/).
Рассмотрение спектра сигнала тут тоже не уместно, по крайней мере в представленной форме.
User avatar
IvanLis
professor
professor
 
Posts: 4521
Joined: 02 Dec 2009, 17:44
Location: СССР
Medals: 7
Activity (2) Professionalism (1) Tutorials (1) Gold (1) Man of the year 2012 (1)
Автор (1)
LabVIEW Version: 2010
Karma: 713
hardware VIP bloggers teachers

Re: Блочный перемежитель

Postby ortah on 15 Apr 2018, 14:34

IvanLis
Спасибо, теперь стало понятно. Вот попробовал сделать по другому через инструмент MT Block Interleave. В принципе с использованием массивов все получилось. Подскажите пожалуйста, нельзя ли просто преобразовать массивы в цифру? Или нужно переделать с нуля?
Attachments
Снимок3.PNG
Снимок4.PNG
ortah
beginner
beginner
 
Posts: 10
Joined: 25 Sep 2017, 20:35
LabVIEW Version: 13
Karma: 0

Re: Блочный перемежитель

Postby IvanLis on 15 Apr 2018, 17:44

ortah wrote:Подскажите пожалуйста, нельзя ли просто преобразовать массивы в цифру? Или нужно переделать с нуля?

Просто, непросто...
Можно так:
Снимок экрана от 2018-04-15 17-43-22.png
User avatar
IvanLis
professor
professor
 
Posts: 4521
Joined: 02 Dec 2009, 17:44
Location: СССР
Medals: 7
Activity (2) Professionalism (1) Tutorials (1) Gold (1) Man of the year 2012 (1)
Автор (1)
LabVIEW Version: 2010
Karma: 713
hardware VIP bloggers teachers


Return to Для чайников

Who is online

Users browsing this forum: Google and 8 guests

cron