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

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

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


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

On 4/6/2020 at 6:43 PM, RobFPGA 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 полностью закрыт.

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

 

 

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


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

3 hours ago, gosha-z said:

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

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

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

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


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

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"

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


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

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 работать никак не будет, верно?

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


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

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

1 hour ago, Kostochkin said:

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

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

Удачи! Rob.

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


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

2 minutes ago, RobFPGA said:

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

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

Удачи! Rob.

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

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


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

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

6 minutes ago, Kostochkin said:

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

:biggrin:

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

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

Удачи! Rob.

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


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

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 самому.

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


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

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

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

Вот схема 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

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


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

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

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


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

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МГц... Согласно схеме.

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

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


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

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

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

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

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


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

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

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

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

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

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

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

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

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

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