JPH0585048B2 - - Google Patents

Info

Publication number
JPH0585048B2
JPH0585048B2 JP62262886A JP26288687A JPH0585048B2 JP H0585048 B2 JPH0585048 B2 JP H0585048B2 JP 62262886 A JP62262886 A JP 62262886A JP 26288687 A JP26288687 A JP 26288687A JP H0585048 B2 JPH0585048 B2 JP H0585048B2
Authority
JP
Japan
Prior art keywords
branch
address
microprogram
field
memory
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
Application number
JP62262886A
Other languages
Japanese (ja)
Other versions
JPH01106140A (en
Inventor
Masanori Sugita
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP62262886A priority Critical patent/JPH01106140A/en
Publication of JPH01106140A publication Critical patent/JPH01106140A/en
Publication of JPH0585048B2 publication Critical patent/JPH0585048B2/ja
Granted legal-status Critical Current

Links

Classifications

    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02EREDUCTION OF GREENHOUSE GAS [GHG] EMISSIONS, RELATED TO ENERGY GENERATION, TRANSMISSION OR DISTRIBUTION
    • Y02E60/00Enabling technologies; Technologies with a potential or indirect contribution to GHG emissions mitigation
    • Y02E60/30Hydrogen technology
    • Y02E60/50Fuel cells

Description

【発明の詳細な説明】 〔産業上の利用分野〕 この発明は、マイクロプログラム制御方式採用
制御装置において、マイクロ命令により指示され
たマイクロプログラム上のアドレスへジヤンプあ
るいはブランチする際のマイクロプログラム分岐
制御方式に関するものである。
[Detailed Description of the Invention] [Field of Industrial Application] This invention relates to a microprogram branch control method when jumping or branching to an address on a microprogram specified by a microinstruction in a control device employing a microprogram control method. It is related to.

〔従来の技術〕[Conventional technology]

従来のこの種のマイクロプログラム分岐制御方
式としては、一般に水平マイクロプログラムによ
る分岐方式と、垂直型マイクロプログラムによる
分岐方式とが知られている。
As conventional microprogram branch control systems of this type, there are generally known branching systems using horizontal microprograms and branching systems using vertical microprograms.

前者の水平型分岐方式は、演算やシフト機能等
と分岐機能が一つのマイクロ命令で記述できるの
で、実効速度が速いという利点がある反面、一つ
のマイクロ命令のビツト巾が長くなり、マイクロ
プログラムメモリの容量が大きくなるという欠点
がある。
The former horizontal branching method has the advantage of high effective speed because calculations, shift functions, etc. and branching functions can be written in one microinstruction, but on the other hand, the bit width of one microinstruction is long, and the microprogram memory is The disadvantage is that the capacity becomes large.

又、後者の垂直型分岐方式は、演算やシフト機
能用または分岐機能用に各々別の型のマイクロ命
令を作り、1命令で記述できる機能を制限するこ
とにより、メモリの使用効率が上がり、マイクロ
プログラムメモリ容量を節約できるという利点が
ある反面、演算やシフト機能と分岐機能が一つの
マイクロ命令で記述できないので、実効速度が遅
いという欠点がある。
In addition, the latter vertical branching method creates separate types of microinstructions for calculations, shift functions, and branching functions, and by limiting the functions that can be described with one instruction, memory usage efficiency is improved and microinstructions are Although it has the advantage of saving program memory capacity, it has the disadvantage of slow effective speed because calculations, shift functions, and branch functions cannot be written in one microinstruction.

これらの利点を生かし、欠点を補う方式とし
て、各種の改良方式が提案されている。第3図は
例えば特開昭58−201147号公報に示された従来の
マイクロプログラム分岐制御方式の説明図であ
る。図において、1はマイクロプログラムを格納
して置く高速読み出し可能なマイクロプログラム
格納メモリ、2は高速読み出し可能な分岐情報格
納メモリである。
Various improved methods have been proposed to take advantage of these advantages and compensate for their drawbacks. FIG. 3 is an explanatory diagram of a conventional microprogram branch control system disclosed in, for example, Japanese Patent Laid-Open No. 58-201147. In the figure, 1 is a high-speed readable microprogram storage memory in which a microprogram is stored, and 2 is a high-speed readable branch information storage memory.

又、図中のMは演算種類やシフト操作、対象と
なるレジスタ番号等を指定する情報用のフイール
ド、BSELはこのマイクロ命令の分岐制御機能を
有効とするか無効とするかを示す1ビツト幅の分
岐指持フイールド、BNOは分岐制御の種類を指
示する分岐番号フイールドである。
In addition, M in the figure is an information field that specifies the type of operation, shift operation, target register number, etc., and BSEL is a 1-bit width that indicates whether the branch control function of this microinstruction is enabled or disabled. The branch instruction field BNO is a branch number field that indicates the type of branch control.

次に動作について説明する。分岐制御が不必要
なマイクロ命令では、BSELフイールドを「無
効」と記述しておく。このような命令実行時は、
次のマイクロプログラムアドレスは自動的に+1
される。
Next, the operation will be explained. For microinstructions that do not require branch control, write the BSEL field as "invalid". When executing such an instruction,
The next microprogram address is automatically +1
be done.

分岐制御が必要なマイクロ命令では、BSELフ
イールドを「有効」と記述しておくとともに、分
岐形状の種類BOPや分岐条件BCCおよび分岐先
アドレスBADを分岐情報格納メモリ2に格納し
ておき、さらに、この格納アドレスをマイクロプ
ログラム格納メモリ1のBONフイールドに記述
する。
For microinstructions that require branch control, the BSEL field is written as "enabled," and the branch shape type BOP, branch condition BCC, and branch destination address BAD are stored in the branch information storage memory 2. This storage address is written in the BON field of the microprogram storage memory 1.

マイクロ命令実行時、BSELフイールドが「有
効」な時には、この分岐情報格納メモリ2の内容
に基づき、H/W(ハードウエア)で分岐条件の
成立、不成立が判断され、条件成立時には、
BADフイールドに記述されたマイクロプログラ
ムアドレスが次命令のアドレスとなる。
When the microinstruction is executed, when the BSEL field is "valid", the H/W (hardware) determines whether the branch condition is met or not based on the contents of the branch information storage memory 2, and when the condition is met,
The microprogram address written in the BAD field becomes the address of the next instruction.

従つて、この方式によれば、マイクロ命令内の
分岐情報に関するフイールドの代わりに、分岐情
報の種類に対応した論理番号(分岐情報格納メモ
リ2のアドレス)と、分岐指持フイールド(7ビ
ツト)のみを格納すればよい。
Therefore, according to this method, instead of a field related to branch information in a microinstruction, only a logical number (address of branch information storage memory 2) corresponding to the type of branch information and a branch indication field (7 bits) are used. All you have to do is store it.

分岐情報の種類がn個あるとすると、分岐機能
記述フイールドの巾はn1+1ビツト(n=2n1
で済み、マイクロプログラム格納メモリ1のアド
レス空間を2lとした場合、一般にn1+1≪lとな
つて、マイクロプログラム格納メモリ1の容量を
縮小することができる。
Assuming that there are n types of branch information, the width of the branch function description field is n1+1 bits (n=2 n1 ).
If the address space of the microprogram storage memory 1 is 2l , generally n1+1≪l, and the capacity of the microprogram storage memory 1 can be reduced.

〔発明が解決しようとする問題点〕[Problem that the invention seeks to solve]

従来のマイクロプログラム分岐制御方式は以上
のように構成されているので、マイクロプログラ
ム内で使用している分岐形式の種類や、分岐条件
や、分岐先アドレスのすべての組合わせを分岐情
報格納メモリ2に記述する必要があり、マイクロ
プログラム格納メモリ1の容量が減つても、分岐
情報格納メモリ2の容量が増してしまうという問
題点があつた。
Since the conventional microprogram branch control system is configured as described above, all combinations of branch formats, branch conditions, and branch destination addresses used in the microprogram are stored in the branch information storage memory 2. Therefore, even if the capacity of the microprogram storage memory 1 decreases, the capacity of the branch information storage memory 2 increases.

さらに、全部の分岐命令と分岐情報格納アドレ
スとの対応の管理が煩雑となつてしまうなどの問
題点があつた。
Furthermore, there is a problem that managing the correspondence between all branch instructions and branch information storage addresses becomes complicated.

この発明は上記のような問題点を解消するため
になされたもので、水平型分岐方式の利点を損う
ことなく、さらにメモリの使用効率を高めること
ができるマイクロプログラム分岐制御方式を得る
ことを目的とする。
This invention was made to solve the above-mentioned problems, and aims to provide a microprogram branch control method that can further improve memory usage efficiency without sacrificing the advantages of the horizontal branch method. purpose.

〔問題点を解決するための手段〕[Means for solving problems]

この発明に係るマイクロプログラム分岐制御方
式は、マイクロ命令列を格納するマイクロプログ
ラム格納メモリと、分岐先の絶対アドレスを記憶
する分岐アドレスメモリと、相対アドレスと現実
行アドレスから分岐先アドレスを計算する加減算
器と、分岐アドレスメモリの出力値と加算減器の
出力値のいずれかを分岐制御を行うための分岐先
アドレスとして選択する分岐アドレス選択回路と
を設けたものである。
The microprogram branch control method according to the present invention includes a microprogram storage memory that stores a sequence of microinstructions, a branch address memory that stores an absolute address of a branch destination, and an addition/subtraction operation that calculates a branch destination address from a relative address and an actual row address. and a branch address selection circuit that selects either the output value of the branch address memory or the output value of the adder/subtractor as a branch destination address for performing branch control.

〔作用〕[Effect]

この発明におけるマイクロプログラム格納メモ
リに格納するマイクロ命令列に含まれる分岐番号
フイールドに示された相対アドレスと現実行アド
レスとから加減算器で分岐先アドレスを計算し、
分岐アドレス選択回路でこの加減算器で計算され
た分岐先アドレスと分岐アドレスメモリの出力値
とを選択し、その選択した値を分岐先アドレスと
して分岐制御を行うように作用する。
In the present invention, an adder/subtractor calculates a branch destination address from a relative address indicated in a branch number field included in a microinstruction string stored in a microprogram storage memory and an actual row address;
The branch address selection circuit selects the branch destination address calculated by the adder/subtractor and the output value of the branch address memory, and operates to perform branch control using the selected value as the branch destination address.

〔実施例〕〔Example〕

以下、この発明の一実施例を図について説明す
る。第1図において、1マイクロプログラムを格
納する高速読み出し可能なマイクロプログラム格
納メモリである。
An embodiment of the present invention will be described below with reference to the drawings. In FIG. 1, it is a microprogram storage memory that stores one microprogram and can be read at high speed.

このマイクロプログラム格納メモリ1に格納す
るマイクロ命令列の構造例は第2図に示されてい
る。この第2図において、Mは演算種類やシフト
操作、対象となるレジスタ番号等を指定するフイ
ールド、BOPは分岐形式の種類を指定する分岐
形式種類設定フイールドであり、分岐不必要な場
合はその旨を示すコードを記述する。
An example of the structure of a microinstruction string stored in the microprogram storage memory 1 is shown in FIG. In this figure 2, M is a field that specifies the operation type, shift operation, target register number, etc., and BOP is a branch format type setting field that specifies the type of branch format, and if branching is not necessary, indicate so. Write the code that shows.

又、BCCは分岐条件指定フイールド、BTYP
は分岐型フイールドで、マイクロ令で行なう分岐
が近距離分岐か、遠距離分岐かを指示する1ビツ
トのフイールドであり、例えば、近距離分岐のと
き「0」、遠距離分岐のとき「1」とすれば、
「0」、が指定された場合には、次の分岐番号フイ
ールドBN0は分岐先の相対アドレス(正又は負)
と解釈され、「1」が指定された場合には、分岐
先の絶対アドレスを格納した後述する分岐アドレ
スメモリのアドレスと解釈される。
Also, BCC is the branch condition specification field, BTYP
is a branch type field, and is a 1-bit field that indicates whether the branch performed by the micro instruction is a short-distance branch or a long-distance branch. For example, it is "0" for a short-distance branch, and "1" for a long-distance branch. given that,
If "0" is specified, the next branch number field BN0 is the relative address (positive or negative) of the branch destination.
If "1" is specified, it is interpreted as the address of a branch address memory, which will be described later, that stores the absolute address of the branch destination.

ここでいう上記近距離分岐とは、一般に多用さ
れる比較的近いアドレスへの分岐をいうものであ
り、又、遠距離分岐とは、発生頻度の少ない離れ
たアドレスへの分岐をいうものである。
The above-mentioned short-distance branch here refers to a branch to a relatively close address that is commonly used, and long-distance branch refers to a branch to a distant address that occurs less frequently. .

再び説明を第1図に戻す。第1図において、2
Aは上述の分岐アドレスメモリで、分岐先の絶対
アドレスを格納しておく高速読み出し可能なもの
である。
The explanation returns to FIG. 1 again. In Figure 1, 2
A is the branch address memory mentioned above, which stores the absolute address of the branch destination and can be read out at high speed.

又、3はマイクロプログラム格納メモリ1の出
力がセツトされて、そのマイクロ命令により指定
された制御信号を出力するパイプラインレジス
タ、4は上記BN0フイールドで指定された分岐
先相対アドレスと現在の実行アドレスから絶対ア
ドレスを算出するための加減算器である。
Further, 3 is a pipeline register to which the output of microprogram storage memory 1 is set and outputs the control signal specified by the microinstruction, and 4 is the branch destination relative address specified by the above BN0 field and the current execution address. This is an adder/subtractor for calculating an absolute address from .

5は上記BTYPフイールドの指定により、分
岐アドレスメモリ2Aの出力と加減算器4の出力
のどちらかを選択する分岐アドレス選択回路であ
り、6は実行すべきマイクロ命令のアドレスを示
すプログラムカウンタである。
5 is a branch address selection circuit that selects either the output of the branch address memory 2A or the output of the adder/subtractor 4 according to the specification of the BTYP field, and 6 is a program counter that indicates the address of the microinstruction to be executed.

7はデコーダで、上記パイプラインレジスタ3
から出力される制御信号をデコードするものであ
り、8は比較器で、デーダ7の出力と分岐条件選
択回路9の出力とを比較し、分岐条件成立、不成
分の判定を行うものである。
7 is a decoder, which is the pipeline register 3 above.
A comparator 8 compares the output of the data 7 with the output of the branch condition selection circuit 9 to determine whether the branch condition is met or not.

この分岐条件選択回路9は制御装置の実行状態
を示す信号C1〜Cnが入力されるようになつてい
る。
This branch condition selection circuit 9 is configured to receive signals C 1 -Cn indicating the execution state of the control device.

次に動作について説明する。この発明では、上
記近距離分岐では、相対アドレスを指定すること
により、分岐制御を行ない、遠距離分岐では分岐
アドレスメモリを参照して分岐制御を行うもので
ある。
Next, the operation will be explained. In this invention, in the short-distance branch, branch control is performed by specifying a relative address, and in the long-distance branch, branch control is performed by referring to a branch address memory.

ただし、ここでいう近距離、遠距離とはこの発
明を適用するシステムにより異なり、各システム
で最も効率よい近距離分岐の範囲を決定し、その
範囲外を遠距離とするものである。
However, the term "short distance" or "long distance" as used herein differs depending on the system to which this invention is applied, and the most efficient short distance branching range is determined for each system, and the area outside that range is defined as long distance.

今、第2図のBN0フイールドのビツト巾をW
とすれば、分岐アドレスメモリ2Aには、2w種類
の分岐先絶対アドレスが記述でき、又、分岐命令
から±2w-1のアドレス範囲への分岐が近距離分
岐、それ以外の分岐が遠距離分岐となる。
Now, set the bit width of the BN0 field in Figure 2 to W.
Then, 2 w types of branch destination absolute addresses can be written in the branch address memory 2A, and a branch to an address range of ±2 w-1 from a branch instruction is a short distance branch, and other branches are long distance branches. It becomes a distance branch.

例えば、マイクロプログラム格納メモリ1のア
ドレスa1にBTYPフイールドが「0」であり、
BN0フイールドがrであるような近距離分岐命
令m1が格納されている場合、このマイクロ命令
の実行は次のようにして行われる。
For example, if the BTYP field is "0" at address a1 of microprogram storage memory 1,
When a short-distance branch instruction m1 in which the BN0 field is r is stored, this microinstruction is executed as follows.

すなわち、プログラムカウンタ6にアドレスa
1がセツトされると、マイクロプログラム格納メ
モリ1のマイクロ命令m1がパイプライン3に取
り出され、その内容に応じた制御信号が各部に出
力されるとともに、プログラムカウンタ6は+1
カウントアツプされる。
In other words, address a is written to program counter 6.
When set to 1, the microinstruction m1 in the microprogram storage memory 1 is taken out to the pipeline 3, a control signal according to its contents is output to each part, and the program counter 6 is set to +1.
It is counted up.

この場合、マイクロ命令m1のBN0フイール
ドの内容はrであるから、加減算器4では、(a1
−1)+r−1の演算が行われ、結果として、a1
+rのアドレスが加減算器4の出力端に現われ
る。
In this case, since the content of the BN0 field of the microinstruction m1 is r, the adder/subtractor 4 writes (a1
−1)+r−1 operation is performed, and as a result, a1
The address +r appears at the output of the adder/subtractor 4.

又、マイクロ命令m1のBTYPフイールドの
値は「0」であるので、分岐アドレス選択回路5
は加減算器4の出力を選択する。
Also, since the value of the BTYP field of microinstruction m1 is "0", branch address selection circuit 5
selects the output of adder/subtractor 4.

一方、分岐条件選択回路9には、例えば、演算
結果のキヤリ等の制御装置の実行状態を示す信号
C1〜Cnが入力されており、この信号の中から分
岐条件指定フイールドBCCの内容で指定される
所定の状態信号が選択され、比較器8に出力され
る。
On the other hand, the branch condition selection circuit 9 is provided with a signal indicating the execution state of the control device, such as carrying a calculation result.
C 1 to Cn are input, and a predetermined state signal designated by the contents of the branch condition designation field BCC is selected from among these signals and output to the comparator 8 .

又、分岐形式種類指示フイールドBOPの内容
がデコーダ7でデコードされ、その信号と先の分
岐条件選択回路9の出力とにより、比較器8で比
較して、分岐条件成立、不成分の判定が行われ
る。
Further, the content of the branch format type indication field BOP is decoded by the decoder 7, and the signal is compared with the output of the previous branch condition selection circuit 9 by the comparator 8 to determine whether the branch condition is satisfied or not. be exposed.

この比較器8は分岐条件が成立した時、例えば
「1」をプログラムカウンタ6のロード信号とし
て出力し、分岐アドレス選択回路5の出力、すな
わち、a1+rの値がプログラムカウンタ6にロ
ードされる。従つて、マイクロプログラム格納メ
モリ1のアドレスa1+rに格納されているマイ
クロ命令が次に実行される。
When the branch condition is satisfied, the comparator 8 outputs, for example, "1" as a load signal for the program counter 6, and the output of the branch address selection circuit 5, that is, the value of a1+r, is loaded into the program counter 6. Therefore, the microinstruction stored at address a1+r of microprogram storage memory 1 is executed next.

一方、比較器8が分岐条件不成立と判定した場
合は、比較器8の出力は「0」であるから、プロ
グラムカウンタ6に分岐アドレスa1+rはロー
ドされず、現在のプログラムカウンタ6の値、す
なわち、a1+1のアドレスが次に実行される。
On the other hand, if the comparator 8 determines that the branch condition is not satisfied, the output of the comparator 8 is "0", so the branch address a1+r is not loaded into the program counter 6, and the current value of the program counter 6, that is, Address a1+1 is executed next.

BTYPフイールドが「1」であり、BN0フイ
ールドがb1であるような遠距離分岐命令m2が
マイクロプログラム格納メモリ1のアドレスa2
に格納されている場合には、この遠距離分岐命令
m2、すなわち、マイクロ命令m2の実行は次の
ようになる。
A long-distance branch instruction m2 in which the BTYP field is "1" and the BN0 field is b1 is sent to address a2 of microprogram storage memory 1.
If the far branch instruction m2 is stored in the microinstruction m2, the execution of the far branch instruction m2, that is, the microinstruction m2 is as follows.

パイプラインレジスタ3にマイクロ命令m2が
セツトされるまでは、マイクロ命令m1の実行時
と同様であるが、マイクロ命令m2の場合、
BTYPフイールドの値が「1」であるため、分
岐アドレス選択回路5は、分岐アドレスメモリ2
Aの出力を選択する。
The process until microinstruction m2 is set in the pipeline register 3 is the same as the execution of microinstruction m1, but in the case of microinstruction m2,
Since the value of the BTYP field is "1", the branch address selection circuit 5 selects the branch address memory 2.
Select the output of A.

ここで、分岐アドレスメモリ2Aのアドレスb
1にデータxがあらかじめ格納されているとし、
マイクロ命令m1の場合と同様にして、分岐条件
が成立し、比較器8の出力が「1」となつた場合
には、プログラムカウンタ6にはアドレスxがロ
ードされる。従つて、マイクロプログラム格納メ
モリ1のアドレスxに格納されているマイクロ命
令が次に実行される。
Here, address b of branch address memory 2A
Assuming that data x is pre-stored in 1,
Similarly to the case of the microinstruction m1, when the branch condition is satisfied and the output of the comparator 8 becomes "1", the address x is loaded into the program counter 6. Therefore, the microinstruction stored at address x in microprogram storage memory 1 is executed next.

なお、上記実施例では、分岐命令、すなわち、
マイクロ命令m1,m2でそれぞれ分岐相対アド
レス、分岐アドレスメモリ2Aのアドレスを記述
したものを示したが、パイプラインレジスタ3に
マイクロ命令をセツトしてから次の実行アドレス
がプログラムカウンタ6の出力端に現われるまで
の時間を短くするために分岐命令、すなわち、マ
イクロ命令m1,m2の直前に実行される命令で
BTYPフイールド、BN0.イールドの値を記述し
ておき、分岐アドレス選択回路5内で分岐先アド
レスをラツチしておく構造としてもよい。
Note that in the above embodiment, a branch instruction, that is,
The branch relative address and the address of the branch address memory 2A are written in the microinstructions m1 and m2, respectively, but after the microinstruction is set in the pipeline register 3, the next execution address is written to the output terminal of the program counter 6. In order to shorten the time it takes to appear, branch instructions, that is, instructions that are executed immediately before microinstructions m1 and m2, are used.
A structure may also be used in which the values of the BTYP field and BN0.yield are written and the branch destination address is latched in the branch address selection circuit 5.

ただし、この際の分岐先相対アドレスは分岐命
令の直前に実行される命令に対する相対アドレス
でなければならない。
However, the branch destination relative address at this time must be a relative address to the instruction executed immediately before the branch instruction.

〔発明の効果〕〔Effect of the invention〕

以上のように、この発明によれば、分岐番号フ
イールドに示された相対アドレスと現実行アドレ
スから加減算器で分岐先アドレスを計算し、この
計算された分岐先アドレスと分岐アドレスメモリ
の出力値とを分岐アドレス選択回路で選択し、そ
の選択した値を分岐先アドレスとするように構成
したので、比較的多用される近接したアドレスへ
の分岐は相対アドレス指定による分岐を行い、離
れたアドレスへの分岐はアドレスメモリを参照し
て分岐を行うようにでき、従つて、マイクロプロ
グラム格納メモリには、ビツト巾の小さい相対ア
ドレスおよび分岐アドレスメモリのアドレスを格
納し、さらに少数の分岐先アドレスのみを分岐ア
ドレスメモリに格納すればよいことになる。
As described above, according to the present invention, a branch destination address is calculated by an adder/subtractor from the relative address indicated in the branch number field and the actual row address, and the calculated branch destination address and the output value of the branch address memory are is selected by the branch address selection circuit, and the selected value is used as the branch destination address. Therefore, branches to nearby addresses, which are relatively frequently used, are performed by specifying relative addresses, and branches to distant addresses are performed. Branches can be performed by referring to the address memory. Therefore, the microprogram storage memory stores a small bit-width relative address and the address of the branch address memory, and furthermore, only a small number of branch destination addresses can be branched. It is sufficient to store it in the address memory.

これにともない、水平型マイクロプログラムに
よる分岐方式の利点を損うことなく、さらにメモ
リ使用効率を高められる効果がある。
This has the effect of further increasing memory usage efficiency without sacrificing the advantages of the branching method using horizontal microprograms.

【図面の簡単な説明】[Brief explanation of drawings]

第1図はこの発明の一実施例によるマイクロプ
ログラム分岐制御方式のブロツク図、第2図は同
上実施例に適用するマイクロ命令の構造を示す説
明図、第3図は従来のマイクロプログラム分岐制
御方式のブロツク図である。 1はマイクロプログラム格納メモリ、2Aは分
岐アドレスメモリ、4は加減算器、5は分岐アド
レス選択回路。なお、図中、同一符号は同一、又
は相当部分を示す。
FIG. 1 is a block diagram of a microprogram branch control system according to an embodiment of the present invention, FIG. 2 is an explanatory diagram showing the structure of a microinstruction applied to the same embodiment, and FIG. 3 is a conventional microprogram branch control system. FIG. 1 is a microprogram storage memory, 2A is a branch address memory, 4 is an adder/subtractor, and 5 is a branch address selection circuit. In addition, in the figures, the same reference numerals indicate the same or equivalent parts.

Claims (1)

【特許請求の範囲】[Claims] 1 分岐先を指定する分岐番号フイールドが分岐
先相対アドレスを示すのか、あるいは別に記録し
た分岐先絶対アドレスを示すのかを指示する分岐
型フイールドを含むマイクロ命令列を格納するマ
イクロプログラム格納メモリと、前記分岐番号フ
イールドの内容をアドレスとしてアクセスされ前
記分岐先絶対アドレスを記憶する分岐アドレスメ
モリと、前記分岐番号フイールドに示された相対
アドレスと現実行アドレスから分岐先アドレスを
計算する加減算器と、前記分岐型フイールドの値
により前記分岐アドレスメモリの出力値と前記加
減算器の出力値のいずれかを分岐制御のための分
岐先アドレスとして選択する分岐アドレス選択回
路とを備えたマイクロプログラム分岐制御方式。
1. A microprogram storage memory that stores a microinstruction string including a branch type field that indicates whether a branch number field that specifies a branch destination indicates a branch destination relative address or a separately recorded branch destination absolute address; a branch address memory that is accessed using the contents of the branch number field as an address and stores the absolute address of the branch destination; an adder/subtractor that calculates the branch destination address from the relative address indicated in the branch number field and the actual row address; A microprogram branch control system comprising: a branch address selection circuit that selects either the output value of the branch address memory or the output value of the adder/subtractor as a branch destination address for branch control according to a value of a type field.
JP62262886A 1987-10-20 1987-10-20 Branching control system for microprogram Granted JPH01106140A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP62262886A JPH01106140A (en) 1987-10-20 1987-10-20 Branching control system for microprogram

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP62262886A JPH01106140A (en) 1987-10-20 1987-10-20 Branching control system for microprogram

Publications (2)

Publication Number Publication Date
JPH01106140A JPH01106140A (en) 1989-04-24
JPH0585048B2 true JPH0585048B2 (en) 1993-12-06

Family

ID=17381987

Family Applications (1)

Application Number Title Priority Date Filing Date
JP62262886A Granted JPH01106140A (en) 1987-10-20 1987-10-20 Branching control system for microprogram

Country Status (1)

Country Link
JP (1) JPH01106140A (en)

Also Published As

Publication number Publication date
JPH01106140A (en) 1989-04-24

Similar Documents

Publication Publication Date Title
US5978904A (en) Data processor
JPS6029126B2 (en) data processing equipment
US4446517A (en) Microprogram memory with page addressing and address decode in memory
US5991872A (en) Processor
EP0240606B1 (en) Pipe-line processing system and microprocessor using the system
EP0030463B1 (en) Buffer memory control system
JPS6112289B2 (en)
US5142630A (en) System for calculating branch destination address based upon address mode bit in operand before executing an instruction which changes the address mode and branching
JPH0585048B2 (en)
US4775933A (en) Address generation system
JP3954159B2 (en) Synchronous RAM access control circuit, data processor and control method thereof
JP2778610B2 (en) Pipeline operation control method and system
JP2511063B2 (en) Pipeline control method
JPH0233173B2 (en)
JPS61223948A (en) Microprogram control system
JPH05120080A (en) Firmware execution history storage system
JPS59129995A (en) Storage device
JPS6036614B2 (en) information processing equipment
JPS6047618B2 (en) information processing equipment
JPS63120336A (en) Switching system for memory access mode
JPS6047617B2 (en) information processing equipment
JPS63231553A (en) Partial writing system
JPS60176144A (en) Register file device
JPH0234059B2 (en)
JPH0628033B2 (en) Processor