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

 
 
3 страниц V   1 2 3 >  
Reply to this topicStart new topic
> Ethernet 100Mbit - как получить >4МБайт/сек?, Есть DM9000. Что же ставить ему в помощь?
SimpleSoft
сообщение Jan 31 2006, 14:44
Сообщение #1


Местный
***

Группа: Участник
Сообщений: 273
Регистрация: 3-11-05
Пользователь №: 10 442



День добрый.

Появилась задача в реализации некоторого сервера для передачи данных на настольный ПК со скоростью не менее 4 Мбайт/сек.
Протокол не важен - т.е. UDP или TCP не критично, но сервер естественно должен отвечать на ICMP (Ping) и ARP запросы. Порывшись в интернете, нашел достаточно много исходников,
таких как FreeRTOS cо встроенным TCP/IP стеком и для разных процессоров, посему проблему с организацией TCP/IP стека не считаю существенной.
В наличии уже есть микросхема Ethernet - Davicom DM9000, посему вопрос: Что можно поставить ему в помощь, дабы получить требуемые скорости передачи или придётся отказаться вообще от Davicom и использовать что-то вроде EP9301/2 со встроенным Ethernet MAC-контроллером?

З.Ы.: Желательно, чтобы корпуса у микросхем были не BGA.

Сообщение отредактировал SimpleSoft - Jan 31 2006, 14:47
Go to the top of the page
 
+Quote Post
VladislavS
сообщение Feb 1 2006, 05:33
Сообщение #2


Местный
***

Группа: Свой
Сообщений: 475
Регистрация: 14-04-05
Из: Москва
Пользователь №: 4 140



Ну 100 Мбит встроено, например, в AT91RM9200. Уточни задачу. По Ethernet прокачать 4Мбайт/cек как три пальца, а где их проц возьмет? Или куда денет?
Go to the top of the page
 
+Quote Post
SimpleSoft
сообщение Feb 1 2006, 09:32
Сообщение #3


Местный
***

Группа: Участник
Сообщений: 273
Регистрация: 3-11-05
Пользователь №: 10 442



Цитата(VladislavS @ Feb 1 2006, 09:33) *
Ну 100 Мбит встроено, например, в AT91RM9200. Уточни задачу. По Ethernet прокачать 4Мбайт/cек как три пальца, а где их проц возьмет? Или куда денет?



Скажем я в данном устройстве настраиваю порт 71 для приема, и 72 для передачи. На ПК открываю 72 соответственно и посылаю на 71 в устройство. В процессор я ввожу данные через GPIO или ещё какой нить паралельный интерфейс со скоростью >4MБайт/сек из ПЛИС. Хотелось бы просто не наступить награбли с нехваткой скорости передачи.

Да и AT91RM9200 реально ли купить? Часто с Атмелем такая засада: хочешь купить, а у нас ещё нет...

Сообщение отредактировал SimpleSoft - Feb 1 2006, 09:37
Go to the top of the page
 
+Quote Post
VladislavS
сообщение Feb 1 2006, 18:34
Сообщение #4


Местный
***

Группа: Свой
Сообщений: 475
Регистрация: 14-04-05
Из: Москва
Пользователь №: 4 140



Ну если плисину на EBI подцепить с разрядностью бит 16 хотя бы, то похоже вытянуть скорость можно. А покупабельность реальна. Мне группа снабжения привозит практически со склада в Москве.
Go to the top of the page
 
+Quote Post
iosifk
сообщение Feb 2 2006, 06:49
Сообщение #5


Гуру
******

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



Цитата(SimpleSoft @ Jan 31 2006, 17:44) *
В наличии уже есть микросхема Ethernet - Davicom DM9000, посему вопрос: Что можно поставить ему в помощь, дабы получить требуемые скорости передачи или придётся отказаться вообще от Davicom и использовать что-то вроде EP9301/2 со встроенным Ethernet MAC-контроллером?

Хочу спросить: зачем Вы берете микросхему у которой нет режима синхронного чтения - записи по процессорной шине? Нет режима проверки имреданса и обрыва и КЗ в линии! Нет автоопределения Tx-Rx!

Зачем Вам ПЛИС?
Почему Вы не хотите сделать поиск и найти за те-же деньги микросхему с большими возможностями.
Потом получить образец, документацию, или купить стартовый набор?

