|
Ваделение клока из данных., Кто знает как выделить частоту из приходящих данных. |
|
|
|
Nov 18 2005, 08:16
|
iBuilder©
   
Группа: Свой
Сообщений: 519
Регистрация: 14-07-04
Из: Минск
Пользователь №: 322

|
Цитата(shamray @ Nov 15 2005, 18:40)  Цитата(Builder @ Nov 15 2005, 15:32)  Бросается в глаза: 8 бит данных на 248 бит нулевых, за 248 нулевых данных (когда нет информации об клоке), ваш клок может убежать очень далеко, при опорной - 16 Скорее всего придётся делать как говорили - менять кодирование.
Как я и говорил, с данными я немогу ничего сделать. Они мне идут "как есть". Схема предложенная в книге "Синхронизация в телекоммуникационных сетях" на стр. 244 рис 9.7 работает не так как хотелось бы - иногда проскакивает лишний клок. Я думаю что это из=за несовпадения частот данных и задающего кварца. Может стоит увеличить частоту каврца или это не поможет? Для того что-б говорить какая частота устроит при этих условиях, нужно знать, на скольлько могут не совпадать частоты передатчика и приёмника. Попробуйте отсюда прикинуть, если вы не будете подстраивать частоту 248 тиков - на сколько максимум убежит частота, и отсюда пляшите...
|
|
|
|
|
Jan 13 2006, 02:47
|
Участник

Группа: Новичок
Сообщений: 46
Регистрация: 10-01-06
Из: Kiev
Пользователь №: 12 990

|
Цитата(des00 @ Nov 18 2005, 08:59)  Цитата(sazh @ Nov 16 2005, 04:16)  К сожалению я не знаком с такими понятиями. Может приведете законченный пример, чтобы можно было проанализировать в RTL просмотрщике.
Хмм насчет примера помочь не могу, не делал. только теорию изучал, но смысл в том, что если вам все равно подмешивать в поток синхро слова, то слово это хорошо выделяеться корелятором, который может использоваться для синхры под символьную частоту. А байт стаффинг/бит стафинг нужен для кодирования слов данных == синхрослову, иначе у вас будет сбой посылки По поводу стаффинга: Staffing-вставка, бит или байт или др. ("служебная" иформация), специально "вставляемый" в поток данных для синхронизации и в конечном итоге передачи по цифровому каналу асинхронных данных без потерь и с восстановлением тактовой частоты на приемном конце. Применяется (Staffing) обычно в многоканальных системах передачи, в которых групповой поток включает больше одного асинхронных (несинхронных между собой и с групповым потоком в общем случае) потоков данных. Работает следующим образом. Групповой поток имеет скорость передачи, заведомо выше суммы всех потоков с учетом нестабильности тактовых частот всех первичных каналов. В групповом потоке организуются циклы с временными позициями для каждого канала и служебные каналы (позиции), в частности и для стаффинга. Т.к. скорость передачи в групповом потоке выше чем в каждом канале, то на передающем конце в прцессе передачи периодически наступает момент, когда один бит передается дважды. В этот момент и формируется стаффинг, передавемый по своему каналу. На приеме по сигналу стаффинга один (повторенный) бит исключается, восстанавливая исходный поток данных, а частота и фаза появления стаффинга используется для восстановления канальной тактовой частоты, т.к. равна разности групповой и канальной тактовых частот. К данной теме стаффинг, как видно, отношения не имеет, и как я понял другие "вставки" типа доп. синхропосылок для решения не приемлемы.
|
|
|
|
|
Jan 13 2006, 07:08
|

Частый гость
 
Группа: Свой
Сообщений: 139
Регистрация: 29-10-05
Пользователь №: 10 248

