JPS60209837A - Microprogram controller - Google Patents

Microprogram controller

Info

Publication number
JPS60209837A
JPS60209837A JP6641384A JP6641384A JPS60209837A JP S60209837 A JPS60209837 A JP S60209837A JP 6641384 A JP6641384 A JP 6641384A JP 6641384 A JP6641384 A JP 6641384A JP S60209837 A JPS60209837 A JP S60209837A
Authority
JP
Japan
Prior art keywords
branch condition
microprogram
branch
memory
register
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.)
Pending
Application number
JP6641384A
Other languages
Japanese (ja)
Inventor
Toshio Kimura
利男 木村
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.)
NEC Corp
Original Assignee
NEC Corp
Nippon Electric Co Ltd
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 NEC Corp, Nippon Electric Co Ltd filed Critical NEC Corp
Priority to JP6641384A priority Critical patent/JPS60209837A/en
Publication of JPS60209837A publication Critical patent/JPS60209837A/en
Pending legal-status Critical Current

Links

Abstract

PURPOSE:To make branching high-speed while providing the universal utility by determining branch conditions in accordance with values of a branch condition register, where required branch conditions are stored, and a memory where required information are stored. CONSTITUTION:In case that microprogram MP instructions in two continuous addresses which are read out from an MP memory 1 are selected by a selector 3, all constituting elements which are used to determine individual branch conditions required for execution of an MP are stored in a branch condition register 4, and the number of all branch conditions required for execution of the MP is held in a memory 5 as a word number (m), and individual words are allowed to correspond to individual branch conditions. Branch conditions required for execution of the MP are decided in accordance with the value of one word in the memory 5 and the value of contents of the register 4 by branch condition deciding means 6, and obtained branch conditions are fed to the selector 3.

Description

【発明の詳細な説明】 (産業上の利用分野) 本発明は、データ処理装置におけるマイクロプログラム
制御装置に関し、特にマイクロプログラムの分岐条件の
判定方法に関する。
DETAILED DESCRIPTION OF THE INVENTION (Field of Industrial Application) The present invention relates to a microprogram control device in a data processing device, and more particularly to a method for determining branch conditions of a microprogram.

(従来技術) 従来のマイクロプログラム制御装置におけるマイクロプ
ログラムの分岐条件は、分岐条件を判定する際に必要と
なる各情報、すなわち上記分岐条件の各構成要素を、そ
れらが格納されている分岐条件レジスタ、ならびKその
他のレジスタから1ビツトごとに取出してゆくことによ
り最終的に判定していた。
(Prior Art) A branch condition of a microprogram in a conventional microprogram control device is stored in a branch condition register in which each piece of information necessary for determining the branch condition, that is, each component of the branch condition, is stored. , K, and other registers to make a final determination.

従って、上記の方法には汎用性はあるが、各構成要素を
1ビツト判定するごとにlTの時間を費してしまb1性
能が悪すと云う欠点があった。また、従来技術において
性能面の向上を計る場合には、分岐条件の構成要素を1
ビツトごとに判定してゆくのではなく、分岐条件ごとに
各分岐条件の全構成要素より分岐条件判定のための論理
をハードウェアで構成し、分岐条件を判定する方法が採
用されて込た。
Therefore, although the above-mentioned method has versatility, it has the drawback that it takes 1T time each time one bit of each component is determined, resulting in poor b1 performance. In addition, when trying to improve performance in the conventional technology, it is necessary to change the components of the branch condition to one
Instead of making a decision bit by bit, a method was adopted in which the logic for making a decision on a branch condition was configured in hardware from all the constituent elements of each branch condition, and then making a decision on a branch condition.

上記方法の場合、分岐条件の判定はITの時間ですみ、
上記の通り性能面の向上を計って込たが、上記論理をハ
ードウェアで構成してしたために変更が容易ではなく、
汎用性に乏しbと云う欠点があった。
In the case of the above method, determining the branch condition requires only IT time.
As mentioned above, we tried to improve the performance, but since the above logic was configured with hardware, it was not easy to change it.
It had the disadvantage of lack of versatility.

