|
|
  |
Сделать Ethernet, ой как хоцца |
|
|
|
Dec 25 2007, 11:46
|

Местный
  
Группа: Свой
Сообщений: 468
Регистрация: 31-08-06
Из: Киев
Пользователь №: 19 991

|
Здравствуйте ! Мне нужно получить около 500 Mbit/s по Ethernet. Посмотрев что народ выжимает бешеные скорости и по- белому позавидовав  я решил тоже попробовать. Но у меня проблема. Надо как-то совместить внутри FPGA довольно скоростной однонаправленный интерфейс (устройство выдает 16 битные слова на 20 -30 МГц) с управляющим интерфейсом, который управляет периферией на SPI шине и прочей лабудой. Ставить софтовый процессор? Так он не вытянет на такой скорости. Кто реализовывал подскажите как это лучше сделать. Какую микросхемку PHY уровня можете посоветовать. ПЛИС планируется ставить Циклон 1 или 2, Спартан 3е, что-то из этого. И у Хилых и у Альтера вроде есть корки гигабитных маков.
Сообщение отредактировал -=Vitaly=- - Dec 25 2007, 11:49
|
|
|
|
|
Dec 26 2007, 18:53
|
Местный
  
Группа: Свой
Сообщений: 496
Регистрация: 14-03-07
Из: In The District
Пользователь №: 26 165

|
У сотрудника стоит отладачная плата под Spartan-3A, XC3SD1800A с гигабитовым soft-MAC, и PHY от national semi. Говорит, работала half-duplex UDP под ~800Mb/s. Приложил пару страничек от дока на эту плату. Может это то что нужно?
--------------------
In Mozilla, you keep tabs on your browser. In the USSR, your browser keeps tabs on you.
|
|
|
|
|
Dec 27 2007, 07:48
|
Гуру
     
Группа: Модераторы
Сообщений: 4 011
Регистрация: 8-09-05
Из: спб
Пользователь №: 8 369

|
Цитата(-=Vitaly=- @ Dec 25 2007, 15:30)  А без TCP/IP никак ?? Например используя RAW sockets?? Могу ли я просто работать на канальном уровне, просто принимая поток данных в свою софтину и отсылать команды назад в ПЛИС? А запрос-перезапрос нужен? А разбивка больших пакетов и сборка их он другом конце? А как через свичи и сети проходить? Или дистанционная отладка и мониторинг не заложены? А широковещательные пакеты? Может быть только UDP и нужно?
--------------------
www.iosifk.narod.ru
|
|
|
|
|
Dec 31 2007, 17:35
|
Частый гость
 
Группа: Свой
Сообщений: 102
Регистрация: 11-10-04
Пользователь №: 849

|
Цитата(-=Vitaly=- @ Dec 27 2007, 11:45)  Мне надо следующее чтобы я мог без свитча просто напрямую втыкнуться в комп и принимать данные (можно некоторые пакеты терять это не очень критично), скорее всего это будет макисмальный размер пакета. Далее всю служебную инфу на стороне компа надо отсеять и обработать данные. Ну и с компа в ПЛИСину посылать небольшой набор команд, довольно редко, которые надо будет выплюнуть в периферию по SPI. Широковещательные пакеты не нужны. Нет, проблемм, делаете state machine которая отсылает raw Ethernet пакеты. 2 block ram, один отсылается другой заполняется. На стороне PC их можно принимать или с помощю raw socket или winpcap из пакета ethereal. Все работает чудненько до тех пор пока PC успевает обрабатывать сваливаюшиеся на неё пакеты.
|
|
|
|
|
Feb 12 2008, 18:17
|
Участник

Группа: Свой
Сообщений: 54
Регистрация: 6-01-06
Из: Москва
Пользователь №: 12 876

|
ламерский вопрос: есть пакет Ethereal 0.10.9 под Windows, есть проектик мака в ПЛИС, который входящий пакет с приемника, отсылает на передатчик. Как с помощью Ethereal отправить frame и его же перехватить?
|
|
|
|
|
Feb 13 2008, 05:36
|

МедвеД Инженер I
   
Группа: Свой
Сообщений: 816
Регистрация: 21-10-04
Пользователь №: 951

|
Цитата(dspx @ Feb 13 2008, 03:17)  ламерский вопрос: есть пакет Ethereal 0.10.9 под Windows, есть проектик мака в ПЛИС, который входящий пакет с приемника, отсылает на передатчик. Как с помощью Ethereal отправить frame и его же перехватить? Отправить с помощью Ethereal никак ping можно использовать для того чтобы проверить/увидеть/не увидеть пакеты "туда" и пакеты "оттуда" ну включен должен быть promiscuous mode
--------------------
Cogito ergo sum
|
|
|
|
|
Feb 21 2008, 11:05
|
Участник

Группа: Участник
Сообщений: 38
Регистрация: 1-02-07
Пользователь №: 24 959

|
Мне надо сделать нечто подобное. Я вижу головой придется подумать много. Полностью г  отовых решений нет.
|
|
|
|
|
  |
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0
|
|
|