Programozható logika vezérlő eszközök
Munka neve: PROGRAMOZHATÓ LOGIKUS VEZÉRLÉS ESZKÖZÖK
Terület: Informatika, Cybernetics és Programozás
Leírás: AK előadás 13 kezelt eszközök programozható logikai funkciók a központi vezérlőegység CU vezérlőegység számítógép végrehajtja során a menedzsment számítástechnikai folyamatot azáltal, hogy automatikus végrehajtását com
Fájlméret: 181 KB
A munkát letöltötték: 27 fő.
AK 13. ELŐADÁSI PROGRAMOZHATÓ LOGIKUS ELLENŐRZÉSI ESZKÖZÖK
A központi vezérlőegység funkciói
A gépi ciklus első lépése a parancs mintavétele a memóriából (VC szakasz). Ennek a szakasznak a célfüggvényét CF-VC-ként jelölik.
A parancs kiválasztása után a működési részének dekódolási szakasza (műveleti kód) következik. Az egyszerűség kedvéért egyelőre ezt a szakaszt tekintjük a VC-szakasz szerves részeként.
Végül a gépi ciklus utolsó szakaszában a műveleteket a feladatfuttatás határozza meg # 151; ZF-IR. Nyilvánvaló, hogy a CF-IO módosításainak száma megegyezik a VM parancsrendszerben elérhető műveletek számával.
Az objektívfunkciók sorrendje teljesen meghatározza a vezérlő eszköz és az egész VM egészének dinamikáját. Ez a sorrend alkalmas arra, hogy meghatározza és megjelenítse a csapat végrehajtási szakaszainak (GSE) grafikon-sémáját. A firmware grafikonrendszeréhez hasonlóan az ESE tartalmazza a kezdeti, a végleges, az operátor és a feltételes csúcsokat. A kezdeti és a végső csúcson egy adott parancs feltételes kijelölése van beillesztve, és egy feltételes ige van írva, amely befolyásolja a lépések sorrendjét. A szakaszok üzemeltetői az operátor csúcsai közé vannak beillesztve.
A felvételi formanyomtatvány szerint a lépéskezelő # 151; Ez egy megbízási operátor, amelyben:
• a színpadon végrehajtott műveletek eredményének neve a hozzárendelési jel bal oldalán van feltüntetve;
• az objektumfüggvény azonosítója, amely meghatározza az aktuális műveleteket, a hozzárendelési jel jobb oldalára íródik, majd a kiindulási adatok listáját (zárójelben).
A művelet eredménye P0i. a gép ciklusának ötödik szakaszában kapott, a KOPi i-edik parancsának működési kódjától függ (meghatározza a D-IO módosítását), a 0i első operandus kódját és a második operandus kódját # 151; az előző (i # 151; 1) művelet eredménye P0i-1: P0i: = IO (KOn, 0i, P0i-1).
A gráf-séma szakaszainak felépítésével összhangban minden VM parancs háromféleképpen osztható meg:
• olyan parancsok, mint az "Addition" (C);
• olyan parancsok, mint a "Record" (3p);
• "Feltételes ág" típusú parancsok (UP).
A szakaszok tipikus grafikonjai a 3. ábrán láthatók. 6.1.
A tesztállapot helyét a K0n működési kód határozza meg.
A szabályozó szerkezetének szerkezete
A fentebb említett célfunkciók végrehajtására szolgáló mikroprogramokat a mesterberendezés indítja el, amely a szükséges vezérlőjelsorozatot generálja és a vezérlőegység vezérlő részének része.
Az UU vezérlő része a következőket tartalmazza:
• mikroprogramozó gép (MPA);
• csomóponti megszakítások és prioritások SCP).
Az RK utasítás nyilvántartása a következő utasításnak a memóriaeszközről történő fogadására szolgál. A parancs működési részének (KOP, CA) dekódolásának eredményein alapuló firmware létrehoz egy bizonyos mikrokomponensek sorozatát, amelyek a CU összes célfunkciójának végrehajtását okozzák.
A mikroprogramok kialakításának módjától függően a mikroprogram-automaták megkülönböztethetők:
• kemény vagy hardveres logikával;
• programozható logikával.
A megszakítási és prioritási csomópont lehetővé teszi, hogy válaszoljon a munkaprogramok és a VM állapot végrehajtásával kapcsolatos különböző helyzetekre.
• a vezérlőegység működtető egysége (OPSU);
• Command számláló (CK).
A P (Receive) és a B (Issuance) rövidítéssel jelölt indexek jelzik a továbbított kód fázisát. Az egyfázisú kód minden bináris számjegyét egy áramkör továbbítja (és csak a megfelelő trigger S bemenetét adja meg). Az előhívó kód minden bináris számjegyét két áramkörön keresztül továbbítják (és a megfelelő trigger S és R bemenetére érkezik), a trigger-vevő nélkül.
A CU struktúrája további csomópontokat is tartalmazhat, különösen egy csomópont a memóriához való közvetlen hozzáférés megszervezéséhez. Ez a csomópont általában önálló eszközként működik # 151; a memória közvetlen elérésének vezérlője (KPDP). A CPRM biztosítja, hogy az operációs készülék kompatibilis az OP és más VM eszközök közötti információcsere folyamatával, ezáltal növelve a gép általános teljesítményét.
Gyakran előfordul, hogy a CU különböző csomópontjainak regiszterei a vezérlőegység vezérlőregisztereinek egy külön csomópontjává alakulnak.
• IPA, merev サ logikai vagy hardveres megvalósítással;
• MPA programozható logikával.
Firmware programozható logikával
Az ötlet alapja az a tény, hogy bármely mikro-művelet megkezdéséhez elégséges a megfelelő vezérlőjel (SS) létrehozása a megfelelő vezérlővonalon, vagyis az ilyen vonal átvitelére az aktív állapotra. Ezt bináris 1-es számjegyekkel lehet megjeleníteni (aktív állapot # 151; SS) és O (passzív állapot # 151; nincs SU). Az adott órában végrehajtott mikro-műveletek jelzésére egy vezérlőszót lehet létrehozni, amelyben minden egyes bit egy vezérlővonalnak felel meg. Az ilyen vezérlő szót microcommand (MK) -nek nevezik. Így a mikro-parancsot egy olyan vezérlőszóval lehet ábrázolni, amelynek nulláinak és zérusainak kombinációja van. A mikrociklusok egy bizonyos fázisát megvalósító mikro-parancsok mikroprogramot alkotnak. Az angol terminológiában a firmware-t gyakran firmware-nek nevezik, hangsúlyozva, hogy ez valami a hardver és a szoftver között. Az egyes VM parancsokhoz és az utasításciklus minden egyes szakaszához tartozó mikroprogramok egy speciális memóriába kerülnek, amely a firmware-memória. A CS létrehozásának folyamata egymás után (minden óraimpulzussal) végrehajthatók úgy, hogy kivonják a firmware mikroinstruációit a memóriából és értelmezik az abban lévő vezérlőjelek információit.
Az ötlet sok VM tervező számára érdekes volt, de nem volt megvalósítható, mivel viszonylag nagy kapacitású gyors memóriát kellett használni. 1964-ben tértek vissza az IBM 360 rendszer létrehozásakor, azóta a programozható logikai vezérlő eszközök rendkívül népszerűvé váltak, és számos VM-be épültek. Ebben a vonatkozásban meg kell említeni az akadémikus VM Glushkov által szabadalmaztatott step-wise microprogramming elvét, amelyet először a kocsiban észleltek itys Promin サ.
A memóriában tárolt mikroprogram ellenőrzése
A programozható logikával rendelkező mikroprogram-gép megkülönböztető jellemzője a mikroprogramok tárolása kódolt formában egy speciális tárolóeszközön # 151; memória firmware. A memóriában lévő minden VM parancs explicit formában mikroprogramnak felel meg, így gyakran a vezérlő eszközöket, amelyek programozható logikával ellátott firmware-t tartalmaznak, mikroprogramnak nevezik.
ahol N MK # 151; a mikrokomponensek teljes száma; NCY # 151; a generált vezérlőjelek teljes száma.
Ez viszont a mikroprogram memória szükséges kapacitása
A mikro-parancs mikro-működési részében (MO) kódoljuk, hogy mely vezérlőjeleket kell generálni az aktuális MC végrehajtása során. A mikroprocesszorok kódolásának módja nagymértékben meghatározza a vezérlőegység hardverének összetettségét és sebességi jellemzőit. Megvalósítási módjaiban használt kódolási mikroutasítás vezérlő jeleket lehet csökkenteni, hogy a három csoport: a minimális kódolási (vízszintes microprogramming), a maximális kódolási (függőleges microprogramming) és futtatni hosszúságú kódoló (vegyes microprogramming). A mikroprogram-automaták szerkezetét a mikro-műveletek kódolásának különféle módjaira a 8. ábrán mutatjuk be. 6.9.
Vízszintes microprogramming (lásd. Ábra. 6,9, a) minden egyes vezérlő jel része a mikroutasítás mikrooperatsionnoy kiosztott egy bit (R mo = N CY). Ez lehetővé teszi számunkra, hogy az SS egy kombinációját egy mikrokomponens keretében hozzuk létre, amely maximális párhuzamot biztosít a mikro-műveletek teljesítésében. Továbbá nincs szükség dekódolására MO és kimenetek mikroutasítások nyilvántartásban közvetlenül kapcsolódik a megfelelő vezérelt pont VM. Elterjedt vízszintes microprogramming mégis megakadályozza a magas költségek tároló mikrooperatsionnyh alkatrészek mikroutasítások (Emo = NMK * NCY) és a felhasználási hatékonyságát PMP lesz alacsony, mivel számos mikro-ops minden MK valósul csak egy vagy néhány közülük, vagyis A MO kategóriák túlnyomó többsége zérót tartalmaz.
A maximális (függőleges) kódolással (lásd a 6.9, b ábrát) minden mikrokezeléshez egy bizonyos kódot, például sorszámát kell megadni a lehetséges mikrooperációk teljes listáján. Ez a kód szerepel a MO-ban. Az MC mikrooperatív részének minimális hossza van, amit a vezérlőjelek számának bináris logaritmusaként határozunk meg (mikrooperációk) a (6.2) képlet segítségével. Az ilyen kódolási eljárás minimális hardver költséget igényel az SMS-ben a mikroinstruációk tárolására, de szükség van egy DshMK dekódolóra, amelyiknek a mikrooperációs kódot megfelelő vezérlőjelnek kell átalakítania. Nagy mennyiségű SS-vel a dekóder jelentős időbeli késleltetést vezet be, és ami a legfontosabb # 151; mindegyik MC-ben csak egy vezérlőjel van jelezve, amely csak egy mikro-műveletet indít, ezáltal megnövelve a firmware hosszát és a megvalósított időt.
Ez utóbbi hátránya megszűnik úgy, hogy a kódolót (W) a DmM kimenetekhez csatlakoztatja (lásd a 6.9, c ábrát), ami az egyidejűleg létrehozott SS-k számának növekedéséhez vezet. Természetesen az egyedi mikro-műveletek kódjain kívül kódokat kell biztosítani, amelyek képviselik a mikro-műveletek egyes kombinációit. A kódoló univerzitásának javítása érdekében ajánlatos egy tárolóeszköz alapján építeni.
A 2. ábrán bemutatott változat. 6.9, c, ésszerű, ha
ahol ND # 151; dekódoló kimenetek száma. Ilyen körülmények között az MK mikro-működtető részei tárolásának hardverköltsége viszonylag kicsi:
Azonban a felhasznált memória teljes kapacitása
amelyből világos, hogy szoros NMK és MD esetén a változat elveszti jelentését.
A minimális és maximális kódolás a CS kódolási problémájának lehetséges megoldásainak két szélső pontja. A közbenső pozíció csoportos vagy vegyes kódolást végez.
Itt minden vezérlőjel (mikro művelet) K csoportra oszlik
A mikro-műveletek bontásának elvétől függően a vízszintes-függőleges és függőleges-vízszintes kódolás megkülönböztethető.
Vízszintes-függőleges módszerrel (lásd a 6.9. Ábrát, d) egymást kölcsönösen össze nem egyeztethető vezérlőjeleket (mikro-műveleteket), azaz azokat az SS-eket, amelyek soha nem találkoznak együtt egy mikrokomponensben, minden csoportban szerepelnek. Ebben az esetben a jelek, amelyek általában ugyanabban az órában készülnek, különböző csoportokban vannak. Minden egyes csoporton belül a vezérlőjelek a maximális (függőleges) és a csoportok kódolásával vannak kódolva # 151; minimális (vízszintes) módon.
Valamennyi Yt csoportot külön mezőt osztanak ki az MK mikrooperációs részében, amelynek teljes szélessége
ahol N van # 151; az 1. mező (csoport) által képviselt CS száma.
A megfontolt kódolási változat mikroprogramjainak teljes memóriakapacitását a következő kifejezés határozza meg:
A függőleges vízszintes módszerrel (lásd a 6.9. Ábrát, d) a vezérlőjelek (mikro-műveletek) egész sorát is több csoportra osztották, de a csoportban a leggyakrabban együtt járó vezérlőjelek (mikro-műveletek) egy csoportba sorolhatók. A MO mező két részre oszlik: M01 és M02. M01 mező. amelynek hossza megegyezik a csoportban lévő vezérlőjelek (mikro-műveletek) maximális számával, vízszintesen van kódolva, és az M02 mező egy adott csoport tagságát jelzi, # 151; függőlegesen. A csoportváltással a vezérlőpontok is megváltoznak, ahol minden egyes MO1 pozíció vezérlőjelét meg kell küldeni. Ezt demultiplexerek (DMP) segítségével érik el, amelyeket a MO mezőtől a csoportszámkód vezérel.
A mikroprocesszorok vízszintes, függőleges és vízszintes függőleges metódusainak segítségével a mikro-parancs minden mezője rögzített funkciókat hordoz, azaz közvetlen kódolást végez. Indirekt kódolással az egyik mező más mezők értelmezésére szolgál. Egy példa a mikro-műveletek közvetett kódolására lehet függőleges-vízszintes kódolás.
Ábra. 6.10. Nano-program vezérlő egység
Hagyja, hogy a rendszer 200 vezérlőjelet generáljon, és a firmware teljes hossza 2048 mikrokomponens. Tegyük fel, hogy csak 256 különböző vezérlőjel kombinációt használnak. Egy vízszintes mikroprogramozással rendelkező hagyományos CU esetén a vezérlő memória kapacitása 2048 x 200, - 409 600 bit. A nanoprogramozáshoz 2048 x 8 = 16 384 bites firmware és 256 x 200 = 51 200 bites nanokommandum memória szükséges. Így a vezérlő memória mindkét típusának teljes kapacitása 67 584 bit.
Más szavakkal, a nano memória kódjelként szolgál a vezérlőjelek számára (lásd a 6.9, c ábrát). A következő kapcsolatok tartják: RM A nanoprogramozás legfőbb hátránya a gyenge sebesség, mivel két mikrokommunikáció végrehajtására van szükség a memóriába való visszahíváshoz, amely azonban részben ellentétes a függőleges mikroprogramozásban rejlő dekódoló áramkör kivételével. A kétszintű memóriát az SMS szükséges kapacitásának csökkentésére használják, használata csak akkor javasolt, ha a mikroprogramokat többször ismételjük meg a mikroprogramban. Amikor egy mikro-parancsot osztanak egy mezőbe, két elv működhet: a CS és az erőforrások funkcionális célja. A funkcionális kódolás feltételezi, hogy mindegyik mező egy függvénynek felel meg a VM-n belül. Például az akkumulátorban található információk különböző forrásokból rögzíthetők, és a mikroinstruktúra forrásának jelzésére egy mezőt rendelhetünk, ahol minden kódkombináció egy adott forráshoz kapcsolódik. Ha az erőforrás-kódolást a VM egy független erőforrás-készletnek (memória, UVV, ALU stb.) Veszi figyelembe, és a mikro-parancs erőforrásainak mindegyikéhez tartozik egy saját mező. A mikroparancsok végrehajtásának konzisztenciája Az 1. ábrán. A 6.11. Ábra bemutatja a mikroinstruációk lehetséges elhelyezését a firmware memóriájában. Az SMS tartalma határozza meg az utasításciklus minden szakaszában végrehajtandó mikro-műveletek sorrendjét, valamint a lépések sorrendjét. Minden egyes lépést a megfelelő firmware képvisel. A mikroprogramokat egy átmeneti mikrokompander végzi, amely meghatározza a későbbi lépéseket. A vezérlőmemóriában egy speciális mikroprogram-kapcsoló is van: az aktuális működési kódtól függően azt jelzi, hogy melyik parancs végrehajtásának fázisa. A legtöbb firmware-ben végrehajtott mikro-parancs végrehajtása egymás után történik, de általában a mikro-műveletek sorrendje nincs rögzítve. Emiatt biztosítani kell egy hatékony rendszert a CU átmeneti megvalósításához. Az átmenetek, mind a feltétel nélküli, mind a feltételes, szerves részét képezik.