Programmable Logic Device: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
Marius~itwiki (discussione | contributi)
nuovo stub
 
Marius~itwiki (discussione | contributi)
tradotta parte
Riga 5:
== Uso di RAM come PLD ==
 
Prima dell'introduzione dei PLD si utilizzavano componenti [[RAM]] per implementare una qualsiasi logica combinatoria a partire da un dato insieme di ingressi. Una ROM con '''m''' ingressi (che corrispondono agli ''indirizzi'') ed '''n''' uscite (che corrispondono ai ''dati'') può contenere <math>2^m</math> parole di ''n'' bit. Immaginiamo ora che gli ingressi non siano costituiti da un indirizzo di ''m'' bit, ma invece da ''m'' segnali logici indipendenti. Teoricamente esistono <math>2^m</math> diverse possibili funzioni [[Algebra booleana|booleane]] di questi ''m'' segnali, ma la struttura della ROM permette di definire soltanto ''n'' di queste funzioni sui terminali di uscita. La ROM, in altre parole, diventa equivalente ad ''n'' circuiti logici separati, ciascuno dei quali realizza una data funzione combinatoria degli ''m'' ingressi. Il vantaggio di usare una ROM in questo modo consiste nel fatto che ogni possibile funzione degli ''m'' ingressi può essere associata a ciascuna delle ''n'' uscite, in modo da realizzare un circuito logico combinatorio dotato della massima flessibilità.
Prima dell'introduzione dei PLD si utilizzavano componenti [[RAM]] per implementare una qualsiasi logica combinatoria a partire da un dato insieme di ingressi logici.
 
Le [[PROM]] (Cioè le ROM programmabili), le [[EPROM]] (PROM cancellabili con [[raggi ultravioletti]]), e le [[EEPROM]] (PROM cancellabili elettricamente) possono essere configurate e programmate mediante apparecchiature facilmente reperibili, senza la necessità di ricorrere a particolari dispositivi [[hardware]] o [[software]]. Questi dispositivi, tuttavia, presentano una serie di limitazioni:
<!--
* sono solitamente più lenti dei corrispondenti circuiti logici dedicati,
* non sono sempre immuni da errori in caso di transizioni asincrone,
* consumano più potenza,
* poiché sono spesso utilizzati solo per una piccola parte della loro capacità teorica, comportano un'eccessiva occupazione di spazio,
* non possono essere facilmente impiegati per implementare circuiti a [[logica sequenziale]] poiché non dispongono della funzione [[flip-flop]].
 
Consider a ROM with ''m'' inputs (the address lines) and ''n'' outputs (the data lines). When used as a memory, the ROM contains <math>2^m</math> words of ''n'' bits each. Now imagine that the inputs are driven not by an ''m''-bit address, but by ''m'' independent logic signals. Theoretically, there are <math>2^m</math> possible [[Boolean logic|Boolean]] functions of these ''m'' signals, but the structure of the ROM allows just ''n'' of these functions to be produced at the output pins. The ROM therefore becomes equivalent to ''n'' separate logic circuits, each of which generates a chosen function of the ''m'' inputs.
 
<!--
The advantage of using a ROM in this way is that any conceivable function of the ''m'' inputs can be made to appear at any of the ''n'' outputs, making this the most general-purpose combinatorial logic device available. Also, [[PROM]]s (programmable ROMs), [[EPROM]]s ([[ultraviolet]]-erasable PROMs) and [[EEPROM]]s (electrically erasable PROMs) are available that can be programmed using a standard PROM programmer without requiring specialised hardware or software. However, there are several disadvantages:
* they are usually much slower than dedicated logic circuits,
* they cannot necessarily provide safe "covers" for asynchronous logic transitions,
* they consume more power, and
* because only a small fraction of their capacity is used in any one application, they often make an inefficient use of space.
Also, they cannot easily be used for [[sequential logic]], because they contain no [[flip-flop]]s.
 
Common [[EPROM]]s, for example the 2716, are still sometimes used in this way by hobby circuit designers, who often have some laying around. This use is sometimes called a 'poor man's PAL'.