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

 
 
3 страниц V   1 2 3 >  
Reply to this topicStart new topic
> uIP ATmega162+RTL8019AS скорость, интересно, что можно выжать?
Evgeny_CD
сообщение Aug 20 2006, 20:55
Сообщение #1


Гуру
******

Группа: СуперМодераторы
Сообщений: 2 065
Регистрация: 11-01-05
Из: Москва
Пользователь №: 1 892



Интересно, кто-нибудь щупал это дело? Например, если взять ATmega162 (16 Мгц) + RTL8019AS (примерно как там ->) http://www.laskater.com/projects/uipAVR.htm
можно ли получить 50кб/сек в UDP?

Может кому пригодится:
Вышла версия 1.0 uIP - существенные изменения
http://www.caxapa.ru/echo/arm.html?id=65694
http://electronix.ru/forum/index.php?showtopic=20062
Go to the top of the page
 
+Quote Post
Nanobyte
сообщение Aug 20 2006, 21:05
Сообщение #2


За битами по регистрам гоняюсь
***

Группа: Свой
Сообщений: 457
Регистрация: 24-04-06
Из: Таганрог
Пользователь №: 16 446



Делал на Мega8515-8мГц и CS8900A именно UDP. В пределе получилось пиковое значение 700~750 Кбайт/c. Ограничивала скорость подтаскивания и утаскивания байтов из контроллера.


--------------------
Курсор влево, курсор вправо - считается хакерством. FORMAT C: производится без предупреждения
Go to the top of the page
 
+Quote Post
Evgeny_CD
сообщение Aug 20 2006, 21:22
Сообщение #3


Гуру
******

Группа: СуперМодераторы
Сообщений: 2 065
Регистрация: 11-01-05
Из: Москва
Пользователь №: 1 892



Цитата(Nanobyte @ Aug 21 2006, 01:05) *
Делал на Мega8515-8мГц и CS8900A именно UDP. В пределе получилось пиковое значение 700~750 Кбайт/c. Ограничивала скорость подтаскивания и утаскивания байтов из контроллера.
Вау! Ничего себе скорость! А какой размер пакета у Вас был?
Go to the top of the page
 
+Quote Post
Nanobyte
сообщение Aug 20 2006, 21:49
Сообщение #4


За битами по регистрам гоняюсь
***

Группа: Свой
Сообщений: 457
Регистрация: 24-04-06
Из: Таганрог
Пользователь №: 16 446



Пакеты переменной длины, но, в основном, 1400 байтов данных + ~80 байтов для заголовков IPv4 и UDP. CS8900A подключена как внешняя память в 8-битном режиме. В этом режиме её возможности сильно урезаны - нет автоинкремента адреса внутренней RAM, нет прямой адресации, и пр. Именно это и ограничивало скорость обмена. А теоретически она может передавать/принимать до 1 мБайта/с. Затраты времени на обработку IPv4 и UDP незначительны. Писал на ASM.


--------------------
Курсор влево, курсор вправо - считается хакерством. FORMAT C: производится без предупреждения
Go to the top of the page
 
+Quote Post
defunct
сообщение Aug 21 2006, 09:07
Сообщение #5


кекс
******

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



Цитата(Evgeny_CD @ Aug 20 2006, 23:55) *
можно ли получить 50кб/сек в UDP?

Можно.
Сейчас как раз закончил подобный проект. Скорость ~500kb/s.
UDP стек свой.

Цитата
А какой размер пакета у Вас был?

до 4096 байт. (прием/передача).

Сообщение отредактировал defunct - Aug 21 2006, 09:09
Go to the top of the page
 
+Quote Post
Evgeny_CD
сообщение Aug 21 2006, 09:49
Сообщение #6


Гуру
******

Группа: СуперМодераторы
Сообщений: 2 065
Регистрация: 11-01-05
Из: Москва
Пользователь №: 1 892



Цитата(defunct @ Aug 21 2006, 13:07) *
Можно.
Сейчас как раз закончил подобный проект. Скорость ~500kb/s.
Это с каким контроллером?
Go to the top of the page
 
+Quote Post
defunct
сообщение Aug 21 2006, 10:36
Сообщение #7


кекс
******

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



Цитата(Evgeny_CD @ Aug 21 2006, 12:49) *
Цитата(defunct @ Aug 21 2006, 13:07) *
Можно.
Сейчас как раз закончил подобный проект. Скорость ~500kb/s.
Это с каким контроллером?

M162 (@14.7456mhz) + Внешний SRAM (32k) + RTL8019AS.
RTL и SRAM на общей шине, переключение между ними линией A15.
В чипе сконфигурировал внешнюю шину без задержек.
Go to the top of the page
 
+Quote Post
klen
сообщение Aug 21 2006, 12:32
Сообщение #8


бессмертным стать можно тремя способами
*****

Группа: Свой
Сообщений: 1 405
Регистрация: 9-05-06
Из: Москва
Пользователь №: 16 912



Круто! Сам мечтаю научится так делать. времени к сожалению не хватает.
Есть желание сделать для домашней сети приемник FM станций и транслировать все в UDP пакеты в сеть. Чтобы потом все через UDP клиена могли на компе радио слушать. Такое получится сделать?
Go to the top of the page
 
