|
|
  |
Помогите поднять линк с QSFP |
|
|
|
Dec 25 2017, 13:29
|
Участник

Группа: Участник
Сообщений: 20
Регистрация: 16-10-17
Пользователь №: 99 768

|
Всем привет!
Что имеется: - Борда TR10a-HL Board (Altera Arria 10) c 4 QSFP+ - Кабель для внешнего loopback.
Сейчас стоит задача отладить внешний loopback. Собран тестовый дизайн Генератор данных ---> Transceiver PHY(DataRate = 1555.2 Mb/s, PLL для Tx PMA настроена на 777,6 MHz, Reference Clock для Rx PMA - 155.52 MHz. Full duplex. Настроен на внутренний loopback) ---> "Проверятель" принятых данных. В такой схеме все работает. Как только перехожу на внешний loopback ничего не работает. С выхода приемника вообще нет ничего. Мусор какой-то. Мое предположение - проблема в работе с QSFP+. Раньше мне не приходилось с ним работать. Прошу помощи и подсказок людей, более опытных в этой области куда залезть/что почитать. Допускаю, что необходимо выполнить какую-то настройку регистров QSFP. Там их целая куча. Но вот что куда прописать слабо представляю.
|
|
|
|
|
Dec 25 2017, 14:15
|
Участник

Группа: Участник
Сообщений: 55
Регистрация: 7-02-09
Из: Ростов-на-Дону
Пользователь №: 44 537

|
Кабель оптический? Если да, то там есть сигналы управления, посмотрите на них внимательно.
|
|
|
|
|
Dec 25 2017, 14:52
|
Участник

Группа: Участник
Сообщений: 20
Регистрация: 16-10-17
Пользователь №: 99 768

|
Цитата(gutzzz @ Dec 25 2017, 17:15)  Кабель оптический? Если да, то там есть сигналы управления, посмотрите на них внимательно. Да, кабель оптический. Там есть набор сигналов для интерфейса с QSFP модулем. Набор сигналов для индикации состояния модуля, сброса и интерфейс I2с. Прочитать/записать память модуля могу. Но вот основная проблема, что именно нужно приписывать и нужно ли вообще это делать? Должен ли QSFP работать "из коробки" без дополнительных телодвижений? Цитата(Flood @ Dec 25 2017, 17:32)  Попробуйте для начала просто сбросить QSFP - дать импульс низкого уровня на ResetL, а также удерживать LPMode=0 (установить низкий уровень на этом пине еще до начала сброса). Это всё делаю.LPMode=0 по умолчанию. Этот сигнал не трогаю вообще. После включения питания выжидаю некоторое время(чтобы перекрыть всё время на переходные процессы в модуле и т.д.). Затем дергаю ResetL (удерживаю в 0 не менее 2мкс). После смотрю сигналы IntN и ModPrs. Если эти сигналы в 0 значит модуль OK.
|
|
|
|
|
Dec 26 2017, 10:29
|
Участник

Группа: Участник
Сообщений: 20
Регистрация: 16-10-17
Пользователь №: 99 768

|
Цитата(TRILLER @ Dec 25 2017, 18:13)  MODSEL? Модуль у Вас может быть со встроенным ПЛЛ, потому посмотрите в описании, на какую частоту он настроен по-умолчанию(если есть). Сомневаюсь, что DataRate = 1555.2 Mb/s это что-то стандартное.. MODSEL использую если необходимо связаться с QSFP по интерфейсу. В спецификации на QSFP модуль SFF-8436 Rev 4.2 есть вот эта табличка по адресу 131 записано 0x2, а по всем остальным адресам 0x0. Что это может означать? Могу ли я этим модулем принимать/передавать трафик на меньшем DataRate или не могу?Или он предназначен только для сетей 40G? з.ы.я пытаюсь принять/передать STM-1 поток 155,52 Mb/s. Собственно по этой причине и был выбран DataRate = 1555.2 Mb/s (т.к трансиверы в ПЛИС работают минимум на 1Гб/с) и прием/передача ведется с 10x oversampling.
Сообщение отредактировал polyvyannyy - Dec 26 2017, 10:30
|
|
|
|
|
Dec 26 2017, 15:21
|
Участник

Группа: Участник
Сообщений: 55
Регистрация: 7-02-09
Из: Ростов-на-Дону
Пользователь №: 44 537

|
А какая модель кабеля? Что в документации написано? Какая у него пропускная?
|
|
|
|
|
Dec 28 2017, 08:53
|
Участник

Группа: Участник
Сообщений: 20
Регистрация: 16-10-17
Пользователь №: 99 768

|
Все заработало. Оказывается все очень просто  Quartus при синтезе выкидывал сигнал LPMODE и нога оказывалась в третьем состоянии. А на плате идет подтяжка сигнала к питанию. Соответственно, на QSFP LPMODE = 1 и модуль находился режиме низкого энергопотребления.
|
|
|
|
|
Dec 28 2017, 10:10
|

В поисках себя...
   
Группа: Свой
Сообщений: 729
Регистрация: 11-06-13
Из: Санкт-Петербург
Пользователь №: 77 140

|
Цитата(alexadmin @ Dec 28 2017, 12:54)  С трудом представляю квартус, который бы выкинул выходной пин если бы на него было назначено какое-либо значение. Выкидывание выходных пинов я тоже не встречал. Но на практике сталкивался с тем, что Quartus удалял частоты, синтезируемые на PLL. И ни одного предупреждения на консоль не выводил.... Приведу пример: Я на PLL создал 3 одинаковые частоты (с0, с1, с2), фазой каждой из которых я управляю отдельно. Но Quartus 2 частоты (с1 и с2) обрезал, промолчав как партизан. И потом на отладке я убил кучу времени... Проблема вылечилась следующим образом: для каждой из частот я задал изначально разные сдвиги фаз, и Quartus после этого их не выкидывал.
|
|
|
|
|
Dec 28 2017, 11:30
|
Участник

Группа: Участник
Сообщений: 20
Регистрация: 16-10-17
Пользователь №: 99 768

|
Цитата(Flip-fl0p @ Dec 28 2017, 12:00)  А как обнаружили это ? Я заметил, что Quartus любит заниматься оптимизацией, но при этом молчит как партизан о том, что он что-то оптимизировал  Посмотрел RTL после синтеза. Проверил все управляющие сигналы QSFP и выяснил, что именно LPMODE был объявлен как входной)) (криворучка я)
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|