Ethernet LAN91C111

Mar 27, 2006 21 Replies

Czy kto¶ z tu obecnych ma mo¿e jakie¶ do¶wiadczenia z pod³±czaniem kostki ethernetu LAN91C111 do procka? W szczególno¶ci, czy kto¶ kiedy¶ pod³±cza³ go po magistrali 16-bitowej? Mam pewne pytanko na które byæ mo¿e kto¶ do¶wiadczony z t± kostk± mo¿e mi odpowiedzieæ. Proszê o odzew je¶li kto¶ cokolwiek robi³ z jakim¶ innym nawet Ethernetem w postaci ca³kowicie zewnêtrznego kontrolera.


ja robile mna RTL8169S-32, od podstaw wraz z pisaniemm stosu w ASM smiga pieknie..pelne 100MB/s...tylko linux nie wyrabia z 2 strony :-)

A te dwie kostki s± kompatybilne ze sob±?

Tej o wilku i czerwonym kapturku... a co ?

Pszemol napisał(a):

Bardzo fajny scalak, doczepiałem z powodzeniem do ARMa z 16-bitową magistralą danych (AT91R40008 czy jakoś tak).

Pszemol napisał(a):

Wygląda na to, że nie - RTL8169 ma magistralę PCI a LAN91C111 zwykłą

16-bitową równoległą ze strobami (a'la pamięć SRAM). Łatwo się obsługuje także układy CS8900A i RTL8019AS, ale to są chipy 10Mbps.

Pszemol napisał(a):

formatting link

Ile linii adresowych potrzebowa³e¶ ? Ja bêdê musia³ doczepiæ go do 32-bitowego NiosaII Altery, ale 32-bitów mam tylko wewn±trz - na zewn±trz kostki mam tylko

16-bitów magistralê wspóln± dla flash, sram i ethernet... Interfejs do ethernetu w Niosie II daje mi tylko 4 bity adresu. Czy ten chip ma pracowaæ z zewnêtrznym buforem ramki ethernetu?

Przyznajê uczciwie ¿e nie mia³em jeszcze czasu przeczytaæ datasheet do tego scalaka, wiêc pytam z wyprzedzeniem nieco :-))

Dam ci dobra rade zacznij czytac data shity nie bedziesz zadawal pytan w stylu czy te uklady sa kompatybilne jak jeden to PHY a drugi PCI.

Mietu¶, jak nie chcesz odpowiadaæ to kto Ciê zmusza ? Grupa dyskusyjna jest dla tych, co chc± pogadaæ... Je¶li Ciê temat nie interesuje to po co g³os zabierasz ?

chwilke w PSOC compiler jest biblioteka dotego scalaka, i chyba ilosc bitow jest narzucona. Chyba ze ci pinow brakuje w FPGA. Co do bufora, to ma wewnetrzny, zalezy co rozumeisz pod tym pojeciem

tylko pieronsko drogi eksperymentuje wlasnie z DM9000A, ksztuje 3 eur i ma liczenie sprzetowe sum kontrolnych oraz inne uzyteczne drobiazgi. No i oczywiscie PHY 10/100

Mam ogólne pytania, bo w ogóle nie mam pojêcia o temacie :-) Nigdy nie u¿ywa³em kostki ethernetu w swoich projektach...

Dla przyk³adu - jak odbywa siê kompletowanie ramki ethernetowej przy za³o¿eniu ¿e sprzêg z procesorem to kilkana¶cie rejestrów w przestrzeni adresowej we/wy? Mam interface do niosa Altery w którym mam tylko nastêpuj±ce piny:

- address[3..0]

- data[15..0]

- byteenablen[1..0]

- ior_n

- iow_n

- reset

- irq

Tylko cztery piny adresowe mog± zaadresowaæ jedynie 16 s³ów

16-bitowych. Ramki ethernetowe maj± kilka kilobajtów... wiêc domy¶lam siê (ale mnie to dziwi) ¿e ramka powstaje w pamiêci zewnêtrznej w stosunku do LAN91C111. Jednak kostka ta ma mnóstwo linii adresowych (chyba 16), wiêc sugerowa³oby to ¿e ma w sobie jak±¶ adresowaln± pamiêæ, czy co¶ w tym gu¶cie.

