JPS6232507B2 - - Google Patents

Info

Publication number
JPS6232507B2
JPS6232507B2 JP57161860A JP16186082A JPS6232507B2 JP S6232507 B2 JPS6232507 B2 JP S6232507B2 JP 57161860 A JP57161860 A JP 57161860A JP 16186082 A JP16186082 A JP 16186082A JP S6232507 B2 JPS6232507 B2 JP S6232507B2
Authority
JP
Japan
Prior art keywords
instruction
buffer
storage
branch
storage 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
Application number
JP57161860A
Other languages
English (en)
Other versions
JPS5952349A (ja
Inventor
Hidefumi Kurokawa
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.)
NEC Corp
Original Assignee
Nippon Electric 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 Nippon Electric Co Ltd filed Critical Nippon Electric Co Ltd
Priority to JP16186082A priority Critical patent/JPS5952349A/ja
Publication of JPS5952349A publication Critical patent/JPS5952349A/ja
Publication of JPS6232507B2 publication Critical patent/JPS6232507B2/ja
Granted legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3802Instruction prefetching
    • G06F9/3804Instruction prefetching for branches, e.g. hedging, branch folding

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)
  • Executing Machine-Instructions (AREA)

Description

【発明の詳細な説明】 本発明は命令先取制御装置に係り、特に情報処
理装置に於ける命令先取りの制御方式に関するも
のである。
一般に、情報処理装置のプロセツサは、次の4
つのステツプ(命令によつては第2、第3のステ
ツプが抜ける場合もある。)を繰り返すことによ
つて、プログラムを実行する。
第1のステツプ;メモリから次の命令を取り出
す。
第2のステツプ;オペランドを読み出す。
第3のステツプ;命令を実行する。
第4のステツプ;結果を書込む。
また、従来の情報処理装置の実行の方式として
次の2つの方式がある。第1の方式はこれらのス
テツプを直列に実行するものであり、第2の方式
はメモリからより多くの連続した命令を取出し、
命令バツフアと呼ばれる先取り専用の内部ランダ
ム・アクセス・メモリ(RAM)に格納し、順次
これを実行するものである。
第1の方式の場合、現在実行中の命令が完全に
終了した後に次の命令をメモリから取り出すのに
対し、第2の方式の場合、前の命令の実行中に次
の命令を取り出し、前の命令が実行終了後、ただ
ちに次の命令を実行できるため、命令取り出しに
要する時間を大幅に短縮することができる。
しかしながら前記第2の方式に於ても、命令の
流れを変更する分岐命令の場合、あらかじめ先取
りしておいた先取りバツフアの命令をすべて無効
化し、分岐先アドレスから新たに命令の取出しを
しなおさなければならない。また、命令の実行結
果によつて、分岐を行うか行なわないかが決定さ
れる条件付分岐命令のような場合、特にその先取
り制御が難しくなる。
前記の欠点を克服するために、従来の技術で
は、命令の先取り用に2個以上の命令バツフア
と、その制御回路及び分岐命令の検出回路を設け
ることによつて、先取りに効果的に対処する方式
が考えられている。すなわち、命令を先取りした
時点でその命令が分岐命令か否かを検出し、無条
件分岐命令ならば分岐先アドレスを計算し、その
アドレスから引続き先取りを行ない、条件付分岐
命令の場合には分岐の成功、不成功の両方の場合
を考慮して、それぞれ分岐先アドレスからの先取
り及び分岐しない場合の先取りを2つの命令バツ
フアに並行して行う。従つて、実際に条件付分岐
命令を実行する際には分岐の成功、不成功によつ
て2つの命令バツフアのうち一方を選択し、以後
の実行をそのバツフアから行うことになる。
この方式は同時に複数命令の処理を行ういわゆ
るパイプライン制御方式とあわせて高速な処理を
要求される大型計算機に用いられることが多い
が、この方式においても、条件付分岐命令の場合
には両方の場合を考慮して命令取り出しを行うの
で命令を格納している主メモリへのアクセス回数
は増大し、主メモリの使用効率を低下させるとい
う欠点を有する。
本発明の目的は、前記欠点を解決した命令先取
制御装置を提供することにある。
本発明は、命令先取バツフア以外に、命令格納
バツフアと、この命令格納バツフアへ格納を開始
することを指令する命令(格納開始命令)手段
と、この命令を命令先取り時に検出する検出器
と、この命令格納バツフアを分岐先として指令す
る条件付分岐命令手段とを備え、命令先取り時に
前記格納開始命令を検出すると以降の先取り命令
を前記命令格納バツフアのサイズ分だけ、前記命
令先取りバツフアだけでなく前記命令格納バツフ
アへも格納し、前記条件付分岐命令による分岐の
際前記命令格納バツフアからの命令取り出しを行
うように構成されていることを特徴とする命令先
取制御装置にある。
本発明によれば、条件付分岐命令の分岐先の命
令をあらかじめ定められたバツフアに格納してお
き、分岐時のメモリアクセスを減少させ、命令先
取りの回数を減少させることにより、情報処理の
性能を向上させるという効果が得られる。
次に、本発明の実施例について図面を参照しな
がら、詳細に説明する。
第1図は本発明の一実施例である命令先取制御
装置の概略を示すブロツク図、第2図は第1図の
命令先取制御装置を利用したプログラム例を示す
説明図、第3図はプログラム実行時のバツフアの
内容を示す説明図である。
第1図において、この命令先取制御装置は、格
納命令検出信号6を出力する格納開始命令検出器
1と、命令先取バツフア2と、マルチプレクサ3
と、分岐信号7を出力する演算器4と、命令格納
バツフア5と、プログラムカウンタ退避レジスタ
8と、先取命令アドレスレジスタ9と、プログラ
ムカウンタ10とを備えている。通常、命令は先
取命令アドレス・レジスタ9により指定されたア
ドレスから、命令先取バツフア2に格納される。
このとき、格納開始命令検出器1は先取りされる
命令をチエツクし、格納開始命令なら格納命令検
出信号6をアクテイブとする。この信号6がアク
テイブになると、以降の命令を命令先取バツフア
2に格納するだけでなく、命令格納バツフア5に
も格納する。ただし、サイズは命令格納バツフア
5のサイズ分である。マルチプレクサ3は、命令
先取バツフア2と命令格納バツフア5からの命令
取り出しの切り分けを行う。通常は命令先取バツ
フア2から取り出すが、分岐信号7がアクテイブ
となつた場合は、命令格納バツフア5から命令を
取り出す。分岐信号7は演算器4の中で、条件付
分岐命令が実行され分岐が行なわれる場合にアク
テイブとなる。命令が命令格納バツフア5から取
り出されている間に命令先取バツフア2には命令
格納バツフア5に引続く命令を先取りしておき、
命令格納バツフア5の内容を全て取り出した後は
引き続き先取命令バツフア2からの取り出しを行
う。このため、格納開始命令検出時に先取命令ア
ドレスレジスタ9の内容をプログラムカウンタ退
避レジスタ8に退避しておき、分岐信号7がアク
テイブになるとこの値をプログラム・カウンタ1
0に復帰する。先取命令アドレス・レジスタ9に
はこのプログラム・カウンタ10の値に命令格納
バツフア5のサイズを加えた値をセツトし、再び
命令先取バツフア2の先取りを行う。
次に、第2図のプログラム例の説明図と第3図
のバツフアの内容の遷移を示す説明図とを用いて
本発明の動作例を示す。第2図において、12は
格納開始命令(SAVE)であり、16は条件付分
岐命令(JC)である。11,13,14,1
5,17はプログラム(A)、(B)、(C)、(D)、(E)であ
る。まず最初は、プログラム(A)11が、命令先取
バツフア2に入り、実行される(第3図の
1step)。(STVE)12が先取りされると、検出
器1により検出され(2step)、プログラム(B)13
は、命令先取バツフア2と命令格納バツフア5の
両方に格納される(3step)。その後も、プログラ
ム(C)、(D)、14,15は命令先取バツフア2から
取り出され(4、5step)、JCの実行37とな
る。この時、分岐が成立したとすると、プログラ
ム(B)13が命令格納バツフア5から取り出される
(6、7step)。この時、命令先取バツフア2には
プログラム(C)14の先取りが始まる(8step)。命
令格納バツフア5中のプログラム(B)13の実行が
終ると、命令先取バツフア2から命令の取り出し
が始まり、プログラム(C)、(D)、14,15を実行
する(9、10step)。次に、JC命令38を実行
し、分岐が成立しなければ、命令先取バツフア2
中のプログラム(E)17をそのまま実行する。
このように、本発明によれば、分岐先の命令が
あらかじめ命令格納バツフアに格納されていてる
ので、分岐時のメモリアクセスは必要なくなり、
また命令格納バツフアの命令を実行中には、命令
先取りバツフアに命令格納バツフア以降に引続く
命令の先取りを並行して行なえるので、情報処理
の性能が大幅に改善できるという効果が得られ
る。
尚、本実施例では、命令格納バツフアを一つ用
いる例を示したが、これを複数にすることによ
り、入れ子構造になつたループプログラムを高速
に実行することも可能となる。
また第3図において、命令先取バツフアの内容
18,19,20,21,25,26と命令格納
バツフアの内容31,32は、命令が取り出され
ているバツフアを示している。
【図面の簡単な説明】
第1図は本発明の実施例の命令先取制御装置の
概略を示すブロツク図、第2図は本発明の実施例
を使用したプログラム例を示す説明図、第3図は
本発明の実施例を使用した場合の再バツフアの遷
移を示す説明図である。 尚図において、1……格納開始命令検出器、2
……命令先取バツフア、3……マルチプレクサ、
4……演算器、5……命令格納バツフア、6……
格納命令検出信号、7……分岐信号、8……プロ
グラムカウンタ退避レジスタ、9……先取命令ア
ドレス・レジスタ、10……プログラムカウン
タ、11……プログラム(A)、12……格納開始命
令(SAVE)、13……プログラム(B)、14……
プログラム(C)、15……プログラム(D)、16……
条件付分岐命令(JC)、17……プログラム(E)、
18乃至26……命令先取バツフアの内容、27
乃至35……命令格納バツフアの内容、36……
格納開始命令実行、37,38……条件付分岐命
令実行。

