JPH0520062A - データ処理装置 - Google Patents

データ処理装置

Info

Publication number
JPH0520062A
JPH0520062A JP16842191A JP16842191A JPH0520062A JP H0520062 A JPH0520062 A JP H0520062A JP 16842191 A JP16842191 A JP 16842191A JP 16842191 A JP16842191 A JP 16842191A JP H0520062 A JPH0520062 A JP H0520062A
Authority
JP
Japan
Prior art keywords
execution
register
execution unit
data
control
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
JP16842191A
Other languages
English (en)
Inventor
Noriaki Tsuchiya
徳明 土屋
Norifumi Yamashita
訓史 山下
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.)
Fujifilm Business Innovation Corp
Original Assignee
Fuji Xerox 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 Fuji Xerox Co Ltd filed Critical Fuji Xerox Co Ltd
Priority to JP16842191A priority Critical patent/JPH0520062A/ja
Publication of JPH0520062A publication Critical patent/JPH0520062A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Advance Control (AREA)

Abstract

(57)【要約】 【目的】 パイプライン方式のデータ処理装置のマシン
サイクル時間を増大させることなく、マイクロプログラ
ミングを簡単に行なう。 【構成】 実行部(7)の前段に、実行部内の全ての実
行ユニット(61,62,63,・・・・6n)に各々
対応して制御メモリ(1)から読み出された制御語のデ
コード出力を書込むレジスタ(51,52,53,・・
・・5n)を設け、レジスタ(51,52,53,・・
・・5n)の出力を実行部(7)への制御信号とするこ
とにより、実行ユニット(61,62,63,・・・・
6n)へ送られた制御信号を、次に制御されるまで保持
する。 【効果】 実行部に大量の実行ユニットが存在していて
もマシンサイクル時間が長くなることはない。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、データ処理装置に係
り、特に、マイクロプログラムの制御をパイプライン処
理するデータ処理装置に関する。
【0002】
【従来の技術】マイクロプログラム方式のデータ処理装
置においては、処理の高速化を計るため、パイプライン
方式が一般に使用されている。また、さらに処理の複雑
化、高速化のためパイプラインのステージを数段に分け
る方式が提案されている。
【0003】マイクロ命令のパイプライン化は、現在の
マイクロ命令の制御動作と並列に次のマイクロ命令のア
ドレス指定と呼出しを行なって、プロセッサの制御部と
処理部を並列に動作させるものである。図10はマイク
ロ命令のパイプライン化構成の概略を説明するブロツク
図であって、100は制御メモリ、200はパイプライ
ンレジスタ、300は処理部、400はステータスレジ
スタ、500は制御部、600はアドレスレジスタであ
る。
【0004】同図では、マイクロ命令レジスタであるパ
イプラインレジスタ200とステータスレジスタ400
およびアドレスレジスタ600とで3つの並列パスを作
った二重パイプライン化構成としたものである。この種
の従来技術は、例えば、Glenford J.Mye
rs著,奥川俊史訳,1986年4月1日共立出版発行
「ビットスライスLSIとその応用」(特に、第173
〜212ページ)あるいは特開平1−175633号公
報に詳述されている。
【0005】
【発明が解決しようとする課題】従来の技術において
は、パイプライン1段で処理を行なおうとすると、実行
部内のある実行ユニットの処理時間がマシン全体の律速
となってマシンサイクル時間が長くなる。しかし、前記
したようにパイプラインを多重化した場合、各々のパイ
プステージ用データレジスタの数の増加や制御部の複雑
化によるハード量が増大し、マイクロプログラミングが
困難になるという問題点がある。
【0006】また、実行部内の実行ユニットが多い場
合、それらの処理を制御する方法として、図11に示す
構成としたものがある。すなわち、図11(a)は制御
メモリ100からのマイクロ命令をパイプラインレジス
タ200に展開し、その各制御語を複数のデコーダ70
0でデコードするようにした後パイプライン・デコード
方式である。
【0007】また、同図(b)は制御メモリからのマイ
クロ命令を複数のデコーダ700でデコードし、これを
パイプラインレジスタ200に展開する構成とした前パ
イプライン・デコード方式である。しかし、これらのパ
イプライン・デコード方式の構成では、デコーダが大き
くなるとそのデコードに要する時間が大きくなるという
問題点がある。
【0008】なお、他の方法として、制御メモリのビッ
ト幅を増やすことがあるが、メモリサイズが大きくな
り、いずれもマシンサイクルの低下につながるという問
題点がある。また、前記特開平1−175633号公報
に示されたように、乗算,割算命令時に加算,減算を繰
り返して行い、加算回数を設定したカウンタをデクリメ
ントして該カウンタが0となったら上限分岐する条件判
断サイクルの省略方法では、加算を繰り返すことにより
処理が遅くなるという根本的な問題が解決されない。
【0009】本発明の目的は、処理時間が長く、かつ大
量の実行ユニットを持つマイクロプログラム制御方式の
データ処理装置において、マシンサイクル時間を増大さ
せることなく処理を実行し、かつマイクロプログラミン
グを簡単に行なうことができるようにしたパイプライン
方式のデータ処理装置を提供することにある。
【0010】
【課題を解決するための手段】上記目的を達成するため
に、本発明は、制御メモリ(1)、パイプラインレジス
タ(2)、デコーダ(3)および複数の実行ユニット
(61,62,63,・・・・6n)を持つ実行部
(7)とからなるデータ処理装置において、前記実行部
(7)の前段に、前記実行部内の全ての実行ユニット
(61,62,63,・・・・6n)に各々対応して前
記制御メモリ(1)から読み出された制御語のデコード
出力を書込むレジスタ(51,52,53,・・・・5
n)を設け、前記レジスタ(51,52,53,・・・
・5n)の出力を前記実行部(7)への制御信号とする
ことにより、実行ユニット(61,62,63,・・・
・6n)へ送られた制御信号を、次に制御されるまで保
持する構成としたことを特徴とする。
【0011】なお、前記レジスタ(51,52,53,
・・・・5n)は、現制御語を保持するパイプラインレ
ジスタ(2)の後段に設け、また制御語内にレジスタへ
の書き込みビット及び実行部内のアクセス先指定部を設
け、制御語内の命令部とデコードした信号を前記レジス
タへの書き込み信号とする構成を好適とする。また、前
記レジスタは、それぞれ対応する実行ユニットに対し、
前記パイプラインレジスタの値に対応した前記制御信号
がパルス出力またはレベル出力されるように構成するの
を可とする。
【0012】
【作用】レジスタ(51,52,53,・・・・5n)
は、現制御語を保持するパイプラインレジスタ(2)の
後段に設けられ、デコーダ3でデコードされた命令デー
タをラッチする。制御語内には、レジスタ(51,5
2,53,・・・・5n)への書き込みビット及び実行
部7内のアクセス先実行ユニットの指定部を設け、制御
語内の命令部とデコードした信号を前記レジスタへの書
き込み信号とする。
【0013】レジスタ(51,52,53,・・・・5
n)は、それぞれ対応する実行ユニットに対し、前記パ
イプラインレジスタ2の値に対応した前記制御信号がパ
ルス出力またはレベル出力される。これにより、マシン
サイクル時間を増大させることなく処理を実行し、かつ
マイクロプログラミングを簡単に行なうことができる。
【0014】
【実施例】以下、本発明によるデコーダ処理装置の実施
例につき、図面を参照して詳細に説明する。図1は本発
明の1実施例の構成を説明するブロツク図であって、1
はマイクロプログラムを格納する制御メモリ、2はパイ
プラインレジスタ、3はデコーダ、51,52,53,
・・・・5nはレジスタ、61,62,63,・・・・
6nは実行ユニット、7は実行部である。
【0015】同図において、パイプラインレジスタ2は
制御メモリ1からの制御語を展開して保持する。このパ
イプラインレジスタ2の後段に設けたデコーダ3はパイ
プラインレジスタから与えられる制御語をデコードす
る。レジスタ51,52,53,・・・・5nは実行部
7を構成する複数の実行ユニット61,62,63,・
・・・6nにそれぞれ1対1に対応して設けられてお
り、デコーダ3のデコード出力をラッチする。
【0016】図2は実行部へのデータロード時の制御語
の構成を示す概念図であって、8は制御メモリ1からの
命令(インストラクション、ここではデータロード命
令)、9は実行ユニット選択ビット、11は実行ユニッ
トにロードされるデータ(ロードデータ)である。図1
におけるレジスタ51,52,53,・・・・5nへの
書き込み信号10は、制御語を構成するインストラクシ
ョン8及び実行ユニット選択ビット9をデコードするこ
とによって作られる。
【0017】ロードデータ11は、デコーダ3で上記の
ようにしてデコードされたレジスタ書込み信号10で選
択されたレジスタにロードされてラッチされる。つま
り、データロード命令では、選択された実行ユニットま
たは実行ユニット群にのみデータが書き込まれるため、
他の命令時、または他の実行ユニットまたは実行ユニッ
ト群にデータロードがなされている時は、選択されてい
ない実行ユニットまたは実行ユニット群へのデータロー
ドはなされず、実行命令は変わらない。
【0018】これにより、ある実行ユニットの処理時間
がマシンサイクル時間を越えている場合でも、実行ユニ
ットからのステータスによる条件判断のサイクルの2サ
イクル以上前にデータをロードしておけば問題ない。こ
のサイクルの間において、本プログラム制御装置に接続
されている他のプロセッサに別の処理を実行させればパ
イプライン処理全体の速度が高速化される。
【0019】図3は本実施例のプログラム制御装置にお
けるマルチファンクション実行の1例を説明するフロー
チヤートであって、実行1は2マシンサイクル必要な実
行ユニット、実行2はスタート信号を受け、数サイクル
後にステータスを返す実行ユニットである。また、ここ
では、実行1の結果判定がYesとなる限り処理が繰り
返され、かつそれぞれのステージが1マシンサイクルで
実行されていくものとする。
【0020】同図において、まず、STARTにより実
行1が行われる実行ユニットへデータがロードされる。
次に第3ステージにより実行1の1マシンサイクル分の
処理が実行される(S−1)。本実施例によれば、実行
部へのデータはレジスタ51,52,53,・・・・5
nの選択されたレジスタまたはレジスタ群に保持される
ので、次の第4ステージにおいても実行1が処理され、
これと同時に実行2の結果判定が行われる(S−2)。
【0021】このとき、実行2のスタートはかけられて
いないので第1ステージに移り、実行2へデータがロー
ドされ、上記と同様にレジスタ51,52,53,・・
・・5nの選択されたレジスタまたはレジスタ群にデー
タが保持され、実行2が処理される(S−3)。実行2
のスタート後、第2ステージに移るが、この時には実行
1は終了しているので、すぐに条件分岐がかけられて
(S−4)判定結果がYesならば終了する(EN
D)。
【0022】この終了によっても実行2の処理は行われ
る。なお、(S−4)の条件分岐において、実行1の判
定結果がNoならば第3ステージに移りさらに実行1が
スタートする。実行2が4マシンサイクル必要とする
と、第4ステージにおいてすでに3マシンサイクル分の
処理が行われているため、このステージでは、1回ルー
プ(S−2のNoでのループ)を行えば実行2の処理が
完了し、実行2を処理する第1ステージ(S−3)に処
理が移動する。
【0023】このように、本実施例によれば、第1〜4
ステージを5マシンサイクルで実行できる。図4は図2
と同様の命令を従来技術で行う場合のマルチファンクシ
ョン実行の1例を説明するフローチヤートであって、実
行1は実行1A(S−10)と実行1B(S−11)の
2パイプラインステージに分割されている。
【0024】従来技術では、実行部へのデータを保持す
る構成とはなっていないため、実行1Aと実行1Bを処
理する(S−10),(S−11)の実行後に、即実行
1の結果判定を行なって(S−12)から、次の実行2
の処理(S−13)を行わなければならない。すなわ
ち、実行1の結果がNoであっても実行2の処理を開始
し、実行2が終了した後に実行1に戻ることになる。
【0025】実行2の条件判定部(S−14)で4マシ
ンサイクル必要となるので、全サイクルを8マシンサイ
クルで実行しなければならなくなってしまう。これに対
して、上記本実施例によれば、同様の処理を5マシンサ
イクルで実行できる。図5は本発明の他の実施例の構成
を説明するブロツク図であって、図1と同一符号は同一
部分を示し、5はレジスタ、6は実行ユニットである。
【0026】また、図6は本実施例におけるデコーダロ
ード命令の構成例を示す概念図である。この実施例で
は、実行部7を複数の実行ユニット6からなる複数のブ
ロック130,130,・・・に分割し、分割したブロ
ック130,130,・・・各々を、インストラクショ
ン8がロード命令であるときに図6中のマイクロコード
内の実行ブロック選択ビット12に対応させる。
【0027】nビットのロードデータ13は、それぞれ
選択された実行ブロツク130の各実行ユニット6,
6,・・・・へ直接入力される。書き込み信号10は、
インストラクション8及び実行ブロック選択ビット12
をデコードして作成される。例えば、実行部7を構成す
る実行ユニット6が80個あった場合、その実行ユニッ
トを10個ずつ8ブロックに分割すれば実行選択ビット
12とデータ13はそれぞれ3ビット,10ビットで構
成できる。
【0028】この実施例によれば、上記実施例の効果に
加えて、メモリの容量を節約することができるという効
果がある。図7はレジスタ5の出力波形例の説明図であ
って、レジスタ5,5,・・・・の構成を対応する実行
ユニット6,6,・・・・ごとに変えた場合のレジスタ
出力波形を示す。
【0029】同図において、レジスタ出力1は、書き込
み信号に同期してサイクルクロックの立ち下がりから1
パルスの出力、レジスタ出力2はサイクルクロックの立
ち上がりで1パルス、レジスタ出力3,4は各々レベル
出力である。このように、実行ユニット6,6,・・・
・がクロックエッジを必要とするカウンタ等である場合
には波形1,2が出力される様にレジスタを構成し、演
算路等のレベル信号を必要とする場合には、波形3,4
のレベル出力がなされる様にレジスタ5,5,・・・・
を構成すれば、あらゆる構成の実行ユニットへ対応する
ことができる。
【0030】図8はマイクロコードにおけるビット割当
てを説明する概念図であって、マイクロコード内に同期
ビットを取り込んである。図9は書込み信号の生成回路
の一例の構成図であって、ロード命令と実行ブロツク選
択信号および同期ビットを入力とするアンドゲート15
により、インストラクション8がロード命令が1(H)
で、かつ、実行ブロック選択ビット12が1(H),か
つ同期ビットが1(H)の条件でnビットデータ13の
書き込み信号が出力される。つまり、ロード命令時であ
っても同期ビットが0(L)であればデータはロードさ
れない。これにより、ブロツク分割された実行ユニット
の選択的データロードが可能となる。
【0031】パイプライン方式では、タイミング調整の
ためノーオペレーション(NOP)命令が入ることがあ
るが、この時ロード命令でかつ同期ビットを0にしてお
けば以前ロードしたデータを変化させることなくNOP
が実行できる。
【0032】
【発明の効果】以上説明したように、本発明によれば、
実行部を構成する実行ユニットに1対1に対応するレジ
スタを設け、データロード時に書き込まれたデータを次
にアクセスされるまで保持される様にし、実行部へのデ
ータをデコードするデコーダをパイプラインレジスタと
データを保持するレジスタの間に挿入したことにより実
行部に大量の実行ユニットが存在していてもマシンサイ
クル時間が長くなることはない。
【0033】また、1マシンサイクル以上の処理時間が
必要な実行ユニットにもマイクロプログラミングにより
対応でき、かつ処理実行中に他処理を実行できるのでデ
ータ処理装置の高速化が可能となる。さらに、実行部へ
のデータをレジスタにラッチして保持することによっ
て、マイクロプログラミング時に条件判断時より数サイ
クル前のどのサイクルにでも実行部へのデータロード命
令を入れることができ、かつ、実行部とレジスタが1対
1に対応していることから、ある実行部へデータをロー
ドする際に実行ブロックを選択させ、ロードデータの必
要なビットにだけ1か0を立てるよう意識すればよいの
で、プログラミングが非常に簡単になる。
【0034】また、マイクロコード中に同期ビットを入
れておくことで、NOPをデータロードインストラクシ
ョンで実行でき、その際、他のビットは意識しなくてよ
いのでプログラミングが容易になる。
【図面の簡単な説明】
【図1】 本発明の1実施例の構成を説明するブロツク
図である。
【図2】 本発明の1実施例における実行部へのデータ
ロード時の制御語の構成を示す概念図である。
【図3】 本実施例のプログラム制御装置におけるマル
チファンクション実行の1例を説明するフローチヤート
である。
【図4】 図2と同様の命令を従来技術で行う場合のマ
ルチファンクション実行の1例を説明するフローチヤー
トである。
【図5】 本発明の他の実施例の構成を説明するブロツ
ク図である。
【図6】 本実施例におけるデコーダロード命令の構成
例を示す概念図である。
【図7】 レジスタの出力波形例の説明図である。
【図8】 マイクロコードにおけるビット割当てを説明
する概念図である。
【図9】 書込み信号の生成回路の一例の構成図であ
る。
【図10】 マイクロ命令のパイプライン化構成の概略
を説明するブロツク図である。
【図11】 従来技術における制御語のデコード方式例
の説明図である。
【符号の説明】
1・・・・マイクロプログラムを格納する制御メモリ、
2・・・・パイプラインレジスタ、3・・・・デコー
ダ、51,52,53,・・・・5n・・・・レジス
タ、61,62,63,・・・・6n・・・・実行ユニ
ット、7・・・・実行部。

