Fabbricazione PCB di precisione, PCB ad alta frequenza, PCB ad alta velocità, PCB standard, PCB multistrato e assemblaggio PCB.
La fabbrica di servizi personalizzati PCB e PCBA più affidabile.
Blog PCB
Progettazione del circuito hardware della macchina di prova della scheda PCB basata su FPGA
Blog PCB
Progettazione del circuito hardware della macchina di prova della scheda PCB basata su FPGA

Progettazione del circuito hardware della macchina di prova della scheda PCB basata su FPGA

2022-07-19
View:83
Author:pcb

Al fine di migliorare la velocità di prova del Scheda PCB macchina di prova, semplificare la progettazione del circuito stampato, migliorare la riconfigurabilità del sistema e la convenienza del trapianto di algoritmi di test, uno schema di progettazione del sistema di controllo hardware del Scheda PCB Viene proposta una macchina di prova basata su FPGA. Nel disegno, the field programmable gate array (FPGA) EP1K50 of Altera Corporation is selected, e la progettazione hardware e il debug del sistema di controllo sono completati utilizzando gli strumenti di progettazione EDA Synplify, Modelsim, Quartus II, linguaggio di descrizione hardware Verilog, e il problema difficile da realizzare dai circuiti convenzionali è risolto. . Il principio di prova di base del Scheda PCB La macchina di prova leggera è la legge di Ohm. Il metodo di prova è quello di aggiungere una certa tensione di prova tra i punti da testare, utilizzare il circuito di decodifica per selezionare i due punti da testare sul Scheda PCB, e ottenere il corrispondente valore di resistenza tra i due punti. Il segnale di tensione, attraverso il circuito di confronto della tensione, prova la resistenza o la continuità tra i due punti. Ripetere i passaggi di cui sopra più volte per testare l'intero circuito stampato. A causa di un gran numero di punti testati, la macchina di prova generale è più di 2048 punti, e il circuito di controllo della prova è più complicato. Il metodo di ricerca e il metodo di commutazione del punto di prova influenzano direttamente la velocità di prova della macchina di prova. Questo articolo studia la progettazione del sistema di controllo hardware basato su FPGA.

Scheda PCB

Sistema di controllo hardware

Il processo di prova è quello di controllare il circuito di prova per accendere diversi interruttori di prova sotto il controllo del computer host. Il sistema della macchina di prova è composto dalle seguenti parti: il computer superiore PC104, la logica di controllo della prova (implementata da FPGA) e il circuito di prova ad alta tensione. Tra questi, il computer superiore completa principalmente le funzioni di interazione uomo-computer, algoritmo di prova, elaborazione dei dati di prova e output di controllo. Il FPGA controlla il circuito di prova ad alta tensione per completare il processo di prova della scheda PCB. Questo sistema utilizza un PC104 come computer superiore e FPGA come controllo della prova da parte del computer superiore attraverso il bus PC104.


Circuito di interfaccia tra FPGA e PC104

Il bus PC104 è un bus di controllo industriale appositamente definito per il controllo incorporato, e la sua definizione del segnale è fondamentalmente la stessa di quella del bus ISA. Il bus PC104 ha 4 tipi di cicli bus, vale a dire ciclo bus a 8 bit, ciclo bus a 16 bit, ciclo bus DMA e ciclo bus di aggiornamento. Il ciclo bus I/O a 16 bit è di 3 cicli di clock e il ciclo bus I/O a 8 bit è di 6 cicli di clock. Per migliorare la velocità di comunicazione, il bus ISA adotta una modalità di comunicazione a 16 bit, vale a dire la modalità I/O a 16 bit. Al fine di sfruttare appieno le risorse del PC104, l'FPGA è configurato online dopo l'espansione del bus di sistema del PC104 e comunica con FPGA durante il normale funzionamento attraverso il bus PC104.


L'interfaccia tra FPGA e dispositivi seriali A/D e D/A

