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

 
 
6 страниц V   1 2 3 > »   
Reply to this topicStart new topic
> Stratix II + Ethernet, Need help!
Azatot
сообщение Jan 30 2015, 06:07
Сообщение #1


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

Группа: Участник
Сообщений: 108
Регистрация: 31-01-08
Из: Москва
Пользователь №: 34 633



Всем доброго времени суток!
Имеется отладочная плата SII-DSP-2S60, нужно сделать передачу данных через Ethernet.
С Альтерой только начал работать, раньше не приходилось, как и с ethernet.
Nios II вставить удалось, портами подергать через него.
На плате стоит PHY/MAC SMSC LAN91C111, вроде у Альтеры есть компонент в qsys для интерфейса с ним. Но найти там не могу и как прикрутить не понимаю.
Вообщем скачал кучу документации, но чем дальше читаю, тем больше запутываюсь. Про lwIP и NicheStack посмотрел, но они, я так понимаю, под операционкой управляются. А хотелось бы для начала без ОС обойтись. Да и вообще просто бы эхо сервер для начала сварганить.
Прошу помощи в создании такого проекта. Может кто документацию какую посоветует, где доходчиво объяснено что и как, для таких как я. Или проект есть, который можно изучить и поколупать.
Заранее благодарю откликнувшихся!

Сообщение отредактировал Azatot - Jan 30 2015, 06:08
Go to the top of the page
 
+Quote Post
doom13
сообщение Jan 30 2015, 06:28
Сообщение #2


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

Группа: Свой
Сообщений: 1 404
Регистрация: 11-03-11
Из: Минск, Беларусь
Пользователь №: 63 539



Цитата(Azatot @ Jan 30 2015, 09:07) *
На плате стоит PHY/MAC SMSC LAN91C111, вроде у Альтеры есть компонент в qsys для интерфейса с ним. Но найти там не могу и как прикрутить не понимаю.

Более ранние версии Quartus-a смотрите, в новых этого компонента уже нет (в Q13.0 и Q14.0 точно). Не помню как в Qsys, а в SOPC данное IP точно было.
Go to the top of the page
 
+Quote Post
Azatot
сообщение Jan 30 2015, 06:34
Сообщение #3


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

Группа: Участник
Сообщений: 108
Регистрация: 31-01-08
Из: Москва
Пользователь №: 34 633



Цитата
Более ранние версии Quartus-a смотрите, в новых этого компонента уже нет (в Q13.0 и Q14.0 точно). Не помню как в Qsys, а в SOPC данное IP точно было.

У меня Quartus 11. Там в SOPC Builder есть такой компонент, а в Qsys он чем то заменяется, но чем не очень понятно.
Плата досталась от предыдущего "владельца" так сказать, поэтому никаких примеров к ней нет. Да и на сайте Альтеры ничего путного для этого кита найти не могу.
Go to the top of the page
 
+Quote Post
doom13
сообщение Jan 30 2015, 07:07
Сообщение #4


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

Группа: Свой
Сообщений: 1 404
Регистрация: 11-03-11
Из: Минск, Беларусь
Пользователь №: 63 539



Цитата(Azatot @ Jan 30 2015, 09:34) *
У меня Quartus 11. Там в SOPC Builder есть такой компонент, а в Qsys он чем то заменяется, но чем не очень понятно.
Плата досталась от предыдущего "владельца" так сказать, поэтому никаких примеров к ней нет. Да и на сайте Альтеры ничего путного для этого кита найти не могу.

Ничем не заменяется, его просто выкинули. Но там Host Bus Interface - интерфейс SRAM-памяти (будет виден Nios, как внешняя память, если всё правильно прикрутить), для записи регистров пишем по определённым адресам (у нас LAN91C111 был подключен к DSP от TI по XINT). Думаю, Вам надо сделать простейший переходник на Avalon MM (возможно просто выкинуть шину Avalon наружу) и подключить к нему LAN91C111 и сможете читать/писать его регистры и fifo.
Возможно, получится приспособить под эти цели SDRAM-контроллер.
Go to the top of the page
 
+Quote Post
Azatot
сообщение Jan 30 2015, 07:10
Сообщение #5


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

Группа: Участник
Сообщений: 108
Регистрация: 31-01-08
Из: Москва
Пользователь №: 34 633



