PDA

Просмотр полной версии : Cетевая карта для больших амиг: в разработке



tnt23
05.07.2013, 11:41
За основу взят контроллер CS8900A.

http://images12.fotki.com/v20/photos/8/1349988/8483241/IMAG1493-vi.jpg

Error404
06.07.2013, 14:38
Собственная разработка или переделка существовавшей? Если собственная: стек tcpip и сетевые приложения планируются? На основе какого стека? Уже готовые или предстоит?

Bobo
06.07.2013, 20:49
Если собственная: стек tcpip и сетевые приложения планируются?

ей вроде только SANA II драйвер нужен, а стеки и так в количестве имеются

tnt23
06.07.2013, 21:21
Собственная разработка или переделка существовавшей? Если собственная: стек tcpip и сетевые приложения планируются? На основе какого стека? Уже готовые или предстоит?

Собственная, курю даташиты и смотрю сорцы чужих драйверов для этого чипа. Регистры уже кое-как читаются.

http://images56.fotki.com/v1602/photos/8/1349988/8483241/IMAG1498-vi.jpg

Если написать драйвер SANA-II к карте, то все стеки и приложения будут с ней жить прозрачно и автоматически.

tnt23
23.07.2013, 15:44
Дампим пакетики:

http://images60.fotki.com/v778/photos/8/1349988/8483241/polling-vi.png

tnt23
30.07.2013, 22:49
Скелет драйвера выглядит как настоящий:

http://images54.fotki.com/v104/photos/8/1349988/8483241/roadshow_my-vi.png

И уже даже немножечко умеет принимать:

http://images15.fotki.com/v587/photos/8/1349988/8483241/IMAG1626-vi.jpg

tnt23
26.10.2013, 22:10
Новая плата с интегрированным Ethernet на чипе DM9000B:

http://farm6.staticflickr.com/5544/10497040166_36c9611af3_c.jpg

tnt23
11.11.2013, 11:10
http://farm4.staticflickr.com/3825/10794181966_895633992a_z.jpg

im2
11.11.2013, 11:51
А на Zorro II заработает?

Titus
11.11.2013, 12:12
http://farm4.staticflickr.com/3825/10794181966_895633992a_z.jpg

Зачем такая большая циклона для карты?

tnt23
11.11.2013, 12:20
Зачем такая большая циклона для карты?

Нужно много ног. Плата комбинированная: изначально несет на себе до 64М SDR памяти. Ethernet там появился уже позже, и еще в перспективе могут добавиться USB хост и какой-нибудь звук.

Titus
11.11.2013, 12:28
Нужно много ног. Плата комбинированная: изначально несет на себе до 64М SDR памяти. Ethernet там появился уже позже, и еще в перспективе могут добавиться USB хост и какой-нибудь звук.

Памяти на картинке не видать. Или это та одна микруха выше циклона?

А снизу много мелких - это буфера? Без них никак не состыковать циклон?

tnt23
11.11.2013, 12:30
А на Zorro II заработает?

Должна, если добавить поддержку Zorro II. Зря, что ли, туда добавились еще примерно 20 сигналов с шины, на чём ножки FPGA практически закончились :)

---------- Post added at 12:30 ---------- Previous post was at 12:29 ----------


Памяти на картинке не видать. Или это та одна микруха выше циклона?

А снизу много мелких - это буфера? Без них никак не состыковать циклон?

Памяти не видать, потому что 64М по современным меркам очень мало :-P Да, это 54-выводный TSSOP над плисиной.

Снизу и слева мелкие корпуса - двусторонние быстрые преобразователи между 5-вольтовой Zorro и 3.3-вольтовым IO циклона. Без них никак.

tnt23
12.11.2013, 15:41
http://farm4.staticflickr.com/3774/10817665015_0a72110d49_z.jpg

Titus
12.11.2013, 16:19
http://farm4.staticflickr.com/3774/10817665015_0a72110d49_z.jpg
Круто)
Какая скорость в бегабитах будет?

tnt23
12.11.2013, 17:18
Круто)
Какая скорость в бегабитах будет?

Чип умеет 10/100, но это скорость передачи среды. На самом деле будет медленно (или чуть быстрее, если несуществующий пока драйвер сможет работать по прерываниям).

Titus
12.11.2013, 19:48
Чип умеет 10/100, но это скорость передачи среды. На самом деле будет медленно (или чуть быстрее, если несуществующий пока драйвер сможет работать по прерываниям).
Медленно - это сколько?

А если не сможет?

