|
88E1111 + Cyclone 4, не отправляет |
|
|
|
May 16 2016, 17:49
|

фанат Linux'а
    
Группа: Свой
Сообщений: 1 353
Регистрация: 23-10-05
Из: SPB.RU
Пользователь №: 10 008

|
Есть самодельная плата с Cyclone IV + 88E1111, соединены через GMII/RGMII (разведены все 8 линий, т.е. можно выбрать GMII или RGMII). Что работает: Работает приём (вижу в Signal Tap правильные посылки и байты). Работает copper line loopback - на сетевой карте ПК вижу отправленные пакеты продублированы - это работает платка и 88E1111 возвращает пакеты в целости. Стало быть линия ПК-PHY работает, до ПЛИС данные долетают. А вот какая проблема: не отправляет! Вообще! MAC interface loopback если включить - отправка есть а обратно не прилетает, собственно как и из линии... Кварц стоит на 25 МГц от материнской платы выдернул - чтобы уж точно кварц подходил - ведь в материнке же он работал! Да и у меня вроде работает. Говорят может не отправлять если кварц неподходящей стабильности. Пошел я дальше: сделал Nios 2 процессор в этой ПЛИСине, сделал программно "serial management interface" и выкачал через MDC/MDIO регистры. Они у меня получились такие: Код 00: 0x0000 = 0000_0000_0000_0000 01: 0x796D = 0111_1001_0110_1101 02: 0x0141 = 0000_0001_0100_0001 03: 0x0CC2 = 0000_1100_1100_0010 04: 0x0DE1 = 0000_1101_1110_0001 05: 0xCDE1 = 1100_1101_1110_0001 06: 0x000D = 0000_0000_0000_1101 07: 0x2001 = 0010_0000_0000_0001 08: 0x43D7 = 0100_0011_1101_0111 09: 0x0F00 = 0000_1111_0000_0000 10: 0x7C00 = 0111_1100_0000_0000 11: 0x0000 = 0000_0000_0000_0000 12: 0x0000 = 0000_0000_0000_0000 13: 0x0000 = 0000_0000_0000_0000 14: 0x0000 = 0000_0000_0000_0000 15: 0x3000 = 0011_0000_0000_0000 16: 0x0068 = 0000_0000_0110_1000 17: 0xAC40 = 1010_1100_0100_0000 18: 0x0000 = 0000_0000_0000_0000 19: 0x0000 = 0000_0000_0000_0000 20: 0x0C71 = 0000_1100_0111_0001 <- младшая единичка говорит что передатчик включен (1 = Transmitter Enable) 21: 0x0000 = 0000_0000_0000_0000 22: 0x0000 = 0000_0000_0000_0000 23: 0x0000 = 0000_0000_0000_0000 24: 0x4100 = 0100_0001_0000_0000 25: 0x0000 = 0000_0000_0000_0000 26: 0x000A = 0000_0000_0000_1010 27: 0x808F = 1000_0000_1000_1111 28: 0x0000 = 0000_0000_0000_0000 29: 0x0000 = 0000_0000_0000_0000 30: 0x0000 = 0000_0000_0000_0000 31: 0x0000 = 0000_0000_0000_0000 Код int main() { int stage = 0; while(true) { if(stage == 0) { printf("!!!\n\r", stage); smi_write(0, 0, 0x0040); smi_write(0, 20, 0x0C71); unsigned char r0 = smi_read(0, 0); smi_write(0, 0, r0 & (1<<15)); }
for(int reg = 0; reg < 32; reg++) { unsigned short data = smi_read(0, reg); printf("%02d: 0x%04X = ", reg, data); print_bin2(data, 16); printf("\n\r"); } printf("----- %d\n\r", stage); for(int i = 0; i < (ALT_CPU_CPU_FREQ / 5); i++);
stage++; if(stage > 10) stage = 0; } return 0; } Тут много кто с этим PHY работает (88E1111), какие вы регистры настраиваете и какими значениями? Меня интересует режим только 1 гигабит, без возможности 10/100, по меди 4 пары.
Сообщение отредактировал AVR - May 16 2016, 18:22
--------------------
|
|
|
|
|
 |
Ответов
|
Jun 6 2016, 08:40
|

фанат Linux'а
    
Группа: Свой
Сообщений: 1 353
Регистрация: 23-10-05
Из: SPB.RU
Пользователь №: 10 008

|
Цитата(Wic @ Jun 6 2016, 11:27)  Извините за глупый вопрос. А пробовали проверять на готовом проекте? Сам начинал со стокового проекта данного китаУ меня прямо сейчас есть Cyclone IV GX Starter Kit и на нем я уже давно проверил проект Nios 2 + 88E1111 только там разведен лишь SGMII. Я повторил как мартышка туториал и оно заработало, а вот сделать так чтобы работать без Nios 2 через свою логику так еще и через SGMII мне не удалось! Ключевой момент в том что разведен там исключительно SGMII, а GMII/RGMII они не подключали вообще. Хотел сначала сделать так чтобы проверить связку Cyclone IV через SGMII с 88E1111, чтобы потом реализовать свою платку именно так же через SGMII (если было бы проверено), но так и не удалось врубиться как же работать через SGMII... Поэтому сделал свою платку, даже могу часть где подключаю ПЛИС + 88E1111 показать, проверил заинтересованный коллега - ошибок не увидел. У меня есть возможность по сути работать в режимах GMII и RGMII. Надо попробовать, вдруг у меня линии битые и если повезет то в RGMII заработает. Кажется выше я упоминал что через RMII таким образом я уже работал с ПЛИС, но это 100 мегабит и другой PHY другая ПЛИС. Там я сделал самодельный MAC и раз оно так хорошо работало то видимо контрольные суммы и пакеты формировать научился
--------------------
|
|
|
|
|
Jun 6 2016, 13:17
|
Группа: Участник
Сообщений: 6
Регистрация: 2-11-05
Пользователь №: 10 411