И Вам точно нужно 1 порт Ethernet а не 2?
Удачи!


--------------------
www.iosifk.narod.ru
Go to the top of the page
 
+Quote Post
AndyBig
сообщение Feb 2 2006, 07:55
Сообщение #6


Иногдящий
****

Группа: Свой
Сообщений: 691
Регистрация: 28-02-05
Пользователь №: 2 931



Где-то здесь мелькала ссылка на буржуйский сайт по at91rm9200. На этом сайте в форуме говорили, что на RM9200 под линухом вытягивают до 90 Мбит по езернету. Так что, думаю, 4 МБайта - легко.
Но тогда в качестве физического интерфейса (PHY) нужно взять какой-либо чип с MII или RMII интерфейсом. К примеру KS8721.
Go to the top of the page
 
+Quote Post
defunct
сообщение Feb 2 2006, 08:16
Сообщение #7


кекс
******

Группа: Свой
Сообщений: 3 825
Регистрация: 17-12-05
Из: Киев
Пользователь №: 12 326



Берем любую приглянувшуюся сетевую карту 10/100 за $5, качаем к ней исходник пакетного драйвера, или пишем его самостоятельно. Цепляем к выбранной вами FreeRTOS, и собсно все..
Go to the top of the page
 
+Quote Post
SimpleSoft
сообщение Feb 2 2006, 08:27
Сообщение #8


Местный
***

Группа: Участник
Сообщений: 273
Регистрация: 3-11-05
Пользователь №: 10 442



Цитата(iosifk @ Feb 2 2006, 10:49) *
Цитата(SimpleSoft @ Jan 31 2006, 17:44) *

В наличии уже есть микросхема Ethernet - Davicom DM9000, посему вопрос: Что можно поставить ему в помощь, дабы получить требуемые скорости передачи или придётся отказаться вообще от Davicom и использовать что-то вроде EP9301/2 со встроенным Ethernet MAC-контроллером?

Хочу спросить: зачем Вы берете микросхему у которой нет режима синхронного чтения - записи по процессорной шине? Нет режима проверки имреданса и обрыва и КЗ в линии! Нет автоопределения Tx-Rx!

Зачем Вам ПЛИС?
Почему Вы не хотите сделать поиск и найти за те-же деньги микросхему с большими возможностями.
Потом получить образец, документацию, или купить стартовый набор?

И Вам точно нужно 1 порт Ethernet а не 2?
Удачи!


1. DM9000 был выран, т.к. стоимость составляет 9$, проверка импеданса, КЗ, обрыва и TX/RX не надо.
2. Дело в том, что Ethernet я делаю специально для дополнения к готовому прибору, в котором уже реализован USB. Ядром в приборе является ПЛИС у которой реализована 8/16 битная шина данных и стробы чтения/записи. Посему идея подключения SoC к ПЛИС через EBI (SRAM I/F) очень даже устраивает.
3. Точно 1.
Go to the top of the page
 
+Quote Post
Postoroniy_V
сообщение Feb 2 2006, 08:31
Сообщение #9


МедвеД Инженер I
****

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



Цитата(iosifk @ Feb 2 2006, 09:49) *
Цитата(SimpleSoft @ Jan 31 2006, 17:44) *

В наличии уже есть микросхема Ethernet - Davicom DM9000, посему вопрос: Что можно поставить ему в помощь, дабы получить требуемые скорости передачи или придётся отказаться вообще от Davicom и использовать что-то вроде EP9301/2 со встроенным Ethernet MAC-контроллером?

Хочу спросить: зачем Вы берете микросхему у которой нет режима синхронного чтения - записи по процессорной шине? Нет режима проверки имреданса и обрыва и КЗ в линии! Нет автоопределения Tx-Rx!

Зачем Вам ПЛИС?
Почему Вы не хотите сделать поиск и найти за те-же деньги микросхему с большими возможностями.
Потом получить образец, документацию, или купить стартовый набор?

И Вам точно нужно 1 порт Ethernet а не 2?
Удачи!

а что за "микросхема с большими возможностями." за теже 9-10 у.е.в сравнии с Davicom DM9000
подскажите плиз.


--------------------
Cogito ergo sum
Go to the top of the page
 
+Quote Post
iosifk
сообщение Feb 2 2006, 09:02
Сообщение #10


