реклама на сайте
подробности

 
 
2 страниц V   1 2 >  
Reply to this topicStart new topic
> Не удается поднять lwIP c SFP, SFP Microblaze lwIP
aabmail
сообщение Feb 19 2014, 13:57
Сообщение #1


Местный
***

Группа: Свой
Сообщений: 210
Регистрация: 4-06-08
Из: Москва
Пользователь №: 38 056



Здравствуйте, уважаемые форумчане!

Поделитесь, пожалуйста, опытом работы с SFP-модулем.
Стоит задача поднять lwIP (для начала, чтобы хотя бы пошел ping).
На плате установлен Kintex7, ethernet через SFP RJ45. Использую ядро axi_ethernet в режиме 1000BASE-X. Система построена с применением axi_fifo (dma использовать невозможно, так как нет DDR-памяти).

Не данный момент мне удалось заставить работать LOOPBACK-тесты, которые генерируются при создании приложения peripherals_test_0 в SDK. По статусному регистру MDIO вижу, что autonegatiation OK, link active. Если LOOPBACK снять, то тоже autonegatiation OK, link active.

Однако мне не удается получить ни одного пакета извне. Снимаю LOOPBACK, пингую снаружи - прерываний нет, и все счетчики входящих пакетов по нулям. Присоединился chipscope к внутренней шине GMII и вижу, что сигнал INT_GMII_RX_ERR передает меандр wacko.gif (чего нет в режиме LOOPBACK).

В чем может быть ошибка??
Go to the top of the page
 
+Quote Post
gosu-art
сообщение Feb 22 2014, 19:04
Сообщение #2


Знающий
****

Группа: Свой
Сообщений: 555
Регистрация: 14-10-09
Пользователь №: 52 939



А разве в езернет кодировка не 4/5 используется? просто под SFP идет 8/10 c стандартных корок (например Альтера - точно)
Go to the top of the page
 
+Quote Post
vitan
сообщение Feb 22 2014, 19:36
Сообщение #3


не указал(а) ничего о себе.
******

Группа: Свой
Сообщений: 3 325
Регистрация: 6-04-06
Пользователь №: 15 887



Цитата(aabmail @ Feb 19 2014, 17:57) *
ethernet через SFP RJ45. Использую ядро axi_ethernet в режиме 1000BASE-X.
<...>
В чем может быть ошибка??

В этом и ошибка. Надо не 1000BASE-X, а SGMII.
Воткните оптический SFP.
Go to the top of the page
 
+Quote Post
aabmail
сообщение Feb 23 2014, 18:03
Сообщение #4


Местный
***

Группа: Свой
Сообщений: 210
Регистрация: 4-06-08
Из: Москва
Пользователь №: 38 056



Цитата(vitan @ Feb 22 2014, 23:36) *
В этом и ошибка. Надо не 1000BASE-X, а SGMII.
Воткните оптический SFP.


Если SGMII сделать, то тогда autonegatiation не проходит, link-а нет. Т.е. еще хуже.
Попробую завтра оптику вставить...
Go to the top of the page
 
+Quote Post
krux
сообщение Feb 23 2014, 18:37
Сообщение #5


Профессионал
*****

Группа: Свой
Сообщений: 1 700
Регистрация: 2-07-12
Из: дефолт-сити
Пользователь №: 72 596



для начала убедитесь что ваш SFP-T модуль со стороны меди подключен к 1000Base-T порту (свича, компа или чего ещё)
для режима SGMII SFP-модуль должен быть предварительно также переведён в этот режим. Это делается через запись регистров по I2C на SFP-разъеме. Однако режим SGMII умеют далеко не все модули.

через MDIO вы видите какой линк? 1000Base-X?

убедитесь, что когда вы подключаете чипскоп к INT_GMII_RX_ERR, ваше подключение чипскопом не вышибает никакие констрейны типа RLOC-ов.
подключитесь к TEMAC со стороны localink-а, что видно там?


--------------------
провоцируем неудовлетворенных провокаторов с удовольствием.
Go to the top of the page
 
+Quote Post
vitan
сообщение Feb 23 2014, 20:10
Сообщение #6


