A.12 Le logiche programmabili
 

Le logiche programmabili, impiegate per la realizzazione di questo lavoro, generano tutti i segnali utilizzati dai vari dispositivi e nel sensore grossolano hanno permesso la costruzione di un serializzatore, comunicante direttamente con la porta RS232 del PC, senza l’impiego di ulteriori interfacciamenti esterni. Gli integrati in questione sono delle ispLSI 1016 della Lattice, realizzate in tecnologia E2CMOS. Nella figura 1 si può vedere lo schema a blocchi di un tale dispositivo; ci sono 96 registri, 32 pin di I/O, 4 ingressi dedicati, 3 ingressi di clock e il GRP (Global Routing Pool) il quale consente una completa interconnessione tra le precedenti parti. 

Schema interno della logica programmabile

Fig 1 – Schema interno della logica programmabile ispLSI 1016 della Lattice.

Le unità logiche fondamentali, che consentono l’implementazione di un qualsiasi circuito digitale a partire dal codice scritto in ABEL (Advanced Boolean Equation Language), sono i GLB (Generic Logic Block), rappresentati in figura con i nomi A0, A1…B7. Ogni GLB possiede 18 ingressi, un array programmabile di AND/OR/XOR e 4 uscite configurabili come combinatorie o sequenziali, a seconda del tipo di circuito che si vuole costruire. Ciascun GLB può comunicare con gli altri visto che gli ingressi e le uscite interagiscono entrambe con il GRP. Risulta evidente che un circuito molto complesso impiegherà molte unità logiche fondamentali, fino ad utilizzarle tutte (16).
A partire dal codice ABEL, con un opportuno programma si è ottenuto un file .jed da trasferire al chip tramite la porta parallela del PC.
In questo lavoro la complessità dei due circuiti da implementare ha costretto all’impiego di due integrati per ciascun sensore, dal momento che non si disponeva di un software in grado di programmare delle logiche con un più alto numero di GLB (ad esempio la ispLSI 1024).


Home | Precedente | Successivo