EMB_88
EMBEDDED 88 • MAGGIO • 2023 31 SRAM TESTS | HARDWARE il livello di sicurezza Class B. Il test a scacchiera viene spesso selezionato perché copre i guasti più probabili in una SRAM ed è relativamente veloce, il che è con- veniente per ridurre al minimo l’impatto sulle presta- zioni sull’applicazione stessa. Oltre ai guasti DC, dove un bit è permanentemente bloccato a livello logico alto o basso, l’algoritmo a scacchiera può anche rilevare di- fetti imputabli all’influenza reciproca tra bit vicini. Una SRAM è logicamente costituita da un numero di bit organizzati in parole. Le parole hanno in genere una ampiezza di 8, 16 o 32 bit, ma possono anche es- sere più lunghe. Fisicamente, i bit sono organizzati in array, dove ogni bit ha tipicamente otto bit adiacenti (Fig. 1). Un difetto fisico in un bit può avere effetti su un singolo bit in modo che sia bloccato a livello logico alto o basso (errore DC), oppure il difetto può essere nella separazione di due bit, nel qual caso una cellula aggressiva vicina (contrassegnata in viola nella figura 1) può influenzare una cellula vittima (contrassegnata in giallo nella figura 1). Lo scenario aggressore-vittima è comunemente indicato come errore di accoppiamen- to. Dal punto di vista statistico, è più probabile che si verifichi il guasto DC, anche se è utile rilevare i guasti di accoppiamento più comuni. Se un errore interessa un singolo bit, in modo che il bit sia bloccato a livello logico alto o basso, esso può essere rivelato scrivendo il valore uno, verificandolo mediante un’operazione di lettura e, successivamente, scrivendo il valore zero ed effettuando la verifica mediante una ri- lettura, come illustrato nella figura 1. Se, d’altra parte, il difetto è un errore di accoppiamento tra due bit adia- centi, ad esempio i bit della colonna 9 e 10 nella riga 2, alcuni pattern, come composti ad esempio da tutti uno o tutti zero, non riveleranno il difetto di accoppiamento poiché le celle hanno lo stesso valore durante il test. Tali errori di accoppiamento come le celle vicine (ai lati, sopra e sotto) hanno valori binari opposti. La figura 1 (in basso a destra) illustra che l’uno nel bit 10 ha con- taminato il bit 9 e l’errore di accoppiamento è rivelato poiché il bit 9 non contiene il valore atteso, ovvero zero. Layout fisico vs layout logico delle SRAM Affinché l’algoritmo a scacchiera funzioni, è necessario sapere quali sono i bit adiacenti. Questo risulta essere un problema in quanto i datasheet normalmente de- scrivono solo il layout logico della SRAM e non l’orga- nizzazione fisica della SRAM. Per comprendere il layout fisico della SRAM, è neces- sario distinguere tra memorie bit-oriented (BOM), in cui è possibile accedere a un bit alla volta, e memorie word-oriented (WOM) in cui è una parola da n-bit a ve- nire letta e scritta per evento. Mentre la maggior par- te delle memorie del mondo reale sono implementate sotto forma di WOM, i classici algoritmi di test della memoria nella letteratura scientifica spesso assumono implementazioni BOM. Per le memorie WOM, ci sono tre categorie principali di organizzazione fisica dei bit che costituiscono la paro- la: adiacenti, interlacciati e sub-array. Mentre un layout logico posiziona ogni parola sotto la parola precedente nella stessa colonna, le memorie adiacenti posizionano ogni parola sulla stessa riga, una accanto all’altra, come illustrato nella figura 2. Le architetture interlacciate separano ogni bit della parola nelle diverse colonne e righe dell’array della SRAM. Infine, l’organizzazione di Fig. 1 – Potenziali errori di accoppiamento tra bit adiacenti Fig. 2 – Esempi di layout fisico di memorie word-oriented
Made with FlippingBook
RkJQdWJsaXNoZXIy Mzg4NjYz