JP2543589B2 - Data processing device - Google Patents
Data processing deviceInfo
- Publication number
- JP2543589B2 JP2543589B2 JP1036296A JP3629689A JP2543589B2 JP 2543589 B2 JP2543589 B2 JP 2543589B2 JP 1036296 A JP1036296 A JP 1036296A JP 3629689 A JP3629689 A JP 3629689A JP 2543589 B2 JP2543589 B2 JP 2543589B2
- Authority
- JP
- Japan
- Prior art keywords
- control
- instruction
- microprogram
- register
- write
- 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 - Lifetime
Links
- 101100191136 Arabidopsis thaliana PCMP-A2 gene Proteins 0.000 claims description 5
- 101100048260 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) UBX2 gene Proteins 0.000 claims description 5
- 238000010586 diagram Methods 0.000 description 11
- 101150065817 ROM2 gene Proteins 0.000 description 7
- 101100422768 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) SUL2 gene Proteins 0.000 description 3
- 230000003213 activating effect Effects 0.000 description 3
- 230000004913 activation Effects 0.000 description 3
- 238000001994 activation Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 230000007704 transition Effects 0.000 description 3
- 230000006872 improvement Effects 0.000 description 2
- 238000000034 method Methods 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 230000009467 reduction Effects 0.000 description 2
- 101100269850 Caenorhabditis elegans mask-1 gene Proteins 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
Description
【発明の詳細な説明】 〔概 要〕 マイクロプログラム処理によるデータ処理装置に関
し、 マイクロプログラム処理を軽減して高速化を図ったデ
ータ処理装置を提供することを目的とし、 制御レジスタと、命令をデコードする命令デコーダ
と、該命令デコーダのデコード結果に応じて制御情報を
出力するマイクロプログラム格納手段と、前記命令デコ
ーダのデコード結果の一部である制御情報により前記制
御レジスタの制御モードをデコードする制御回路と、該
制御回路のデコード結果である制御モードに従い且つ前
記マイクロプログラム格納手段からの前記制御レジスタ
への書込み/読出し指示信号に従い前記制御レジスタへ
の所定フィールドに対する書込み/読出しを行う書込み
/読出し回路とを具備するように構成する。The present invention relates to a data processing device by a microprogram process, and a control register and an instruction decoding device for reducing the microprogram process to increase the speed. Instruction decoder, microprogram storing means for outputting control information according to the decoding result of the instruction decoder, and control circuit for decoding the control mode of the control register by the control information which is a part of the decoding result of the instruction decoder And a writing / reading circuit for writing / reading a predetermined field to / from the control register according to a control mode as a decoding result of the control circuit and according to a write / read instruction signal from the microprogram storage means to / from the control register. It is configured to include.
本発明はマイクロプログラム処理によるデータ処理装
置に関する。The present invention relates to a data processing device by microprogram processing.
データ処理装置の高機能化に伴ない、複雑な処理を行
なう命令が増加している。データ処理装置ではその命令
に対応するためマイクロプログラムの増加、複雑化が余
儀なくされてきたがデータ処理を高速で行なうためには
マイクロプログラムの負担を軽減させることが必要であ
る。Along with the sophistication of data processing devices, the number of instructions for performing complicated processing is increasing. In the data processing device, the number of microprograms has been increased and complicated in order to deal with the instruction, but it is necessary to reduce the load on the microprograms in order to perform data processing at high speed.
従来のデータ処理装置は、その一例を第8図に示すよ
うに、命令をデコードする命令デコーダ1、命令デコー
ダ1のデコード結果をアドレスとしてマイクロプログラ
ムを発生するマイクロプログラムROM2、ステータスレジ
スタ3aを含む制御レジスタ3、演算部(ALU)4、複数
のレジスタR0,R1,…よりなる汎用レジスタ5、命令レジ
スタ6等により構成されている。なお、命令レジスタ6
には外部の記憶装置(MSU)からデータから命令が読出
されて格納される。なお、C0〜C4はアドレス信号もしく
は制御信号を示す。As shown in FIG. 8, an example of the conventional data processing device is a control including an instruction decoder 1 for decoding an instruction, a microprogram ROM 2 for generating a microprogram using a decoding result of the instruction decoder 1 as an address, and a status register 3a. The register 3, an arithmetic unit (ALU) 4, a general-purpose register 5 including a plurality of registers R0, R1, ... The instruction register 6
An instruction is read from data from an external storage device (MSU) and stored in the. Note that C 0 to C 4 indicate address signals or control signals.
また、制御レジスタ3のステータスレジスタ3aのフィ
ールド構成は、第9図(A)に示すように、デバックモ
ード、通常モード等を指定する制御モードエリアCM、割
込みマスクエリアMK、ブランチ命令等の状態フラグエリ
アFGより構成されている。このようなステータスレジス
タ3aに対する命令としては、たとえば第9図(B)〜
(G)に示すようなものがある。第9図(B)に示す命
令1としては、ステータスレジスタ3aの内容をスタック
メモリ(図示せず)によりプッシュアップあるいはポッ
プダウンする場合であり、この場合、ステータスレジス
タ3a全体が操作対象となり、何ら問題とならない。第9
図(C)に示す命令2の場合には、フラグエリアFGのみ
の更新、第9図(D)に示す命令3の場合には、制御モ
ードエリアCMのみの更新、第9図(E)に示す割込み処
理命令4の場合には、割込みマスクエリアのみの更新、
第9図(F)に示す命令5の場合には、制御モードエリ
アCM及びフラグエリアFGの更新となり、このような操作
対象がステータスレジスタ3aの部分である場合には、ど
の部分を操作対象とするかをマイクロプログラムで指示
する。また、第9図(G)に示す命令6は一種の命令で
複数の制御レジスタのうちいずれかを操作する場合であ
り、この場合、マイクロプログラムは命令種対応でな
く、各々の制御レジスタの選択ビットを含めた形の命令
に対応する。The field configuration of the status register 3a of the control register 3 is, as shown in FIG. 9A, a control mode area CM for designating a debug mode, a normal mode, an interrupt mask area MK, a status flag for a branch instruction, etc. It is composed of area FG. As an instruction for such a status register 3a, for example, FIG.
There is one as shown in (G). The instruction 1 shown in FIG. 9 (B) is a case where the contents of the status register 3a are pushed up or popped down by a stack memory (not shown). In this case, the entire status register 3a becomes the operation target, and It doesn't matter. Ninth
In the case of the instruction 2 shown in FIG. 7C, only the flag area FG is updated. In the case of the instruction 3 shown in FIG. 9D, only the control mode area CM is updated. In the case of the interrupt processing instruction 4 shown, only the interrupt mask area is updated,
In the case of the instruction 5 shown in FIG. 9 (F), the control mode area CM and the flag area FG are updated. If such an operation target is the part of the status register 3a, which part is the operation target. Instruct by micro program whether to do. Further, the instruction 6 shown in FIG. 9 (G) is a case where one of the plurality of control registers is operated by one kind of instruction, and in this case, the microprogram does not correspond to the instruction type, and the selection of each control register is made. Corresponds to instructions that include bits.
第9図(C)〜(F)に示すようなステータスレジス
タ3aの一部のみの更新の場合には、上述のごとく、どの
部分を操作対象にするかをマイクロプログラムにより指
示しなくてはならず、これはマイクロプログラムが制御
すべきビット数及びステップ数の増加となる。たとえ
ば、第9図(F)に示すように、命令の中にステータス
レジスタの部分が圧縮された形式で含まれていた場合、
ステータスレジスタ3aに合った形式に変換するため、マ
イクロプログラムが複数のサイクルに渡って演算部4の
操作を行わなくてはならない。第10図及び第11図はその
動作を示す。すなわち、ステップ(マシンサイクル)I
にて、命令を命令デコーダ1によりデコードする。ステ
ップIIでは、マイクロプログラムROM2はマイクロプログ
ラムMI1を出力する。また、この間、命令コードは命令
レジスタに表示されている。ステップIIIでは、マイク
ロプログラムMI1が実行され(EX1)、命令デコードを演
算部4に移して転送処理(ムーブ)を行い、命令コード
を汎用レジスタR0に格納する。また、同時にマイクロプ
ログラムROM2はマイクロプログラムMI2を出力する。す
なわち、汎用レジスタR0の内容を演算部4に移してシフ
ト演算が実行され、その結果が汎用レジスタR1に格納さ
れる。In the case of updating only a part of the status register 3a as shown in FIGS. 9C to 9F, as described above, it is necessary to instruct which part is to be operated by the microprogram. This, in turn, increases the number of bits and steps the microprogram has to control. For example, as shown in FIG. 9 (F), when the status register part is included in a compressed form in the instruction,
In order to convert into a format suitable for the status register 3a, the microprogram must operate the arithmetic unit 4 over a plurality of cycles. FIG. 10 and FIG. 11 show the operation. That is, step (machine cycle) I
At, the instruction is decoded by the instruction decoder 1. In step II, the microprogram ROM2 outputs the microprogram MI1. During this time, the instruction code is displayed in the instruction register. In step III, the microprogram MI1 is executed (EX1), the instruction decode is transferred to the arithmetic unit 4, transfer processing (move) is performed, and the instruction code is stored in the general-purpose register R0. At the same time, the microprogram ROM2 outputs the microprogram MI2. That is, the contents of the general-purpose register R0 are transferred to the arithmetic unit 4, the shift operation is executed, and the result is stored in the general-purpose register R1.
また、同時にマイクロプログラムROM2はマイクロプロ
グラムMI3を出力する。ステップVでは、マイクロ操作M
I3が実行される(EX3)、すなわち、演算部4において
汎用レジスタR0の内容と汎用レジスタR1の内容とのオア
論理が実行され、その結果が汎用レジスタR1に格納され
る。また、同時に、マイクロプログラムROM2はマイクロ
プログラムMI4を出力する。ステップVIでは、マイクロ
プログラムMI4が実行され(EX4)、すなわち、演算部4
において、汎用レジスタR1の内容と定数レジスタ(汎用
レジスタの1つ)の内容(マスク1)とのアンド論理を
実行し、その結果を汎用レジスタR1に格納する。また、
同時に、マイクロプログラムROM2はマイクロプログラム
MI5を出力する。ステップVIIでは、マイクロプログラム
MI5が実行され(EX5)、すなわち、演算部4において、
ステータスレジスタ3aの内容と定数レジスタ(汎用レジ
スタの1つ)の内容(マスク2)とのアンド論理を実行
し、その結果を汎用レジスタR0に格納する。また、同時
に、マイクロプログラムROM2はマイクロプログラムMI6
を出力する。ステップVIIIでは、マイクロ操作M16が実
行され(EX6)、すなわち、演算部4において、汎用レ
ジスタR0の内容と汎用レジスタR1の内容とのアンド論理
を実行し、その結果をステータスレジスタ3aに格納す
る。At the same time, the microprogram ROM2 outputs the microprogram MI3. In step V, micro operation M
I3 is executed (EX3), that is, the OR logic of the contents of the general-purpose register R0 and the contents of the general-purpose register R1 is executed in the arithmetic unit 4, and the result is stored in the general-purpose register R1. At the same time, the microprogram ROM2 outputs the microprogram MI4. In step VI, the microprogram MI4 is executed (EX4), that is, the arithmetic unit 4
In, the AND logic of the contents of the general-purpose register R1 and the contents of the constant register (one of the general-purpose registers) (mask 1) is executed, and the result is stored in the general-purpose register R1. Also,
At the same time, microprogram ROM2 is a microprogram
Output MI5. In step VII, the micro program
MI5 is executed (EX5), that is, in the calculation unit 4,
The AND logic of the contents of the status register 3a and the contents of the constant register (one of general-purpose registers) (mask 2) is executed, and the result is stored in the general-purpose register R0. At the same time, the microprogram ROM2 is the microprogram MI6.
Is output. In step VIII, the micro operation M16 is executed (EX6), that is, the arithmetic unit 4 executes the AND logic of the contents of the general-purpose register R0 and the contents of the general-purpose register R1 and stores the result in the status register 3a.
このようにして、第9図(F)に示す命令のステータ
スレジスタ3aに対する動作を終了するが、ステップ数の
増加及び実行サイクル数の増加になり、ひいては、処理
速度の低下になるという課題がある。In this way, the operation of the status register 3a of the instruction shown in FIG. 9 (F) is finished, but the number of steps and the number of execution cycles increase, which in turn causes a problem of a reduction in processing speed. .
また、第9図(G)に示すような、命令6に対して
は、第12図に示すごとく、1つの命令種であっても、制
御レジスタの種類に対応した複数のマイクロプログラム
を用意しておかなければならず、したがって、マイクロ
プログラムのステップ数の増加を招き、やはり、実行サ
イクル数の増加になり、処理速度の低下を招くという課
題がある。For the instruction 6 as shown in FIG. 9 (G), as shown in FIG. 12, a plurality of microprograms corresponding to the control register type are prepared even if the instruction type is one. Therefore, there is a problem that the number of steps of the microprogram is increased, the number of execution cycles is also increased, and the processing speed is decreased.
このように、従来は命令が複雑化すると単にマイクロ
プログラムの機能やステップ数を増加させていた。しか
し機能追加はマイクロプログラムが制御すべきビット数
の増加につながりステップ数の増加とともにハードウェ
ア及びマイクロプログラム開発工数の増加を招き、ま
た、ステップ数はマイクロプログラムの実行サイクルに
対応するため命令に対応した実行サイクル数は増加し処
理の高速化の妨げになる。As described above, conventionally, when the instruction becomes complicated, the function of the microprogram and the number of steps are simply increased. However, the addition of functions leads to an increase in the number of bits to be controlled by the microprogram, which leads to an increase in the number of steps for hardware and microprogram development as well as an increase in the number of steps.The number of steps corresponds to the execution cycle of the microprogram, and therefore corresponds to instructions The number of executed cycles increases, which hinders speeding up of processing.
したがって、本発明の目的は、マイクロプログラム処
理を軽減して高速化を図ったデータ処理装置を提供する
ことにある。Therefore, it is an object of the present invention to provide a data processing device that reduces the microprogram processing to increase the speed.
上述の課題を解決するための手段は、制御レジスタ
と、命令をデコードする命令デコーダと、該命令デコー
ダのデコード結果に応じてマイクロプログラムを出力す
るマイクロプログラム格納手段と、前記命令デコーダの
デコード結果の一部である制御情報により前記制御レジ
スタの制御モードをデコードする制御回路と、該制御回
路のデコード結果である制御モードに従い且つ前記マイ
クロプログラム格納手段からの前記制御レジスタへの書
込み/読出し指示信号に従い前記制御レジスタへの所定
フィールドに対する書込み/読出しを行う書込み/読出
し回路とを具備するデータ処理装置によって達成され
る。Means for solving the above-mentioned problems include a control register, an instruction decoder for decoding an instruction, a microprogram storing means for outputting a microprogram according to the decoding result of the instruction decoder, and a decoding result of the instruction decoder. A control circuit that decodes the control mode of the control register according to a part of the control information, and a control mode that is a decoding result of the control circuit, and a write / read instruction signal from the microprogram storage means to the control register And a writing / reading circuit for writing / reading a predetermined field to / from the control register.
上述の手段によれば、ステータスレジスタを含む制御
レジスタに対するアクセスはハードウエアである制御回
路及び書込み/読出し回路によって行われ、マイクロプ
ログラムは書込み/読出し回路の書込み/読出し動作を
単に決定するだけである。したがって、マイクロプログ
ラムによる処理負担は軽減される。According to the above-mentioned means, access to the control registers including the status register is performed by the control circuit and the write / read circuit which are hardware, and the microprogram merely determines the write / read operation of the write / read circuit. . Therefore, the processing load of the microprogram is reduced.
第1図は本発明に係るデータ処理装置の一実施例を示
す回路図である。第1図においては、第8図の汎用レジ
スタ5を設けておらず、その代りに、命令デコーダ1の
デコード結果の一部である制御情報により制御レジスタ
3を制御する制御回路7及び制御レジスタ3の書込み/
読出しを制御する書込み回路SEL1、及び読出し回路SEL2
を設けてある。この制御回路7はマイクロプログラムRO
M2と並列動作する。なお、汎用レジスタ5は、ステータ
スレジスタ3aを含む制御レジスタ3の書込み/読出し動
作には不要であるが、もちろん、他の動作に必要であ
り、したがって、データ処理装置としては必要である。FIG. 1 is a circuit diagram showing an embodiment of a data processing device according to the present invention. In FIG. 1, the general-purpose register 5 of FIG. 8 is not provided, and instead, the control circuit 7 and the control register 3 for controlling the control register 3 by the control information which is a part of the decoding result of the instruction decoder 1 are used. Writing /
Write circuit SEL1 and read circuit SEL2 that control reading
Is provided. This control circuit 7 is a micro program RO
Operates in parallel with M2. The general-purpose register 5 is not necessary for the writing / reading operation of the control register 3 including the status register 3a, but of course it is necessary for other operations, and is therefore necessary for the data processing device.
第1図の書込み回路SEL1は、後述のごとく、デコーダ
及びスイッチングゲートよりなるものであり、たとえば
第2図に示すように、命令5の制御情報にもとづいて該
デコーダは命令コードの内部書込みバスのビット0〜4
をステータスレジスタ3aのビット0〜4に対応させ、且
つ命令コードの内部書込みバスのビット6,7をステータ
スレジスタ3aのビット14,15に対応させるように、スイ
ッチングゲートを動作させる。第1図の読出し回路SEL2
も同様の構成をなしている。The write circuit SEL1 of FIG. 1 is composed of a decoder and a switching gate, as will be described later. For example, as shown in FIG. 2, the decoder uses the internal write bus of the instruction code based on the control information of the instruction 5. Bits 0-4
The switching gates are operated so as to correspond to the bits 0 to 4 of the status register 3a and the bits 6 and 7 of the internal write bus of the instruction code to the bits 14 and 15 of the status register 3a. Readout circuit SEL2 in FIG.
Has the same configuration.
第1図の装置により第9図の命令を処理すると、マイ
クロプログラムの処理負担は軽減する。たとえば第9図
(B)〜(E)に示す命令1〜4の場合、従来、マイク
ロプログラムより行なっていた操作対象指示を制御回路
7から行う。これにより:マイクロプログラムは制御ビ
ット数が減少し、操作対象を認識する必要がないのでマ
イクロプログラム自体が簡略化する。Processing the instructions of FIG. 9 by the apparatus of FIG. 1 reduces the processing load on the microprogram. For example, in the case of the instructions 1 to 4 shown in FIGS. 9 (B) to 9 (E), the control circuit 7 gives an operation target instruction which is conventionally given by a microprogram. This: The microprogram has a reduced number of control bits and does not need to recognize the operation target, thus simplifying the microprogram itself.
また、第9図(F)に示す命令5ではデータが圧縮さ
れた形式であることを制御回路7が認識し、ステータス
レジスタ3aのビット位置と命令5(データ)のビット位
置の対応に従ってビット位置をずらしステータスレジス
タ3aの内容を操作する。すなわち、その動作を第3図に
示すように、ステップ(マシンサイクル)Iにおいて、
命令5を命令デコーダ1によりデコードする。ステップ
IIでは、マイクロプログラムROM2はマイクロプログラム
MIを出力し、また、同時に、制御回路7はデコード結果
の一部である制御情報をデコードし、さらに、命令5の
コードを内部書込みバスへ取込む。ステップIIIでは、
マイクロプログラムMIを実行し(EX)、すなわち、命令
コード5が演算部5にムーブされる。また、このとき、
制御回路7は書込み回路SEL1を選択動作してステータス
レジスタ3aのビット位置と命令コード5のビット位置と
の対応に従ってビット位置を合わせ、ステータスレジス
タ3aの内容を操作する。なお、読出し動作も同様であ
る。これにより、マイクロプログラムで演算部4を用い
てデータの形式を変換する必要がなくなり、読出し、書
込み指示のみの1ステップ、1実行サイクルの処理とな
り、高速化につながる。Further, in the instruction 5 shown in FIG. 9 (F), the control circuit 7 recognizes that the data is in a compressed format, and the bit position is determined according to the correspondence between the bit position of the status register 3a and the bit position of the instruction 5 (data). Shift the contents of the status register 3a. That is, as shown in FIG. 3, the operation is performed in step (machine cycle) I,
The instruction 5 is decoded by the instruction decoder 1. Step
In II, microprogram ROM2 is microprogram
MI is output, and at the same time, the control circuit 7 decodes the control information which is a part of the decoding result, and further fetches the code of the instruction 5 to the internal write bus. In Step III,
The microprogram MI is executed (EX), that is, the instruction code 5 is moved to the arithmetic unit 5. At this time,
The control circuit 7 operates the write circuit SEL1 to match the bit position according to the correspondence between the bit position of the status register 3a and the bit position of the instruction code 5, and manipulates the contents of the status register 3a. The read operation is also the same. As a result, it is not necessary to convert the data format using the arithmetic unit 4 in the microprogram, and the processing becomes one step with only reading and writing instructions and one execution cycle, which leads to speedup.
さらに、第9図(G)に示す命令6を第1図の装置に
より処理する場合、制御レジスタ3の選択ビットを制御
回路にまかせ命令種のみによってマイクロプログラムを
起動することにより、制御レジスタ3が異なっても共通
のマイクロプログラムMIで制御を行なうことが可能にな
る。Further, when the instruction 6 shown in FIG. 9 (G) is processed by the apparatus shown in FIG. 1, the control register 3 is activated by activating the microprogram only by the instruction type, which leaves the selected bits of the control register 3 to the control circuit. Even if they are different, it is possible to control with a common microprogram MI.
本発明は外部記憶装置(MSU)に対する動作にも拡張
できる。すなわち、メモリーアクセスの制御、オペラン
ドフェッチOF、オペランドライトOWをマイクロプログラ
ムのみの指示により行なうと、 第4図に示すような1種の命令で複数のアクセス可能
なプログラム資源の種類(MSU、汎用レジスタ)の組合
せを持つ場合、上述のごとく、第B図(G)のように1
つの命令6であってもMSU、汎用レジスタのアクセスの
組合せに対応した複数のマイクロプログラムを用意しな
ければならない。また、オペランドのサイズの情報が含
まれていた場合さらに多くの組合せに対応したマイクロ
プログラムを必要とし、マイクロプログラムステップ数
の大幅な増加となる。すなわち、第5図に示すように、
オペランドOFで読込んだデータを処理する場合、オペラ
ンドフェッチOFを起動したマイクロプログラムステップ
IIIではMSUよりデータが入ってきていないので、該デー
タの処理を行えず、データ処理を行なうためのステップ
が別に必要になる。これによりマイクロプログラムステ
ップ数が増加する。The present invention can be extended to the operation of an external storage device (MSU). That is, when memory access control, operand fetch OF, and operand write OW are performed only by instructing the microprogram, a plurality of types of accessible program resources (MSU, general-purpose register) can be executed by one type of instruction as shown in FIG. ), As described above, as shown in FIG.
Even with one instruction 6, it is necessary to prepare a plurality of microprograms corresponding to the combination of MSU and general-purpose register access. In addition, when the information on the size of the operand is included, the microprogram corresponding to more combinations is required, and the number of microprogram steps is significantly increased. That is, as shown in FIG.
When processing the data read by the operand OF, the microprogram step that started the operand fetch OF
In III, since no data comes in from the MSU, the data cannot be processed, and a separate step for data processing is required. This increases the number of microprogram steps.
そこで、本発明によれば、第6図に示すように、オペ
ランドフェッチOF、オペランドライトOWをマイクロプロ
グラムからのみでなく制御回路7からも起動できるよう
にする。これにより、アクセスするプログラム資源の種
類やオペランドのサイズをタグに入力してオペランドフ
ェッチOF、オペランドライトOWの起動を行ない、マイク
ロプログラムを命令種のみによって起動することによ
り、MSU、汎用レジスタのアクセスの組合せが変化して
も共通のマイクロプログラムで制御を行なうことが可能
になる。また、第6図に示すようにオペランドフェッチ
OFを制御回路7からの起動にまかせマイクロプログラム
の起動を遅らせてオペランドフェッチOFとマイクロプロ
グラム読出しサイクルMIが一致するように制御すること
により、データ処理用のステップのみで命令の実行が可
能になる。Therefore, according to the present invention, as shown in FIG. 6, the operand fetch OF and the operand write OW can be activated not only from the microprogram but also from the control circuit 7. As a result, the type of program resource to be accessed and the size of the operand are input to the tag, the operand fetch OF and the operand write OW are activated, and the microprogram is activated only by the instruction type. Even if the combination changes, the control can be performed by a common microprogram. Also, as shown in FIG. 6, operand fetch
By allowing OF to be activated by the control circuit 7 and delaying the activation of the microprogram so that the operand fetch OF and the microprogram read cycle MI match, the instruction can be executed only in the data processing step. .
第7図は本発明に係るデータ処理装置の他の実施例を
示す回路図であって、第1の実施例にさらにMSUを制御
回路(ハードウエア)にてMSUへのフェッチ制御及びラ
イト制御をも可能にしたものである。すなわち、第7図
においては、第1図の制御回路7は3つの制御回路7−
1,7−2,7−3よりなり、制御回路7−1はオペランドフ
ェッチ(OF)の起動もしくは制御回路7−2の起動を行
い、制御回路7−2は制御回路7−3を起動し、制御回
路7−3は、アクセスサイズ(バイトもしくはワード単
位)の指示、オペランドライト(OW)の起動、制御レジ
スタ3のアクセスモード(対象選択)、あるいは制御レ
ジスタ3のアクセスモード(ビットシフト)を行う。こ
れら制御回路7−1,7−2,7−3の動作は命令デコーダ1
のデコード結果の一部である制御情報に依存する。FIG. 7 is a circuit diagram showing another embodiment of the data processing device according to the present invention. In addition to the first embodiment, the MSU control circuit (hardware) further performs fetch control and write control to the MSU. Is also possible. That is, in FIG. 7, the control circuit 7 of FIG.
1, 7-2, 7-3, the control circuit 7-1 activates the operand fetch (OF) or the control circuit 7-2, and the control circuit 7-2 activates the control circuit 7-3. The control circuit 7-3 sets the access size (byte or word unit) instruction, the operand write (OW) activation, the control register 3 access mode (target selection), or the control register 3 access mode (bit shift). To do. The operation of these control circuits 7-1, 7-2, 7-3 is performed by the instruction decoder 1
Depends on the control information that is part of the decoding result of.
上記制御回路7−1,7−2,7−3の動作と並行してマイ
クロプログラムROM2が動作する。マイクロプログラムRO
M2は制御レジスタ3に対しては、書込み/読出し指示の
みを行い、書込みSEL1としての書込みデコーダもしくは
読出し回路SEL2としての読出しデコーダのいずれか一方
のみを動作させる。各書込みデコーダ及び読出しデコー
ダは制御回路7−3の出力に応じたバッファ(スイッチ
ングゲート)を選択動作せしめ、書込み用内部バスもし
くは読出し内部バスに接続せしめる。なお、制御レジス
タ3は、ステータスレジスタ3aとしてのレジスタ3−1,
3−2,3−3及び他のレジスタ3−4より構成されてい
る。The microprogram ROM 2 operates in parallel with the operations of the control circuits 7-1, 7-2, 7-3. Micro program RO
The M2 issues only a write / read instruction to the control register 3, and operates either the write decoder as the write SEL1 or the read decoder as the read circuit SEL2. Each of the write decoder and the read decoder selectively operates a buffer (switching gate) corresponding to the output of the control circuit 7-3 and connects it to the write internal bus or the read internal bus. The control register 3 is a register 3-1 as the status register 3a.
It is composed of 3-2, 3-3 and other registers 3-4.
また、MSUに対するオペランドフェッチ(OF)の起動
は制御回路7−1により行われ、オペランドライト(O
W)の起動は制御回路7−3により行われるが、これら
の起動は命令コードの種類によりマイクロプログラムRO
M2のマイクロプログラムによりも行うこともできる構成
をなしている。The control circuit 7-1 starts the operand fetch (OF) for the MSU, and the operand write (O)
W) is activated by the control circuit 7-3, but these activations depend on the type of instruction code.
It has a configuration that can also be performed by the M2 microprogram.
このように、第7図においては、制御レジスタ3のア
クセスモードは制御回路(ハードウエア)のみによって
指定され読出し/書込みデコーダの出力により上述の命
令1〜6処理に対応した制御レジスタ3(又はその一
部)への読出し/書込みが可能である。また、ステータ
スレジスタ3−1,3−2,3−3の制御モードはセレクタSE
L3,SEL4を設け、命令5のビット位置シフト操作に対応
する。さらに、オペランドフェッチOF、オペランドライ
トOWの制御も制御回路(ハードウエア)から起動できる
ため命令6やオペランドフェッチOFで読込んだデータを
処理するときも、マイクロプログラムに負担がかからな
い。もちろんオペランドフェッチOFを制御回路より起動
させオペランドライトOWをマイクロプログラムより起動
させるという組合せも容易に実現できる。Thus, in FIG. 7, the access mode of the control register 3 is designated only by the control circuit (hardware), and the output of the read / write decoder corresponds to the control register 3 (or the control register 3 corresponding to the above-mentioned instructions 1 to 6 processing). Read / write is possible. In addition, the control mode of the status registers 3-1, 3-2, 3-3 is the selector SE.
L3 and SEL4 are provided to support the bit position shift operation of instruction 5. Further, since the control of the operand fetch OF and the operand write OW can also be activated from the control circuit (hardware), the microprogram is not burdened when processing the data read by the instruction 6 or the operand fetch OF. Of course, a combination of activating the operand fetch OF from the control circuit and activating the operand write OW from the microprogram can be easily realized.
なお、上述の制御回路7(7−1,7−2,7−3)は、論
理ゲートの組合せにより構成される。The control circuit 7 (7-1, 7-2, 7-3) described above is composed of a combination of logic gates.
以上のように本発明によればマイクロプログラムの機
能、ステップ数を軽減することができ、したがってマイ
クロプログラム開発の省力化、データ処理の高速化に大
きな効果がある。なお、一般にマイクロプログラムのハ
ードウエアは、上述のごとく、ROMであり、ROMの大きさ
はマイクロプログラムのステップ数、制御ビット数によ
って決定する。したがって、ROMはLSI上では非常に大き
な面積を必要とするので本発明を用いればROMの面積は
減少し制御回路及び制御レジスタの操作についやしたハ
ードウエア量よりも大きな軽減効果が得られる。さらに
また、ROMの小形化はROMのアクセス時間の改善にもつな
がり、特にマイクロプログラムを中心に制御を行なう装
置では総合的な処理速度の向上につながる。As described above, according to the present invention, it is possible to reduce the function and the number of steps of the microprogram, and therefore, there is a great effect on labor saving of microprogram development and speedup of data processing. The hardware of the microprogram is generally a ROM as described above, and the size of the ROM is determined by the number of steps and the number of control bits of the microprogram. Therefore, since the ROM requires a very large area on the LSI, the area of the ROM is reduced by using the present invention, and a large reduction effect can be obtained compared with the amount of hardware dedicated to the operation of the control circuit and the control register. Furthermore, miniaturization of the ROM leads to improvement of the access time of the ROM, and in particular, it leads to improvement of the overall processing speed in the device which controls mainly the microprogram.
第1図は本発明に係るデータ処理装置の一実施例を示す
回路図、 第2図は第1図におけるステータスレジスタのフィール
ド構成と1つの命令のフィールドの関係を示す図、 第3図は第1図の動作を示すサイクル遷移図、 第4図はアクセス種、サイズ、マイクロプログラムの対
応を示す図、 第5図は従来のMSUに対する動作を示すサイクル遷移
図、 第6図は本発明に係るMSUに対する動作を示すサイクル
遷移図、 第7図は本発明に係るデータ処理装置の他の実施例を示
す回路図、 第8図は従来のデータ処理装置を示す回路図、 第9図はステータスレジスタ及び各種の命令のフィール
ド構成を示す図、 第10図は第8図の動作の一例を示すサイクル遷移図、 第11図は第10図を補足説明する図、 第12図は制御レジスタ選択ビットとマイクロプログラム
との対応を示す図である。 1……命令デコーダ、 2……マイクロプログラムROM、 3……制御レジスタ、 3a(3−1,3−2,3−3)……ステータス レジスタ、 4……演算部(ALU)、 5……汎用レジスタ、 7(7−1,7−2,7−3)……制御回路(ハードウエ
ア)。FIG. 1 is a circuit diagram showing an embodiment of a data processing device according to the present invention, FIG. 2 is a diagram showing the relationship between the field structure of the status register and the field of one instruction in FIG. 1, and FIG. 1 is a cycle transition diagram showing the operation of FIG. 1, FIG. 4 is a diagram showing correspondence of access species, sizes, and microprograms, FIG. 5 is a cycle transition diagram showing operation of a conventional MSU, and FIG. 6 is related to the present invention. FIG. 7 is a circuit diagram showing another embodiment of the data processing device according to the present invention, FIG. 8 is a circuit diagram showing a conventional data processing device, and FIG. 9 is a status register. FIG. 10 is a diagram showing the field configuration of various instructions, FIG. 10 is a cycle transition diagram showing an example of the operation of FIG. 8, FIG. 11 is a supplementary explanation of FIG. 10, and FIG. 12 is a control register selection bit. Micro program It is a figure which shows correspondence with. 1 ... Instruction decoder, 2 ... Micro program ROM, 3 ... Control register, 3a (3-1, 3-2, 3-3) ... Status register, 4 ... Arithmetic unit (ALU), 5 ... General-purpose register, 7 (7-1, 7-2, 7-3) ... Control circuit (hardware).
Claims (2)
を出力するマイクロプログラム格納手段(2)と、 前記命令デコーダ(1)のデコード結果の一部である制
御情報により前記制御レジスタ(3)の制御モードをデ
コードする制御回路(7)と、 該制御回路(7)のデコード結果である制御モードに従
い且つ前記マイクロプログラム格納手段(2)からの前
記制御レジスタ(3)への書込み/読出し指示信号に従
い前記制御レジスタ(3)への所定フェールドに対する
書込み/読出しを行う書込み/読出し回路(SEL1,SEL
2)とを具備することを特徴とするデータ処理装置。1. A control register (3), an instruction decoder (1) for decoding an instruction, a microprogram storage means (2) for outputting control information according to a decoding result of the instruction decoder (1), According to a control circuit (7) for decoding the control mode of the control register (3) according to the control information which is a part of the decoding result of the instruction decoder (1), and the control mode which is the decoding result of the control circuit (7), Write / read circuits (SEL1, SEL) for writing / reading to / from a predetermined fail in the control register (3) in accordance with a write / read instruction signal from the microprogram storage means (2) to the control register (3).
2) A data processing device comprising:
一部として、命令種、プログラム資源種、アクセス種、
あるいはアクセスサイズにより構成し、前記制御回路
(7)は前記制御レジスタ(3)の制御に加えて外部記
憶装置に対する書込み/読出しをも行うようにした請求
項1に記載のデータ処理装置。2. An instruction type, a program resource type, an access type, as a part of the decoding result of the instruction decoder (1),
Alternatively, the data processing device according to claim 1, wherein the data processing device is configured by an access size, and the control circuit (7) also performs writing / reading to / from an external storage device in addition to the control of the control register (3).
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP1036296A JP2543589B2 (en) | 1989-02-17 | 1989-02-17 | Data processing device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP1036296A JP2543589B2 (en) | 1989-02-17 | 1989-02-17 | Data processing device |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH02216530A JPH02216530A (en) | 1990-08-29 |
JP2543589B2 true JP2543589B2 (en) | 1996-10-16 |
Family
ID=12465850
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP1036296A Expired - Lifetime JP2543589B2 (en) | 1989-02-17 | 1989-02-17 | Data processing device |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2543589B2 (en) |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS61235946A (en) * | 1985-04-12 | 1986-10-21 | Hitachi Ltd | data processing equipment |
JPH0827716B2 (en) * | 1985-10-25 | 1996-03-21 | 株式会社日立製作所 | Data processing device and data processing method |
-
1989
- 1989-02-17 JP JP1036296A patent/JP2543589B2/en not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
JPH02216530A (en) | 1990-08-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US4179731A (en) | Microprogrammed control system | |
US4954943A (en) | Data processing system | |
JPH06332792A (en) | Data processor, data reading control circuit thereof and data writing control circuit | |
US5669012A (en) | Data processor and control circuit for inserting/extracting data to/from an optional byte position of a register | |
JPH0769791B2 (en) | Microprocessor | |
US7984277B2 (en) | System and method of instruction modification | |
US20030033503A1 (en) | Single instruction having opcode and stack control field | |
US4661925A (en) | Computer control memory apparatus providing variable microinstruction length | |
US4674063A (en) | Information processing apparatus having a sequence control function | |
EP0388735A2 (en) | Microprogram controller having fixed-instruction generator and microprogram memory | |
JP2538053B2 (en) | Control device | |
EP0325226B1 (en) | Information processing apparatus and method | |
JP2543589B2 (en) | Data processing device | |
JP2000284964A (en) | Efficient sub-instruction emulation in vliw processor | |
JP2520882B2 (en) | Data processing device and data processing method | |
US6564312B1 (en) | Data processor comprising an arithmetic logic unit | |
JP2553200B2 (en) | Information processing device | |
JP3504355B2 (en) | Processor | |
JPS6217773B2 (en) | ||
US5187782A (en) | Data processing system | |
JP2583506B2 (en) | Data processing device | |
JPS6148735B2 (en) | ||
JP2731618B2 (en) | emulator | |
JPH0375904B2 (en) | ||
JPH0520052A (en) | Microgram controller |