Гуру
******

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



Цитата(Postoroniy_V @ Feb 2 2006, 11:31) *
а что за "микросхема с большими возможностями." за теже 9-10 у.е.в сравнии с Davicom DM9000
подскажите плиз.


Вот теперь уже можно - KS8841-KS8842.
И статейку об этом - у меня на сайте.
А может быть Вам понравится KS8695?
А самый новый трансивер - KS8001.


Цитата(SimpleSoft @ Feb 2 2006, 11:27) *
1. DM9000 был выран, т.к. стоимость составляет 9$, проверка импеданса, КЗ, обрыва и TX/RX не надо.
2. Дело в том, что Ethernet я делаю специально для дополнения к готовому прибору, в котором уже реализован USB. Ядром в приборе является ПЛИС у которой реализована 8/16 битная шина данных и стробы чтения/записи. Посему идея подключения SoC к ПЛИС через EBI (SRAM I/F) очень даже устраивает.

По пункту 1 - если у Вас промышленный прибор, то здесь Вы ошибаетесь. Если игровая приставка, то возможно и не надо.
По пункту 2 - на больших скоростях работать с АСИНХРОННЫМ интерфейсом - БРРР!!!
А при реализации асинхронного интерфейса автоматом в ПЛИС получите 1 цикл передачи данных за несколько циклов частоты автомата чтобы корректно реализовать все сетап-холд, да и сам автомат будет сложнее. Научный термин на это - Мультитрах.. Желаю Весело провести время с железкой.


--------------------
www.iosifk.narod.ru
Go to the top of the page
 
+Quote Post
Postoroniy_V
сообщение Feb 2 2006, 09:10
Сообщение #11


МедвеД Инженер I
****

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



Цитата(iosifk @ Feb 2 2006, 12:02) *
Цитата(Postoroniy_V @ Feb 2 2006, 11:31) *


а что за "микросхема с большими возможностями." за теже 9-10 у.е.в сравнии с Davicom DM9000
подскажите плиз.


Вот теперь уже можно - KS8841-KS8842.
И статейку об этом - у меня на сайте.
А может быть Вам понравится KS8695?
А самый новый трансивер - KS8001.


что то не выходит smile.gif по вашему
efind про KS8841
получается даже больше 10 у.е. в розницу, а именно

KS8841-16MQL 13.3$ 11.1$ 10.4$
13.3 в розницу и опт 11.1 лихо
в сравнении с efind про Davicom


--------------------
Cogito ergo sum
Go to the top of the page
 
+Quote Post
iosifk
сообщение Feb 2 2006, 10:18
Сообщение #12


Гуру
******

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



Цитата(Postoroniy_V @ Feb 2 2006, 12:10) *
что то не выходит smile.gif по вашему
KS8841-16MQL 13.3$ 11.1$ 10.4$
13.3 в розницу и опт 11.1 лихо

Ну тогда давайте обсудим контрактные цены и Вашу потребность. При таком подходе к делу возможно Вы измените Ваше мнение. Возможно цена будет ниже 10 долл. Но это надо все обсуждать!
Если хотите продолжить, то напишите мне:
Кому - какому предприятию,
Сколько,
когда,
что примерно делаете.

Вот по этому адресу: iosifk@eltech.spb.ru
Удачи!


--------------------
www.iosifk.narod.ru
Go to the top of the page
 
+Quote Post
Postoroniy_V
сообщение Feb 2 2006, 10:27
Сообщение #13


МедвеД Инженер I
****

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



Цитата(iosifk @ Feb 2 2006, 13:18) *
Цитата(Postoroniy_V @ Feb 2 2006, 12:10) *

что то не выходит smile.gif по вашему
KS8841-16MQL 13.3$ 11.1$ 10.4$
13.3 в розницу и опт 11.1 лихо

Ну тогда давайте обсудим контрактные цены и Вашу потребность. При таком подходе к делу возможно Вы измените Ваше мнение. Возможно цена будет ниже 10 долл. Но это надо все обсуждать!
Если хотите продолжить, то напишите мне:
Кому - какому предприятию,
Сколько,
когда,
что примерно делаете.

Вот по этому адресу: iosifk@eltech.spb.ru
Удачи!

буду иметь ввиду, а пока мне нужно всего 5 штук, и в таких условиях (в моих smile.gif ) ваши KS8841 не катят
спасибо за ответ


