JP2924735B2 - パイプライン演算装置及びデコーダ装置 - Google Patents

パイプライン演算装置及びデコーダ装置

Info

Publication number
JP2924735B2
JP2924735B2 JP26040995A JP26040995A JP2924735B2 JP 2924735 B2 JP2924735 B2 JP 2924735B2 JP 26040995 A JP26040995 A JP 26040995A JP 26040995 A JP26040995 A JP 26040995A JP 2924735 B2 JP2924735 B2 JP 2924735B2
Authority
JP
Japan
Prior art keywords
stage
register
instruction
condition
decoder
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
JP26040995A
Other languages
English (en)
Other versions
JPH09101890A (ja
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.)
Denso Corp
Original Assignee
Denso 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
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=17347531&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=JP2924735(B2) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by Denso Corp filed Critical Denso Corp
Priority to JP26040995A priority Critical patent/JP2924735B2/ja
Priority to US08/725,709 priority patent/US6003127A/en
Publication of JPH09101890A publication Critical patent/JPH09101890A/ja
Application granted granted Critical
Publication of JP2924735B2 publication Critical patent/JP2924735B2/ja
Priority to US09/429,022 priority patent/US6308263B1/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Advance Control (AREA)

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明はパイプライン演算装
置における条件分岐のための技術に関する。
【0002】
【従来の技術】従来、演算機能をフェッチ(命令読み出
し;IF)、デコード(命令解読;DEC)、演算(E
XE)、メモリアクセス(MA)、ライトバック(W
B)の複数ステージに分け、並列して各ステージの処理
を行うことにより、複数の命令処理サイクルを部分的に
重複したタイミングで実行するパイプライン処理方式を
採用したマイクロプロセッサが知られている。
【0003】例えば、5段パイプライン処理方式を採用
したマイクロプロセッサの命令処理サイクルと各ステー
ジとの関係を模式的に示すと図4に示すようになる。こ
の例において、今、n番目の命令処理サイクルにおいて
条件分岐命令がフェッチされたとすると、当該条件分岐
命令をDECステージで復号し、一つ前のn−1番目の
命令処理サイクルのEXEステージの演算結果を待ち、
当該n番目の命令処理サイクル中のDECステージに
て、この演算結果と分岐条件とを比較してから分岐先ア
ドレスの演算ステージに進むようになっている。
【0004】
【発明が解決しようとする課題】このため、n番目の命
令処理サイクルのDECステージは、n−1番目の命令
処理サイクルの演算結果が得られるまでの時間と、その
後の条件分岐の比較時間との総和となり、時間的に長い
ステージLとなる。パイプライン処理では、いずれか最
長時間を要するステージの長さにより、他のステージの
長さも律速されることとなる。かかる事情により、従来
は、各ステージの所要時間が長くなり、処理時間を速め
ることができないという問題がある。
【0005】そこで、本発明は、条件分岐のための比較
処理を効率よく実施し、処理時間を速めることを目的と
する。
【0006】
【課題を解決するための手段】かかる目的を達成するた
めに、請求項1の発明では、パイプライン演算装置にお
いて、デコーダ装置は、分岐命令をフェッチしたとき、
分岐命令をフェッチした命令処理サイクルの演算ステー
ジにて分岐先アドレスの演算を実行し、分岐先アドレス
の演算と並行して条件比較を実行する。
【0007】これにより、従来、各ステージの長さを律
速していたデコードステージの長さが短くなり、全体の
処理時間を短縮することができる。上記目的を達成する
ため、特に、請求項2の発明の様に、レジスタ群及びデ
コーダ群を備え、データパス側の演算部等の各ユニット
を制御することによりパイプライン処理の各ステージを
制御するデコーダ装置において、分岐条件判断用の比較
器を、演算ステージを制御するために設けられたレジス
タと並列に配置し、分岐命令をフェッチしたとき、レジ
スタにて分岐先アドレスの演算を行うとともに、比較器
にて条件比較を行うことにより、分岐先アドレスの演算
と並行して条件比較を実行するとよい。また、請求項3
の発明の様に、デコードステージによる分岐命令のデコ
ード結果を記憶する条件レジスタと、演算ステージによ
る演算結果フラグをデータパスを介して記憶するフラグ
レジスタとを、デコードステージ制御部分と前記比較器
との間に位置するように配置し、これら条件レジスタ及
びフラグレジスタの記憶内容を比較器に入力するように
構成するとよい。
【0008】このデコーダ装置によれば、分岐条件の成
立/不成立の比較は、当該分岐命令をフェッチした命令
処理サイクルのデコードステージではなく、演算ステー
ジにて分岐先アドレスの演算と並行して実行されること
になる。このように、請求項1,2の発明では、演算結
果と分岐条件との比較を、分岐命令を受けた命令処理サ
イクルのデコードステージで行うのではなく、分岐先ア
ドレスの演算と並行して次の命令処理サイクルのデコー
ドステージで行うようにすることにより、デコードステ
ージの演算待ち時間を無くし、処理の高速化を図るもの
である。
【0009】
【発明の実施の形態】次に、本発明の実施の形態を説明
する。実施の形態として説明するマイクロプロセッサ
は、図1に示すように構成される。このマイクロプロセ
ッサは、アドレスバス4のデータに従つて、メモリ(図
示せず)からデータバス3を経由して命令を読み込み解
読するデコーダ1と、デコーダ1から制御バス5によっ
て制御されるデータパス2とからなる。データパス2
は、論理、算術、シフト演算等を行う演算部2−2と演
算結果を格納するレジスタフアイル2−1、及び現在の
プログラムのアドレスをカウントするプログラムカウン
タ2−3等のユニットからなる。また、演算結果のフラ
グはフラグバス6によりデコーダ1に接続されている。
このように、マイクロプロセッサの全体構成自体は一般
的なものである。
【0010】この実施の形態では、デコーダ1として図
2に示すような構成のデコーダユニットを採用してい
る。即ち、デコーダ1は、データバス3からの命令を格
納する命令レジスタ1−1と、命令レジスタ1−1の値
と現在の制御状態及び比較信号1−13により変化する
状態レジスタ1−2と、条件分岐命令の条件を記憶する
条件レジスタ1−3と、データパス2からフラグバス6
を通じて入力される演算結果フラグを記憶するフラグレ
ジスタ1−4と、これら条件レジスタ1−3及びフラグ
レジスタ1−4の記憶内容を比較して比較信号1−13
を出力する比較器1−5と、演算ステージ、メモリアク
セスステージ及びライトバックステージの制御情報を保
持するためのEXEレジスタ1−7、MAレジスタ1−
9及びWBレジスタ1−11と、各ステージの制御情報
をデコードして制御バス5を介してデータパス2の各ユ
ニットへと制御信号を送出するDECデコーダ1−6、
EXEデコーダ1−8、MAデコーダ1−10及びWB
デコーダ1−12からなる。尚、各レジスタはシステム
クロック(図示せず)に同期して動作する。
【0011】このデコーダ1の構成上の特徴は、比較器
1−5の配置にある。比較器1−5は、図示の様に、E
XEレジスタ1−7と並列位置となるように配置されて
いる。従って、EXEレジスタ1−7及びEXEデコー
ダ1−8による演算ステージの制御実行中に比較器1−
5で条件比較を並行して行うことができる。
【0012】このような構成のデコーダ1を備えたマイ
クロプロセッサにおけるパイプライン処理を図3の模式
図で説明する。このマイクロプロセッサでは、図示の様
に、各命令処理サイクルは、演算機能をフェッチ(I
F)、デコード(DEC)、演算(EXE)、メモリア
クセス(MA)、ライトバック(WB)の5つのステー
ジに分け、並列して各ステージの処理を行うことによ
り、複数の命令処理サイクルを部分的に重複したタイミ
ングで実行する5段パイプライン処理が採用されてい
る。
【0013】ここで、図示(A)の様に、n番目の命令
処理サイクルで条件分岐命令がフェッチされると、この
サイクルのデコードステージでは、命令の解読だけを行
いn−1番目のサイクルの演算結果と分岐条件との比較
は行わない。そして、そのまま演算ステージへ移行して
分岐先のアドレス計算を行う。
【0014】条件分岐命令の分岐条件は、DECデコー
ダ1−6から条件レジスタ1−3へ送り込まれ、格納さ
れる。また、n−1番目の命令処理サイクル中の演算フ
ラグ結果は、データパス2からフラグバス6を介してフ
ラグレジスタ1−4へ格納される。そして、これら条件
レジスタ1−3の分岐条件とフラグレジスタ1−4の演
算フラグ結果が比較器1−5に入力され、条件成立/不
成立を比較した結果が出力される。この比較は、EXE
レジスタ1−7及びEXEデコーダ1−8がデータパス
2側に分岐先アドレスの演算処理を実行させているタイ
ミングにて実行されることになる。
【0015】従って、見方によっては、図示の模式図の
様に、n+1番目の命令処理サイクルのDECステージ
で分岐条件成立/不成立の比較が行われるといってよ
い。こうして比較した結果、条件が成立している場合に
は、n+1番目の演算処理サイクルにおけるEXEステ
ージの実行は、比較器1−5の出力により、EXEデコ
ーダ1−8を介して破棄される。また、MAステージ、
WBステージの実行も比較器1−5の出力がMAレジス
タ1−9及びWBレジスタ1−11に伝搬されることに
より、破棄される。
【0016】次のn+2番目の命令は、比較信号1−1
3が状態レジスタ1−2の値を変化させることにより、
NOP命令に変更される。そして、n+3番目の命令処
理サイクルでn番目のEXEステージで計算された分岐
先アドレスがアドレスバス4に出力され、プログラムの
変更が行われる。
【0017】なお、n番目の命令処理サイクルのMAス
テージ及びWBステージの実行も比較信号1−13によ
って破棄される。一方、条件が不成立の場合は、図示
(B)の様に、n+1番目の命令をそのまま実行し、飛
び先の変更は行わない。
【0018】以上のような構成により、条件分岐命令を
フェッチした処理サイクルのデコーダステージの長さ
は、図3に示す様に、演算時間と比較時間の総和ではな
く、演算時間にのみ律速され、処理時間は速くなる。
【図面の簡単な説明】
【図1】 発明の実施の形態におけるマイクロプロセッ
サの全体構成を示すブロック図である。
【図2】 発明の実施の形態におけるデコーダユニット
の構成を示すブロック図である。
【図3】 発明の実施の形態におけるパイプライン処理
の動作を示す模式図である。
【図4】 従来例におけるパイプライン処理の動作を示
す模式図である。
【符号の説明】
1・・・デコーダ、1−1・・・命令レジスタ、1−2
・・・状態レジスタ、1−3・・・条件レジスタ、1−
4・・・フラグレジスタ、1−5・・・比較器、1−6
・・・DECデコーダ、1−7・・・EXEレジスタ、
1−8・・・EXEデコーダ、1−9・・・MAレジス
タ、1−10・・・MAデコーダ、1−11・・・WB
レジスタ、1−12・・・WBデコーダ、1−13・・
・比較信号、2・・・データパス、2−1・・・レジス
タフアイル、2−2・・・演算部、3・・・データバ
ス、4・・・アドレスバス、5・・・制御バス、6・・
・フラグバス。
フロントページの続き (56)参考文献 特開 平5−73310(JP,A) 特開 平4−60720(JP,A) 特開 平5−224926(JP,A) 特開 平6−161751(JP,A) 特開 昭62−54342(JP,A) 特開 平2−47725(JP,A) 特開 昭62−226232(JP,A) ヘネシー&パターソン「コンピュー タ・アーキテクチャ −設計・実現・評 価の定量的アプローチ」、日経BP社、 平成5年(1993年)5月31日、p.191 −195,243−249,262−266 (58)調査した分野(Int.Cl.6,DB名) G06F 9/38

