JPH05204640A - Microprogram control processor - Google Patents

Microprogram control processor

Info

Publication number
JPH05204640A
JPH05204640A JP1300292A JP1300292A JPH05204640A JP H05204640 A JPH05204640 A JP H05204640A JP 1300292 A JP1300292 A JP 1300292A JP 1300292 A JP1300292 A JP 1300292A JP H05204640 A JPH05204640 A JP H05204640A
Authority
JP
Japan
Prior art keywords
instruction
processing
pipeline
circuits
delay
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
JP1300292A
Other languages
Japanese (ja)
Inventor
Kazukuni Kitagaki
和邦 北垣
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.)
Toshiba Corp
Original Assignee
Toshiba 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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP1300292A priority Critical patent/JPH05204640A/en
Publication of JPH05204640A publication Critical patent/JPH05204640A/en
Pending legal-status Critical Current

Links

Landscapes

  • Advance Control (AREA)

Abstract

PURPOSE:To make it possible to write a program without being conscious of differences in the starting timing of respective operation pipelines and to effectively execute loop instructions by the repeating processing of simple operation. CONSTITUTION:This microprogram control processor is constituted of arithmetic processing circuits 15 to 17 for executing pipeline operations having respectively different starting timing, a horizontal microinstruction register 2 in which instructions relating to the pipeline operations to be executed by respective circuits 15 to 17 are dividedly set up in respective instruction fields 3 to 5, plural delay circuits 6 to 8 connected correspondingly to respective fields 3 to 5 and delaying the starting timing of pipeline operation to be executed by respective circuits 15 to 17, and plural setting registers 9 to 11 connected to respective delay circuits 6 to 8 to previously set up a delay variable corresponding to the starting timing.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【産業上の利用分野】本発明はパイプライン処理される
マイクロプログラム制御プロセッサに関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a pipelined microprogram control processor.

【0002】[0002]

【従来の技術】近年、デジタル信号処理で多く現れる積
和演算などを高速で実行するデジタル信号処理装置(以
下DSP/Digital Signal Proce
ssorという。)が使われている。画像信号を扱う分
野においても、画像信号を単一で処理することができる
画像信号処理用DSP(画像信号処理装置)が普及して
きている。
2. Description of the Related Art In recent years, a digital signal processing device (hereinafter referred to as a DSP / Digital Signal Proce) that executes at high speed the multiply-accumulate operation that often appears in digital signal processing.
It's called sosor. ) Is used. Also in the field of handling image signals, image signal processing DSPs (image signal processing devices) capable of processing image signals singly have become widespread.

【0003】図4は、画像処理用DSPの構成を示すブ
ロック図である。このDSP41には、データ演算専用
の演算部42とアドレス計算専用のアドレス生成ユニッ
ト(以下AGU/Address Generatio
n Unitという)が備わっている。
FIG. 4 is a block diagram showing the structure of an image processing DSP. The DSP 41 includes an arithmetic unit 42 dedicated to data calculation and an address generation unit (hereinafter AGU / Address Generatio) dedicated to address calculation.
n Unit).

【0004】命令メモリ44に格納されている水平型マ
イクロ命令あるいは垂直型マイクロ命令に従い、制御部
45はAGU43a〜43c、演算部42、およびレジ
スタ46を制御する。AGU43a〜43cは、処理プ
ログラムに従って外部メモリ47a〜47cのアドレス
を計算し、外部メモリ47a〜47cに供給する。外部
メモリ47a〜47cに蓄えられている、そのアドレス
のデータはレジスタ46に一時保持される。あるいは、
演算部42に入力され、そのデータに対してプログラム
で指定された計算が行われる。
The control unit 45 controls the AGUs 43a to 43c, the arithmetic unit 42, and the register 46 in accordance with the horizontal micro instruction or the vertical micro instruction stored in the instruction memory 44. The AGUs 43a to 43c calculate the addresses of the external memories 47a to 47c according to the processing program and supply the addresses to the external memories 47a to 47c. The data of the address stored in the external memories 47a to 47c is temporarily held in the register 46. Alternatively,
The calculation is input to the calculation unit 42, and the calculation specified by the program is performed on the data.

