JPS6212531B2 - - Google Patents

Info

Publication number
JPS6212531B2
JPS6212531B2 JP23472882A JP23472882A JPS6212531B2 JP S6212531 B2 JPS6212531 B2 JP S6212531B2 JP 23472882 A JP23472882 A JP 23472882A JP 23472882 A JP23472882 A JP 23472882A JP S6212531 B2 JPS6212531 B2 JP S6212531B2
Authority
JP
Japan
Prior art keywords
instruction
register
data
buffer register
ibf0
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
JP23472882A
Other languages
English (en)
Other versions
JPS59123053A (ja
Inventor
Yasunori Kimura
Akira Hatsutori
Takeshi Shinoki
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP23472882A priority Critical patent/JPS59123053A/ja
Publication of JPS59123053A publication Critical patent/JPS59123053A/ja
Publication of JPS6212531B2 publication Critical patent/JPS6212531B2/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, look ahead
    • G06F9/3802Instruction prefetching

Description

【発明の詳細な説明】 (1) 発明の技術分野 本発明は電子計算機の制御により主記憶から機
械語命令を取出し、一旦バツフアレジスタに格納
しておき、命令実行時該バツフアレジスタから所
要命令長分だけ取出しインストラクシヨンレジス
タにロードする命令制御方式に関するものであ
る。
(2) 従来技術と問題点 一般に、電子計算機の制御により機械語命令の
実行を高速化するため、1命令毎に主記憶から命
令を取出しインストラクシヨンレジスタにロード
する方法は採らず、第1図に示すように、主記憶
1とインストラクシヨンレジスタ(以下I−レジ
スタと略称する)3の間にバツフアレジスタ2を
設け、バツフアレジスタ2から命令長分だけI−
レジスタ3に命令をロードしてから命令を開始す
るとともに、主記憶1に対して命令フエツチオペ
レーシヨンを出してバツフアレジスタ2に命令を
つめてゆくという方式が採られていた。
しかしながら、この方式によると、バツフアレ
ジスタ2内にデータが存在しないと、命令実行動
作はストツプする。そして主記憶1に対して命令
フエツチオペレーシヨンを出して、バツフアレジ
スタ1内に命令長分だけのデータが揃つた後、改
めて命令実行ルーチンが再開されることになる。
このため命令の実行速度が低下するという問題点
があつた。
(3) 発明の目的 本発明の目的はバツフアレジスタ内に実行しよ
うとする命令の命令長分だけデータが存在しない
場合でも命令実行動作をストツプせず、処理速度
の向上を図るようにした命令制御方式を提供する
ことである。
(4) 発明の構成 前記目的を達成するため、本発明の命令制御方
式は電子計算機の制御により主記憶から機械語命
令を取出し、一旦バツフアレジスタに格納してお
き、命令実行時該バツフアレジスタから所要命令
長分だけ取出しインストラクシヨンレジスタにロ
ードする命令制御方式において、命令実行時イン
ストラクシヨンレジスタで必要とする命令長分が
バツフアレジスタに不足していても命令の実行を
開始させ、該実行中に不足分の命令を必要に応じ
主記憶からバツフアレジスタにロードするように
制御することを特徴とするものである。
(5) 発明の実施例 第2図は本発明の実施例の構成説明図である。
同図において、バツフアレジスタ2には2バイト
長のレジスタ3個で計6バイトもつているものと
し、上位からそれぞれIBF0,IBF1,IBF2と
し、それぞれに有効な命令が入つているかどいう
かを示す1ビツトフラグIBV0,IBV1,IBV2
が設けられる。このフラグがオン(1)であれば対応
するレジスタに有効なデータが入つていることを
示し、オフ(0)であれば対応するレジスタには
無効なデータが入つていることを示す。
主記憶1からバツフアレジスタ2へのデータの
転送は4バイト単位で行なわれるものとする。
I−レジスタ3は4バイト長レジスタであり、
バイト単位に4区分し、上位からI0,I1,I2,I3
する。バツフアレジスタ2からI−レジスタ3へ
の命令ロードの対応はIBF0の2バイトはI0,I1
へ、IBF1の2バイトはI2,I3へロードされる。
命令長はバツフアレジスタIBF0の最上位2ビツ
トで表わされるものとし、命令長のタイプは2バ
イト、4バイト、6バイトの3種類とする。
バツフアレジスタ2の内容は常にIBF0の方向
へつめておかれる。すなわち、いまIBF0,IBF
1に有効な命令が入つており、IBF2が空である
とする。そしてIBF0の上位2ビツトはこの命令
が4バイト命令であることを示していると、命令
ロードオペレーシヨンでIBF0の内容がI−レジ
スタ3のI0,I1へ、IBF1の内容が同じくI2,I3
ロードされ、バツフアレジスタ2のIBF0〜IBF
2は一時的に全部空となる。そして、命令フエツ
チオペレーシヨンにより主記憶1から読込まれた
命令はIBF0とIBF1に入る。この場合IBF1と
IBF2に入ることはない。
一方、IBF0〜IBF2全部に有効な命令が入つ
ており、IBF0の上位2ビツトでこの命令が4バ
イト長命令であることを示していると、命令ロー
ドオペレーシヨンでIBF0の内容がI−レジスタ
3のI0,I1へ、IBF1の内容は同じくI2,I3へロー
ドされる。
同時にIBF2の内容はIBF0へシフトされ、命
令フエツチオペレーシヨンによる主記憶1からの
読込みデータはIBF1とIBF2に取込まれる。
以上説明したような基本的な機能を有するバツ
フアレジスタ2とI−レジスタ3を用いて、命令
長が2バイト、4バイト、6バイトの各場合のデ
ータの動きを以下に説明する。
初期値として、バツフアレジスタ2内のレジス
タIBF0〜IBF2のすべてが空の場合、すなわち
それぞれに対応するフラグIBV0〜IBV2がすべ
て0とする。
主記憶1からは4バイト単位でデータが送られ
てくるので、次のマシンサイクルではレジスタ
IBF0とIBF1に4バイトデータが入る。すなわ
ち、IBV0=1、IBV1=1、IBV2=0とな
る。
また、このサイクルではバツフアレジスタ2内
にデータが入つていなかつたので、バツフアレジ
スタ2からI−レジスタ3への命令のロードは行
なわれない。
第3図a〜cはこのような初期設定の下に命令
長が4バイト、2バイト、6バイトの各場合につ
いてのデータの遷移の状態を示す。矢印に丸内数
字を付して示す手順はその手順により格納される
行先レジスタを示すものである。
同図aは4バイト命令の場合を示す。初期設定
の次のマシンサイクルで、IBF0の2バイトがI
−レジスタ3のレジスタI0,I1にロードされ〔矢
印〕、IBF1の2バイトがI−レジスタ3のレ
ジスタI2,I3にロードされ〔矢印〕、それぞれ実
行、が開始される。同時に主記憶1からは
IBF0,IBF1に4バイトのデータが入る〔矢印
〕。その結果、フラグはIBV0=1、IBV1=
1、IBV2=0となる。
同図bは2バイト命令の場合を示す。初期設定
の次のマシンサイクルで、IBF0の2バイトがI
−レジスタ3のI0,I1にロードされ〔矢印〕、命
令の実行が開始される。そして、IBF1のデー
タはIBF0に移動する〔矢印〕。これと同時に
主記憶1からはIBF1,IBF2に4バイトのデー
タが入る〔矢印〕。その結果、IBV0=1、IBV
1=1、IBV2=1となる。
以下図示はされないが、動作が継続される場合
を例示すると、 このとき、IBF0の上位2ビツトが4バイト
命令長を示していると、次のマシンサイクルで
IBF0のデータはI−レジスタ3のI0,I1にロ
ードされ、IBF1のデータは同じくI2,I3に入
り命令の実行が関始される。そしてIBF2のデ
ータがIBF0へ移動する。
これと同時に主記憶1から4バイトデータが
IBF1,IBF2へ入る。その結果、IBV0=
1、IBV1=1、IBV2=1となる。
また、このとき、IBF0の上位2ビツトが2
バイト命令長を示していると、次のマシンサイ
クルでIBF0の2バイトはI−レジスタ3の
I0,I1に入り、命令の実行が開始される。同時
にIBF1のデータはIBF0へ、IBF2のデータ
はIBF1へ入る。このとき、バツフアレジスタ
2内にはIBF2の2バイト分しか空がなく、主
記憶1からの4バイトデータの入る余地がない
ので、バツフアレジスタ2内に取込まれない。
その結果、IBV0=1、IBV1=1、IBV2=
0となる。
同図cは6バイト命令の場合を示す。まず、
IBF0の2バイトがI−レジスタ3のI0,I1に、
IBF1の2バイトが同じくI2,I3へロードされ
〔矢印,〕、実行、が開始される。このと
き、主記憶1から4バイトデータが同時にバツフ
アレジスタ2に取込まれ〔矢印〕、フラグは
IBV0=1、IBV1=1、IBV2=0となる。
そして、残りの2バイトは必要となつた時点で
IBF0の2バイトをI=レジスタ3のI0,I1へロ
ードし〔矢印〕、実行を開始する。このと
き、IBF1のデータはIBF0へ移動し〔矢印〕、
主記憶1からの4バイトデータはIBF1,IBF2
へ入る。〔矢印〕。その結果、IBV0=1、IBV
1=1、IBV2=1となる。
上記データ例に示すように、IBF0の上位2ビ
ツトの命令長だけバツフアレジスタ2内に格納さ
れていなくても、まずI−レジスタ3へロードし
て命令の実行が開始され、その間に不足分のデー
タが主記憶1からフエツチされ、バツフアレジス
タ2につめ込まれ、必要に応じI−レジスタにロ
ードして実行する。
従来のように、バツフアレジスタに命令長のデ
ータが揃うまでストツプする必要がないから効率
的で高速な命令実行が可能となる。
(6) 発明の効果 以上説明したように、本発明によれば、バツフ
アレジスタ内に実行命令長分のデータが存在しな
い場合でも、現にある命令で実行を開始し、かつ
その実行中に不足分の命令を主記憶からバツフア
レジスタにフエツチしておき、そのデータが必要
となつた時点でそれをバツフアレジスタからI−
レジスタにロードして実行する。これにより実行
停止の回数が減少し、バツフアレジスタを設ける
ことの効果を高めることができる。また、本方式
をとり入れることにより、有限長のバツフアレジ
スタで多バイト長命令の実行を高速化することが
できる。
【図面の簡単な説明】
第1図は従来例の説明図、第2図は本発明の実
施例の構成説明図、第3図a〜cは実施例の動作
説明図であり、図中1は主記憶、2はバツフアレ
ジスタ、3はインストラクシヨンレジスタ、IBF
0〜IBF2はバツフア内レジスタ、IBV0〜IBV
2はフラグを示す。

Claims (1)

    【特許請求の範囲】
  1. 1 電子計算機の制御により主記憶から機械語命
    令を取出し、一旦バツフアレジスタに格納してお
    き、命令実行時該バツフアレジスタから所要命令
    長分だけ取出しインストラクシヨンレジスタにロ
    ードする命令制御方式において、命令実行時イン
    ストラクシヨンレジスタに必要とする命令長分が
    バツフアレジスタに不足していても命令の実行を
    開始させ、該実行中に不足分の命令を必要に応じ
    主記憶からバツフアレジスタにロードするように
    制御することを特徴とする命令制御方式。
JP23472882A 1982-12-28 1982-12-28 命令制御方式 Granted JPS59123053A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP23472882A JPS59123053A (ja) 1982-12-28 1982-12-28 命令制御方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP23472882A JPS59123053A (ja) 1982-12-28 1982-12-28 命令制御方式

Publications (2)

Publication Number Publication Date
JPS59123053A JPS59123053A (ja) 1984-07-16
JPS6212531B2 true JPS6212531B2 (ja) 1987-03-19

Family

ID=16975433

Family Applications (1)

Application Number Title Priority Date Filing Date
JP23472882A Granted JPS59123053A (ja) 1982-12-28 1982-12-28 命令制御方式

Country Status (1)

Country Link
JP (1) JPS59123053A (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS61211743A (ja) * 1985-03-17 1986-09-19 Fujitsu Ltd 情報処理装置
JPS61211744A (ja) * 1985-03-18 1986-09-19 Nec Corp 命令先取り制御装置
JPS61224051A (ja) * 1985-03-29 1986-10-04 Fujitsu Ltd バッファメモリ制御方法
JPH0812601B2 (ja) * 1985-12-20 1996-02-07 日本電気株式会社 データ処理装置
US5113515A (en) * 1989-02-03 1992-05-12 Digital Equipment Corporation Virtual instruction cache system using length responsive decoded instruction shifting and merging with prefetch buffer outputs to fill instruction buffer

Also Published As

Publication number Publication date
JPS59123053A (ja) 1984-07-16

Similar Documents

Publication Publication Date Title
US4648034A (en) Busy signal interface between master and slave processors in a computer system
US4395757A (en) Process synchronization utilizing semaphores
EP0464615A2 (en) Microcomputer equipped with DMA controller
EP0213842A2 (en) Mechanism for performing data references to storage in parallel with instruction execution on a reduced instruction-set processor
US5504869A (en) High speed processing system capable of executing strings of instructions in order without waiting completion of previous memory access instruction
JPS6212531B2 (ja)
EP0240606B1 (en) Pipe-line processing system and microprocessor using the system
JPH03233630A (ja) 情報処理装置
JPS6112289B2 (ja)
EP0385136B1 (en) Microprocessor cooperating with a coprocessor
US5819081A (en) Method of executing a branch instruction of jumping to a subroutine in a pipeline control system
JPH0512751B2 (ja)
JPH0754467B2 (ja) データ処理装置
JPH0544049B2 (ja)
JP2901247B2 (ja) 掃出し制御方式
JP2883488B2 (ja) 命令処理装置
JP2583614B2 (ja) ベクトル演算装置
JPS6221130B2 (ja)
JPS63163634A (ja) 命令フエツチ方式
JPS6012656B2 (ja) リトライ制御方式
JP2883489B2 (ja) 命令処理装置
JPH0279122A (ja) 浮動小数点演算機構
JPS607294B2 (ja) マイクロプログラムロード方式
JPH0530950U (ja) 情報処理装置
JPH0514288B2 (ja)