Progetto di Switch Ethernet Gigabit

Zachariah Peterson
|  Creato: febbraio 9, 2024  |  Aggiornato: maggio 10, 2025
Progetto di Switch Ethernet Gigabit

Il Gigabit Ethernet è ormai effettivamente uno standard di base per le reti d'ufficio e commerciali. Ci sono molti componenti disponibili che possono essere utilizzati per costruire un semplice switch Ethernet, ma in questo articolo mostreremo un esempio di progetto per uno switch Ethernet con un alto numero di porte. Il progetto mostrato in questo articolo include anche un'espansione per cavo in fibra ottica con un connettore SFP. Questo progetto richiede l'implementazione di successo di diversi aspetti comuni del design ad alta velocità, inclusi:

  • il fanout BGA
  • la progettazione di coppie differenziali
  • la collocazione dei condensatori di accoppiamento AC
  • la progettazione con piani di potenza in grandi BGA
  • interfacce ad alta velocità single-ended e differenziali

Come al solito, i file del progetto possono essere scaricati dal mio sito web. Puoi anche controllare i link per il download nell'incorporamento del visualizzatore Altium 365 qui sotto. Clicca su questo link per scaricare un archivio ZIP con i file sorgente del progetto oppure puoi usare il link di download nell'incorporamento.

 

Componenti Principali nello Switch Ethernet Gigabit

 

Questo progetto di switch Ethernet si basa sulla serie VSC742x di processori per switch Ethernet di Microchip. Questi processori possono essere accoppiati con un PHY di espansione associato che si collega al processore dello switch tramite un'interfaccia SGMII. Ci sono componenti aggiuntivi per la memoria e la comunicazione esterna, così come diversi regolatori di tensione. L'elenco dei principali componenti nei circuiti include:

In totale, il dispositivo supporta 12 porte Ethernet standard, include una porta di uplink e include una porta SFP per un trasmettitore a fibra. Il design include anche un'interfaccia seriale portata su un connettore RJ-45 senza il circuito di terminazione mag jack.

Schemi di VSC7426 e VSC8574

Nei file del progetto, gli schemi per l'interruttore e le interfacce delle porte si trovano alle pagine uno, due e tre. Il VSC7426 include un'interfaccia DDR2 e utilizza un chip RAM DDR2 esterno. Dispone di diversi GPIO che possono funzionare come indicatori, sebbene il firmware fornito dal venditore fornisca anche i messaggi di stato richiesti su un terminale.

Gli schemi per questo design si basano approssimativamente sul design di riferimento VSC7426/VSC7427 di Microchip. Puoi accedere al design di riferimento originale sul sito web di Microchip.

I circuiti VSC7426 e VSC8574 sono mostrati nelle immagini qui sotto. Il VSC7426 è la stella dello spettacolo e offre fino a 16 porte RJ-45. Il VSC8574 è utilizzato per espandere questo numero di porte e comunica con il VSC7426 tramite un'interfaccia SGMII. Sono inclusi condensatori di accoppiamento AC come è standard in SGMII. Da notare che la documentazione di Microchip su questo chipset raccomanda di aggiornare il VSC8574 al VSC8664; tuttavia, il pacchetto OS incorporato disponibile pubblicamente è compatibile con il chip VSC8574.

Alcune delle impostazioni del VSC7426 sono determinate attraverso un set di resistori di configurazione sui pin C6, C7, C8 e C9. L'array di resistori da 1 kOhm mostrato di seguito può essere installato o rimosso secondo necessità per attivare varie funzionalità sul VSC7426. Anche il VSC7427 può essere utilizzato in questo design, ma richiede la modifica di alcune impostazioni dei resistori, come dettagliato nell'angolo in basso a sinistra dell'immagine.

Questi chip hanno più alimentazioni e utilizzano una discreta quantità di energia per generare clock e segnale. Come si può vedere di seguito, i chip utilizzano un numero significativo di condensatori di disaccoppiamento per garantire l'integrità dell'alimentazione.

Si noterà che vengono utilizzati dei ferriti per isolare gli elementi a causa dell'alto consumo di corrente nell'alimentazione logica principale. Come è stato menzionato in alcuni altri articoli di Altium, questo approccio a volte funziona per isolare un PLL più lento o un' alimentazione analogica da un' alimentazione digitale veloce che corre in parallelo, ma dovrebbero essere eseguiti dei test per confermare che il ferrite non amplifichi le transitorietà tra le due alimentazioni. Questo è qualcosa di cui discuterò più dettagliatamente in un prossimo articolo e video, ma nel frattempo, rimando i lettori a una presentazione più vecchia di DesignCon che discute questo specifico caso d'uso delle perle di ferrite.