tnt23
12.11.2013, 20:03
Медленно - это сколько?

А если не сможет?

Не знаю, обычно карты гоняют несколько сотен килобайт в секунду. Ну если не сможет - будет гонять меньше :) по большому счету это не важно.

Titus
12.11.2013, 20:08
Не знаю, обычно карты гоняют несколько сотен килобайт в секунду. Ну если не сможет - будет гонять меньше :) по большому счету это не важно.

Какой же в нем смысл, если он даже мегабит не вытягивает?

Bobo
12.11.2013, 20:27
ну мегабит вроде и есть несколько сотен килобайт
у меня АМД Ланс так и выдает килобайт 300

easy_john
12.11.2013, 20:32
Какой же в нем смысл, если он даже мегабит не вытягивает?
Зобанте его, что-ли, уже.
Человек делает для себя и just for fun сетевуху. Для амиги. Бесплатно. А он спрашивает "какой смысл". Где логика?

Titus
12.11.2013, 21:01
Зобанте его, что-ли, уже.
Человек делает для себя и just for fun сетевуху. Для амиги. Бесплатно. А он спрашивает "какой смысл". Где логика?

Себя забань.
'Он' не ругает или критикует, а спрашивает, какой в этом смысл. Если just for fun, то вопросов больше нет. Может она быстрая, или кому-то еще будет интересно. Вопросы нужны.

tnt23
13.11.2013, 00:17
Какой же в нем смысл, если он даже мегабит не вытягивает?

Смысл очень простой: сетевая карта - самый удобный и быстрый способ для подключения Амиги к внешнему миру. Дискеты и CD/DVD не являются ни удобными, ни быстрыми. Поднять на последовательном порту PPP можно, но вытянуть больше 115 килобит не получится. Подключить USB сетевуху могут только счастливые обладатели Deneb (я, например).

Родных сетевых карт для Амиги в природе исчезающе мало, и они, как правило, старые, тормозные, не поддерживают 100М, и главное - дорогие как представляющие коллекционную ценность. Есть новодельные, но тоже недешевые, к тому же мне претит брать конкретно новодельные сетевухи по сугубо личным соображениям.

Ну и касаемо скорости - мне лично все равно, будет ли качаться файл по FTP со скоростью 500 или 600 килобайт в секунду.

Titus
13.11.2013, 01:07
Родных сетевых карт для Амиги в природе исчезающе мало, и они, как правило, старые, тормозные, не поддерживают 100М

А какой смысл поддерживать 100M, если по факту получается не более 1М, т.е. это укладывается в стандарт 10Base, и любой хаб и свитч поддерживает режим 10Base?

tnt23
13.11.2013, 11:13
А какой смысл поддерживать 100M, если по факту получается не более 1М, т.е. это укладывается в стандарт 10Base, и любой хаб и свитч поддерживает режим 10Base?

Тоже смысл очень простой: не любой хаб и не любой свитч уже поддерживают 10М. Компрене ву? Потом, если вдруг получится сделать быстрый драйвер, с прерываниями и проч., будет обидно упереться в 10М.

---------- Post added at 11:13 ---------- Previous post was at 09:52 ----------

Чтобы не скучно было, тест светодиодов.

http://farm4.staticflickr.com/3755/10832324855_1e7ebecc82_z.jpg

Titus
13.11.2013, 12:40
Тоже смысл очень простой: не любой хаб и не любой свитч уже поддерживают 10М. Компрене ву?
А вот это для меня сюрприз. Надо будет разобраться, ибо сам делаю масенькую поделку под 10М.

tnt23
15.11.2013, 18:52
Дампим пакетики.

http://farm8.staticflickr.com/7377/10870389485_f1ca2a491d_z.jpg

easy_john
15.11.2013, 19:02
Если все пакеты приходят, то можно считать, что все работает уже.

tnt23
16.11.2013, 01:43
Если все пакеты приходят, то можно считать, что все работает уже.

На низком уровне (сопряжение с ПЛИС, укладка в циклы Zorro) да. А уровнем повыше (куски кода драйвера, ответственные за Rx и Tx) еще нет. Впрочем, все это и раньше работало еще на чипе CS8900, даже отправка пакетов через SANA драйвер.

tnt23
24.11.2013, 21:51
Реализована работа по прерываниям, в целом код по приёму пакетов работает.
http://www.amiga.org.ru/forum/download/file.php?id=1128

tnt23
25.11.2013, 14:40
Заработал код для передачи пакетов. На Амиге пишем:


SANAUTIL -d dm9000.device BROADCAST

