JPS6033635A - パイプライン制御方式 - Google Patents
パイプライン制御方式Info
- Publication number
- JPS6033635A JPS6033635A JP14337183A JP14337183A JPS6033635A JP S6033635 A JPS6033635 A JP S6033635A JP 14337183 A JP14337183 A JP 14337183A JP 14337183 A JP14337183 A JP 14337183A JP S6033635 A JPS6033635 A JP S6033635A
- Authority
- JP
- Japan
- Prior art keywords
- instruction
- stage
- processing
- timing
- execution
- 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.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3867—Concurrent instruction execution, e.g. pipeline or look ahead using instruction pipelines
- G06F9/3869—Implementation aspects, e.g. pipeline latches; pipeline synchronisation and clocking
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Advance Control (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
〔発明の属する技術分野〕
不発明は、複数の命令を並列に実行するデータ処理装置
のパイプライン制御方式に関する。
のパイプライン制御方式に関する。
マイクロコンピュータの如きデータ処理装置ニおいては
、処理速度の高速化を達成するために。
、処理速度の高速化を達成するために。
動作クロ、りを品める方法と、内部の制御方式を改善す
る方法の27111りの手段がとられている。このうち
、動作クロックを高める方法は、デノくイス技術に大き
く依存【7デバイス技術の改善に伴なってせいぜい10
%程度の高速化が達成させるにとどまる。このため性能
を抜本的に改@する場合にはパイプライン制御などの新
しい内部の開側j方式を採用して対応している。
る方法の27111りの手段がとられている。このうち
、動作クロックを高める方法は、デノくイス技術に大き
く依存【7デバイス技術の改善に伴なってせいぜい10
%程度の高速化が達成させるにとどまる。このため性能
を抜本的に改@する場合にはパイプライン制御などの新
しい内部の開側j方式を採用して対応している。
パイプラインHill l1141方式では、1つの命
令の実行で行なわれる一連の処理をいくつかの基本処理
に分割し、これらの基本処理毎にそれぞれの処理を逐行
するのに盛装な専用ハードウェア全備えた腹数個の機能
ユニット全用意する。これらの機能ユニットヲ処理順序
に従って連続的に動作させる事により、全体の処理速度
の向上をはかるもので。
令の実行で行なわれる一連の処理をいくつかの基本処理
に分割し、これらの基本処理毎にそれぞれの処理を逐行
するのに盛装な専用ハードウェア全備えた腹数個の機能
ユニット全用意する。これらの機能ユニットヲ処理順序
に従って連続的に動作させる事により、全体の処理速度
の向上をはかるもので。
処理速反り向上によく使われている方法である。
従来使用されているパイプライン制御方式を説明する。
lず第1図のブロック図において5本従来例における中
央処理装@(以下、CI)Uという・)が持つ3個の機
能ユニットの機能?:説明4−る。バスインタフェース
部1−1はメモリから命令コードの胱出しや、データの
書込み読出しを行ない。
央処理装@(以下、CI)Uという・)が持つ3個の機
能ユニットの機能?:説明4−る。バスインタフェース
部1−1はメモリから命令コードの胱出しや、データの
書込み読出しを行ない。
オペランドアドレス計算部1−2はメモリ参照時。
メモリのアドレス修飾を行ない、実行部1−3は各イ■
の転送、演算処理′f:行なう。
の転送、演算処理′f:行なう。
第2図は、第1図に示した3個の機能ユニットからイI
′1城されるCPUのメモリ間C1J度算命令の動作図
である。これは、1つの命令の実行に際し。
′1城されるCPUのメモリ間C1J度算命令の動作図
である。これは、1つの命令の実行に際し。
各機能ユニットがどのように使われてゆくがをあらかし
め定められた時間単位(以下、ステージという。)に時
間を追って示したもので、各ステージの長さは固定さJ
′1.ている。すなわち、各機能ユニットid以下の順
序でJン[定の動作を行う。
め定められた時間単位(以下、ステージという。)に時
間を追って示したもので、各ステージの長さは固定さJ
′1.ている。すなわち、各機能ユニットid以下の順
序でJン[定の動作を行う。
TAIの最初のステージの期間;バスインタフェース部
1−1で命令コードの読出しを行なう・TA2の2番目
のステージの期間;実行部3.−3で命令の解読を行う
。
1−1で命令コードの読出しを行なう・TA2の2番目
のステージの期間;実行部3.−3で命令の解読を行う
。
Tλ303番目のステージの期間;オペランドアドレス
計算部1−2でメモリ参照時のアドレス修飾を行なう。
計算部1−2でメモリ参照時のアドレス修飾を行なう。
1人4の4番目のステージの期間;バスインタフェース
部1−1において、メモリからのデータの読出しを行な
う。
部1−1において、メモリからのデータの読出しを行な
う。
TA5の5番目のステージの期間;実行部1−3で演算
処理を行なう。
処理を行なう。
TA6の6番目のステージの期間;バスインタフェース
部1−1で、訊算結果全メモリへ格納する・本従来例で
説明するCPUは、他1(も多くの命令を持ち様々な処
理が可能であるが、1つの命令に対して機能ユニットが
使われる順序はどれも等しく、従って、すべての命令は
、282図の動作図に示す通vvc各機能ユニットが使
わh処理が進められる。
部1−1で、訊算結果全メモリへ格納する・本従来例で
説明するCPUは、他1(も多くの命令を持ち様々な処
理が可能であるが、1つの命令に対して機能ユニットが
使われる順序はどれも等しく、従って、すべての命令は
、282図の動作図に示す通vvc各機能ユニットが使
わh処理が進められる。
次に第2図の動作図eこ示す様な6個のステージから構
成される動作図を持つ命令をパイプライン制御で処理す
るときの制御方法を説明する。
成される動作図を持つ命令をパイプライン制御で処理す
るときの制御方法を説明する。
命令の処理を711217式に進める際に問題になるの
は、1つの命令を実行中に次の6令の実行を開始するタ
イミングである。
は、1つの命令を実行中に次の6令の実行を開始するタ
イミングである。
第3図(a)〜(f)の動作図は、1つの命令の実行中
に次の命令を開始するステージ毎の各ユニットの動作状
態を示したものである。この第3図(al〜(f)の動
作図に示す通り、Bの命令を実<J中に、第3図(b)
に示すタイミングで次のN命令を開始ツーると。
に次の命令を開始するステージ毎の各ユニットの動作状
態を示したものである。この第3図(al〜(f)の動
作図に示す通り、Bの命令を実<J中に、第3図(b)
に示すタイミングで次のN命令を開始ツーると。
バスインタフェース部1−1の11’、、6リステージ
で。
で。
又、第3図(C)に示すタイミングでは、バスインタフ
ェース部1−1のTB4 ステージとツコ行坩t ]
−3ノl1185ステージで、又、第3図(e)に不す
タイミングでは、バスインタフェース部1−1のIll
B6のステージで、それぞれ命令Aにおける処理と命
令Bにおける処理が衝突する。
ェース部1−1のTB4 ステージとツコ行坩t ]
−3ノl1185ステージで、又、第3図(e)に不す
タイミングでは、バスインタフェース部1−1のIll
B6のステージで、それぞれ命令Aにおける処理と命
令Bにおける処理が衝突する。
第4図の衝突図は、第3図fa)から第3図(f)に示
した次の命令の各起動タイミングに対応して命令の実行
中に機能ユニット内で衝突が発生するかどうかを示した
ものである。衝突図のも列は次の命令の開始タイミング
を示し1表内のOはそのタイミングで次の命令全開始し
ても衝突がなく、パイプライン動作が正常に維持される
事′f:、1はそのタイミングで天の命令全開始したら
必らず機能ユニット内で、前の命令と次の命令の処理が
衝突hパイプラインの正常動作が継続できない事を表わ
している。
した次の命令の各起動タイミングに対応して命令の実行
中に機能ユニット内で衝突が発生するかどうかを示した
ものである。衝突図のも列は次の命令の開始タイミング
を示し1表内のOはそのタイミングで次の命令全開始し
ても衝突がなく、パイプライン動作が正常に維持される
事′f:、1はそのタイミングで天の命令全開始したら
必らず機能ユニット内で、前の命令と次の命令の処理が
衝突hパイプラインの正常動作が継続できない事を表わ
している。
不従来例の第4図の衝突図では1つの命令の実行中tA
1. ’A4. tA6のタイミングで、次の命令を開
始すれば衝突はないが、を人2. tA3. tA5で
は衝突が発生する。この’gRi突図に基づいて、パイ
プライン制御で最も重要な次の命令の開始タイミングが
決定される。
1. ’A4. tA6のタイミングで、次の命令を開
始すれば衝突はないが、を人2. tA3. tA5で
は衝突が発生する。この’gRi突図に基づいて、パイ
プライン制御で最も重要な次の命令の開始タイミングが
決定される。
次に第5図に7ドフ“パイプライン制御回路のブロック
図で、1′にの命令の開始タイミングを決定するハード
ウェア構成及び動作を説明する・レジスタ5−1−0か
らレジスタ5−1−5は。
図で、1′にの命令の開始タイミングを決定するハード
ウェア構成及び動作を説明する・レジスタ5−1−0か
らレジスタ5−1−5は。
第4図の衝突図に示したパイプライン処理中に衝突が発
生するかと9かのデータ全保持する。この6個のレジス
タ5−1−5からレジスタ5−1−〇でシフトレジスタ
5 ”−1fi”構成する。
生するかと9かのデータ全保持する。この6個のレジス
タ5−1−5からレジスタ5−1−〇でシフトレジスタ
5 ”−1fi”構成する。
シフトクロック5−2は各ステージにおける処理が終了
する毎にアクティブになりシフトレジスタ5−1円のデ
ータを左シフトする。シフトレジスタ5−1の最終出力
であるレジスタ5−1−5の出力は命令開始信号5−3
で、パイプライン制御における次の命令σノ開始全制御
する。0°′ならば次の命令を起動し1nならば起動し
ない。
する毎にアクティブになりシフトレジスタ5−1円のデ
ータを左シフトする。シフトレジスタ5−1の最終出力
であるレジスタ5−1−5の出力は命令開始信号5−3
で、パイプライン制御における次の命令σノ開始全制御
する。0°′ならば次の命令を起動し1nならば起動し
ない。
初期衝突データ発生回路5−4は1次の命令が開始され
たときに、シフトレジスタ5−1円のデータを補正する
のに使用される1組みゲート5−5は、命令開始信号5
−3の制御でシフトレジスタ5−1内の次の段のレジス
タへ入力するデータを選択するも(/Jで、命令開始1
6号5−3が0”ならば、シフトレジスタ5−1内の各
レジスタのデータと初期衝突データ発生(ロ)路5−4
の対応するビットの論理和が次段のレジスタに入力する
。1”ならば、各レジスタ内のデータが単純に次段のレ
ジスタに入力する・ 第6図の動作図は、第5図のレジスタ5−1−5からレ
ジスタ5−1−0までのレジスタで構成されるシフトレ
ジスタ5−1のデータ保持状態をステージ毎に表わした
ものである。初期状態では、レフトレジスタ5−1内に
は、第4図の衝突図に示されりO″、″l”、′1″、
″l Q !+ 、1”、0”がこの順に格納されてい
る。最初の命令が実行されると、その最初の第1ステー
ジで、シフトレジスタ5−1の最終出力である命令開始
信号5−3の状態をチェックする。この信号の状態が0
°′なりで、次の第2ステージで、(K命令をただちに
開始する。同時に新しく命令が開始された事により衝突
図の補正が必要となり1組みゲート5−5の制御で初期
衝突データ発生回路5−4で補正された衝突データが左
シフトされ、これにより、シフトレジスタ5−1の内容
は、第6図の第2ステージに示すデータとなる。第2ス
テージ内でrl+び。
たときに、シフトレジスタ5−1円のデータを補正する
のに使用される1組みゲート5−5は、命令開始信号5
−3の制御でシフトレジスタ5−1内の次の段のレジス
タへ入力するデータを選択するも(/Jで、命令開始1
6号5−3が0”ならば、シフトレジスタ5−1内の各
レジスタのデータと初期衝突データ発生(ロ)路5−4
の対応するビットの論理和が次段のレジスタに入力する
。1”ならば、各レジスタ内のデータが単純に次段のレ
ジスタに入力する・ 第6図の動作図は、第5図のレジスタ5−1−5からレ
ジスタ5−1−0までのレジスタで構成されるシフトレ
ジスタ5−1のデータ保持状態をステージ毎に表わした
ものである。初期状態では、レフトレジスタ5−1内に
は、第4図の衝突図に示されりO″、″l”、′1″、
″l Q !+ 、1”、0”がこの順に格納されてい
る。最初の命令が実行されると、その最初の第1ステー
ジで、シフトレジスタ5−1の最終出力である命令開始
信号5−3の状態をチェックする。この信号の状態が0
°′なりで、次の第2ステージで、(K命令をただちに
開始する。同時に新しく命令が開始された事により衝突
図の補正が必要となり1組みゲート5−5の制御で初期
衝突データ発生回路5−4で補正された衝突データが左
シフトされ、これにより、シフトレジスタ5−1の内容
は、第6図の第2ステージに示すデータとなる。第2ス
テージ内でrl+び。
命令開始信号5−3の状態をチェ、7りする。今度は”
1”なので、次の第3ステージは+a、r 3の命令の
起動はしない。又1組みゲート5−5の制御で、シフト
レジスタ5−1内で単純にデータの左シフトを行なう。
1”なので、次の第3ステージは+a、r 3の命令の
起動はしない。又1組みゲート5−5の制御で、シフト
レジスタ5−1内で単純にデータの左シフトを行なう。
以下同様に、各ステージの期間で命令開始1d号5−:
うの状態をチェックし、上に記した処人里をくりかえす
。
うの状態をチェックし、上に記した処人里をくりかえす
。
以上説明した通り、促米のパイプライン制御方式は凌雑
な制御アルゴリズムに基づいた特殊な制御回l!!6全
使用している。
な制御アルゴリズムに基づいた特殊な制御回l!!6全
使用している。
CPTJが持つナベての命令のステージ毎の各機能ユニ
、Vトの処理手順を、すべて同一としてすべての命令が
同一の動作In持つため、レジスタ間転送といった簡単
な命令からメモリ間のei、算の様な葭雑な命令を持つ
データ処理裟16.へは応用が難しいという第1q)大
きな欠点がある。
、Vトの処理手順を、すべて同一としてすべての命令が
同一の動作In持つため、レジスタ間転送といった簡単
な命令からメモリ間のei、算の様な葭雑な命令を持つ
データ処理裟16.へは応用が難しいという第1q)大
きな欠点がある。
又、谷ステージの処理時間が一律に足められ六方式のた
め% 1ステージの処理時間を伸ばして、1つり機能ユ
ニット内での処理量を旨めるj」1が容易でなく、パイ
プラインの融通性に欠けるという第2の欠点がある。
め% 1ステージの処理時間を伸ばして、1つり機能ユ
ニット内での処理量を旨めるj」1が容易でなく、パイ
プラインの融通性に欠けるという第2の欠点がある。
特に、バスとのインタフェース部ではメモリのアクセス
時間が長い場合には、1ステ一ジ処理時間内にメモリの
参照が完了せず、このためこの部分だけを特別にパイプ
ライン処理からはずした。す。
時間が長い場合には、1ステ一ジ処理時間内にメモリの
参照が完了せず、このためこの部分だけを特別にパイプ
ライン処理からはずした。す。
又は、使用するメモリ全高速メモリに限るといった様々
な制約がつくという第3の欠点がある。
な制約がつくという第3の欠点がある。
更にこのパイプライン制御方式を、マイクロコンピュー
タに応用すると、パイプライン制御用回路が必要なため
1回路を複雑するはかりでなくチップサイズを大きくす
るという第4の欠点がある。
タに応用すると、パイプライン制御用回路が必要なため
1回路を複雑するはかりでなくチップサイズを大きくす
るという第4の欠点がある。
不発明の目的は、上記の諸欠点を取り除き、マイクロコ
ンピュータに最も適したパイプライン制御方式會提供す
る事にある。
ンピュータに最も適したパイプライン制御方式會提供す
る事にある。
本発明のパイプライン制御方式は、(層数の命令を並列
に実行するデータ処理装置のパイプライン制御方式にお
いてb f:liJ記テーデー理装置が、命令実行手順
に従って分けられた複数の相異なる基本処理全専門[%
行する複数の機h(シュニットと、実行中の命令の次の
命令の実行開始タイミングをすべての命令にわたって制
御するタイミング制御手段と、前記機能ユニット毎にそ
れぞれtfil記基本処理の完了状態を保持する保持手
段と、該保持手段の保持状態に対応して前記機能ユニッ
トに前記基本処理の開始悟号葡送出する処理開始制御手
段と’z (Iitiえ、前記保持手段が前記基本処理
の完r状態全1呆持することに同期して前記処理開始制
御手段により前記機能ユニットのすべてが前Fi+、命
令実行手順に従って次の基本処理ケ同時に開始すると共
に前記タイミング制御手段によりjJr定の次の命令の
実行全起動させることがらtt成される・〔実施例の説
明〕 以下−1不発明の実施例について図面を参Its(して
d発明する。
に実行するデータ処理装置のパイプライン制御方式にお
いてb f:liJ記テーデー理装置が、命令実行手順
に従って分けられた複数の相異なる基本処理全専門[%
行する複数の機h(シュニットと、実行中の命令の次の
命令の実行開始タイミングをすべての命令にわたって制
御するタイミング制御手段と、前記機能ユニット毎にそ
れぞれtfil記基本処理の完了状態を保持する保持手
段と、該保持手段の保持状態に対応して前記機能ユニッ
トに前記基本処理の開始悟号葡送出する処理開始制御手
段と’z (Iitiえ、前記保持手段が前記基本処理
の完r状態全1呆持することに同期して前記処理開始制
御手段により前記機能ユニットのすべてが前Fi+、命
令実行手順に従って次の基本処理ケ同時に開始すると共
に前記タイミング制御手段によりjJr定の次の命令の
実行全起動させることがらtt成される・〔実施例の説
明〕 以下−1不発明の実施例について図面を参Its(して
d発明する。
第7図は本発明の一実施例全適用し/ζU P Uのブ
ロック図である。
ロック図である。
CPUが、命令実行手順に従って分けられた3りの相異
なる基本処理を専門に実行する3個の機能ユニット、パ
スインタフェース部7−1.オヘラε ノド計算部7−2.実部7−3と、実行中の命令の次の
命令の実行開始タイミングをすべての命令にわたって制
御するタイミング制御手段としてのタイミング記憶部7
−8と、前記機能ユニット毎にそれぞれ前記基本処理の
完了状態を保持する保持手段としての第1.第2.第3
のステージ終了フリッグフロ、プ(以下、ステージ終了
F/Fという、)7−4.7−5.7−6と、この保持
手段の保持状態に対応してml記機能ユニットに前記基
本処理の開始信号を送出する処理開始制御手段としての
ANDゲート7−7と奮備え、第1.第2、第3のステ
ージ終了F/F7−4.7−5゜7−6が前記基本処理
の完了状態を保持することに同期してANI)ゲー)
7−7 yjhら送出される命令開始信号7−7′によ
りバスインタフェース部7−1.オペランド言1算部7
−2.実行部7−3のすべてがj4iJ 記命令実行手
順に従って次の基本処理を同時に開始すると共にタイミ
ング記憶部7−8からのタイミング信号7−8′より1
ノ1足の次の命令の実行全起動させることから414成
される。
なる基本処理を専門に実行する3個の機能ユニット、パ
スインタフェース部7−1.オヘラε ノド計算部7−2.実部7−3と、実行中の命令の次の
命令の実行開始タイミングをすべての命令にわたって制
御するタイミング制御手段としてのタイミング記憶部7
−8と、前記機能ユニット毎にそれぞれ前記基本処理の
完了状態を保持する保持手段としての第1.第2.第3
のステージ終了フリッグフロ、プ(以下、ステージ終了
F/Fという、)7−4.7−5.7−6と、この保持
手段の保持状態に対応してml記機能ユニットに前記基
本処理の開始信号を送出する処理開始制御手段としての
ANDゲート7−7と奮備え、第1.第2、第3のステ
ージ終了F/F7−4.7−5゜7−6が前記基本処理
の完了状態を保持することに同期してANI)ゲー)
7−7 yjhら送出される命令開始信号7−7′によ
りバスインタフェース部7−1.オペランド言1算部7
−2.実行部7−3のすべてがj4iJ 記命令実行手
順に従って次の基本処理を同時に開始すると共にタイミ
ング記憶部7−8からのタイミング信号7−8′より1
ノ1足の次の命令の実行全起動させることから414成
される。
なお、タイミング記憶部7−8は本実施例ではバスイン
タフェース部7−1内に設けであるが。
タフェース部7−1内に設けであるが。
これは機能ユニット外Kまとめて設けても良く。
又必要に応じ各機能ユニット内に分散しC設けられる。
本実施例は第1図にボした従来例のCP IJに適用し
たものであり、バスインタフェース部7−1゜オペラフ
ドアドレス計3jt部7−2.突汀部7−3の3個の機
能ユニットは、絹1図の従来例のブロック図に示したC
PUの各(7,1能ユニットと同一の処理を行なう。
たものであり、バスインタフェース部7−1゜オペラフ
ドアドレス計3jt部7−2.突汀部7−3の3個の機
能ユニットは、絹1図の従来例のブロック図に示したC
PUの各(7,1能ユニットと同一の処理を行なう。
第1のステージ終了に’/F 7−4は、バスインタフ
ェース部7−1の1ステ一ジ分の処理が完了するとセッ
トさJしる。第2のステージ終了F/F7−5は、オペ
ランドアドレス計31− 部7−2 (Q 1ステ一ジ
分り処理が完了するとセットされる。第3のステージ終
了F71r7−6は実11部7−3の1ステ一ジ分り処
理が完了するとセットされる。
ェース部7−1の1ステ一ジ分の処理が完了するとセッ
トさJしる。第2のステージ終了F/F7−5は、オペ
ランドアドレス計31− 部7−2 (Q 1ステ一ジ
分り処理が完了するとセットされる。第3のステージ終
了F71r7−6は実11部7−3の1ステ一ジ分り処
理が完了するとセットされる。
ステージ開始1計号7−7′はANIJゲート7−7に
より得られた、第1.第2.第3のステージ終了F /
F 7−4 、7−5 、 7−6の各出力の論理積
で、この信号が入力すると、バスインタフェース部7−
1.オペランドアドレス計算部7−2゜実行部7−3の
各機能ユニットは、第1.第2゜第3のステージ終了F
/F7−4.7−5.7−6全リセツトし、同時に次の
1ステ一ジ分の処理を開始する。タイミング記憶部7−
8は、あらかじめ次の信号を衝突なしに開始できるよう
にセットされたタイミング信号が保持させられており。
より得られた、第1.第2.第3のステージ終了F /
F 7−4 、7−5 、 7−6の各出力の論理積
で、この信号が入力すると、バスインタフェース部7−
1.オペランドアドレス計算部7−2゜実行部7−3の
各機能ユニットは、第1.第2゜第3のステージ終了F
/F7−4.7−5.7−6全リセツトし、同時に次の
1ステ一ジ分の処理を開始する。タイミング記憶部7−
8は、あらかじめ次の信号を衝突なしに開始できるよう
にセットされたタイミング信号が保持させられており。
所定のタイミングでそのタイミング信号を送出する。
第8図(a)の動作図は1本実施例に基づ(CPUのメ
モリ間の演q、命令の動作図で、各機能ユニット毎の処
理動作は、第2図に示す従来例のものと’I’cs の
第5ステージを除いて同一である。11c5の第5ステ
ージでは実行部7−3において、バスインタフェース部
7−2で読出されたデータと所定レジスタとの間での演
算のほかに1次の命令を起・1のさせる。
モリ間の演q、命令の動作図で、各機能ユニット毎の処
理動作は、第2図に示す従来例のものと’I’cs の
第5ステージを除いて同一である。11c5の第5ステ
ージでは実行部7−3において、バスインタフェース部
7−2で読出されたデータと所定レジスタとの間での演
算のほかに1次の命令を起・1のさせる。
第8図(b)は、同様に本実施例に基づ(CPUのレジ
スタ間の転送命令の動作図で +pD1 の最初のステ
ージのJW間、バスインタフェース部7−1で命令コー
ドの読出しを行なうll’lD2 02番目のステージ
の期間実行部7−3で命令のjIl¥読を行なう・TD
3 の3番目のステージの期間実行部7−3でデータの
転送全行なうほか1次の命令を起動させる。
スタ間の転送命令の動作図で +pD1 の最初のステ
ージのJW間、バスインタフェース部7−1で命令コー
ドの読出しを行なうll’lD2 02番目のステージ
の期間実行部7−3で命令のjIl¥読を行なう・TD
3 の3番目のステージの期間実行部7−3でデータの
転送全行なうほか1次の命令を起動させる。
次に、第9図に示す本実施例のタイミング図を参照して
、第8図(a)、 (b)の動作図に示した2つの命令
が連続的に処理される場合の動作を説明する。
、第8図(a)、 (b)の動作図に示した2つの命令
が連続的に処理される場合の動作を説明する。
tclのタイミングで命令C(メ士り間の演算命令)が
起動され、同時にオペランドアドレスロ1算M1i7−
2.実行部7−3も、Tolの期間1ステ一ジ分の処理
全行なう。l1lclの終わりまでに各機能ユニットは
1ステ一ジ分の処理を終え、それぞれ。
起動され、同時にオペランドアドレスロ1算M1i7−
2.実行部7−3も、Tolの期間1ステ一ジ分の処理
全行なう。l1lclの終わりまでに各機能ユニットは
1ステ一ジ分の処理を終え、それぞれ。
第1.第2.第3(1)ステージ終了F/P7−4゜7
−5.7−6f:セットする。これらの出力の論理積が
ANDゲート7−7によシステージ開始信号7−7′
となり第1.第2.第3のステージ終了F/F7−4.
7−5.7−6をリセットすると同時に1次の1゛C2
に和尚する第2番目のステージの処理を、バスインタフ
ェース部7−1.オペランドアドレス計算部7−2.実
行部7−3に一斉に起動させる。
−5.7−6f:セットする。これらの出力の論理積が
ANDゲート7−7によシステージ開始信号7−7′
となり第1.第2.第3のステージ終了F/F7−4.
7−5.7−6をリセットすると同時に1次の1゛C2
に和尚する第2番目のステージの処理を、バスインタフ
ェース部7−1.オペランドアドレス計算部7−2.実
行部7−3に一斉に起動させる。
以上の処理金続け Ill 65 の第5番目のステー
ジの起動に同期して、あらかじめ命令C(メモリ間の演
算命令)で定められた通りタイミング記憶部7−8から
読出されたタイミング信号7−8′により次の命令1〕
(レジスタ間の転送命令)の実行を開始する。同様に
+1+ c7 のD命令における第3番目のステージの
起動に同期してD命令(レジスタ間の転送命令)にあら
かじめ定められた通り、タイミング記憶部7−8から読
出されたタイミング信号7−8′によ勺次の命令Eの実
行を開始する。
ジの起動に同期して、あらかじめ命令C(メモリ間の演
算命令)で定められた通りタイミング記憶部7−8から
読出されたタイミング信号7−8′により次の命令1〕
(レジスタ間の転送命令)の実行を開始する。同様に
+1+ c7 のD命令における第3番目のステージの
起動に同期してD命令(レジスタ間の転送命令)にあら
かじめ定められた通り、タイミング記憶部7−8から読
出されたタイミング信号7−8′によ勺次の命令Eの実
行を開始する。
以上説明した通り、不発明の一実施例全適用したCPU
は1次の命令の起動タイミングは、衝突図金引くのでは
なく1%命令毎に次の命令を起動してもすべての命令に
対して衝突が発生しないタイミングで命令毎にあらかじ
め定められているので、パイプライン動作をスケシ−ル
するための。
は1次の命令の起動タイミングは、衝突図金引くのでは
なく1%命令毎に次の命令を起動してもすべての命令に
対して衝突が発生しないタイミングで命令毎にあらかじ
め定められているので、パイプライン動作をスケシ−ル
するための。
従来必要とされた第5図に示す起動タイミング決定用の
バイグライン制御回路が不要とな、り制御回路を著しく
簡略化する事が可能である。
バイグライン制御回路が不要とな、り制御回路を著しく
簡略化する事が可能である。
又、各機能ユニット間の同期関係が、従来の様に固定さ
れた特定の期間に一律に同期するものではなく、1ステ
一ジ分の処理が単位となって各機能ユニット間の1ステ
一ジ分の処理がすべて完了してから次のステージへ移る
。従って1機能ユニットの設刷では処理内容に融通性が
増し、特にバスインタフェース部も、メモリのアクセス
時間に関係なくメモリ参照が完了した時点で1ステ一ジ
分の処理の完了とする事ができ、パイプライン動作の中
にかなりの柔軟性が生じる。
れた特定の期間に一律に同期するものではなく、1ステ
一ジ分の処理が単位となって各機能ユニット間の1ステ
一ジ分の処理がすべて完了してから次のステージへ移る
。従って1機能ユニットの設刷では処理内容に融通性が
増し、特にバスインタフェース部も、メモリのアクセス
時間に関係なくメモリ参照が完了した時点で1ステ一ジ
分の処理の完了とする事ができ、パイプライン動作の中
にかなりの柔軟性が生じる。
又、命令の動作図は、−律ではなくa令毎に最適1ヒさ
れているので、汎用のデータ処理装置にも容易に応用す
る事ができる。
れているので、汎用のデータ処理装置にも容易に応用す
る事ができる。
以上詳細に説明した通り、不発明のパイプライン制御方
式は、上記の構成をとることにより、従来のようにすべ
ての命令が同一の動作図でなく命令毎に最も適した動作
図金持ち、各(歳能ユニットの同期関係は従来のように
一律に固定された周期ではなく1ステージ内の1処理の
完了に基づいており、又、命令の開始タイミングは従来
のように衝突図によるのでなく各命令毎に次の命令を起
動してもすべての命令に対して衝突が発生しないタイミ
ング金あらかじめ規定しているので、従来のパイプライ
ン制御方式に比較して、)蔦−ドウエア量の増力口も最
少限に抑えられ、かつ設計における融通性も備えた高速
なパイプライン制御方式を得ることができるという効果
會有している。
式は、上記の構成をとることにより、従来のようにすべ
ての命令が同一の動作図でなく命令毎に最も適した動作
図金持ち、各(歳能ユニットの同期関係は従来のように
一律に固定された周期ではなく1ステージ内の1処理の
完了に基づいており、又、命令の開始タイミングは従来
のように衝突図によるのでなく各命令毎に次の命令を起
動してもすべての命令に対して衝突が発生しないタイミ
ング金あらかじめ規定しているので、従来のパイプライ
ン制御方式に比較して、)蔦−ドウエア量の増力口も最
少限に抑えられ、かつ設計における融通性も備えた高速
なパイプライン制御方式を得ることができるという効果
會有している。
特に、高性能化が著しいマイクロコンビーータへ応用し
た場合には、ノ\−ドウエア量の増加が最少限であり、
逐次処理Vこ比較すると、大幅な処理速度の改善が期待
でき、芙用効果を最も顕著に発揮できる。
た場合には、ノ\−ドウエア量の増加が最少限であり、
逐次処理Vこ比較すると、大幅な処理速度の改善が期待
でき、芙用効果を最も顕著に発揮できる。
第1図は、従来のパイプライン制御方式qノー例に用い
たCPUのブロック図、第2図は第1図に示したCPU
の命令の動作図、第3図(al〜(f)は。 第2図に示した動作図で次の命令を各ステージ毎に起動
させた時の動作図、第4図は第2図に示した動作図によ
るePU(1)衝突図、第5図は第2図に示した動作図
によるC P [Jのパイプライン制御回路のブロック
図、第6図は第5図のパイプライン制御回路のデータの
変化全示す動作図、第7図は本発明の一実施例に用いた
C P IJのブロック図、第ン)図(a)、 (bl
は第7図に示すCPUの命令の動作図、第9図は第7図
に示したC 1) Uのタイムチャートである。 1−1・・・・・・バスインタフェースff1i、1−
2・・・・・・オペランドアドレス計算部、1−3・・
・・・実行部。 5−1・・・・・・シフトレジスタ、5−1−0.5−
1−1,5−1−2.5−1−3.5−1−4.5−1
−5・・・・・・レジスタ、5−2・・・・・・シフト
クロック、5−3・・・・・・命令開始信号、5−4・
・・・・・初期衝突データ発生回路、5−5・・・・・
・組みゲート& 7−1・・・・・・バスインタフェー
ス*L7−2・・・・・オペランド計算部、7−3・・
・・・・実行部、7−4.7−5゜7−6・・・・・・
第1.第2.第3のステージ終了フリップフロップ、7
−7・・・・・・ANDゲート、7−7’・・・・・・
命令開始信号、7−8・・・・・・タイミング信号記憶
部、7−8’・・・・・・タイミング信号* TA 1
−TA s。 TB1ゞTa 11. TC1″TCs、 TD sゝ
TD3°°°°°°ステージ& tAl〜tA6. t
CIA+tC811”タイミング・第1図 第2図 第4図 (’l) hs (e) tAg (↑) 榮3図 第5図 第6図 (イ)7図 (I)) 第8図
たCPUのブロック図、第2図は第1図に示したCPU
の命令の動作図、第3図(al〜(f)は。 第2図に示した動作図で次の命令を各ステージ毎に起動
させた時の動作図、第4図は第2図に示した動作図によ
るePU(1)衝突図、第5図は第2図に示した動作図
によるC P [Jのパイプライン制御回路のブロック
図、第6図は第5図のパイプライン制御回路のデータの
変化全示す動作図、第7図は本発明の一実施例に用いた
C P IJのブロック図、第ン)図(a)、 (bl
は第7図に示すCPUの命令の動作図、第9図は第7図
に示したC 1) Uのタイムチャートである。 1−1・・・・・・バスインタフェースff1i、1−
2・・・・・・オペランドアドレス計算部、1−3・・
・・・実行部。 5−1・・・・・・シフトレジスタ、5−1−0.5−
1−1,5−1−2.5−1−3.5−1−4.5−1
−5・・・・・・レジスタ、5−2・・・・・・シフト
クロック、5−3・・・・・・命令開始信号、5−4・
・・・・・初期衝突データ発生回路、5−5・・・・・
・組みゲート& 7−1・・・・・・バスインタフェー
ス*L7−2・・・・・オペランド計算部、7−3・・
・・・・実行部、7−4.7−5゜7−6・・・・・・
第1.第2.第3のステージ終了フリップフロップ、7
−7・・・・・・ANDゲート、7−7’・・・・・・
命令開始信号、7−8・・・・・・タイミング信号記憶
部、7−8’・・・・・・タイミング信号* TA 1
−TA s。 TB1ゞTa 11. TC1″TCs、 TD sゝ
TD3°°°°°°ステージ& tAl〜tA6. t
CIA+tC811”タイミング・第1図 第2図 第4図 (’l) hs (e) tAg (↑) 榮3図 第5図 第6図 (イ)7図 (I)) 第8図
Claims (1)
- 【特許請求の範囲】 複数の命令全並列に実行するデータ処理装置のパイプラ
イン制御方式において、前記データ処理装置が、命令実
行手順に従って分けられた複数の相異なる基本処理を専
門に実行する複数の機能ユニットと、実行中の命令の次
の命令の実行開始タイミングをすべての命令にわたって
fljlJ lllするタイミング制御手段と、前記機
能ユニット毎にそれぞれ前記基本処理の完了状態を保持
する保持手段と。 該保持手段の保持状態に対応して前記機能ユニットに前
記基本処理の開始信号を送出する処理開始制御、+11
+段と全備え、前記保持手段が前記基本処理の完了状r
bHk保持することに同期して前記処理開始制御手段に
より前記機能ユニ、トのすべてが前記命令実行手順に従
って次の基本処理を同時に開始すると共に前記タイミン
グ制御手段により所定の次の命令の実行を起動させるこ
とを特許とするパイプライン制御方式。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP14337183A JPS6033635A (ja) | 1983-08-05 | 1983-08-05 | パイプライン制御方式 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP14337183A JPS6033635A (ja) | 1983-08-05 | 1983-08-05 | パイプライン制御方式 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPS6033635A true JPS6033635A (ja) | 1985-02-21 |
| JPS6359175B2 JPS6359175B2 (ja) | 1988-11-18 |
Family
ID=15337225
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP14337183A Granted JPS6033635A (ja) | 1983-08-05 | 1983-08-05 | パイプライン制御方式 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPS6033635A (ja) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH0223970U (ja) * | 1988-07-29 | 1990-02-16 |
Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS52115640A (en) * | 1976-02-06 | 1977-09-28 | Int Computers Ltd | Register for pipe line data processor system |
| JPS57105044A (en) * | 1980-12-23 | 1982-06-30 | Fujitsu Ltd | Interlock control system |
-
1983
- 1983-08-05 JP JP14337183A patent/JPS6033635A/ja active Granted
Patent Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS52115640A (en) * | 1976-02-06 | 1977-09-28 | Int Computers Ltd | Register for pipe line data processor system |
| JPS57105044A (en) * | 1980-12-23 | 1982-06-30 | Fujitsu Ltd | Interlock control system |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH0223970U (ja) * | 1988-07-29 | 1990-02-16 |
Also Published As
| Publication number | Publication date |
|---|---|
| JPS6359175B2 (ja) | 1988-11-18 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US3959774A (en) | Processor which sequences externally of a central processor | |
| JPH0248931B2 (ja) | ||
| JPH0124655Y2 (ja) | ||
| JPH0346850B2 (ja) | ||
| US5253349A (en) | Decreasing processing time for type 1 dyadic instructions | |
| WO1985002278A1 (fr) | Procede de commande par microprogramme | |
| JPH0560629B2 (ja) | ||
| JPH0616287B2 (ja) | マスク付きベクトル演算処理装置 | |
| JP2000194556A (ja) | 命令ルックアヘッドシステムおよびハ―ドウェア | |
| JP2002278774A (ja) | プロセッサ内の機能単位の制御時に命令語を生成する方法と装置 | |
| JPS6214868B2 (ja) | ||
| JPS6359175B2 (ja) | ||
| JPS5875250A (ja) | デジタル情報処理装置 | |
| JP2755646B2 (ja) | データ駆動型データ処理装置 | |
| JPS62119661A (ja) | 共有メモリに対するアクセス管理方式 | |
| JPH0228744A (ja) | バスインターフェースユニット | |
| JP2541351B2 (ja) | 半導体試験装置 | |
| KR100723875B1 (ko) | 동시기동에 적합한 마이크로프로세서 및 상기마이크로프로세서에서의 리셋 및 프로세서 아이디 제어방법 | |
| JPS60129837A (ja) | 信号処理演算プロセツサ | |
| JP2982129B2 (ja) | マイクロプログラム制御装置 | |
| JPH04169954A (ja) | 情報処理装置 | |
| JPH0916399A (ja) | 計算機 | |
| JPS58159169A (ja) | 並列処理方式 | |
| JPS5953902A (ja) | 制御装置 | |
| JPH11134191A (ja) | マイクロコンピュータ |