|
Цитата(shamray @ Nov 14 2005, 18:38)  С данными я ничего сделать не могу. Кодировка - NRZ. Данные идут достаточно редко (8 бит данных на 248 бит нулевых). Нужно сделать устройство на вход которого подается такой поток данных, а на выходе клок и синхронизированные с ним эти-же данные. А если в 1 будет только 1 бит данных? А как вы определите начало посылки, если первый бит нулевой? А если 8 бит данных будут нулевыми? А если это повторится несколько фреймов подряд или даже еще долго будет повторяться? Вам следует очень хорошо подумать над возможностью введения старт-стоповых импульсов в источник сигнала и использованием асинхронной передачи т. к. в указанном виде не существует надежного источника синхроимпульсов. Если быть точным, то он конечно есть, но очень неудобный, сложный для выделения и предъявляющий высокие требования к джиттеру сигнала.
--------------------
Чем могу... Удачи!
|
|
|
|
|
Jan 13 2006, 07:35
|
Участник

Группа: Новичок
Сообщений: 46
Регистрация: 10-01-06
Из: Kiev
Пользователь №: 12 990

|
des00: ///Я имел в виду немного другое, а именно в любом битовом протоколе передачи данных возникают проблемы синхронизации пакетов данных при передаче по одному каналу. Для этого можно ввести синхрослово, а на приемном конце разгребать потом по битно сравнивая кореляцию принятого "слова" с синхрословом. Но ИМХО здесь возможна ситуация, когда слово данных == синхрослову, то в таком случае, насколько я в курсе используеться подмена слова данных на другую последовательность. Именно это я понимал под стаффингом./// Понятно. Но опять-же такое решение требует "искажения" передаваемой информации, а это в данном случае похоже не допустимо. Вообще если принять изложенные данные как ТЗ, то задача имеет решение при нестабильности тактовой Тх не более 0,5Ти/248=2*Е-3. Это грубо, а с учетом нестабильности приемного генератора, скважности или дискретности работы ЦФАПЧ на приеме, связанной с не очень большой величиной кварц. тактовой (1/8 такта в данном случае), а также упомянутый кем-то выше джиттер (фазовое дрожание битовых переходов) получится, что необходимо и достаточно применить обычные кварцованные генераторы на передаче и приеме, которые дадут в первом приближении 4-ю степень нестабильности. Далее, цифровая система тактовой синхронизации на приеме должна работать в моменты появления данных по фронтам битов и "держать" фазу в промежутках. А для правильного приема данных необходимо в приемнике построить систему цикловой синхронизации, с длительностью цикла ровной 248 бит. И эта система должна вырабатывать циклически повторяющееся временное окно, по длительности и временному положению совпадающему с блоком данных. для чего нужно ввести подстройку фазы этого окна в цикле. Конечно, сразу после запуска данные скорее всего будут приниматься с ошибкой (или вообще не будут) до наступления момента синхронизации временного положения окна и блока данных. Но и последнее неудобство можно преодолеть, если данные побитно записывать в память и после наступления синхронизации их восстановить. Это если задержка допустима. Ну а так, вроде все работает. Цитата(Magnum @ Nov 18 2005, 08:13)  Для начала всёже хлтелось бы узнать поподробнее о потоке данных 2Мбита, к которому надо сгенерировать клок, а точнее на сколько он стабилен, может ли в нем быть джиттер и вандер. От этого в конечном счете и будет зависеть возможность восстановления тактовой. Объясните пожалуйста, что оно такое, вандер? Спасибо
|
|
|
|
|
Jan 13 2006, 11:19
|

Частый гость
 
Группа: Свой
Сообщений: 139
Регистрация: 29-10-05
Пользователь №: 10 248

|
Вандер - это baseline wander - эффект плавания среднего уровня сигнала в зависимости от передаваемых данных. У Максима есть аппнот о его влиянии на джиттер. Думаю, что условия задачи принимать как данность рановато. Скорее всего в источнике сигнала есть источник синхров. Иначе это не источник сигнала, а чистая провокация
--------------------
Чем могу... Удачи!
|
|
|
|
|
Jan 14 2006, 15:54
|
Участник