+Quote Post
defunct
сообщение Aug 21 2006, 13:36
Сообщение #9


кекс
******

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



Цитата(klen @ Aug 21 2006, 15:32) *
Чтобы потом все через UDP клиена могли на компе радио слушать. Такое получится сделать?

В пределах одного сегмента сети можно точно сказать - ваша задумка реализуема (броадкастами).
Если рассылать на несколько клиентов точка-точка, то там вероятно придется придумывать обходной путь, например такой:
- залить полностью сформированный пакет в RTL для первого "подписчика";
- отправить и дождаться завершения отправки;
- обновить в области памяти RTL куда мы заливали весь пакет, только заголовок IP с IP-адресом следующего "подписчика" и c пересчитанной CS заголовка;
- отправить и дождаться завершения отправки.
...
и т.п. пока всем "подписчикам" не будет отправлен текущий пакет.
потом готовить следующий и также отправлять.
Go to the top of the page
 
+Quote Post
Evgeny_CD
сообщение Aug 21 2006, 14:04
Сообщение #10


Гуру
******

Группа: СуперМодераторы
Сообщений: 2 065
Регистрация: 11-01-05
Из: Москва
Пользователь №: 1 892



Цитата(defunct @ Aug 21 2006, 17:36) *
- залить полностью сформированный пакет в RTL для первого "подписчика";
- отправить и дождаться завершения отправки;
- обновить в области памяти RTL куда мы заливали весь пакет, только заголовок IP с IP-адресом следующего "подписчика" и c пересчитанной CS заголовка;
- отправить и дождаться завершения отправки.
Изящно! Спасибо за идею.
Go to the top of the page
 
+Quote Post
klen
сообщение Aug 21 2006, 14:05
Сообщение #11


бессмертным стать можно тремя способами
*****

Группа: Свой
Сообщений: 1 405
Регистрация: 9-05-06
Из: Москва
Пользователь №: 16 912



Цитата(defunct @ Aug 21 2006, 17:36) *
Цитата(klen @ Aug 21 2006, 15:32) *

Чтобы потом все через UDP клиена могли на компе радио слушать. Такое получится сделать?

В пределах одного сегмента сети можно точно сказать - ваша задумка реализуема (броадкастами).
Если рассылать на несколько клиентов точка-точка, то там вероятно придется придумывать обходной путь, например такой:
- залить полностью сформированный пакет в RTL для первого "подписчика";
- отправить и дождаться завершения отправки;
- обновить в области памяти RTL куда мы заливали весь пакет, только заголовок IP с IP-адресом следующего "подписчика" и c пересчитанной CS заголовка;
- отправить и дождаться завершения отправки.
...
и т.п. пока всем "подписчикам" не будет отправлен текущий пакет.
потом готовить следующий и также отправлять.

Неее, хотябы по широковещательному UDP, этого достаточно. Кто хочет слушать - открывает UDP-сокет, кто не хочет не открывает и не слушает.
Go to the top of the page
 
+Quote Post
AVR
сообщение Aug 21 2006, 14:34
Сообщение #12


фанат Linux'а
*****

Группа: Свой
Сообщений: 1 353
Регистрация: 23-10-05
Из: SPB.RU
Пользователь №: 10 008



Подскажите, пожалуйста, какой-нибудь недорогой ethernet-контроллер совместимый с uIP.
Я посмотрел на цены: все они от 200 руб. минимум, а как правило 300-400 руб. Но это смешно, PCI сетевая карта с ними же стоит меньше 100 руб (не выпаивать же оттуда biggrin.gif ).
Цитата(klen @ Aug 21 2006, 18:05) *
Неее, хотябы по широковещательному UDP, этого достаточно. Кто хочет слушать - открывает UDP-сокет, кто не хочет не открывает и не слушает.
Но ведь broadcast'ы засоряют сеть, особенно если ведется постоянное широковещание?
ЗЫ Например, в локальной сети моего провайдера такие запросы закрыты.


--------------------
Go to the top of the page
 
+Quote Post
defunct
сообщение Aug 21 2006, 14:45
Сообщение #13


кекс
******

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



Цитата(AVR @ Aug 21 2006, 17:34) *
Подскажите, пожалуйста, какой-нибудь недорогой ethernet-контроллер совместимый с uIP.

В самом первом посте такой указан ;>
$4-5 в розницу. Из обвязки там только кварц и сетевой трансформатор.
Go to the top of the page
 
+Quote Post
klen
сообщение Aug 21 2006, 14:54
Сообщение #14


бессмертным стать можно тремя способами
*****

Группа: Свой
Сообщений: 1 405
Регистрация: 9-05-06
Из: Москва
Пользователь №: 16 912



Цитата(AVR @ Aug 21 2006, 18:34) *
Но ведь broadcast'ы засоряют сеть, особенно если ведется постоянное широковещание?
ЗЫ Например, в локальной сети моего провайдера такие запросы закрыты.

В случае вещяния звукового потока широковещательная одресация наоборот снижает нагрузку - один UDP пакет принимается всеми, а не рассылается много раз каждому одно и тоже.
У меня сеть своя - мне провайдер не указ smile.gif.
Go to the top of the page
 