--------------------
Cogito ergo sum
Go to the top of the page
 
+Quote Post
SimpleSoft
сообщение Feb 2 2006, 12:15
Сообщение #14


Местный
***

Группа: Участник
Сообщений: 273
Регистрация: 3-11-05
Пользователь №: 10 442



Цитата(AndyBig @ Feb 2 2006, 11:55) *
Где-то здесь мелькала ссылка на буржуйский сайт по at91rm9200. На этом сайте в форуме говорили, что на RM9200 под линухом вытягивают до 90 Мбит по езернету. Так что, думаю, 4 МБайта - легко.
Но тогда в качестве физического интерфейса (PHY) нужно взять какой-либо чип с MII или RMII интерфейсом. К примеру KS8721.


Всё больше растёт уверенность что добьюсь.
Значит ОС для AT91RM9200 не просто FreeRTOS, а уже полноценный Linux?

А что можете сказать про Cirrus Logic EP9302 . Почему был выбран именно AT91RM9200?
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Feb 2 2006, 17:08
Сообщение #15


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



Цитата(SimpleSoft @ Feb 2 2006, 15:15) *
А что можете сказать про Cirrus Logic EP9302 . Почему был выбран именно AT91RM9200?


С AT91RM9200 не работал, но, если сравнивать по докам, езернет у EP93xx
несколько мощнее будет (DMA, например, более грамотный).
Go to the top of the page
 
+Quote Post
silica
сообщение Feb 2 2006, 20:37
Сообщение #16


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

Группа: Свой
Сообщений: 95
Регистрация: 21-11-05
Из: Киев
Пользователь №: 11 167



Цитата(iosifk @ Feb 2 2006, 11:02) *
По пункту 1 - если у Вас промышленный прибор, то здесь Вы ошибаетесь. Если игровая приставка, то возможно и не надо.
По пункту 2 - на больших скоростях работать с АСИНХРОННЫМ интерфейсом - БРРР!!!
А при реализации асинхронного интерфейса автоматом в ПЛИС получите 1 цикл передачи данных за несколько циклов частоты автомата чтобы корректно реализовать все сетап-холд, да и сам автомат будет сложнее. Научный термин на это - Мультитрах.. Желаю Весело провести время с железкой.


Вы считаете 4 мбайт большой соростью smile.gif из за которой надо лепить синхронный интерфейс ( который на самом деле сложнее, но согласен быстрее smile.gif ) , я без проблем на асинхоронном (в LAN91 гоняю больше)Кстати большинство чипов не имеют синхронный интерфейс.
Обрыв в сети и импенданс может и полезен, но это очень скользкий вопрос. RX-TX вообще для пром применения не понятен. вообщем ненужные фишечки за почти втрое большую цену.
Доументация слабее, драйверная поддержка тоже. Корпус "ужас настройщика" 0.4 мм.
Из главных достоинств, есть индустриальный диапазон, но полгода назад был недоставаем(может сейчас ситуация изменилась к лучшему). Вобщем Микрелу еще работать и работать smile.gif.
Я жду когда смогу заменить LAN91 на более дешовый. Если к тому времени у Давикома появиться индастриал то выбор в его пользу smile.gif.
Go to the top of the page
 
+Quote Post
AndyBig
сообщение Feb 2 2006, 21:33
Сообщение #17


Иногдящий
****

Группа: Свой
Сообщений: 691
Регистрация: 28-02-05
Пользователь №: 2 931



Цитата
Значит ОС для AT91RM9200 не просто FreeRTOS, а уже полноценный Linux?

Да, но естественно тогда уже надо и флэш побольше, и SDRAM...

Цитата
Почему был выбран именно AT91RM9200?

По-моему он легче доставабелен в розницу smile.gif.
Go to the top of the page
 
+Quote Post
SimpleSoft
сообщение Feb 3 2006, 08:06
Сообщение #18


Местный
***

Группа: Участник
Сообщений: 273
Регистрация: 3-11-05
Пользователь №: 10 442



Цитата(AndyBig @ Feb 3 2006, 01:33) *
Цитата
Почему был выбран именно AT91RM9200?

По-моему он легче доставабелен в розницу smile.gif.


Оказалось что и всё семейство EP93xx для меня доставабельно. И сам не ожидал. Цены приемлимые. smile.gif

