|
Microblaze + Marvell phy + LwIP, вопрос к тем кто поднимал подобную систему |
|
|
|
Apr 20 2013, 18:49
|
Гуру
     
Группа: Свой
Сообщений: 4 256
Регистрация: 17-02-06
Пользователь №: 14 454

|
Всем привет, собственно поднимаю езернет на тренцовой платке, Имею спартан 6 с 2 блоками ДДР и phy 88Е1111 от марвела. В плисину запихал EMAClite, инициализировал его и попробовал послать данные в компьютер - все получилось, пакет был левый, но данные я принял.
И вот тут начались вопросы. 1. между spartan и phy идет GMII, в EMACLite есть только MII, и я не понимаю в какой момент и как PHY это просек. Есть какой то режим автоопределения интерфейса, или мне просто повезло? Как сделать везение постоянным?
2. настройка этого marvell, его полную карту регистров можно получить только после подписания договора о неразглашении (что думаю быстро нереально), но вроде бы первые 6 регистров во всех PHY заданы стандартом. Так ли это? Хватит ли для боле менее стандартного начала работы этих 6 регистров?
3. LwIP подключив библиотеку, я получил размер кода 57 КБайт (секция .text) , я что -то сделал не так? Или если связался с этим кодом то сразу надо понимать что придется программу запускать из DDR, что надо писать загрузчик? Я в DDR ничего не могу переложить, линкеру говорю положи туда он соглашается, но при попытке залить прошивку в ПЛИС ругается что сегменты не лезут в память, почему?!
4. LwIP идет в ксалинксе библиотекой, что делать с драйвером phy в этом случае? он какой то стандартный или считается что я настрою phy до запуска LwIP?
не хватает очень диалога с людьми которые это уже сделали... хочется не просто запустить чужой пример, а разобраться в том что твориться внутри проца...
|
|
|
|
|
 |
Ответов
|
Apr 21 2013, 09:59
|
Гуру
     
Группа: Свой
Сообщений: 4 256
Регистрация: 17-02-06
Пользователь №: 14 454

|
Некоторые ответы на заданные ранее вопросы, может кто-то будет задаваться теме же вопросами: 1. Phy marvell 88e1111 при помощи внешних ножек (или внутренних регистров) может быть сконфигурен на вид носителя (медь - оптика) и протокол связи (GMII/MII RGMII) и так далее... При этом GMII/MII идет всегда единой связкой. Если phy подключится на 1000MB ethernet он будет работать по GMII, на 10/100 по MII. При этом поскольку клок для GMII и MII разные с phy выходят в mac. То Даже включившись на GMII на MII будет клок (есть возможности настройки) дальше я так понимаю по тому на какой из клоков засинхронизируется MAC марвел и отличает по какой шине 8бит GMII или 4MII идет обмен. Это при передаче, при приеме МАК вроде как генерит клок, следовательно по частоте 2.5 25 125 можно отличить интерфейсы. Вроде как вот так работает эта магия.
2. Первые 6 регистров управляют езернетом до 100 МБит, под 1000 МБит выделен дополнительный 10 и 9 регистр, именно там можно запретить переключатся на 1000 МБитный езернет. Занулив 9 регистр вы получите 100 МБитное phy, после этого надо будет еще выставить в единицу 15 бит в 0 регистре, чтобы phy софтварно рестартанулось. (предпочтительный режим работы 10-100-1000 также можно выбрать и конфигурационными пинами, но для меня не актуально, схема уже распаяна.)
Подключил MACLite к phy, а его к ноутбуку, определилась макс возможная и предпочтительная скорость 1000 МБит, и дальше в МАК читались пустые данные, и пропадали записанные phy, так как MACLite сидит на MII и не способен принимать 1000 МБит. Переконфигурил 9 регистр, и данные полились рекой.
|
|
|
|
Сообщений в этой теме
Golikov A. Microblaze + Marvell phy + LwIP Apr 20 2013, 18:49 rsv А плата своя, или какая то отладка?
П1. А tri mode... Apr 20 2013, 19:30 Golikov A. плата от trenz, это не отладка, а как бы готовый м... Apr 20 2013, 19:56 rsv Почему работает phy - не знаю. Но тут http://ru.w... Apr 20 2013, 20:13 Golikov A. вот я как то читаю про МII GMII RMII и прочее, но ... Apr 20 2013, 20:36 rsv Скриншот бы посмотреть от генератора линкерскрипта... Apr 20 2013, 20:58 Golikov A. кнопка Program FPGA вообще может грузить код секци... Apr 20 2013, 21:24 rsv Надо все секции в ддр складывать, совсем все. А в ... Apr 20 2013, 21:28 Golikov A. то есть про идею использовать 2 внутренниии шины д... Apr 21 2013, 04:13 Golikov A. НАРОД! можно для тупых, как bootloop использов... Apr 21 2013, 06:13 Golikov A. Теперь еще сообщение о том как работать черезе boo... Apr 21 2013, 11:27 Acvarif Цитата(Golikov A. @ Apr 21 2013, 14:27) 1... Apr 23 2013, 05:25  Golikov A. Цитата(Acvarif @ Apr 23 2013, 09:25) Нужн... Apr 23 2013, 16:14 knk К вашей плате идёт 2 проекта пользующих Ethernet и... Apr 23 2013, 13:00 knk Утилита есть objdump - дампнуть нужные секции и з... Apr 24 2013, 06:39 Golikov A. а в ядро надо какую то корку работы с флэшкой пиха... Apr 24 2013, 09:43 knk axi_quad_spi помоему, в проекте который я приводил... Apr 24 2013, 11:18 Golikov A. я пока это все отложил на будущее, пока надо други... Apr 24 2013, 11:32 knk ELF формат хорошо описан и довольно легко разбирае... Apr 24 2013, 13:07 Golikov A. Ок. принято спасибо.
Жаль ксалинкс не предусмотрел... Apr 24 2013, 13:56 knk Слишком много вариантов - негибкое решение получит... Apr 24 2013, 15:07 Golikov A. Народ lwip чет ад какой то!
Скажите мне ARP у... Apr 25 2013, 18:31 rsv Может маска не та настроена. Проще всего начать с ... Apr 25 2013, 19:51 Golikov A. так что не так нашел
LwIP внутри имеет функцию низ... Apr 25 2013, 19:53
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|