【0005】ここで、AGU43a〜43cでのアドレ
ス計算と、演算部42でのデータに対する演算とは並列
またはパイプラインで実行されている。
Here, the address calculation in the AGUs 43a to 43c and the calculation on the data in the calculation unit 42 are executed in parallel or in a pipeline.

【0006】デジタル信号処理装置など、マイクロプロ
グラムで制御されるプロセッサの高速化の手段として、
従来からパイプラインの手法が用いられている。パイプ
ラインの構造では命令の発行と実行の時刻が異なるた
め、プログラムを書くときにも、そのことを意識してお
かなければならない。
As means for increasing the speed of a processor controlled by a microprogram such as a digital signal processing device,
Conventionally, a pipeline method has been used. In the pipeline structure, instruction issuance and execution time are different, so it is necessary to be aware of that when writing a program.

【0007】LSIの進歩に伴い、AGU43a〜43
cのような複数の処理回路を1チップに内蔵し、それら
を並列に動作させることが可能になっている。このよう
なマイクロプログラム制御プロセッサでは、それぞれの
処理回路をレジスタを介して接続し、処理自体をパイプ
ライン化させている。
With the progress of LSI, AGUs 43a to 43
It is possible to incorporate a plurality of processing circuits such as c into one chip and operate them in parallel. In such a micro program control processor, each processing circuit is connected via a register, and the processing itself is pipelined.

【0008】このようなマイクロプログラム制御プロセ
ッサでは、一つの処理回路の命令の発行と実行の時間差
だけでなく、複数の処理回路間の実行タイミングの違い
を考慮にいれてプログラムを書かなければならない。
In such a micro program control processor, a program must be written taking into consideration not only the time difference between the issuance and execution of an instruction of one processing circuit, but also the difference in execution timing among a plurality of processing circuits.

【0009】パイプライン動作を図5を用いて説明す
る。図5(a)に示すような、一つのAGUに相当する
3段パイプラインのプロセッサを仮定する。このプロセ
ッサは、レジスタ51〜53と処理回路A,B,C(5
4〜56)とから構成されている。図5(b)にこのプ
ロセッサのタイミングチャートを示す。
The pipeline operation will be described with reference to FIG. Assume a 3-stage pipeline processor corresponding to one AGU as shown in FIG. This processor includes registers 51 to 53 and processing circuits A, B, C (5
4 to 56). FIG. 5B shows a timing chart of this processor.

【0010】図に示すように、順次d1,d2,d3,
d4といったデータが入力されている。時刻1では、処
理回路Aでd1のデータに対し、fa1という処理を行
い、処理回路B,Cでは処理を行っていない。時刻2で
は、処理回路Aでd2のデータに対し、fa2という処理
を行い、処理回路Bでd1のデータに対し、fb1という
処理を行い、処理回路Cでは処理を行っていない。
As shown in the figure, d1, d2, d3 are sequentially
Data such as d4 has been input. At time 1, the processing circuit A processes the data of d1 as f a1 , and the processing circuits B and C do not process it. At time 2, the processing circuit A performs the processing f a2 on the data d2, the processing circuit B performs the processing f b1 on the data d1, and the processing circuit C does not perform the processing.

【0011】さらに、時刻3では、処理回路Aでd3の
データに対し、fa3という処理を行い、処理回路Bでd
2のデータに対し、fb2という処理を行い、処理回路D
でd1のデータに対し、fc1という処理を行う。時刻4
では、処理回路Aでd4のデータに対し、fa4という処
理を行い、処理回路Bでd3のデータに対し、fb3とい
う処理を行い、処理回路Cでd2のデータに対し、fc2
という処理を行う。
Further, at time 3, the processing circuit A performs a process called f a3 on the data of d3, and the processing circuit B performs d3.
The processing circuit D performs the processing of f b2 on the data of 2.
Then, the process of f c1 is performed on the data of d1. Time 4
Then, the processing circuit A performs the processing f a4 on the data d4, the processing circuit B performs the processing f b3 on the data d3, and the processing circuit C performs the processing f c2 on the data d2.
Is performed.

