ELEMANIA
Digitale - Programmable logic device (PLD)
Memoria ROM per realizzare una tabella di verità

Una memoria ROM opportunamente programmata può essere usata per realizzare qualsiasi tabella di verità a n ingressi e m uscite. E' infatti sufficiente usare una ROM con n bit di indirizzo e m bit di parola e scrivere i valori delle uscite nelle parole della memoria stessa.

Supponiamo ad esempio di voler sintetizzare una tabella di verità a 5 ingressi (A,B,C,D,E) e 4 uscite (x,y,w,z). Si tratta di una tabella di verità contenente ben 32 righe e dunque abbastanza complicata da realizzare con i metodi tradizionali. Se invece usiamo una ROM con 5 pin di indirizzo e 4 bit di parola, è sufficiente usare gli ingressi A,B,C,D,E per fornire gli indirizzi e scrivere i valori desiderati delle uscite x,y,w,z nei 4 bit di ogni parola.

La figura seguente mostra per esempio una piccola ROM usata per sintetizzare una tabella di verità con 3 ingressi e 4 uscite:

Nel caso specifico le parole di indirizzo 000 e 001 contengono entrambe il valore 0000, la parola di indirizzo 010 contiene 0001 e così via.

Questa soluzione presenta tuttavia alcuni svantaggi. Anzitutto non è detto che sia disponibile una ROM con il numero di pin di indirizzo e di dato richiesti. In questo caso sarebbe necessario usare una ROM più grande e utilizzarla solo in parte (cioè non usando tutte le parole o non usando tutti i bit di ogni parola). Inoltre in questo modo non viene effettuata nessuna semplificazione dell'espressione logica, dal momento che sono disponibili tutte le combinazioni di ingressi e di uscite. Questo però nella maggior parte dei casi pratici non è necessario e conduce a una realizzazione circuitale estremamente inefficiente.

Infine le ROM sono solitamente più lente delle porte logiche e consumano una maggiore potenza.

Programmable Logic Array (PLA)

Un'evoluzione delle ROM per la realizzazione di circuiti combinatori è rappresentata dai Programmable Logic Array (PLA). Si tratta del più semplice dispositivo logico programmabile ed il primo ad essere stato prodotto a livello industriale verso la fine degli anni '70. La struttura di una PLA è basata sul fatto che qualsiasi funzione logica può essere descritta tramite somme di prodotti logici. Un PLA è composto da una matrice d'ingresso di porte logiche AND programmabili, collegate con una serie di OR programmabili. La programmazione avviene attraverso la bruciatura di microfusibili posti nei nodi di collegamento fra righe e colonne. La struttura generale di un PLA è mostrata in figura:

Si osservi a titolo di esempio la figura seguente che mostra la programmazione di un PLA per realizzare un'espressione logica:

Programmable Logic Array

Le x indicano collegamenti elettrici fra le righe e le colonne, realizzati allo scopo di programmare nel PLA una data funzione logica AND-OR.

Si noti che in generale, mentre il numero di porte OR (colonne) è pari al numeri di segnali di uscita, il numero di AND presenti in PLA (righe) dipende dal particolare dispositivo usato. A differenza delle ROM il numero totale di prodotti logici (AND) che si possono usare in un PLA è limitato (per esempio nel PLA in figura ci sono solo 5 AND). Pertanto è necessario procedere a una semplificazione preventiva dell'espressione logica, prima di programmarla nel PLA.

Spesso la struttura precedente viene rappresentata in questo modo semplificato:

I singoli collegamenti entranti nelle porte AND e OR rappresentano input multipli. I nodi, contrassegnati con X, rappresentano la localizzazione di microfusibili, che durante la programmazione verranno bruciati oppure lasciati inalterati per realizzare le funzioni desiderate.

I primi dispositivi PLA ad essere stati prodotti implementano circuiti puramente combinatori, successivamente si sono sviluppati PLA sequenziali, dotati di flip-flop per la sincronizzazione dei segnali.

Altri dispositivi programmabili

I PLA sono stati i primi di una famiglia di dispositivi detti genericamente Programmable Logic Device (PLD). Fra le molte sigle attualmente utilizzate ricordiamo brevemente le principali:

La figura seguente mostra invece l'aspetto tipico di un PAL (di fatto indistinguibile da quello di una piccola PROM):

 

precedente - successiva

Sito realizzato in base al template offerto da

http://www.graphixmania.it