Claims (1)

  1. 【特許請求の範囲】 【請求項1】 制御メモリ、パイプラインレジスタ、デ
    コーダおよび複数の実行ユニットを持つ実行部とからな
    るデータ処理装置において、 前記実行部の前段に、前記実行部内の全ての実行ユニッ
    トに各々対応して前記制御メモリから読み出された制御
    語のデコード出力を書込むレジスタを設け、 前記レジスタの出力を前記実行部への制御信号とするこ
    とにより、実行ユニットへ送られた制御信号を、次に制
    御されるまで保持する構成としたことを特徴とするデー
    タ処理装置。
JP16842191A 1991-07-09 1991-07-09 データ処理装置 Pending JPH0520062A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP16842191A JPH0520062A (ja) 1991-07-09 1991-07-09 データ処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP16842191A JPH0520062A (ja) 1991-07-09 1991-07-09 データ処理装置

Publications (1)

Publication Number Publication Date
JPH0520062A true JPH0520062A (ja) 1993-01-29

Family

ID=15867816

Family Applications (1)

Application Number Title Priority Date Filing Date
JP16842191A Pending JPH0520062A (ja) 1991-07-09 1991-07-09 データ処理装置

Country Status (1)

Country Link
JP (1) JPH0520062A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7185184B1 (en) 1999-10-06 2007-02-27 Infineon Technologies Ag Processor system, especially a processor system for communications devices

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7185184B1 (en) 1999-10-06 2007-02-27 Infineon Technologies Ag Processor system, especially a processor system for communications devices