Хотел бы всётаки знать точно, на каком венигрете из процессора, софта и обвязки передача по TCP/IP через Winsock получалось примерно в 4 мб в сек.

З.Ы.: Взял на днях BlackFin Evalution Kit BF-537 с поддержкой Ethernet: перепробовал все iwIP Examples (скорость ядра поставил 600МГц), но даже Ping обычный шел в среднем 50мсек, а что говорить про передачу данных...
Go to the top of the page
 
+Quote Post
defunct
сообщение Feb 3 2006, 20:18
Сообщение #19


кекс
******

Группа: Свой
Сообщений: 3 825
Регистрация: 17-12-05
Из: Киев
Пользователь №: 12 326



Цитата(SimpleSoft @ Feb 3 2006, 10:06) *
Хотел бы всётаки знать точно, на каком венигрете из процессора, софта и обвязки передача по TCP/IP через Winsock получалось примерно в 4 мб в сек.


LPC2142 + RTL8139 - самописный пакетный драйвер, и TCP/IP стек ~7MBps. Использовал для прокачки видео потока.


Цитата
З.Ы.: Взял на днях BlackFin Evalution Kit BF-537 с поддержкой Ethernet: перепробовал все iwIP Examples (скорость ядра поставил 600МГц), но даже Ping обычный шел в среднем 50мсек, а что говорить про передачу данных...


Однозначно кривой драйвер. Потому что у меня связка на AVR 14.7 Mhz + RTL8019 дают честный ответ на пинг <1ms для ICMP пакетов объемом до 1kb.

Сообщение отредактировал defunct - Feb 3 2006, 20:20
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Feb 3 2006, 20:57
Сообщение #20


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



Цитата(SimpleSoft @ Feb 3 2006, 10:06) *
Взял на днях BlackFin Evalution Kit BF-537 с поддержкой Ethernet: перепробовал все iwIP Examples (скорость ядра поставил 600МГц), но даже Ping обычный шел в среднем 50мсек, а что говорить про передачу данных...

А запускали, часом, не из под VDSP? Там тормоза жуткие.
Go to the top of the page
 
+Quote Post
SimpleSoft
сообщение Feb 4 2006, 10:48
Сообщение #21


Местный
***

Группа: Участник
Сообщений: 273
Регистрация: 3-11-05
Пользователь №: 10 442



Цитата(defunct @ Feb 4 2006, 00:18) *
Цитата(SimpleSoft @ Feb 3 2006, 10:06) *

Хотел бы всётаки знать точно, на каком венигрете из процессора, софта и обвязки передача по TCP/IP через Winsock получалось примерно в 4 мб в сек.


LPC2142 + RTL8139 - самописный пакетный драйвер, и TCP/IP стек ~7MBps. Использовал для прокачки видео потока.



А как LPC2142 подключали к RTL8139? Как внешнюю память? Если можно, чуть подробнее.
Go to the top of the page
 
+Quote Post
defunct
сообщение Feb 4 2006, 15:36
Сообщение #22


кекс
******

Группа: Свой
Сообщений: 3 825
Регистрация: 17-12-05
Из: Киев
Пользователь №: 12 326



Цитата(SimpleSoft @ Feb 4 2006, 12:48) *
А как LPC2142 подключали к RTL8139? Как внешнюю память? Если можно, чуть подробнее.


Ну если можно так выразиться. Только 2142 не имеет шины для работы с внешней памятью. Подключал через эмуляцию шины (32-линии данных, 6 - адресных, 3 управляющих) у RTL8139 очень простой DMA.
Go to the top of the page
 
+Quote Post
silica
сообщение Feb 4 2006, 17:15
Сообщение #23


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

Группа: Свой
Сообщений: 95
Регистрация: 21-11-05
Из: Киев
Пользователь №: 11 167



Цитата(defunct @ Feb 4 2006, 17:36) *
Ну если можно так выразиться. Только 2142 не имеет шины для работы с внешней памятью. Подключал через эмуляцию шины (32-линии данных, 6 - адресных, 3 управляющих) у RTL8139 очень простой DMA.

Простите, а разве RTL8139 имеет другой интерфейс, кроме PCI?
Go to the top of the page
 
+Quote Post
defunct
сообщение Feb 4 2006, 19:29
Сообщение #24


