Перейти к содержанию
    

Тактирование высокоскоростных приемопередатчиков zynq-7000

39 minutes ago, RobFPGA said:

Но после выравнивания слова bitslip-ом выглядеть это должно как разная фаза восстановленного RX клока на низкой частоте.

 А вот задач по минимальной и детерминированной latency по пути RX - TX полно :yes3:

вот тут у меня диссонанс. Вы же сами пишете про разную фазу восстановленной низкой частоты, но при этом пишете про детерминированную задержку.

Я же верно прочитал: у вас фаза восстановленной частоты плавает от 0 до 360 градусов, но при этом задержка фиксированна? Тогда относительно чего и в чем вы ее измеряете? Измерение проводится в тактах восстановленной частоты?

Мысленный экспиремент: если взять не плавающую опорную, синхронную по частоте относительно восстановленной. Затактировать ей логику плис, что принимает данные с GTX. Вывести эту опорную частоту синхронно с восстановленной, при сдвиге ее фазы в 0, тогда при сдвиге фазы в 360 градусов, данные, относительно опорной частоты лягут на +1 такт, т.е. появится задержка, зависящая от фазы восстановленного RX клока на низкой частоте и временных параметров триггеров при перекладке из сдвигового регистра GTX в регистр логики.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

1 minute ago, des00 said:

вот тут у меня диссонанс. Вы же сами пишете про разную фазу восстановленной низкой частоты, но при этом пишете про детерминированную задержку.

Я же верно прочитал: у вас фаза восстановленной частоты плавает от 0 до 360 градусов, но при этом задержка фиксированна? Тогда относительно чего и в чем вы ее измеряете? Измерение проводится в тактах восстановленной частоты?

Я говорю о разной фазе RX клока на высокой частоте. 360 градусов это 1 битовый интервал. Это и есть та недетерминированная задержка которая обычно не контролируется в GTX. И эта неопределенность потому что, на сколько знаю, CDR у Xilinx выполнен по схеме интерполяции фазы, а не аналоговой PLL. По сути это цифровой DDS который дополнительно крутит в определённом диапазоне фазу восстановленного клока относительно фазы референтного клока. 

Выравниванием по bitslip  мы синхронизируем фазу клока RX на низкой стороне c точностью до бита. Поэтому и получается детерминированная задержка (равная аппаратным задержкам реализации входных цепей RX, CDR и десериализатора) и недетерминированная в пределах 1 битового интервала. 

Если  взять 2 таких канала, и предположить что на передающей стороне  TX работает строго синхронно то на приемной мы получим после CDR 2 восстановленных RX клока одинаковой частоты с неопределенностью фазы в 1 бит из за CDR. А вот фаза клоков RX на низкой частоте (после выравнивания слов по bitslip) будет отличатся еще и на разницу задержек в каналах. И на низкой частоте 360 градусов это будет задержка в Nбит где N это размер слова.    

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

22 minutes ago, RobFPGA said:

 И на низкой частоте 360 градусов это будет задержка в Nбит где N это размер слова.    

Ну я про это и говорил сразу +-1 слово выходного интерейса, девиация задержки. Вот и наблюдает ТС эту девиацию, затем умножает на ширину слова и получает те самые свои "коллосальные" задержки.

22 minutes ago, RobFPGA said:

Если  взять 2 таких канала, и предположить что на передающей стороне  TX работает строго синхронно то на приемной мы получим после CDR 2 восстановленных RX клока одинаковой частоты с неопределенностью фазы в 1 бит из за CDR.

но вот дальше продолжаем вашу же мысль, эта неопределенность даст вам комбинации сдвига фазы восстановленных клоков низкой частоты -1/0, 0/0, 0/-1. Что при оценке, относительно одной опорной частоты может дать вам +-1 слово интерфейса. Все зависит от фазировки этой опорной частоты относительно восстановленных клоков. Один попал до фронта, второй после фронта. Об этом я сразу и написал. А если вы один из восстановленных клоков используете в качестве измерительного, то там тем более будет девиация +-1 символ который у вас N бит.

22 minutes ago, RobFPGA said:

Поэтому и получается детерминированная задержка (равная аппаратным задержкам реализации входных цепей RX, CDR и десериализатора) и недетерминированная в пределах 1 битового интервала.

Но итоговая то будет недетерменированная. Понятно, у нас с вами разные подходы к термину "детерминированная задержка", точнее разные системы интерпретации этой задержки.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

2 hours ago, des00 said:

Ну я про это и говорил сразу +-1 слово выходного интерейса, девиация задержки. Вот и наблюдает ТС эту девиацию,

Ну так это определяется в основном в выравнивании по bitslip (если считать фазу в TX и задержки в каналах одинаковыми). А если без синхронизации между каналами то тогда вообще не понятно как TC мог работать с таким тактированием.  Ну а если сделать начальную синхронизацию между каналами то фазу RX (на низкой частоте) между ними можно  можно подстроить опять же  с точностью до бита.

 

P.S.  Вот кстати интересная презентация от CERN по похожему поводу, правда для Virtex5

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Спасибо за активное обсуждение проблемы, теперь есть над чем подумать, задержка как раз и похожа на +- 1 слово. 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

On 12/3/2021 at 3:05 AM, Hexa said:

Спасибо за активное обсуждение проблемы, теперь есть над чем подумать, задержка как раз и похожа на +- 1 слово. 

Самый неприятный (и не очевидный для вас) косяк вашей схемы - это разгон джиттера. В случае каскадного (последовательного) соединения подобных каналов связи ситуация с джиттером будет ухудшаться и в пределе CDR на самом дальнем в цепочке приемнике перестанет входить в захват. При увеличении длины оптического линка ситуация также будет ухудшаться. Подобные проблемы решаются в сетях SyncE с помощью специальных внешних джитееродавов, но у них тоже есть проблемы с низкочастотным джиттером (называют "вандером"). Этот шум невозможно отфильтровать петлёй ФАПЧ, поэтому это - отдельная проблема.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...