Contenuto sponsorizzato: pacchettizza i dati di test per DFT senza compromessi

Aggiornamento: 26 maggio 2021

Il notevole aumento dei tempi di test di produzione per i SoC complessi e di grandi dimensioni di oggi è radicato nell'uso di approcci tradizionali per spostare i dati dei test di scansione dai pin a livello di chip ai canali di scansione a livello di core. L'approccio pin-multiplexing (mux) funziona bene per i progetti più piccoli, ma può diventare problematico con un aumento del numero di core e la complessità del design sui SoC odierni. La prossima rivoluzione negli strumenti DFT per prendere tempo di test, costi di test e impegno di implementazione DFT elimina le sfide dell'approccio pin-mux disaccoppiando i requisiti DFT a livello di core dalle risorse di consegna dei test a livello di chip.

Sfide dell'approccio pin-muxed

Un modo comune per collegare i canali di scansione a livello di core ai pin a livello di chip è utilizzare una rete mux per determinare quali core sono collegati ai pin a livello di chip. Funziona bene per i progetti più piccoli, ma diventa problematico man mano che il numero di core aumenta, i livelli di gerarchia aumentano e i progetti diventano più complessi. Presenta barriere per testare in modo efficiente i core in parallelo per risparmiare tempo e costi. Le sfide includono:

  • IO limitati disponibili per il test di scansione
  • Canali limitati a livello di base
  • Configurazioni di prova corrette durante il processo di progettazione
  • Potenziale per la congestione del routing da canali di scansione aggiuntivi

In un approccio DFT dal basso verso l'alto, gli ingegneri DFT in genere assegnano un numero fisso di canali di scansione per ciascun core all'inizio del flusso, di solito lo stesso numero per ciascun core. Questo è l'approccio più semplice, ma può finire per sprecare larghezza di banda perché i diversi core raggruppati per il test potrebbero avere lunghezze della catena di scansione e conteggi di pattern differenti (fig. 1).

Figura 1. In un flusso DFT gerarchico, dedicare meno impegno alla rete mux può portare a un utilizzo della larghezza di banda non ottimale.

Un altro approccio che riduce il problema della larghezza di banda sprecata e fa risparmiare tempo di test è quello di riallocare le risorse di scansione una volta che i dati richiesti per core sono noti, ma ciò comporta la riconfigurazione della compressione, il reindirizzamento dei canali di scansione e la rigenerazione dei modelli (figura 2).

Figura 2. Costruire una rete mux più complessa per allineare meglio gli input e gli output del canale di scansione farà risparmiare tempo di test, ma a scapito dello sforzo di implementazione.

Lo sforzo aggiuntivo vale il risparmio in termini di tempo di test? Ogni squadra DFT deve decidere su questi compromessi. Per i progetti con strutture gerarchiche più complesse, un gran numero di core identici o layout con piastrellatura, è necessario superare ulteriori sfide e compromessi.

Approccio Streaming Scan Network

Un nuovo approccio alla distribuzione dei dati dei test di scansione su un SoC, denominato Streaming Scan Network (SSN), riduce sia lo sforzo DFT che il tempo di test, con il pieno supporto per i progetti affiancati e l'ottimizzazione per core identici. L'approccio SSN si basa sul principio di separare i requisiti di test a livello di core dalle risorse di test a livello di chip utilizzando un bus sincrono ad alta velocità per fornire dati di test di scansione a pacchetto ai core.

Il numero di canali di scansione per core è indipendente dalla larghezza del bus SSN e dal numero di canali di scansione a livello di chip e dal numero di core nel progetto. Fornire i dati di test in questo modo semplifica la pianificazione e l'implementazione e consente di definire il raggruppamento principale in un secondo momento nel flusso, durante il retargeting del modello piuttosto che durante la progettazione iniziale. L'architettura SSN è flessibile - la larghezza del bus è determinata dal numero di pin di scansione disponibili - e facilita la congestione del routing e la chiusura dei tempi perché elimina il muxing della modalità di test di alto livello, il che lo rende ideale anche per i progetti basati su tile adiacenti.

Parte dell'architettura SSN sono i nodi host a livello di core che generano i segnali DFT a livello locale. I nodi host assicurano che i dati corretti vengano raccolti dal bus SSN e inviati alla scansione degli input del core e che i dati di output vengano reinseriti sul bus. Ogni nodo sa cosa fare e quando farlo in base a un semplice passaggio di configurazione che sfrutta l'infrastruttura IJTAG (IEEE 1687). Quali gruppi di core verranno testati insieme e quali saranno testati in sequenza è configurabile, non cablato, con l'approccio SSN. La configurazione viene eseguita come passaggio di configurazione una volta per set di pattern e, una volta completata, tutti i dati sul bus SSN sono payload.

