Wander
Материал из b4wiki
В погоне за Вандером
Содержание |
Введение
Вандер — достаточно хитрый зверь, который водится в цифровых сигналах.
Являясь родственником джитеру, отличается от него медлительностью и бо'льшими размерами. В течении жизни вандера, размер его постоянно меняется, но не чаще 10 раз в секунду. А потому, он способен преодолевать ловушки и преграды …
Теперь более серьезно. По изучению предмета, выделяются следующие источники, достаточно популярно и с картинками, описывающими явление периодического отклонения фазы сигнала
Дать более удачное определение, чем в 3 практически невозможно, посему позволим себе процитировать
«Термины “джиттер” (jitter – дрожание) и “вандер” (wander – странствие) в общем случае отражают нежелательные нарушения временной периодичности некоторых событий. На системном уровне в качестве таких событий обычно рассматриваются моменты прибытия информационных пакетов в узел назначения ... эти термины используются на самом низком, физическом уровне и отражают фазовые помехи, которые приводят к сравнительно быстрым или медленным колебаниям фронтов импульсов в линии связи относительно их идеальных положений. Частотная граница между джиттером и вандером (граничная частота между быстрым и медленным дрожанием фронтов импульсов) обычно принимается равной 10 Гц»
Еще можно добавить, что в отечественной технической литературе джиттеру соответствует термин "фазовое дрожание", а вандеру "дрейф фазы" тактовой частоты.
Появление вандера
Разделяют кодонезависимый и кодозависимый джиттер (вандер)
Кодонезависимый джиттер (вандер) не связан с характером передаваемых данных и может быть обусловлен многими факторами, среди которых:
- наводки от низкочастотного магнитного поля, генерируемого близлежащими кабелями силовой электросети;
- перекрестные помехи, наводимые от соседних витых пар многожильного кабеля городской телефонной сети;
- пульсации напряжения питания источника или (и) приемника сигналов;
- механическая вибрация, при которой некоторые радиоэлектронные компоненты (например, некоторые керамические конденсаторы) могут работать как преобразователи механической энергии в электрическую;
- дневные - ночные перепады температуры (сверхнизкочастотный вандер).
Кодозависимый джиттер (вандер) обусловлен неодинаковыми условиями распространения по линии связи различных последовательностей битов:
- Линия связи, выполненная коаксиальным кабелем или витой парой проводов, содержит распределённые активные и реактивные компоненты: резистивные, емкостные и индуктивные.
- В реактивных компонентах при передаче импульсов периодически накапливается энергия, поэтому можно сказать, что линия связи, в некотором смысле, кратковременно помнит предысторию своего состояния.
- Прохождение очередного импульса по линии немного зависит от этой предыстории, определяющей её предварительную "раскачку" или своего рода "прогрев". Точнее, форма импульса на дальнем конце линии в слабой, но иногда ощутимой мере зависит от того, насколько к моменту его прохождения были заряжены распределенные емкостные компоненты линии и имелись ли токи через её распределённые индуктивные компоненты.
Измерение вандера производится в абсолютных единицах времени и требует прецизионного источника тактовой частоты (к примеру цезиевый генератор, рубидиевый генератор, GPS) при этом, измерение длится довольно долго. В одном из источников, рекомендуют минимум 12 дней, в другом - измерять постоянно.
Почему так? Считается, что меры, принимаемые против джиттера достаточно эффективны, недороги (относительно), применяются всеми. Исправление вандера, напротив, достаточно затратно, раз, и не всем интересно (например, в случае коротких передач), два.
И уж если не исправлять - то хоть измерять.
Характеристики вандера
Существует несколько характеристик вандера
| TIE- | Time Interval Error- | ошибка временного интервала |
| ADEV- | the Allan Deviation- | девиация Аллана |
| MDEV- | the Modified Allan Deviation- | модифицированная девиация Аллана |
| MTIE- | the Maximum Time Interval Error- | максимально допустимая ошибка временного интервала |
| TDEV- | the Time Deviation- | девиация времени, СКО ошибки за определенный интервал |
| TIErms- | the root mean square of Time Interval Error- | среднеквадратичное значение TIE |
"TIE представляет собой отклонение (девиацию) тактовой частоты от частоты эталонного источника. TIE формирует базу для расчета других параметров вандера"
Основными, используемыми, характеристиками вандера являются MTIE и TDEV. Первый из которых является критерием оценки долговременной, а второй - кратковременной стабильности синхросигнала.
Измеренные значения отображаются либо ввиде таблицы либо в виде графика зависимости значения от размера интервала (и шкала абсцисс и шкала ординат используются логарифмические)
Пороговые значения
В соответствии со стандартом G.823, существуют пороговые значения как для MTIE, так и для TDEV.
Превышение порогового значения вандера приводит к:
- проскальзыванию (SLIP)
- переполнению буфера
- полной потери связи
Слишком большое значение вандера может создать множество проблем, в зависимости от типа сигнала. Результат проявляется в виде ненадежного сетевого сервиса, что в свою очередь приводит к более высокой стоимости эксплуатации и уменьшению доходов. Ниже приводятся несколько примеров проблем, вызванных высоким значением вандера:
- Нечитаемые символы в факсах
- Внезапные щелчки в голосовых звонках
- Повторная передача данных (низкая пропускная способность)
- Потеря звонков в сетях GSM
Теория вычислений
Единственно верная информация по теме содержится в бумагах
- ITU-T G.810 — терминология, математические модели, формулы вычисления параметров;
- ITU-T G.823 — маски для MTIE/TDEV;
- ITU-T O.171 — оборудование для измерения джиттера и вандера в PDH сетях;
- ITU-T O.172 — оборудование для измерения джиттера и вандера в SDH сетях;
- ITU-T G.703 — физические и электрические характеристики иерархических цифровых интерфейсов;
Для более полного понимания дальнейшего текста, желательно ознакомиться со страницами 5,6 и 7 документа G.810.
Вкратце, нам нужно рассчитать следующее (G.810 стр. 10)
Согласно формулам расчета, MTIE и TDEV вычисляются не по TIE, но по x(t) — фунции ошибки времени, физически "моментальной" разнице между фазами сигналов в единицах времени. В дискретных условиях, мы работаем c xi = x( i * τ0 ), где τ0 - интервал дискретизации, i - номер измерения. xi называем сэмплом. Если мы проверяем сигнал с частотой 2MHz и τ0 = 488ns, то можно считать, что xi показывает насколько i-й фронт смещен от положения фронта синхросигнала.
TIE - функция ошибки измерения интервала времени, a'la насколько часы "убежали" за час. При условии зануления разницы между сигналами в начале измерения, TIE вырождается в x(t).
Также заметим, что все характеристики вандера, включая основные - MTIE и TDEV, есть функции интервала, то есть при наличии N измеренных сэмплов, количество расчетных интервалов = ( N - 1 )
Практика вычислений
Казалось бы, с точки зрения программной реализации, формулы и формулы, входные значения как входные значения - ничего сложного ;)
Однако:
Исходя из документа O.172, при измерении вандера
- максимальное значение интервала дискретизации τ0 = 1/30 сек, что соответствует частоте дискретизации от 30Hz
- для MTIE - максимальный интервал должен быть, по меньшей мере, 100000 сек ~ 30 часов
- для TDEV - максимальный интервал должен быть, по меньшей мере, 10000 сек ~ 8 часов
- разумно, также, что графики этих характеристик должны выводиться по мере поступления данных, то есть в реальном времени
- что касается времени измерения, вполне допустимо наблюдение сутками
- исходя из формул, при поступлении нового сэмпла n, необходимо пересчитать значения MTIE и TDEV для всех интервалов от 1 до n
Итого - через сутки, скорость расчета должна быть достаточной для вычисления ~5 000 000 значений MTIE, TDEV каждые 33 миллисекунды.
И не забыть об ограниченной памяти для хранения промежуточных расчетов
Конечно, при расчете "в лоб" формул из G.810 такая задача "трудно" реализуема на приборе.
Можно сократить количество расчетных интервалов, с учетом логарифмических шкал опять же, и применить более умные алгоритмы для вычислений. Но, при этом, возникает фактор ошибки расчета алгоритма, она регламентируется документом G.823
В изучении вопроса расчета вообще и в реальном времени, в частности, выделяются работы итальянских и польских исследователей. Согласно, проведенным ими, измерениям наиболее скоростным алгоритмом для вычисления MTIE является метод бинарной декомпозиции
Fast Computation of Maximum Time Interval Error by Binary Decomposition by Stefano Bregni, Senior Member, IEEE, and Stefano Maccabruni
Что касается TDEV - с этой формулой мало что сделаешь. К ее свертке для real-time Владимир Сорокин пришел параллельно с нахождением этого материала
Methods Of Real-Time Calculation Of Allan Deviation And Time Deviation by Andrzej Dobrogowski, Michal Kasznia, Poznan (в нем, кстати, содержится ошибка ;)
При вычислении TDEV в реальном времени, поскольку график строится в логарифмичсеком масштабе, расчет выполняется не для всех интервалов и с увеличивающимся шагом.
0.3, 0.4, ... 1, 2, ... 10, 20, ... 100, 200, ... 1000, 2000, ... 10000
Результаты вычислений
Большое исследование по сравнению времени расчета различных алгоритмов MTIE находится в
Testing of the Methods of Real-Time MTIE Calculation.pdf by Andrzej Dobrogowski, Michal Kasznia, Institute of Electronics and Telecommunications Poznan University of Technology, Poland
Мы же, выполнив в коде оба алгоритма получили такие результаты
Процессор PXA270, RAM 128Mb
| b4-wander-filter-mtie 3000000 samples ~ 100000 сек измерений | b4-wander-filter-tdev 30000 samples ~ 1000 сек | |
| Общее время расчета - 1 мин 37.31 сек время расчета сэмпла - 32.437 мксек | общее время расчета - 4 мин 17.43 сек время расчета сэмпла - 8.581 мсек |
Оценка погрешности вычислений
Ошибка алгоритмов
Сравнение графиков с 0 погрешностью и построенных по алгоритмам (вышеописанным)
(да! попутно сделали в C генератор белого шума, согласно O.172 FigV.1 стр. 36 )
Оптимизация вычислений MTIE
Мысль о том, что вычисление MTIE можно улучшить нашла свое воплощение. Алексей Алехин реализовал собственный алгоритм расчета, исходя из понимания монотонности значений MTIE и используя однонаправленные списки, со 100% точностью
Он описан в соседнем топике - Оптимизация вычислений MTIE
| b4-wander-filter-mtie2 3000000 samples ~ 100000 сек измерений |
| Общее время расчета - 58.08 сек время расчета сэмпла - 19.36 мксек |
Этот алгоритм и будет использован в следующем релизе для прибора BercutMmt.
Данные - пользователю!
Костя Добросолец выполнил фильтрацию и сбор данных для FPGA Altera
Применяя могучие познания архитектуры прибора и кувт (qwt), Юра Людкевич исполнил драйвер для получения данных и вывод графиков в логарифмическом масштабе
Причем, график обновляется по мере поступления данных, укладываясь в те самые 33 мсек
Заключение
Вандер - достаточно важный параметр прохождения цифрового сигнала. Его накопление приводит к проскальзываниям, нарушениям качества связи. В то же время, его подавление не является столь же популярным, как джиттера.
Прибор BercutMmt способен проводить измерение характеристик "вандера" (MTIE, TDEV) - фазового сдвига цифрового сигнала в сетях PDH.В настоящем релизе программного обеспечения 0.0.7-rc1, качество расчетных алгоритмов для MTIE является удовлетворительным, а для TDEV будет улучшено в следующем релизе. Время измерения, пока, ограничено внутренней памятью прибора и, в теории, составляет пол года. Возможна реализация неограниченно, по времени, проводимых измерений.
-------------------------
Отдельное спасибо
Octave - как одному из лучших средств проведения математических исследований
GnuPlot - незаменимому инструменту для создания графиков
Евгений Питель, Владимир Сорокин
Метротек, СПб
Сентябрь 2009