【0012】ここで、一つのデータ、例えばd2に注目
すると、同じデータd2に施す処理、fa2,fb2,fc2
の実行のタイミングは1クロックづつずれることにな
る。このようなパイプライン処理のことをふつう演算パ
イプラインという。一連のデータd1,d2,d3……
に対する処理、(例えば、fa1,fa2,fa3,fa4…)
がすべて同じである場合には、パイプラインが詰まった
後、すなわち時刻3より以後はループ命令によって
a1,fb1,fc1の処理を繰り返し行えばよく、プログ
ラミングの際に実行タイミングのズレを考慮にいれる必
要はない。
Here, paying attention to one data, for example, d2, the processing performed on the same data d2, f a2 , f b2 , and f c2
The execution timing of is shifted by one clock. Such pipeline processing is generally called an arithmetic pipeline. A series of data d1, d2, d3 ...
Processing (for example, f a1 , f a2 , f a3 , f a4 ...)
If all are the same, after the pipeline is clogged, that is, after time 3, it is sufficient to repeat the processing of f a1 , f b1 , and f c1 by the loop instruction, and the execution timing shift during programming. It doesn't have to be taken into consideration.

【0013】最近では、LSIの集積度はますます高く
なり、演算パイプラインを複数設定できるプロセッサを
内蔵できるようになっている。ところが、演算パイプラ
インが複数設定されると、各演算パイプラインはループ
命令などにより繰り返し演算処理ができても、各演算パ
イプラインの起動タイミングが異なると命令全体では規
則性が崩れ、ループ命令などによる繰り返し演算処理が
有効に使えない。
In recent years, the degree of integration of LSI has become higher and higher, and a processor capable of setting a plurality of arithmetic pipelines can be built in. However, if a plurality of arithmetic pipelines are set, even if each arithmetic pipeline can repeatedly perform arithmetic operations by a loop instruction, etc., if the activation timing of each arithmetic pipeline is different, the regularity of the entire instruction will collapse, and loop instructions, etc. The repeated calculation processing by cannot be used effectively.

【0014】図6を用いてその説明を行う。複数設定さ
れた演算パイプラインをそれぞれA,B,Cとする。演
算パイプラインAでは処理aが、演算パイプラインBで
は処理bが、演算パイプラインCでは処理cが繰り返え
されているとする。
This will be described with reference to FIG. A plurality of arithmetic pipelines set are referred to as A, B, and C, respectively. It is assumed that the processing a is repeated in the arithmetic pipeline A, the processing b is repeated in the arithmetic pipeline B, and the processing c is repeated in the arithmetic pipeline C.

【0015】図6(a)のようにすべてのパイプライン
の起動タイミングが同一であれば、処理a、処理b、処
理cを行うプログラムを1行だけ書き、それをループ命
令で繰り返せば良い。しかし、図6(b)に示すように
各パイプラインの起動タイミングが異なっている場合に
は、タイミングの違いを補償するステップ数だけプログ
ラムが余計に必要である。
If the activation timings of all the pipelines are the same as shown in FIG. 6 (a), it is sufficient to write only one line of a program for processing a, processing b, and processing c and repeat it with a loop instruction. However, when the activation timing of each pipeline is different as shown in FIG. 6B, an extra program is required by the number of steps to compensate for the difference in timing.

