Programozható logikai áramkörök
PAL és GAL áramkörök
Előadó: Nagy István Ajánlott irodalom: Ajtonyi I.: Digitális rendszerek, Miskolci Egyetem, 2002. Ajtonyi I.: Vezérléstechnika II., Tankönyvkiadó, Budapest, 1987 Gál T.: Programozható logikák BME - tankönyvkiadó, 1994. P. Ammon: Kapumátrix-áramkörök, Műszaki könyvkiadó, 1989.
PAL eszközök:
PAL = Programmable Array Logic
A programozható tömb logika (PAL) elnevezés az AMD cég regisztrált védjegye. A strukturális felépítés (amint az előző előadásokból is részben kiderült) nagyon hasonlít a PLA –ékhoz, azzal az alapvető eltéréssel, hogy a PAL-ok ÉS mátrixa progragmozható, de a VAGY mátrixa nem. További megszorítás, hogy a gyakorlatban használt PAL –okban az egy kimenethez tartozó szorzattagok száma korlátozott (lásd ábra: 8 bemenet). Ezeknek a következménye: 1.
PAL-ok gyorsabbak (vagy kapuk nem programozhatók, gyárilag gyorsak)
2.
Csak Kevés szorzattagot képviselő függvények realizálhatóak (korlátozott bemenetek)
3.
Egyfajta korlátozás az is, hogy csak az ÉS kapuk programozhatóak.
A gyakorlatban a PAL –ok típusmegjelölése: PAL aa b cc aa: az ÉS mátrix max. bemeneteinek száma
b: a kimenet típusának definiálása: H – aktív magas L – aktív alacsony P – programozható polaritású C – komplemens
Regiszteres kimenetű PAL –ok esetében: R – regiszteres kimenet RP – regiszteres programozható polaritású kimenet V – fexibilis, azaz programozható makrocellás kimenet
cc: dedikált vagy programozott kimenetek maximális száma
PAL eszközök – példa1: Példaként elemezzük ki egy konkrétan adott PAL eszköz felépítését és működését: PAL 16L8 1.
16 ÉS mátrix bemeneteinek száma (egy változó ponált és negált bemeneteinek száma egy bemenetnek számít, illetve az ÉS mátrix bemeneteibe a kimenetről visszacsatolt jelek is beszámítanak). Esetünkben 10 csak bemenetként használható (ún. dedikált) bemenet bement van, és 8 kimenet közül, 6 vissza van csatolva az ÉS mátrix bementére. Ezeket a visszacsatolt részeket be/ki meneteknek (pontosabban programozható I/O -knak) nevezik, mivel a TS elemek programozásával tudjuk bementre ill. kimenetre változtatni őket.
2.
A 8 kimenet közül 2 csak kimenetként használható. Vagyis a dedikált I/O –k szemszögéből: 10 dedikált bement, 2 dedikált kimenet, 6 programozható I/O.
3.
A belső kapcsolásból az is látható, hogy kimenetenként max. 7 szorzattag lehetséges.
A regiszteres PAL –ok a kimenetükön D FlipFlop -os regisztert tartalmaznak, melyek közös órajelre működnek (pl.: CP jel. Megj.: működhetnek egymástó független órajelre is.), így szinkronizált regiszteres PAL –oknak nevezik ezeket az áramköröket. Néhány AMD, PAL áramkör jellemző adatai Típus
Technológia
Tpd (ns)
Icc (mA)
Fmax (MHz)
PAL 16L8-4
TTL
4,5
210
125
PAL 22P10B
TTL
15,0
180
-
PALCE 16V8H
EECMOS
5,0
125
166
PALCE 26V12H
EECMOS
7,5
115
125
A PAL 16L8 eszköz belső felépítése: Dedikált bemenetek: 1..11 Dedikált kimenetek: 12, 19 Kimenetek: 12..19 Visszacsatolt kimenetek: 13..18 Programozható I/O-k ÉS kapuk: ÉS kapuba csatlakozó szorzattagok: (7 szorzattag, 1 vezérlés)
A PAL 16L8 eszköz Gyakorlat-1
A PAL 16L8
eszköz Gyakorlat-2, kimenetek
A PAL 16L8
I/O hozzárendelés
eszköz Gyakorlat-3 mintapélda
A PAL 16L8
eszköz Gyakorlat-4 JEDEC fájl
A „hasznos” program csak a *-gal jelölt soroknál kezdődik. További fontos sorok az „L” illetve „V” sorok.
A PAL 16L8
eszköz Gyakorlat-5 feladat
Antivalenc ia Y AB A B Ekvivalencia Y AB AB De !!!!!! Antivalenc ia Ekvivalencia
A PAL 16L8
eszköz Gyakorlat-6 biztosítékmátrix, JEDEC program
I/O hozzárendelés:
GAL eszközök-1:
GAL = General Array Logic
Ahogy a PLA és FPLA eszközöknél rávezetésképpen megnéztünk egy több-kimenetes kombinációs hálózatot, úgy a GAL eszközöknél elmondhatjuk, hogy a PLA/FPLA eszközök valójában rávezetés a GAL eszközökre. A GAL általánosan programozható logikai mezőt jelent, vagyis a programozhatósági feltételek egyre kevésbé kötöttek. Ez igaz, hogy szélesebb lehetőségekkel jár, de viszont komplikáltabb programozással is. Mint ahogy a PAL eszközöknél elmondtuk, hogy az AMD cég termékei, úgy a GAL –okról elmondhatjuk, hogy többnyire a LATTICE cég termékei. (Persze további cégek is, INTEL, Naational Semiconductor, … , gyártanak GAL eszközöket)
A GAL áramkörökről elmondható, hogy a PAL eszközök továbbfejlesztett változatai, mivel az ÉS mátrix programozhatósága mellett rendelkezik egy programozható, összetett kimeneti áramkörrel is, amit makro-cellának hívnak. A továbbiakban, a működés és az architektúra bemutatásánál, itt is egy adott áramkörre szorítkozunk majd: GAL CELLV10 Az eszköznek 12 bemenete van és ezek mindegyike becsatlakozik az ÉS mátrixba, melyekből az I0 bemenet a makro-cellákban található órajel-bemenetként használható. Az eszköznek 10 kimenet, pontosabban I/O kimeneti makro-cellája van. Fontos tudni, hogy az egyes makrocellákhoz csatlakozó szorzattagok száma nem azonos: (lásd táblázat). Kimeneti Makro-cella
0
1
2
3
4
5
6
7
8
9
Csatlakozó szorzattagok száma
8
10
12
14
16
16
14
12
10
8
A GALCELLV10 architektúrája: Órajel bemenet, mely a makrocellák órajel bemenete is. Bemenetek: (11 bemenet)
Programozható ÉS mátrix (44 x 132) keresztponttal Kimeneti makro-cellákhoz csatlakozó szorzattagok (VAGY kapuba csatlakoznak), melyek makro-cellaként különböznek, (lásd előző táblázat). A 10 kimeneti makro-cella A bementként használt makro-cellák bemenetei:
GAL eszközök -ki/be menetek: Ha összeadjuk ezeket a szorzattagokat, =120. Azonban, mivel minden kimeneti puffer engedélyezése egy-egy szorzattaggal történik, és az aszinkron törlőjelet is egy-egy szorzattag állítja elő, így a szorzattagok száma: 120+10+2=132. Továbbá az ÉS mátrixba a 12 dedikált bemeneten kívül, minden kimeneti makro-cellából is becsatlakozik egy-egy visszacsatolás (vagyis+10 bemenet), ebből megállapítható az ÉS mátrix mérete (vagyis keresztpontjainak száma): [2x(12+10) X132], vagyis: 44 X 132 (lásd blokkábra). A makro-cella a programozástól függően használható: Bemenetként, kombinációs kimenetként, Regiszteres kimenetként. A programozása az S0, S1 vezérlővonalakkal történi, az alábbiak szerint (lásd táblázat)
S0 S1
Értelmezés
0
0
Regiszteres, aktív alacsony
0
1
Regiszteres, aktív magas
1
0
Kombinációs, aktív alacsony
1
1
Kombinációs, aktív magas
A GAL makro-cella felépítése:
Makro-cella Az S0, S1 vezérlők által programozható 4 féle állapot szemléltetése:
S0/S1
S0/S1
0/0
0/1
S0/S1
S0/S1
1/0
1/1
Pihenésképpen oldjunk meg egy multiplexeres feladatot, hogy tisztán lássuk a MUX-ok működését.
U3
X0
U1
1 U3
U2
1 U1 X1
1
U2
U4 Y U3
X2
U1
1
U2 U1
X3
A0
A1
Pihenésképpen oldjunk meg egy multiplexeres feladatot, hogy tisztán lássuk a DEMUX-ok működését.
U3
X
U1
1 Y0
U3 1 U1 1
Y1
U4 U3
U1
1 Y2 U1 Y3
A0
A1