Claims (3)

    (57)【特許請求の範囲】
  1. 【請求項1】 演算機能を複数のステージに分け、並列
    して各ステージの処理を行うことにより、複数の命令処
    理サイクルを部分的に重複したタイミングで実行するパ
    イプライン演算装置において、前記各ステージを制御するデコーダ装置を備え、 該デコーダ装置は、 分岐命令をフェッチしたとき、当該
    分岐命令をフェッチした命令処理サイクルの演算ステー
    ジにて分岐先アドレスの演算を実行し、該分岐先アドレ
    スの演算と並行して条件比較を実行することを特徴とす
    るパイプライン演算装置。
  2. 【請求項2】 レジスタ群及びデコーダ群を備え、デー
    タパス側の演算部等の各ユニットを制御することにより
    パイプライン処理の各ステージを制御するデコーダ装置
    において、 分岐条件判断用の比較器を、演算ステージを制御するた
    めに設けられたレジスタと並列に配置し、 分岐命令をフェッチしたとき、前記レジスタにて分岐先
    アドレスの演算を行うとともに、前記比較器にて条件比
    較を行うことにより、前記分岐先アドレスの演算と並行
    して前記条件比較を実行 することを特徴とするデコーダ
    装置。
  3. 【請求項3】 請求項2 記載のデコーダ装置において、 デコードステージによる分岐命令のデコード結果を記憶
    する条件レジスタと、演算ステージによる演算結果フラ
    グをデータパスを介して記憶するフラグレジスタとを、
    デコードステージ制御部分と前記比較器との間に位置す
    るように配置し、これら条件レジスタ及びフラグレジス
    タの記憶内容を比較器に入力するように構成することを
    特徴とするデコーダ装置。