W trybie 32-bitowym widzê przyk³ady u Altery wykorzystuj±ce pe³n± szynê adresow± i pe³n± 32-bitow± szynê danych przez niosa, ale ja mogê na swojej p³ytce wykorzystaæ tylko 16 bitów danych... wiêc nie mogê skorzystaæ wprost i bezmy¶lnie :-) z ich przyk³adów... Muszê wymy¶leæ sposób w jaki to zadzia³a.

Hm... SOPC builder ma rzeczywi¶cie bibliotekê interfejsu do tego scalaka. I to w dwu wersjach: jedna wersja obs³uguje 32-bitow± szynê danych, ma liczne linie adresowe - i do niej s± przyk³ady i kod ¼ród³owy... Taki sposób pod³±czenia jest na p³ytkach do¶wiadczalnych Altery. Ja niestety wybra³em kostkê FPGA w obudowie F256 i brakuje mi pinów aby pod³±czyæ g³upi ethernet po szynie 32-bitowej. Dowiedzia³em siê, ¿e Altera mia³a jeszcze drug± wersjê interfejsu u¿ywan± z inn± p³yt± do¶wiadczaln± gdzie kostka ethernetu by³a na dodatkowej p³ytce pod³±czanej do tej g³ównej (tzw. daughter board). Ta wersja interfejsu ma ju¿ 16 bitów danych, czyli to co chcê, ale na odmianê ma "zastraszaj±co" ma³± liczbê linii adresowych: 4. Co sugeruje, ¿e kostka ta w trybie 16-bitowym niosa mia³a bufor ramki obs³ugiwany przez procesor w zewnêtrznej pamiêci RAM, co mi tu ¶mierdzi strasznie powoln± obs³ug± albo konieczno¶ci± DMA czy innego bus mastering.

No w³a¶nie nie bardzo rozumiem w jaki sposób ten 16-bitowy interfejs altery by³ w stanie zaadresowaæ bufor ramki, maj±cy parê kilo bajtów u¿ywaj±c tylko 4-bitów adresowych :-) To mi ¶mierdzi czarn± magi± ;-)

Użytkownik Pszemol napisał:

Tak , ma.

Do adresowania całego scalaka potrzebne są 4 najmłodsze linie adresowe. Natomiast resztę lini adresowych podłączamy tak aby tworzyły adres

0x030X, gdzie X to 4 używane linie adresowe. Wychodzi więc że A8,A9 do VCC a reszta do masy. Jest to domyślny adres bazowy w/w. Jeżeli wymuszasz tylko dostep 16 bitowy to możesz be0 i be1 na stałe do masy, natomiast be2 i be3 do vcc - wybieranie aktywnych batów w czasie dostępu.

Przy okazji prosze pamiętać że rejestry sterujące i rejestry danych mają zamienione bajty w stosunku do siebie :))

Pozdrawiam

Adam Górski

[ciach]

Ja kiedys uzywalem RTL8019AS tam masz 4 strony po 16 rejestrow 8 bitowych i pewne pary sluza do adresowania bufora ramki przy zapisie z zewnatrz i przy wysylaniu do sieci - trzeba ustawic adres do ramki w buforze przed wydaniem komendy rozpoczecia nadawania.

Trzeba czytac sheety ;-) pozdr.

"Adam Górski" <gorskia@......................................wp.........................pl............................> wrote in message news:1aeee$44297b09$540a7132$ snipped-for-privacy@news.chello.pl...

Nie bardzo rozumiem tego wy¿ej... Zamiast jednego CS (chip select) producent wyprowadzi³ 15 linii adresowych? I to tylko po to, aby dwie z nich byly na sta³e do VCC a reszta do masy podl±czone? Co¶ mi tu ¶mierdzi...

Pszemol przemówił ludzkim głosem:

Wbudowany dekoder adresu, co w tym dziwnego ?

Join the Discussion

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

Didn't find your answer?

Ask the community — no account required