Circuito del connettore SFP

L'immagine sottostante mostra il circuito del connettore SFP utilizzato per connettersi a un trasmettitore a fibra ottica. Il circuito del connettore SFP qui mostrato è utilizzato in altri progetti che raggiungono fino a 10 Gbps. Il connettore SFP richiede molteplici resistori di configurazione per accedere a determinate funzionalità sul trasmettitore a fibra ottica. Alcuni di questi sono stati contrassegnati come DNI nello schema sottostante poiché non sono necessari per la funzionalità minima vitale del trasmettitore a fibra ottica.

Oltre al MOSFET utilizzato per attivare il pin Tdis, esiste una logica aggiuntiva tra il VSC8574 e il MOSFET. Si potrebbe bypassare questa logica aggiuntiva se si desidera abilitare permanentemente il trasmettitore a fibra ottica. Per fare ciò, tirare in alto il gate del MOSFET o portare basso il pin di abilitazione, e ciò attiverà il trasmettitore.

Un altro punto importante qui sono le resistenze da zero ohm sulle linee RX e TX. Le resistenze da zero ohm potrebbero essere sostituite con condensatori di accoppiamento AC, ma questi non sono necessari. Il motivo è che l'accoppiamento AC è integrato nei moduli trasmettitori ricevitori in fibra ottica standardizzati. Quando si utilizza questo circuito a 1 Gbps, lo scambio tra resistenze da 0 ohm e diversi valori di condensatori di accoppiamento AC molto probabilmente non creerà alcun beneficio o danno all'integrità del segnale. Se questo schema dovesse essere utilizzato a velocità di trasmissione dati più elevate, i condensatori di accoppiamento e la loro posizione potrebbero essere regolati in base ai motivi che descrivo in questo recente articolo.

RAM e Memoria Flash

Il design include sia memoria flash che RAM per l'archiviazione dei dati e per contenere il firmware binario, rispettivamente. Il design include due chip flash, come mostrato di seguito, anche se solo uno di questi è richiesto per un design minimo vitale. Il più piccolo chip flash Macronix NOR da 128 Mbit (MX25L12835FMI-10G) è stato utilizzato nel nostro PCB dimostrativo ed è stato utilizzato nelle versioni di produzione di questo design.

Memorie RAM e Flash trovate in SCH003.

La memoria flash deve essere collegata a SPI e verrà scritta utilizzando un programmatore esterno tramite un connettore SWD. Questo verrà discusso più in dettaglio in seguito.

Ci sono altri due chip di memoria che possono essere utilizzati nel design:

Nella nostra scheda dimostrativa, abbiamo contrassegnato questi come DNI e non sono stati inclusi nell'assemblaggio.

RJ-45 a Seriale/RS-232

Un modo rapido per connettersi a uno switch Ethernet installato in un rack è utilizzare una porta seriale. Per rendere la porta accessibile attraverso il contenitore del dispositivo, un'opzione è quella di far uscire una porta seriale su un connettore RJ-45. Ciò è realizzato qui sotto utilizzando un connettore jack non magnetico. A seconda dell'orientamento della porta seriale RJ-45, un cavo potrebbe essere indirizzato a un pannello di patch, e un tecnico potrebbe quindi collegare il proprio computer a un pannello di patch per accedere alla porta seriale.

L'accesso alla porta seriale è stato inoltre aggiunto utilizzando un'intestazione a due pin sull'ingresso del trasmettitore RS-232 (J5 nell'immagine sopra). Questo ti dà accesso alla porta seriale tramite un modulo USB-to-UART.

Layout PCB

Questo design ha in totale tre BGA, con il BGA più grande che è il VSC7426 con 672 pin. La maggior parte dei pin sul VSC7426 e sul VSC8574 sono di terra e alimentazione, quindi non avremo bisogno di una scheda con un numero molto elevato di strati per completare il routing. Questa scheda è stata completata utilizzando sei strati con l'impilamento mostrato di seguito.

Impilamento PCB e impostazioni di impedenza