не указал(а) ничего о себе.
******

Группа: Свой
Сообщений: 3 325
Регистрация: 6-04-06
Пользователь №: 15 887



Цитата(krux @ Feb 23 2014, 22:37) *
для начала убедитесь что ваш SFP-T модуль со стороны меди подключен к 1000Base-T порту (свича, компа или чего ещё)
для режима SGMII SFP-модуль должен быть предварительно также переведён в этот режим. Это делается через запись регистров по I2C на SFP-разъеме. Однако режим SGMII умеют далеко не все модули.

Если это медь, то умеет, причем по умолчанию ничего прописывать обычно не надо.


Вообще, модель SFP неплохо бы в студию.
Go to the top of the page
 
+Quote Post
aabmail
сообщение Feb 24 2014, 09:42
Сообщение #7


Местный
***

Группа: Свой
Сообщений: 210
Регистрация: 4-06-08
Из: Москва
Пользователь №: 38 056



Спасибо всем за ответы.

Цитата(krux @ Feb 23 2014, 22:37) *
для начала убедитесь что ваш SFP-T модуль со стороны меди подключен к 1000Base-T порту (свича, компа или чего ещё)
для режима SGMII SFP-модуль должен быть предварительно также переведён в этот режим. Это делается через запись регистров по I2C на SFP-разъеме. Однако режим SGMII умеют далеко не все модули.

через MDIO вы видите какой линк? 1000Base-X?

убедитесь, что когда вы подключаете чипскоп к INT_GMII_RX_ERR, ваше подключение чипскопом не вышибает никакие констрейны типа RLOC-ов.
подключитесь к TEMAC со стороны localink-а, что видно там?


У меня модель ST-1000FT (1000BASE-T) DS Telecom.
Другой конец кабеля вставляю в сетевую карту компа.
Через MDIO вижу, что в статусном регистре (1) выставлены биты: Link is UP, AutoNeg ability, AutoNeg completed.

На всякий случай привожу дамп регистров (Описаны в PG047 стр 56).
Код
0.    0x1140
1.    0x01EC
2.    0x0000
3.    0x0000
4.    0x01A0
5.    0x41A0
6.    0x0004
7.    0x0000
8.    0x0000
9.    0x0000
10.    0x0000
11.    0x0000
12.    0x0000
13.    0x0000
14.    0x0000
15.    0x8000
16.    0x0003


Про вышибание констрейнов могу сказать только то, что в UCF кроме внешних выводов для ethernet я больше ничего не задавал. И если chipscope подключен, то loopback-тесты работают.

По поводу подключение к TEMAC со стороны localink-а: я могу подключиться только со стороны AXI. Не совсем понял Ваш вопрос.

Цитата(vitan @ Feb 24 2014, 00:10) *
Если это медь, то умеет, причем по умолчанию ничего прописывать обычно не надо.


Вообще, модель SFP неплохо бы в студию.
Go to the top of the page
 
+Quote Post
vitan
сообщение Feb 24 2014, 18:33
Сообщение #8


не указал(а) ничего о себе.
******

Группа: Свой
Сообщений: 3 325
Регистрация: 6-04-06
Пользователь №: 15 887



У Вас там внутри стоит 88е1111, это видно по регистрам. Так вот, он не может работать ни в каком другом режиме на медь, кроме как SGMII (будучи установленным в SFP, ессно). Поэтому см. пост №3. Если нет оптики, то придется отлаживать SGMII.
Go to the top of the page
 
+Quote Post
aabmail
сообщение Feb 25 2014, 11:09
Сообщение #9


Местный
***

Группа: Свой
Сообщений: 210
Регистрация: 4-06-08
Из: Москва
Пользователь №: 38 056



Цитата(vitan @ Feb 24 2014, 21:33) *
У Вас там внутри стоит 88е1111, это видно по регистрам. Так вот, он не может работать ни в каком другом режиме на медь, кроме как SGMII (будучи установленным в SFP, ессно). Поэтому см. пост №3. Если нет оптики, то придется отлаживать SGMII.