кекс
******

Группа: Свой
Сообщений: 3 825
Регистрация: 17-12-05
Из: Киев
Пользователь №: 12 326



Цитата(silica @ Feb 4 2006, 19:15) *
Простите, а разве RTL8139 имеет другой интерфейс, кроме PCI?


Разумеется не имеет. Говоря о 6 линиях адреса, я некорректно выразился, имелись в виду линии для "адресации" фазы транзакции.
Go to the top of the page
 
+Quote Post
silica
сообщение Feb 4 2006, 21:09
Сообщение #25


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

Группа: Свой
Сообщений: 95
Регистрация: 21-11-05
Из: Киев
Пользователь №: 11 167



Цитата(defunct @ Feb 4 2006, 21:29) *
Разумеется не имеет. Говоря о 6 линиях адреса, я некорректно выразился, имелись в виду линии для "адресации" фазы транзакции.

а чем вы руководствовались выбирая данный чип?
Go to the top of the page
 
+Quote Post
defunct
сообщение Feb 4 2006, 23:01
Сообщение #26


кекс
******

Группа: Свой
Сообщений: 3 825
Регистрация: 17-12-05
Из: Киев
Пользователь №: 12 326



Цитата(silica @ Feb 4 2006, 23:09) *
а чем вы руководствовались выбирая данный чип?


В первую очередь руководствовался опытом работы с младшими чипами от realtek. А также доступносностью, низкой ценой, наличием pin-to-pin совместимых 5V и 3.3V версий чипа, поддержкой пакетов объемом до 64k, плюс наличием автооповещения передающей стороны (puase_packet) при почти полном заполнении приемного буфера, что здорово ускоряет работу при пересылке больших объемов данных.
Go to the top of the page
 
+Quote Post
SimpleSoft
сообщение Feb 5 2006, 07:08
Сообщение #27


Местный
***

Группа: Участник
Сообщений: 273
Регистрация: 3-11-05
Пользователь №: 10 442



Цитата(defunct @ Feb 4 2006, 19:36) *
Цитата(SimpleSoft @ Feb 4 2006, 12:48) *

А как LPC2142 подключали к RTL8139? Как внешнюю память? Если можно, чуть подробнее.


Ну если можно так выразиться. Только 2142 не имеет шины для работы с внешней памятью. Подключал через эмуляцию шины (32-линии данных, 6 - адресных, 3 управляющих) у RTL8139 очень простой DMA.


И используя TCP/IP стек вы получили 7MB/сек? Не верю. Ноги у 21xx на скорости ядра 60мгц клацают на скорости 11мгц (если сделать loop из 2х STR), т.к. операция LDR и STR занимают 2-3 такта в ARM7TDMI. + Кроме чтения данных из RTL8139 Вам надо ещё и пакет разобрать на состовляющие.
Или я чего-то не понимаю?
Go to the top of the page
 
+Quote Post
defunct
сообщение Feb 5 2006, 23:07
Сообщение #28


кекс
******

Группа: Свой
Сообщений: 3 825
Регистрация: 17-12-05
Из: Киев
Пользователь №: 12 326



Цитата(SimpleSoft @ Feb 5 2006, 09:08) *
И используя TCP/IP стек вы получили 7MB/сек? Не верю. Ноги у 21xx на скорости ядра 60мгц клацают на скорости 11мгц (если сделать loop из 2х STR), т.к. операция LDR и STR занимают 2-3 такта в ARM7TDMI. + Кроме чтения данных из RTL8139 Вам надо ещё и пакет разобрать на состовляющие.
Или я чего-то не понимаю?


напомню только, что скорость считывания определяется не только частотой, но и разрядностью. 32 бит - это по 4 байта за семпл. LPC на 66Mhz. Частота же дергания ногами еще ниже, не 11 а в районе 6Mhz итого имеем ~24-26MB/s линейную скорость считывания/записи пакета, расчет контрольных сумм для IP секции и TCP секции снижает эффективную скорость до ~7MB/s. (пакеты по 4k байт).

Сообщение отредактировал defunct - Feb 5 2006, 23:17
Go to the top of the page
 
+Quote Post
SimpleSoft
сообщение Feb 6 2006, 08:08
Сообщение #29


Местный
***

Группа: Участник
Сообщений: 273
Регистрация: 3-11-05
Пользователь №: 10 442



