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

 
 
 
Reply to this topicStart new topic
> Оптимальный вариант Ethernet на FPGA
Acvarif
сообщение Aug 19 2011, 10:39
Сообщение #1


Знающий
****

Группа: Участник
Сообщений: 998
Регистрация: 27-08-08
Пользователь №: 39 850



Читал и перечитывал разные даташиты и так пока и не пришел к одному оптимальному варианту построения Ethernet (10/100 Mbps) на (Fpga+ MAC) + PHY или FPGA + (MAC and PHY).

Вариант1. Пытаюсь оценить реализацию на XC6SLX9 http://starterkit.ru/html/index.php?name=s...=view&id=60 + Ks8721BL
По документации на MicroBlaze - он займет 512 Slices из 1,430 имеющихся в XC6SLX9, но к нему еще нужно будет пристроить IP EMAC.
Вопрос к знатокам. Сколько займет места EMAC?

Вариант2. XC6SLX9 (или любой подобный Altera) + AvrCore(http://opencores.org/project,avr_core) + ksz8851 (http://www.micrel.com/_PDF/Ethernet/ksz8851_pb.pdf)
SPI в этом варианте вроде неплохо, да и процессор вроде бесплатный, но кто его пробовал? Он вообще рабочий?

Может еще есть варианты?
Поделитесь please, как оптимальней поступить, чтобы не загрузнуть в самом начале.

Сообщение отредактировал Acvarif - Aug 19 2011, 10:40
Go to the top of the page
 
+Quote Post
iosifk
сообщение Aug 19 2011, 11:14
Сообщение #2


Гуру
******

Группа: Модераторы
Сообщений: 4 011
Регистрация: 8-09-05
Из: спб
Пользователь №: 8 369



Цитата(Acvarif @ Aug 19 2011, 14:39) *
Читал и перечитывал разные даташиты и так пока и не пришел к одному оптимальному варианту построения Ethernet (10/100 Mbps) на (Fpga+ MAC) + PHY или FPGA + (MAC and PHY).

Вариант1. Пытаюсь оценить реализацию на XC6SLX9 http://starterkit.ru/html/index.php?name=s...=view&id=60 + Ks8721BL
По документации на MicroBlaze - он займет 512 Slices из 1,430 имеющихся в XC6SLX9, но к нему еще нужно будет пристроить IP EMAC.
Вопрос к знатокам. Сколько займет места EMAC?

Вариант2. XC6SLX9 (или любой подобный Altera) + AvrCore(http://opencores.org/project,avr_core) + ksz8851 (http://www.micrel.com/_PDF/Ethernet/ksz8851_pb.pdf)
SPI в этом варианте вроде неплохо, да и процессор вроде бесплатный, но кто его пробовал? Он вообще рабочий?

Может еще есть варианты?
Поделитесь please, как оптимальней поступить, чтобы не загрузнуть в самом начале.


Здесь есть две большие разницы...
Первый вариант - самый простой, только трансивер надо брать самый новый - 8051. А вот второй поддерживает QoS, потом виртуальные сети и т.д Имеет сервисные счетчики событий. Но, самое главное, в ПЛИС довольно мало памяти и она дорогая. А потому посчитайте, куда девать пакеты по 1,5 кило... Их придется по частям перебрасывать во внешнюю память и только там обрабатывать. А в контроллере 8851 эти пакеты помещаются. А плюс к тому еще и разные режимы обработки пакетов в очереди... Но если поток данных будет большой, то SPI нужен быстрый...
Так что сначала все посчитайте, исходя из задания.


--------------------
www.iosifk.narod.ru
Go to the top of the page
 
+Quote Post
vadimuzzz
сообщение Aug 19 2011, 11:39
Сообщение #3


Гуру
******

Группа: Свой
Сообщений: 2 291
Регистрация: 21-07-05
Пользователь №: 6 988



готовые ядра MAC займут примерно от 1,5 до 2,5 тыс. регистров в зависимости от настроек. на опенкорках есть ядро от Igor Mohor. если скорость критична, то SPI может стать узким местом. таким местом вполне может стать и убогий софтовый контроллер (бесплатная вариация ниоса, например). стек TCP/IP (если нужен) будет есть память.

а вообще, вы спрашиваете про оптимальное решение, но не указали по какому критерию ищете оптимум
Go to the top of the page
 
+Quote Post
Acvarif
сообщение Aug 19 2011, 12:08
Сообщение #4


Знающий
****

Группа: Участник
Сообщений: 998
Регистрация: 27-08-08
Пользователь №: 39 850



Цитата(vadimuzzz @ Aug 19 2011, 14:39) *
готовые ядра MAC займут примерно от 1,5 до 2,5 тыс. регистров в зависимости от настроек. на опенкорках есть ядро от Igor Mohor. если скорость критична, то SPI может стать узким местом. таким местом вполне может стать и убогий софтовый контроллер (бесплатная вариация ниоса, например). стек TCP/IP (если нужен) будет есть память.

а вообще, вы спрашиваете про оптимальное решение, но не указали по какому критерию ищете оптимум


Если от 1,5 до 2,5 тыс + 500 (MicroBlaze) получается на XC6SLX9 ничего не выйдет.

Критерии
1. Исходя из того, что имею на рабочем столе или + то, что смогу недорого приобрести дополнительно.
На данный момент имею Altera DE0 Board и это Есть возможность приобрести платку XC6SLX9 с памятью + какой-либо PHY (MAC+PHY).
2. Простота реализации (наличие примеров, опыт и информация тех кто уже этим занимался)
3. Возможность на этой же FPGA иметь немного места для небольшого vhdl проекта (например 200...300 слайсов)

Сообщение отредактировал Acvarif - Aug 19 2011, 12:10
Go to the top of the page
 
+Quote Post
vadimuzzz
сообщение Aug 19 2011, 14:23
Сообщение #5


Гуру
******

Группа: Свой
Сообщений: 2 291
Регистрация: 21-07-05
Пользователь №: 6 988



Цитата(Acvarif @ Aug 19 2011, 19:08) *
Если от 1,5 до 2,5 тыс + 500 (MicroBlaze) получается на XC6SLX9 ничего не выйдет.

нет, почему же. просто не выйдет быстро. можно сделать очень простенький MAC, там нет ничего сверхъестественного.
Цитата
1. Исходя из того, что имею на рабочем столе или + то, что смогу недорого приобрести дополнительно.
На данный момент имею Altera DE0 Board и это

на этом точно можно сделать, причем быстро. потом пооптимизировать (в плане занимаемых ресурсов) и, возможно, получится сделать на этом:
Цитата
Есть возможность приобрести платку XC6SLX9 с памятью + какой-либо PHY (MAC+PHY).

Цитата
2. Простота реализации (наличие примеров, опыт и информация тех кто уже этим занимался)

сложного ничего нет, сложности вы себе придумаете сами. я делал несколько систем с ниос и ethernet на корках альтеры и на открытых, пробовал с PHY от Marvell, Micrel, SMSC. некоторые проекты выкладывал тут. их можно легко портировать их на вашу DE0. на alterawiki.com тоже много примеров
Цитата
3. Возможность на этой же FPGA иметь немного места для небольшого vhdl проекта (например 200...300 слайсов)

я не скажу за Xilinx, но на DE0 проект с Ethernet и самым жирным NIOS сожрет примерно половину ресурсов (по логике), так что места порезвиться хватит. памяти тоже навалом - можете даже linux туда водрузить (хотя, если хочется ОС, то лучше что-нибудь полегче)
Go to the top of the page
 
+Quote Post
Acvarif
сообщение Aug 19 2011, 16:35
Сообщение #6


Знающий
****

Группа: Участник
Сообщений: 998
Регистрация: 27-08-08
Пользователь №: 39 850



Большое спасибо.
Вы меня обнадежили.

Цитата
я делал несколько систем с ниос и ethernet на корках альтеры и на открытых, пробовал с PHY от Marvell, Micrel, SMSC. некоторые проекты выкладывал тут. их можно легко портировать их на вашу DE0


Если не сложно, дайте ссылку на Ваши проекты. Надеюсь для начала будет достаточно.
У меня пока задача минимум связать FPGA с PC, например в режиме UDP (запрос от PC на FPGA и ответ FPGA)
Буду пробовать.
Главное, Вы меня обнадежили, что DE0 + PHY для этого будет достаточно.
Go to the top of the page
 
+Quote Post
vadimuzzz
сообщение Aug 19 2011, 22:53
Сообщение #7


Гуру
******

Группа: Свой
Сообщений: 2 291
Регистрация: 21-07-05
Пользователь №: 6 988



посмотрите эту тему: http://electronix.ru/forum/index.php?showtopic=37680
Go to the top of the page
 
+Quote Post
VladimirB
сообщение Aug 23 2011, 10:04
Сообщение #8


Знающий
****

Группа: Свой
Сообщений: 614
Регистрация: 12-06-09
Из: рядом с Москвой
Пользователь №: 50 219



Цитата(Acvarif @ Aug 19 2011, 16:08) *
Если от 1,5 до 2,5 тыс + 500 (MicroBlaze) получается на XC6SLX9 ничего не выйдет.

Критерии
1. Исходя из того, что имею на рабочем столе или + то, что смогу недорого приобрести дополнительно.
На данный момент имею Altera DE0 Board и это Есть возможность приобрести платку XC6SLX9 с памятью + какой-либо PHY (MAC+PHY).
2. Простота реализации (наличие примеров, опыт и информация тех кто уже этим занимался)
3. Возможность на этой же FPGA иметь немного места для небольшого vhdl проекта (например 200...300 слайсов)


Микроблейз я думаю вам не нужен - линукс вы на SLX9 всёравно не поднимите.
Поставьте пикоблейз - он очень маленький. А насчёт МАКа - буквально на днях тестил на Virtex4 передающую часть софтварного 100BASE-T МАКа от ментора из закромов.
Вместе с простеньким автоматом управления рабочий проект занял:
Number of Slice Flip Flops 192
Number of 4 input LUTs 319
Number of occupied Slices 220

FCS считалоь в МАКе.
Если добавить примерно столько же на приёмную часть и пикоблейз - то в SLX9 оно влезет.


Go to the top of the page
 
+Quote Post
Konst_777
сообщение Aug 23 2011, 19:33
Сообщение #9


Знающий
****

Группа: Свой
Сообщений: 549
Регистрация: 1-06-05
Пользователь №: 5 644



Цитата(Acvarif @ Aug 19 2011, 13:39) *
Читал и перечитывал разные даташиты и так пока и не пришел к одному оптимальному варианту построения Ethernet (10/100 Mbps) на (Fpga+ MAC) + PHY или FPGA + (MAC and PHY)...
...
Может еще есть варианты?
...

Ваш вариант FPGA + (MAC and PHY), только в качестве (MAC and PHY) - LM3S9B95. И отладочные платы есть: SK-MLM3S9B95 и EVB-9B95. Может и FPGA не понадобится cool.gif
Go to the top of the page
 
+Quote Post

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

 


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


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