(発明の目的) 本発明の目的は、マイクロプログラムの実行上に必要な
各分岐条件の全構成要素を格納するための分岐条件レジ
スタと、各ワードととに各分岐条件を判定する上で必要
な情報の期待値を格納するためのメモリと、上記分岐条
件レジスタおよび上記メモリの内容の値によって分岐条
件を判定するための手段とを備えて判定を行うことによ
り上記欠点を解決し、汎用性を備えながらマイクロプロ
グラムの分岐の高速化が可能なように構成したマイクロ
プログラム制御装置を提供することにある。
(Objective of the Invention) An object of the present invention is to provide a branch condition register for storing all components of each branch condition necessary for execution of a microprogram, and a branch condition register necessary for determining each branch condition in each word. The above-mentioned drawbacks can be solved by providing a memory for storing expected values of information, and a means for determining a branch condition based on the values of the branch condition register and the contents of the memory. An object of the present invention is to provide a microprogram control device configured to be capable of speeding up branching of a microprogram while having the following features.

(発明の構成) 本発明によるマイクロプログラム制御装置はマイクロプ
ログラムメモリと、アドレスレジスタと、セレクタと、
分岐条件レジスタと、メモリと、分岐条件判定手段とを
具備し、アドレスレジスタによって示されたアドレスに
よってマイ/ロブログラムメモリより読出された連続す
る第1の複数のワードより成るマイクロプログラム命令
を分岐条件判定手段によって判定した分岐条件によって
選択するように構成したものである。
(Structure of the Invention) A microprogram control device according to the present invention includes a microprogram memory, an address register, a selector,
It comprises a branch condition register, a memory, and a branch condition determination means, and the branch condition determines a microprogram instruction consisting of a first plurality of consecutive words read from the My/Robot program memory at an address indicated by the address register. The configuration is such that the selection is made based on the branching condition determined by the determining means.

マイ、クロプログラムメモリは、マイクロ命令を格納す
ることができ、第1の複数のワードを並列に読出すこと
が可能なものである。
The microprogram memory is capable of storing microinstructions and allowing the first plurality of words to be read in parallel.

アドレスレジスタは、マイクロプログラムメモリのアド
レスを示すためのものである。
The address register is for indicating the address of the microprogram memory.

セレクタは、アドレスレジスタによって示されたアドレ
スによってマイクロプログラムメモリより読出された連
続する第1の複数のワードより成るマイクロプログラム
命令を分岐条件によって選択するためのものである。
The selector is for selecting, by a branch condition, a microprogram instruction consisting of a first plurality of consecutive words read from the microprogram memory at an address indicated by the address register.

分岐条件レジスタは、マイクロプログラム命令より成立
つマイクロプログラムを実行する上で必要となる各分岐
条件の全構成要素をビット単位で格納するためのもので
あって、第2の複数のビット幅を有するものである。
The branch condition register is for storing in bits all the components of each branch condition necessary to execute a microprogram established by a microprogram instruction, and has a second plurality of bit widths. It is something.

メモリは分岐条件レジスタのビット幅の2倍のビット幅
を備え、ビット幅の上位の第2の複数のビット、ならび
に下位の第2の複数のビットが共に分岐条件レジスタの
内容と同様なビット対応を成し、マイクロプログラムを
実行する上で必要となる全分岐条件の種類を第3の複数
のワード数として有するものである。上位の第2の複数
のビットにおりては、分岐条件に対応するワードを構成
する各ビットに対して、それぞれ分岐条件を判定する上
で必要なビットか否かを示す有効ビットを情報として格
納し、さらに下位の第2の複数のビットにおしては、各
ワードの各有効ビット位置に対応した分岐条件となり得
る値の期待値を格納するためのものである。
The memory has a bit width that is twice the bit width of the branch condition register, and both the upper second plurality of bits and the lower second plurality of bits have the same bit correspondence as the contents of the branch condition register. and has the types of all branch conditions necessary to execute the microprogram as a third number of words. In the upper second plurality of bits, for each bit composing the word corresponding to the branch condition, a valid bit indicating whether or not the bit is necessary for determining the branch condition is stored as information. However, the second plurality of lower bits are used to store expected values that can be branch conditions corresponding to each effective bit position of each word.

分岐条件判定手段は、分岐条件レジスタとメモリとの内
容の値に対応して、必要な分岐条件を判別するためのも
のである。
The branch condition determining means is for determining a necessary branch condition in accordance with the contents of the branch condition register and memory.

(実施例) 次に、本発明の一実施例につbて図面を参照して詳細に
説明する。
(Example) Next, an example of the present invention will be described in detail with reference to the drawings.

第1図は、本発明によるマイクロプログラム制御装置の
一実施例を示すブロック図であり、マイクロプログラム
の分岐先が2つの2ウエイブランチの場合を示す図であ
る。
FIG. 1 is a block diagram showing an embodiment of a microprogram control device according to the present invention, and is a diagram showing a case where a microprogram branches to two two-way branches.