【0016】すなわち、時刻1から3まではパイプライ
ンAで処理aを、パイプラインB,Cでは何もしない
(NOP)。時刻4,5ではパイプラインAで処理a
を、パイプラインBで処理bを、パイプラインCでは何
もしない(NOP)。時刻6以降はパイプラインAで処
理aが、パイプラインBで処理bが、パイプラインCで
処理cが繰り返されている。このように、時刻6以降は
ループ命令で繰り返し演算を行うことができるが、時刻
1〜5まではループ命令が有効に使えない。
That is, from time 1 to time 3, the process a is executed in the pipeline A, and nothing is executed in the pipelines B and C (NOP). Processing a in pipeline A at times 4 and 5
, Pipeline b performs processing b, and pipeline C does nothing (NOP). After time 6, the process a is repeated in the pipeline A, the process b is repeated in the pipeline B, and the process c is repeated in the pipeline C. As described above, after time 6, the loop instruction can be repeatedly used, but from time 1 to 5, the loop instruction cannot be effectively used.

【0017】[0017]

【発明が解決しようとする課題】以上のように、従来の
マイクロプログラム制御プロセッサでは、複数の演算パ
イプラインを設定した場合、各演算パイプラインの起動
タイミングが異なるためにプログラムが非常に複雑にな
る。さらに、単純な演算を繰り返すような処理でも、各
演算パイプラインの起動タイミングのズレを補償する必
要があるため、ループ命令が有効に使えず、プログラム
量が増大するという問題点があった。
As described above, in the conventional micro program control processor, when a plurality of arithmetic pipelines are set, the program becomes very complicated because the activation timing of each arithmetic pipeline is different. .. Further, even in the process of repeating a simple operation, it is necessary to compensate for the deviation of the activation timing of each operation pipeline, so that there is a problem that the loop instruction cannot be effectively used and the program amount increases.

【0018】本発明はこの点を鑑みてなされたもので、
その目的は、複数の演算パイプラインが設定された場合
でも、ループ命令を有効に使い、単純な繰り返し演算で
処理できるようにすることにより、プログラム量を削減
することができるマイクロプログラム制御プロセッサを
提供することにある。
The present invention has been made in view of this point,
The purpose of the present invention is to provide a micro program control processor that can reduce the program amount by effectively using loop instructions and enabling processing by simple repetitive operations even when multiple operation pipelines are set. To do.

【0019】[0019]

【課題を解決するための手段】上記目的を達成するた
め、本発明のマイクロプログラム制御プロセッサは、各
々が異なる起動タイミングのパイプライン動作を行う複
数の演算処理手段と、これらの演算処理手段が行うパイ
プライン動作に関する命令が設定されているマイクロ命
令と、前記各演算処理手段が行うパイプライン動作の起
動タイミングを遅延させる起動タイミング遅延手段とか
ら構成されている。
In order to achieve the above object, the microprogram control processor of the present invention has a plurality of arithmetic processing means for performing pipeline operations with different start timings, and these arithmetic processing means perform the operations. It is composed of a microinstruction in which an instruction relating to a pipeline operation is set, and an activation timing delay means for delaying the activation timing of the pipeline operation performed by each arithmetic processing means.

【0020】[0020]

【作用】以上のような構成により、本発明は、水平型マ
イクロ命令中で、起動タイミングの異なる演算パイプラ
インに関する命令毎に命令フィールドを分割し、分割し
た命令フィールドに対する起動タイミング遅延手段を設
ける。命令を実行する際には、前記起動タイミング遅延
手段により各命令フィールド毎に起動タイミングを遅延
させ、各演算パイプラインの起動タイミングの差だけ命
令の実行タイミングをずらしている。
With the above-mentioned structure, the present invention divides the instruction field for each instruction related to the operation pipeline having different activation timing in the horizontal microinstruction, and provides the activation timing delay means for the divided instruction field. When an instruction is executed, the activation timing delay means delays the activation timing for each instruction field, and shifts the instruction execution timing by the difference in the activation timing of each operation pipeline.

【0021】複数の演算パイプラインが設定された場合
に、ループ命令を有効に使い、単純な繰り返し演算で処
理できるようにし、プログラムの量を削減することがで
きる。
When a plurality of arithmetic pipelines are set, the loop instruction can be effectively used so that it can be processed by a simple repetitive operation, and the amount of programs can be reduced.

