Jump to content

    

Recommended Posts

Platform designer умеет для корок готовые design examples генерировать. Посмотрите https://www.intel.com/content/www/us/en/programmable/documentation/umc1467272429805.html#nfa1448439896708
В частности, Figure 8. Clocking and Reset Scheme for 10GBASE-R Design Example
image.thumb.png.fcbdcc4d069d54698fc27ea9b58b701b.png

Share this post


Link to post
Share on other sites

А как в quartus сгенерировать голый трансивер в режиме 10G base-r? Для stratix10.

Я имею в виду  трансивер 10G base-r только PMA уровень, без уровня PCS.

Я делаю так : ip catalog -> transciever phy -> l-lite/h-lite transceiver phy intel srtatix10 fpga ip. Здесь можно выбрать настройки, но в сгенерированном ядре присутствует уровень PCS, а мне надо сгенерировать без него, только PMA.

Если был бы открытый код еще ладно, но pcs полностью закрыт.

Подскажите, благодарю.

 

 

Share this post


Link to post
Share on other sites
3 hours ago, gosha-z said:

А смысл? C PCS выходит не XGMII?

Из PCS выходит xgmii. 

Мне нужен свой собственный уровень PCS. Соответственно для этого мне нужно сгенерировать трансивер 10g base-r без PCS.

Share this post


Link to post
Share on other sites
17 hours ago, Kostochkin said:

А как в quartus сгенерировать голый трансивер в режиме 10G base-r? Для stratix10.

Я имею в виду  трансивер 10G base-r только PMA уровень, без уровня PCS.

Я делаю так : ip catalog -> transciever phy -> l-lite/h-lite transceiver phy intel srtatix10 fpga ip. Здесь можно выбрать настройки, но в сгенерированном ядре присутствует уровень PCS, а мне надо сгенерировать без него, только PMA.

Если был бы открытый код еще ладно, но pcs полностью закрыт.

Подскажите, благодарю.

 

 

См. режим PCS Direct. В этом режиме встроенные хард PCS блоки не используются.
"Enforces rules required by the PCS Direct mode. In this configuration the data flows through the PCS channel, but all the internal PCS blocks are bypassed. If required, the PCS functionality can be implemented in the FPGA fabric."

https://www.intel.com/content/dam/www/programmable/us/en/pdfs/literature/hb/stratix-10/ug_stratix10_l_htile_xcvr_phy.pdf - страница 38, таблица 12 "Transceiver Configuration Rule Parameters"

Share this post


Link to post
Share on other sites
25 minutes ago, goodsoul said:

См. режим PCS Direct. В этом режиме встроенные хард PCS блоки не используются.
"Enforces rules required by the PCS Direct mode. In this configuration the data flows through the PCS channel, but all the internal PCS blocks are bypassed. If required, the PCS functionality can be implemented in the FPGA fabric."

https://www.intel.com/content/dam/www/programmable/us/en/pdfs/literature/hb/stratix-10/ug_stratix10_l_htile_xcvr_phy.pdf - страница 38, таблица 12 "Transceiver Configuration Rule Parameters"

Благодарю.

Получается, что в startix10 уровень PCS не soft, а hard? Я думал он soft.

Значит, если я напишу свой soft PCS, он шустрей, чем готовый hard работать никак не будет, верно?

Share this post


Link to post
Share on other sites

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

1 hour ago, Kostochkin said:

Значит, если я напишу свой soft PCS, он шустрей, чем готовый hard работать никак не будет, верно?

Что значит шустрее?

Удачи! Rob.

Share this post


Link to post
Share on other sites

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

6 minutes ago, Kostochkin said:

Конкретно меня интересует latency. Чтоб была как можно меньше.

:biggrin:

В таком случае можно попробовать  генерировать "чистый" phy (только serdes)  и лепить свою логику pcs снаружи. Но мне не кажется что получится быстрее.  