Группа: Новичок
Сообщений: 15
Регистрация: 30-05-05
Пользователь №: 5 537

|
Цитата(sazh @ Jan 13 2006, 11:20)  Подстройка фазы этого окна в цикле. А как это сделать (если принять условия задачи как данность). Ну это ж не есть проблема для схемотехника. Ну возьмите счетчик по модулю 248, работающий от восстановленной тактовой частоты, а к нему подключите дешифратор, выдающий "1" при состоянии счетчика от "0" до "n" где n длина инф. посылки. А теперь постройте схему сброса его в ноль приходящими инф. посылками, и через х циклов получите цикловую синхронизацию. Только не спрашивайте - а если в информации будут одни нули. Вот Вы бы такое допустили? Допустите на минуточку, что систему делают такие-же умные люди как Вы. Наверное ввели бы и старт бит и контрольные биты для проверки достоверности.. Далее можно предположить вопросы типа а если появиться случайный бит еденицы не там? Т.е. сбои, ошибки в канале, ведь нет в природе каналов с достоверностью передачи =1! И это тоже решается некоторым усложнением, интеллектуализацией системы поиска и синхронизации. Но в исходной постановке задачи сведения по достоверности канала отсутствуют. Поэтому не будем решать задачу до конца , надо и исполнителю что-нибудь оставить для творчества! А кстати, где это он? Он в зале?
|
|
|
|
|
Jan 14 2006, 16:17
|
Участник

Группа: Новичок
Сообщений: 15
Регистрация: 30-05-05
Пользователь №: 5 537

|
Цитата(MosAic @ Jan 13 2006, 14:19)  Вандер - это baseline wander - эффект плавания среднего уровня сигнала в зависимости от передаваемых данных. У Максима есть аппнот о его влиянии на джиттер. Думаю, что условия задачи принимать как данность рановато. Скорее всего в источнике сигнала есть источник синхров. Иначе это не источник сигнала, а чистая провокация  Спасибо за вандер, не попадался такой термин, хотя еффект конечно понятен и знаком. И вандер тоже надо учитывать. А ссылочку не дадите? Да уж, провокация. Как там было - "С данными я ничего сделать не могу. Кодировка - NRZ. Данные идут достаточно редко (8 бит данных на 248 бит нулевых). Нужно сделать устройство на вход которого подается такой поток данных, а на выходе клок и синхронизированные с ним эти-же данные." Про канал ни слова. Предполагаем что это медные провода, не длинные или согласованные в противном случае.
|
|
|
|
|
Jan 14 2006, 17:33
|

Частый гость
 
Группа: Свой
Сообщений: 139
Регистрация: 29-10-05
Пользователь №: 10 248

|
Цитата Спасибо за вандер, не попадался такой термин, хотя еффект конечно понятен и знаком. И вандер тоже надо учитывать. А ссылочку не дадите? В условиях нет ни слова о синхроимпульсах. Поэтому и настаиваю на более подробной информации об источнике. В представленном виде условие задачи ужасно... А вот и ссылочка на Максимовский аппноут: HFAN-09.0.4: NRZ Bandwidth - LF Cutoff and Baseline Wander
--------------------
Чем могу... Удачи!
|
|
|
|
|
Jan 16 2006, 00:53
|
Участник

Группа: Новичок
Сообщений: 46
Регистрация: 10-01-06
Из: Kiev
Пользователь №: 12 990

|
[/quote] В условиях нет ни слова о синхроимпульсах. Поэтому и настаиваю на более подробной информации об источнике. В представленном виде условие задачи ужасно... [/quote] И правильно! [/quote] А вот и ссылочка на Максимовский аппноут: HFAN-09.0.4: NRZ Bandwidth - LF Cutoff and Baseline Wander[/quote] Спасибо, пошел читать.
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|