【0022】[0022]

【実施例】以下、本発明の詳細を図示の実施例によって
説明する。
The details of the present invention will be described below with reference to the illustrated embodiments.

【0023】第1実施例 図1は、本発明の第1実施例にかかるマイクロプログラ
ム制御プロセッサの概略構成を示すブロック図である。
First Embodiment FIG. 1 is a block diagram showing the schematic arrangement of a microprogram control processor according to the first embodiment of the present invention.

【0024】図1において、このプロセッサは、命令メ
モリ1と、命令レジスタ2及び命令フィールド3,4,
5と、遅延回路6,7,8と、設定レジスタ9,10,
11と、命令デコーダ12,13,14と、演算処理回
路15,16,17(図6のA,B,Cに相当)とから
構成されている。
In FIG. 1, the processor includes an instruction memory 1, an instruction register 2 and instruction fields 3, 4, 3.
5, delay circuits 6, 7, 8 and setting registers 9, 10,
11, an instruction decoder 12, 13, 14 and operation processing circuits 15, 16, 17 (corresponding to A, B, C in FIG. 6).

【0025】命令メモリ1は、マイクロ命令が書かれて
いるメモリである。命令レジスタ2内に設けられている
命令フィールド3〜5は、演算処理回路15〜17毎の
命令フィールドである。遅延回路6〜8は、命令フィー
ルド3〜5の各命令を各命令フィールド毎に遅延させる
ものある。また、設定レジスタ9〜11は、各遅延回路
6〜8の遅延量を予め設定しておくレジスタである。演
算処理回路15〜17は、それぞれが一連の演算パイプ
ライン動作を行う演算装置群である。
The instruction memory 1 is a memory in which micro instructions are written. The instruction fields 3 to 5 provided in the instruction register 2 are instruction fields for each of the arithmetic processing circuits 15 to 17. The delay circuits 6 to 8 delay each instruction in the instruction fields 3 to 5 for each instruction field. The setting registers 9 to 11 are registers for presetting the delay amounts of the delay circuits 6 to 8. The arithmetic processing circuits 15 to 17 are arithmetic device groups that perform a series of arithmetic pipeline operations.

【0026】図6(b)に示したような、起動タイミン
グの異なる3つの演算パイプラインA,B,Cが設定さ
れている場合、処理a,処理b,処理cを同時に行う1
行の命令とその命令を繰り返すループ命令が命令メモリ
1に書かれている。命令を実行する際に、遅延回路6,
7,8により各命令フィールド毎に遅延させ、各演算パ
イプラインA,B,Cの起動タイミングの差だけ命令の
実行タイミングをずらす。
When three operation pipelines A, B, and C having different start timings are set as shown in FIG. 6B, processing a, processing b, and processing c are simultaneously performed 1
A row instruction and a loop instruction that repeats the instruction are written in the instruction memory 1. When executing the instruction, the delay circuit 6,
7 and 8 delay each instruction field and shift the instruction execution timing by the difference of the activation timing of each operation pipeline A, B, C.

【0027】すなわち、処理aを行う命令はすぐに実行
され、処理bを行う命令は処理aから3クロック遅れて
実行されるように、各命令フィールド3,4に対応する
遅延回路6,7の遅延量を設定する。処理cを行なう命
令は処理aから5クロック遅れて実行されるように、命
令フィールド5に対応する遅延回路8の遅延量を設定す
る。
That is, the instruction for processing a is executed immediately, and the instruction for processing b is executed 3 clocks after the processing a, so that the delay circuits 6 and 7 corresponding to the instruction fields 3 and 4 are executed. Set the delay amount. The delay amount of the delay circuit 8 corresponding to the instruction field 5 is set so that the instruction for performing the process c is executed with a delay of 5 clocks from the process a.

