Programozható áramkörök Grosz Imre Programozható logikai áramkörök 2004. 03. 22.
Programozható logikai áramkörök 2004. 03. 22. Alapfogalmak: - Cella - IO cella - Makrocella (Megablokk) - Kapcsoló, vagy kapcsolat mátrix - Összekötő vezetékek - Erőforrások Programozható logikai áramkörök 2004. 03. 22.
Programozható logikai áramkörök 2004. 03. 22. Programozható tulajdonságú logikai áramkör általános felépítésének blokkvázlata. Proglog. 1. ábra. Programozható logikai áramkörök 2004. 03. 22.
Programozható logikai áramkörök 2004. 03. 22. IO áramkörök (1) Bemeneti áramkörök - Szintérzékelés nagysága: - TTL - CMOS - Csökkentett tápfeszültségű logika - Beállítható komparálási szint - Szintérzékelés fajtája: - Normál kapu bemenetnek megfelelő komparálás - Schmitt triggeres bemenet Programozható logikai áramkörök 2004. 03. 22.
Programozható logikai áramkörök 2004. 03. 22. IO áramkörök (2) - Bemenet választása: - direkt - tárolós - Bemeneti felhúzó (és esetleg lehúzó) ellenállás programozhatósága - Bemeneti szinttartó áramkör programozható, hogy Bus-hold áramkörként, vagy felhúzó ellenállásként működjön - Bemeneti tároló elem mintavételi tulajdonsága: - latch - flip-flop - Órajel és órajel él választása Programozható logikai áramkörök 2004. 03. 22.
Programozható logikai áramkörök 2004. 03. 22. IO áramkörök (3) - IO fokozat tápfeszültsége, több családnál, külön erre a célra szolgáló csatlakozó lábak felhasználásával, a maglogikával azonos, vagy attól eltérő tápfeszültségre köthető. - A nagyobb áramköröknél több - egymástól eltérő feszültségről működő – IO zóna alakítható ki. Programozható logikai áramkörök 2004. 03. 22.
Programozható logikai áramkörök 2004. 03. 22. IO áramkörök (4) - A bemeneti áramkörökhöz tartozik még a védelmi áramkör is. Túlfeszültség tűrés - Nem használt lábak földelése Programozható logikai áramkörök 2004. 03. 22.
Kimenetek lehetőségei (1) - Kimeneti tulajdonságok meghatározása és kimeneti meghajtó - A kimenőjel vezérelt negálása: - beépített - programozható lehetőség - Kimenet típusa: - Kombinációs hálózat - Regiszter (D tár) lehetősége Programozható logikai áramkörök 2004. 03. 22.
Kimenetek lehetőségei (2) - Kimenet engedélyezés: - alacsony szint engedélyez - magas szint engedélyez - állandó engedélyezés (Totem-Pool kimenet) - kimenet letiltása (A csatlakozás Input láb legyen) - nyitott kollektoros kimenet kialakítása - Kimenet engedélyező jel választása: - tokra közös külső jel - tokban előállított kombinatív jel - Jelváltási meredekség beállítása: - lassúbb jelváltási sebesség - gyorsabb jelváltási sebesség Programozható logikai áramkörök 2004. 03. 22.
Programozható logikai áramkörök 2004. 03. 22. Tesztelés és égetés - Programozás égető berendezésben - Beépítés helyén programozás 5 vezeték - Programozó áramkör - Másolás elleni védekezésként (security bit(ek)) - Beépített, működésvizsgáló (tesztelő) logika - Boundary-scan megléte a betöltővel azonos 4, opcionálisan 5 vezérlő vonal segítségével Programozható logikai áramkörök 2004. 03. 22.
Összeköttetések kialakítása - Kapcsolat mátrix: - Központi elosztó mátrix és elosztó részmátrixok Programozható logikai áramkörök 2004. 03. 22.
Logikai feladatokat megvalósító alapáramkörök (cellák, makrocellák) - Bemeneti meghajtó fokozat - Bemenőjelek száma - ÉS hálózat - VAGY hálózat - Vezérelt negáció: KIZÁRÓ-VAGY (EXOR) kapu - Tárolók vagy Flip-flopok Programozható logikai áramkörök 2004. 03. 22.
ÉS áramkör és programozhatósága Proglog.3. ábra. Programozható logikai áramkörök 2004. 03. 22.
VAGY hálózat és programozhatósága Proglog.4. ábra. Programozható logikai áramkörök 2004. 03. 22.
Programozható logikai áramkörök 2004. 03. 22. Vezérelt negáció Proglog.5. ábra. Programozható logikai áramkörök 2004. 03. 22.
Élvezérelt tároló és kimeneti MUX Proglog.6. ábra. Programozható logikai áramkörök 2004. 03. 22.
Egyszerű Programozható áramkörök főbb típusai - PROM Rögzített ÉS mátrix 2n kapu VAGY programozható - PAL Programmable Array Logic ÉS hálózata programozható a VAGY rögzített - GAL Generic Array Logic. A PAL EEPROM-os, összetettségében is bővített változata - HAL Hardware Array Logic - FPLA Field Programmable Logic Array. Programozható az ÉS, és a VAGY mátrixa Programozható logikai áramkörök 2004. 03. 22.
Programozható logikai áramkörök 2004. 03. 22. Az egyszerű, kapu típusú programozható áramkörök felépítésének összehasonlítása Programozható logikai áramkörök 2004. 03. 22.
Egy összetett SSI áramkör a GAL16V8 egy blokkjának logikai rajza. Programozható logikai áramkörök 2004. 03. 22.
Összetett programozható logikák (nagy integráltságú eszközök): - A belsejükben létrehozott logikai változókat már nem feltétlen vezetik ki az IC lábaihoz. - Nem egy esetben a belső jelek száma jóval nagyobb az IC IO lábainál. - Egy-egy nagyobb “logikai kapacitású” áramkör több féle tokozásban, ennek megfelelően eltérő számú IO lábbal kapható. Programozható logikai áramkörök 2004. 03. 22.
Programozható logikai áramkörök 2004. 03. 22. - FPGA Field Programmable Gate Array. Felhasználó által programozható kaputömb. Több igen eltérő család közös neve pl. - LCA Large Cell Array. Logikai cellatömb áramkör. Egyfajta FPGA megvalósítás. Főbb elemei: - CLB: Configurable Logic blokk = Meghatározható tulajdonságú logikai egység. - SM: Switch Mátrix - IO Bemeneti-kimeneti egység Programozható logikai áramkörök 2004. 03. 22.
CLB: Configurable Logic blokk Meghatározható tulajdonságú logikai egység. Felépül: - Egy kis kapacitású RAM-ból (a logikai funkciók számára) - ezt szokás LUT-nak Logical Unit Table = leírótáblának nevezni - Muxokból - D tárolókból - Jellemzően kevés bemenetűek a cellák - Alapvetően szinkron áramkör céljaira Programozható logikai áramkörök 2004. 03. 22.
Programozható logikai áramkörök 2004. 03. 22. CLB felépítése Proglog.9. ábra. Programozható logikai áramkörök 2004. 03. 22.
Programozható logikai áramkörök 2004. 03. 22. Kapcsolódásaik A CLB-k több vezetékes összeköttetés csatornák, és a csatornák kereszteződésében lévő SM: Switch mátrix = kapcsoló mátrixok segítségével programozhatók a kívánt kapcsolássá. Programozható logikai áramkörök 2004. 03. 22.
SM Switch Mátrix kialakítása Az általános összekötő vezetékek kereszteződésében. Használatosak Proglog.10. ábra. Programozható logikai áramkörök 2004. 03. 22.
XILINX FPGA áramkörök összeköttetés hálózata. Programozható logikai áramkörök 2004. 03. 22.
IO cella kialakítása a XILINX XC FPGA áramköröknél Programozható logikai áramkörök 2004. 03. 22.
A RAM bázisú FPGA programbetöltési lehetőségei - Betöltés párhuzamos EPROM-ból - Betöltés soros (EE)PROM-ból - Betöltés perifériaként mikroprocesszor adatsínről - Betöltés speciális soros vonalról (IEEE 1491) - A betöltést az FPGA vezérli - A mód kiválasztása kijelölő lábak bekötésével Programozható logikai áramkörök 2004. 03. 22.
CPLD Configurable Programmable Logic Device - Programozással kialakítható logikai eszköz. Makrocella bázisú programozható logikák - Alapegységük a GAL-ra hasonlít - Összeköttetésük: - Összekötés hálózattal és SM-el - Kapukból kialakított központi elosztó hálózattal Programozható logikai áramkörök 2004. 03. 22.
A Lattice ispLSI1000, 2000 - családja ispLSI = In-System Programmability Large Scale Integration = Rendszerben programozható nagy integráltságú áramkör. (Lattice-nél az ispLSI egyúttal termékcsalád név is.) A tároló elem a nem felejtő EEPROM Kapható a lábkompatibilis pLSI (Programmability Large Scale Integration) eszköz is, mely csak programozó eszközökben tölthető Programozható logikai áramkörök 2004. 03. 22.
Az ispLSI család közös jellemzői Az áramkör a konkrét típus függvényében néhány - kettő egész hatványai (a típusszám osztva 8-al) - számú megablokkból, megablokkonként 16 IO cellából, egy a tokra közös GRP-ből (programozható összekötés hálózat), futási időre kiegyenlített órajel elosztó hálózatból, és a működést biztosító betöltő áramkörből, épül fel. Programozható logikai áramkörök 2004. 03. 22.
ispLSI 1032 általános blokkvázlata Proglog.13. ábra. Programozható logikai áramkörök 2004. 03. 22.
Lattice ispLSI 1000 család egy megablokk-jának felépítése Programozható logikai áramkörök 2004. 03. 22.
Programozható logikai áramkörök 2004. 03. 22. (GLB) felépítése és a kombinált használatot bemutató (példa) kialakítás Programozható logikai áramkörök 2004. 03. 22.
Programozható logikai áramkörök 2004. 03. 22. Lattice ispLSI 1000 család Megablokkot az IO cellákkal összekötő kimeneti kapcsoló mátrixának (ORP) felépítése Programozható logikai áramkörök 2004. 03. 22.
ispLSI 1000 család bemeneti-kimeneti (IO) cella általános felépítése Programozható logikai áramkörök 2004. 03. 22.
Az IO cellából programozással létrehozható ki, illetve bemenetek: - Bemeneti erősítő - Bemeneti latch - Bemeneti regiszter - Erősítő típusú kimeneti meghajtó - Invertáló típusú kimeneti meghajtó - Erősítő típusú tri-state kimeneti meghajtó - Erősítő típusú tri-state kimeneti meghajtó, és bemenet (kétirányú csatlakozó pont) - Erősítő típusú tri-state kimeneti meghajtó és bemeneti regiszter Programozható logikai áramkörök 2004. 03. 22.
Kimenet engedélyezés kialakítása az ispLSI 1000 családnál Programozható logikai áramkörök 2004. 03. 22.
Programozható logikai áramkörök 2004. 03. 22. Egy betöltéssel is rendelkező, dinamikusan D-vé alakítható T tároló kialakítása Programozható logikai áramkörök 2004. 03. 22.
Egyszerű J-K tároló kialakítása D tárolóból Programozható logikai áramkörök 2004. 03. 22.