JPH0766326B2 - 情報処理装置 - Google Patents

情報処理装置

Info

Publication number
JPH0766326B2
JPH0766326B2 JP62286066A JP28606687A JPH0766326B2 JP H0766326 B2 JPH0766326 B2 JP H0766326B2 JP 62286066 A JP62286066 A JP 62286066A JP 28606687 A JP28606687 A JP 28606687A JP H0766326 B2 JPH0766326 B2 JP H0766326B2
Authority
JP
Japan
Prior art keywords
instruction
address
branch
counter
buffer
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
JP62286066A
Other languages
English (en)
Other versions
JPH01126733A (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.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial 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 Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to JP62286066A priority Critical patent/JPH0766326B2/ja
Priority to EP88118764A priority patent/EP0315995B1/en
Priority to DE3856299T priority patent/DE3856299T2/de
Priority to KR1019880014765A priority patent/KR930009617B1/ko
Publication of JPH01126733A publication Critical patent/JPH01126733A/ja
Priority to US07/614,680 priority patent/US5197136A/en
Publication of JPH0766326B2 publication Critical patent/JPH0766326B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Advance Control (AREA)

Description

【発明の詳細な説明】 産業上の利用分野 本発明は情報処理装置における分岐命令の高速化に関す
るものである。
従来の技術 従来の情報処理装置は、実行中の命令のアドレスを保持
するプログラムカウンタ(以下、PCと省略)を持ってお
り、PCで保持されるアドレスより主記憶の命令を読み込
み、命令の実行を行う。
第3図はこの従来の情報処理装置を示すブロック図であ
り、10は命令およびデータを格納する主記憶部、11は主
記憶から情報処理装置内部に命令を読みこむ命令読みこ
み部、12は読みこんだ命令を解読してコマンドを生成す
る命令解読部、13は現在実行している命令のアドレスを
示すプログラムカウンタ(PC)、14はコマンドを実行す
る実行部である。
以上のように構成された従来の装置においては、命令読
みこみ部11が、指定されたアドレスについて、主記憶部
10より命令を読みこむ。命令解読部12は読みこんだ命令
を解読し、実行部14にコマンドを発行する。実行部14は
受取ったコマンドを実行し、命令が終了するとPC13を更
新する。
発明が解決しようとする問題点 しかしながら上記のような構成では、分岐命令も実行部
14で処理させているので、次のような問題点を有してい
た。
(1)命令読みこみ部11および命令解読部12内の既に読
みこんだ命令を無効化しなければならない。
(2)分岐先命令実行以前に分岐先命令のアドレスおよ
び分岐先命令を準備しないので、分岐成立時の命令実行
開始が遅れる。
(3)分岐命令より先に解読された命令の処理が終わる
まで分岐命令が処理できない。
本発明はかかる点に鑑み、分岐命令を高速に実行する情
報処理装置を提供することを目的とする。
問題点を解決するための手段 本発明は分岐命令を処理する命令解読部と、読みだした
命令を格納する命令バッファと、アドレス計算を行う加
算器と、先読み命令のアドレスを格納する命令先読みカ
ウンタと、解読中の命令のアドレスを格納する命令解読
カウンタを備えた情報処理装置である。
作用 本発明は前記した構成により、命令解読部が分岐命令を
解読すると、実行部とは独立かつ並列して命令バッファ
内の分岐命令のディスプレースメントと命令解読カウン
タのアドレスとから分岐先アドレスを算出する。続いて
分岐命令より先に解読された命令の実行完了を待たずに
分岐先命令を高速に準備し解読を行なう。命令実行部で
は分岐命令より先に解読された命令の実行完了後直ちに
分岐先命令を実行することが可能となる。
実施例 第1図は本発明の一実施例における情報処理装置の構成
を示すブロック図である。第1図において、1は実行す
べき命令が格納されており高速に命令を読みだすことの
可能な命令用のキャッシュ、2は先行的に命令を読み込
むためのアドレスを保持し、先読みした命令のバイト数
分カウントアップする機能を持つ命令先読みカウンタ、
3は読みだされた命令をキューイングするFIFO形式の命
令バッファ、4は読み込んだ命令を解読し実行部のコマ
ンドを生成する命令解読部、5は命令解読部4が発行し
た実行コマンドをキューイングするFIFO形式の実行コマ
ンドバッファ、6は入力された実行コマンドを処理する
実行部、7は次に命令解読部4で解読する命令のアドレ
スを保持し、解読した命令のバイト数をカウントアップ
する機能を持つ命令解読カウンタ、8は実行部6および
命令解読部4に存在する命令に対応するアドレスをキュ
ーイングするFIFO形式のプログラムカウンタバッファ、
9は命令解読カウンタ7のアドレスとディスプレースメ
ントを加算する加算器である。
第2図は本発明における無条件分岐命令の動作を示すタ
イミングチャート図である。第2図においてA0は分岐命
令(BRA)より先に解読された命令、BRAは無条件分岐命
令、A1は分岐命令(BRA)に後続する命令、A2はA1に後
続する命令、B0は分岐先の命令である。
以上のように構成されたこの実施例の情報処理装置につ
いて、最初に、分岐をしない通常動作を説明する。
(1)命令先読みカウンタ2に格納されているアドレス
によるキャッシュ1から命令を読出し、命令バッファ3
に格納する。(以後、命令先読み動作と呼ぶ。) (2)命令先読みカウンタ2は命令バッファ3に格納し
た命令のバイト数分だけアドレスをカウントアップした
後、そのアドレスを保持する。
(3)命令解読部4は命令バッファ3の底の命令を取り
出し、解読する。
(4)命令解読部4は解読後、実行コマンドバッファ5
にコマンドを格納すると同時に、命令解読カウンタ7は
解読した命令のバイト数分だけアドレスをカウントアッ
プした後、そのアドレスを保持する。
(5)命令解読部4が命令の最終語を解読中には、命令
解読カウンタ7は次に解読すべき命令の先頭アドレスに
セットされる。
(6)命令解読部4は1命令解読後、命令解読カウンタ
7に準備された次に解読すべき命令の先頭アドレスをプ
ログラムカウンタバッファ8に格納する。
(7)実行部6は、前実行コマンドの処理が終了する
と、実行コマンドバッファ5の底のコマンドを取り出
し、実行する。現在実行中の命令のアドレスはプログラ
ムカウンタバッファ8の底に格納されている。
(8)実行部6は読みこんだコマンドを実行し、1命令
が実行終了するとプログラムカウンタバッファ8の底の
アドレスを廃棄する。
次に分岐命令実行時の動作を第2図を用いて説明する。
(1)〜(3)は分岐をしない通常動作と同じである。
(4)命令解読部4サイクルC2で、無条件分岐命令BRA
を解読すると命令先読み動作を停止させる。命令バッフ
ァ3の底にはA2が準備された状態で停止する。
(5)命令解読部4はサイクルC3で、無条件分岐命令BR
Aに後続する命令A1を読みこみ解読を始める。
(6)加算器9はサイクルC3で、命令バッファ3内に格
納されている分岐命令に付属するディスプレースメント
と命令解読カウンタ7に格納された分岐命令のアドレス
とを加算し、分岐先アドレスを生成する。
(7)同サイクルで生成された分岐先アドレスは命令先
読みカウンタ2に格納されると同時に、命令解読カウン
タ7にも格納される。
(8)命令解読部4はサイクルC4で、命令先読みカウン
タ2に格納されている分岐先アドレスを出力し、キャッ
シュ1から分岐先命令B0を読出し、命令バッファ3を初
期化した後、格納する。
(9)命令解読部4はサイクルC4で、命令先読み動作を
再開する。
(10)命令解読部4は既に解読済の命令A1を無効化す
る。
(11)命令解読部4は解読中の命令A2を無効化する。
(12)命令解読部4は命令解読カウンタ7に準備された
分岐先命令B0の先頭アドレスをプログラムカウンタバッ
ファ8内の分岐命令BRAのアドレスにオーバーライトす
る。
(13)命令解読部4はサイクルC5で、命令バッファ3か
ら分岐先命令B0を取り出し、解読する。
(14)命令解読部4はサイクルC6で、実行コマドバッフ
ァ5にコマンドを格納する。
(15)実行部6は、前実行コマンドの実行が終了する
と、実行コマンドバッファ5の底のコマンドを取り出
し、実行する。現在実行中の命令のアドレスはプログラ
ムカウンタバッファ8の底に格納されている。
(16)実行部6は読みこんだコマンドを実行し、1命令
が実行終了するとプログラムカウンタバッファ8の底の
アドレスを廃棄する。
第2図について以下補足説明する。命令解読部は分岐命
令(BRA)を解読後、実効アドレス計算を行うと、現在
実行中の命令A0の終了を待たずに直ちに分岐先の命令B0
の読みこみを行い、分岐先命令B0を準備できる。既に解
読済の命令A1および解読中の命令A2は無効化される。
(斜線は無効化された命令およびコマンド)この分岐先
命令B0は実行ステージのA0が終了次第実行される。
なお、この実施例において命令バッファ3、実行コマン
ドバッファ5、プログラムカウンタバッファ8は複数段
としたが、1段でも実行可能である。
また、この実施例においてキャッシュヒットの場合を説
明したが、キャッシュミスヒットの場合、キャッシュ1
がない場合においても主記憶に対して命令の読みこみ動
作が行なわれるだけで、効果には影響しない。
発明の効果 本発明によれば、分岐命令が発生した場合、分岐命令を
実行部へ発行せず命令解読部で処理すると、分岐先の命
令を高速に実行と独立かつ並列に準備することにより、
以下の効果が生まれる。
(1)既に読みこんだ命令を無効にする数が少ない、と
同時に無効化を実行部の動作と並列に行うため、オーバ
ーヘッドとならない。
(2)分岐先の命令の読みこみ、解読を実行部の動作と
並列に行なうため、分岐命令実行後、直ちに分岐先命令
を実行できる。
(3)分岐命令の処理を実行部の処理と並列に行なうた
め、分岐処理を高速に行え、かつ分岐命令による実行部
の停止が発生しない。
【図面の簡単な説明】
第1図は本発明の実施例における情報処理装置の構成を
示すブロック図、第2図は無条件分岐命令の動作を示す
タイミングチャート図、第3図は従来の情報処理装置を
示すブロック図である。 2……命令先読みカウンタ、3……命令バッファ、4…
…命令解読部、7……命令解読カウンタ、9……加算
器。

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】先読み命令のアドレスを格納する命令先読
    みカウンタと、解読中の命令のアドレスを格納する命令
    解読カウンタと、前記命令先読みカウンタのアドレスに
    より読み込んだ命令を格納する命令バッファと、前記命
    令解読カウンタに格納された解読中の命令のアドレスと
    前記命令バッファ内のデータとを加算する加算器と、前
    記命令バッファより分岐命令を取り出して解読後この分
    岐命令より先に解読された命令の実行と独立かつ並列し
    て前記加算器により分岐先アドレスを計算し、結果を前
    記命令先読みカウンタおよび前記命令解読カウンタに格
    納させ、格納した分岐先アドレスにより読み込んだ分岐
    先命令を前記命令バッファを通して入力し解読する命令
    解読部とを備えたことを特徴とする情報処理装置。
JP62286066A 1987-11-12 1987-11-12 情報処理装置 Expired - Lifetime JPH0766326B2 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP62286066A JPH0766326B2 (ja) 1987-11-12 1987-11-12 情報処理装置
EP88118764A EP0315995B1 (en) 1987-11-12 1988-11-10 Processing system for branch instruction
DE3856299T DE3856299T2 (de) 1987-11-12 1988-11-10 Verarbeitungssystem für Verzweigungsbefehle
KR1019880014765A KR930009617B1 (ko) 1987-11-12 1988-11-10 분기처리장치
US07/614,680 US5197136A (en) 1987-11-12 1990-11-19 Processing system for branch instruction

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP62286066A JPH0766326B2 (ja) 1987-11-12 1987-11-12 情報処理装置

Publications (2)

Publication Number Publication Date
JPH01126733A JPH01126733A (ja) 1989-05-18
JPH0766326B2 true JPH0766326B2 (ja) 1995-07-19

Family

ID=17699510

Family Applications (1)

Application Number Title Priority Date Filing Date
JP62286066A Expired - Lifetime JPH0766326B2 (ja) 1987-11-12 1987-11-12 情報処理装置

Country Status (1)

Country Link
JP (1) JPH0766326B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3573980B2 (ja) 1998-11-13 2004-10-06 富士通株式会社 情報処理装置及び情報処理システム

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4777587A (en) * 1985-08-30 1988-10-11 Advanced Micro Devices, Inc. System for processing single-cycle branch instruction in a pipeline having relative, absolute, indirect and trap addresses

Also Published As

Publication number Publication date
JPH01126733A (ja) 1989-05-18

Similar Documents

Publication Publication Date Title
JP2603626B2 (ja) データ処理装置
US4701844A (en) Dual cache for independent prefetch and execution units
US4521851A (en) Central processor
JPS61100837A (ja) 命令メモリ制御方法
JPS6356731A (ja) デ−タ処理装置
EP0655679A2 (en) Method and apparatus for controlling instruction in pipeline processor
CN111159062A (zh) 一种缓存数据的调度方法、装置、cpu芯片及服务器
JPH02287626A (ja) パイプライン方式の分岐命令制御装置
JPH0766326B2 (ja) 情報処理装置
US20080065870A1 (en) Information processing apparatus
JPH0760387B2 (ja) 情報処理装置
EP0156307A2 (en) Pipelined processor having dual cache memories
US7983894B2 (en) Data processing
JPH07306785A (ja) 分岐命令実行機能を持つプロセッサおよび分岐命令制御方法
US20140019722A1 (en) Processor and instruction processing method of processor
JP2668987B2 (ja) データ処理装置
JPH0646382B2 (ja) プリフェッチキュー制御方式
EP0315995B1 (en) Processing system for branch instruction
JPH01193938A (ja) 命令先読み装置
JPH0695305B2 (ja) デ−タ処理装置
JPS60241136A (ja) デ−タ処理装置
CN116700794A (zh) 一种获取待执行指令的方法及系统
JP4049490B2 (ja) 情報処理装置
JPS6047618B2 (ja) 情報処理装置
JPS63163532A (ja) マイクロプロセツサ

Legal Events

Date Code Title Description
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20070719

Year of fee payment: 12

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080719

Year of fee payment: 13

EXPY Cancellation because of completion of term
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080719

Year of fee payment: 13