179288. lajstromszámú szabadalom • Nagyssebességű mikroprogramozott processzor elrendezés

9 179288 10 PLR pipeline regiszternek az MS microprogram táro­ló bemenetére visszavezetett bitjei a következő mik­­rociklushoz tartozó mikroprogram tároló címet állítják elő. Ez a szekvencia az utasításhoz tartozó összes mikrociklus lezajlásáig ismétlődik, tehát addig amíg az MV mikroprogramozott vezérlő egység egy új utaíátásbevételezési jelet nem ad. Mikrociklusok: 1. A MUX 1 és MUX multiplexereken keresztül a Pr 2 regiszter tartalma rákerül a RAM ADDR címregiszter bemenetére és a mikrociklus végén abba betöltődik. 2. A RAM memória olvasás engedélyező jelet kap az MV mikroprogramozott vezérlő egységtől, és a kimenetén megjelenő (az előbbi ciklusban a RAM ADDR címregiszterbe töltött címen levő címadat) a MUX 1 és MUX 2 multiplexereken keresztül ismét a RAM ADDR címregiszter bemenetére kerül, ahová a mikrociklus végén ismét beíródik. 3. A RAM memória ismét olvasásengedélyező je­let kap, amelynek hatására a kimenetén megjelenő adat a MUX 1 és MUX 2 multiplexereken és a BUS Dr buszmeghajtó egységen keresztül eljut az Out Rx külső (periféria) regiszter bemenetére. Az utasítás­nak a Pr 1 regiszterben tárolt része a DEMUX 1 demultiplexer szelektáló bemenetén kijelölte a kívánt periféria regiszterhez tartozó kimenetet, és a mikroprocesszornak a DEMUX 1 demultiplexerre adott engedélyező jele hatására a mikrociklus végén az így kiválasztott Out Rx külső regiszterbe a kívánt adat beíródik. A mikroprocesszor — mivel az utasítás végrehaj­tása megtörtént — ebben a mikrociklusban kiad egy új utasításbevételezési jelet, amely a mikrociklus végén az új utasítást bevételezi és a PC programcím számlálót a következő címre lépteti. 4. Vezérlés nincs. Az újonnan bevételezett utasí­tás dekódolása történik a mikroprocesszorban. 5. A soron következő utasítás első mikrociklusa. Látható, hogy minden mikrociklusban a PLR pi­peline regiszter visszacsatolt bitjei meghatározzák az MS mikroprogram tároló következő mikroutasítását. Ebben az utasításkategóriában tekintsünk még át egy relatív indirekt címzésű adatmozgató utasítást, amelynek célja egy In Rx külső regiszterből a RAM memória relatív indirekt címére történő adatbevitel. A címzés relatívságát, azaz a címeltolódás mértékét az erre a célra kijelölt BR 2 regiszterben korábban eltárolt adat határozza meg. Az utasítás formátuma: Op. kód IN Rx INDIR. CÍM Mikrociklusok: 0. Az utasítás bevételezése a Pr 1 és Pr 2 regiszte­rekbe és dekódolása már az előző utasítás végén megtörtént (lásd az előző utasítás végrehajtási cik­lust). 1. A Pr 2 regiszter tartalma a MUX 1 multi­plexeren keresztül az ALU aritmetikai és logikai egység B bemenetére kerül. A BR 2 regiszter kime­nete engedélyeződik, és tartalma az ALU aritmetikai és logikai egység A bemenetére kerül. Az ALU arit­metikai és logikai egység szelektáló bemenetéin az MV mikroprogramozott vezérlő egység összegzési üzemmódot jelöl ki, a kimeneten tehát az A és B bemenetek összege jelenik meg, amely a mikrociklus végén az AKKU R akkumulátor regiszterbe töltődik. 2. Az AKKU R akkumulátor regiszter kimenete engedélyeződik és a mikrociklus végén tartalma a RAM ADDR címregiszterbe került (relatív indirekt dm), 3. A RAM memória olvasásengedélyező jelet kap, és a kimenetén megjelenő címadat a MUX 1 és MUX 2 multiplexereken keresztül a RAM ADDR címregiszterbe töltődik (a mikrociklus végén). 4. Az utasításnak a Pr 1 regiszterben tárolt része a DEMUX 2 demultiplexer szelektáló bemenetéin már az előzőekben kijelölte a kívánt In Rx külső re­giszterhez tartozó vezérlőkimenetet. A vezérlőegység­nek a DEMUX 2 demultiplexerre adott engedélyező jele hatására ez a kimenet aktivizálódik, és az In Rx külső regiszter tartalmát az adatbuszra kapuzza, és a BUS Dr buszmeghajtón keresztül a RAM memória adatbemenetére kerül. A RAM memória beíró jelet kap az MV mikroprogramozott vezérlőegységtől, és a RAM ADDR címregiszterben tárolt címre a kívánt adat beíródik. A ciklus végén az új utasítás a Pr 1 és Pr 2 regiszterekbe töltődik, és a PC programcím számláló értéke megnövekszik. 5. Vezérlés nincs, az új utasítás dekódolása fo­lyik. Tekintsünk át egy kiragadott példát az aritmeti­kai logikai utasításcsoportból. Az utasítás formá­tuma: Op. kód IN Rx ARM DIR. CÍM Az utasítás feladata egy input típusú regiszter, például az IN RX külső regiszter tartalma és a direkt cím által kijelölt memóriarekesz tartalma között az utasítás ARM mezejében definiált aritme­tikai művelet elvégzése és a végeredmény eljuttatása a RAM memóriába, az utasításban meghatározott DIR CIM-re. Mikrociklusok: 0. Megegyezik az előző utasítás nulladik mikro­­dklusával. 1. A Pr 2 regiszter tartalma a MUX 1 és MUX 2 multiplexereken keresztül a RAM ADDR címregisz­terbe töltődik. 2. Az utasításnak a Pr 1 regiszterben tárolt része a DEMUX 2 demultiplexer szelektáló bemenetén kijelölte a kívánt In Rx külső regiszterhez tartozó kimenetet, és a vezérlőegységnek a DEMUX 2 de­multiplexerre adott engedélyező jele hatására ez a kimenet aktivizálódik, és az In Rx külső regiszter tartalmát az adatbuszra, és ezen keresztül az ALU aritmetikai és logikai egység A bemenetére kapuzza. A RAM memória olvasás engedélyező jelet kap, és a kimenetén megjelenő adat a MUX 1 multiplexeren keresztül az ALU aritmetikai és logikai egység B bemenetére kerül. Az utasítás Pr 1 regiszterben tá­rolt APAI része az ALU aritmetikai és logikai egy­5 10 15 20 25 30 35 40 45 50 55 60 65 5

Next

/
Oldalképek
Tartalom