第1図におりて、lは2ワードを並列に読出し可能なマ
イクロプログラムメモリ、2は上記マイクロプログラム
メモリlのアドレスを示すだめのアドレスレジスタ、3
は上記マイクロプログラムメモリlから読出された連続
する2つのアドレスのマイクロプログラム命令を分岐条
件によって選択するだめの2ウエイのセレクタである。
In FIG. 1, l is a microprogram memory that can read two words in parallel, 2 is an address register that indicates the address of the microprogram memory l, and 3
is a two-way selector for selecting microprogram instructions at two consecutive addresses read from the microprogram memory 1 according to a branch condition.

4は、マイクロプログラムを実行する上で必要な各分岐
条件を判定するのに必要な、全構成要素をビット単位で
格納するためのレジスタの集合より成る分岐条件レジス
タである。
Reference numeral 4 denotes a branch condition register consisting of a set of registers for storing in bit units all the constituent elements necessary for determining each branch condition necessary for executing the microprogram.

本実施例では上記構成要素を4ビツトとし、この4ビツ
トの組合せによってマイクロプログラムを実行する上で
必要な子べての分岐条件が判定できるものとする。5は
、分岐条件レジスタ4の2倍の8ビツトのビット幅を有
し、マイクロプログラムを実行する上で必要となる全分
岐条件の数をワード数mとして有するメモリであり、各
ワードがそれぞれ各分岐条件と対応してしる。各ワード
の上位4ビツト、ならびに下位4ビツトは、それぞれが
分岐条件レジスタ4の各ピット位置に対応しており、上
位4ビツトの分岐条件レジスタ4の分岐条件を判定する
上で必要な情報が格納されているピット位置にはlが格
納され、そうではなりピット位置には0が格納されてい
る。いっぽう、下位4ビツトの分岐条件を判定する上で
必要なビット位置には、具体的な分岐条件の期待値を反
転した値が格納されてbる。6は、分岐条件を判定する
のに必要な情報を格納するためのメモリ5のひとつのワ
ードの値と、分岐条件レジスタ4の内容の値とに対応し
て、マイクロプログラムを実行する上で必要となった分
岐条件を判定するための手段である。
In this embodiment, the above-mentioned component is 4 bits, and the combination of these 4 bits can determine the branch conditions for all the children necessary to execute the microprogram. Reference numeral 5 denotes a memory having a bit width of 8 bits, which is twice that of the branch condition register 4, and having the number of words m, which is the total number of branch conditions necessary to execute the microprogram. It corresponds to the branch condition. The upper 4 bits and lower 4 bits of each word correspond to each pit position in the branch condition register 4, and store the information necessary to judge the branch condition in the upper 4 bits of the branch condition register 4. 1 is stored in the pit position where it is, and 0 is stored in the pit position where it is not. On the other hand, a value obtained by inverting the expected value of a specific branch condition is stored in the bit position necessary for determining the lower 4 bits of the branch condition. 6 corresponds to the value of one word of the memory 5 for storing information necessary for determining the branch condition and the value of the contents of the branch condition register 4, and is necessary for executing the microprogram. This is a means for determining the branch condition that has become .

以上の構成におして、マイクロプログラムメモリlにお
ける000Aと000Bと云う連続する2つのアドレス
より、マイクロプログラム命令が読出され、アドレス0
OOAとアドレス000Bとのどちらに分岐するかを、
セレクタ2によって選択する際の分岐条件をX (DO
N”l”0ARE )とする。分岐条件Xが成立した時
には制御はアドレス000人へ分岐するものとし、不成
立の時にはアドレスoooBへ分岐するものとする。
In the above configuration, microprogram instructions are read from two consecutive addresses 000A and 000B in microprogram memory l, and the microprogram instructions are read from address 0.
Choose whether to branch to OOA or address 000B.
The branch condition when selecting by selector 2 is X (DO
N"l"0ARE). When branch condition X is satisfied, control is assumed to branch to address 000, and when branch condition X is not satisfied, control is assumed to be branched to address oooB.

メモリ5においては、上記分岐条件Xの判定に必要な情
報の期待値があらかじめワードAに格納されており、メ
モリ5のアドレスはマイクロ命令語の一部として示され
てbる。
In the memory 5, the expected value of information necessary for determining the branch condition X is stored in advance in word A, and the address of the memory 5 is shown as part of the microinstruction word b.