Questo impilamento corrisponde quasi a un impilamento standard di JLCPCB, anche se le tolleranze su DDR2 ed Ethernet permettono qualche variazione nello spessore degli strati. Finché gli strati esterni sono sottili e lo strato interno principale è spesso, l'impedenza differenziale e l'impedenza a terminazione singola delle linee a impedenza controllata raggiungono l'impedenza target entro le tolleranze consentite. Gli strati esterni sottili assicurano che il nostro routing microstrip non sarà troppo largo, poiché le corsie Ethernet e DDR2 richiedono un'impedenza controllata.

Tutte le coppie differenziali nel design sono state instradate con un'impedenza differenziale di 100 ohm. Sebbene l'impilamento fosse progettato su misura per essere prodotto in una vasta gamma di fabbriche, la scheda dimostrativa mostrata più avanti in questo articolo è stata prodotta presso JLCPCB con uno dei loro impilamenti standard.

Fanout BGA

Il chipset Ethernet PHY e il chip DDR2 hanno pitch delle palle di 1,0 mm e 0,8 mm, rispettivamente. Questo significa che possiamo utilizzare vie passanti con dog-bone fanout per raggiungere le file interne dei BGA. Non abbiamo inoltre bisogno di vie cieche e sepolte per i collegamenti Ethernet perché i chip VSC hanno i pin Ethernet raggruppati intorno al bordo dei pacchetti. Questo significa che le piste Ethernet possono essere instradate direttamente nei pacchetti come microstrip differenziali. Questo instradamento è mostrato di seguito, includendo piccole sezioni di accordo della lunghezza dove sono presenti angoli nell'instradamento.

DDR2 Routing

Successivamente, il bus DDR è abbastanza ampio che il design richiede due strati per essere completamente instradato nel chip DDR. Questo è mostrato negli screenshot qui sotto. Il bus DDR è instradato con un'impedenza di 50 ohm sullo strato interno ed esterno; l'orologio differenziale è mostrato sullo Strato 4.

È perfettamente accettabile eseguire questo tipo di routing per un bus parallelo, ma richiede la regolazione del ritardo tra gli strati esterni e interni. Poiché il ritardo di propagazione del microstrip è determinato da una costante dielettrica efficace, i segnali che viaggiano lungo un microstrip e una stripline avranno velocità di propagazione diverse. Ciò richiede la regolazione del ritardo sui diversi strati per garantire che tutti i segnali sul bus DDR2 arrivino entro la finestra di tempo richiesta.

Interfaccia Parallela