Secondo i requisiti di progettazione del sistema del tester, è necessario eseguire un autocontrollo sulla tensione di prova e sulla tensione di riferimento a due canali, cioè ci sono almeno tre canali di conversione A/D. La tensione di riferimento dei due circuiti di confronto è emessa dal D/A, quindi il canale D/A del sistema richiede due canali. Per ridurre il numero di linee di segnale di controllo di A/D e D/A, vengono selezionati dispositivi seriali A/D e D/A. Prestazioni complete, prezzo e altri fattori, il dispositivo A/D selezionato è TLC2543 e il dispositivo D/A è TLV5618. Il TLV5618 è un DAC a doppia tensione a 12 bit con ingresso di riferimento buffered (alta impedenza) da TI, che è controllato digitalmente tramite un bus seriale a 3 fili compatibile CMOS. Il dispositivo accetta una parola di comando a 16 bit e genera due uscite analogiche D/A. TLV5618 ha solo un singolo ciclo I/O, determinato dall'orologio esterno SCL K, che dura 16 cicli di clock, scrive la parola di comando nel registro on-chip ed esegue la conversione D/A dopo il completamento. TLV5618 parola di comando read-in è valida dal bordo di caduta di CS e inizia a leggere i dati dal bordo di caduta del successivo SCLK. Dopo aver letto i dati a 16 bit, entra nel ciclo di conversione fino a quando si verifica il successivo bordo di caduta di CS. Il TLC2543 è un convertitore A/D a 12 bit commutato di approssimazione successiva con controllo seriale e 11 ingressi da TI. I convertitori on-chip offrono alta velocità, alta precisione e basso rumore. Il processo di lavorazione del TLC2543 è diviso in due cicli: il ciclo I/O e il ciclo di conversione. Il ciclo di I/O è determinato dall'orologio esterno SCLK, che dura 8, 12 o 16 cicli di clock, ed esegue due operazioni contemporaneamente: inserire dati a 8 bit nel registro on-chip in modalità MSB sul bordo ascendente di SCLK; Uscita in modalità MSB sul bordo di caduta del risultato di conversione SCLK 8, 12, 16 bit. Il ciclo di conversione inizia su un bordo di caduta di SCLK nel ciclo di I/O fino a quando il segnale EOC sale in alto, indicando che la conversione è completa. Per essere coerente con il ciclo I/O di TLV5618, si adotta il metodo MSB e si utilizza la tempistica della trasmissione a 16 ore di CS.


Poiché entrambi i dispositivi sono interfacce SPI, possono essere collegati allo stesso bus SPI e funzionare su dispositivi diversi attraverso diversi segnali di selezione chip. Poiché il protocollo di interfaccia SPI è complesso, e come si può vedere dalla Figura 3, la tempistica di questi due dispositivi non utilizza tutta la tempistica dell'interfaccia SPI. Al fine di realizzare il timing in linea con la logica di cui sopra e ridurre lo spreco di risorse FPGA di controllo IP dell'interfaccia SPI standard, il design adotta il linguaggio di descrizione hardware Verilog per realizzare il metodo di progettazione della macchina a stato sincrono (FSM), e scrive ADC e DAC per controllare la sequenza di temporizzazione. Il programma è in realtà una macchina di stato nested, e la macchina di stato master e la macchina di stato slave costituiscono macchine a stato finito con funzioni diverse in condizioni di segnale di ingresso differenti attraverso il bus avviato dalla linea di controllo. Si può sapere dalla FIG. 3 che l'operazione D/A ha 4 stati, e l'operazione A/D ha 7 stati. Diversi stati nei due stati sono gli stessi, quindi una macchina a stato finito può essere utilizzata per completare il funzionamento dei seriali A/D e D/A. Il programma è in realtà una macchina di stato nidificata. La macchina dello stato master e la macchina dello stato slave formano una macchina dello stato finito più complessa con funzioni diverse sotto diversi segnali di ingresso attraverso il bus avviato dal bus di controllo. Drive clock (SCLK) e data bus (SI, SO) sono condivisi da operazioni A/D e D/A. Poiché il ciclo di scrittura dell'operazione ha 16 cicli di clock e il ciclo di lettura ha 12 cicli di clock, il modulo è fatto in tre macchine nested a stato finito. Nella progettazione del sistema, le operazioni AD e DA sono incapsulate in un singolo modulo e il modulo di controllo a livello superiore emette la parola di comando e il segnale di controllo per avviare l'operazione corrispondente di questo modulo. Una volta completata l'operazione (entra nello stato di inattività), questo modulo invia il segnale di stato corrispondente al modulo di livello superiore.


Quadro di programmazione FPGA