第1図におりて、メモリ5のワードAの上位4ビツトは
0101であり、これによってレジスタ4のビット1と
ビット3との値が分岐条件Xを判定する上で必要な情報
であることが示されて−る。いっぽう、下位4ビツトは
XlX0である。とれによって、分岐条件レジスタ4の
ピッ)1の値が0で、且つ、ビット3の値が1の時に分
岐条件は成立し、そうでない時には不成立となることが
示される。この時に、レジスタ4の内容の値は1001
であり、この値とメモリ5のワードAの下位4ビツトの
値とを分岐条件判定手段6により各ビットごとに比較し
、分岐条件を判定する上で必要ではなりビットには上位
4ビツトの値によってマスクをし、その結果の全ビット
の論理値のANDを取ることにより、上記分岐条件Xが
成立したか否かを判定する。
In FIG. 1, the upper four bits of word A in memory 5 are 0101, which indicates that the values of bits 1 and 3 of register 4 are the information necessary to determine branch condition X. It is shown. On the other hand, the lower 4 bits are XlX0. This indicates that the branch condition is satisfied when the value of the bit 1 in the branch condition register 4 is 0 and the value of the bit 3 is 1, and that the branch condition is not satisfied otherwise. At this time, the value of the contents of register 4 is 1001
This value and the value of the lower 4 bits of word A in the memory 5 are compared bit by bit by the branch condition determining means 6, and the value of the upper 4 bits is set for the bits that are not necessary for determining the branch condition. By masking by , and ANDing the logical values of all the resulting bits, it is determined whether the branch condition X is satisfied or not.

本実施例の場合、結果は1となって分岐条件Xが成立し
、アドレス0OOAに制御が分岐することになる。以上
により実施例を参照して本発明を説明したが、このよう
に分岐条件の判定に必要な情報の期待値を、書込みが容
易に行えるように構成したメモリの内部に備えることに
より汎用性を備えてbながら、分岐条件の全構成要素を
レジスタの集合で構成することによって分岐条件の判定
をITO時]■で行す、マイクロプログラムの分岐の高
速化を実現している。
In the case of this embodiment, the result is 1, branch condition X is satisfied, and control branches to address 0OOA. Although the present invention has been described above with reference to the embodiments, versatility can be improved by providing the expected value of information necessary for determining a branch condition inside a memory configured to be easily written. However, by configuring all the constituent elements of a branch condition as a set of registers, branch conditions can be judged in ITO time, realizing faster branching of microprograms.

(発明の効果) 以上説明したように本発明においては、マイクロプログ
ラムを実行する上で必要な各分岐条件の全構成要素を格
納するための分岐条件レジスタと、各分岐条件を判定す
る上で必要な情報を格納するためのメモリとを備え、上
記分岐条件レジスタと上記メモリとの値に対応して分岐
条件を判定するよう構成することにより、汎用性を備え
た一ttマイクロプログラムの分岐の高速化を計ること
ができると云う効果がある。
(Effects of the Invention) As explained above, the present invention provides a branch condition register for storing all components of each branch condition necessary to execute a microprogram, and a branch condition register necessary for determining each branch condition. The branch condition is determined according to the values of the branch condition register and the memory, and the branch condition is determined in accordance with the values of the branch condition register and the memory. It has the effect of being able to measure the change in

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

第1図は、本発明によるマイクロプログラム制御装置の
一実施例を示すブロック図である。 l・・・マイクロプログラムメモリ 2.4・・・レジスタ 3・・・セレクタ 5・・・メモリ 6・・・分岐条件判定手段・ 特許出願人 日本電気株式会社 代理人 弁理士 井 ノ ロ 壽
FIG. 1 is a block diagram showing an embodiment of a microprogram control device according to the present invention. l...Micro program memory 2.4...Register 3...Selector 5...Memory 6...Branch condition determination means Patent applicant Hisashi Inoro, agent for NEC Corporation Patent attorney

Claims (1)

