host pci dla ethernetu

Aug 24, 2006 14 Replies

Witam. Zrobi³em jakiœ czas temu urz¹dzonko dla karty sieciowej ISA z chipsetem zgodnym z ne2000 na AVR. Czy próbowa³ ktoœ takich rzeczy z kart¹ PCI?



Po pobie¿nym przejrzeniu dokumentacji PCI myœlê ¿e da³oby siê to zrobiæ. Problemem widzê g³ównie w liczbie wyprowadzeñ PCI bo trzeba ich ok. 45ciu. Na PLD nie za bardzo siê znam wiêc zastosowa³bym dwa procki. Z za³o¿enia magistrala PCI pracuje z f=0-33MHz wiêc zegar generowa³bym programowo powiedzmy z 1MHz.



Chyba op³aca³oby siê montowaæ w urz¹dzeniach gotowe karty pci, które kosztuj¹ 20z³ zamiast modu³y ethernetowe kilkakrotnie dro¿sze?



Co o tym myœlicie czy to nie "poroniony" pomys³?



Pozdrawiam Pawe³


czemu ma byc poroniony? - chodzi za mna to juz od dluzszego czasu, a karty pci na allegro nie sa drozsze niz 6 - 9zl i raczej innych niz z allegro nie ma co wstawiac. Mysle ze takie PCI w sofcie mogloby chodzic po uzupelnieniu kilkoma TTL z calkiem sensowna predkoscia. Dawaloby to szanse na wykorzystanie kart VGA czy wlasnie sieciowek...

pomysl IMHO calkiem niezly jdnakze bez prostego PLD kiepsko to widze..chyba ze kilka TTL, ale to samo przeciez mzoesz sobie namalowac na TTLach w edytorze schematow PLD i skompilwoac ja swoja droga odpalilem juz ponad rok temu serwer bazujacy na karcie PCI gigabit i procesorze 8051 z szybkim rdzeniem taktowanym 48MHz.. FPGA robilo tylko za konwersje 8bit->32 bit oraz automat realizujacy transakcje busmaster/ slave PCI. Reszta w sofcie. ICMP mialem ponizej 1ms, a transfery zapychaly mi siec 100mbit.. PCI chodzi mi na 24MHz

teraz mysle czy nie wykorzystac by w ten sposob sieciowek bezprzewodowych MINIPCI + ARM

No niestety nie mia³em do czynienia z PLD. Co do schematów i kompilacji to bym sobie pewnie poradzi³. Gorzej z wrzuceniem softu bo nie mam pojêcia jak to siê programuje isp, czy jaki¶ specjalny programator? Jaki konkretnie uk³ad móg³by¶ poleciæ co by robi³ za mostek. Rozumiem ¿e musia³by obs³u¿yæ wszystkie sygna³y pci ok. 45 + komunikacja z prockiem jakie¶ 10 linii. Czy nie przekroczy ceny dedykowanego uk³adu pci->isa?

Pozdrawiam Pawe³

programator to zwykly JTAG, mozesz kupic za kilkadziesiat zl lub zmontowac uzywajac HC244 + kilku rezystorow szukaj schematow Byteblaster II /MV (Altera) oraz Parallel Cable III (Xilinx)

nie wszystkie, wystarczy wlasciwie AD31..0, BE3..0, FRAME, TRDY,IRDY,DEVSEL,IDSEL, CLK, RST reszta w najrpostszym przypadku uzywania karty jako SLAVE jest zbedna czesc kart pracuje w trybie busmaster, pobierajac sobie samemu pakiety bezposrednio z RAM, zatem musi miec jeszcze zaimplementowany busmastering i dodatkowe sygnaly REQ i GNT caly PCI mi zajal ok 250LE czyli jednak trzeba dosyc pokazny CPLD lub malutki FPGA czyli np XC95288 lub XC2C256 ew Spartan 3 z Altery to MAX2 (EPM240 lub EPM570) lub cyclone (EP1C2, EP1C3) Taki CPLD powinno dac sie juz kupic za klikanascie zl przy wiekszej ilosci. FPGA powinno dac sie za 20..50zl Zadanie powinno tez dac sie to zrealizowac ARMem Ew za pomoca kilku zatrzaskow moznaby skurczyc magistrale AD do 8 bitow..