Il programma FPGA on-chip è la chiave per il corretto funzionamento dell'intero sistema di test. Secondo il principio di progettazione FPGA top-down, il sistema è diviso in 5 moduli indipendenti, vale a dire il modulo di comunicazione (ISA), il modulo di test (TEST), il modulo AD/DA, il modulo di decodifica (DECODER) e il modulo di controllo RAM (RAMCTL). Modulo ISA: modulo di comunicazione e controllo del sistema, completa la comunicazione con il computer host, interpretazione della parola di comando, generazione del segnale di controllo, ecc Il sistema avvia il modulo ADDA per completare l'uscita della tensione di riferimento secondo la resistenza on, tensione di isolamento e altri parametri trasmessi dal computer host; avvia il modulo di prova per completare il processo di prova secondo il comando test. I dati vengono trasferiti tra più macchine a stato sincrono in esecuzione sincrona ed è più difficile controllare la comunicazione dei dati e la sincronizzazione dei dati tra più processi. Modulo di controllo RAM: prima dell'inizio del test, il computer host trasmette le informazioni del punto di prova al modulo ISA attraverso il bus, e il modulo ISA le memorizza nella RAM on-chip; al termine del test, il risultato del test nella RAM viene trasmesso al computer host. Durante il test, il modulo di prova apre il corrispondente interruttore di prova leggendo le informazioni del punto di prova nella RAM e quindi salva il risultato del test nella RAM. In questo modo, entrambi i moduli richiedono di leggere e scrivere RAM per ottenere la condivisione dei dati tra i due moduli, che richiede un segnale di controllo per collegare rispettivamente i due gruppi di linee di segnale di lettura e scrittura al modulo RAM, e il modulo di controllo RAM completa questa funzione. Modulo di prova (TEST): Sebbene ci siano varie procedure di prova, quali autocontrollo della scheda di commutazione, prova di continuità, prova di isolamento, ecc., la procedura di prova è la stessa, vale a dire scansione della prova. Il processo di lavoro della prova è: aggiungere la tensione di riferimento del circuito di confronto â 1344'  accendere l'interruttore del punto da provare â 1344'  ritardare â 1344'  leggere il risultato del comparatore â 1344'  provare un altro insieme di punti di prova. Questo modulo entra in diversi processi di test in base ai diversi opcode. Il risultato del test e il numero del punto di prova formano insieme dati a 13 bit e li salvano in RAM e coprono le informazioni numeriche del punto di prova originale.


Modulo di decodifica (DECODER): Questo modulo si blocca dopo il modulo di prova (TEST), completa la mappatura dei numeri di commutazione a circuiti effettivi. A causa delle diverse forme dell'array del perno di prova e dei diversi disegni hardware del circuito di decodifica e del circuito di controllo, le informazioni sull'interruttore di prova fornite dal modulo di livello superiore non possono essere utilizzate direttamente come uscita per controllare il circuito dell'interruttore di prova. Il modulo di decodifica completa la conversione tra i due. AD/DA module (AD/DA): Design the SPI bus interface to operate the A/D e D/A dispositivi, the module is started with the allowable (adorable, damnable) signal and the busy signal is used as the conversion completion flag signal. D/Le operazioni A sono incapsulate rispetto ad altri moduli. Ogni modulo del sistema è scritto nel linguaggio di descrizione hardware Verilog, e più strati di macchine a stato sincrono annidate (FSM) sono utilizzati per completare la funzione logica dell'intero sistema; Ogni modulo utilizza lo strumento di simulazione Modelsim per completare la simulazione di funzione del modulo, Utilizzare lo strumento di routing integrato QuartusII di Altera per completare la simulazione e la sintesi post-sistema, cablaggio, e sfruttare appieno il core IP fornito da Altera per ottimizzare i moduli del programma; Il design di livello superiore adotta il metodo di input del diagramma a blocchi, e il flusso di dati tra i moduli è rappresentato in modo più intuitivo dal diagramma a blocchi. . Il sistema di controllo hardware del Scheda PCB La macchina di prova basata su FPGA migliora la velocità di prova del Scheda PCB macchina di prova e semplifica la progettazione del circuito. Inoltre, a causa delle caratteristiche riconfigurabili di FPGA, ha posto una buona base per l'ulteriore ottimizzazione e aggiornamento dell'algoritmo software e della struttura hardware del sistema e ha una buona prospettiva applicativa su Scheda PCB.