Che cos'è la consegna dei dati di prova della scansione a pacchetto?

Ad esempio, prendi un progetto in cui due core devono essere testati contemporaneamente utilizzando SSN (figura 3). Il blocco A ha 5 canali di scansione, il blocco B ha 4 canali di scansione. Un pacchetto è la quantità totale di dati necessari per eseguire un ciclo di spostamento su entrambi i core. La dimensione del pacchetto in questo esempio è di 9 bit. Tuttavia, sono disponibili 16 pin per il test di scansione (8 ingressi, 8 uscite), quindi il bus SSN ha una larghezza di 8 bit.

 

Figura 3. Test di due blocchi contemporaneamente. In un metodo di accesso alla scansione pin-mux, ciò richiederebbe nove pin di ingresso di scansione a livello di chip e nove pin di uscita di scansione. Con SSN la dimensione del pacchetto è di 9 bit, che viene fornita su un bus a 8 bit.

La tabella sul lato sinistro della figura 3 mostra come i dati vengono trasmessi ai core attraverso il bus SSN sincrono. Saranno necessari due cicli del bus SSN per fornire tutti i dati necessari per eseguire un ciclo di turni in entrambi i core. Si noti che la posizione dei bit dei dati corrispondenti a ciascun core cambia (ruota) per ogni pacchetto. I nodi host sanno dove risiedono i dati corrispondenti a quel core sul bus e quando generare segnali DFT locali, inclusa la pulsazione del core shift clock.

Come SSN riduce il tempo di test e il volume dei dati di test

SSN contiene diverse funzionalità per ridurre il tempo di test e il volume dei dati di test. Uno è lo spostamento e la cattura indipendenti. In molti schemi di retargeting, i cicli di acquisizione di tutti i core interessati devono essere allineati. Se più core si spostano contemporaneamente (fig. 4) e hanno lunghezze di scansione diverse, alcuni dei core con catene più corte devono essere imbottiti per eseguire l'acquisizione contemporaneamente per tutti i core. Con SSN, i nodi host sono programmati in modo che ogni core possa spostarsi in modo indipendente, ma l'acquisizione avviene contemporaneamente una volta che tutti i core hanno completato il caricamento / scaricamento della scansione.

Figura 4. Quando i cicli di acquisizione devono essere allineati, alcuni core necessitano di riempimento, il che è uno spreco di dati e tempo di test.

SSN esegue anche l'ottimizzazione della larghezza di banda. Anziché fornire tanti bit quanti sono i canali di scansione a livello di core per pacchetto, SSN può allocare meno bit a un core che richiede meno dati complessivi. Per un core con meno pattern o catene di scansione più brevi, vengono allocati meno dati per pacchetto, il che distribuisce meglio i dati tra i core e alla fine riduce il tempo di test.

SSN è un metodo scalabile per testare un numero qualsiasi di core identici con una quantità costante di dati di test e tempo di test. Per core identici, il circuito di confronto è incluso in ciascun nodo host. I dati forniti ai core identici sono input di scansione, dati previsti e dati maschera. Ciò consente a SSN di fare un confronto all'interno di ogni core. Lo stato accumulato su tutti i core identici viene quindi spostato sul bus SSN. Anche un bit pass / fail per core viene acquisito nell'host e scansionato tramite IJTAG.

Sommario

SSN è stato sviluppato in collaborazione con diversi leader Semiconduttore aziende. Abbiamo presentato un documento con Intel alla International Test Conference 2020 che descrive il la tecnologia e mostra alcuni risultati chiave della convalida del SSN da parte di Intel. Rispetto a una soluzione con multiplexing di pin, hanno riscontrato una riduzione del volume dei dati di test del 43% e anche una riduzione dei cicli di test del 43%. I passaggi nella progettazione e nel flusso di retargeting sono stati tra 10 e 20 volte più veloci con SSN.

SSN elimina i compromessi tra avere un flusso di implementazione efficiente e semplificato o ridurre al minimo i costi di test.

Geir Eide è un Product Management Director per i prodotti di test Tessent DFT presso Siemens Digital Industries Software.