Цитата
Думаю, Вам надо сделать простейший переходник на Avalon MM (возможно просто выкинуть шину Avalon наружу) и подключить к нему LAN91C111 и сможете читать/писать его регистры и fifo.

Т.е. надо вывести шину, как порты ввода/вывода (как, например, поморгать светодиодами)?
И, соответственно, по datasheet на LAN91C111 смотреть куда что писать?
Go to the top of the page
 
+Quote Post
doom13
сообщение Jan 30 2015, 07:24
Сообщение #6


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

Группа: Свой
Сообщений: 1 404
Регистрация: 11-03-11
Из: Минск, Беларусь
Пользователь №: 63 539



Цитата(Azatot @ Jan 30 2015, 10:10) *
Т.е. надо вывести шину, как порты ввода/вывода (как, например, поморгать светодиодами)?
И, соответственно, по datasheet на LAN91C111 смотреть куда что писать?

Только, наверное, не просто вывести наружу, а сделать своё ядро avalon_to_lan_bridge. Для него интерфейс со стороны Qsys-системы - Avalon MM Slave, с другой - интерфейс LAN91C111. И там и там есть шина адреса и шина данных, их в своём блоке кидаете "напрямую", а вот для вспомогательных сигналов интерфейсов, возможно, надо будет какую-то логику навернуть. Полученный переходник/контроллер включаете в свою Qsys-систему и из Ниоса видите регистры LAN91C111.
Посмотрите на SDRAM-контроллер в Qsys, не утверждаю, но возможно получится им читать/писать регистры LAN.
Go to the top of the page
 
+Quote Post
Azatot
сообщение Jan 30 2015, 07:40
Сообщение #7


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

Группа: Участник
Сообщений: 108
Регистрация: 31-01-08
Из: Москва
Пользователь №: 34 633



Цитата
Только, наверное, не просто вывести наружу, а сделать своё ядро avalon_to_lan_bridge. Для него интерфейс со стороны Qsys-системы - Avalon MM Slave, с другой - интерфейс LAN91C111. И там и там есть шина адреса и шина данных, их в своём блоке кидаете "напрямую", а вот для вспомогательных сигналов интерфейсов, возможно, надо будет какую-то логику навернуть. Полученный переходник/контроллер включаете в свою Qsys-систему и из Ниоса видите регистры LAN91C111. Посмотрите на SDRAM-контроллер в Qsys, не утверждаю, но возможно получится им читать/писать регистры LAN.

Мда, задача усложнилась еще больше! smile3046.gif Надо еще будет разобраться как ядра свои в Qsys делать, если SDRAM контроллер не подойдет.
А ПО для Niosa, которое может UDP пакеты формировать, можно где-нибудь раздобыть?

Цитата
Ничем не заменяется, его просто выкинули.

Посмотрел, вроде, в Qsys есть такой компонент Generic Tri-State Controller. В его настройках можно выбрать LAN91C111.
Может этот контроллер и подойдет?
Только, что бы проверить, нужна реализация на Nios.
Go to the top of the page
 
+Quote Post
doom13
сообщение Jan 30 2015, 07:47
Сообщение #8


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

Группа: Свой
Сообщений: 1 404
Регистрация: 11-03-11
Из: Минск, Беларусь
Пользователь №: 63 539



Цитата(Azatot @ Jan 30 2015, 10:32) *
Мда, задача усложнилась еще больше! smile3046.gif Надо еще будет разобраться как ядра свои в Qsys делать, если SDRAM контроллер не подойдет.
А ПО для Niosa, которое может UDP пакеты формировать, можно где-нибудь раздобыть?

С построением ядра у Вас всё будет просто, нужно только внутреннюю логику/железо описать (логику "переходника"), далее в Qsys создаёте новый компонент, а ему подсовываете verilog/vhdl - файл.
Да если такой компонент есть в SOPC - сгенерируйте его, если исходники железа окажутся открытыми (а это должно быть так) сделайте на их основе свой компонент для Qsys.


Цитата(Azatot @ Jan 30 2015, 10:40) *
Посмотрел, вроде, в Qsys есть такой компонент Generic Tri-State Controller. В его настройках можно выбрать LAN91C111.
Может этот контроллер и подойдет?

Не знал, раз есть - должен подойти. Ставте и пробуйте посмотреть регистры LAN.
Go to the top of the page
 
+Quote Post
Azatot
сообщение Jan 30 2015, 07:50
Сообщение #9


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