【0028】各遅延回路6〜8の遅延量の設定は予め設
定レジスタ9,10,11にロードしておく。遅延回路
6,7,8でタイミングの調整をされた命令は、命令デ
コーダ12,13,14でそれぞれデコードされ、演算
処理回路15,16,17を制御する。
The setting of the delay amounts of the delay circuits 6 to 8 is loaded in the setting registers 9, 10 and 11 in advance. The instructions whose timings have been adjusted by the delay circuits 6, 7 and 8 are decoded by the instruction decoders 12, 13 and 14, respectively, and control the arithmetic processing circuits 15, 16 and 17.

【0029】このように、複数の演算パイプラインを制
御する命令毎に分割された命令フィールド3〜5につい
て、各演算パイプラインの起動タイミングの違いに応じ
て遅延を与える遅延回路6〜8を有することにより、演
算パイプラインの起動タイミングの違いを意識すること
なくプログラムを書くことができ、単純な演算を繰り返
す処理において、ループ命令が有効に行われる。
As described above, the instruction fields 3 to 5 divided for each instruction for controlling a plurality of arithmetic pipelines are provided with the delay circuits 6 to 8 for delaying according to the difference in the activation timing of each arithmetic pipeline. As a result, the program can be written without being aware of the difference in the activation timing of the operation pipeline, and the loop instruction is effectively performed in the process of repeating the simple operation.

【0030】第2実施例 第1実施例では、遅延回路の遅延量を設定するレジスタ
を1個しか持たないため、一つのプログラム中で一つの
パイプラインの起動タイミングが何回も変化する場合に
は、起動タイミングが変化するたびに設定レジスタの内
容をロード命令で書き換えなければならない。このた
め、ロード時間がかかってしまう。そこで第2実施例で
は、水平型マイクロ命令中に遅延すべき起動タイミング
の遅延量を直接記述し、それに従って遅延回路による遅
延量を決定する。
Second Embodiment In the first embodiment, since there is only one register that sets the delay amount of the delay circuit, when the activation timing of one pipeline changes many times in one program. Must rewrite the contents of the setting register with a load instruction every time the startup timing changes. Therefore, it takes a long time to load. Therefore, in the second embodiment, the delay amount of the activation timing to be delayed is directly described in the horizontal microinstruction, and the delay amount by the delay circuit is determined accordingly.

【0031】図2に第2実施例における水平型マイクロ
命令の一例を示す。21は処理aに関する命令フィール
ド、22は処理aの起動タイミングに応じた遅延量、2
3は処理bに関する命令フィールド、24は処理bの起
動タイミングに応じた遅延量、25は処理cに関する命
令フィールド、26は処理cの起動タイミングに応じた
遅延量を表す。
FIG. 2 shows an example of the horizontal microinstruction in the second embodiment. 21 is an instruction field related to the process a, 22 is a delay amount according to the activation timing of the process a, 2
3 is an instruction field related to the process b, 24 is a delay amount according to the activation timing of the process b, 25 is an instruction field related to the process c, and 26 is a delay amount according to the activation timing of the process c.

【0032】第3実施例 第2実施例では、記述する遅延量が多くなると遅延量を
表すビット数が増加し、水平型マイクロ命令のビット数
の増加につながる。そこで、起動タイミングの変化が、
ある回数以下に限定される場合には、その回数分の設定
レジスタを遅延回路に備え、水平型マイクロ命令中でそ
の設定レジスタの指定のみを行う。
Third Embodiment In the second embodiment, when the described delay amount increases, the number of bits representing the delay amount increases, which leads to an increase in the number of horizontal microinstruction bits. Therefore, the change in the startup timing is
When the number of times is limited to a certain number or less, the delay circuit is provided with the setting registers for the number of times and only the setting register is designated in the horizontal microinstruction.

