200850. lajstromszámú szabadalom • Kapcsolási elrendezés egyprocesszoros in-circuit emulátorok kialakítására
Hü 200850 B üzemmódban működik. Kimenetei a cím, adat és vezérlőbuszhoz kapcsolódnak. A 2 HOST cím és utasításdekóder bemenetelre a cím, adat és vezérlőbusz, valamint a 6 vezérlő 602 kimenete kapcsolódik, feladata ,hogy a busz információ alapján engedélyezze az aktuálisan kijelölt egység működését. Ennek megfelelően a 2 HOST cím és utasításdekóder egység 201 kimenete a 3 HOST memória engedélyező bemenetére, 202 kimenete a 6 vezérlő bemenetére, 203 kimenete az 5 cím minősítő egység bemenetére, 205 kimenete pedig a 8 nyomkövető tár bemenetére kapcsolódik. A 3 HOST memória feladata az in circuit emulátor HOST működtető programjának és annak változóinak tárolása. A 4 emulációs memória engedélyező bemenetére az 5 cím minősítő egység 501 kimenete kapcsolódik. A 4 emulációs memória feladata a TARGET rendszer memóriájának helyettesítése. Az 5 cím minősítő egység 502 kimenete 9 buszkapcsoló egység bemenetére, 503 kimenete pedig 7 törésponti egység bemenetére kapcsolódik. Az 5 cím minősítő egység feladata, hogy TARGET üzemmódban az aktuális buszciklus információi alapján eldöntse, hogy az adott processzor gépi ciklus emulált, vagy TARGET oldali memóriához fordul-e, és ennek megfelelően tiltani, illetve engedélyezni kell a 4 emulációs memóriát és vezérelni kell a 9 buszkapcsoló egységet. A 7 törésponti egység a bemenetére kapcsolódó busz ciklusait kiértékelve 701 kimenetén jelzi 6 vezérlőnek ha a buszon az aktuálisan beállított töréspontnak megfelelő kombináció van. A 8 nyomkövető tár TARGET üzemmódban mintavételezi a busz jeleit, így egy töréspont után a program töréspont előtti futása megfigyelhető. A 9 buszkapcsoló egység a TARGET rendszer buszát köti össze az emulátor belső buszával a TARGET CPU foglalaton keresztül. Találmányunk lényege tulajdonképpen a 10 utasítás rákényszerítő egység és a 11 utasítás végrehajtás figyelő egység. A 10 utasítás rákényszerítő egység, ha a számára ezt a 6 vezérlő 603 kimenete engedélyezi, egy egybájtos, illetve egy egyszavas szubrutinhívó utasítást kényszerít az adatbuszra, így az 1 CPU ezt a rákényszerített utasítást hajtja végre. így oldható meg univerzálisan, hogy töréspont után a HOST program egy előre meghatározott fix HOST címről induljon. A 11 utasítás végrehajtás figyelő egységre csak akkor van szükség, ha az 1 CPU a sebesség növelése érdekében rendelkezik utasítás FIFO-val, ekkor ez az egység 1101 kimenetén jelzi a 6 vezérlőnek, hogy az előzőekben rákényszerített utasítás átért az utasítás FIFO-n és végrehajtásra kerül. Ennek érzékelése azért fontos, mert előfordulhat olyan eset is, hogy bekövetkezik egy töréspont, és ennek megfelelően meg is történik az utasítás rákényszerítése, de ez nem hajtódik végre, mert egy ugró utasítás végrehajtása kiüríti a FlFO-t. Azaz az utasítás rákényszerítése még nem elegendő a visszakapcsoláshoz, de a 11 utasítás végrehajtás figyelő egység segítségével megoldható a helyes TARGET— HOST átkapcsolás. Az egyprocesszoros emulátor működése a következő: A 6 vezérlő HOST működése alatt a 601 és 602 vezetékek segítségével tiltva van a 5 cím minősítő a 5 7 törésponti és a 10 utasítás rákényszerítő egység kimenete, valamint a 8 nyomkövető tár működése, ugyanakkor engedélyezve van a 2 HOST cím és utasításdekóder egység. így a CPU a 201 engedélyezőjel aktív állapota mellett a 3 HOST memóriából futtatja a kezelővel kommunikáló programot és a 203, illetve 204 kiválasztó jelek segítségével feltöltheti a 5 cím minősítő és a 7 törésponti egységet, illetve kiolvashatja a 8 nyomkövető tár tartalmát, valamint a 202 vezérlő jel segítségével elindíthatja a cikluslopó vagy a TARGET-ba kapcsoló programot. A vezérlő TARGET működése alatt az 5 cím minősítő egység a 7 törésponti egység, valamint a 8 nyomkövető tár aktív állapotba kerül. A 5 cím minősítő egység a 501 és a 502 engedélyező jelek segítségével vagy az 4 emulációs memóriát vagy a 9 buszkapcsoló egységet engedélyezi, így az adat forgalom vagy az 4 emulációs memóriával vagy a tényleges TARGET rendszerrel zajlik. Ugyanakkor a 503 vezetéken jelzi a 7 törésponti egységnek ha hibás busz ciklust észlelt. Ilyen ciklusok vagy más törésponti ok bekövetkezésekor a 7 törésponti egység 701 vezetéken jelzést ad a 6 vezérlőnek. A 6 vezérlő ekkor elindítja a HOST-ba történő visszakapcsolást. Az előző részben ismertetettek szerint a 601 és 602vezetékek segítségével letiltja a 2 HOST cím és utasításdekóder, az 5 cím minősítő, a 7 törésponti egység, a 8 nyomkövető tár működését és ugyanakkor a 603 jellel engedélyezi a 10 utasítás rákényszerítő egység működését. Majd a 11 utasítás végrehajtás figyelő , egység 1101 vezetékén érkező jelzésre visszakapcsol HOST üzemre. SZABADALMI IGÉNYPONTOK 1. Kapcsolási elrendezés egyprocesszoros in-circuit emulátorok kialakítására, amely tartalmaz a rendszer cím, adat és vezérlő buszára kapcsolódó CPU-t (1), HOST cím és utasításdekóder! (2), HOST memóriát (3), emulációs memóriát (4), cím minősítő egységet (5), törésponti egységet (7), nyomkövető tárat (8), buszkapcsoló egységet (9), valamint a rendszer vezérlő buszára kapcsolódó vezérlőt (6), tartalmaz továbbá engedélyező/tíltó vezetékeket (601), (602), (603), amelyek a vezérlő (6) kimenetéről a cím minősítő egység (5), a törésponti egység (7) és a nyomkövető tár (8) bemenetére kapcsolódnak, engedélyező/tíltó vezetékeket (501), (502) és jelző vezetéket (503), amelyek a cím minősítő egység (5) kimenetéről az emulációs memória (4) a buszkapcsoló egység (9) és a törésponti egység (7) bemenetére kapcsolódnak, engedélyező/tíltó vezetékeket (201), (202), (203), (204), (205), amelyek a HOST cím és utasításdekóder (2) kimenetéről a HOST memória (3), a vezérlő (6), a cím minősítő egység (5), a törésponti egység (7), valamint a nyomkövető tár (8) bemenetére kapcsolódnak, (701) jelző vezetéket, amely a (7) törésponti egység kimenetéről a vezérlő (6) egység bemenetére kapcsolódik, (602) engedélyező/tíltó vezetéket, amely a vezérlő (6) kimenetéről a HOST cím és utasítás dekóder (2) bemenetére kapcsolódik azzal jellemezve, hogy a kapcsolási elrendezés tar-6 5 10 15 20 25 30 35 40 45 50 55 60 65