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.