203176. lajstromszámú szabadalom • Programozható logikai áramköri elrendezés
1 HU 203 176 B 2 A második műveleti szint a teljes zárójeles kifejezéseket realizálja, vagyis a 3 további VAGY mátrix kimenetei a következők lesznek: U1-(X1+X2*X3) U2-(X1*X2+X3) U3“(X2) U4-(Xl) A harmadik műveleti szint a 4 illesztőhálózatban játszódik le, ennek kimenetei tehát: W1”U1*Ü2 és W2-U3*Ü4 Végül a negyedik műveleti szint, amely az előző szint eredményeinek logikai összegezése, a 2 VAGY mátrixban realizálódik, amely így létrehozza a kimenetet, azaz: Z=W1+W2 A bemutatott egyszerű példánál a megoldás bonyolultabbnak tűnik, mintha azt hagyományos PLA áramkörrel realizáltuk volna. Ennek oka egyrészt a bemeneti változók kis száma, másrészt az, hogy a bemutatott példa matematikai kifejezését a bemutatás szemléletessége érdekében szándékosan nem minimalilzáltuk. Nagyobb számú, pl. 20-30 db bemeneti változó és minimális programozási pontra optimalizált realizálás esetén azonban a találmány szerinti megoldás alkalmazásával általában a szükséges programozási terület kisebbre adódik, mint a hagyományos PLA realizáció esetén. A találmány szerinti megoldás minimalizált programozására alkalmas számítási eljárást ismertetünk a jelen leíráshoz csatolt külön mellékletben. További magyarázatot igényel még a 4 illesztőhálózat szerepe. Mint láttuk, ennek feladata a W1-U1*Ü2 típusú inhibiciós, azaz gátlási logikai műveletek végrehajtása. Ennek megfelelően a 4 illesztő hálózat legkézenfekvőbb megvalósítási módja, hogy azt a 2. ábra szerint párhuzamosan elrendezett 5 gátlási elemekből kivitelezzük. Előfordulhat azonban, hogy egyes Wl-Ul*Ü2 típusú kifejezésekben az ui és Ü2 tényezők közül az egyik hiányzik, ezért ilyenkor a megfelelő 5 gátlási elem másik bemenetére közvetlenül logikai 0, ill. 1 jelszintet kell vezetni. Ezen jelszintek közvetlen ráprogramozhatóságát segíti elő, ha a 3 további VAGY mátrix bemeneteire a 0 és 1 logikai jelszinteket közvetlenül is rávezetjük az 1. ábrán látható módon. Ez utóbbi azonban szükségtelenné válik akkor, ha a 4 illesztőhálózat felépítésére a 3. ábra szerinti megoldást alkalmazzuk, vagyis abban a párhuzamosan elrendezett 5 gátlási elemek mellett 6 invertereket és 8 rövidrezáró vezetékeket is szerepeltetünk. Az illesztőhálózat egy további célszerű megvalósítási módja látható a 4. ábrán. A logikai algebra ismert szabályai alapján egyszerűen belátható, hogy a 7 további ÉS mátrix megfelelő programozásával ez az elrendezés ekvivalenssé tehető a 3. ábra szerinti megoldással úgy, hogy abban az 5 gátlási elem, 6 inverter 8 rövidrezáró vezeték típusú jelcsatornák száma is bizonyos határok között a programozással meghatározható. A gyakorlatban a 0 logikai jelhez általában 0V, az 1 logikai jelhez pedig +5V feszültségszintet szokás hozzárendelni. Ez a választás azonban önkényes, vagyis a két jelszint értelme elvileg fel is cserélhető. Egy ilyen fordított, ún. negatív logikai értelmezés mellett az 1 és 7 ÉS mátrixok VAGY mátrixként, a 2 és 3 VAGY mátrixok pedig ÉS mátrixként fognak működni. A találmány szerinti áramköri elrendezésnél tehát úgy állíthatjuk elő ennek lehetséges logikai ekvivalenseit, ha a programozási területek be- és/vagy kimenetein a jelek logikai értelmét akár a jelszintek átértelmezésével, akár jelfordító inverter áramkörök tényleges beépítésével megfordítjuk. így pl. az eredeti megoldással logikailag ekvivalens megoldásokhoz jutunk akkor is, ha a programozási területeket (mátrixokat) NOR vagy NAND kapukból építjük fel. Matematikai módszerrel egyszerűen igazolható, hogy egy minimális eredményre vezető algoritmus alapján beprogramozott találmány szerinti áramköri elrendezés teljesen hazárdmentes. Ez a körülmény jelentősen megkönnyíti és leegyszerűsíti az áramkör helyes működésének utólagos ellenőrzését, a programozás tesztvizsgálatát is. A teljes értékű vizsgálathoz ui. nem szükséges minden lehetséges bemeneti kombinációnál megvizsgálni a kimenőjeleket, hanem csak azoknál, amelyek az 1 ÉS mátrix kimenetére programozott logikai szorzatokból úgy képezhetők, hogy az azokban szereplő változókat 1 jelszintre, a többit pedig 0 jelszintre állítjuk be. így pl. a fentebb említett példában három bemenő változó volt, s az 1 ÉS mátrix kimenetére az xi; X2X3; xix2; X3 és X2 szorzatokat programoztuk. A tesztvizsgálatnál az xi-x2-x3 bemenetekre ennek megfelelően elegendő a következő kombinációkat vizsgálni: l-O-O, 0-1-1, 1-1-0, 0-0- 1, 0-1-0. Nagyszámú, így pl. 20-30 bemeneti változó esetén ez azt jelenti, hogy a több millió lehetséges bemeneti kombináció helyett a vizsgálatot csak néhány tucat változatra szükséges elvégezni. A találmány szerinti programozható áramköri elrendezés egyik legfontosabb előnye az, hogy nagyszámú bemenet esetén kisebb programozási területet igényel, mint a hagyományos PLA megoldás, így éppen a legbonyolultabb kombinációs hálózatokra ad gazdaságos megoldást. Egy másik lényeges előny, hogy a hazárdmentességet az áramköri elrendezés logikai struktúrája eleve biztosítja, így ezek kiküszöböléséhez nem szükséges további járulékos programozási területeket elpazarolni. Egy további fontos előny az is, hogy a programozást követő tesztvizsgálat viszonylag kevés lépésből áll, ezért nem szükséges járulékos ellenőrző áramköröket beépíteni. A találmány szerinti áramköri elrendezést legcélszerűbb egyetlen tokba szerelt integrált áramkörként (IC) kivitelezni. Előállítási technológiája ekkor teljesen azonos a hagyományos PLA áramkörök gyártási módszerével, egyetlen chip-területen azonban azokhoz képest nagyobb kapacitású PLA hozható létre. 5 10 15 20 25 30 35 40 45 50 55 60 4