Внутри чего по-вашему стоит 88е1111, в SFP? Если SFP выдернуть, то регистры все равно будут считываться, только упадеть link и autonegatiation (и еще что-то...).
По-моему это регистры ядра 1000BASE-X PCS/PMA or SGMII, которое входит в состав axi_ethernet (режим 4 или 5).

Хотя в целом м.б. вы действительно правы, что стоит копать под SGMII.
Сейчас прикручиваю в ISE отдельно взятое IP Core 1000BASE-X PCS/PMA or SGMII к GTX-трансиверу, ну и к SFP.
Go to the top of the page
 
+Quote Post
vitan
сообщение Feb 25 2014, 18:50
Сообщение #10


не указал(а) ничего о себе.
******

Группа: Свой
Сообщений: 3 325
Регистрация: 6-04-06
Пользователь №: 15 887



Цитата(aabmail @ Feb 25 2014, 15:09) *
Внутри чего по-вашему стоит 88е1111, в SFP?

Да. И он работает в SGMII.
Go to the top of the page
 
+Quote Post
aabmail
сообщение Mar 5 2014, 08:38
Сообщение #11


Местный
***

Группа: Свой
Сообщений: 210
Регистрация: 4-06-08
Из: Москва
Пользователь №: 38 056



lwIP вчера потихоньку начала подниматься sm.gif
Дело в том, что оказывается на плате перевернута входная диффпара RX.

"Перевернуть" диффпару обратно возможно, если подать единицу на rx_polarity.
однако если использовать axi_ethernet в режиме SGMII или 1000BASE-X, то добраться до rx_polarity невозможно, так как GTX-трансивер вместе с rx_polarity сидит внутри axi_ethernet. Поэтому пришлось взять axi_ethernet в режиме GMII, и отдельно присодинить к нему IP-ядро LogiCORE IP Ethernet 1000BASE-X PCS/PMA or SGMII (в режиме SGMII). С другой стороны к PCS/PMA прикрутил GTX-трансивер.

Ping появился, правда периодически пропадает.
Если кто-нибудь может подсказать, с чем это может быть связано, буду очень признателен.

ЗЫ. Медные SFP:
ST-1000FT и GLC-T (китайская подделка CISCO) работают.
D-Link DGS-712 и GLC-T (настоящая CISCO) не работают.
Go to the top of the page
 
+Quote Post
gosha-z
сообщение Mar 5 2014, 08:50
Сообщение #12


Местный
***

Группа: Свой
Сообщений: 327
Регистрация: 30-10-05
Пользователь №: 10 288



"Настоящая" Cisco, AFAIR - Finisar sm.gif
Go to the top of the page
 
+Quote Post
dmitry-tomsk
сообщение Dec 23 2014, 18:08
Сообщение #13


Знающий
****

Группа: Свой
Сообщений: 672
Регистрация: 18-02-05
Пользователь №: 2 741



Коллеги, а какая версия софта у вас? У меня planahead 14.7 не хочет делать generate output product для axi_ethernet, win7 ошибку выдаёт на xst.exe.
Может дело в лицензии? Я взял с закромов для 14.4.
Go to the top of the page
 
+Quote Post
Golikov A.
сообщение Dec 23 2014, 18:29
Сообщение #14


Гуру
******

Группа: Свой
Сообщений: 4 256
Регистрация: 17-02-06
Пользователь №: 14 454



винда не 64 битная?
ставьте виртуальную машину и 32 винXP, владельцы 64 битных виндов страдают...
Go to the top of the page
 
+Quote Post
dmitry-tomsk
сообщение Dec 23 2014, 18:31
Сообщение #15


Знающий
****

Группа: Свой
Сообщений: 672
Регистрация: 18-02-05
Пользователь №: 2 741



Цитата(Golikov A. @ Dec 23 2014, 21:29) *
винда не 64 битная?
ставьте виртуальную машину и 32 винXP, владельцы 64 битных виндов страдают...

Спасибо,
а если под opensuse 64, сгенерит?
Go to the top of the page
 
+Quote Post

2 страниц V   1 2 >
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 22nd July 2025 - 15:51
Рейтинг@Mail.ru


Страница сгенерированна за 0.01506 секунд с 7
ELECTRONIX ©2004-2016