EO_476

DIGITAL HIGH SPEED INTERFACES 40 - ELETTRONICA OGGI 476 - MARZO 2019 C on la miniaturizzazione dei nodi IoT e dei dispo- sitivi indossabili, i progettisti devono utilizzare al massimo la memoria su scheda dei loro microcon- troller per minimizzare spazio occupato, consumi e costo. A volte, tuttavia, non è possibile evitare l’espansione di memoria. Invece di ricorrere in modo predefinito a una struttura del bus del controller a 32 bit, i progettisti do- vrebbero prendere in esame HyperBus, un’interfaccia di tipo DDR (Double Data Rate) a 8 bit ad alta velocità (333 Mbps) sia per gli indirizzi, sia per i dati. Per quanto i progettisti tentino di evitare le espansioni, queste si rendono spesso necessarie a causa dell’aumen- to dei requisiti di memoria durante lo sviluppo. In alternati- va, gli sviluppatori creano progetti in grado di supportare evoluzioni future prevedendo le esigenze di espansione che sorgeranno in un momento successivo. Con HyperBus, i microcontrollori sono in grado di sup- portare memorie RAM e flash esterne sul medesimo bus, anziché dover ricorrere al bus a 16 bit dei dati e a quello a 16 bit degli indirizzi di una tipica interfaccia a 32 bit, e ai relativi pin di controllo. HyperBus funziona con tut- ti i dispositivi di memoria dotati della relativa porta, ed è un’interfaccia efficace e intuitiva per le espansioni di me- moria con numero ridotto di pin nelle applicazioni in cui esistono vincoli di spazio. Benché il funzionamento del bus sia trasparente al firmware, per garantire una proget- tazione “robusta” è importante che gli sviluppatori senza una conoscenza approfondita del protocollo HyperBus familiarizzino con il funzionamento dei segnali di bus ad alta velocità. Dopo una descrizione del funzionamento di HyperBus, questo articolo prende in considerazione i microcontrollori che incorporano questa interfaccia e il- lustra le modalità da seguire per il suo corretto utilizzo e il colluado dei progetti. L’interfaccia HyperBus Come già ricordato, HyperBus utilizza un’interfaccia DDR ad alta velocità a 8 bit sia per gli indirizzi, sia per i dati. Si serve inoltre di un clock differenziale, un segnale latch di lettura/scrittura e un segnale di chip-select per ciascun dispositivo di memoria. L’interfaccia HyperBus supporta memorie RAM e flash esterne sul medesimo bus, e funzio- na con qualunque microcontrollore dotato di un’interfac- cia periferica compatibile con HyperBus. HyperBus è impostata come una periferica di tipo master/ slave in cui un host master si interfaccia con uno o più di- spositivi di memoria slave sul bus. I dispositivi di memoria flash con interfaccia HyperBus sono designati con il nome HyperFlash, mentre le DRAM con interfaccia HyperBus sono denominate HyperRAM. Il bus utilizza un clock differenziale con segnali designati CK e CK#. Poiché l’interfaccia HyperBus è del tipo DDR, il trasferimento dei dati avviene sia durante il fronte di salita del clock, sia durante quello di discesa. Il clock è pilotato soltanto dal dispositivo master, e la sua frequenza non può essere superiore a quella nominale della memoria Hyper- Bus più lenta presente sul bus. Il bus bidirezionale a 8 bit è designato DQ[0-7], e trasfe- risce indirizzo, dati e comandi fra il dispositivo master e quelli slave. Come meccanismo di chiusura dei dati vie- ne utilizzato un segnale di mancata eccitazione dei dati di lettura/scrittura, designato RWDS. Il segnale RWDS è Il protocollo HyperBus è un’interfaccia intuitiva, adatta per le espansioni di memoria a bassa piedinatura delle applicazioni con vincoli di spazio. Benché il funzionamento del bus sia trasparente al firmware, per garantire una progettazione robusta è importante per gli sviluppatori comprendere il funzionamento dei segnali di bus ad alta velocità Rich Miron Applications Engineer Digi-Key Electronics Utilizzate HyperBus per espandere la memoria nei dispositivi IoT e indossabili

RkJQdWJsaXNoZXIy MTg0NzE=