mysle ze nie, w przypadku uzywania scalakow PLX ilosc I/O jest podobna, prostsza jest jedna kwtedy implementacja Same mostki PLX sa dosyc drogie i trudnodostepne

BTW: znacie jakies kosci realizujace WIFI, ale z interfejsem innym niz PCI lub USB? najlepiej cos single chip...

Greg(G.Kasprowicz) napisał(a):

Były/są karty CF/SD do palmtopów z WiFi.

-- >> BTW: znacie jakies kosci realizujace WIFI, ale z interfejsem innym niz PCI

wiem, lecz ceny troche wysokie.. od 250zl w gore..chociaz pewnie znacznie potanieja.. i na razie ciezko z dokumentacja do nich

ciekawe jakei chipy siedza w kartach na USB...

Przegl±da³em w³a¶nie dokumentacjê do¶æ popularnego RTL8139C (du¿o jest dostêpnych kart PCI na tym). I takmnie zastanowi³o czy nie da³oby siê wszystkiego zrobiæ na o¶miu bitach AD?

Adresy starsze od AD 8-31 podpi±æ przez resystory do masy. Adresy bazowe w rejestrach konfiguracyjnych ustawiæ na 0. PCI mówi ¿e szeroko¶æ przesy³anych danych okre¶lana jest przez bity C/~BE wiêc jako inicjator zawsze ustawiê na 0001 (0-7). Offsety wszystkich rejestrów zarówno konfigurayjnych PCI jak i obs³ugi ethernetu nie przekraczaj± 0xFF. Ca³y dostêp do pamiêci bêdê robi³ przez mapowanie I/O (RTL8139C na to pozwala).

RTL8139C równie¿ pozwala na wy³±czenie obs³ugi busmaster.

Czy da siê tak przez 8 linii A/D? Czy co¶ mog³em pomin±æ?

Dziêki za pomoc Pozdrawiam Pawe³

Dnia 2006-08-24 11:57, Użytkownik Greg(G.Kasprowicz) napisał :

A PCIMCIA?

najtańsze to niedawna były chyba karty na Ralinkach RT2570

wymaga duzej ilosci pinow, karty sa spore..juz lepiej dac mini-PCI chyba

thx, poszukam..

Na miniPCI polecam karty na chipsecie Atheros. Dodatkowo jest do nich projekt madwifi dla linuksa.

Pozdrawiam Pawe³

podczas konfiguracji (IDSEL) dostep jest IMHO wylacznie 32 bitowy. A musisz wlaczyc jakos urzadzenie w tablicy deskryptorow, pomijam przypisanie adresu, mzoe byc 0000 nie ejstem pewien, ale niektore rejestry nie chcialy dawac sie zapiswac 8 lub 16 bitowo (robilem na RTL8169S)

to za malo karta jakos musi sobie sama skopiowac dane z zewnetrznej pamieci. Wewnatrz niej definiujesz tylko deskryptory, ktore zawieraja wskazniki do pakietow w zewn RAM. Nie zauwazylem nigdzie opcji zapisu bezposrednio do wewnetrznej RAM w karcie..

8169 jest rozszerzeniem 8139, i 90% rejestrow ma identycznych

mi przyszlyy do glowy tylko 2 sprawy powyzej..pewnie jest ich wiecej

Chyba masz racjê. Rzeczywi¶cie potrzebny jeszcze RAM i bez obs³ugi bus mastra siê nie obejdzie. Z PCI pozostaje tylko rtl8029as zgodny jest z ne2000 i ma wewnêtrzny RAM z tym ¿e z dostêpno¶ci± tych kart te¿ mo¿e byæ problem.

Pozdrawiam Pawe³

dobrze, pytanie - czy jest do nich gdzies rozpiska rejestrow albo pelny kod zrodlowy sterownika? z teo co spotkalem to niewiele da sie sklecic

Hm. Nie wiele ci pomogê bo nie interesowa³em siê tym zbytnio. Mo¿e tu co¶ znajdziesz.

formatting link
Z tego co wyczytalem to chyba procesory Atherosa s± w³a¶nie na bazie ARM.
formatting link
Co do pinów to chyba jaki¶ standard dla kart miniPCI jest. Osobi¶cie u¿ywam takiej karty typ CM9 z przj¶ciówk± na PCI .

Pozdrawiam Pawe³

Join the Discussion

Have something to add? Share your thoughts — no account required.

Didn't find your answer?

Ask the community — no account required