vadimuzzz 0 30 октября, 2014 Опубликовано 30 октября, 2014 · Жалоба rx_clk короче чем rx_d должно быть наоборот, см. аттач tx_en в нуле а вот с tx_d самая проблема, эти сигналы всегда висят в нуле, это видно в сигналтабе, я их смотрю непосредственно как выход модуля tse. в сигналтапе их вы напрямую не увидите - это шина ddr. компилятор их тупо выкинет с соответствующим ворнингом. посмотреть txd можно на входе ddr-регистра, либо осциллографом RGMII_Timing_Solutions.pdf Data_Skew_Information.7z Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
alexPec 3 6 ноября, 2014 Опубликовано 6 ноября, 2014 · Жалоба Всем доброго дня. Возникла проблема с эзернетом от opencores, раньше использовал это ядро- такого не было. Инициализирую PHY, линк есть, инициализирую MAC теми же значениями что и в предыдущем проекте. Регистрирую прерывание на прием пакетов, завожу один дескриптор на прием, указываю там буфер. В результате когда делаю пинг процессор попадает в прерывание по приему, читает источник IRQ и вместо бита RXC (принят пакет) или RXE (ошибка) вижу установленный бит BUSY : This bit indicates that a buffer was received and discarded due to a lack of buffers. It is cleared by writing 1 to it. This bit appears regardless to the IRQ bits in the Receive or Transmit Buffer Descriptors. Читаю регистр CTRL дескриптора функцией IORD_ETH_OCM_DESC_CTRL(ETH_OCM_0_BASE, 1) - получаю значение 0xe000, установленные биты означают: - The data buffer is empty (and ready for receiving data) or currently receiving data. - When data is received (or error occurs), an RXF interrupt will be asserted (See 3.2 INT_SOURCE (Interrupt Source Register) for more details). - This buffer descriptor is the last descriptor in the buffer descriptor table. After this buffer descriptor is used, the first Rx buffer descriptor in the table will be used again. Указатель на буфер в регистре правильный. Что смотреть и куда копать - думаю, а пока решил спросить... Раньше это ядро запускал на Q9.1 - сходу заработало, никаких проблем не было. Сейчас запускаю в QSYS на Q13.1. UPD: прочитал еще doc-файл по авалон-интерфейсу, там написано что бит BUSY ставится при переполнении фифо на RX. Похоже действительно фифо переполняется, а прерывания по приему пакета не идут, только по переполнению фифо. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Everest 0 19 декабря, 2014 Опубликовано 19 декабря, 2014 (изменено) · Жалоба Добрый вечер , никто на форуме не запускал аппаратно под новый Quartus 13.1 или 14 проект UDP offload example. http://www.alterawiki.com/wiki/Nios_II_UDP_Offload_Example Плата основана на Cyclone 4 , имеет SDRAM , вместо DDR SDRAM 2. Я так понимаю на TSE также нужно покупать лицензию , ну или лечить. Микросхема dp83640 с интерфейсом rmii. На форуме альтеры также нашёл переходник mii to rmii. Qsys + переходник TSE_Ethernet.rar Изменено 19 декабря, 2014 пользователем everest Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
doom13 0 23 декабря, 2014 Опубликовано 23 декабря, 2014 · Жалоба Добрый вечер , никто на форуме не запускал аппаратно под новый Quartus 13.1 или 14 проект UDP offload example. http://www.alterawiki.com/wiki/Nios_II_UDP_Offload_Example Плата основана на Cyclone 4 , имеет SDRAM , вместо DDR SDRAM 2. Я так понимаю на TSE также нужно покупать лицензию , ну или лечить. Микросхема dp83640 с интерфейсом rmii. На форуме альтеры также нашёл переходник mii to rmii. Qsys + переходник А какие у Вас вопросы? Я свой проект с TSE v14.0 запускал, счас уже всё работает. Основная проблема оказалась в неправильном подключении TSE. После изменения его интерфейса подключения неправильно понял назначение портов и не работало, пока не залез внутрь TSE и не разобрался - что и куда надо подключать. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
MrSeN 0 15 января, 2015 Опубликовано 15 января, 2015 · Жалоба А ни у кого нету примера с работающим приемом? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Everest 0 11 марта, 2015 Опубликовано 11 марта, 2015 (изменено) · Жалоба А какие у Вас вопросы? Я свой проект с TSE v14.0 запускал, счас уже всё работает. Основная проблема оказалась в неправильном подключении TSE. После изменения его интерфейса подключения неправильно понял назначение портов и не работало, пока не залез внутрь TSE и не разобрался - что и куда надо подключать. Взял готовый проект с сайта AlteraWiki. Собрал все в qsys. При компиляции в Eclipse выдаёт следующие ошибки. Description Resource Path Location Type make: *** [tut_app.elf] Error 1 tut_app C/C++ Problem undefined reference to `install_menu' demo_control.c /tut_app line 96 C/C++ Problem undefined reference to `stooges' tut_app line 0 C/C++ Problem http://www.alteraforum.com/forum/showthread.php?t=30536 http://www.alteraforum.com/forum/showthread.php?t=45601 В чём может быть проблема? Изменено 11 марта, 2015 пользователем everest Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
doom13 0 13 марта, 2015 Опубликовано 13 марта, 2015 · Жалоба Взял готовый проект с сайта AlteraWiki. Уберите из проекта всё лишнее, оставте сам процессор, память, TSE, SgDMA TX, SgDMA RX, descriptor_memory. Разберитесь с работой SgDMA (выше в теме был пример) и конфигурацией TSE. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Everest 0 14 марта, 2015 Опубликовано 14 марта, 2015 (изменено) · Жалоба Уберите из проекта всё лишнее, оставте сам процессор, память, TSE, SgDMA TX, SgDMA RX, descriptor_memory. Разберитесь с работой SgDMA (выше в теме был пример) и конфигурацией TSE. Спасибо за ответ. Как раз таки это все заработало на 11-ой версии Quartus на примере веб-сервера. (UCOS + NicheStack) Затем и lwip прикрутил без ос. Правда lwip + FreeRTOS так и не запустился, но это уже другая история... Интересовала именно аппаратная реализация UDP с кучей второстепенных блоков. Не очень понятна разница между данной версией на сайте альтеры и реализацией UDP у уважаемого vadimuzz, ужатого в один блок. Вроде бы и все ветки на форуме перечитал, посвящённые аппаратной реализацией udp протокола. Видимо я не очень-то хорошо разобрался , пойду дальше изучать. Изменено 14 марта, 2015 пользователем everest Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
doom13 0 14 марта, 2015 Опубликовано 14 марта, 2015 · Жалоба Интересовала именно аппаратная реализация UDP с кучей второстепенных блоков. Не очень понятна разница между данной версией на сайте альтеры и реализацией UDP у уважаемого vadimuzz, ужатого в один блок. Формирование UDP-пакета (аппаратное) реализует один блок - udp_offload, всё остальное вспомогательные модули. На udp_offload подаются данные, он добавляет UDP-шапку и выдаёт на TSE, если работает несколько передатчиков - тогда на MAC заводятся через мультиплексор. Я его (udp_offload) допиливал под себя, чтобы была возможность посылать фрагментированный пакет. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Everest 0 14 марта, 2015 Опубликовано 14 марта, 2015 · Жалоба Формирование UDP-пакета (аппаратное) реализует один блок - udp_offload, всё остальное вспомогательные модули. На udp_offload подаются данные, он добавляет UDP-шапку и выдаёт на TSE, если работает несколько передатчиков - тогда на MAC заводятся через мультиплексор. Я его (udp_offload) допиливал под себя, чтобы была возможность посылать фрагментированный пакет. Стало более яснее, то есть по идее можно сделать на примере alterawiki и примера vadimuzz такой же блок (например udp_rx_offload) , но для приёма и обработки UDP пакета и при необходимости добавить демультиплексор. Естественно придётся писать драйвер. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
doom13 0 14 марта, 2015 Опубликовано 14 марта, 2015 · Жалоба Стало более яснее, то есть по идее можно сделать на примере alterawiki и примера vadimuzz такой же блок (например udp_rx_offload) , но для приёма и обработки UDP пакета и при необходимости добавить демультиплексор. Естественно придётся писать драйвер. Пример vadimuzz достаточен, чтоб запустить аппаратное формирование UDP и выдачу в сеть. По поводу приёма не понял, Вам нужен приёмник на логике? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Everest 0 14 марта, 2015 Опубликовано 14 марта, 2015 · Жалоба Пример vadimuzz достаточен, чтоб запустить аппаратное формирование UDP и выдачу в сеть. По поводу приёма не понял, Вам нужен приёмник на логике? Да именно, было бы интересно сделать(переделать) аппаратный приём и обработку UDP пакетов на основе того же примера с сайта альтеры_вики. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
doom13 0 14 марта, 2015 Опубликовано 14 марта, 2015 · Жалоба Да именно, было бы интересно сделать(переделать) аппаратный приём и обработку UDP пакетов на основе того же примера с сайта альтеры_вики. Но если нужен даже минимальный стек IP протоколов, то реализовать аппаратно будет непростая задача. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Creamman 0 7 апреля, 2015 Опубликовано 7 апреля, 2015 · Жалоба Здравствуйте!) А каким образом задать для ПЛИС MAC и IP адрес. Cyclone III (Triple Speed Ethernet) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Unfog 0 7 августа, 2015 Опубликовано 7 августа, 2015 (изменено) · Жалоба Уважаемые гуру, помогите, пожалуйста, с проблемкой =) Имеется кит на Stratix 3 с 88е1111. В идеале нужно сделать UDP с обменом по SGMII. Что получилось: Конфиг через MDIO, связь через MII. Проблем нет, пакеты отправляются, принимаются. Т. к. я раньше не имел дело с SGMII решил использовать TSE. В перспективе в Qsys, но т.к. с SGDMA опять же не встречался, решил сначала запустить TSE без NIOS. И тут затык =( TSE сконфигуринован на small 10/100MAC. На входы вроде подаю правильно, а он молчит. В какую сторону копать? clock - 50 МГц Изменено 7 августа, 2015 пользователем Unfog Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться