JPS6072030A - 情報処理装置 - Google Patents

情報処理装置

Info

Publication number
JPS6072030A
JPS6072030A JP58178005A JP17800583A JPS6072030A JP S6072030 A JPS6072030 A JP S6072030A JP 58178005 A JP58178005 A JP 58178005A JP 17800583 A JP17800583 A JP 17800583A JP S6072030 A JPS6072030 A JP S6072030A
Authority
JP
Japan
Prior art keywords
instruction
byte
bytes
data
ibr
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.)
Pending
Application number
JP58178005A
Other languages
English (en)
Inventor
Hideo Sawamoto
英雄 澤本
Kazumitsu Takeda
武田 和光
Koichi Ikeda
池田 公一
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.)
Hitachi Ltd
NTT Inc
Original Assignee
Hitachi Ltd
Nippon Telegraph and Telephone 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
Application filed by Hitachi Ltd, Nippon Telegraph and Telephone Corp filed Critical Hitachi Ltd
Priority to JP58178005A priority Critical patent/JPS6072030A/ja
Publication of JPS6072030A publication Critical patent/JPS6072030A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/30003Arrangements for executing specific machine instructions
    • G06F9/3005Arrangements for executing specific machine instructions to perform operations for flow control
    • G06F9/30054Unconditional branch instructions
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/32Address formation of the next instruction, e.g. by incrementing the instruction counter
    • G06F9/322Address formation of the next instruction, e.g. by incrementing the instruction counter for non-sequential address

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

【発明の詳細な説明】 〔発明の利用分野〕 本発明は、情報処理装置に係シ、特に複数の命令バッフ
ァレジスタと、1度の命令フェッチで複数の該命令バッ
ファレジスタにフェッチ−データを格納できる機能を有
する情報処理装置に関する。
〔従来技術〕
主記憶装置から命令を読み出すには時間が多くかかるた
め、予じめ処理装置の中のバッファメモリに命令を先取
シして格納しておくことが行なわれている。ここで主記
憶装置と4バイトのデータ線で接続された4バイトの命
令バッファレジスタ(以下IBRと呼ぶ)4個(これを
、 IBRo 、IBRl、I構。
IBR5とする)と、16バイトの命令フェッチ機能(
アドレスの16バイト境界から16バイトをまとめて主
記憶から読み出す機能)を有する情報処理装置を例に、
従来の方式について説明する。
従来、前述の如き情報処理装置では、命令フェッチは、
16バイト境界アドレスからの16バイトをフェッチし
、そのデータを、IBROからIBR5に格納していた
しかし、このような方式では、分岐成功の分岐命令にお
いて、分岐先アドレスが、16バイト境界で無い場合に
は、命令フェッチは16バイト境界から行なわれるから
命令フェッチ・データ16バイトの内、有効なデータが
少なくなる。例えば1分岐先アドレスが16yb+12
バイト境界から始まる場合には、16バイトのフェッチ
データの内、有効データは4バイトだけである。
また、分岐命令の他に、IBHの内容をキャンセルする
命令においても、次命令の命令フェッチで、分岐命令の
場合と同様に、有効なフェッチデータが12バイト以下
のことがある。
ここで、命令がメモリ上の任意の2バイト境界アドレス
に、等確率で存在すると仮定すると、分岐成功の分岐命
令、又は命令バッファレジスタをキャンセルする命令の
次命令で発生する命令フェッチで得られる、平均有効デ
ータ長りは’i、1−6土1生土Lり辷り駈辷腹す辷ヒ
ヒしし−= 9 (バイト)でおる。そして、命令フェ
ッチの発生する命令が例えば、16r++12バイト境
界アドレスの4バイト長命令とすると、4回目のデータ
転送が終了するまで、有効な情報がIBHにランチされ
ないから命令のデコード動作が行えない。これを第1図
のタイムチャートに示す。第1図でMDATAは、主記
憶装置から送られる命令フェッチデータであシ、4バイ
トずつ4マシンサイクルかけて、サイクルφl〜φ4で
送られる。第1図の4マシンサイクル目φ4で、IBI
Bに目的の命令をフェッチし、5マシンサイクル目φ5
でノーまじめて命令のデコードができる。
さらに、該命令が 1、 16n+12 ハイド境界アドレスの6バイト長
命令 2、R++z+14パイ)f2界アドレスの6バ、イト
長命令 5.16yb+14バイト境界アドレスの4バイト長命
令 の場合には、再度命令フェッチを行なわねばならない。
通常、プログラム中の分岐命令の頻度は、約20%であ
シ、前述の如きオーバヘッドは、情報処理装置の性能に
大きく影響する。
大形機の場合はIBRを現用と分岐用と2系列持たせ処
理速度の低下を防ぐという技術もあるが、小形機の場合
このようなハードウェアの増加は許容し難い。
〔発明の目的〕
本発明の目的は、分岐命令および命令ノくツファレジス
タをキャンセルする命令の性能を高めることができる命
令フェッチ方式を提供することにある。
〔発明の概要〕
本発明は、任意のNバイト境界アドレスからかNバイト
の命令フェッチを行ない、m個(但しm≧t)の命令バ
ッファレンスタの内、最も過去にデータを使用したIB
Rから順に、フェッチデータを格納する。また、記憶領
域のページ単位でアドレス変換や記憶保護を行なう情報
処理装置の場合には命令フェッチの途中で命令アドレス
かページ境界を越えると、それを検出し、以降のデータ
はIBHに格納しない命令フェッチ方式である。
〔発明の実施例〕
本発明において、主記憶装置はそれぞれ4バイトずつ読
み出される4つのバンクからなっているものとする。こ
のような所謂マルチパンク力式の記憶装置についてはよ
く知られたところであるから詳述しない。このような記
憶装置からは任意の4バイト境界から連続する16ハイ
トを読み出すことができる。
従来、命令以外の情報はこのような読み出しを行なって
いたが命令の場合はIBRへの格納及びその読み出しの
制御がその16バイトがページ境界にまたがったとき困
難なため、16バイト境界からしか読み出しは行なわれ
なかったのである。
本発明では命令においても任意の4バイト境界から16
バイトな読み出し、4バイトずつ連続して情報処理装置
へ伝送しこれをIBRへ格納する。
本発明はIBRへの格納のためのポインタ、及びIBR
からの命令の読み出しのポインタを設けて上記読出方法
を可能と1−る制御を行ない、以って、分岐のときなど
の実行の遅れを解消したものである。
以下、本発明における制御回路の一実施例を図を用いて
説明する。
第2図は、IBRを中心とするデータ系のブロック図、
第3図はコントロール系のブロック図、第4図はタイム
チャートである。図中1〜4は各々4バイト長の命令バ
ッファレジスタIBRO〜6であシ、各々、記憶制御装
置(SCVと呼ぶ)と4バイトのデータ線を入力とし、
 「IBRo〜6信号によシ、SCUからのデータをセ
