PCI nätverkskort + FPGA (bild & video), updaterad

Berätta om dina pågående projekt.
blueint
Inlägg: 23238
Blev medlem: 4 juli 2006, 19:26:11
Kontakt:

PCI nätverkskort + FPGA (bild & video), updaterad

Inlägg av blueint »

Först tar man ett PCI nätverkskort:
Bild

Löder loss MAC chippet:
Bild

Matar det direkt med 3.3V, och vips så fungerar länkpulsen:
4M .wmv zippyvideos
1M mpeg4 .avi freewebs.com
:D

Edit0: Tog bort sugsajt som tydligen visar en normal filnedladdnings sida för uppladdaren, och en annan för andra..
Edit1: freeimagehosting.net har belastningsproblem (pga storhelg?)
Senast redigerad av blueint 28 december 2007, 15:45:00, redigerad totalt 4 gånger.
Användarvisningsbild
grym
EF Sponsor
Inlägg: 17578
Blev medlem: 16 november 2003, 12:22:57
Ort: i det mörka småland

Inlägg av grym »

då kommer ju frågan , varför?
:)
Användarvisningsbild
ElectricMan
Inlägg: 4874
Blev medlem: 21 februari 2007, 20:22:48
Skype: ElectricManSwe
Ort: Luleå
Kontakt:

Inlägg av ElectricMan »

Ja, vad ska man göra med den?
blueint
Inlägg: 23238
Blev medlem: 4 juli 2006, 19:26:11
Kontakt:

Inlägg av blueint »

Man kollar att den fungerar innan man kopplar den till FPGA.
Användarvisningsbild
Illuwatar
Inlägg: 2256
Blev medlem: 10 november 2003, 14:44:27
Skype: illuwatar70
Ort: Haninge
Kontakt:

Inlägg av Illuwatar »

Vad handlar detta projekt om egentligen (att det ingår en nätverkskrets och en FPGA har jag förstått, men till vad)? Jag skulle vilja se lite mer tekniskt bakom detta i stället för snack om videoformat och sunkiga upload-siter...
blueint
Inlägg: 23238
Blev medlem: 4 juli 2006, 19:26:11
Kontakt:

Inlägg av blueint »

Programmera FPGAn att kommunicera via ethernet PHY. Vill testa signaleringsgränssnittet bl.a. hur många signaler man egentligen behöver. Och framförallt se att det fungerar i praktiken. Blir lätt väl abstrakt på ett färdigt utvecklingskort.
Användarvisningsbild
JimmyAndersson
Inlägg: 26566
Blev medlem: 6 augusti 2005, 21:23:33
Ort: Oskarshamn (En bit utanför)
Kontakt:

Inlägg av JimmyAndersson »

Plockade bort några inlägg om upload-sajter, nu när filmerna fungerar.

Ser intressant ut, men jag skulle vilja veta lite mer om detaljerna "bakom" detta. :)
blueint
Inlägg: 23238
Blev medlem: 4 juli 2006, 19:26:11
Kontakt:

Inlägg av blueint »

Jag behövde ett (MII) nätverksinterface till en FPGA så jag har letat efter lämplig utrustning som innehåller ett PHY som är dokumenterat och går att löda på. LSI 80225 som jag använder i denna konstruktion är relativt lätt att jobba med då den har en pin pitch på 1.27 mm.
Problem #1 är att nätverkskortet redan har en krets för att styra ethernet PHY kretsen dvs MAC kresten (PHY<->PCI). Så den måste lödas bort.

Problem #2 är att ordna strömförsörjning. Kan vara klurigt eftersom befintlig konstruktion är tänkt att få strömförsörjningen via PCI bussen (eller 9V adapter för ADSL modem). Jag har redan bränt ett kretskort genom att mata spänningen direkt på utsidan. Så lärdomen är att vara väldigt försiktig med sådant. Men PCI kortet är ganska enkelt i det avseendet. Ingen krets som bränner sig till kortis om man matar direkt till kretsarnas Vcc + GND.

Problem #3 är att verifiera att kretsen överlevt modifieringarna. Tydligen är det så att alla PHY jag jobbat med som standard skickar länkpuls till switch/annat nätkort. Så om allt är kopplat korrekt får man "länk" vid spänningspåslag efter ca 2s. Och kan på så sätt veta att åtminstone den "analoga" delen är korrekt liksom spänningsmatning.

När man kopplat upp allt och vet att det fungerar så är det dags att löda på signalledningarna, därefter får man verifiera funktionen igen. Som det är nu funkar PHY kretsen om man inte slår på FPGAn. Men det beror antagligen på att den skickar ut signaler mha pullup/pulldown. Och skapar lite kaos :)
Lite omkopplingar och ny konfigurationsfil lär lösa det problemet (bl.a. verkar INIT_B från FPGAn hamnat på en av PHY utgångarna..).

Dessa signaler är dom som är intressanta från PHY kretsen (absolut minimum):
TX_CLK -> (positive flank)
TX_EN <- Send
TXD[3:0] <- Data

RX_CLK -> (negative flank)
RX_DV -> Receive
RXD[3:0] -> Data