+Quote Post
AVR
сообщение Aug 21 2006, 15:51
Сообщение #15


фанат Linux'а
*****

Группа: Свой
Сообщений: 1 353
Регистрация: 23-10-05
Из: SPB.RU
Пользователь №: 10 008



Цитата(defunct @ Aug 21 2006, 18:45) *
В самом первом посте такой указан ;>
$4-5 в розницу. Из обвязки там только кварц и сетевой трансформатор.

Насколько реально самостоятельно выпаять rtl8139D из такой сетевой карты с помощью простого паяльника и чтобы еще не повредился? smile.gif w00t.gif
ЗЫ А то и вовсе отпилив неинтересующую правую часть+металлические крепления и напрямую проводочками?... unsure.gif Как раз уже и разъем есть, и трансы, и кварцы и все что нужно (и стоит 95 руб. за всё)...

Сообщение отредактировал AVR - Aug 21 2006, 15:55


--------------------
Go to the top of the page
 
+Quote Post
Nanobyte
сообщение Aug 21 2006, 16:43
Сообщение #16


За битами по регистрам гоняюсь
***

Группа: Свой
Сообщений: 457
Регистрация: 24-04-06
Из: Таганрог
Пользователь №: 16 446



Проще всего отпаивать такие МС горячим воздухом. В крайнем случае, ведь плата уже не нужна, можно нагреть её снизу над газовой горелкой, предварительно выпаяв другие нужные элементы, чтобы их не испортить. Ещё удобнее маленький газовый паяльник, у которого есть открытое пламя. Ещё очень хорошо работают зажигалки (те, которые не затухают на ветру и горят с сильным шумом). Отпаивание проводится на открытом воздухе, т.к. стеклотекстолит вспучивается и обгорает. Пламя не должно касаться платы, только струя отработанного газа. При некоторой тренировке спокойно отпаиваются МС типа XILINX XC95, выводов там более 200. Подогревая плату, контролируют визуально начало плавления припоя и периодически, перевернув плату, аккуратно встряхивают над газетой. Можно снимать и пинцетом. Ни одна МС ещё не вышла из строя. Попрактикуйтесь на старых мат. платах или видеоплатах, где есть подобные микросхемы.


--------------------
Курсор влево, курсор вправо - считается хакерством. FORMAT C: производится без предупреждения
Go to the top of the page
 
+Quote Post
zltigo
сообщение Aug 21 2006, 16:45
Сообщение #17


Гуру
******

Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244



Цитата(AVR @ Aug 21 2006, 18:51) *
Насколько реально самостоятельно выпаять rtl8139D из [url=http://www.acorp.ru/data/products/net/nic/

Лучше подумайте, насколько реально присоединить PCI девайс к ATmega :-)
RTL8139x/8100 это отнюдь не старый добрый NE2000 совместимый RTL8019 со своими собственными 16K на борту и возможностью работы 8bit режиме.


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
AVR
сообщение Aug 21 2006, 17:04
Сообщение #18


фанат Linux'а
*****

Группа: Свой
Сообщений: 1 353
Регистрация: 23-10-05
Из: SPB.RU
Пользователь №: 10 008



Цитата(zltigo @ Aug 21 2006, 20:45) *
Лучше подумайте, насколько реально присоединить PCI девайс к ATmega :-)
RTL8139x/8100 это отнюдь не старый добрый NE2000 совместимый RTL8019 со своими собственными 16K на борту и возможностью работы 8bit режиме.
Мдя... Об этом я не подумал biggrin.gif


--------------------
Go to the top of the page
 
+Quote Post
AVR
сообщение Aug 21 2006, 17:57
Сообщение #19


фанат Linux'а
*****

Группа: Свой
Сообщений: 1 353
Регистрация: 23-10-05
Из: SPB.RU
Пользователь №: 10 008



Есть одна интересная статья: http://www.fpga4fun.com/10BASE-T.html
(к сожалению там всё на Verilog, но надеюсь на vhdl перенести возможно)
Возможно ли в принципе заменить ethernet контроллер fpga-шкой + некоторой необходимой россыпью, если целью является просто пересылка пакетов по обычной сети к компьютеру (без всяких там web-серверов и прочих вкусностей)?


--------------------
Go to the top of the page
 
+Quote Post
Nanobyte
сообщение Aug 21 2006, 18:21
Сообщение #20


За битами по регистрам гоняюсь
***

Группа: Свой
Сообщений: 457
Регистрация: 24-04-06
Из: Таганрог
Пользователь №: 16 446



Microchip разродился Ethernet-контроллером ENC28J60. Корпус 28 Pins, 10 мБит/с, интерфейс SPI. Вроде-бы как уже продаётся и в России.


--------------------
Курсор влево, курсор вправо - считается хакерством. FORMAT C: производится без предупреждения
Go to the top of the page
 
+Quote Post
acex2
сообщение Aug 21 2006, 19:00
Сообщение #21


Адепт
****

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



Цитата(Nanobyte @ Aug 21 2006, 22:21) *
Microchip разродился Ethernet-контроллером ENC28J60. Корпус 28 Pins, 10 мБит/с, интерфейс SPI. Вроде-бы как уже продаётся и в России.


И вроде как даже ходят слухи, что многие его уже в серию давно запустили :-)
Новости этой уже скоро год.
Go to the top of the page
 