На линуксе радуемся:


08:24:02.338898 00:44:66:88:aa:cc (oui Unknown) > Broadcast,
ethertype Unknown (0x1388), length 114:
0x0000: 5341 4e41 7574 696c 2074 6573 7420 7061 SANAutil.test.pa
0x0010: 636b 6574 202d 2d20 5341 4e41 7574 696c cket.--.SANAutil
0x0020: 2074 6573 7420 7061 636b 6574 202d 2d20 .test.packet.--.
0x0030: 5341 4e41 7574 696c 2074 6573 7420 7061 SANAutil.test.pa
0x0040: 636b 6574 202d 2d20 5341 4e41 7574 696c cket.--.SANAutil
0x0050: 2074 6573 7420 7061 636b 6574 202d 2d20 .test.packet.--.
0x0060: 5341 4e41 SANA

tnt23
01.12.2013, 17:29
Драйвер хорошеет день ото дня, уже начинает несмело блеять на DHCP :)

tnt23
03.12.2013, 09:10
Ping!

http://farm6.staticflickr.com/5488/11184159354_8863522dbe_z.jpg

Умопомрачительная скорость загрузки:

http://farm4.staticflickr.com/3759/11185283846_9efb83aaef_z.jpg

yorgee
04.12.2013, 20:43
красавец.

tnt23
05.12.2013, 09:00
Тогда вот вам еще скриншотик:

http://www.amiga.org.ru/forum/download/file.php?id=1133

tnt23
10.12.2013, 12:11
Может показаться, что с драйвером ничего не происходит, но это не так. Например, пофикшен злобный баг, из-за которого не работал FTP в пассивном режиме (а для Амиги FTP крайне важен, как/чем еще выкачивать содержимое сокровищницы Aminet.Net?).

Попутно слегка улучшилась прокачка - около 120К в обе стороны.

tnt23
17.12.2013, 23:41
На сегодня прокач в отсутствие фаст-памяти порядка 260K/290K туда-обратно.

В январе предполагаю сделать пяток плат, желающие велкам в личку.

breeze
18.12.2013, 01:20
В январе предполагаю сделать пяток плат, желающие велкам в личку.

А ты не рассматривал вариант сделать нечто похожее для не совсем «больших» амиг? например для A600? :D

easy_john
18.12.2013, 01:24
А зачем, если за 20 баксов можно купить проводную или wifi сетевую карту в pcmcia?

tnt23
23.01.2014, 13:37
Собрал тулзу для прописывания MAC-адреса в набортную EEPROM:

http://www.amiga.org.ru/forum/download/file.php?id=1143

tnt23
04.02.2014, 22:31
Запустил карту на A3000 с другими Zorro-картами: контроллером USB Deneb (с его помощью система грузится с флешки) и видеокартой Cybervision 64/3D. Сеть работает в обоих случаях, а вот память как-то конфликтует с видеокартой. Буду разбираться.

tnt23
07.03.2014, 17:12
Собрал сетевую карту №2.

tnt23
26.03.2014, 19:12
Готовы еще 2 платы. Больше плат в ближайшее время не будет.

https://farm8.staticflickr.com/7224/13427198063_93cd8b86d3.jpg

tnt23
29.05.2014, 00:18
Взял, как водится, у коллеги easy_john покататься акселератор с 68060. Совсем другая картинка :)


NETIO - Network Throughput Benchmark, Version 1.32
(C) 1997-2012 Kai Uwe Rommel

UDP server listening.
TCP server listening.
TCP connection established ...
Receiving from client, packet size 1k ... 947.98 KByte/s
Sending to client, packet size 1k ... 659.21 KByte/s
Receiving from client, packet size 2k ... 1057.02 KByte/s
Sending to client, packet size 2k ... 895.88 KByte/s
Receiving from client, packet size 4k ... 1119.78 KByte/s
Sending to client, packet size 4k ... 1269.84 KByte/s
Receiving from client, packet size 8k ... 1183.08 KByte/s
Sending to client, packet size 8k ... 1380.43 KByte/s
Receiving from client, packet size 16k ... 1212.76 KByte/s
Sending to client, packet size 16k ... 1411.63 KByte/s
Receiving from client, packet size 32k ... 1207.01 KByte/s
Sending to client, packet size 32k ... 1427.19 KByte/s
Done.

tnt23
29.05.2014, 15:12
Готовы еще 2 платы. Больше плат в ближайшее время не будет.


Ближайшее время закончилось, в недалеком будущем будет еще 4 платы.