JP26040995A 1995-10-04 1995-10-06 パイプライン演算装置及びデコーダ装置 Expired - Lifetime JP2924735B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP26040995A JP2924735B2 (ja) 1995-10-06 1995-10-06 パイプライン演算装置及びデコーダ装置
US08/725,709 US6003127A (en) 1995-10-04 1996-10-04 Pipeline processing apparatus for reducing delays in the performance of processing operations
US09/429,022 US6308263B1 (en) 1995-10-04 1999-10-29 Pipeline processing apparatus for reducing delays in the performance of processing operations

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP26040995A JP2924735B2 (ja) 1995-10-06 1995-10-06 パイプライン演算装置及びデコーダ装置

Publications (2)

Publication Number Publication Date
JPH09101890A JPH09101890A (ja) 1997-04-15
JP2924735B2 true JP2924735B2 (ja) 1999-07-26

Family

ID=17347531

Family Applications (1)

Application Number Title Priority Date Filing Date
JP26040995A Expired - Lifetime JP2924735B2 (ja) 1995-10-04 1995-10-06 パイプライン演算装置及びデコーダ装置

Country Status (1)

Country Link
JP (1) JP2924735B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000020309A (ja) * 1998-06-30 2000-01-21 Toshiba Microelectronics Corp デジタルシグナルプロセッサ

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
ヘネシー&パターソン「コンピュータ・アーキテクチャ −設計・実現・評価の定量的アプローチ」、日経BP社、平成5年(1993年)5月31日、p.191−195,243−249,262−266