+Quote Post
Doka
сообщение Aug 21 2006, 19:12
Сообщение #22


Electrical Engineer
******

Группа: СуперМодераторы
Сообщений: 2 163
Регистрация: 4-10-04
Пользователь №: 778



Цитата(AVR @ Aug 21 2006, 21:57) *
Есть одна интересная статья: http://www.fpga4fun.com/10BASE-T.html
(к сожалению там всё на Verilog, но надеюсь на vhdl перенести возможно)
Возможно ли в принципе заменить ethernet контроллер fpga-шкой + некоторой необходимой россыпью, если целью является просто пересылка пакетов по обычной сети к компьютеру (без всяких там web-серверов и прочих вкусностей)?


ну верилог - это не страшно. вполне гармонично в одном пректе интергируются модули на верилоге и на vhdl.
но что-то проект недописанный какой-то:
Цитата
Part 5: A complete standalone 10BASE-T port ...coming soon...
да и реализовывать PHY внутри FPGA - это как-то неправильно. вообще странные: приводят ссылку на "Ethernet Receiver using phase locked loop (PLL) clock recovery" ,а сами захват тактовой в приемной части не делают (судя по исходнику)

вообще на плис более распространено такое построение:
внешний PHY Eth
+ внутренний, реализованный на плис, МАС Eth


Цитата(acex2 @ Aug 21 2006, 23:00) *
Цитата(Nanobyte @ Aug 21 2006, 22:21) *
Microchip разродился Ethernet-контроллером ENC28J60. Корпус 28 Pins, 10 мБит/с, интерфейс SPI. Вроде-бы как уже продаётся и в России.
И вроде как даже ходят слухи, что многие его уже в серию давно запустили :-)
Новости этой уже скоро год.

аха.. есть уже и более привлекательные СР2200 =)


--------------------
Блог iDoka.ru
CV linkedin.com/in/iDoka
Sources github.com/iDoka


Never stop thinking...........................
Go to the top of the page
 
+Quote Post
Evgeny_CD
сообщение Aug 21 2006, 20:13
Сообщение #23


Гуру
******

Группа: СуперМодераторы
Сообщений: 2 065
Регистрация: 11-01-05
Из: Москва
Пользователь №: 1 892



А смысл городить контроллер на ПЛИС? Для коммерческого диапазона и 5В питания "хоста" реалтек 8019AS the best. Для индустриального - всякие там CP2200 надо смотреть.

Для желающих 100м - Micrel KSZ8841. Он и -40 бывает, и PHY у него внутри, и доставабелен. Но только 3.3В.

Вообще я к этой теме только для расширения кругозора обратился. Для серьезной работы надо брать AT91SAM7X - там и ресурсов поболее, и контроллер на борту.

Правда передо мной стоит еще одна нестандартная задача - надо и Ethernet, и внешнюю шину. STR91xx дороговато. ATmega162 - ресурсов маловато, Atmega64+ - дорого, тогда уж проще LPC2212 + внешний Ethernet контроллер взять. В общем, осталось дождаться, когда AT91SAM7 с внешней шиной появятся. Ну или LPC23xx.

Вот если бы обдолбыши из филипса сделали LPC28xx в человеческом корпусе....
Go to the top of the page
 
+Quote Post
zltigo
сообщение Aug 21 2006, 20:18
Сообщение #24


Гуру
******

Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244



Цитата(Doka @ Aug 21 2006, 22:12) *
аха.. есть уже и более привлекательные СР2200 =)

Чем? Параллельной шиной, которую придется эмулировать мелким контроллерам?
Меньшими и жестко распределенными буферами? 48pin корпусом?


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
AVR
сообщение Aug 21 2006, 20:28
Сообщение #25


фанат Linux'а
*****

Группа: Свой
Сообщений: 1 353
Регистрация: 23-10-05
Из: SPB.RU
Пользователь №: 10 008



Цитата(Doka @ Aug 21 2006, 23:12) *
аха.. есть уже и более привлекательные СР2200 =)

В их описании написано, что они могут обмениваться данными через 8-ми битный интерфейс, значит ли это что они совместимы с uIP?
Цитата
Правда передо мной стоит еще одна нестандартная задача - надо и Ethernet, и внешнюю шину. STR91xx дороговато. ATmega162 - ресурсов маловато, Atmega64+ - дорого, тогда уж проще LPC2212 + внешний Ethernet контроллер взять. В общем, осталось дождаться, когда AT91SAM7 с внешней шиной появятся. Ну или LPC23xx.

Контроллер at91rm9200 насколько я помню обладает и внешней шиной, и встроенным ethernet:
1) Будет ли на нём работать uIP или что-нибудь подобное?
2) Насколько с ним сложнее чем с at91sam7?
Цитата(Evgeny_CD @ Aug 22 2006, 00:30) *
Вы сами поняли, что написали то? Какое отношение к стеку протокола имеет разрядность интерфейса чипа ? blink.gif
Честно говоря - нет unsure.gif

Сообщение отредактировал AVR - Aug 21 2006, 20:35


--------------------
Go to the top of the page
 
+Quote Post
Evgeny_CD
сообщение Aug 21 2006, 20:30
Сообщение #26