Группа: Участник
Сообщений: 108
Регистрация: 31-01-08
Из: Москва
Пользователь №: 34 633



Цитата
Не знал, раз есть, должен подойти. Ставте и пробуйте посмотреть регистры LAN.

Регистры смотреть через Nios?
Go to the top of the page
 
+Quote Post
doom13
сообщение Jan 30 2015, 07:58
Сообщение #10


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

Группа: Свой
Сообщений: 1 404
Регистрация: 11-03-11
Из: Минск, Беларусь
Пользователь №: 63 539



Цитата(Azatot @ Jan 30 2015, 10:50) *
Регистры смотреть через Nios?

Да, для Ниос он - внешняя память, должно быть доступно через Memory Monitor в Eclipse.
Go to the top of the page
 
+Quote Post
krux
сообщение Jan 30 2015, 08:01
Сообщение #11


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

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



Цитата(Azatot @ Jan 30 2015, 10:40) *
в Qsys есть такой компонент Generic Tri-State Controller. В его настройках можно выбрать LAN91C111.
Может этот контроллер и подойдет?
Только, что бы проверить, нужна реализация на Nios.

подойдёт.
у меня на циклоне-3 такой вариант работал.
единственный момент - нужно иметь возможность дергать аппаратный ресет у LAN91C111 через GPIO из nios.


--------------------
провоцируем неудовлетворенных провокаторов с удовольствием.
Go to the top of the page
 
+Quote Post
Azatot
сообщение Jan 30 2015, 08:11
Сообщение #12


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

Группа: Участник
Сообщений: 108
Регистрация: 31-01-08
Из: Москва
Пользователь №: 34 633



Цитата
подойдёт.
у меня на циклоне-3 такой вариант работал.
единственный момент - нужно иметь возможность дергать аппаратный ресет у LAN91C111 через GPIO из nios.

Я так понимаю, что Generic Tri-State Controller нужно еще подключать к Tristate Conduit Bridge, а уже с него выходы на LAN91C111 назначать (а ресет LANа, соответственно, вообще отдельным пином)?
Go to the top of the page
 
+Quote Post
doom13
сообщение Jan 30 2015, 08:16
Сообщение #13


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

Группа: Свой
Сообщений: 1 404
Регистрация: 11-03-11
Из: Минск, Беларусь
Пользователь №: 63 539



Цитата(Azatot @ Jan 30 2015, 11:11) *
Я так понимаю, что Generic Tri-State Controller нужно еще подключать к Tristate Conduit Bridge, а уже с него выходы на LAN91C111 назначать (а ресет LANа, соответственно, вообще отдельным пином)?

Да, надо.
Go to the top of the page
 
+Quote Post
Azatot
сообщение Jan 30 2015, 08:29
Сообщение #14


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

Группа: Участник
Сообщений: 108
Регистрация: 31-01-08
Из: Москва
Пользователь №: 34 633



Цитата
Да, надо.

Да, это я уже понял, в datasheete Альтеровском вычитал.
Но, самое забавное, что количество сигналов на выходе Tristate Conduit Bridge не соответствует количеству сигналов в LAN.
И длина адреса LAN 20 бит, а Generic Tri-State Controller формирует только 16 бит. Можно в ручную, конечно, поправить на 20, но будет ли работать.
Go to the top of the page
 
+Quote Post
doom13
сообщение Jan 30 2015, 08:40
Сообщение #15


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

Группа: Свой
Сообщений: 1 404
Регистрация: 11-03-11
Из: Минск, Беларусь
Пользователь №: 63 539



Цитата(Azatot @ Jan 30 2015, 11:29) *
Да, это я уже понял, в datasheete Альтеровском вычитал.
Но, самое забавное, что количество сигналов на выходе Tristate Conduit Bridge не соответствует количеству сигналов в LAN.
И длина адреса LAN 20 бит, а Generic Tri-State Controller формирует только 16 бит. Можно в ручную, конечно, поправить на 20, но будет ли работать.

Адрес там A15-A1 (tristate_conduit_bridge_tcm_address_out[15:1]), AEN (tristate_conduit_bridge_tcm_address_out[0]), nBE3-nBE0 (tristate_conduit_bridge_tcm_byteenable_n_out[3:0]), так что всё нормально.
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 26th July 2025 - 08:59
Рейтинг@Mail.ru


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