JPS6047611B2 - Microprogram control method - Google Patents
Microprogram control methodInfo
- Publication number
- JPS6047611B2 JPS6047611B2 JP52142399A JP14239977A JPS6047611B2 JP S6047611 B2 JPS6047611 B2 JP S6047611B2 JP 52142399 A JP52142399 A JP 52142399A JP 14239977 A JP14239977 A JP 14239977A JP S6047611 B2 JPS6047611 B2 JP S6047611B2
- Authority
- JP
- Japan
- Prior art keywords
- microprogram
- control
- register
- address
- read
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired
Links
Landscapes
- Debugging And Monitoring (AREA)
Description
【発明の詳細な説明】
この発明はマイクロプログラム制御を行つているデータ
処理装置において、マイクロプログラムをオンラインで
動的にユーザに開放可能とする所謂ダイナミックマイク
ロプログラムの制御方式に関するものである。DETAILED DESCRIPTION OF THE INVENTION The present invention relates to a so-called dynamic microprogram control system that enables microprograms to be dynamically opened to users online in a data processing apparatus that performs microprogram control.
従来、オンラインシステム、特に電子交換の如き、オン
ライン性の極めて高いシステムのデータ処理装置に使用
される制御記憶は、ほとんど読出し専用の制御記憶であ
つた。Conventionally, control memories used in data processing devices for on-line systems, especially highly online systems such as electronic exchanges, have mostly been read-only control memories.
従つて書込み可能な)制御記憶を使つた時に可能となる
(1)ダイナミックマイクロプログラム、(2)パラメ
ータを伴うマイクロプログラムのサブルーチン、(3)
診断の完全マイクロプログラム化、(4)効率のよいフ
ァームウェア化、(5)マイクロプログラムのデバッグ
(誤り除5去)の経済化、等の機能ができなくなる。オ
ンラインシステムで書込み可能な制御記憶を制御記憶と
して用いない主な理由は、上記(1)〜(4)のユーザ
にマイクロプログラムを開放する結果、マイクロプログ
ラムにバグ(誤り)があつた場合、システムダウン、即
ち全体の装置機能が破壊される可能性が高いからである
。読出し専用の制御記憶の場合、マイクロプログラムの
デバッグ(誤り除去)時は、書込み可能な制御記憶及び
それへの格納等を別途用意する必要があつた。(1) dynamic microprograms; (2) subroutines of microprograms with parameters; (3)
Functions such as complete microprogramming of diagnosis, (4) efficient firmware implementation, and (5) economical debugging (error removal) of microprograms become impossible. The main reason why writable control memory is not used as control memory in an online system is that as a result of opening the microprogram to users in (1) to (4) above, if there is a bug (error) in the microprogram, the system This is because there is a high possibility that the device will go down, that is, the entire device function will be destroyed. In the case of a read-only control memory, when debugging a microprogram (error removal), it is necessary to separately prepare a writable control memory and storage therein.
この発明の目的は書込み可能な制御記憶に格納されたマ
イクロプログラムによる制御を監視して異常の場合は強
制的に読出し専用の制御記憶によるマイクロプログラム
制御に戻し、システムダウンを防ぐマイクロプログラム
制御方式を提供することにある。The purpose of this invention is to provide a microprogram control method that monitors control by a microprogram stored in a writable control memory and forcibly returns to microprogram control by a read-only control memory in the event of an abnormality, thereby preventing a system down. It is about providing.
この発明の他の目的は読出し専用の制御記憶のマイクロ
プログラムを書込み可能な制御記憶のマイクロプログラ
ムとの両方により、より信頼性の高い制御を行うことが
できるマイクロプログラム制御方式を提供するにある。Another object of the present invention is to provide a microprogram control system that can perform more reliable control using both a read-only control memory microprogram and a writable control memory microprogram.
この発明の更に他の目的は書込み可能な制御記憶にダイ
ナミックにデータを書込むことにより、パラメータを伴
うサブルーチンや効率のよいファームウェア化を可能と
するマイクロプログラム制御方式を提供することにある
。この発明の更に他の目的は多量の診断プログラム及び
そのデータを主記憶から書込み可能な制御一記憶にオー
バレイ的に書込むことにより、診断をすべてマイクロプ
ログラムで行うことができるマイクロプログラム制御方
式を提供することにある。Still another object of the present invention is to provide a microprogram control system that enables subroutines with parameters and efficient firmware creation by dynamically writing data into a writable control memory. Still another object of the present invention is to provide a microprogram control system that allows diagnosis to be performed entirely by microprograms by overwriting a large amount of diagnostic programs and their data from main memory to writable control memory. It's about doing.
この発明の更に他の目的は書込み可能な制御記!憶にマ
イクロプログラムを内蔵し、且つマイクロプログラムの
アドレスレジスタを強制的に変更することにより他の試
験機を使用せすにマイクロプログラムのデバッグができ
るマイクロプログラム制御方式を提供することにある。Yet another object of this invention is a writable control record! To provide a microprogram control system which has a built-in microprogram and can debug the microprogram without using another tester by forcibly changing the address register of the microprogram.
5マイクロプログラム制御を行つている
データ処理装置においてマイクロプログラムを貯蔵する
読出し専用の制御記憶と、主記憶からのデータを格納す
るバッファレジスタから書込める書込み可能な制御記憶
と、その書込みを制御する制御回路と4を持つことによ
り、主記憶からのデータを書込み可能な制御記憶の任意
のアドレスに自由に書込みが可能とされる。読出し専用
の制御記憶及び書込み可能な制御記憶から読出したマイ
クロプログラムのいずれか一方をマイクロプログラム命
令レジスタに入れる選択回路を持ち、更に読出し専用の
制御記憶から書込み可能な制御記憶、またその逆にマイ
クロプログラムの制御を渡す制御回路により両方の制御
記憶を自由に使いこなすことが可能とされる。この発明
では読出し専用の制御記憶のマイクロプログラムからの
み計数の開始、リセットの指定ができ、書込み可能な制
御記憶によリマイクロプフログラム制御を行つている間
は計数動作を行う計数回路が設けられ、その計数回路が
オーバフローすると書込み可能な制御記憶から読出し専
用の制御記憶の特定番地のマイクロプログラムに制御を
強制的に戻す制御回路と、プログラムに異常を知・らせ
る回路とを持つことにより書込み可能な制御記憶のマイ
クロプログラムが暴走しても、必ず正常に復帰すること
が可能とされる。5. A read-only control memory that stores microprograms in a data processing device that performs microprogram control, a writable control memory that can be written from a buffer register that stores data from the main memory, and a control that controls the writing. By having the circuit 4, it is possible to freely write data from the main memory to any address in the writable control memory. It has a selection circuit that inputs either the microprogram read from the read-only control memory or the writable control memory into the microprogram instruction register, and further inputs the microprogram from the read-only control memory to the writable control memory and vice versa. The control circuit that transfers control of the program allows both control memories to be used freely. In this invention, counting can be started and reset can be specified only from a microprogram in a read-only control memory, and a counting circuit is provided that performs a counting operation while performing remicroprogram control using a writable control memory. Writing is possible by having a control circuit that forcibly returns control from the writable control memory to the microprogram at a specific address in the read-only control memory when the counting circuit overflows, and a circuit that notifies the program of an abnormality. Even if the microprogram in the control memory goes out of control, it will always be possible to return to normal.
更に読出し専用の制御記憶と書込み可能な制御記憶との
両方に共通なマイクロプログラムアドレスレジスタの最
上位ビットを外部から強制的に設定する回路とを持つこ
とにより、マイクロプログラムのデバッグ時はすべて書
込み可能な制御記憶にすべてのマイクロプログラムを移
し、デバッグをするこことが可能とされる。次にこの発
明によるマイクロプログラム制御方式の実施例について
図面を参照して述べる。Furthermore, by having a circuit that externally forcibly sets the most significant bit of the microprogram address register that is common to both read-only control memory and writable control memory, all can be written when debugging the microprogram. It is now possible to move all microprograms to a separate control memory for debugging. Next, an embodiment of the microprogram control system according to the present invention will be described with reference to the drawings.
詳細な説明に入る前に説明の順序を次に示す。(1)こ
の発明の詳細な説明
(2)主記憶装置から書込み可能な制御記憶(以下WC
Mと記す)への書込み制御を行う説明。Before going into detailed explanation, the order of explanation is as follows. (1) Detailed explanation of the invention (2) Control memory writable from the main memory (hereinafter referred to as WC)
Explanation of writing control to (denoted as M).
(3) 読出し専用の制御記憶ROMのマイクロプログ
ラムから書込み可能な制御記憶のマイクロプログラムへ
制御を渡す時の制御の説明。(4) 書込み可能な制御
記憶のマイクロプログラムから読出し専用制御記憶のマ
イクロプログラムへ制御を渡す時の制御の説明。(3) Explanation of control when passing control from a microprogram in a read-only control memory ROM to a microprogram in a writable control memory. (4) Description of control when passing control from a microprogram with writable control memory to a microprogram with read-only control memory.
(5)ROMのマイクロプログラムからWCMのマイク
ロプログラムへ制御を渡した時のWCMのマイクロプロ
グラムの監視機構の説明。(5) Explanation of the WCM microprogram monitoring mechanism when control is passed from the ROM microprogram to the WCM microprogram.
(6)最後にWCMによるROMのマイクロプログラム
のデバッグ方法の説明発明の詳細な説明にあたつて次の
ことを仮定するがこれによつて一般性を失うものでない
。(6) Finally, explanation of a method for debugging a ROM microprogram using a WCM The following will be assumed in the detailed explanation of the invention, but the generality is not lost thereby.
1処理装置は16ビットのワードマシンとする。One processing device is a 16-bit word machine.
2マイクロプログラム幅は32ビットとする。2 The microprogram width is 32 bits.
3R0Mの容量は1KW,WCMの容量も1KWとする
。The capacity of 3R0M is 1KW, and the capacity of WCM is also 1KW.
(1)この発明の全体構成
第1図に示すように主記憶1から読出されたデータは1
6本からなるデータ線1aを通じてバッファレジスタ2
に格納され、読出された命令は16本からなるデータ線
1bを通じて命令レジスタ3に格納される。(1) Overall configuration of this invention As shown in FIG. 1, data read from main memory 1 is 1
The buffer register 2 is connected to the buffer register 2 through the six data lines 1a.
The instructions stored in and read out are stored in the instruction register 3 through 16 data lines 1b.
コンスタントレジスタ4にコンスタントが入つている。
命令レジスタ3及びコンスタントレジスタ4はそれぞれ
1鉢のデータ線3a及び4aを通じてアドレス決定回路
6に接続され、このアドレス決定回路6はROM及びW
CMの両方にて構成された制御記憶7にアドレスをデー
タ線6aを通じて与える。またバッファレジスタ2は書
込みデータを与える16本のデータ線を通じて制御記憶
7に接続されている。アドレス決定回路6はROM,W
CMの切換制御する信号線6bを通じて制御記憶7に接
続されている。制御記憶7から読出されたマイクロプロ
グラム命令は3鉢のデータ線7aを通じてマイクロ制御
回路8へ供給される。Constant register 4 contains a constant.
The instruction register 3 and the constant register 4 are connected to an address determining circuit 6 through one data line 3a and 4a, respectively, and this address determining circuit 6 is connected to the ROM and W.
An address is given to the control memory 7 composed of both CMs through the data line 6a. The buffer register 2 is also connected to the control memory 7 through 16 data lines that provide write data. The address determining circuit 6 is a ROM, W
It is connected to a control memory 7 through a signal line 6b for controlling CM switching. Microprogram instructions read from control memory 7 are supplied to microcontrol circuit 8 through three data lines 7a.
マイクロ制御回路8とアドレス決定回路6は次マイクロ
プログラムアドレス又はWCMの書込アドレスを与える
1鉢のデータ線8aと、その選択信号線8dと、アドレ
ス+1指定信号線8eとにより接続されている。WCM
のマイクロプログラムの動作を監視するための計数回路
を含む監視回路5が設けられ、この監視回路5はWCM
のマイクロプログラム監視用の計数回路の計数開始信号
線8cとリセット信号線8bとによりマイクロ制御回路
8と接続されている。アドレス決定回路6に、そのアド
レスの最上位ビットを決定する信号線9aを通じて外部
操作キー9が接続されている。(2)主記憶からWCM
への書込み制御
第2図に示すようにアドレス決定回路6の内部は制御記
憶アドレスレジスタセレクタ61、アドレスレジスタ6
2、+1回路66、WCMのアドレスレジスタ6牡アド
レスレジスタ64のセレクタ63、+1回路67から構
成されている。The micro control circuit 8 and the address determining circuit 6 are connected by one data line 8a for giving the next micro program address or WCM write address, its selection signal line 8d, and an address+1 designation signal line 8e. WCM
A monitoring circuit 5 including a counting circuit for monitoring the operation of the microprogram of the WCM is provided.
It is connected to the micro control circuit 8 by a counting start signal line 8c and a reset signal line 8b of a counting circuit for microprogram monitoring. An external operation key 9 is connected to the address determination circuit 6 through a signal line 9a that determines the most significant bit of the address. (2) WCM from main memory
As shown in FIG. 2, the address determining circuit 6 includes a control storage address register selector 61 and an address register 6.
2, +1 circuit 66, WCM address register 6, selector 63 of address register 64, and +1 circuit 67.
セレクタ61及びアドレスレジスタ62はアドレス線6
1aにて接続されると共にアドレスレジスタ62の内容
に+1回路66によつて+1されたアドレスが与えられ
るアドレス線66aを通じて接続されている。セレクタ
63とアドレスレジスタ64とはWCMのデータ書込み
用のアドレス線63aを通じ、またアドレスレジスタ6
4の内容に十1回路67で+1されたアドレスが与えら
れるアドレス線67aを通じてそれぞれ接続されている
。制御記憶7の内部はROM72,WCM73,ROM
72及びWCM73の選択回路74から構成されている
。Selector 61 and address register 62 are connected to address line 6
1a and is connected through an address line 66a to which the contents of the address register 62 are given an address incremented by +1 by a +1 circuit 66. The selector 63 and the address register 64 are connected to each other through an address line 63a for writing data in the WCM.
They are connected through address lines 67a to which an address incremented by 1 by an 11 circuit 67 is given to the contents of 4. The inside of the control memory 7 is ROM72, WCM73, ROM
72 and a selection circuit 74 of WCM 73.
アドレスレジスタ62とROM72とはCMアドレス線
6aで接続され、ROM72と選択回路74とはROM
のマイクロプログラムデータ線72aで接続されている
。アドレスレジスタ64とWCM73とはWCMのデー
タ書込み用のアドレス線64aて接続されている。マイ
クロ制御回路8の内部はマイクロプログラム命令レジス
タ81で構成され、これとアドレスレジスタ61との間
は+1指定線8dで接続され、アドレスレジスタ63と
の間はWCM書込みアドレス線8a及び+1指定線81
aをそれぞれ通じて接続されている。The address register 62 and the ROM 72 are connected by the CM address line 6a, and the ROM 72 and the selection circuit 74 are connected to the ROM
are connected by a microprogram data line 72a. The address register 64 and the WCM 73 are connected through an address line 64a for writing data to the WCM. The inside of the micro control circuit 8 is composed of a micro program instruction register 81, which is connected to the address register 61 by a +1 designation line 8d, and connected to the address register 63 by a WCM write address line 8a and a +1 designation line 81.
a, respectively.
更にマイクロプログラム命令レジスタ81及びWCM7
3間はWCM書込み指定線82bて接続されている。通
常、主記憶1からWCM73にデータを吉込む場合には
、第3図に示す如き、WCM書込み指定を行う命令コー
ドf1及びデータを書込むべきWCMのアドレスD2か
らなる命令が命令レジスタ3に入り、その命令コードf
1の4ビットがデコードされ、12ビットになつてアド
レス線3aを通してアドレスレジスタ62に入つてくる
。Furthermore, the microprogram instruction register 81 and WCM7
3 are connected by a WCM write designation line 82b. Normally, when data is written from the main memory 1 to the WCM 73, an instruction consisting of an instruction code f1 for specifying WCM writing and an address D2 of the WCM to which data is to be written is entered into the instruction register 3, as shown in FIG. , its instruction code f
The 4 bits of 1 are decoded, become 12 bits, and enter the address register 62 through the address line 3a.
この時アノドレスレジスタ62の最上位ビットは当然0
でROM72の方が選択される。ROM72の指定され
たアドレスのマイクロプログラムが選択回路74を通じ
てマイクロプログラム命令レジスタ81に読出される。
先ず最初にRO(図には出ていなフい)で示されるWC
M73に書込むべき主記憶1のアドレスがすでにバッフ
ァレジスタ2に読出されていたとする。その動作の後の
マイクロプログラムはマイクロ命令レジスタ81の30
ビット目に1が立つていて、+1指定線8dにより、次
のROMアドレスは現マイクロプログラムのアドレスに
+1されたものがセレクト61で選択されてアドレスレ
ジスタ62に入る。又12ビット目にも1が立つていて
命令レジスタ3の下位置2ビットD2が+1指定線81
aによりセレクタ63で選択されてアドレスレジスタ6
4に格納される。更にこの時すでに読出された主記憶1
の内容をバッファレジスタ2からWCM73に書込むた
めにマイクロ命令レジスタ81の第13ビット目に1が
立ち、吉込み指定線82bによりWCM73に書込み指
定が行われる。レジスタ81のこれら第12、第13.
第30ビットがすべて揃うことにより主記憶1から読出
されたデータ16ビットがWCM73の指定されたアド
レス部分の32ビットの左半語に書込まれる。同様にし
て、続いて主記憶1の内容をバッファレジスタ2に読出
しWCM73の32ビットの右半語に書込まれる。At this time, the most significant bit of the anode address register 62 is naturally 0.
ROM72 is selected. The microprogram at the designated address in the ROM 72 is read out to the microprogram instruction register 81 through the selection circuit 74.
First of all, the WC indicated by RO (not shown in the figure)
Assume that the address of main memory 1 to be written to M73 has already been read to buffer register 2. The microprogram after that operation is stored at 30 in the microinstruction register 81.
The bit is set to 1, and the next ROM address is the address of the current microprogram plus 1, which is selected by the selector 61 and entered into the address register 62 by the +1 designation line 8d. Also, 1 is set in the 12th bit, and the lower 2 bits D2 of the instruction register 3 are +1 designation line 81.
a is selected by the selector 63 and the address register 6
It is stored in 4. Furthermore, main memory 1 that has already been read at this time
In order to write the contents from the buffer register 2 to the WCM 73, 1 is set to the 13th bit of the microinstruction register 81, and writing is designated to the WCM 73 by the transfer designation line 82b. These 12th, 13th .
When all the 30th bits are complete, the 16 bits of data read from the main memory 1 are written into the left half word of the 32 bits of the designated address portion of the WCM 73. Similarly, the contents of the main memory 1 are then read out to the buffer register 2 and written into the 32-bit right half word of the WCM 73.
この時のレジスタ81内のマイクロプログラム命令の第
12ビット目に1を立てて命令レジスタ3のWCMアド
レス山を選択する。即ち前のWCMアドレスと同じもの
を選択する。この左半語、右半語に書く制御は従来の方
法で可能である。次にWCM73に書込む語数R1から
1を引く演算を行い、その後に次のWCM73のアドレ
スに主記憶1から読出したデータをバッファレジスタ2
からWCM73の左半語に書込む。この時のマイクロプ
ログラムの指定は12ビット目は0,13ビット目は1
に設定しておくと、WCM73のアドレスを+1したも
のがセレクタ63によりアドレスレジスタ64に入り、
バッファレジスタ2の内容をWCM73に書込む。13
ビット目がOの時はWCM73へ書込みはできない。以
下同様にしてROMのマイクロプログラムの制御により
主記憶1の内容が次々にWCM73に書込まれていく。
(3)ROMの制御からWCMの制御へのジャンプRO
M72のマイクロプログラムからWCM73のマイクロ
プログラムへ制御を渡す時の制御の構成を第4図に示す
。At this time, the 12th bit of the microprogram instruction in the register 81 is set to 1 to select the WCM address mountain in the instruction register 3. That is, select the same WCM address as the previous one. This control of writing in the left half word and the right half word is possible using the conventional method. Next, subtract 1 from the number of words R1 to be written to the WCM73, and then transfer the data read from the main memory 1 to the next WCM73 address in the buffer register 2.
Write to the left half word of WCM73. The microprogram specification at this time is 0 for the 12th bit and 1 for the 13th bit.
When set to , the address of WCM73 plus 1 is entered into address register 64 by selector 63,
Write the contents of buffer register 2 to WCM73. 13
When the bit is O, writing to the WCM73 is not possible. Thereafter, the contents of the main memory 1 are sequentially written into the WCM 73 under the control of the ROM microprogram in the same manner.
(3) Jump RO from ROM control to WCM control
FIG. 4 shows the control configuration when passing control from the M72 microprogram to the WCM73 microprogram.
第4図において第2図に示したものに対し新たに追加し
たものとしてアドレス決二定回路6ではセレクタ61に
接続されるコンスタントレジスタ4からの12ビットの
ROMアドレス線4aである。制御記憶7にNAND回
路71、マイクロ制御回路8に論理積回路82,83が
、また監視回路5がそれぞれ追加されている。監視回4
路5は保持型のフリップフロップ51、論理積52、計
数回路53、論理積54、保持型のフリップフロップ5
5で構成されている。保持型のフリップフロップ51の
入力は線8bのセット入力と線8cのリセット入力とで
ある。論理積52の入力は保持型のフリップフロップ5
1の出力51aとクロック信号51bとであり、計数回
路53の入力は線8cのリセット入力と論理積52の出
力である。論理積54の入力は計数回路53のすべての
出力53a〜53bである。保持型フリップフロップ5
5の入力条件は論理積54の出力信号54aのセット入
力とマイクロプログラム命令によるリセット指示55a
のリセット入力である。つ アドレスレジスタ62の出
力中のROM及びWCMの切換信号6bはNAND回路
71で反転されて信号線71aによりROM72を選択
する。更にNAND回路71の出力信号線71bはマイ
クロ命令レジスタ81の28ビット目の計数回路のリ7
セット指定線81aと論理積回路82で論理積を取られ
て保持型フリップフロップ51及び計数回路53をリセ
ットする信号線8cの信号を作る。またNAND回路7
1の出力信号線71cはマイクロ命令レジスタ81の2
9ビット目の計数開始指定信号線81bと論理積回路8
3で論理積を取られ、保持型フリップフロップ51をセ
ットする。アドレスレジスタ62の出力中のROM及び
WCMの切換信号6bはそのまま信号線62dを通じて
WCM73を選択し、さらに信号線62eを通して選択
回路74でWCM73からのマイクロプログラムを選択
する。ROM72からWCM73へ制御を渡す時には第
5図に示すように制御記憶の山番地へジャンプ指定する
命令コードF,2.及びROM又はWCMのアドレス山
よりなる命令が命令レジスタ3に設定され、先に述べた
(2)の時と同様にF2に対してROMの該当する番地
が選ばれる。In FIG. 4, a 12-bit ROM address line 4a from the constant register 4 connected to the selector 61 in the address determination circuit 6 is newly added to the one shown in FIG. A NAND circuit 71 is added to the control memory 7, AND circuits 82 and 83 are added to the microcontrol circuit 8, and a monitoring circuit 5 is added. Monitoring time 4
The path 5 includes a holding type flip-flop 51, an AND 52, a counting circuit 53, an AND 54, and a holding type flip-flop 5.
It consists of 5. The inputs of the holding type flip-flop 51 are a set input on line 8b and a reset input on line 8c. The input of the AND 52 is a holding type flip-flop 5.
1 and the clock signal 51b, and the inputs of the counting circuit 53 are the reset input of the line 8c and the output of the AND 52. The inputs of the AND 54 are all the outputs 53a to 53b of the counting circuit 53. Holding type flip-flop 5
The input conditions of 5 are the set input of the output signal 54a of the AND 54 and the reset instruction 55a by the microprogram instruction.
This is the reset input. The ROM and WCM switching signal 6b being output from the address register 62 is inverted by the NAND circuit 71, and the ROM 72 is selected by the signal line 71a. Furthermore, the output signal line 71b of the NAND circuit 71 is connected to the counter circuit register 71 at the 28th bit of the microinstruction register 81.
The set designation line 81a is ANDed by the AND circuit 82 to generate a signal on the signal line 8c that resets the holding flip-flop 51 and the counting circuit 53. Also, NAND circuit 7
1 output signal line 71c is the 2nd output signal line 71c of the microinstruction register 81.
9th bit count start designation signal line 81b and AND circuit 8
3, and the holding type flip-flop 51 is set. The ROM and WCM switching signal 6b being output from the address register 62 directly selects the WCM 73 through the signal line 62d, and further causes the selection circuit 74 to select the microprogram from the WCM 73 through the signal line 62e. When passing control from the ROM 72 to the WCM 73, as shown in FIG. 5, an instruction code F, 2. An instruction consisting of a stack of addresses in the ROM or WCM is set in the instruction register 3, and the corresponding address in the ROM is selected for F2 in the same manner as in (2) described above.
最初のマイクロ命令では命令レジスタ3のD2部をアド
レス決定回路6に設定するように制御する。The first microinstruction controls the D2 part of the instruction register 3 to be set in the address determination circuit 6.
この時、ROMからWCMへのジャンプであるからD2
の最上位ビットは1とされてあるからアドレス決定回路
6の最上位の出力信号線6bは1となり、信号線71a
はOとなり、ROM72は選択されず、逆に信号線62
dが1になり、WCM73が選択され、更に信号線62
eが1になりWCM73から読出されたマイクロプログ
ラムがデータ線73aを通して選択回路74で選択され
、マイクロ命令レジスタ81に入つてくる。即ち、マイ
クロ命令レジスタ81にはWCM73からのマイクロプ
ログラムが入り制御がROM72のマイクロプログラム
からWCM73のマイクロプログラムに制御が移つたこ
ととなる。(4)WCMからROMへのジャンプWCM
73側である機能を実行して、第5図で示した命令レジ
スタ3内の命令の次の命令に戻りたい時は、ROM72
に用意してある命令フエッチルーチンに戻る必要がある
。At this time, since it is a jump from ROM to WCM, D2
Since the most significant bit of is set to 1, the most significant output signal line 6b of the address determining circuit 6 becomes 1, and the signal line 71a
becomes O, ROM 72 is not selected, and conversely, the signal line 62
d becomes 1, WCM73 is selected, and signal line 62
When e becomes 1, the microprogram read from the WCM 73 is selected by the selection circuit 74 through the data line 73a and enters the microinstruction register 81. That is, the microprogram from the WCM 73 is entered into the microinstruction register 81, and control is transferred from the microprogram in the ROM 72 to the microprogram in the WCM 73. (4) Jump WCM from WCM to ROM
When you want to execute a certain function on the ROM 73 side and return to the instruction next to the instruction in the instruction register 3 shown in FIG.
It is necessary to return to the instruction fetch routine prepared in .
この命令フエツチルーチンはROM72の固定番地にあ
る。WCM73の最後のマイクロプログラムで次のマイ
クロプ1口グラムアドレスを設定し、当然アドレス線8
aの12ビットの最上位ビットはOとされてある。マイ
クロ命令レジスタ81の31ビット目に1を立てると、
アドレス線8aのCMアドレスが、信号線8eによつて
セレクタ61で選択されてアドレスレジスタ62に入る
。するとアドレスレジスタ62の最上位ビットはOであ
るから、信号線6bは0となり、WCM選択信号線62
d及びWCM73のマイクロプログラムを選択する信号
線62eもOとなり、WCM73側のマイクロプログラ
ムは読出されない。一方NAND回路71により信号線
71aは1になりROM72が選択され、ROM72の
マイクロプログラムがマイクロ命令レジスタ81に設定
される。これによりWCM73のマイクロプログラムか
らROM72のマイクロプログラム、この場合、命令フ
エツチルーチンに制御が移つたことになる。(5)WC
Mのマイクロプログラムの監視WCM73のマイクロプ
ログラムが暴走しないように監視するために、この発明
では次のような機能を設ける。This instruction fetch routine is located in ROM 72 at a fixed address. The last microprogram of WCM73 sets the next microprogram address, and of course the address line 8
The most significant bit of the 12 bits of a is set to O. When we set 1 to the 31st bit of the microinstruction register 81,
The CM address on the address line 8a is selected by the selector 61 via the signal line 8e and entered into the address register 62. Then, since the most significant bit of the address register 62 is O, the signal line 6b becomes 0, and the WCM selection signal line 62
d and the signal line 62e for selecting the microprogram of the WCM 73 are also set to O, and the microprogram on the WCM 73 side is not read out. On the other hand, the signal line 71a becomes 1 by the NAND circuit 71, the ROM 72 is selected, and the microprogram in the ROM 72 is set in the microinstruction register 81. This means that control is transferred from the microprogram in the WCM 73 to the microprogram in the ROM 72, in this case the instruction fetch routine. (5) W.C.
Monitoring of the microprogram of M In order to monitor the microprogram of the WCM 73 to prevent it from running out of control, the present invention provides the following functions.
即ち前記(3)で述べたROM72のフ柘グラムからW
CM73のプログラムに制御を移す時、そのジャンプの
ためのマイクロプログラム命令の29ビット目に1を立
てておく。するとこの時当然ROM72側が選択されて
いるので論理積回路83で論理積がとれて信号線8bは
1となり、計数回路53の計数開始指示の保持型フリッ
プフロップ51が1にセットされる。すると論理積回路
52でフリップフロップ51の出力線51aが1になり
、クロック信号線51bは一定時間間隔で出力パルスが
来るので計数回路53は計数を開始する。計数回路53
はある一定値、即ちWCM73側でマイクロプログラム
が充分仕事ができる時間を満す値でオーバフローするよ
うにされる。WCM73側のマイクロプログラムが正常
に動作している時は命令レジスタ3の命令が実行されて
前記(4)の手順によりROM72側の命令フエツチル
ーチンに飛び、ROM72からWCM73に移る命令レ
ジスタ3内の命令の次の命令を命令レジスタ3に持つて
くる制御に移る。この時ROM72から読出され、マイ
クロ命令レジスタ81に格納された命令フエツチルーチ
ンのマイクロプログラム命令の28ビット目に1を立て
ておけば論理積回路82で論理積が取れ、(この時RO
M72側が選ばれているので信号線71bは1になつて
いる。)リセット信号線8cは1になり保持フリップフ
ロップ51及び計数回路53は全部リセットされる。保
持型フリップフロップ51がリセットされると論理積回
路52で論理積が取れないので計数回路53は全く計数
しない。従つて計数回路53は次にWCM73のマイク
ロプログラムに制御が移るまでは動作しない。ところが
WCM73側のマイクロプログラムにバグがあつた時は
(4)の手順を実行するマイクロプログラムに制御が渡
らないので計数回路53は計数を続け、遂にオーバフロ
ーを起す。That is, from the program of ROM 72 mentioned in (3) above, W
When transferring control to the CM73 program, set 1 to the 29th bit of the microprogram instruction for the jump. Then, since the ROM 72 side is naturally selected at this time, the AND circuit 83 calculates the logical product, the signal line 8b becomes 1, and the holding type flip-flop 51 of the counting circuit 53 for instructing the start of counting is set to 1. Then, the output line 51a of the flip-flop 51 becomes 1 in the AND circuit 52, and the clock signal line 51b receives output pulses at regular time intervals, so the counting circuit 53 starts counting. Counting circuit 53
is set to overflow at a certain constant value, that is, a value that satisfies the time during which the microprogram can perform sufficient work on the WCM 73 side. When the microprogram on the WCM73 side is operating normally, the instruction in the instruction register 3 is executed, the instruction jumps to the instruction fetch routine on the ROM72 side according to the procedure (4) above, and the contents in the instruction register 3 are transferred from the ROM72 to the WCM73. Control then shifts to bringing the next instruction into the instruction register 3. At this time, if the 28th bit of the microprogram instruction of the instruction fetch routine read from the ROM 72 and stored in the microinstruction register 81 is set to 1, the AND circuit 82 performs the AND operation (at this time, the RO
Since the M72 side is selected, the signal line 71b is set to 1. ) The reset signal line 8c becomes 1, and the holding flip-flop 51 and counting circuit 53 are all reset. When the holding type flip-flop 51 is reset, the AND circuit 52 cannot perform the AND operation, so the counting circuit 53 does not count at all. Therefore, the counting circuit 53 does not operate until control is next transferred to the microprogram of the WCM 73. However, when a bug occurs in the microprogram on the WCM 73 side, control is not transferred to the microprogram that executes step (4), so the counting circuit 53 continues counting and eventually overflows.
オーバフローになると保持型フリップフロップ55を1
にセットすると同時に信号線54aの1によりコンス.
タントレジスタ4の内容をアドレスレジスタ62に入れ
る。コンスタントレジスタ4の内容は常に次命令フエツ
チルーチンのマイクロプログラムのアドレスを固定的に
設定しておくこととする。従つてWCM73側のマイク
ロプログラムが暴走すると計数回路53がオーバフロー
することを利用して復帰制御手段により強制的にROM
72側の命令フエツチルーチンに制御を戻すことになる
。又保持型フリップフロップ55の状態は命令で読める
ので、ROM72からWCM73へ制御御を移5す命令
の次の命令で必ずこの保持型フリップフロップ55の状
態を読み、もしこのフリップフロップ55が1だつたら
WCM73のマイクロプログラムにバグがあることがわ
かる。尚このフリップフロップ55は命令によりリセッ
トできる。O 又、今までの説明で明らかなように計数
回路53を起動したり、計数回路53をリセットするの
はROM72側のマイクロプログラムによりのみ可能な
のでWCM73側のマイクロプログラムが暴走して計数
回路53をリセットしてROM72側の正常なルートに
戻れないことはない。以上の手順により、この発明では
WCM73側のマイクロプログラムの動作の監視を時間
的な制約にて可能としている。(6)WCM73による
ROM72のマイクロプログラムのデバッグ方法ROM
72側用にアドレスをふられたマイクロプログラムをW
CM73側でデバッグする方法を第6図に示す。When overflow occurs, the holding type flip-flop 55 is set to 1.
At the same time, the cons.
The contents of tanto register 4 are placed in address register 62. The contents of the constant register 4 are always set to the address of the next instruction fetch routine microprogram. Therefore, when the microprogram on the WCM73 side goes out of control, the counter circuit 53 overflows, and the recovery control means forcibly writes the ROM.
Control is then returned to the instruction fetch routine on the 72 side. Also, since the state of the holding type flip-flop 55 can be read by a command, the state of this holding type flip-flop 55 must be read in the next instruction after the instruction to transfer control from the ROM 72 to the WCM 73, and if this flip-flop 55 is 1 It turns out that there is a bug in the microprogram of Tsutara WCM73. Note that this flip-flop 55 can be reset by a command. O Also, as is clear from the explanation so far, starting the counting circuit 53 or resetting the counting circuit 53 can only be done by the microprogram on the ROM 72 side, so the microprogram on the WCM 73 side may run out of control and cause the counting circuit 53 to be reset. It is not impossible to reset and return to the normal route on the ROM72 side. According to the above procedure, the present invention makes it possible to monitor the operation of the microprogram on the WCM 73 side under time constraints. (6) How to debug ROM72 microprogram using WCM73ROM
W the microprogram with the address for the 72 side.
FIG. 6 shows a method of debugging on the CM73 side.
第6図で新たに追加になつたものはアドレス決定回路6
で論理和回路65である。この発明ではアドレスレジス
タ62の特定ビットを外部から制御する手段が設けられ
る。論理和回路65では外部の操作部のキー9よりの信
号線9aI:ニ.CMアドレスの第11ビット目を示す
信号線61bを論理和してアドレスレジスタ62に信号
線65aを通して設定している。第1図及び第6図から
も明らかなように外部操作キー9を0FF(0状態)に
しておくと、信号線9aはOとなり、論理和回路65に
よりCMアドレス11ビット目はそのままアドレスレジ
スタ62に設定される。What is newly added in Figure 6 is the address determination circuit 6.
is the OR circuit 65. In the present invention, means for externally controlling specific bits of the address register 62 is provided. In the OR circuit 65, the signal line 9aI: d. The signal line 61b indicating the 11th bit of the CM address is ORed and set in the address register 62 through the signal line 65a. As is clear from FIGS. 1 and 6, when the external operation key 9 is set to 0FF (0 state), the signal line 9a becomes O, and the 11th bit of the CM address is transferred directly to the address register 62 by the OR circuit 65. is set to
ところが外部操作キー9を0N(1状態)にすると信号
線9aは1となり論理和回路65によりCMアドレス1
1ビット目は常に1になつてアドレスレジスタ62に設
定される。即ち、ROM72側用にアドレスをふられた
マイクロプログラムをWCM73側でデバッグしたい時
は外部操作キー9を0Nにしておくと、アドレスレジス
タ62の第11ビット目は常に1になり信号線6bは1
となり、WCM73側が選択され、予めROM側用のマ
イクロプログラムと全く同一!のものをWCM73側に
入れておけば、WCM73側のマイクロフ狛グラムが実
行され、WCM73側で、その実行が正しく行われるよ
うにマイクロプログラムを直しながらマイクロプログラ
ムのデバッグが実行できる。以上の手順によりROM7
2側用にアドレスをふられたマイクロプログラムをWC
M73側に入れてデバッグ可能となる。この発明は以上
説明したように書込み可能な制御記憶WCM73のマイ
クロプログラムの動作を監視する監視機構を設けること
により、そのマイクロプログラムが暴走しても、ROM
の次の命令を捕えられるプログラムに必ず移るため、オ
ンライン性のきびしいシステムでもWCM内にオンラ)
インにデータを書込んでサブルーチンのパラメータ指定
、効率のよいファームウェア化、診断プログラムを主記
憶からWCMに書込むことによる診断の完全なマイクロ
プログラム化を可能とし、さらに必要に応じて制御記憶
アドレスレジスタの最上位ビットを外部から操作できる
ようにすることにより、ROMのマイクロプログラムの
経済化、効率化が期待できる。However, when the external operation key 9 is set to 0N (1 state), the signal line 9a becomes 1, and the CM address 1 is set by the OR circuit 65.
The first bit always becomes 1 and is set in the address register 62. That is, when you want to debug a microprogram addressed for the ROM 72 side on the WCM 73 side, if you set the external operation key 9 to 0N, the 11th bit of the address register 62 will always be 1, and the signal line 6b will be 1.
Therefore, the WCM73 side is selected, and it is exactly the same as the microprogram for the ROM side! If you put this into the WCM73 side, the microprogram on the WCM73 side will be executed, and you can debug the microprogram on the WCM73 side while correcting the microprogram so that it is executed correctly. By the above procedure, ROM7
WC the microprogram addressed for the 2nd side.
It becomes possible to debug by inserting it into the M73 side. As explained above, this invention provides a monitoring mechanism for monitoring the operation of the microprogram in the writable control memory WCM73, so that even if the microprogram goes out of control, the ROM
Because the program always moves to a program that can capture the next instruction, even in systems with strict online requirements, there is no online command in WCM).
It is possible to specify subroutine parameters by writing data to the input, efficiently create firmware, and write the diagnostic program from main memory to the WCM to enable complete microprogramming of diagnosis.Additionally, if necessary, control memory address register By making the most significant bit of the ROM externally operable, economical and efficient ROM microprograms can be expected.
第1図はこの発明によるマイクロプログラム制御方式の
一例を示す全体の構成図、第2図は主記憶の内容をWC
Mに書込んだ制御方式を示す構成図、第3図は主記憶の
内容をWCMに書込めという命令の命令フォーマットを
示す図、第4図はWCMのマイクロプログラムの監視機
能の構成図、第5図はROM及びWCM間のジャンプを
行う命令の命令フォーマットを示す図、第6図はWCM
によるROMのマイクロプログラムのデバッグ方法を示
す構成図てある。
1:主記憶、2:バツフアレジスタ、3:命令レジスタ
、4:コンスタントレジスタ、5:監視回路、6:アド
レス決定回路、7:制御記憶、8:マイクロ制御回路、
53:計数回路、72:ROMl73:WCM、74:
選択回路、81:マイクロプログラム命令レジスタ。FIG. 1 is an overall configuration diagram showing an example of the microprogram control method according to the present invention, and FIG. 2 shows the contents of the main memory in the WC.
Figure 3 is a diagram showing the command format of the command to write the contents of main memory to WCM. Figure 4 is a diagram showing the configuration of the WCM microprogram monitoring function. Figure 5 is a diagram showing the instruction format of an instruction to jump between ROM and WCM, and Figure 6 is a diagram showing the instruction format for jumping between ROM and WCM.
1 is a block diagram showing a method for debugging a ROM microprogram using the ROM microprogram. 1: Main memory, 2: Buffer register, 3: Instruction register, 4: Constant register, 5: Monitoring circuit, 6: Address determination circuit, 7: Control memory, 8: Micro control circuit,
53: Counting circuit, 72: ROM173: WCM, 74:
Selection circuit, 81: Microprogram instruction register.
Claims (1)
おいて、マイクロプログラムを貯蔵する読出し専用の制
御記憶と、主記憶装置からのデータを格納するバッファ
レジスと、このバッファレジスタからのデータが書込ま
れる書込み可能な制御記憶と、マイクロプログラム命令
レジスタと、前記読出し専用の制御記憶及び書込み可能
な制御記憶の少なくとも一方に対しアドレス設定を行な
うアドレスレジスタと、前記アドレスレジスタの特定ビ
ットにより制御され、前記読出し専用の制御記憶から読
出したマイクロプログラムもしくは前記書込み可能な制
御記憶から読出したマイクロプログラムを前記マイクロ
プログラム命令レジスタに入れる選択回路と、前記マイ
クロプログラム命令レジスタの特定ビットに接続され、
前記書込み可能な制御記憶に対して前記バッファレジス
タからの書込みを行なう書込み制御手段と、前記アドレ
スレジスタの特定ビットに接続され、前記読出し専用の
制御記憶から前記書込み可能な制御記憶に、又逆に前記
書込み可能な制御記憶から前記読出し専用の制御記憶に
マイクロプログラムの制御を渡す制御手段と、前記マイ
クロ命令レジスタの特定ビットに接続され、前記読出し
専用の制御記憶のマイクロプログラムからのみにより計
数の開始及びリセットが可能であり、前記書込み可能な
制御記憶のマイクロプログラムが動作している時に計数
動作をする計数回路と、その計数回路がオーバフローす
ると前記書込み可能な制御記憶から前記読出し専用の制
御記憶の特定番地のマイクロプログラムに制御を戻す復
帰制御手段と、前記計数回路のオーバフローにより制御
され、オーバフロー状態を保持し、この保持状態をマイ
クロプログラムで読み取り且つリセットすることができ
る保持フリップフロップと、前記アドレスレジスタの特
定ビットを外部から制御する手段とを有することを特徴
とするマイクロプログラム制御方式。1. In a data processing device that performs microprogram control, there is a read-only control memory that stores the microprogram, a buffer register that stores data from the main memory, and a writable control that stores data from the buffer register. a memory; a microprogram instruction register; an address register for setting an address for at least one of the read-only control memory and the writable control memory; and the read-only control memory controlled by a specific bit of the address register. a selection circuit for inputting a microprogram read from the microprogram or the writable control memory into the microprogram instruction register; and a selection circuit connected to a specific bit of the microprogram instruction register;
write control means for writing from the buffer register to the writable control memory; and a write control means connected to a specific bit of the address register to write from the read-only control memory to the writable control memory and vice versa. a control means for passing control of a microprogram from said writable control memory to said read-only control memory; and a control means connected to a specific bit of said microinstruction register to initiate counting only from the microprogram of said read-only control memory. and a counting circuit that can be reset and performs a counting operation when the microprogram in the writable control memory is operating, and when the counting circuit overflows, the control memory is transferred from the writable control memory to the read-only control memory. a return control means that returns control to the microprogram at a specific address; a holding flip-flop that is controlled by an overflow of the counting circuit to hold an overflow state and can read and reset this held state by the microprogram; and the address; 1. A microprogram control system comprising means for externally controlling specific bits of a register.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP52142399A JPS6047611B2 (en) | 1977-11-28 | 1977-11-28 | Microprogram control method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP52142399A JPS6047611B2 (en) | 1977-11-28 | 1977-11-28 | Microprogram control method |
Publications (2)
Publication Number | Publication Date |
---|---|
JPS5474644A JPS5474644A (en) | 1979-06-14 |
JPS6047611B2 true JPS6047611B2 (en) | 1985-10-22 |
Family
ID=15314440
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP52142399A Expired JPS6047611B2 (en) | 1977-11-28 | 1977-11-28 | Microprogram control method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPS6047611B2 (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH03508A (en) * | 1989-05-29 | 1991-01-07 | Mazda Motor Corp | Suspension device for vehicle |
JPH03501112A (en) * | 1988-07-11 | 1991-03-14 | エスエム サバーロ モッタス エンジニアリング エス.エー. | Wheels for vehicles and vehicles equipped with such wheels |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS56159736A (en) * | 1980-05-12 | 1981-12-09 | Seiko Epson Corp | Microprogram control circuit |
JPH07287656A (en) * | 1994-04-20 | 1995-10-31 | Kofu Nippon Denki Kk | Microprogram controller |
-
1977
- 1977-11-28 JP JP52142399A patent/JPS6047611B2/en not_active Expired
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH03501112A (en) * | 1988-07-11 | 1991-03-14 | エスエム サバーロ モッタス エンジニアリング エス.エー. | Wheels for vehicles and vehicles equipped with such wheels |
JPH03508A (en) * | 1989-05-29 | 1991-01-07 | Mazda Motor Corp | Suspension device for vehicle |
Also Published As
Publication number | Publication date |
---|---|
JPS5474644A (en) | 1979-06-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US4179737A (en) | Means and methods for providing greater speed and flexibility of microinstruction sequencing | |
US4155120A (en) | Apparatus and method for controlling microinstruction sequencing by selectively inhibiting microinstruction execution | |
KR960010919B1 (en) | Data processor | |
JPS5911943B2 (en) | Trap mechanism for data processing equipment | |
US5042002A (en) | Programmable controller with a directed sequencer | |
US5129079A (en) | Computer system having subinstruction surveillance capability | |
JPS6047611B2 (en) | Microprogram control method | |
JPH0776932B2 (en) | Data transmission method | |
GB2079502A (en) | Digital computers | |
JPH10214203A (en) | Information processor | |
US5872961A (en) | Microcomputer allowing external monitoring of internal resources | |
JP2001256044A (en) | Data processor | |
SU875385A1 (en) | Microprogramme processor | |
JP2903695B2 (en) | Watchdog timer control circuit | |
KR960010921B1 (en) | Data processor | |
JPS6113612B2 (en) | ||
JPS5822765B2 (en) | Program loading method in electronic computer system | |
JPH0219937A (en) | Electronic computer system | |
Thomas Jr | Programming the MBD model II | |
JPS6238746B2 (en) | ||
JPS6230453B2 (en) | ||
JP3182287B2 (en) | Microprocessor | |
JPS58121459A (en) | Service processor of electronic computer | |
JPH0239812B2 (en) | ||
JPH01274252A (en) | Activity history memory |