Гуру
******

Группа: СуперМодераторы
Сообщений: 2 065
Регистрация: 11-01-05
Из: Москва
Пользователь №: 1 892



Цитата(AVR @ Aug 22 2006, 00:28) *
В их описании написано, что они могут обмениваться данными через 8-ми битный интерфейс, значит ли это что они совместимы с uIP?
Вы сами поняли, что написали то? Какое отношение к стеку протокола имеет разрядность интерфейса чипа ? blink.gif
Go to the top of the page
 
+Quote Post
Doka
сообщение Aug 21 2006, 20:34
Сообщение #27


Electrical Engineer
******

Группа: СуперМодераторы
Сообщений: 2 163
Регистрация: 4-10-04
Пользователь №: 778



Цитата(zltigo @ Aug 22 2006, 00:18) *
Цитата(Doka @ Aug 21 2006, 22:12) *
аха.. есть уже и более привлекательные СР2200 =)
Чем? Параллельной шиной, которую придется эмулировать мелким контроллерам?
Меньшими и жестко распределенными буферами? 48pin корпусом?

аха.. а также альтернативным 28-pin QFN (5 x 5 mm footprint), Royalty-free TCP/IP stack with device drivers, TCP/IP Configuration Wizard
а параллельная шина - всего 11 линий, которые органично вешаются на интерфейс памяти, и не ограничивают скорость (в этой теме уже было упоминание подобного ограничения)

upd: насчет "эмулировать": в названии темы фигурирует ATmega162 . Так вот ему как раз ничего эмулировать не надо

Сообщение отредактировал Doka - Aug 21 2006, 20:39


--------------------
Блог iDoka.ru
CV linkedin.com/in/iDoka
Sources github.com/iDoka


Never stop thinking...........................
Go to the top of the page
 
+Quote Post
Evgeny_CD
сообщение Aug 21 2006, 20:44
Сообщение #28


Гуру
******

Группа: СуперМодераторы
Сообщений: 2 065
Регистрация: 11-01-05
Из: Москва
Пользователь №: 1 892



Цитата(Doka @ Aug 22 2006, 00:34) *
Royalty-free TCP/IP stack with device drivers, TCP/IP Configuration Wizard
Пошел маркетинговый развод. Это какой же стек они двигать будут? LwIP? uIP? OpenTCP? И под какую ОСь? Лябрус подсутился, и они будут uCOS двигать?


Цитата(AVR @ Aug 22 2006, 00:28) *
Контроллер at91rm9200 насколько я помню обладает и внешней шиной, и встроенным ethernet:
1) Будет ли на нём работать uIP или что-нибудь подобное?
2) Насколько с ним сложнее чем с at91sam7?
На нем пойдет все - от uIP до Linux. biggrin.gif Да, чип сложнее SAM7.
Go to the top of the page
 
+Quote Post
zltigo
сообщение Aug 21 2006, 20:50
Сообщение #29


Гуру
******

Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244



Цитата(AVR @ Aug 21 2006, 23:28) *
В их описании написано, что они могут обмениваться данными через 8-ми битный интерфейс, значит ли это что они совместимы с uIP?

С чего бы это вдруг такие далеко идущие выводы. Общение с MAC по любому не совместимо с NE2000
(полагаю в тестовой сборке uIP именно это железо), посему порт писать самому. Микрочиповское творение просматривал - построение по мотивам NE2000, что в прочем следует ожидать и от СP2200, ибо NE2000/1000 вещь классическая и продуманная.


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
defunct
сообщение Aug 21 2006, 20:56
Сообщение #30


кекс
******

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



Цитата(AVR @ Aug 22 2006, 00:28) *
В их описании написано, что они могут обмениваться данными через 8-ми битный интерфейс, значит ли это что они совместимы с uIP?

uIP это только IP стек.
Драйвер для работы с ethernet контроллером пишется отдельно.
Go to the top of the page
 
+Quote Post
zltigo
сообщение Aug 21 2006, 20:59
Сообщение #31


Гуру
******

Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244



Цитата(Doka @ Aug 21 2006, 23:34) *
аха.. а также альтернативным 28-pin QFN (5 x 5 mm footprint)
..
а параллельная шина - всего 11 линий, которые органично вешаются на интерфейс памяти

Ага 11 это мультиплексированный вариант. И куда это он "органично"?
Цитата
, и не ограничивают скорость (в этой теме уже было упоминание подобного ограничения)

Причем 30Mbit поминаются для немультиплексированного.
А SPI работающие на тактовой в 30Mhz много более распространены, нежели контроллеры с внешней шиной.
Цитата
upd: насчет "эмулировать": в названии темы фигурирует ATmega162 . Так вот ему как раз ничего эмулировать не надо

По этой причине в моем упоминании фигурировало уточнение - "мелким контроллерам".


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
defunct
сообщение Aug 21 2006, 21:17
Сообщение #32


кекс
******

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



Цитата(zltigo @ Aug 21 2006, 23:59) *
Цитата

upd: насчет "эмулировать": в названии темы фигурирует ATmega162 . Так вот ему как раз ничего эмулировать не надо

По этой причине в моем упоминании фигурировало уточнение - "мелким контроллерам".