Similar Documents

Publication Publication Date Title
US4390946A (en) Lookahead addressing in a pipeline computer control store with separate memory segments for single and multiple microcode instruction sequences
JPS6239780B2 (ja)
KR100423910B1 (ko) 코프로세서 명령 실행 장치 및 방법
US5253349A (en) Decreasing processing time for type 1 dyadic instructions
US6055626A (en) Method and circuit for delayed branch control and method and circuit for conditional-flag rewriting control
KR920007253B1 (ko) 마이크로 프로그램 제어 장치
US4812970A (en) Microprogram control system
US5526500A (en) System for operand bypassing to allow a one and one-half cycle cache memory access time for sequential load and branch instructions
JPH0520062A (ja) データ処理装置
US4566062A (en) Timing control system in data processor
JP2694948B2 (ja) マイクロプログラム処理装置
JPH1091430A (ja) 命令解読装置
JP2636192B2 (ja) 情報処理装置
JP3871461B2 (ja) シーケンス制御用マイクロコントローラ
JPH06131180A (ja) 命令処理方式および命令処理装置
US6460129B1 (en) Pipeline operation method and pipeline operation device to interlock the translation of instructions based on the operation of a non-pipeline operation unit
JP2000020309A (ja) デジタルシグナルプロセッサ
JP2812610B2 (ja) パイプライン制御方式
KR900002602B1 (ko) 마이크로 프로그램 제어장치
EP0862112A2 (en) Data processing system having an instruction pipeline
JP2002268876A (ja) パイプライン処理方法、及び情報処理装置
JPH05265746A (ja) マイクロプロセッサ
JP3117214B2 (ja) シーケンサのマイクロプログラム制御方式
JPH0561660B2 (ja)
JPS6134168B2 (ja)