A.7 La fase di boot-strap
 

Analizzata la parte descrittiva del processore, si possono trattare le varie fasi operative, che conducono all’esecuzione di un determinato programma. Il dispositivo può funzionare in due modalità:

-Microprocessor mode
-Microcomputer mode

La differenza fondamentale, consiste nella mappatura della memoria; come si può infatti vedere in figura 3 (appendice A.3.3), solo nella seconda modalità è mappata la boot rom, la quale come già detto contiene il boot-loader, programma che permette l’esecuzione del boot da una eprom esterna. Il boot-loader viene invocato resettando il processore con il pin MCBL/!MP mantenuto alto; successivamente usando uno degli interrupt esterni, si da inizio alla lettura delle locazioni della eprom, da differenti indirizzi (facendo sempre riferimento alla fig. 3, Boot1, Boot e Boot3). Nel nostro caso si è scelto l’interrupt 1 (INT1), con conseguente lettura dalla locazione 400000H, così da poter collegare tutti e 15 i bit degli indirizzi della eprom direttamente al bus indirizzi del DSP, senza l’aggiunta di logiche di controllo; con tale collegamento, infatti, è come se il DSP cominciasse la sua lettura dalla locazione 0H.  Il diagramma di flusso della fase di boot e illustrato in figura 2.
Nella figura successiva si può vedere come è stato collegato il DSP per poter eseguire il boot e i vari segnali in gioco. Nel momento in cui il segnale di reset commuta al livello alto viene prodotto sul piedino dell’interrupt 1, attraverso l’integrato 74123, un impulso che da inizio alla generazione degli indirizzi con conseguente lettura, dei dati dalla eprom. Il pin XF0 dopo il reset, viene posto al livello basso dal processore per cui essendo collegato con l’enable della eprom consentirà il passaggio dei dati; durante il reset tale pin viene mantenuto in alta impedenza dal DSP, quindi tramite una resistenza posta verso massa si riesce a mantenere la eprom disabilitata; nel momento in cui la fase del boot è terminata e l’intero programma  risiede nella RAM interna del processore, quest’ultimo comincerà ad eseguire la prima istruzione che porta al livello alto XF0, mandando in alta impedenza i vari pin della eprom;  per cui è di fondamentale importanza, se si vuole usare questa configurazione circuitale, anteporre a qualsiasi istruzione quella che controlla XF0, in modo da poter escludere la eprom al momento opportuno.

Configurazione circuitale del DSP nella fase di boot
Andamento dei segnali durante il boot


 

Fig 1 – Configurazione circuitale  del DSP, per la fase di boot e andamento dei segnali.


 
 

Il suddetto pin, nel caso di questo lavoro, è stato impiegato anche per l’abilitazione dei MACs e dell’A/D dopo che il boot è terminato, nello sforzo di far comunicare tra loro tutti i vari dispositivi, sfruttando soltanto i loro enable, senza quindi dover ricorrere a una bufferizzazione esterna con un inevitabile incremento della circuiteria utilizzata. Il pin d’ingresso !RDY indica al processore che l’interfaccia con la memoria esterna è pronta per farvi accesso, per cui deve essere posto al livello basso. Per quanto riguarda la generazione dell’interrupt si è dovuto fare uso di un monostabile (74123), per impedire che il DSP potesse più volte prendere in considerazione lo stesso interrupt, visto che, come già detto, non li rileva sul fronte, ma sul livello.  

Diagramma di flusso della fase di boot

Fig 2 – Diagramma di flusso della fase di boot. Data la scarsa qualità dell'immagine il lettore può scaricare qui il file in formato .zip + .doc di 18Kb e al limite stamparlo.


         Home | Precedente | Successivo