Ммм.. по количеству ПП да и по количеству выводов m162 из разряда "мелких" (всего 16k/35 линий).. видать от этого и confuse получился.

Сообщение отредактировал defunct - Aug 21 2006, 21:17
Go to the top of the page
 
+Quote Post
Doka
сообщение Aug 21 2006, 21:20
Сообщение #33


Electrical Engineer
******

Группа: СуперМодераторы
Сообщений: 2 163
Регистрация: 4-10-04
Пользователь №: 778



Цитата(zltigo @ Aug 22 2006, 00:59) *
Ага 11 это мультиплексированный вариант. И куда это он "органично"?
ну. .насколько я помню AVR, тот же 8515 работает с внешней памятью в мультиплексированном режиме. не знаю насколько сейчас все изменилось
Цитата
Причем 30Mbit поминаются для немультиплексированного.
А SPI работающие на тактовой в 30Mhz много более распространены, нежели контроллеры с внешней шиной.
если взять на рассмотрение предложенные вами "мк" - мелкие контроллеры, туже мегу48 - то макс.скорость ее SPI - половина от внешней тактовой. При 5В получаем 10Mbit, при 3.3V - вообще 5Mbit.
Цитата
По этой причине в моем упоминании фигурировало уточнение - "мелким контроллерам".
ну для совсем мелких тут -да особой альтернативы нет.. а с другой стороны особо мелкие экономической целесообразности ставить нет. один тока ENC28J60/СР2200 7уёв стоит + разъем + трансформатор..


Цитата(defunct @ Aug 22 2006, 01:17) *
Цитата(zltigo @ Aug 21 2006, 23:59) *
Цитата
upd: насчет "эмулировать": в названии темы фигурирует ATmega162 . Так вот ему как раз ничего эмулировать не надо
По этой причине в моем упоминании фигурировало уточнение - "мелким контроллерам".
Ммм.. по количеству ПП да и по количеству выводов m162 из разряда "мелких" (всего 16k/35 линий).. видать от этого и confuse получился.
ща долго ломать копья будем. не воспринимайте "мелкие" буквально (в sam7 тоже только 32 линии). пример мелких - серии ATtiny, pic12, восемь ног, вместо озу тока регистры.


--------------------
Блог iDoka.ru
CV linkedin.com/in/iDoka
Sources github.com/iDoka


Never stop thinking...........................
Go to the top of the page
 
+Quote Post
zltigo
сообщение Aug 21 2006, 21:30
Сообщение #34


Гуру
******

Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244



Цитата
если взять на рассмотрение предложенные вами "мк" - мелкие контроллеры, туже мегу48 - то макс.скорость ее SPI - половина от внешней тактовой. При 5В получаем 10Mbit, при 3.3V - вообще 5Mbit.

Ну давайте не будем валить в одну кучу "мелкие" и влетающие тугой струей в "мелкий" контроллер 10Mbit - ему с ними делать нечего.
Что касается SPI - мелким удобнее SPI по количеству ног и практически гарантированному присутствию железного SPI. А у тех, кто "покрупнее" и SPI заодно и "потолще" и понавороченней - не затормозит.
Цитата
ща долго ломать копья будем. не воспринимайте "мелкие" буквально. пример мелких - серии ATtiny, pic12, восемь ног, вместо озу тока регисты.

Не, не буду. Тем более, что Вы кажется поняли.


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
Doka
сообщение Aug 21 2006, 22:31
Сообщение #35


Electrical Engineer
******

Группа: СуперМодераторы
Сообщений: 2 163
Регистрация: 4-10-04
Пользователь №: 778



Цитата(Evgeny_CD @ Aug 22 2006, 00:13) *
Вообще я к этой теме только для расширения кругозора обратился. Для серьезной работы надо брать AT91SAM7X - там и ресурсов поболее, и контроллер на борту.

Правда передо мной стоит еще одна нестандартная задача - надо и Ethernet, и внешнюю шину. STR91xx дороговато. ATmega162 - ресурсов маловато, Atmega64+ - дорого, тогда уж проще LPC2212 + внешний Ethernet контроллер взять. В общем, осталось дождаться, когда AT91SAM7 с внешней шиной появятся. Ну или LPC23xx.

Вот если бы обдолбыши из филипса сделали LPC28xx в человеческом корпусе....

а еще есть изумительные (в т.ч. и ценой) 5501 за 5уе с 32битной шиной внешней памяти и 300МГц тактовой =) мощная поддержка DMA (мк такая и не снилась)
и -40 там уже по дефолту. правда периферия не такая богатая. но это уже задачами диктуется.
это к вопросу об альтернативе "LPC2212 + внешний Ethernet контроллер"


--------------------
Блог iDoka.ru
CV linkedin.com/in/iDoka
Sources github.com/iDoka


Never stop thinking...........................
Go to the top of the page
 
+Quote Post
Evgeny_CD
сообщение Aug 21 2006, 22:48
Сообщение #36


Гуру
******

Группа: СуперМодераторы
Сообщений: 2 065
Регистрация: 11-01-05
Из: Москва
Пользователь №: 1 892



