Come montare memoria DDR3 - Altium
Lavorando sui microcontrollori sta diventando sempre più comune per i progettisti dover disegnare PCB ad alta velocità. Con la potenza di CPU come quelle appartenenti alla famiglia Freescale iMX6 multi-core ARM che presentano anche il vantaggio di avere un basso costo per MIP diventa sempre più conveniente utilizzarle per migliorare le funzionalità e l’esperienza utente.
Utilizzare questi super-micro controller con memoria aggiunta vuol dire dover affrontare le sfide dell’alta velocità, di interfacce dense e dover rispettare le linee guida dei layout con memorie DDR3. In questo blog l’utente di Altium Robert Feranec della Fedevel Academy ci ha fornito consigli preziosi sull’instradamento nelle interfacce di memoria DDR3 basandosi sul suo progetto hardware open-source del iMX6 Rex, un kit di sviluppo di computer a scheda singola compatto e potente.
Le memorie DDR3 sono estremamente diffuse per cui diventa inevitabile che i progettisti professionisti di circuiti stampati si trovino ad affrontare il progetto di una scheda dove debbono utilizzarle. Questo articolo fornisce consigli sul fan-out e l’instradamento di interfacce di memoria DDR3 anche in progetti di schede affollate e ad alta densità.
Regole di progetto di memorie DDR3 e gruppi di segnali
Tutto inizia con le regole di progetto consigliate per l'alta velocità e per instradare le DDR3 in gruppi. Durante il layout delle memorie DDR3 l’interfaccia è suddivisa nel gruppo di comando, nel gruppo di controllo, nel gruppo degli indirizzi, nelle banche dati 0/1/2/3/4/5/6/7, nei clock e altro. Tutti i segnali che appartengono allo stesso gruppo devono essere instradati “nello stesso modo” ovvero utilizzando la stessa topologia e le stesse transizioni tra strati.
Figura 1: Tutti i segnali del gruppo DATA 6 sono instradati “nella stessa maniera” utilizzando la stessa topologia e le transizioni tra strati.
Ad esempio consideriamo la sequenza indicata nella Figura 1. Tutti i segnali del gruppo DATA6 vanno dallo strato 1 allo strato 10, poi allo strato 11 ed infine allo strato 12. Ogni segnale all’interno del gruppo attraversa la stessa transizione e generalmente la stessa distanza e topologia.
Uno dei vantaggi di utilizzare questo approccio è che durante le fasi di tuning la lunghezza dell'asse z nelle tracce può essere ignorata. Questo perché tutti i segnali, instradati nello stesso modo, presenteranno esattamente le stesse transizioni e lunghezze.
Creazione di gruppi di memorie DDR3
Altium Designer fornisce un modo semplice per creare i necessari gruppi di segnali. Questo passo viene svolto nello schema del progetto. In primo luogo viene posizionato un manto attorno ciascun insieme di reti da cui i gruppi vengono creati. Poi viene agganciata una net class al bordo del manto per applicarla al gruppo. Un esempio è mostrato nella figura 2
Figura 2: Manti e direttive PCB sono utilizzati per creare net class per l’instradamento DDR3.
Assegnare colori ai gruppi di memorie DDR3
Dopo aver importato le nuove Net class sul circuito stampato, utilizzando il comando Engineering Change Order (ECO) che si trova sotto Design » Update PCB Document, è molto utile assegnare colori differenti a ciascun gruppo in modo da rendere il processo di routing più facile da seguire a livello mentale. Andate sul pannello del circuito stampato, cliccate con il tasto destro sul gruppo (net class) a cui volete assegnare un colore e scegliete, dal menu pop-up, il comando Change Net Color, come mostrato nella figura 3.
Figura 3: Assegnare colori diversi a ciascun gruppo rende il processo di routing più facile da seguire a livello mentale.
Una volta scelto il colore cliccate sulla net class o di nuovo sulla rete e scegliete Display Override » Selected ON. Questo farà sì che qualunque colore scegliate avrà la priorità sul colore dello strato, qualunque sia lo strato utilizzato dagli oggetti di quella rete.
Se non avete attivato la funzione Net Color Override la rete non avrà il colore che avete impostato. In questo caso utilizzate l’opzione View » Net Color Override Active o premete il tasto F5 per abilitarla a livello globale (per tutte le reti). Ora siete pronti per il fan-out dell’interfaccia della DR3 della CPU.
Pianificare in anticipo quando si lavora sul fan-out di DD3 di CPU
Scegliere il corretto stile delle tracce per un particolare gruppo di memoria e decidere in anticipo su quanti strati verranno usati può rendere il layout delle memorie DDR3 molto più facile. Assegnare colori diversi a diversi gruppi di memorie aiuta a visualizzare meglio l’interfaccia.
Figura 4: Scegliere la corretta dimensione delle tracce aiuta a risparmiare spazio per altre tracce.
Una microtraccia (μVia) occupa meno spazio di una traccia Through Hole. In questo modo è possibile connettere più tracce nella stessa area. Inoltre esse fanno risparmiare spazio sugli altri strati. Lo spazio libero può essere utilizzato per le piste.
Perché utilizzare le microtracce per i segnali di indirizzo, comando e controllo?
I gruppi indirizzo, comando e controllo sono quelli che hanno il più alto numero di segnali. Se scegliamo tracce Through Hole consumiamo tantissimo spazio su tutti gli strati. Scegliendo le microtracce ci occorre spazio solamente sullo strato 3 e, dato che esse hanno un diametro inferiore, rimane più spazio per il fan-out dei segnali sullo strato 3.
Figura 5: Tra le microtracce possono essere inserite due o tre piste, mentre solo una se si scelgono le tracce Through Hole.
Perché utilizzare tracce Through Hole per i “Gruppi più vicini” per il gruppo indirizzo, comando e controllo?
Alcuni segnali del gruppo indirizzo, comando e controllo hanno bisogno dello spazio al di sotto del “gruppo più vicino”
Figura 6: Alcune delle tracce indirizzo, comando e controllo devono essere instradate al di sotto dei pad del “gruppo più vicino”:
Quando il gruppo di segnali indirizzo, comando e controllo è instradato attraverso le microtracce sullo strato 3 rimarrà dello spazio libero al di sotto del gruppo sullo strato 10. Questo spazio può essere utilizzato per il fan-out del “gruppo più vicino”.
Figura 7: Lo spazio libero al di sotto dei gruppi instradati con le microtracce può essere utilizzato per il fan-out del “gruppo più vicino”:
Perché i “gruppi esterni” utilizzano le microtracce?
Dalla figura qui sopra è evidente come non ci sia abbastanza spazio sullo strato 10 per il fan-out dei “gruppi esterni” Per cui posizionare i “gruppi esterni” sullo strato 3 ed utilizzare le microtracce è il risultato del progetto del fan-out.
Nota: La stessa tecnica di progetto di strati/tracce/microtracce può essere applicata ad altre interfacce (come PCI, ISA, …). In questo modo è possibile effettuare l’instradamento anche in progetti a densità particolarmente elevata.
Conclusione
Attraverso un'accurata pianificazione e progetto anche il routing e il tuning del fan-out delle DDR3 può essere un’esperienza prive di stress anche in caso di progetti compatti e ad alta densità. Il iMX6 Rex è uno strumento fantastico per questa pianificazione e progetto ed è stato realizzato anche per dimostrare come sia fattibile. Seguendo il piano e i passi di Robert qualsiasi progetto che include DDR3 può essere completato in minor tempo e con una maggiore probabilità di completarlo nel modo giusto la prima volta.
Un progetto Altium completo con il layout DDR3 e gli screenshot può essere scaricato da: http://www.imx6rex.com/.
Osservate Altium Designer in azione...