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

 
 
> Гигабит Ethernet: RGMII и PHY 88e1111. Вопросы по взаимодействию
gin
сообщение Oct 9 2017, 07:40
Сообщение #1


Частый гость
**

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



Добрый день, господа!
Появилась у меня задача - написать простой MAC для связи FPGA c ПК по Гигабит Ethernet. Реализовано все это будет на Cyclone 4 (плата DE2 115).
Вроде задача не сложная, но возник вопрос по взаимодействию с PHY (Marvell 88e1111), который установлен на плате.
Обмен данных с PHY будет организован по интерфейсу RGMII. Собственно вопросы следующие:

1. Как правильно подавать управляющий сигнал TX_EN (transmit enable)?
В стандарте на Ethernet (параграф 22) есть следующее описание -
Код
It shall
be asserted by the Reconciliation sublayer synchronously with the first nibble of the preamble and shall
remain asserted while all nibbles to be transmitted are presented to the MII


Т.е. этим сигналом должны выделяются все байты преамбулы, судя из описания и картинки. Но в то же время, аналогичный сигнал RX_DV (Receive Data Valid), который идет от PHY, судя по описанию, устанавливается несколько иначе -
Код
RX_DV must encompass the frame,
starting no later than the Start Frame Delimiter (SFD) and excluding any End-of-Frame delimiter.


Здесь (при приеме от PHY) преамбула не обязана быть выделена этим сигналом. Выделен обязательно должен быть только байт SFD, идущий непосредственно переда байтами данных.

2. Правильно ли я понял, что получается немного разная логика формирования управляющих сигналов при приеме и передаче? Или я где то ошибся и есть еще какие то тонкости?

3. И как быть с байтом END OF FRAME?
При приеме данных от PHY в описании есть явные указания на то, что он не выделяется сигналом RX_DV.
А вот при передаче данных на PHY про это ничего не написано. Этот байт также не выделяется стробом TX_EN? Или я опять что то упускаю?

Заранее спасибо!
Эскизы прикрепленных изображений
Прикрепленное изображение
Прикрепленное изображение
 
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
gin
сообщение Mar 21 2018, 17:25
Сообщение #2


Частый гость
**

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



В общем в прошлый раз все настроил, написал свой MAC (IPv4/UDP) на прием и передачу. Все работало, все было хорошо.
Но! Забыл я про народную мудрость - "не трожь аппаратуру, и она в ответ тебя не обидит" smile3046.gif Решил поиграться с регистрами PHY 88e1111 на плате DE2-115. Ну и в итоге все поломал. Ethernet мой теперь не работает.
Сейчас пытаюсь починить, но что то не выходит.
Записываю в PHY значения регистров в следующей последовательности:

Reg22 = 0x0000 - установка 0-й страницы
Reg27 = 0x848B - отключаю автовыбор медь/оптика, полярность - active low, режим RGMII to copper
Reg20 = 0x0C71 - задержки данных относительно клоков здесь не меняю (оставляю как было по умолчанию), устанавливаю скорость 1000Mb/s, устанавливаю бит transmit enable
Reg0 = 0x9140 - Тоже ничего не меняю, беру стандартное значение + бит 15 ставлю в 1, запуская ресет.

В итоге ничего не работает (ни прием, ни передача) в регистре статуса Reg1 = 0x7949 (когда все работало там было 796D).
Т.е. у PHY не завершен Auto-Negatiation (бит 5 = 0) и нет линка (бит 2 = 0).
Уже пару дней бьюсь. Подскажите, что я делаю не так!

Кстати, когда в регистр 27 пишу 0x048B (включаю автовыбор медь/оптика), то в регистре 1 статуса, значение становится 0x014D. Т.е линк появляется, правда остальное отваливается))
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- gin   Гигабит Ethernet: RGMII и PHY 88e1111. Вопросы по взаимодействию   Oct 9 2017, 07:40
- - XVR   Все правильно. Заметьте - TX_EN является входом PH...   Oct 9 2017, 10:24
- - Kluwert   TX_EN взводится вместе с первым байтом вступления ...   Oct 9 2017, 10:52
|- - AVR   Цитата(Kluwert @ Oct 9 2017, 13:52) реком...   Oct 9 2017, 10:58
||- - Kluwert   Цитата(AVR @ Oct 9 2017, 14:58) Извините ...   Oct 9 2017, 11:04
|- - gin   Цитата(Kluwert @ Oct 9 2017, 13:52) TX_EN...   Oct 9 2017, 12:49
|- - Kluwert   Цитата(gin @ Oct 9 2017, 16:49) Так они в...   Oct 10 2017, 08:48
||- - AVR   Цитата(Kluwert @ Oct 10 2017, 11:48) Если...   Oct 10 2017, 09:36
||- - gin   Цитата(Kluwert @ Oct 10 2017, 11:48) Я не...   Oct 10 2017, 09:42
|- - XVR   Цитата(gin @ Oct 9 2017, 15:49) Например ...   Oct 10 2017, 10:28
|- - gin   Цитата(XVR @ Oct 10 2017, 13:28) Принимай...   Oct 10 2017, 10:47
- - _pv   Цитатавот эти altddio как спасут здесь RGMII по об...   Oct 9 2017, 11:08
- - Magnum   Если завернуть шину данных RXD на TXD и соединить ...   Oct 11 2017, 03:51
- - _pv   0х55 в начале преамбулы вроде бы тянется ещё с тех...   Oct 11 2017, 08:53
|- - gin   Цитата(_pv @ Oct 11 2017, 11:53) 0х55 в н...   Oct 11 2017, 14:58
|- - XVR   Цитата(gin @ Oct 11 2017, 17:58) Возможно...   Oct 11 2017, 15:09
||- - gin   Цитата(XVR @ Oct 11 2017, 18:09) При пере...   Oct 11 2017, 15:19
||- - x736C   Цитата(gin @ Oct 11 2017, 18:19) Спасибо...   Oct 11 2017, 15:53
|||- - gin   Цитата(x736C @ Oct 11 2017, 18:53) https:...   Oct 12 2017, 07:13
||- - XVR   Цитата(gin @ Oct 11 2017, 18:19) Спасибо...   Oct 11 2017, 16:09
|- - Mikhail241   Цитата(gin @ Oct 11 2017, 21:58) Возможно...   Oct 12 2017, 07:29
|- - gin   Цитата(Mikhail241 @ Oct 12 2017, 10:29) h...   Oct 12 2017, 07:47
- - esokol   Регистры микросхемы 88e1111 - Datasheet стр. 118. ...   Oct 13 2017, 11:19
- - BSACPLD   Цитата(gin @ Oct 9 2017, 11:40) Появилась...   Oct 13 2017, 22:36
- - gin   Цитата(esokol @ Oct 13 2017, 14:19) Регис...   Oct 15 2017, 14:04
- - дед   предлагаю пример реализации для Гигабайтного шлейф...   Oct 19 2017, 11:44
- - new123   у меня marvell чуть другой номер на конце, только ...   Mar 22 2018, 18:18
- - Kenav   Считайте регистры состояния, после записи. Меняютс...   Mar 23 2018, 06:52


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

 


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


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