Signaler som man förmodligen kan skippa i initialt:
RX_ER -> Error
TX_ER <- Error
MDC <- MI Clock (konfiguration, default är ok)
MDIO <-> Data I/O (konfiguration, default är ok)
CRS (för 10M)
COL (för 10M)

För 10M ethernet finns AUI som är den äldre versionen av MII (kan man säga).

Tanken är att skapa ett program i verilog som klockat avTX_CLK räknar upp en räknare som i sin tur sätter TX_EN=1, och sätter TXD[3:0] = SDF, MAC destination, MAC källa, "data"..etc..
i turordning. Det borde ge basal funktion. Tcpdump (unix kommando) bör plocka upp packet som har fel CRC. Senare kan man väl fixa till UDP med korrekta MAC adresser och CRC32 så att man inte behöver vara 'root'.
Användarvisningsbild
HUGGBÄVERN
Tidigare soundbrigade
Inlägg: 34918
Blev medlem: 23 augusti 2006, 22:44:11
Ort: Lilla Paris
Kontakt:

Inlägg av HUGGBÄVERN »

Det skulle vara ett projekt i Allt om Elektronik där man använde ett nätverkskort (ISA dessvärre) ............ här var det. En billig webserver med en ATmega32 mikrokontroller.
blueint
Inlägg: 23238
Blev medlem: 4 juli 2006, 19:26:11
Kontakt:

Inlägg av blueint »

En MCU (som ATmega32) klarar inte dom hastigheter det är frågan om på MII busen så det är förmodligen med MAC+PHY. Vilket gör att man inte kan pipelina applikationer på samma sätt. Dessutom är ISA kort stora.. :)
Användarvisningsbild
JimmyAndersson
Inlägg: 26566
Blev medlem: 6 augusti 2005, 21:23:33
Ort: Oskarshamn (En bit utanför)
Kontakt:

Inlägg av JimmyAndersson »

Tack för beskrivningen. Nu hänger jag med. :)
Kul projekt!


"Jag har redan bränt ett kretskort genom att mata spänningen direkt på utsidan."

Bra att du skrev det för jag har flera gånger haft tanken att ansluta spänningen direkt på kortkontakten. Tur att jag inte gjort det. :)
Användarvisningsbild
Tony
Inlägg: 1038
Blev medlem: 9 november 2003, 16:08:47

Inlägg av Tony »

Varför nyttjar du inte WOLkontakten?

På den övre bilden i 1:a inlägget ser man en vit trepins kontakt med 2mm pitch.

1. +5V 2. GND 3. Wake up (startar datorn).
Pin 1 är till höger i bild.

Om man behöver en testare för att hitta aktiva nätverksuttag så funkar ett PCInätverkskort med WOL utmärkt, bara lägg till en 7805 och ett 9Vbatteri.

Det borde inte vara något problem att bygga ett nätverksstyrt relä mha. av ovan.
blueint
Inlägg: 23238
Blev medlem: 4 juli 2006, 19:26:11
Kontakt:

Inlägg av blueint »

Om du menar kortkanten på PCI så är det nog mindre *risk* för strul. Detta nätverkskort verkar bara ha en spänningsregulator. Men den förser tydligen inte PHY kretsen med ström.
Däremot ogillar D-Link DSL-300G totalt sådana försök på sin 3.3V, medans Cisco ISDN modem inte hade något emot samma försök på dess 5V.
Vad du måste kolla efter är spänningsregulatorer och tänka igenom om dom kommer att strula. Normalt sett är det som sagt inget problem. Sällan, men ibland skiter det sig totalt. DSL300G kortet får inte upp spänningen över 0.8V hur än man matar på efter dylikt försök. Och jag hittar inte vilken komponent som orsakar det. Enklare att gå vidare med nästa försökskanin :D

Så kolla efter hur spänningsmatningen är uppbyggd. Ser den komplicerad ut så försök att mata den som det är tänkt. Kolla framförallt om du kan löda bort elförsörjningsdelen om det behövs.

Nätverkskortet jag använder nu haddet bara en SOIC-8 CMPWR regulator (om det nu är det). Den skapade inga problem. Och OM den hadde gjort det skulle det bara vara att löda bort den. Se bara till att paddarna efter bortlödade komponenter inte kortsluter något.

@Tony:
Om du läser mitt inlägg ser du att syftet var att ansluta nätverkskortet till en FPGA. Länktestet vara bara för att bekräfta funktionen efter modifikationen.
Användarvisningsbild
Tony
Inlägg: 1038
Blev medlem: 9 november 2003, 16:08:47

Inlägg av Tony »

Jo jag förstod syftet, menade bara att enklaste sättet att spänningsmata kortet är via WOLkontakten.
Spänningsmatning via WOL borde funka oavsett om du kör kortet fristående (som jag gör) eller ihop med en fpga.

Resten nämnde jag helt appropå för allmänt intresse.
blueint
Inlägg: 23238
Blev medlem: 4 juli 2006, 19:26:11
Kontakt:

Inlägg av blueint »

Lödningar sitter mer säkert. Och jag har ändå lött dit ca 14 ledningar, så 2 st till för ström gör ingen större skillnad ;)

Ser ut så här nu:
Bild
Senast redigerad av blueint 21 december 2007, 21:51:16, redigerad totalt 1 gång.
Skriv svar