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 eszköz Gyakorlat-3 mintapélda I/O hozzárendelés
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 Antivalencia Y AB AB Ekvivalencia Y AB AB De!!!!!! Antivalencia 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 I 0 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 Csatlakozó szorzattagok száma 0 1 2 3 4 5 6 7 8 9 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 S 0, S 1 vezérlővonalakkal történi, az alábbiak szerint (lásd táblázat) S 0 S 1 É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 S 0, S 1 vezérlők által programozható 4 féle állapot szemléltetése: S0/S1 0/0 S0/S1 0/1 S0/S1 1/0 S0/S1 1/1
Pihenésképpen oldjunk meg egy multiplexeres feladatot, hogy tisztán lássuk a MUX-ok működését. X0 U3 1 U1 U3 U2 1 U1 X1 1 U2 U4 X2 U3 1 U1 U2 Y 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. X U3 1 U3 U1 Y0 1 U1 1 U4 Y1 U3 U1 1 Y2 U1 Y3 A0 A1