Цитата(Doka @ Aug 22 2006, 02:31) *
а еще есть изумительные (в т.ч. и ценой) 5501 за 5уе с 32битной шиной внешней памяти и 300МГц тактовой =) мощная поддержка DMA (мк такая и не снилась)
и -40 там уже по дефолту. правда периферия не такая богатая. но это уже задачами диктуется.
это к вопросу об альтернативе "LPC2212 + внешний Ethernet контроллер"
Я скорее MCF5208 выберу - 166 Мгц, DMA 16 канальный linked list, MAC 48 битный на борту.
===========
FreeScale (Motorola) ColdFire - наши мольбы о !BGA услышаны?
http://www.caxapa.ru/echo/arm.html?id=63110
http://electronix.ru/forum/index.php?showtopic=18754
Go to the top of the page
 
+Quote Post
Virtek
сообщение Oct 27 2006, 09:24
Сообщение #37





Группа: Новичок
Сообщений: 4
Регистрация: 26-10-06
Пользователь №: 21 693



Всем привет.

Прошу прощения, что, может, не совсем в тему.

Пытаюсь научить устройство работать с RTL8019AS, использую сетевую карту ИСА с данным чипом.
Само устройство еще подключено к комьютеру через RS232 (временно) для отладки, когда приходит пакет по езернет, устройство передает часть этого пакета на комп (для всё той же отладки).
Проблема в том, что не удается нормально считать принятый пакет. Есть реакция на посланный пинг - пакет с компа, то есть когда с компа не посылаю пинг - устройство молчит, когда посылаю - через РС232 приходит информация о пакете (то есть пакет принят).

Так вот, после того как пакет принят пытаюсь считать его с буфера данные и пару регитсров, вот, что получилось:
PSTART -> 22h; CURR -> 04h; BNDY - > 5Eh; packet -> 00 06 00 00 00 00 00 02 00 00 00 10 40

Если я не ошибаюсь, то в начале широковешательного пакета должно быть: FF FF FF FF FF FF, потом адрес отправителя, и т.д.... Что не соответствует прочитаному пакету с буфера, пускай даже с учетом первых 4-х байт (структура описания пакета). Что не так?... Никак не могу найти ошибку sad.gif...

Использую Мега8. Программа

Благодарен за любую помощь

Сообщение отредактировал Virtek - Oct 27 2006, 09:38
Go to the top of the page
 
+Quote Post
defunct
сообщение Oct 30 2006, 00:52
Сообщение #38


кекс
******

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



Цитата(Virtek @ Oct 27 2006, 12:24) *
PSTART -> 22h; CURR -> 04h; BNDY - > 5Eh

А как это CURR у вас равен 04?? а BNRY 0x5E? Это уже больше 16k однако..
RING буфер у RTL лежит в диапазоне адресов 0x40-0x80!
где-то ошибка..

по поводу broadcast'a есть есть нюанс, пакет не будет содержать сразу destmac, т.к. перед ethernet пакетом есть еще NIC заголовок 4 байта. Если правильно помню:
{ // для модели big endian
U8 Type; // 0x21 если пакет не разбит (занимает не более 6-ти страниц RING'a (1536 байт))
U8 NextBNRY; // - маркер следующего пакета
U16 Length;
}

посмотрел инициализацию, сразу не понравилось
RCR = 0xD4
DCR = 0x18;
PAR0 = 0x00;
глубже вникать не стал.

PS: Почему бы не сделать отдельную функцию (или макрос) для переключения страниц, а также не описать имена регистров, а то с цифрами легко можно было и промазать...
Go to the top of the page
 
+Quote Post
Virtek
сообщение Oct 30 2006, 11:23
Сообщение #39





Группа: Новичок
Сообщений: 4
Регистрация: 26-10-06
Пользователь №: 21 693



Цитата(defunct @ Oct 30 2006, 04:52) *
А как это CURR у вас равен 04?? а BNRY 0x5E? Это уже больше 16k однако..
RING буфер у RTL лежит в диапазоне адресов 0x40-0x80!
где-то ошибка..

Вот и я пытаюсь узнать: где? sad.gif
Где-то в процедуре чтения, может? unsure.gif
Может, у кого-то рабочие исходники функции чтения данных для этого чипа?

Цитата(defunct @ Oct 30 2006, 04:52) *
посмотрел инициализацию, сразу не понравилось
RCR = 0xD4
DCR = 0x18;
PAR0 = 0x00;
глубже вникать не стал.

Хм... в файле-программе:
RCR = 0x1C;
DCR = 0x48;
PAR0 = 0x10 (хотя, это ж первый байт МАК-адреса, если я не ошибаюсь)

Вы точно тот файл смотрели? read.asm?

Вот тут у меня ещё ламерский вопрос: есть ли у RTL8019, так сказать, ограничение по времени для выставляемых данных (после того, как чип принял команду для переписи принятых данных из буфера в память компьютера) ? То есть, чип выставил байт данных и если через некоторое время данные не забрали - выставляет следующий байт и т.д.
Так, как МК работает на 1МГц - может, он не успевает забирать все выставленные байты?
И потому - корявый пакет получается sad.gif

Спасибо
Go to the top of the page
 
+Quote Post
defunct
сообщение Oct 30 2006, 13:11
Сообщение #40


кекс
******

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



