EO_482

DIGITAL NEW MEMORIES 51 - ELETTRONICA OGGI 482 - NOVEMBRE/DICEMBRE 2019 guida relative all’hardware per consentire un’integrazione senza problemi di dispositivi con interfaccia xSPI a elevato throughput nei sistemi. In tempi più recenti JEDEC ha anche definito e rilasciato uno standard che prevede il reset di un dispositivo tramite in- terfaccia seriale. Questo protocollo di reset (Fig. 2), definito dallo standard JESD252 di JEDEC elimina la necessità di ave- re un pin di reset dedicato sulla memoria flash. Lo standard definisce la sequenza specifica che i vari segnali – chip se- lect, clock e ingresso dati – devono seguire affinché il dispo- sitivo possa effettuare un reset hardware. L’utilizzo di questa sequenza evita che eventuali transizioni spurie provocate dalla presenza di rumore sulla linea dei dati seriale possa provocare un reset accidentale. Durante il reset il segnale di clock viene mantenuto nello stato logico basso, in moda da garantire che le transizioni del pin non vengano interpretate come un trasferimento dei dati, mentre il pin di chip select è utilizzato per assicurare il reset di uno specifico dispositivo. Le memorie flash con interfaccia SPI sono ampiamente uti- lizzate nei prodotti embedded in partiocolare per ospitare il codice. Si tratta di un aspetto critico per la funzionalità dell’intero sistema per cui è indispensabile garantire l’affida- bilità di funzionamento, compresa la possibilità eseguire, se necessario, una procedura di reset. Utilizzo del reset per l’inizializzazione e il ripristino I sistemi in generale utilizzano la funzione di reset in fase di accensione (power-up) al fine di garantire che tutte le diver- se sezioni di un sistema vengano avviate in uno stato cono- sciuto. Il reset può essere anche impiegato per il ripristino da malfunzionamenti di una certa gravità che potrebbero essere provocati da malfunzionamenti dell’hardware durante la fase di esecuzione (runtime), imputabili a problemi di integrità dei segnali, temporizzazioni, interferenze elettromagnetiche o a radiazioni di fondo (background radiation) che possono alte- rare il contenuto della memoria. Errori (bug) di natura softwa- re possono inoltre provocare il crash di un programma che quindi non è più in grado di risponde ai comandi. Questi errori di natura occasionale, che nel caso dei disposi- tivi consumer possono essere fastidiosi, diventano un serio problema nel caso di applicazioni IoT, dove migliaia di nodi devono garan- tire un elevato livello di affidabilità. Sempre più questi dispositivi potreb- bero non risultare immediatamente accessibili per effettuare un reset manuale o un’operazione di opera- zione/spegnimento (power cycling). Solitamente i sistemi embedded utilizzano WDT (Watch Dog Timer) e altri meccanismi di auto-diagnostica al fine di rile- vare eventuali malfunzionamenti e intraprendere le necessa- rie azioni correttive. Ciò potrebbe significare l’esecuzione di un soft reset solamente nei confronti dei sottosistemi interes- sati sotto il controllo del processore. L’interfaccia SPI è di tipo stateful (con stato, ovvero che tiene traccia dello stato), quindi ad esempio, dopo aver ricevuto un comando la memoria flash si aspetterà un determinato numero di trasferimento dati o indirizzi. Qualsiasi errore che provochi la perdita di sincronizzazione tra host e memoria darà luogo a un comportamento non prevedibile. Per poter effettaure il ripristino da una situazione di questo tipo, l’host deve essere in grado di effettuare il reset della memoria se- riale per riportarla in uno stato noto mediante un reset soft. Reset di questo tipo contribuiscono a mantenere la stabi- lità di un sistema e vengono effettuati senza che pervenga dall’esterno una segnalazione di guasto, per cui possono essere considerati come una caratteristica standard del fun- zionamento di un sistema embedded. Mentre alcune memorie flash seriali possono avere un pin di reset dedicato, altre utilizzano la multiplazione al fine di ridurre il numero di pin e, in questo caso, il pin di reset sarà anche un pin di I/O. In alcuni casi, il costruttore potrebbe non rendere disponibile la funzionalità di reset,. Anche nel caso sia disponibile un pin di reset, potrebbe risultare poco pra- tico dedicare un’uscita del microcontrollore al suo controllo. La specifica JESD252 è stata appositamente sviluppata per questo motivo, consentendo a una memoria flash seriale di supportare la funzionalità di reset senza per questo richie- dere un pin fisico o dedicato. Oltre che per il ripristino degli errori, il meccanismo di reset seriale può essere utilizzato in fase di avviamento per assicurare la corretta inizializzazione della memoria successivamente alla stabilizzazione dell’ali- mentazione. Modalità XiP (Execute-in-Place) Poiché le memorie flash tradizionali sono connesse attra- verso un’interfaccia SPI a bassa velocità, nel caso venga- no utilizzate per immagazzinare la memoria di programma il Fig. 2 – Il protocollo di reset

RkJQdWJsaXNoZXIy MTg0NzE=