Programmerbar logikarray - Programmable logic array

Image
PLA skematisk eksempel

Et programmerbart logisk array ( PLA ) er en slags programmerbar logisk enhed, der bruges til at implementere kombinationslogiske kredsløb . PLA har et sæt programmerbare AND- portplaner, der linker til et sæt programmerbare ELLER gate- planer, som derefter betinget kan suppleres for at producere et output. Den har 2 N OG-porte til N-inputvariabler, og for M-udgange fra PLA skal der være M ELLER-porte, hver med programmerbare indgange fra alle AND-porte. Dette layout gør det muligt at syntetisere mange logiske funktioner i summen af ​​produkter kanoniske former .

PLA'er afviger fra programmerbare opstilling logik enheder ( PALS og gals ) i at både AND og OR gate planer kan programmeres.

Historie

I 1970 udviklede Texas Instruments en maske- programmerbar IC baseret på IBM read-only associative memory eller ROAM. Denne enhed, TMS2000, blev programmeret ved at ændre metallaget under produktionen af ​​IC. TMS2000 havde op til 17 indgange og 18 udgange med 8 JK-flip-flops til hukommelse. TI opfandt udtrykket Programmable Logic Array for denne enhed.

Implementeringsprocedure

  1. Forberedelse i SOP-form ( sum af produkter ).
  2. Få den mindste SOP-formular for at reducere antallet af produktbetingelser til et minimum.
  3. Beslut indgangsforbindelsen til AND-matrixen til generering af det krævede produktudtryk.
  4. Beslut derefter inputforbindelserne til ELLER matrix for at generere sumbetingelserne.
  5. Beslut forbindelserne til inverter matrix.
  6. Programmer PLA.

PLA blokdiagram:

1. BLOK 2. BLOK 3. BLOK 4. BLOK 5. BLOK
INPUT BUFFER OG MATRIX ELLER MATRIX INVERT / IKKE INVERT MATRIX FLIP FLOP OUTPUT BUFFER

Fordele i forhold til skrivebeskyttet hukommelse

De ønskede udgange for hver kombination af indgange kunne programmeres til en skrivebeskyttet hukommelse , hvor indgangene drives af adressebussen, og udgangene læses ud som data. Imidlertid ville det kræve en separat hukommelsesplacering for enhver mulig kombination af indgange, inklusive kombinationer, der aldrig formodes at forekomme, og også duplikering af data under "ligeglad" -forhold (for eksempel logik som "hvis input A er 1, så hvad angår output X er vi ligeglad med hvad input B er ": i en ROM skulle dette skrives to gange, en gang for hver mulige værdi af B, og som mere" ligeglad " input tilføjes, duplikering vokser eksponentielt); derfor kan et programmerbart logisk array ofte implementere et stykke logik ved at bruge færre transistorer end det tilsvarende i skrivebeskyttet hukommelse. Dette er især værdifuldt, når det er en del af en processionschip, hvor transistorer er knappe (for eksempel indeholdt den originale 6502- chip en PLA til at styre forskellige processer i processoren).

Ansøgninger

Én anvendelse af en PLA er at implementere kontrollen over en datasti . Den definerer forskellige tilstande i et instruktions sæt og producerer den næste tilstand (ved betinget forgrening). [f.eks. hvis maskinen er i tilstand 2, og vil gå til tilstand 4, hvis instruktionen indeholder et øjeblikkeligt felt; derefter skal PLA definere handlingerne for styringen i tilstand 2, indstille den næste tilstand til at være 4, hvis instruktionen indeholder et øjeblikkeligt felt og vil definere handlingerne for styringen i tilstand 4]. Programmerbare logiske arrays skal svare til et tilstandsdiagram for systemet.

De tidligste Commodore 64 hjemmecomputere, der blev udgivet i 1982 (i begyndelsen af ​​1983), brugte oprindeligt en programmeret Signetics 82S100 PLA, men da efterspørgslen steg, begyndte MOS Technology / Commodore Semiconductor Group at producere en maske-programmeret PLA, som bar varenummer 906114-01.

Se også

Referencer

eksterne links