Also Published As

Publication number Publication date
JPH09101890A (ja) 1997-04-15

Similar Documents

Publication Publication Date Title
US5404552A (en) Pipeline risc processing unit with improved efficiency when handling data dependency
JP3575617B2 (ja) コンピュータシステム
US5764943A (en) Data path circuitry for processor having multiple instruction pipelines
US5604878A (en) Method and apparatus for avoiding writeback conflicts between execution units sharing a common writeback path
JPH1124929A (ja) 演算処理装置およびその方法
JPH04367936A (ja) スーパースカラープロセッサ
JP2507638B2 (ja) デ―タ処理装置
JP3578883B2 (ja) データ処理装置
US6092184A (en) Parallel processing of pipelined instructions having register dependencies
JP3096429B2 (ja) 複数の命令の非整順完了をサポートする方法およびスーパースカラ・マイクロプロセッサ
JP3759729B2 (ja) スペキュレーティブ・レジスタの調整
JP2007528549A (ja) 電子回路
JPH10124312A (ja) 中央処理装置
JP3199035B2 (ja) プロセッサ及びその実行制御方法
JP2503223B2 (ja) 先行制御方式
JPS6125166B2 (ja)
JP3405106B2 (ja) プログラマブルコントローラ
US9135006B1 (en) Early execution of conditional branch instruction with pc operand at which point target is fetched
JP3547562B2 (ja) マイクロプロセッサ
JP7487535B2 (ja) 演算処理装置
JPH09101890A (ja) パイプライン演算装置及びデコーダ装置
JP2591325B2 (ja) 分岐制御装置
JP2856784B2 (ja) 電子計算機
JP3743155B2 (ja) パイプライン制御型計算機
JP2597744B2 (ja) 分岐制御方法