Claims (1)

    【特許請求の範囲】
  1. 1 実行命令をあらかじめ記憶手段から読み出
    し、命令先取バツフアに格納するように構成され
    た命令先取制御装置おいて、命令実行時の条件成
    立の際の分岐先の命令を格納する命令格納バツフ
    アと、格納開始命令により前記命令格納バツフア
    に前記分岐先の命令を格納することを指令する格
    納開始命令手段と、前記記憶手段から読み出され
    た命令から前記格納開始命令を検出する検出器
    と、前記条件成立の際に前記命令格納バツフアか
    ら実行する命令を取り出す条件付分岐命令手段と
    を備え、前記格納開始命令を前記検出器により検
    出した時に前記記憶手段からの命令を前記命令先
    取バツフアおよび前記命令格納バツフアに格納
    し、前記条件成立の際に実行命令の取り出しを前
    記命令格納バツフアより行うように構成されてい
    ることを特徴とする命令先取制御装置。
JP16186082A 1982-09-17 1982-09-17 命令先取制御装置 Granted JPS5952349A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP16186082A JPS5952349A (ja) 1982-09-17 1982-09-17 命令先取制御装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP16186082A JPS5952349A (ja) 1982-09-17 1982-09-17 命令先取制御装置

Publications (2)

Publication Number Publication Date
JPS5952349A JPS5952349A (ja) 1984-03-26
JPS6232507B2 true JPS6232507B2 (ja) 1987-07-15

