In questo blog, illustro come il Team di Contenuti di Altium Designer denomina i componenti, i simboli e le impronte delle schede a circuito stampato (PCB).
Questo potrebbe sembrare un punto di partenza estremamente noioso, ma una cosa che ho notato è che trovare un modo per nominare i componenti dei circuiti nelle terre dell'ingegneria spesso genera discussioni animate.
Le informazioni parametriche sul componente vengono elevate alla riga nel cmplib. Ciò ci dà la libertà di nominare il componente separatamente dal simbolo, e, cosa ancora migliore, offre maggiori opportunità di riutilizzo sia per le informazioni parametriche che per il simbolo stesso.
Permettetemi di definire alcuni termini;
Codice Generico: Questo è il nome di un gruppo di dispositivi che probabilmente fanno la stessa cosa, ma hanno alcune differenze tra loro (pacchetto, grado di temperatura/velocità, RoHS). Alcuni fornitori chiamano questo codice un ‘numero di parte’
Codice d'Ordine: Questo è il nome di un singolo tipo di dispositivo. È molto specifico. Alcuni fornitori, sfortunatamente, chiamano questo un ‘numero di parte’.
Ad esempio, osservando il codice generico LT1720, vedrai 24 possibili codici d'ordine. Ad esempio, LT1720CDD#PBF è un LT1720 senza piombo, in un pacchetto DD8.
Per evitare incongruenze all'interno del tuo circuito stampato, abbiamo deciso di utilizzare 'Numero di Parte' (per il codice d'ordine) e 'Numero di Parte Generico' (per il codice generico). Da qui in poi, mi riferirò al numero di parte e al codice generico.
Troverai che nei componenti di Altium Designer (nella maggior parte dei casi), abbiamo incluso parametri per ciascuno. Abbiamo anche la tradizione di popolare il campo Commento del componente con il codice d'ordine. L'idea è che la ricerca di entrambi i tipi di codice PCB produrrà un risultato utile.
Questo standard di denominazione non è stato formalizzato fino alla metà dell'anno scorso e troverai codici di componenti PCB che sono stati costruiti senza quei parametri. Stiamo lentamente, ma sicuramente, risolvendo questo problema.
Internamente definiamo una differenza tra package e footprint. Un package è l'insieme delle dimensioni che descrivono il package fisico - utilizzando una formula derivata dall'IPC possiamo usare queste dimensioni del package per calcolare le dimensioni del footprint (schema di contatto). Utilizzando il costruttore di footprint IPC (vedi qui), inserisci le dimensioni del package e questo genera i footprint.
Devo dire che la denominazione dei package per i codici dei componenti elettronici PCB in generale è piuttosto confusa. Attraverso acquisizioni e diversi dipartimenti che creano il proprio schema di denominazione dei package, la denominazione dei package all'interno di un singolo fornitore può essere piuttosto inconsistente. Per combattere ciò, distinguamo tra un nome di package del fornitore e un nome di package di Altium Designer.
Il nome del package del fornitore è esattamente come il fornitore lo indica nel datasheet del dispositivo. Un esempio sarebbe DDA8. Questo è un SOP a 8 piedini di Texas Instruments.
Se guardi attraverso alcuni datasheet di TI, troverai un numero di varianti di questo package. La differenza chiave è la dimensione del pad termico.
Effettivamente, quasi ogni volta che trovi un disegno del pad termico separato dal disegno principale del package, dovresti cercare varianti.
Se hai nominato il footprint del tuo componente 'DDA8', un progettista innocente e ignaro potrebbe vedere che esiste già un set di footprint per DDA8 e usarli senza pensarci su due volte. Molto più tardi, lo stesso progettista si gratterà la testa chiedendosi perché i componenti con una maschera di saldatura continuavano a surriscaldarsi.
Quindi, il nome del pacchetto di Altium Designer include alcuni dettagli per garantire che tutte le varianti del pacchetto del fornitore abbiano un nome diverso. Questo di solito si presenta in 3 varianti; pad termico (TP), dimensione del corpo (DE) e altezza (A).
Aggiungiamo i dettagli al nome del pacchetto del fornitore, e lo facciamo solo quando è necessario:
DDA8-1775X1775TP è un pacchetto DDA8 con la variante del pad termico di 1,775x 1,775 mm.
Per la dimensione del corpo usiamo il suffisso DE: YFF20-2172X1598DE
Per l'altezza del componente usiamo il suffisso A: 324-UBGA-1500A è la variante di altezza 1,5 mm di 324-UBGA.
A volte scopriamo che per lo stesso codice di pacchetto PCB si verificano varianti di dimensione e altezza del corpo, in tal caso, utilizziamo DEA: PC-64-8000X10000X1200DEA
Questo può portare ad avere nomi di pacchetti piuttosto lunghi, ma non sono molti. Ciò che è più importante è che i nomi dei pacchetti siano unici.
Per facilitare la ricerca, pubblichiamo il nome del pacchetto del fornitore nel componente (e il link al disegno del pacchetto) come parametro.
Le impronte sono la sintesi delle dimensioni del pacchetto e sono nominate in base al pacchetto. Aggiungiamo un suffisso al nome del pacchetto per descrivere il livello IPC che abbiamo utilizzato per generare quell'impronta. I dettagli su cosa significa sono qui.
In alcune situazioni, riteniamo che non sia appropriato avere varianti IPC L, M, e N per un footprint e quindi omettiamo del tutto un suffisso (i BGA non sono disponibili in L, M, e N) oppure aggiungiamo un V.
V è per Vendor recommended, ciò significa che il datasheet o il nostro contatto presso il fornitore ci ha indicato di utilizzare uno specifico pattern di contatto. Li disegniamo direttamente e non usiamo le dimensioni del package e il generatore di footprint.
Abbiamo alcune librerie legacy che ancora utilizzano nomi IPC o simili a IPC per i footprint. Tuttavia, questo non è tipico e saranno sempre nominati secondo il nome del pacchetto di Altium Designer. Detto ciò, è probabile che un giorno rilasceremo i footprint IPC generici più avanti nel tempo.
Poiché i simboli possono essere estremamente riutilizzabili, la denominazione dei simboli è più complicata. Il nostro standard di base consiste nell'utilizzare una combinazione del codice generico e del nome del pacchetto. Per la maggior parte dei componenti non generici, ciò fornisce sufficiente "unicità". Poiché stiamo costruendo componenti in migliaia in un unico lotto, dobbiamo sfruttare tutte le opportunità di riutilizzo possibili in anticipo - questo schema di denominazione fa al caso nostro.
Seguendo questo, il simbolo per LT1720CDD#PBF potrebbe essere chiamato LT1720-DD8
Occasionalmente, troveremo un gruppo più ampio di componenti che avranno lo stesso simbolo. In quella situazione, consolidiamo i simboli e inseriamo una 'X' nel nome del simbolo dove i codici PCB generici sarebbero diversi.
Un simbolo che è lo stesso per REG102-AD8 e REG101-AD8 sarebbe chiamato REG10X-AD8.
In una situazione più generica, ad esempio per gli Op Amp, definiremo in anticipo un certo numero di simboli standard per quel fornitore, poi li nomineremo con riluttanza LT-OAMP-A, LT-OAMP-B, LT-OAMP-C, ecc.
Devo ammettere che evitiamo questa situazione il più possibile, poiché alla fine ci ritroviamo con un LT-OAMP-Z e dobbiamo mantenere un elenco di nomi rispetto ai pinout.
I tentativi precedenti di elaborare uno schema di denominazione veramente generico per i simboli non hanno davvero funzionato per noi nel lungo termine. Quando applicato allo sviluppo del numero di parte di componenti elettronici reali, lo schema si rompe sempre e ci troviamo ad aggiungere più regole o eccezioni. Condividerò alcuni di questi in un prossimo blog.
Noterete anche che prefissiamo i nomi di simboli e footprint con un ‘codice fornitore’, TI per Texas Instruments, LT per Linear Tech, ecc. Lo facciamo per diverse ragioni, la più importante è preservare lo spazio dei nomi per i nomi dei footprint sul vostro circuito stampato. LT-QFN20 sarà probabilmente leggermente diverso da TI-QFN20 se entrambi finiscono nell'editor PCB come QFN20 definire le regole di progettazione per nome sarà difficile. Renderei pubblica la lista dei codici fornitore qui.
Dai un'occhiata ad Altium Designer® in azione...
Sistema di Piazzamento dei Componenti