Tesi Robotica Algoritmi ed architetture per la risoluzione di... | Page 77
4.4. HARDWARE ARCHITECTURE
77
della variabile perché in fase di compilazione non sempre si può calcolare che
esattamente il punto puntatori alla memoria e che nessun altro mai puntatore
punta a quel pezzo di memoria. Quindi il controller di memoria è un posto
centrale per gestire aliasing. larghezza mem_data_out è la larghezza massima
dei dati di tutti i cilindri del controller di memoria. La dimensione dei puntatori
è attualmente fissato a 32 bit. Se abbiamo bisogno di questo per andare più
grande che potremmo passare a 64 puntatori bit. C’è solo un modulo di controllo
di memoria che istanzia le altsyncrams necessari per il programma. Ogni modulo
deve comunicare attraverso il suo modulo madre per raggiungere il controller di
memoria. Quindi, ci sono MUX ad ogni livello della gerarchia come mostrato
in figura:
Per esempio , nel modulo principale ci sono sia nel corpo della funzione principale , in a , o b, quindi abbiamo bisogno 3-1 MUX . Dal momento che non
permettiamo ricorsione , il grafo delle chiamate sarà sempre un albero. Notare
che il più in basso sul grafico chiamata c’è più indugio al controller di memoria .