193762. lajstromszámú szabadalom • Irányítástechnikai alkalmazásokra orientált 8 és/vagy 16-bites mikroprocesszorokkal felépített multimikroprocesszoros berendezés
193762 20.5 kimeneten két különböző logikai jel lehet, és ez a jel adja meg, hogy az 1 vagy 2 buszon kell a jelet továbbítani, azaz biztosítja az 1 és 2 buszok közötti gyors váltást. A 3. ábrán látható a találmány szerinti 12 memória kezelő egység azon példaként! kiviteli alakja, amely 16 bites mikroproceszszorhoz, például az INTEL 8086 mikroprocesszorhoz alkalmazható. A 16 bites mikroprocesszorok esetében, amelyek 20 bites fizikai memória címet bocsátanak ki, a 11 CPU-hoz csatlakoztatott 12 memória kezelő egység biztosítja a 16 MB címezhető memórián belül tetszőleges címen elhelyezkedő 2z0_',byte-os memóriák elérését. 16 bites mikroprocesszorok esetében nincs szükség az 1/0 címzési rendszer módosítására, így ez a 12 memória kezelő egység az előző ki vite li alaknál valamivel egyszerűbb felépítésű. A 11 CPU MAD4 és MAD1 kimenete második 32 multiplexer B bemenetére, MAD 19 és MAD (19'"~H) kimenete a második 32 multiplexer A bemenetére van csatlakoztatva, míg a USER/SV kimenete a SEL bertuy netre, valamint a második 33 gyors RAM W bemenetére van kötve. A második 32 multiplexer Y kimenete a második 33 gyors RAM A bemenetére és harmadik 28 multiplexer B bemenetére van csatlakoztatva. A második 33 gyors RAM egyik kimenete a 27 kettős multiplexer A bemenetére, másik kimenete a harmadik 28 multiplexer A bemenetére van csatlakoztatva. A 11 CPU-hoz tehát egy második 32 multiplexer, valamint második 33 gyors RAM egy 26 ÉS-kapura, egy harmadik 28 multiplexerre, valamint 27 kettős multiplexerre van csatlakoztatva és a 27 kettős multiplexer kimenete képezi a 12 memória kezelő egység 29 kimenetét, amely 29 kimenet még 30 dekódoló egységre és egy 31 D-flip-flopra is csatlakozik, a 30 dekódoló egység és a 31 D-flip-flop ezen kívül a 11 CPU megfelelő kimeneteivel is össze van kapcsolva. Az ábrán bejelölt példakénti kiviteli alak esetében a 11 CPU egy 8086 mikroprocesszor a 28 és 32 multiplexerek, valamint 27 kettős multiplexer 74 A157 típusú áramkörök, illetőleg a 30 dekódoló egység, valamint a 31 D-flip-flop, valamint a 26 ÉS-kapu tetszőleges logikai áramkörökkel felépíthető. Az ábrán megjelöltük az INTEL 8086 megfelelő kimeneteit is. A 3. ábrán bemutatott kiviteli alak működése a következő: A második 33 gyors RAM kétféleképpen címezhető. A második 33 gyors RAM feltöltése kiviteli utasításokkal történik. Ekkor a második 32 multiplexer a címsín legalacsonyabb helyiértékű bitjét a MADO felett kapuzza és a második 33 gyors RAM címbemenetére juttatja. Az operatív tár címzésekor a 20 bites címsín legnagyobb helyiértékű bitje címezi a második 33 gyors RAM-ot. A felprogramozás után a harmadik 28 multiplexer és a 27 kettős multiplexer, ame7 lyekre a második 33 gyors RAM kimenete van csatlakoztatva, biztosítják, hogy a memória ciklus ideje alatt a 11 CPU által kibocsátott 20-n címbit és a második 33 gyors RAM által szolgáltatott 4+n bit címezze az operatív tárat. 1/0 művelet esetében a 4 legnagyobb helyértéken a „0“ jel jelenik meg, a többi 20 címbitet a 11 CPU állítja elő úgy, hogy szintén „O" jelet küld a négy legmagasabb helyértéken. A 26 ÉS-kapu, amely egyrészt a 11 CPU-hoz, másrészt pedig a második 33 gyors RAM-hoz van csatlakoztatva, biztosítja a tápfeszültség megjelenésekor és a RESET-bemenetre adott jel után a 12 memória kezelő egység ki legyen kapcsolva, azaz a 11 CPU MMUDIS kimenetén „ 1 “ jel legyen, valamint biztosítva van az is, hogy a lokális 2 buszra kapcsolódó DMA vezérlő a második 10 memóriához fordul és a jeláramhoz a lokális 2 busz lesz kiválasztva, mivel ekkor a 26 ÉS-kapu kimenete, amely kiválasztja, hogy a jeláram az 1 vagy 2 buszon áramoljon, logikai 0 lesz. A 30 dekódoló egység 31 D-flip-flop-ot működteti és ILLACC kimenetén jelet ad, az illegális memória vagy 1/0 egység hozzáférések jelzésére. A második 33 gyors RAM-ból a cfmbitek mellett az alábbi vezérlő bitek kerülnek kiolvasásra: — L/MB kimenete — attól függően, hogy 0 vagy 1 kapcsolódik a 12 memória kezelő egység az 1 vagy 2 buszra, — INVAD kimenete, amely a 30 dekódoló egységre van vezetve jelzi a nem létező memória címet. Ennek segítségével programozottan biztosítható, hogy a fizikailag nem kiépített memória területek címzése esetén a 11 CPU nem kezdeményez az 1 buszra hibás ciklust, feleslegesen terhelve azt. Ekkor a 30 dekódoló egység működteti a 31 D-flip-flop-ot, amelynek kimenete van a 12 memória kezelő egység kimenetéhez csatlakoztatva. A második 33 gyors RAM MMWPR (írásvédett memóriacím) kimenetén levő bitjellel programozottan írásvédett második 10 memória alakítható ki az egész berendezésben. Ha ilyen memóriaciklus van, akkor ez a 30 dekódoló egységen keresztül billenti a 31 D -f lip-f lopot. A 4 memória kezelő egység ezen példakénti kiviteli alakjában a második 33 gyors RAM feltöltése, átprogramozása csak a 11 CPU, jelen esetben INTEL 8085 CPU-ig supervisor üzemmódjában lehetséges. Ekkor a 11 CPU USER/SV kimenetén logikai 1 jel van. Felhasználói üzemmódban tehát a 4 memória egységhez, illetve az egész berendezés egyéb, csak felügyelői üzemmódban elérhető pl. 9 1/0 egységeihez való hozzáférési kísérletek így felderítésre kerülnek. Ilyen 1/0 ciklusok esetében a vezérlőjelet a 30 dekódoló egység kapuzza és billenti a 31 D-f lip-f lopot. A 31 D-flip-flop bebillenése nem maszkolható megszakítás kérést okoz. A prog8 5 10 15 20 25 30 35 40 45 50 55 60 65 5