【0033】図2を用いて第3実施例にかかる水平型マ
イクロ命令の例を説明する。21では処理aに関する命
令フィールドを、22では処理aの起動タイミングに応
じた遅延量を設定したレジスタ名を、23では処理bに
関する命令フィールドを、24では処理bの起動タイミ
ングに応じた遅延量を設定したレジスタ名を、25では
処理cに関する命令フィールドを、26では処理cの起
動タイミングに応じた遅延量を設定したレジスタ名をそ
れぞれ指定する。
An example of the horizontal micro instruction according to the third embodiment will be described with reference to FIG. Reference numeral 21 indicates an instruction field related to the process a, 22 indicates a register name in which a delay amount according to the activation timing of the process a is set, 23 indicates an instruction field related to the process b, and 24 indicates a delay amount according to the activation timing of the process b. The set register name is designated at 25, the instruction field related to the process c is designated at 25, and the register name at which the delay amount is set according to the activation timing of the process c is designated at 26.

【0034】第4実施例 最後に、第4実施例として、垂直型マイクロ命令を用い
る場合の一例を説明する。図3に、第4実施例における
垂直型マイクロ命令の一例を示す。
Fourth Embodiment Finally, as a fourth embodiment, an example of using a vertical microinstruction will be described. FIG. 3 shows an example of the vertical microinstruction in the fourth embodiment.

【0035】31はオペコード、32は第1オペラン
ド、33は第2オペランド、34は第3オペランド、3
5は一つの演算パイプラインの起動タイミングに応じた
遅延量を表す。34での遅延量の指定は、第2実施例の
ように遅延量そのものを指定しても良いし、第3実施例
のように遅延量を設定したレジスタ名を指定しても良
い。マイクロプログラムでは、図3で示すように、オペ
ランドとそのオペランドを実行するタイミングに応じた
遅延量を記述する。
31 is an opcode, 32 is a first operand, 33 is a second operand, 34 is a third operand, 3
Reference numeral 5 represents a delay amount according to the activation timing of one arithmetic pipeline. In the designation of the delay amount in 34, the delay amount itself may be designated as in the second embodiment, or the register name in which the delay amount is set may be designated as in the third embodiment. In the microprogram, as shown in FIG. 3, an operand and a delay amount according to the timing of executing the operand are described.

【0036】但し、垂直型マイクロ命令を用いる場合、
命令を実行する際には、図1で示した構成と異なり、マ
イクロ命令のデコード後の命令に対し、マイクロ命令中
で指定した遅延量だけ遅延を行い実行する。
However, when using the vertical microinstruction,
When executing an instruction, unlike the configuration shown in FIG. 1, the instruction after decoding the micro instruction is delayed by the delay amount specified in the micro instruction and executed.

【0037】[0037]

【発明の効果】本発明によれば、各々が異なる起動タイ
ミングの演算パイプラインが複数設定されていても、起
動タイミングの違いを意識することなくプログラムを書
くことができ、単純な演算を繰り返す処理において、ル
ープ命令が有効に行われる。
According to the present invention, even if a plurality of operation pipelines each having a different start timing are set, a program can be written without being aware of the difference in the start timing, and a simple operation is repeated. At, the loop instruction is effectively executed.

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

【図1】本発明の第1実施例に係わるマイクロプログラ
ム制御プロセッサの構成図。
FIG. 1 is a configuration diagram of a micro program control processor according to a first embodiment of the present invention.

【図2】本発明の第2,第3実施例におけるマイクロプ
ログラム制御プロセッサの水平型マイクロ命令を示す
図。
FIG. 2 is a diagram showing horizontal microinstructions of a microprogram control processor according to second and third embodiments of the present invention.

【図3】本発明の第4実施例におけるマイクロプロセッ
サ制御プロセッサの垂直型マイクロ命令を示す図。
FIG. 3 is a diagram showing vertical type micro instructions of a microprocessor control processor according to a fourth embodiment of the present invention.

【図4】従来のデジタル信号処理装置の構成図。FIG. 4 is a block diagram of a conventional digital signal processing device.