|
Цитата(AVR @ Jun 6 2016, 11:40)  Поэтому сделал свою платку, даже могу часть где подключаю ПЛИС + 88E1111 показать, проверил заинтересованный коллега - ошибок не увидел. У меня есть возможность по сути работать в режимах GMII и RGMII. Надо попробовать, вдруг у меня линии битые и если повезет то в RGMII заработает. А можете прислать или здесь выложить схему соединения плис с марвелом и часть из qsys, что относится к связке ниос+tse+всё остальное)) SGDMA используете? потому как выложил ранее абсолютно рабочую конфигурацию для интерфейса GMII, и напрашивается вывод, что копаем не в том месте.
|
|
|
|
|
Jun 6 2016, 14:37
|
Группа: Участник
Сообщений: 6
Регистрация: 2-11-05
Пользователь №: 10 411

|
Цитата(AVR @ Jun 6 2016, 16:30)  Я не использую Nios, хотя когда разбирался - пытался его туда воткнуть вместе с TSE, думал что может помочь или упростить отладку. С Ethernet вполне реально работать со своим простейшим MAC. Вечером обязательно скину схему! Уже года два надеюсь, что вот ещё немножко, появится время - сяду и напишу свой МАС вместо TSE.... Эх, завидую белой завистью, что у Вас руки до этого дошли! Давайте схему, а там посмотрим, может для начала с TSE будет проще - хотя бы убедиться, что с марвелом всё хорошо)))
|
|
|
|
|
Jun 6 2016, 20:44
|

фанат Linux'а
    
Группа: Свой
Сообщений: 1 353
Регистрация: 23-10-05
Из: SPB.RU
Пользователь №: 10 008

|
Цитата(abarsky111 @ Jun 6 2016, 17:37)  Уже года два надеюсь, что вот ещё немножко, появится время - сяду и напишу свой МАС вместо TSE.... Эх, завидую белой завистью, что у Вас руки до этого дошли! У меня настолько примитивный MAC, что он лишь формировалка UDP и считалка IP CRC и FCS... Цитата(abarsky111 @ Jun 6 2016, 17:37)  Давайте схему, а там посмотрим, может для начала с TSE будет проще - хотя бы убедиться, что с марвелом всё хорошо))) TSE можно задействовать без Nios 2 и без SGDMA и прочих ужасов? У меня не влезает туториаловский проект, как я ни пытался всё до минимума ужать... Прилагаю часть схемы где на первой странице ПЛИС, а на второй - PHY...
--------------------
|
|
|
|
Сообщений в этой теме
AVR 88E1111 + Cyclone 4 May 16 2016, 17:49 _Anatoliy Цитата(AVR @ May 16 2016, 20:49)
У меня ... May 16 2016, 18:32 AVR Цитата(_Anatoliy @ May 16 2016, 21:32) У ... May 16 2016, 18:41  Jury093 Цитата(AVR @ May 16 2016, 21:41) Он разве... May 16 2016, 20:53  _Anatoliy Цитата(AVR @ May 16 2016, 21:41) Он разве... May 17 2016, 04:28 doom13 Цитата(AVR @ May 16 2016, 20:49) Есть сам... May 16 2016, 19:31 AVR Цитата(doom13 @ May 16 2016, 22:31) А как... May 16 2016, 19:34 doom13 А с ресетом всё в порядке? Если память не изменяет... May 16 2016, 19:58 AVR Цитата(doom13 @ May 16 2016, 22:58) А с р... May 16 2016, 19:59  doom13 Цитата(AVR @ May 16 2016, 22:59) Стоит ми... May 16 2016, 20:14   AVR Цитата(doom13 @ May 16 2016, 23:14) Согла... May 28 2016, 20:24    krux Цитата(AVR @ May 28 2016, 23:24) Пока не ... May 29 2016, 13:57     AVR Цитата(krux @ May 29 2016, 16:57) ему над... May 29 2016, 15:13 dxp У меня была похожая ситуация. Loopback через линию... May 17 2016, 06:27 _Anatoliy А по ходу вопрос чем вызвана любовь к многоножкам?... May 17 2016, 09:08  AVR Цитата(_Anatoliy @ May 17 2016, 12:08) А ... May 17 2016, 09:59 abarsky111 RE: 88E1111 + Cyclone 4 May 30 2016, 15:42 AVR Цитата(abarsky111 @ May 30 2016, 18:42) Н... Jun 4 2016, 20:19  doom13 Цитата(AVR @ Jun 4 2016, 23:19) А что зна... Jun 6 2016, 07:00   AVR Цитата(doom13 @ Jun 6 2016, 10:00) RGMII ... Jun 6 2016, 07:20 Wic AVR, надеюсь самописные модули были проверены на д... Jun 7 2016, 09:21 AVR Цитата(Wic @ Jun 7 2016, 12:21) AVR, наде... Jun 7 2016, 10:06 krux я некоторое время назад уже выкладывал на форум св... Jun 7 2016, 09:53
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|