Цитата(defunct @ Feb 6 2006, 03:07) *
Цитата(SimpleSoft @ Feb 5 2006, 09:08) *

И используя TCP/IP стек вы получили 7MB/сек? Не верю. Ноги у 21xx на скорости ядра 60мгц клацают на скорости 11мгц (если сделать loop из 2х STR), т.к. операция LDR и STR занимают 2-3 такта в ARM7TDMI. + Кроме чтения данных из RTL8139 Вам надо ещё и пакет разобрать на состовляющие.
Или я чего-то не понимаю?


напомню только, что скорость считывания определяется не только частотой, но и разрядностью. 32 бит - это по 4 байта за семпл. LPC на 66Mhz. Частота же дергания ногами еще ниже, не 11 а в районе 6Mhz итого имеем ~24-26MB/s линейную скорость считывания/записи пакета, расчет контрольных сумм для IP секции и TCP секции снижает эффективную скорость до ~7MB/s. (пакеты по 4k байт).


Тогда вопросы : Вы писали процедуры работы с RTL8139 на ассемблере? Какой TCP/IP стек Вы использовали (uIP/lwIP)? Или TCP/IP стек писали тоже на ассемблере?
Go to the top of the page
 
+Quote Post
defunct
сообщение Feb 6 2006, 22:36
Сообщение #30


кекс
******

Группа: Свой
Сообщений: 3 825
Регистрация: 17-12-05
Из: Киев
Пользователь №: 12 326



(SimpleSoft @ Feb 6 2006, 10:08)

Тогда вопросы : Вы писали процедуры работы с RTL8139 на ассемблере? Какой TCP/IP стек Вы использовали (uIP/lwIP)? Или TCP/IP стек писали тоже на ассемблере?



процеруды работы с RTL на ассемблере, а TCP стек на C (с несколькими асм вставками)..
для повышения скорости пришлось принять меры по урезанию стека: UDP пакеты сразу отбрасываются, ICMP обслуживаются только объемом до 256 байт (полный объем с заголовками). Все остальные пакеты кроме TCP и ARP (request/query) также отбрасываются сразу (даже не читаю их из буфера RTL дальше IP заголовка).

ps: пробовал uIP, неплохая реализация стека, но в моем случае не подошла. Если его немного доработать под конкретную задачу, думаю вполне возможно получить требуемые Вам 4Mbps. Если же взять 100Mhz арм, то uIP без доработок обеспечит Вам 4MBps.

lwIP - не пробовал.
Go to the top of the page
 
+Quote Post
SimpleSoft
сообщение Feb 8 2006, 07:32
Сообщение #31


Местный
***

Группа: Участник
Сообщений: 273
Регистрация: 3-11-05
Пользователь №: 10 442



Спасибо всем за ответы, особенно Defunct smile.gif
Буду оживлять плату с LPC2124 + DM9000
Go to the top of the page
 
+Quote Post
SimpleSoft
сообщение Feb 10 2006, 09:49
Сообщение #32


Местный
***

Группа: Участник
Сообщений: 273
Регистрация: 3-11-05
Пользователь №: 10 442



Даже 1 мб не получается. СТранно. Разбираю только ARP и UDP.
Go to the top of the page
 
+Quote Post
defunct
сообщение Feb 10 2006, 13:04
Сообщение #33


кекс
******

Группа: Свой
Сообщений: 3 825
Регистрация: 17-12-05
Из: Киев
Пользователь №: 12 326



Цитата(SimpleSoft @ Feb 10 2006, 11:49) *
Даже 1 мб не получается. СТранно. Разбираю только ARP и UDP.

По UDP может и не получиться развить высокую скорость при условии организации "вручную" протокола "гарантированной доставки", причем не столько из-за вашего устройства, сколько из-за организации WinSock, все-таки UDP это message oriented протокол..
TCP - connection oriented и на нем можно получить высокую скорость, скорость передачи по TCP сильно зависит от размера "окна" (кол-во пакетов, отправляемых без ожидания подтверждения).

ЗЫ: А как тестируете? С устройста на компьютер или наоборот? используете ли при передаче по UDP подтверждения или нет?

Сообщение отредактировал defunct - Feb 10 2006, 17:09
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 25th June 2025 - 14:09
Рейтинг@Mail.ru


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