Как пример можно глянуть на корку Low latency PHY, Deterministic Latency PHY, или просто Native PHY (правда я со Stratix V работаю и не знаю есть ли такие для Stratix10) 

Удачи! Rob.

Share this post


Link to post
Share on other sites
1 hour ago, RobFPGA said:

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

:biggrin:

В таком случае можно попробовать  генерировать "чистый" phy (только serdes)  и лепить свою логику pcs снаружи. Но мне не кажется что получится быстрее.  

Как пример можно глянуть на корку Low latency PHY, Deterministic Latency PHY, или просто Native PHY (правда я со Stratix V работаю и не знаю есть ли такие для Stratix10) 

Удачи! Rob.

Благодарю.

Для stratix10 есть корка 10g base-r low latency. Исходники не посмотришь, все закрыто, но наверно это то, что нужно для начала. Пойду по простому пути, для начала.

Если не устроит, тогда надо будет генерить корку в режиме PCS Direct, и писать PCS самому.

Share this post


Link to post
Share on other sites

Здравствуйте.

Вопрос такой.

Вот схема ip-core 10gbase-r для stratix10.

Меня интересует частота клока PCS_clkout_x2(tx) и PCS_clkout_x2(rx). Нигде не могу найти.

Подозреваю, что частота такая же как и у PCS_clkout(tx) = PCS_clkout(rx) = 322.265625МГц. Но хотелось бы знать точно.

Вроде разобрался, PCS_clkout_x2 =PCS_clkout *2 = 644МГц.

Но тогда не понятно тактование tx_pcs_fifo и rx_pcs_fifo, со стороны PCS эти fifo тактируется 322МГц, а со стороны user logic 644МГц...

Может в схеме опечатка и user logic этих fifo тактируется от tx_pma_div_clkout, rx_pma_div_clkout... Как я понял (tx/rx)pma_div_clkout = 156.25МГц при 10gbase-r.

Благодарю.

 

ps.jpg

Share this post


Link to post
Share on other sites

В мануале по трансиверам, если мне не изменяет память, написано pcs tx/rx out = data rate / pma width, что достаточно логично. Получаем 10312 data rate / 40 (у вас конфигурируется на 40?) = 257,8125

Share this post


Link to post
Share on other sites
2 hours ago, new123 said:

В мануале по трансиверам, если мне не изменяет память, написано pcs tx/rx out = data rate / pma width, что достаточно логично. Получаем 10312 data rate / 40 (у вас конфигурируется на 40?) = 257,8125

Нет на 32, получается PCS_clkout = 322.265625МГц, PCS_clkout_x2 = 644.53125МГц. 

Не понятно тактование tx_pcs_fifo и rx_pcs_fifo, со стороны PCS эти fifo тактируется 322МГц, а со стороны user logic 644МГц... Согласно схеме.

Как-то странно, или я что-то не понимаю.

Share this post


Link to post
Share on other sites
1 hour ago, Kostochkin said:

Нет на 32

а чего так? 10Gbase-r вроде как на 40 строят, хотя быть может это особенности чипов, я тут точно не знаю. У стратиксов пятых была такая особенность, что они работают на 40 без выбора

1 hour ago, Kostochkin said:

tx_pcs_fifo и rx_pcs_fifo, со стороны PCS эти fifo тактируется 322МГц, а со стороны user logic 644МГц... Согласно схеме.

Это компенсационное FIFO (PCS ФИФО), которая компенсирует разность частот внутри трансивера и user logic. Лень (нету времени) лезть в букварь, там user logic частота рассчитывается из соотношения PCS->PMA_width/user_logic_width
К примеру, если подавать данные из FPGA стандартно по XGMII 64 бита, а в PMA заходят 40 бит, получаем 40/66 = 0.606, итого, тактовая внутри у меня 257,83, получаем частоты для user logic = 257.83 * 0.606 = 156,25

я могу в мелочах ошибиться, но основной посыл такой

Edited by new123

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this