Цитата(Virtek @ Oct 30 2006, 14:23) *
Хм... в файле-программе:
RCR = 0x1C;
DCR = 0x48;
PAR0 = 0x10 (хотя, это ж первый байт МАК-адреса, если я не ошибаюсь)

Вы точно тот файл смотрели? read.asm?

Естессно смотрел, и привел правильные значения..

Цитата
Вот тут у меня ещё ламерский вопрос: есть ли у RTL8019, так сказать, ограничение по времени для выставляемых данных (после того, как чип принял команду для переписи принятых данных из буфера в память компьютера) ?

частота не более 8Mhz.

Цитата
То есть, чип выставил байт данных и если через некоторое время данные не забрали - выставляет следующий байт и т.д.

нет, данные выставляются по сигналу IOR с задержкой ~100ns и будут валидными пока IOR = 0.
Цитата
Так, как МК работает на 1МГц - может, он не успевает забирать все выставленные байты?
И потому - корявый пакет получается

Все он успевает.
Регистры ж у вас "читаются".
Для проверки можно прочитать сигнатуру чипа
#define rtlNicID0 (10)
#define rtlNicID1 (11)
должно быть "pP"

А вот CURR = 0x04 это ошибка, которая может говорить о том, что:
1. неверно установлен PSTART.
2. неверно читаются данные.
3. не из той страницы читаете (не тот регистр).
Попробуйте для начала отладить функции чтения-записи RINGa по фиксированным адресам.

PS: чип неудачно выбран ни отладочного интерфейса, ни шины памяти.
Go to the top of the page
 
+Quote Post
Virtek
сообщение Nov 7 2006, 07:49
Сообщение #41





Группа: Новичок
Сообщений: 4
Регистрация: 26-10-06
Пользователь №: 21 693



Хмм.. в регистр RCR, я так пониаю, нельзя записать "D4h" - у него 7-й и 6-й биты зарезервированны ...

Как-то, в ходе проведения экспериментов, 1 раз повезло - счетчик CURR увеличивался на соответствующее количество принятых пинг-пакетов. То есть, посылаю 1 пинг-пакет - счетчик увеличивается на 1, посылаю 2 - на 2....

Может, он "плохо" запускается? При подаче напряжения зеленый диод на карте загорается не сразу, бывает, что он загорается только после того, как к железному "крепежу" доторкнуться пальцем ....
Go to the top of the page
 
+Quote Post
Nanobyte
сообщение Nov 7 2006, 12:50
Сообщение #42


За битами по регистрам гоняюсь
***

Группа: Свой
Сообщений: 457
Регистрация: 24-04-06
Из: Таганрог
Пользователь №: 16 446



Цитата(Virtek @ Nov 7 2006, 11:49) *
... Может, он "плохо" запускается? При подаче напряжения зеленый диод на карте загорается не сразу, бывает, что он загорается только после того, как к железному "крепежу" доторкнуться пальцем ....

Вполне возможно, что есть проблемы с кварцевым генератором. Когда я делал блок на CS8900A, были такие проблемы. С импортными кварцами 20 МГц работает, требовалось применять наши, с ними очень плохо работает, или вообще не работает. Из регистров считывался всякий мусор, плохо определялась несущая (зелёный LED загорался и гас, как хотел). Пришлось собирать отдельный генератор на ЛА3.


--------------------
Курсор влево, курсор вправо - считается хакерством. FORMAT C: производится без предупреждения
Go to the top of the page
 
+Quote Post
Virtek
сообщение Nov 8 2006, 16:20
Сообщение #43





Группа: Новичок
Сообщений: 4
Регистрация: 26-10-06
Пользователь №: 21 693



Приношу свои извинения.
Мммм.... решил я свою проблемку.. smile3046.gif

Заключалась она в не правильной разводке - несколько линий соединялись между собой (на плате - разьеме для сетевухи)... не углядел wacko.gif

Еще раз, извините blush.gif
Go to the top of the page
 
+Quote Post
defunct
сообщение Nov 9 2006, 16:21
Сообщение #44


кекс
******

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



Цитата(Virtek @ Nov 7 2006, 10:49) *
Хмм.. в регистр RCR, я так пониаю, нельзя записать "D4h" - у него 7-й и 6-й биты зарезервированны ...

про биты 6 и 7 в ДШ написано "Type W, Always 1". Хотя в цвете последнего вашего поста, это уже не важно. ;>
Go to the top of the page
 
+Quote Post
prottoss
сообщение Feb 13 2007, 17:11
Сообщение #45


Гуру
******

Группа: Свой
Сообщений: 2 720
Регистрация: 24-03-05
Пользователь №: 3 659



Все доброго времени суток!

Начал разбираться с RTL8019AS. Изучая даташит на сей агрегат и параллельно схему ethernut возник вопрос. Зачем в ethernut используется 15 адресных линий для RTL8019AS? Как я понял, в последнем регистры располагаются по физическим адресам с 00h по 1Fh? Или я заблуждаюсь? Просто сейчас девайс на стадии проработки схемы, и хочется максимально обойти ошибки в схеме. К шине данных предполагается подключить еще несколько устройств выше адреса 7FFFh.


--------------------
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 Текстовая версия Сейчас: 20th July 2025 - 02:59
Рейтинг@Mail.ru


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