【特許請求の範囲】[Claims] マイクロ命令を格納することができ、第1の複数のワー
ドを並列に読出すことが可能なマイクロプログラムメモ
リと、前記マイクロプログラムメモリのアドレスを示す
ためのアドレスレジスタと、前記アドレスレジスタによ
って示されたアドレスによって前記マイクロプログラム
メモリより読出された連続する前記第1の複数のワード
より成るマイクロプログラム命令を分岐条件によって選
択するためのセレクタと、前記マイクロプログラム命令
より成立つマイクロプログラムを実行する上で必要とな
る各分岐条件の全構成要素をビット単位で格納するため
の第2の複数のビット幅を有する分岐条件レジスタと、
前記分岐条件レジスタのビット幅の2倍のビット幅を備
え、前記ビット幅の上位の第2の複数のビット、ならび
に下位の第2の複数のビットが共に前記分岐条件レジス
タの内容と同様なビット対応を成し、前記マイクロプロ
グラムを実行する上で必要となる全分岐条件の種類を第
3の複数のワード数として有し、前記上位の第2の複数
のビットにお込では前記分岐条件に対応するワードを構
成する各ビットに対して、それぞれ前記分岐条件を判定
する上で必要なビットか否かを示す有効ビットを情報と
して格納し、さらに前記下位の第2の複数のビットにト
しては各ワードの各有効ビット位置に対応した前記分岐
条件となり得る値の期待値を格納するためのメモリと、
前記分岐条件レジスタと前記メモリとの内容の値に対応
して必要な分岐条件を判別するための分岐条件判定手段
とを具備し、前記アドレスレジスタによって示されたア
ドレスによって前記マイクロプログラムメモリより読出
された連続する前記第1の複数のワードのマイクロプロ
グラム命令を分岐条件判定手段によって判定した分岐条
件によって選択するように構成したことを特徴とするマ
イクロプログラム制御装置。
a microprogram memory capable of storing microinstructions and capable of reading a first plurality of words in parallel; an address register for indicating an address of said microprogram memory; and an address register indicated by said address register. a selector for selecting, according to a branch condition, a microprogram instruction consisting of the first plurality of consecutive words read from the microprogram memory according to an address; and a selector necessary for executing a microprogram formed by the microprogram instruction. a second plurality of bit-width branch condition registers for storing in bits all components of each branch condition;
Bits having a bit width twice as large as the bit width of the branch condition register, and a second plurality of upper bits and a second plurality of lower bits of the bit width are both similar to the contents of the branch condition register. A third plurality of words corresponds to the types of all branch conditions necessary to execute the microprogram, and the number of words for the branch conditions is stored in the upper second plurality of bits. For each bit constituting the corresponding word, a valid bit indicating whether or not the bit is necessary for determining the branch condition is stored as information, and further stored in the second plurality of lower bits. a memory for storing an expected value of a value that can be the branch condition corresponding to each effective bit position of each word;
branch condition determining means for determining a necessary branch condition in accordance with the values of the contents of the branch condition register and the memory; A microprogram control device characterized in that said first plurality of consecutive words of microprogram instructions are selected according to a branch condition determined by a branch condition determination means.
JP6641384A 1984-04-03 1984-04-03 Microprogram controller Pending JPS60209837A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP6641384A JPS60209837A (en) 1984-04-03 1984-04-03 Microprogram controller

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP6641384A JPS60209837A (en) 1984-04-03 1984-04-03 Microprogram controller

Publications (1)

Publication Number Publication Date
JPS60209837A true JPS60209837A (en) 1985-10-22

Family

ID=13315083

Family Applications (1)

Application Number Title Priority Date Filing Date
JP6641384A Pending JPS60209837A (en) 1984-04-03 1984-04-03 Microprogram controller

Country Status (1)

Country Link
JP (1) JPS60209837A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06290044A (en) * 1992-06-04 1994-10-18 Matsushita Electric Ind Co Ltd Sequence control circuit

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06290044A (en) * 1992-06-04 1994-10-18 Matsushita Electric Ind Co Ltd Sequence control circuit

Similar Documents

Publication Publication Date Title
JPH0248931B2 (en)
JPS62197830A (en) Data processing system
JPH031699B2 (en)
KR930018389A (en) Method and apparatus for determining command execution order of data processing system
JPS5911921B2 (en) numerical control device
EP0164418B1 (en) Microprogram control system
JPS60209837A (en) Microprogram controller
JP2793357B2 (en) Parallel processing unit
JPH0310129B2 (en)
JP2573711B2 (en) Micro subroutine control method
JPH0431977A (en) Expansion circuit for color data
JPH0338613B2 (en)
JPH02287732A (en) Register address generating device
JPS6224338A (en) Memory access system
Molntyve THE ILLIAC IV COMPUTER
JPS6398735A (en) Microcontroller
JPH0546389A (en) Parallel processor
JPH04188323A (en) Microinstruction reading out system
JPS62297938A (en) Microprogram controller
JPH0264828A (en) Address trace circuit
JPH01137346A (en) Memory selection switching device
JPS63317857A (en) Memory access circuit
JPS6043750A (en) Microprogram controller
JPS63142430A (en) Address generating system
JPH01204145A (en) Microprogram controller