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

Вопрос о gtpe2_channel, gtpe2_common

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

У меня есть плата с fpga xilinx artix200 fbg484-2.

Работаю в vivado 2017.2.

В этом кристалле  один квадрант трансиверов, GTP - 4 шт., COMMON - 1 шт. Два внешних клока.

По заданию нужно один GTP питать от одного внешнего клока, а третий от другого внешнего клока.

Использую ip core "1G/2.5G Ethernet PCS/PMA or SGMII v16.1".

У блока GTPE2_COMMON две pll, два клоковых входа и два клоковых выхода.

Из блока COMMON вывожу все сигналы pll0 на один трансивер, а pll1 на другой трансивер. Соответственно в втором ядре переподключил блоки  startup_fsm на ppl1, и для COMMON установил PLL1REFCLKSEL = B"010". В GTPE2_CHANNEL настройки не менял.

Проект собрался, но при отладке ядро, работающие от clock0 поднялось(userclk есть, resetdone - ok), а второе, работающее от clock1 не запустилось(userclk нет, resetdone - not ok). 

В документации прямо не написано, что GTP в одном квадранте можно питать двумя разными клоками. 

Там написано, что можно выбрать каким клоком питать GTP.

Возможно ли так сделать? И если да, то где я ошибся?

Благодарю.

ps.jpg

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

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


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

Насколько я помню, в Channel заходят оба клока (от PLL0 и PLL1), далее внутри выбирается какой клок используем.

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


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

Да, в channel заходят два клока, а как выбрать какой клок использовать? Нигде не нашел...

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

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


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

Установил в ядре, которое питается от клока PLL1 настройки трансивера:

TXSYSCLKSEL = b"11";

RXSYSCLKSEL = b"11";

Ядро все равно не поднимается.

Блок "TX_STARTUP_FSM" не опускает сигнал mmcm_reset в 0.

Соответственно pll не выдает userclk.

Что-то еще надо настроить?

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


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

Второй сигнал синхронизации точно в наличии ? Номинал верный ?

Как вариант попробуйте собрать проект IBERT и посмотреть работу на нем.

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


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

23 hours ago, toshas said:

Второй сигнал синхронизации точно в наличии ? Номинал верный ?

Как вариант попробуйте собрать проект IBERT и посмотреть работу на нем.

Сейчас проверю.

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


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

Извините, что долго не отвечал.

Разобрался.

В блоке GTPE2_COMMON по умолчанию для атрибутов PLL1(настройки внутренней pll) были выбраны коэффициенты, отличные от аналогичных для PLL0.

Установил атрибуты для PLL1 такие же, как и для PLL0, заработало.

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

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


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

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

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

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

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

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

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

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

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

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