L'interfaccia parallela NAND flash non era installata nella scheda dimostrativa, ma il design può accomodarla se necessario. L'interfaccia parallela utilizza 8 tracce allineate in lunghezza per il routing tra il VSC7426 e il flash parallelo. Questo routing è confinato allo Strato 4 ed è mostrato di seguito (l'interfaccia parallela è evidenziata).

Alimentazione e Messa a Terra

Poiché questo design coinvolge un processore che ha molte I/O ad alta velocità che operano simultaneamente, è necessario implementare alcuni principi base di integrità dell'alimentazione. Nello schema, abbiamo mostrato un grande numero di condensatori utilizzati sui binari logici, ma il PCB ha bisogno anche di capacitanza del piano per la stabilità dell'alimentazione nella gamma dei 100 megahertz. Questo requisito per la stabilità dell'alimentazione si applica qui perché le interfacce Ethernet fornite in questo dispositivo hanno requisiti di larghezza di banda del canale nella gamma dei 100 MHz, quindi dobbiamo garantire un'alimentazione stabile almeno fino a queste frequenze.

Per fare ciò, instradiamo grandi binari sul Layer 3 per fornire alimentazione direttamente agli alimentatori ad alta velocità I/O a 3,3V, 2,5V, 1,8V e 1,0V.

Per garantire che il design abbia una bassa induttanza sulle connessioni per ogni condensatore, tutti i piccoli condensatori di bypass sono stati montati direttamente sul lato posteriore del PCB, dietro il pacchetto BGA VSC7426. Una connessione diretta attraverso una coppia di vie passanti ai pallini sul pacchetto BGA aggiunge circa 1 nH di induttanza al valore ESL del condensatore e limiterà la capacità di risposta dei piccoli condensatori di bypass SMD a caso al range dei 10 MHz. Lo stesso approccio è stato adottato sul VSC8574.

I condensatori di decoupling/bypass sono connessi direttamente alle vie passanti sui pin di alimentazione/terra per garantire connessioni a bassa induttanza sui condensatori.

Insieme, i condensatori di massa sugli alimentatori, i condensatori di bypass e di decoupling sui BGA, la capacitanza del piano dai grandi binari e la capacitanza sul chip nel chipset Ethernet coprono collettivamente fino al range dei GHz e aiutano a garantire l'integrità della potenza.

Modello 3D

Il modello 3D completo del layout PCB finito è mostrato di seguito. Possiamo vedere i 12x porte RJ-45, l'ulteriore porta GbE Uplink connessa al VSC8574, il connettore seriale-RJ-45 e la gabbia SFP per il nostro trasmettitore in fibra.

Programmazione e Avviamento

Il VSC7426 esegue un kernel Linux incorporato utilizzando RedBoot come bootloader. Il sistema operativo incorporato è semplice da installare e il codice è disponibile da Microchip. Il fornitore rende disponibili diverse versioni del codice a seconda della frequenza dell'orologio principale, dell'expansion PHY e delle impostazioni di configurazione utilizzate nel design. Per aiutare i lettori a iniziare rapidamente, ho incluso un firmware funzionante binario nei file del progetto.

Per flashare il binario sul dispositivo, gli utenti avranno bisogno di un programmatore con interfaccia SPI. Il programmatore che preferisco usare per il flashing è il programmatore Forte, disponibile su ASIX.net. Questo programmatore supporta un lungo elenco di microcontrollori e memorie, inclusa la flash Macronix SPI NOR utilizzata in questo progetto. Il video alla fine di questo articolo descrive i passaggi per il flashing utilizzando il software di programmazione ASIX UP e il programmatore Forte.

Una volta completato il processo di flashing, spegnere il progetto, scollegare il programmatore e collegare un ponte seriale all'intestazione a 2 pin (J5) per accedere all'interfaccia UART (velocità di trasmissione 115200 kbps). Successivamente, riapplicare l'alimentazione e il progetto si avvierà fino a una schermata di login; accedere con il nome utente admin, la password è vuota.

Output del terminale (in TeraTerm) una volta che lo switch si avvia e l'utente effettua l'accesso

Sono necessarie ulteriori istruzioni per attivare completamente il progetto e attivare ciascuna delle porte. Per completare queste attività, le istruzioni possono essere trovate nel file “VSC5611EV Mechanical Assembly and Programming Guide.pdf” nella cartella Binaries nei file sorgente. Le istruzioni di programmazione iniziano a pagina 18 del file PDF.

Panoramica completa del progetto su Altium Academy

Il video qui sotto mostra il nostro lavoro di avviamento e una recensione del design del PCB sul canale Youtube di Altium Academy. Per saperne di più su questo progetto e vedere il processo di flashing, puoi guardare il seguente video.

Sia che tu debba costruire elettronica di potenza affidabile o sistemi digitali avanzati, utilizza il set completo di funzionalità per la progettazione di PCB e strumenti CAD di classe mondiale in Altium Designer®. Per implementare la collaborazione nell'ambiente interdisciplinare di oggi, le aziende innovative stanno utilizzando la piattaforma Altium 365™ per condividere facilmente i dati di progettazione e avviare i progetti alla produzione.

Abbiamo appena iniziato a scoprire cosa è possibile fare con Altium Designer su Altium 365. Inizia oggi la tua prova gratuita di Altium Designer + Altium 365.

Sull'Autore

Sull'Autore

Zachariah Peterson ha una vasta esperienza tecnica nel mondo accademico e industriale. Prima di lavorare nel settore dei PCB, ha insegnato alla Portland State University. Ha condotto la sua Fisica M.S. ricerche sui sensori di gas chemisorptivi e il suo dottorato di ricerca in fisica applicata, ricerca sulla teoria e stabilità del laser casuale. Il suo background nella ricerca scientifica abbraccia temi quali laser a nanoparticelle, dispositivi semiconduttori elettronici e optoelettronici, sistemi ambientali e analisi finanziaria. Il suo lavoro è stato pubblicato in diverse riviste specializzate e atti di conferenze e ha scritto centinaia di blog tecnici sulla progettazione di PCB per numerose aziende. Zachariah lavora con altre società del settore PCB fornendo servizi di progettazione e ricerca. È membro della IEEE Photonics Society e dell'American Physical Society.

Risorse correlate

Documentazione Tecnica Correlata

Tornare alla Pagina Iniziale
Thank you, you are now subscribed to updates.