JPH0677232B2 - Micro program controller - Google Patents

Micro program controller

Info

Publication number
JPH0677232B2
JPH0677232B2 JP4216387A JP4216387A JPH0677232B2 JP H0677232 B2 JPH0677232 B2 JP H0677232B2 JP 4216387 A JP4216387 A JP 4216387A JP 4216387 A JP4216387 A JP 4216387A JP H0677232 B2 JPH0677232 B2 JP H0677232B2
Authority
JP
Japan
Prior art keywords
microprogram
address
count
bus
field
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
JP4216387A
Other languages
Japanese (ja)
Other versions
JPS63208124A (en
Inventor
秀廉 西原
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
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 filed Critical NEC Corp
Priority to JP4216387A priority Critical patent/JPH0677232B2/en
Publication of JPS63208124A publication Critical patent/JPS63208124A/en
Publication of JPH0677232B2 publication Critical patent/JPH0677232B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明はマイクロプログラム制御装置に関し、特に画像
処理等に用いられて好適なマイクロプログラム制御装置
に関する。
The present invention relates to a micro program control device, and more particularly to a micro program control device suitable for use in image processing and the like.

〔従来の技術〕[Conventional technology]

マイクロプログラム制御装置を使用した画像処理におい
ては、処理すべきデータ量が膨大なために1マイクロプ
ログラムステップでもステップ数を短縮することが処理
速度の向上につながる。
In image processing using a micro program control device, since the amount of data to be processed is enormous, reducing the number of steps even with one micro program step leads to improvement in processing speed.

例えば、1000×1000画素の画像データを処理するような
場合には、1マイクロプログラムステップが200nsの速
度で実行されるとすれば、全データの処理に対して1マ
イクロプログラムステップ当たり0.2秒の処理時間がか
かることになる。したがって、マイクロプログラム全体
で10マイクロプログラムステップが必要であるとするな
らば、マイクロプログラム全体で2秒という時間がかか
ることになるので、マイクロプログラムのステップ数の
短縮は重要な課題である。
For example, in the case of processing image data of 1000 × 1000 pixels, assuming that one microprogram step is executed at a speed of 200 ns, it takes 0.2 seconds per microprogram step to process all data. It will take time. Therefore, if 10 microprogram steps are required for the entire microprogram, the total time required for the microprogram is 2 seconds. Therefore, it is an important issue to reduce the number of steps of the microprogram.

しかし、従来のこの種のマイクロプログラム制御装置で
は、マイクロ命令のオペレーションフィールドで指定さ
れたオペレーションを演算ユニットで処理してマイクロ
命令の実行を行うようになっていたので、1マイクロ命
令で実行されるオペレーション数が1オペレーションに
限定され、マイクロプログラムのステップ数の短縮にも
おのずから限界があった。
However, in the conventional micro program control device of this type, the operation designated by the operation field of the micro instruction is processed by the arithmetic unit to execute the micro instruction. Therefore, the micro instruction is executed by one micro instruction. The number of operations was limited to one, and there was a limit to reducing the number of steps of the microprogram.

〔発明が解決しようとする問題点〕[Problems to be solved by the invention]

上述した従来のマイクロプログラム制御装置では、1マ
イクロ命令で1オペレーションしか実行できないように
なっていたので、マイクロプログラムのステップ数の短
縮が困難であるという欠点がある。
The conventional microprogram control device described above can execute only one operation with one microinstruction, so that it is difficult to reduce the number of steps of the microprogram.

本発明の目的は、上述の点に鑑み、1マイクロ命令で異
なるオペレーションを同時に実行可能とすることによ
り、マイクロプログラムのステップ数を短縮することが
できるようにしたマイクロプログラム制御装置を提供す
ることにある。
In view of the above points, an object of the present invention is to provide a microprogram control device capable of reducing the number of steps of a microprogram by enabling different operations to be simultaneously executed by one microinstruction. is there.

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

本発明のマイクロプログラム制御装置は、複数のマイク
ロ命令からなるマイクロプログラムを格納するマイクロ
プログラムメモリと、マイクロプログラムアドレスを生
成して前記マイクロプログラムメモリに与えるアドレス
シーケンサと、前記マイクロプログラムメモリの前記マ
イクロプログラムアドレスから読み出されたマイクロ命
令を少なくともオペレーションフィールド,アドレスフ
ィールドおよびレジスタフィールドに対応させて格納す
るパイプラインレジスタと、前記マイクロ命令のオペレ
ーションフィールドで指定されたオペレーションに従っ
て動作する演算ユニットと、この演算ユニットのソース
バス,リファレンスバスおよびディステイネーションバ
スに接続されたランダムアクセスメモリおよびレジスタ
群と、前記ソースバス,リファレンスバスおよびディス
ティネーションバスに接続されマイクロ命令のレジスタ
フィールドで指定されたロード指示,カウントアップ指
示およびカウントダウン指示に従ってロード動作,カウ
ントアップ動作およびカウントダウン動作,カウントア
ップ動作およびカウントダウン動作を行う1つ以上のカ
ウンタとを有する。
A microprogram control device of the present invention includes a microprogram memory for storing a microprogram composed of a plurality of microinstructions, an address sequencer for generating a microprogram address and giving it to the microprogram memory, and the microprogram in the microprogram memory. A pipeline register that stores a microinstruction read from an address in association with at least an operation field, an address field, and a register field, an arithmetic unit that operates according to an operation specified by the operation field of the microinstruction, and this arithmetic unit Random access memory and registers connected to the source bus, reference bus, and destination bus of the One that performs a load operation, a count-up operation, a count-down operation, a count-up operation, and a count-down operation according to the load instruction, count-up instruction, and count-down instruction specified in the register field of the microinstruction, connected to the master, reference, and destination buses. It has the above counter.

〔作用〕[Action]

本発明のマイクロプログラム制御装置では、マイクロプ
ログラムメモリが複数のマイクロ命令からなるマイクロ
プログラムを格納し、アドレスシーケンサがマイクロプ
ログラムアドレスを生成してマイクロプログラムメモリ
に与え、パイプラインレジスタがマイクロプログラムメ
モリのマイクロプログラムアドレスから読み出されたマ
イクロ命令を少なくともオペレーションフィールド,ア
ドレスフィールドおよびレジスタフィールドに対応させ
て格納し、演算ユニットがマイクロ命令のオペレーショ
ンフィールドで指定されたオペレーションに従って動作
し、ランダムアクセスメモリおよびレジスタ群が演算ユ
ニットのソースバス,リファレンスバスおよびディステ
ィネーションバスに接続され、1つ以上のカウンタがソ
ースバス,リファレンスバスおよびディスティネーショ
ンバスに接続されマイクロ命令のレジスタフィールドで
指定されたロード指示,カウントアップ指示およびカウ
ントダウン指示に従ってロード動作,カウントアップ動
作およびカウントダウン動作を行う。
In the micro program control device of the present invention, the micro program memory stores a micro program composed of a plurality of micro instructions, the address sequencer generates a micro program address and supplies the micro program address to the micro program memory, and the pipeline register is a micro program memory. The microinstruction read from the program address is stored in correspondence with at least the operation field, the address field and the register field, the arithmetic unit operates according to the operation specified in the operation field of the microinstruction, and the random access memory and the register group are stored. One or more counters connected to the source bus, reference bus, and destination bus of the arithmetic unit Nsubasu and destination is connected to the bus microinstruction been loaded instruction specified by the register field of the load operation in accordance with the count-up instruction and counting down instruction, the count-up operation and a count-down operation performed.

〔実施例〕〔Example〕

次に、本発明について図面を参照して詳細に説明する。 Next, the present invention will be described in detail with reference to the drawings.

第1図は、本発明の一実施例のマイクロプログラム制御
装置を示すブロック図である。本実施例のマイクロプロ
グラム制御装置は、マイクロプログラムメモリ1と、パ
イプラインレジスタ2と、アドレスシーケンサ3と、マ
ッピングアレイ4と、分岐条件を選択するマルチプレク
サ5と、分岐アドレスを選択するマルチプレクサ6と、
演算ユニット7と、アドレスバッファ8と、ランダムア
クセスメモリ(以下、RAMと略記する)9と、レジスタ
群10と、Mカウンタ11およびNカウンタ12と、ラッチ13
と、プログラマブルロジックアレイ(以下、RLAと略記
する)14と、画像メモリ15とから、その主要部が構成さ
れている。
FIG. 1 is a block diagram showing a microprogram controller according to an embodiment of the present invention. The microprogram control device of this embodiment includes a microprogram memory 1, a pipeline register 2, an address sequencer 3, a mapping array 4, a multiplexer 5 for selecting a branch condition, a multiplexer 6 for selecting a branch address,
Arithmetic unit 7, address buffer 8, random access memory (hereinafter abbreviated as RAM) 9, register group 10, M counter 11 and N counter 12, and latch 13
A programmable logic array (hereinafter abbreviated as RLA) 14 and an image memory 15 constitute a main part thereof.

マイクロプログラムメモリ1は、複数のマイクロ命令か
らなるマイクロプログラムを格納するメモリである。例
えば、マイクロプログラムの1つとして第4図に示すよ
うなマイクロプログラムを格納している。
The micro program memory 1 is a memory that stores a micro program including a plurality of micro instructions. For example, a microprogram as shown in FIG. 4 is stored as one of the microprograms.

パイプラインレジスタ2は、マイクロプログラムメモリ
1の出力側に接続されていて、シーケンスクロックSE
(第3図(a)参照)に応じてアドレスシーケンサ3によ
り生成されたマイクロプログラムアドレスのマイクロ命
令20(第2図参照)をマイクロプログラムメモリ1から
読み出して、マイクロ命令20のオペレーションフィール
ド21,アドレスフィールド22およびカウンタフィールド2
3に対応させて格納するようになっている。パイプライ
ンレジスタ2の出力は、オペレーションフィールド21に
対応するオペレーションバス2aが分岐条件を選択するマ
ルチプレクサ5および演算ユニット7に接続され、アド
レスフィールド22に対応するアドレスバス2bが分岐アド
レスを選択するマルチプレクサ6に接続され、レジスタ
フィールド23に対応するオペランドバス2cがPLA14に接
続されている。
The pipeline register 2 is connected to the output side of the microprogram memory 1 and has a sequence clock SE.
The microinstruction 20 (see FIG. 2) of the microprogram address generated by the address sequencer 3 according to (see FIG. 3 (a)) is read from the microprogram memory 1 and the operation field 21 and address of the microinstruction 20 are read. Field 22 and counter field 2
It is designed to store in correspondence with 3. The output of the pipeline register 2 is connected to the multiplexer 5 and the arithmetic unit 7 for selecting the branch condition by the operation bus 2a corresponding to the operation field 21, and the multiplexer 6 for selecting the branch address by the address bus 2b corresponding to the address field 22. And the operand bus 2c corresponding to the register field 23 is connected to the PLA 14.

アドレスシーケンサ3は、マッピングアレイ4から供給
されたマイクロプログラムの開始アドレスをシーケンス
クロックSEに応じてカウントアップしてマイクロプログ
ラムアドレスを生成し、生成されたマイクロプログラム
アドレスをマイクロプログラムメモリ1に与える。な
お、アドレスシーケンサ3は、分岐条件を選択するマル
チプレクサ5の出力に応じて分岐アドレスを選択するマ
ルチプレクサ6からの分岐アドレスを選択するようにも
なっている。
The address sequencer 3 counts up the start address of the microprogram supplied from the mapping array 4 according to the sequence clock SE to generate a microprogram address, and supplies the generated microprogram address to the microprogram memory 1. The address sequencer 3 also selects the branch address from the multiplexer 6 that selects the branch address according to the output of the multiplexer 5 that selects the branch condition.

マッピングアレイ4は、与えられたマイクロインストラ
クションから対応するマイクロプログラムの開始アドレ
スを生成し、アドレスシーケンサ3に供給する。
The mapping array 4 generates the start address of the corresponding microprogram from the given microinstruction and supplies it to the address sequencer 3.

演算ユニット7は、パイプラインレジスタ2に格納され
たマイクロ命令20のオペレーションフィールド21で指定
されたオペレーションに応じて動作するユニットであ
る。演算ユニット7は、ソース端子Sがソースバス7a
に、リファレンス端子Rがリファレンスバス7bに、ディ
ティネーション端子Dがディティネーションバス7cにそ
れぞれ接続されている。また、オペレーション端子がオ
ペレーションバス2aを介してパイプラインレジスタ2
に、ステータス端子がラッチ13にそれぞれ接続されてい
る。
The arithmetic unit 7 is a unit that operates according to the operation designated by the operation field 21 of the microinstruction 20 stored in the pipeline register 2. In the arithmetic unit 7, the source terminal S is the source bus 7a.
The reference terminal R is connected to the reference bus 7b, and the destination terminal D is connected to the destination bus 7c. In addition, the operation terminal has a pipeline register 2 via the operation bus 2a.
The status terminals are connected to the latch 13.

アドレスバッファ8は、分岐アドレスを選択するマルチ
プレクサ6から出力されるアドレスまたは値を格納する
バッファであり、その出力は演算ユニット7のソースバ
ス7aおよびリファレンスバス7bに接続されている。
The address buffer 8 is a buffer that stores an address or a value output from the multiplexer 6 that selects a branch address, and its output is connected to the source bus 7a and the reference bus 7b of the arithmetic unit 7.

RAM9は、演算ユニット7のソースバス7a,リファレンス
バス7bおよびディスティネーションバス7cに接続されて
いて、ライトイネーブルクロックWE(第3図(a)参照)
に応じて演算ユニット7,Mカウンタ11またはNカウンタ1
2からの出力を書き込んだり、ソースバス7aまたはリフ
ァレンスバス7bにデータを読み出したりするようになっ
ている。
The RAM 9 is connected to the source bus 7a, the reference bus 7b and the destination bus 7c of the arithmetic unit 7 and has a write enable clock WE (see FIG. 3 (a)).
Depending on the calculation unit 7, M counter 11 or N counter 1
The output from 2 is written and the data is read to the source bus 7a or the reference bus 7b.

レジスタ群10は、演算ユニット7のソースバス7a,リフ
ァレンスバス7bおよびディスティネーションバス7cに接
続されているとともに画像メモリ15に接続されており、
ライトネーブルクロックWEに応じて演算ユニット7の出
力または画像メモリ15のデータを入出力するようになっ
ている。
The register group 10 is connected to the source bus 7a, the reference bus 7b and the destination bus 7c of the arithmetic unit 7 and also to the image memory 15,
The output of the arithmetic unit 7 or the data of the image memory 15 is input / output according to the write enable clock WE.

Mカウンタ11およびNカウンタ12は、通常のカウンタで
構成されているが、後に詳述するようにマイクロ命令20
のレジスタフィールド23でMおよびNのいずれか一方ま
たは双方が指定されるとロード動作,カウントアップ動
作またはカウントダウン動作を実行することになるの
で、便宜的にMカウンタおよびNカウンタと呼ばれる。
これらMカウンタ11およびNカウンタ12は、演算ユニッ
ト7のソースバス7a,リファレンスバス7bおよびディス
ティネーションバス7cに接続されていて演算ユニット7
の出力をロードできるとともに、PLA14に接続されてい
てこのPLA14からのロード信号,カウントアップ信号ま
たはカウントダウン信号に基づいてMカウンタ11および
Nカウンタ12のいずれか一方または双方がロード動作,
カウントアップ動作またはカウントダウン動作するよう
になっている。また、Mカウンタ11およびNカウンタ12
の出力は、分岐アドレスを選択するマルチプレクサ6お
よびRAM9に接続されている。
Although the M counter 11 and the N counter 12 are composed of ordinary counters, as will be described later in detail, the micro instruction 20
If either or both of M and N are designated in the register field 23 of the above, a load operation, a count-up operation or a count-down operation will be executed, so that they are called M counter and N counter for convenience.
These M counter 11 and N counter 12 are connected to the source bus 7a, the reference bus 7b and the destination bus 7c of the arithmetic unit 7 and
Of the M counter 11 and the N counter 12 or both of them can be loaded based on the load signal, count up signal or count down signal from the PLA 14
It is designed to count up or count down. In addition, M counter 11 and N counter 12
Is connected to the multiplexer 6 for selecting the branch address and the RAM 9.

ラッチ13は、演算ユニット7のステータス端子に接続さ
れていてライトイネーブルクロックWEに応じて演算ユニ
ット7のステータスをラッチする。このラッチ13の出力
は、分岐条件を選択するマルチプレクサ5に接続されて
いる。
The latch 13 is connected to the status terminal of the arithmetic unit 7 and latches the status of the arithmetic unit 7 according to the write enable clock WE. The output of this latch 13 is connected to a multiplexer 5 which selects a branch condition.

PLA14は、パイプラインレジスタ2のレジスタフィール
ド2cに対応するオペランドパス2cに接続されていて、マ
イクロ命令20のレジスタフィールド23で指定されたMカ
ウンタ11およびNカウンタ12のいずれか一方または双方
を、ライトイネーブルクロックWEに応じてロード動作さ
せ、またカウントクロックCNT(第3図(b)参照)に応じ
てカウントアップ動作またはカウントダウン動作させる
ようになっている。
The PLA 14 is connected to the operand path 2c corresponding to the register field 2c of the pipeline register 2 and writes one or both of the M counter 11 and the N counter 12 specified by the register field 23 of the microinstruction 20. The load operation is performed according to the enable clock WE, and the count up operation or the count down operation is performed according to the count clock CNT (see FIG. 3B).

画像メモリ15は、レジスタ群10を経由して画像データを
入出力するメモリである。
The image memory 15 is a memory for inputting and outputting image data via the register group 10.

第2図を参照すると、本実施例のマイクロプログラム制
御装置で使用されるマイクロ命令20は、オペレーション
フィールド21と、アドレスフィールド22と、レジスタフ
ィールド23とから構成されている。オペレーションフィ
ールド21では演算ユニット7のファンクションや分岐な
どのオペレーションが指定され、アドレスフィールド22
では分岐アドレスや値等が指定され、レジスタフィール
ド23ではソースバス7a,リファレンスバス7bおよびディ
スティネーションバス7cに接続されているRAM9,レジス
タ群10,Mカウンタ11およびNカウンタ12等が指定され
る。
Referring to FIG. 2, the microinstruction 20 used in the microprogram controller of the present embodiment comprises an operation field 21, an address field 22 and a register field 23. In the operation field 21, an operation such as a function or branch of the arithmetic unit 7 is specified, and the address field 22
In the register field 23, the RAM 9 connected to the source bus 7a, the reference bus 7b and the destination bus 7c, the register group 10, the M counter 11 and the N counter 12 are designated.

ところで、本実施例のマイクロプログラム制御装置で使
用されるマイクロ命令20で特徴的なことは、アドレスフ
ィールド22ばかりでなくレジスタフィールド23でMおよ
びNのいずれか一方または双方を指定することによりM
カウンタ11およびNカウンタ12のいずれか一方または双
方を指定できるとともに、さらにはレジスタフィールド
23でM+,N+,M−,N−,MN+,MN−,NM+またはNM−と指
定することによりMカウンタ11およびNカウンタ12のい
ずれか一方または双方のカウントアップ動作またはカウ
ントダウン動作を同時に指定できるようになっているこ
とである。
By the way, a characteristic of the microinstruction 20 used in the microprogram control device of the present embodiment is that M or N is specified not only in the address field 22 but also in the register field 23, or both are specified.
Either or both of the counter 11 and the N counter 12 can be designated, and further, the register field
By specifying 23 as M +, N +, M-, N-, MN +, MN-, NM + or NM-, it is possible to specify the count-up operation or count-down operation of either or both of M counter 11 and N counter 12 at the same time. That's what it looks like.

詳しくは、M+,N+,M−またはN−と指定することによ
り、指定されたMカウンタ11またはNカウンタ12がカウ
ント値をカウントアップまたはカウントダウンさせてソ
ースバス7aまたはリファレンスバス7bに出力させること
ができる。また、MN+,MN−,NM+またはNM−と指定する
ことにより、Mカウンタ11とNカウンタ12とが同時にカ
ウント値をカウントアップまたはカウントダウンさせ
て、先頭に指定された方のカウンタのカウント値をソー
スバス7aまたはリファレンスバス7bに出力させることが
できる。
Specifically, by designating as M +, N +, M- or N-, the designated M counter 11 or N counter 12 can count up or down the count value and output it to the source bus 7a or the reference bus 7b. it can. Also, by designating as MN +, MN-, NM + or NM-, the M counter 11 and the N counter 12 simultaneously count up or count down, and the count value of the counter designated first is sourced. It can be output to the bus 7a or the reference bus 7b.

また、本実施例のマイクロプログラム制御装置では、例
えば第3図(a)および(b)に示すように、1サイクルが20
0nsに設定されており、1サイクル内の先頭60nsがシー
ケンスクロックSEとされ、1サイクル内の120〜180nsが
ライトイネーブルクロックWEとされている。また、カウ
ントクロックCNTが、シーケンスクロックSEの後半20ns
と対応するように設定されている。
Further, in the microprogram control device of the present embodiment, as shown in, for example, FIGS.
It is set to 0 ns, and the first 60 ns in one cycle is the sequence clock SE, and 120 to 180 ns in one cycle is the write enable clock WE. Also, the count clock CNT is the latter half 20ns of the sequence clock SE.
Is set to correspond to.

次に、このように構成された本実施例のマイクロプログ
ラム制御装置の動作について説明する。
Next, the operation of the microprogram controller of the present embodiment having such a configuration will be described.

なお、ここでは、第4図に示すマイクロプログラムを一
例にとって説明する。
Note that the microprogram shown in FIG. 4 will be described here as an example.

マイクロプログラムを指定するマイクロインストラクシ
ョンが入力されると、マッピングアレイ4はマイクロイ
ンストラクションに対応するマイクロプログラムの開始
アドレスを出力する。
When a microinstruction designating a microprogram is input, the mapping array 4 outputs the start address of the microprogram corresponding to the microinstruction.

マッピングアレイ4からマイクロプログラムの開始アド
レスを入力したアドレスシーケンサ3は、シーケンスク
ロックSEに同期してこの開始アドレスをマイクロプログ
ラムメモリ1に与える。これと同時に、シーケンスクロ
ックSEに同期したマイクロプログラムメモリ1から開始
アドレスに格納されているマイクロプログラムの第1ス
テップのマイクロ命令(CLR N)がパイプラインレジ
スタ2に読み出される。
The address sequencer 3 which receives the start address of the microprogram from the mapping array 4 gives this start address to the microprogram memory 1 in synchronization with the sequence clock SE. At the same time, the micro instruction (CLRN) of the first step of the micro program stored at the start address is read from the micro program memory 1 synchronized with the sequence clock SE to the pipeline register 2.

次に、演算ユニット7は、第1ステップのマイクロ命令
20のオペレーションフィールド21で指定されたオペレー
ションを実行する。この結果、Nカウンタ12がゼロクリ
アされる。
Next, the arithmetic unit 7 uses the micro instruction of the first step.
Performs the operation specified in the operation field 21 of 20. As a result, the N counter 12 is cleared to zero.

マイクロプログラムの第1ステップの実行が終了する
と、アドレスシーケンサ3がシーケンスクロックSEに応
じてカウントアップされることによりマイクロプログラ
ムメモリ1に与えられるアドレスがインクリメントされ
る。これにより、第2ステップ以降のマイクロ命令20が
順次実行される。第3ステップのマイクロ命令(MEMR
D)および第4ステップのマイクロ命令(MOVE MEMREG,
RAM−M)では、画像メモリ15のデータがレジスタ群10
中のレジスタを介してRAM9の21番地に転送される。
When the execution of the first step of the microprogram is completed, the address sequencer 3 counts up according to the sequence clock SE, and the address given to the microprogram memory 1 is incremented. As a result, the micro-instructions 20 after the second step are sequentially executed. Third step microinstruction (MEMR
D) and the fourth step microinstruction (MOVE MEMREG,
In RAM-M), the data in the image memory 15 is stored in the register group 10
It is transferred to address 21 of RAM9 via the register inside.

パイプラインレジスタ2に第5ステップのマイクロ命令
(COMP NM+,$4)が読み出されると、レジスタフィ
ールド23の指定(NM+)に従いカウントクロックCNTに
応じてMカウンタ11およびNカウンタ12がそれぞれ+1
だけカウントアップされ、かつNカウンタ12のカウント
アップ出力(値“1")がリファレンスバス7bに出力され
る。また、アドレスフィールド22の指定に従いアドレス
バッファ8に値“4"が格納され、この値“4"がソースバ
ス7aに出力される。
When the fifth step microinstruction (COMP NM +, $ 4) is read to the pipeline register 2, the M counter 11 and the N counter 12 are respectively incremented by +1 according to the count clock CNT according to the designation (NM +) in the register field 23.
Only, and the count-up output (value "1") of the N counter 12 is output to the reference bus 7b. Further, the value "4" is stored in the address buffer 8 according to the designation in the address field 22, and this value "4" is output to the source bus 7a.

したがって、演算ユニット7は、マイクロ命令20のオペ
レーションフィールド21で指定された比較(COMP)をソ
ースバス7aの値“4"とリファレンスバス7bの値“1"とに
対して実行する。
Therefore, the arithmetic unit 7 executes the comparison (COMP) specified in the operation field 21 of the microinstruction 20 with respect to the value "4" of the source bus 7a and the value "1" of the reference bus 7b.

第5ステップのマイクロ命令20の初回の通過時には、演
算ユニット7のソース端子Sの値“4"の方がリファレン
ス端子Rの値“1"より小さく差が負となるので、演算ユ
ニット7はその旨のステータスを出力し、このステータ
スはライトイネーブルクロックWEに応じてラッチ13にラ
ッチされる。
At the first passage of the micro-instruction 20 in the fifth step, the value “4” at the source terminal S of the arithmetic unit 7 is smaller than the value “1” at the reference terminal R, and the difference becomes negative. A status to that effect is output, and this status is latched in the latch 13 in response to the write enable clock WE.

このため、次の第6ステップのマイクロ命令(JLT *A
A)の実行時に分岐条件を選択するマルチプレクサ5に
より分岐アドレス(*AA)が選択されて、制御が第3ス
テップに戻る。これにより、同様の処理が繰り返され
る。
Therefore, the next 6th step microinstruction (JLT * A
The branch address (* AA) is selected by the multiplexer 5 which selects the branch condition at the time of execution of A), and the control returns to the third step. As a result, similar processing is repeated.

このようにして第3〜第6ステップのマイクロ命令20が
繰り返し実行されると、第5ステップのマイクロ命令20
の4回目のループ時にリファレンスバス7bに出力される
Nカウンタ12のカウントアップ出力が値“4"となり、ラ
ッチ13に差が負である旨のステータスがラッチされなく
なる。この結果、第6ステップのマイクロ命令20の実行
時に分岐条件を選択するマルチプレクサ5が動作せず、
第3ステップのマイクロ命令20に制御が戻らずに第7ス
テップのマイクロ命令(NEXT)に移行して、マイクロイ
ンストラクションで指定されたマイクロプログラムの処
理が終了される。
When the microinstructions 20 in the third to sixth steps are repeatedly executed in this way, the microinstructions 20 in the fifth step are executed.
In the fourth loop of, the count-up output of the N counter 12 output to the reference bus 7b becomes the value "4", and the latch 13 does not latch the status indicating that the difference is negative. As a result, the multiplexer 5 that selects the branch condition does not operate when the micro instruction 20 of the sixth step is executed,
The control is not returned to the microinstruction 20 in the third step, the process moves to the microinstruction (NEXT) in the seventh step, and the processing of the microprogram designated by the microinstruction is ended.

このように本実施例のマイクロプログラム制御装置で
は、Mカウンタ11およびNカウンタ12のロード,カウン
トアップまたはカウントダウンと他のオペレーション、
例えば比較とが1マイクロプログラムステップで実行で
きる。したがって、第4図に示した本実施例のマイクロ
プログラム制御装置によるマイクロ命令を使用したマイ
クロプログラムを、全く同様の処理を行う第5図に示す
従来のマイクロプログラム制御装置によるマイクロ命令
を使用したマイクロプログラムと比較すると、第5図中
に実線で囲んだ2ステップ分を短縮することができ、こ
の分マイクロプログラムの実行時間を短くすることがで
きる。
Thus, in the microprogram controller of the present embodiment, loading, counting up or counting down of the M counter 11 and the N counter 12 and other operations,
For example, comparison can be performed in one microprogram step. Therefore, the microprogram using the microinstruction by the microprogram controller of the present embodiment shown in FIG. 4 performs the same processing as the microprogram by the conventional microprogram controller shown in FIG. Compared to the program, the two steps surrounded by the solid line in FIG. 5 can be shortened, and the execution time of the microprogram can be shortened accordingly.

〔発明の効果〕〔The invention's effect〕

以上説明したように本発明は、カウンタのロード,カウ
ントアップおよびカウントダウンの指示をマイクロ命令
のオペレーションを指定するフィールドばかりではなく
レジスタを指定するフィールドで行うことができるよう
にしたことにより、カウンタのロード,カウントアップ
(インクリメント)またはカウントダウン(デイクリメ
ント)と他のオペレーション、例えば比較とを1マイク
ロプログラムステップで実行でき、マイクロプログラム
のステップ数の短縮が可能となって画像データ等の処理
速度の向上を図ることができるという効果がある。
As described above, according to the present invention, the instruction for loading, counting up, and counting down the counter can be performed not only in the field for designating the operation of the microinstruction but also in the field for designating the register. , Count-up (increment) or count-down (decrement) and other operations such as comparison can be executed in one microprogram step, and the number of microprogram steps can be shortened to improve the processing speed of image data and the like. The effect is that it can be achieved.

また、複数のカウンタを同時にロード,カウントアップ
またはカウントダウンできるようにしたことにより、さ
らにマイクロプログラムのステップ数の短縮が可能とな
り、より一層の画像データ等の処理速度の向上を図るこ
とができるという効果がある。
Further, by enabling a plurality of counters to be loaded, counted up, or counted down at the same time, the number of steps of the microprogram can be further shortened, and the processing speed of image data and the like can be further improved. There is.

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

第1図は本発明の一実施例の構成を示すブロック図、 第2図は本実施例のマイクロプログラム制御装置で使用
するマイクロ命令の構成を示す図、 第3図(a)および(b)は本実施例のマイクロプログラム制
御装置における各種クロックをそれぞれ示すタイミング
チャート、 第4図は本実施例のマイクロプログラム制御装置で実行
されるマイクロプログラムの一例を示す図、 第5図は第4図に示したマイクロプログラムと全く同様
の処理を行う従来のマイクロプログラムの一例を示す図
である。 図において、 1……マイクロプログラムメモリ、 2……パイプラインレジスタ、 3……アドレスシーケンサ、 4……マッピングアレイ、 5……分岐条件を選択するマルチプレクサ、 6……分岐アドレスを選択するマルチプレクサ、 7……演算ユニット、 7a……ソースバス、 7b……リファレンスバス、 7c……ディスティネーションバス、 8……アドレスバッファ、 9……ランダムアクセスメモリ、 10……レジスタ群、 11……Mカウンタ、 12……Nカウンタ、 13……ラッチ、 14……プログラマブルロジックアレイ、 15……画像メモリ、 20……マイクロ命令、 21……オペレーションフィールド、 22……アドレスフィールド、 23……レジスタフィールドである。
FIG. 1 is a block diagram showing the configuration of an embodiment of the present invention, FIG. 2 is a diagram showing the configuration of microinstructions used in the microprogram controller of the present embodiment, and FIGS. 3 (a) and 3 (b). Are timing charts showing various clocks in the micro program controller of the present embodiment, FIG. 4 is a diagram showing an example of a micro program executed by the micro program controller of the present embodiment, and FIG. 5 is shown in FIG. It is a figure which shows an example of the conventional microprogram which performs the completely same process as the shown microprogram. In the figure, 1 ... Microprogram memory, 2 ... Pipeline register, 3 ... Address sequencer, 4 ... Mapping array, 5 ... Multiplexer for selecting branch condition, 6 ... Multiplexer for selecting branch address, 7 ...... Arithmetic unit, 7a Source bus, 7b Reference bus, 7c Destination bus, 8 Address buffer, 9 Random access memory, 10 Registers, 11 M counter, 12 ... N counter, 13 latch, 14 programmable logic array, 15 image memory, 20 micro instruction, 21 operation field, 22 address field, 23 register field.

Claims (1)

【特許請求の範囲】[Claims] 【請求項1】複数のマイクロ命令からなるマイクロプロ
グラムを格納するマイクロプログラムメモリと、 マイクロプログラムアドレスを生成して前記マイクロプ
ログラムメモリに与えるアドレスシーケンサと、 前記マイクロプログラムメモリの前記マイクロプログラ
ムアドレスから読み出されたマイクロ命令を少なくとも
オペレーションフィールド,アドレスフィールドおよび
レジスタフィールドに対応させて格納するパイプライン
レジスタと、 前記マイクロ命令のオペレーションフィールドで指定さ
れたオペレーションに従って動作する演算ユニットと、 この演算ユニットのソースバス,リファレンスバスおよ
びディスティネーションバスに接続されたランダムアク
セスメモリおよびレジスタ群と、 前記ソースバス,リファレンスバスおよびディスティネ
ーションバスに接続されマイクロ命令のレジスタフィー
ルドで指定されたロード指示,カウントアップ指示およ
びカウントダウン指示に従ってロード動作,カウントア
ップ動作およびカウントダウン動作を行う1つ以上のカ
ウンタと、 を有することを特徴とするマイクロプログラム制御装
置。
1. A microprogram memory for storing a microprogram composed of a plurality of microinstructions, an address sequencer for generating a microprogram address and giving it to the microprogram memory, and reading from the microprogram address of the microprogram memory. A pipeline register that stores the generated microinstruction in association with at least an operation field, an address field, and a register field, an arithmetic unit that operates according to the operation specified in the operation field of the microinstruction, and a source bus of this arithmetic unit, Random access memory and register group connected to the reference bus and destination bus, and the source bus and reference bus And one or more counters connected to the destination bus and performing a load operation, a count-up operation and a count-down operation in accordance with a load instruction, a count-up instruction and a count-down instruction designated by a register field of the microinstruction. Micro program control device.
JP4216387A 1987-02-24 1987-02-24 Micro program controller Expired - Lifetime JPH0677232B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP4216387A JPH0677232B2 (en) 1987-02-24 1987-02-24 Micro program controller

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP4216387A JPH0677232B2 (en) 1987-02-24 1987-02-24 Micro program controller

Publications (2)

Publication Number Publication Date
JPS63208124A JPS63208124A (en) 1988-08-29
JPH0677232B2 true JPH0677232B2 (en) 1994-09-28

Family

ID=12628292

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4216387A Expired - Lifetime JPH0677232B2 (en) 1987-02-24 1987-02-24 Micro program controller

Country Status (1)

Country Link
JP (1) JPH0677232B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10328720B2 (en) 2009-09-11 2019-06-25 Seiko Epson Corporation Recording method

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10328720B2 (en) 2009-09-11 2019-06-25 Seiko Epson Corporation Recording method

Also Published As

Publication number Publication date
JPS63208124A (en) 1988-08-29

Similar Documents

Publication Publication Date Title
US4298936A (en) Array Processor
JP3954171B2 (en) How to fill a vector with scalar values on a computer
US3775756A (en) Programmable special purpose processor having simultaneous execution and instruction and data access
JPH077385B2 (en) Data processing device
JP3188467B2 (en) Minimum / maximum value search device
US5276822A (en) System with enhanced execution of address-conflicting instructions using immediate data latch for holding immediate data of a preceding instruction
JP2752076B2 (en) Programmable controller
JPH0677232B2 (en) Micro program controller
JP3821198B2 (en) Signal processing device
JPH01500065A (en) Apparatus and method for microprogram information processing system with multiple control stores
JPH0640337B2 (en) Pipeline arithmetic unit
JP2654451B2 (en) Data output method
JPH05143447A (en) Digital processor and control method for the processor
JPH01273132A (en) Microprocessor
JPS58158745A (en) Pipeline control type information processing device
JP2982129B2 (en) Micro program controller
JP3117214B2 (en) Sequencer microprogram control method
JPS6221129B2 (en)
JPS58213352A (en) Data processor
JPH0575985B2 (en)
JP3488815B2 (en) Address storage circuit
JP2806459B2 (en) A logic simulation device that can evaluate flip-flops
JPS6368924A (en) System for controlling data processing of microprocessor
JPS6133721Y2 (en)
JPS593647A (en) Data processing system