Family

ID=15743330

Family Applications (1)

Application Number Title Priority Date Filing Date
JP16186082A Granted JPS5952349A (ja) 1982-09-17 1982-09-17 命令先取制御装置

Country Status (1)

Country Link
JP (1) JPS5952349A (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS61165135A (ja) * 1984-12-24 1986-07-25 Fujitsu Ltd ル−プ処理方式
JP4086885B2 (ja) * 2004-11-25 2008-05-14 松下電器産業株式会社 命令供給装置

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS518304A (en) * 1974-07-10 1976-01-23 Toa Nenryo Kogyo Kk Muhaiseijobunsanzai

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS518304A (en) * 1974-07-10 1976-01-23 Toa Nenryo Kogyo Kk Muhaiseijobunsanzai

Also Published As

Publication number Publication date
JPS5952349A (ja) 1984-03-26

Similar Documents

Publication Publication Date Title
JPH0527143B2 (ja)
KR910008410B1 (ko) 마이크로코드 판독 제어 시스템
JP2004515857A (ja) マルチサイクル命令
JPS6232507B2 (ja)
JPH11345121A (ja) プログラム制御ユニット用の命令取り出し装置および方法
JP2001306334A (ja) エミュレーション装置
JP2531791B2 (ja) フエッチアクセス時の異常処理方法
JPH0646382B2 (ja) プリフェッチキュー制御方式
JPH05298097A (ja) 情報処理装置
JPS63314644A (ja) デ−タ処理装置
JPH0342723A (ja) データ処理装置
JPH0248733A (ja) 情報処理装置
JPH0287229A (ja) 実行命令の先取り制御方式
JP3493110B2 (ja) 高速分岐処理装置
JPH04213727A (ja) 情報処理装置
JPS6022768B2 (ja) デ−タ処理方法
KR970062891A (ko) 연산 실행 방법 및 연산 실행 장치
JPH0527972A (ja) 命令プリフエツチ装置
JPH0774992B2 (ja) データ処理装置
JPH06295252A (ja) 計算機
JPS62288974A (ja) ベクトル処理装置
JPH06168120A (ja) 命令先取り装置
JPH05143362A (ja) 割込み処理方式
JPH024011B2 (ja)
JPH10254698A (ja) 情報処理装置