ットする。5のIBpO〜2は1次に実行1−べき命令
をIBRo〜6のどこから取り出すかを示すポインタで
あシ、6は4バイト長の命令レジスタ、IRである。命
令アドレスは2パイ!・境界で命令長は2バ・fl・以
上であるとして、 IBPO〜2は2バイト単位で次命
令の先頭を示し1例えば、IBpO〜2−’ 1’ (
16進表示)の時はIBROの後半2バイトとIBRl
の前半2バイト、またIBPO〜2−’ 7’の時はI
BR5の後半2バイトとIBROの前半2バイトが、乙
のJRにセットされる。IR6に命令がセットされると
、JBRD〜2に命令長が2バイト単位で加えられ、次
命令の先頭を指すように更新される。
第6図の7は、SCUから4バイトデータの転送に伴な
って送られるデータのセット指示信号ENI)によって
カウント・アップされるカウンタで、第4図に示すよう
に、′0′→′1′→′2′→′3′→′4→′0・と
変化し、その3ビツトの出力信号をCNTAO〜2とす
る。8は同じ(ENDによってカウントアツプされるカ
ウンタCNTBでおるが、7のCNTAが、ENDが無
くなるとOにリセットされるのに対し、8はリセットさ
れず、最後の値を保持し、IBRo〜3のどこまで、前
回の命令7エツチで命令が格納されたかを示−f6ビツ
トのポインタであシ、出力信号なCNTBo〜2とする
。CNTBF3は、初期値か′4′の時に4回ENDが
送られると、第4図に示すように、r4r→′1′→′
2′→′3′→′4′と変化し、また命令実行ユニット
から送られるIBRをリセットする信号RIBRが、分
岐命令等で出されると′0′にリセットされ、その後、
命令フェッチによって4回のENI)が送られる場合に
は、IO′→′1′→′2′→′5′→′4′と変化す
る。
9のIPENDは、7′のCNTAの出力の最上位ピッ
) CNTAoをラッチするフリップフロップで、4回
目の転送があったときセットされ07?ゲート10を通
って、命令フェッチ中であることを示すラッチのIFl
lをリセットする。11のIFは、IBRが空になった
ことによって発生される命令フェッチの起動信号5TR
TIFでセットされ、前記IFEND9でリセットされ
る。即ち、IFllの出力は都令フェッチが行なわれて
いると@ Is i l/ となってデコーダ14を有
効とする信号である。12のCNTBlD。
cJvrB2Dra、、CNTBl−2f、)ティレイ
ーラッナでh’F)、ENDと、11のIF’の出力と
を入力とするAVDゲート13によりで・(ネーブルと
なるデコーダ14の入力となる。デコーダ14の出ツバ
jl’l″1BRD−5は、各々1〜4のIBRO〜5
の七ツt−信号である。CNTHの初期値が′4′の場
合、第4図のようにIBRIJから順にIHR5iで、
サイクルφl−φ4の間にECUからのデータをセット
する。
1回の命令フェッチ保水で16バイトのデータをフェッ
チする本方式では、アドレス変換や記憶採機などのチェ
ックが必要な場合には先頭アドレスの含まれるページに
つい又のみ行なう。
ところが、任意の4バイト境界からの16ハイトフエツ
チを行なうと、16バイトの途中で、ページ境界を越え
ることがある。このような場合には、新しいページにつ
いて、再度アドレス変換や記憶保護チェックなどを行な
わねばならない。
そこで、命令フェッチの途中でページ境界をこえると、
SCUでpAGEEND信号を発生させてIFllをリ
セットし、また以降のEND信号を抑止する。
第5図に、ページの最後の4バイトの先頭をアドレスと
する命令フェッチの場合のタイムチャートを示す。1回
目のENDが送られ、次に通常なら2回目のENDが送
られるサイクルで、pAGE−ENDが送られ、END
はこのサイクル以降送られない。CRTHの初期値を′
4′とすると、データはIBROにだけ格納され、CN
TBは1回だけカウントアツプされて′1′となり、有
効データがIBROにしか無いことを示す。IBRoに
格納された命令の実行後火の命令フェッチが起こると、
 CRTHの初期値が′1′なので、第5図の後半に示
したよりに、 IBRlから順にIBH2、IBH3,
IBROとデータが格納され、CNTBも′1′→′2
′→1′5′→・4′→′1′と変化する。
このように制御することにより、IBRへのデータ格納
順序は、最も過去に使用したIBRから順に格納するこ
とになる。
以上のように任意の4バイト境界からの命令フェッチを
行なうことによシ、1回のフェッチの中にページ境界が
存在すること及び命令レジスタの大きさよシ大きい命令
の取シ扱いが生じることの理由から、ll3Rには前に
フェッチされた位置の直ぐ後から、即ち最も古い情報が
入っている位置から命令を格納するものとし、かつ、ペ
ージ境界を検知1−れはその後の格納は禁止し。
その後について改めて、読み出しを行なうようにした。
以−ヒ述べたように、本実施例においては、任意の4バ
イト境界アドレスからの16バイト7エツチが可能とな
シ、フェッチデータは最も過去に使用したIBRから順
に格納することができる。
この結果、16バイト境界からの16バイトフ工ツチ方
式では、平均有効データ長りが9バイトであったのに対
し、本方式によれば D=μ5±−15(バイト) となる。
さらに、命令フェッチの発生した命令の命令〉 長が2バイトの時は1回目、4バイトの時は1回目又は
2回目、6バイトの時は2回目のENDで、命令アドレ
スと無関係に、必要な命令がIBRに格納できるため、
φ2又はφ3のす・[クルでデコード動作を行なうこと
ができる。
本発明によれば、任意のNバイト境界アドレスからのか
Nバイトの命令フェッチができ、最も過去にデータを使
用したJBdから順に、フェッチデータを格納すること
ができ、分岐成功の分岐命令や、JBRをキャンセル1
−る命令の性能を向上できる効果がわる。
【図面の簡単な説明】
第1図は従来方式のIBRセットとデコード動作を示す
タイムチャート、第2図はIBHなどのデータ系ブロッ
ク図、第6図はコンミロール系ブロック図、第4図はP
AGEENDが発生しない場合のタイムチャート、第5
図はPAGEENDが発生した場合のタイムチャートで
ある。 1〜4・・・・・・命令バッファレジスタIBRO〜6
.5・・・・・・命令バッファポインタIBPO〜2.
6・・・・・・命令レジスタIR,7・・・・・・カウ
ンタA1B・・・・・・カウンタB。 9・・・・・・フリップフロップIFEND 。 10・・・・・・ORゲート、 11・・・・・・フリップフロップIF。 12−−−−=−C?NTB1〜2 (7) テ4 L
’ イランf CNTBID、2D。 13・・・・・・ANDゲート、14・・・・・・デコ
ーダ。 代理人弁理士 高 橋 明 夫 牛 1 図 羊 311B ツノ 羊4図 第 夕 図

Claims (1)

    【特許請求の範囲】
  1. M(M≧2)個のそれぞれNバイトの命令を格納するバ
    ッファレジスタと、前記バッファレジスタに主記憶装置
    からNバイトずつt (tvt)回連続して転送された
    命令を最も古く命令が格納されたバッファレジスタから
    順に格納せしめる手段と、前記連続して転送された命令
    に主記憶アドレスのページ境界があるときはそれ以降の
    命令の前記バッファレジスタへの格納を禁止する手段と
    を有することを特徴とする情報処理装置。
JP58178005A 1983-09-28 1983-09-28 情報処理装置 Pending JPS6072030A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP58178005A JPS6072030A (ja) 1983-09-28 1983-09-28 情報処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP58178005A JPS6072030A (ja) 1983-09-28 1983-09-28 情報処理装置

Publications (1)

Publication Number Publication Date
JPS6072030A true JPS6072030A (ja) 1985-04-24

Family

ID=16040885

Family Applications (1)

Application Number Title Priority Date Filing Date
JP58178005A Pending JPS6072030A (ja) 1983-09-28 1983-09-28 情報処理装置

Country Status (1)

Country Link
JP (1) JPS6072030A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04369038A (ja) * 1991-06-18 1992-12-21 Matsushita Electric Ind Co Ltd 命令プリフェッチ装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS4838642A (ja) * 1971-09-17 1973-06-07
JPS55101181A (en) * 1979-01-30 1980-08-01 Hitachi Ltd Information processing unit
JPS5697150A (en) * 1979-12-29 1981-08-05 Hitachi Ltd Instruction advance fetch device

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS4838642A (ja) * 1971-09-17 1973-06-07
JPS55101181A (en) * 1979-01-30 1980-08-01 Hitachi Ltd Information processing unit
JPS5697150A (en) * 1979-12-29 1981-08-05 Hitachi Ltd Instruction advance fetch device

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04369038A (ja) * 1991-06-18 1992-12-21 Matsushita Electric Ind Co Ltd 命令プリフェッチ装置

Similar Documents

Publication Publication Date Title
US4912635A (en) System for reexecuting branch instruction without fetching by storing target instruction control information
US4775927A (en) Processor including fetch operation for branch instruction with control tag
EP0396892B1 (en) Data processing apparatus
JPH0283735A (ja) 命令先取り装置
JPH03139726A (ja) 命令読出し制御方式
JPS59231652A (ja) メモリアクセス・オ−バラツプ検出方式
EP0220990A2 (en) Buffer storage control system
JPS6072030A (ja) 情報処理装置
JPH07306785A (ja) 分岐命令実行機能を持つプロセッサおよび分岐命令制御方法
JPS5890247A (ja) 情報処理装置のパイプライン制御方式
JPS6236258B2 (ja)
JPS60117335A (ja) 情報処理装置
JP2783285B2 (ja) 情報処理装置
JPS63314644A (ja) デ−タ処理装置
JPH10111798A (ja) 情報処理装置
JPH0564373B2 (ja)
JPH0634203B2 (ja) ベクトル処理装置
JPH0740226B2 (ja) 分岐命令制御方式
JP2924004B2 (ja) 命令コード転送方式
JPH0419575B2 (ja)
JPS60134939A (ja) デ−タ処理装置
JPH02275546A (ja) ストアマージ制御方式
JPH04245333A (ja) 情報処理装置
JPH07104783B2 (ja) パイプライン制御装置
JPH0439733A (ja) 先行制御方式