【図5】従来のマイクロプログラム制御プロセッサのパ
イプライン動作を説明するための図。
FIG. 5 is a diagram for explaining a pipeline operation of a conventional micro program control processor.

【図6】デジタル信号処理装置の動作を説明するための
タイミングチャート。
FIG. 6 is a timing chart for explaining the operation of the digital signal processing device.

【符号の説明】[Explanation of symbols]

1 命令メモリ 2 命令レジスタ 3〜5 命令フィールド 6〜8 遅延回路 9〜11 設定レジスタ 12〜14 命令デコーダ 15〜17 演算処理回路 1 instruction memory 2 instruction register 3-5 instruction field 6-8 delay circuit 9-11 setting register 12-14 instruction decoder 15-17 arithmetic processing circuit

Claims (1)

【特許請求の範囲】[Claims] 【請求項1】 各々が異なる起動タイミングのパイプラ
イン動作を行う複数の演算処理手段と、これらの演算処
理手段が行うパイプライン動作に関する命令が、各演算
処理手段に対する命令フィールドに分割設定されている
水平型マイクロ命令と、分割された各命令フィールドそ
れぞれに対応して設けられ、前記各演算処理手段が行う
パイプライン動作の起動タイミングを遅延させる起動タ
イミング遅延手段とを有したことを特徴とするマイクロ
プログラム制御プロセッサ。
1. A plurality of arithmetic processing means each performing a pipeline operation with different start timings, and an instruction relating to a pipeline operation performed by these arithmetic processing means are divided and set in an instruction field for each arithmetic processing means. A micro characterized by having a horizontal microinstruction and an activation timing delay means provided corresponding to each of the divided instruction fields and delaying the activation timing of the pipeline operation performed by each arithmetic processing means. Program controlled processor.
JP1300292A 1992-01-28 1992-01-28 Microprogram control processor Pending JPH05204640A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP1300292A JPH05204640A (en) 1992-01-28 1992-01-28 Microprogram control processor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP1300292A JPH05204640A (en) 1992-01-28 1992-01-28 Microprogram control processor

Publications (1)

Publication Number Publication Date
JPH05204640A true JPH05204640A (en) 1993-08-13

Family

ID=11820979

Family Applications (1)

Application Number Title Priority Date Filing Date
JP1300292A Pending JPH05204640A (en) 1992-01-28 1992-01-28 Microprogram control processor

Country Status (1)

Country Link
JP (1) JPH05204640A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
USRE48845E1 (en) 2002-04-01 2021-12-07 Broadcom Corporation Video decoding system supporting multiple standards

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
USRE48845E1 (en) 2002-04-01 2021-12-07 Broadcom Corporation Video decoding system supporting multiple standards

Similar Documents

Publication Publication Date Title
US20030033503A1 (en) Single instruction having opcode and stack control field
JPH1185513A (en) Processor
US20080229063A1 (en) Processor Array with Separate Serial Module
JPH05204640A (en) Microprogram control processor
US6981130B2 (en) Forwarding the results of operations to dependent instructions more quickly via multiplexers working in parallel
JPH09212360A (en) Data processor
JP2694948B2 (en) Micro program processor
JP3004972B2 (en) Data processing device
JPH04227540A (en) Arithmetic processor and digital signal processing processor
JP2758624B2 (en) Speed control method of micro program
JPH09101889A (en) Arithmetic unit for pipeline
JP2000020309A (en) Digital signal processor
JPH05143447A (en) Digital processor and control method for the processor
JPH0561660B2 (en)
JP4151497B2 (en) Pipeline processing equipment
JP2002268876A (en) Pipeline processing method and information processor
JPH05265746A (en) Microprocessor
JPH02105936A (en) Data processor
JPH0222417B2 (en)
JPS5914050A (en) Memory controlling system
JPS62281057A (en) Vector data processor
JPH01281532A (en) Microprogram controller
JPH011059A (en) Vector calculation system
JPH1078948A (en) Digital signal processor
JPH04116726A (en) Information processor