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

PCI-E RefClk: должен ли быть "зависимым"?

Вопрос не в том, можно ли так по правилам (читай - стандартам), а в том - можно ли от них и насколько отходить.

 

Итак: дифференциальный RefClk частотой 100МГц надо заводить на каждый PCI-E  target, основная цель, я так понимаю - чтобы у мультигигабитных трансиверов был исходный клок с одним и тем же дрейфом.

 

Вопрос: а можно ли не заводить, а генерить локально?

в сети разные мнения, от Note that the pcie bus ref clock needs to be common between all devices communicating on the pcie bus. До https://www.xilinx.com/support/answers/18329.html с техникой Asynchronous Clocking

 

Также есть такая вот картинка:

990122321_Screenshotfrom2019-10-0315-24-44.thumb.png.eacda00cb7edc31afefac6dd0bce6fbd.png

которая вроде бы говорит, что такое вроде как приемлемо, но хотелось бы ответа практиков.

 

Зачем это всё?

Есть девборда с Xilinx US/US+ c FMC но без PCI-E слота, сейчас появилась необходимость работать с PCI-E самая простая и материально незатратная идея реализовать это: изготовить райзер из FMC в PCI-E (через тот же USB3.0 кабель, которй используется китайцами повсеместно для выноса с материнки PCI-E 1х ).

Но вот незадача - на FMC разведены мультигигабитные трансиверы, но задающий клок для них распаян локально на плате (номинал может программироваться во внешней фапч), резать дорожки, куда-то там подпаиваться - такой кейс совсем исключён. Поэтому для принятия решения о райзере хотелось бы заручиться уверенностью что заработает хотя бы в лабораторных условиях (в продакшене это использоваться не будет). (лабораторных условиях == температура 25С, что должно снизить разбос задающих частот на разных концах MGT)/

 

 

 

PCIe-Clock-Source-Selection.pdf

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


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

Если вопрос в том, брать клок со слота PCIE или с генератора на плате, у меня работает и так и так.

Изменено пользователем new123

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


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

19 minutes ago, new123 said:

Если вопрос в том, брать клок со слота PCIE или с генератора на плате

вопрос в том, что есть возможность взять с материнки клок, но нет возможности именно его подать на FPGA

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


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

Приветствую!

PCie устройства  могут работать на независимых клоках  главное чтобы различие опорных частот на  разных концах были меньше чем заложено в стандарте. Поэтому при такой схеме более жесткие (и соответственно дороже) требования к опорникам. Многие PCIe optics extender например так и работают.

Удачи! Rob.

 

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


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

16 minutes ago, RobFPGA said:

PCie устройства  могут работать на независимых клоках  главное чтобы различие опорных частот на  разных концах были меньше чем заложено в стандарте

спасибо за комментарий!

вот как раз уповаю на "тепличные" условия  :buba:

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


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

В лабораторных условиях работать должно, хотя могут быть отдельные ограничения при использовании Spread Spectrum. Причем спред сейчас на материнках обычно не отключаемый.

Однако, странно что нет ни одного MGT клока с FMC. 

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


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

PCIe стандарт предусматривает работу от асинхронных опорных клоков - его физический уровень на это рассчитан (elastic буфера, SKIP ordered set'ы), есть требование, чтобы точность клоков укладывалась в 300 ppm.

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


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

Я пробовал давно от независимых клоков - не работало, но, думаю, тут многое будет зависеть от материнской платы. Как-то давно уже обсуждали это https://electronix.ru/forum/index.php?app=forums&module=forums&controller=topic&id=73928&page=4

Свичи от PLX между собой  работать без общего клока могут. В PCIe optics extender используется развязка. Т.е. с материнкой общий клок есть, а между двумя оптическими концами - нет.

 

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


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

17 hours ago, Flood said:

В лабораторных условиях работать должно, хотя могут быть отдельные ограничения при использовании Spread Spectrum

об этом как раз упоминают в Xilinx Answer Record - что Spread Spectrum неоьходимо отключить и вроде как биос предоставляет такую возможность

10 hours ago, dxp said:

требование, чтобы точность клоков укладывалась в 300 ppm.

но ведь это достаточно легкое требование для современных кварцевых генераторов/резонаторов, нет?

(еще и при 25С)

17 hours ago, Flood said:

Однако, странно что нет ни одного MGT клока с FMC. 

возможно вы правы - девкитов несколько, поэтому хотелось бы чтобы решение было универсальным и не зависящим от наличия возможности правильно "запитать" RefClk

3 hours ago, gosu-art said:

Я пробовал давно от независимых клоков - не работало, но, думаю, тут многое будет зависеть от материнской платы

это как раз не страшно.. (в отличии от зависимости от девкита)

можно подобрать материнскую плату на которой заработает

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


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

Spread Spectrum если и можно отключить, то далеко не везде.

Возможно, есть смысл почитать о решениях PLX для оптической передачи - там на плате-райзере устанавливался PLX, который фактически снимал спрединг (вот тут не уверен?), далее с выходного порта PLX (вроде бы уже без спреда) сигнал через оптику передавался на другую плату, с локальным клоком.

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


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

В 04.10.2019 в 20:20, Doka сказал:

но ведь это достаточно легкое требование для современных кварцевых генераторов/резонаторов, нет?

Да, это вполне ординарно. Но это я про требования стандарта написал, а вот то, насколько это требование соблюдается производителями, это вопрос. Т.е. по спеке должно работать, но на практике - не факт.  Зависит от конкретной реализации железа.

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


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

On 10/4/2019 at 5:27 PM, Flood said:

далее с выходного порта PLX (вроде бы уже без спреда) сигнал через оптику передавался на другую плату, с локальным клоком.

На правах моего дилетантского предположения, для оптики не используется CDR? Быть может там уже и не требуется так жестко следовать целевой частоте, хотя буферы не бесконечны и большую разницу не потянут.

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


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

Есть стандарты для крейтов, например VPX, где в стандарте вообще прямо указано, что для PCIe каждая плата должна использовать локальный RefClk и все платы - будь то ПЛИСные, хоть процессорные, хоть свичи, этому следуют.

Так что будет работать, но spread spectrum должен быть отключен на всех железках и надо смотреть на осцилляторы. Например, мы используем для локального клокинга Si5338, где прямо указано PCIe Gen1/2/3/4 compliant. Че в нем специфического - ХЗ, но работает как-то и даже не в тепличных условиях, а вполне боевых и даже не на US, а на старых 7-ых Виртексах.

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


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

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

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

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

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

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

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

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

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

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