JPS6244661B2 - - Google Patents

Info

Publication number
JPS6244661B2
JPS6244661B2 JP55136242A JP13624280A JPS6244661B2 JP S6244661 B2 JPS6244661 B2 JP S6244661B2 JP 55136242 A JP55136242 A JP 55136242A JP 13624280 A JP13624280 A JP 13624280A JP S6244661 B2 JPS6244661 B2 JP S6244661B2
Authority
JP
Japan
Prior art keywords
bytes
instruction
read
byte
register
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
JP55136242A
Other languages
English (en)
Other versions
JPS5760441A (en
Inventor
Takao Kato
Hirosada Tone
Yoshihiro Mizushima
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 JP13624280A priority Critical patent/JPS5760441A/ja
Publication of JPS5760441A publication Critical patent/JPS5760441A/ja
Publication of JPS6244661B2 publication Critical patent/JPS6244661B2/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/30003Arrangements for executing specific machine instructions
    • G06F9/3005Arrangements for executing specific machine instructions to perform operations for flow control
    • G06F9/30054Unconditional branch instructions

Description

【発明の詳細な説明】 本発明はメモリから可変長命令を取り出して命
令解読をし、実行を行なう情報処理装置に関し、
命令解読の開始時点をできるだけ早めることを目
的とする。
第1図は一般的な電子計算機の概略ブロツク図
であり、1は主記憶、2はチヤネル、3は中央処
理装置、31は記憶制御部、32は演算ユニツ
ト、33は命令制御部、4はバツフアメモリであ
る。
第2図は本発明の一実施例における記憶制御部
31と命令制御部33の詳細ブロツク図であり、
41はバツフアメモリ4のアドレスレジスタ、4
2はバイトアライン回路、43は読出しレジス
タ、5は制御部、6はフラグレジスタ、7,8は
命令バツフアレジスタ、9は選択回路、10は制
御部、11は命令デコード回路である。
バツフアメモリ4には第3図で示す如く、複数
のデータ・ブロツクが記憶され、各ブロツクは例
えば32バイトから成つており、8バイト単位で読
出しができる。更にバイトアライン回路42を設
けて、図示aの如く任意のバイトアドレスからの
8バイトが、読出しレジスタ43に左詰めで読出
される。しかし図示bの如くにブロツク境界をま
たぐ8バイトについては、ブロツク境界までの2
バイトのみがレジスタ43に左詰めで読出され
る。次のブロツクに含まれる残りのバイトは再度
アクセス要求を出さないと読出されない。従つて
ブロツク境界にまたがる8バイトを読出すには、
2回のメモリアクセスが必要になる。これは一般
にバツフアメモリ中のブロツクは主記憶中の多数
のブロツクのうちのいくつかをコピーしたもので
あり、バツフアメモリ中のある実記憶領域にある
論理ブロツクが有つたとしてもその実記憶領に連
続した実記憶領域に有るブロツクが前記の論理ブ
ロツクに連続した論理ブロツクであるとは限らな
いからである。所望の論理ブロツクをアクセスす
るには各ブロツク毎にその都度タグメモリを参照
してそのブロツクがバツフアメモリ中にあるか否
かの確認を行なう必要がある。(尚、バツフアメ
モリの制御、及びそれに関連するタグメモリにつ
いては、当業者に周知の技術であるため省略す
る。) また命令制御部33では命令バツフアレジスタ
7,8を有し、命令の先取りを行なうことができ
る。命令には2バイト命令、4バイト命令、6バ
イト命令等があり、バイト長は一定ではない。通
常の命令実行過定では、レジスタ8,7,43に
命令が詰まつており、順次命令を実行していく。
命令のOPコードを解読すればその命令が何バイ
ト命令かが判るので、制御部10が選択部9を制
御して次の命令の格納位置を選択する。尚、選択
部9はレジスタ8,7,43間を切換えるだけで
なく、同一レジスタ中の異なるバイト位置の切換
えも行なう。そしてレジスタ8中の命令がすべて
終了するとレジスタ7の命令を選択するが、適当
なタイミングでレジスタ7の内容をレジスタ8
へ、レジスタ43の内容をレジスタ7へ移し、さ
らに次の命令の先行読出しを行なうように制御さ
れる。
ところが、例えば分岐命令等によつて今まで先
取りしておいた命令が無効になつてしまうことが
あり、その場合は急拠分岐先命令をバツフアメモ
リから読出さねばならない。この場合、分岐先命
令が何バイト命令かは一般に判らない。またその
分岐先バイトアドレスが25〜31の場合には上記ブ
ロツク境界の問題を生じ、2回のアクセスの後、
8バイトがすべてレジスタ43に揃つたところ
で、選択回路9にてレジスタ43を選択して実行
することになる。
このように従来方法では、分岐先アドレスから
の8バイトがブロツク境界にまたがる場合にはメ
モリアクセス1回分の時間遅れを生じる欠点があ
つた。
本発明は、この点を改良することを目的とし、
1回目のメモリアクセスで得られたデータ(命
令)をとりあえずデコードしてみて、バイト長が
足りなければ2回目のアクセス結果を待つが、足
りていればそのまま実行してしまうようにしたも
のである。
例えば第3図のbに示す如く、分岐アドレスが
バイトアドレス30であつたとすると、レジスタ
43は第1回目のアクセスによつて第4図aのよ
うにブロツク0のバイト30,31が左詰めで読
出される。このとき、本発明ではフラグレジスタ
6の左端フラグF1を立てる。フラグF1はレジ
スタ43の第1、第2バイトに、F2は第3、第
4バイトに、F3は第5、第6バイトに、そして
F4は第7、第8バイトに対応している。
最も短かい命令語長は2バイトであるため、バ
ツフアメモリ4のアクセスは2バイト毎の区切り
を意識して行なわれる。即ち必らず遇数バイトア
ドレスからの8バイトにアクセスがかかるように
している。そのためフラグは2バイトに対して1
つ設けられている。
また第2回目のアクセスの結果は第4図bのよ
うにレジスタ43の残りの部分に詰められ、それ
に伴つてフラグF2〜F4を立てる。各アクセス
毎にフラグF1〜F4のうちどれを立てればよい
かは、バイトアドレスを検知することで制御す
る。即ち例えばバイトアドレスが0〜24であれば
8バイトが1回で読出せる筈であるので、すべて
のフラグF1〜F4を立てる。バイトアドレスが
26のときはフラグF1〜F3のみを立てる。バイ
トアドレスが28のときはフラグF1,F2の
み、そして、バイトアドレスが30のときはフラ
グF1のみを立てる。
このようにすることにより、上記分岐命令実行
時等において、分岐先アドレスのアクセスを行な
い、その結果少くとも一つのフラグF1が立て
ば、そのフラグに対応するバイトを選択回路9を
介してデコーダ11に与える。そのデコード結果
でその命令が2バイト長であれば、そのまま命令
を実行することができ、命令実行と並行して次の
メモリアクセスを行なえば命令実行は止切れるこ
となく続行できる。もしデコード結果により命令
長が4バイト以上であることが判明したときに
は、さらに次のフラグが立つのを待てばよい。
以上の如く読出しレジスタ43に読出しデータ
バイトの存在指示フラグ6を設けることにより、
少くとも最短命令長分のバイトが読出されたとき
に直ちにデコード動作に入り、もしもバイト数が
足りなければもう1回のアクセスを待つが、そう
でないときは直ちに実行に移ることによつて、平
均命令実行速度は大きく改善される。例えば上記
の例では1ブロツクが32バイトで、1回の読出し
バイト数が8バイトであるから平均すると4回に
1回の割合いでブロツク境界をまたぐアクセスと
なる。また全命令のうち6バイト長、8バイト長
の命令の用いられる頻度は比較的低いため、本発
明の効果は大きい。
【図面の簡単な説明】
第1図は一般的情報処理装置の概略ブロツク
図、第2図は本発明の一実施例による詳細ブロツ
ク図、第3図はバツフアメモリ中のバイト位置説
明図、第4図は読出しレジスタとフラグとの対応
説明図である。第2図において、4はバツフアメ
モリ、43は読出しレジスタ、6はフラグレジス
タ、7,8は命令バツフアレジスタ、9は選択回
路、11は命令デコーダである。

Claims (1)

    【特許請求の範囲】
  1. 1 n×mバイト(n、mは2以上の整数)から
    なるデータ、ブロツクを複数ブロツク記憶し、n
    バイト幅の読出しレジスタに対してnの倍数以外
    のバイトアドレスからのnバイト読出しが可能で
    あり、ブロツク境界にまたがるnバイトに関して
    は該ブロツク境界までのn未満のバイトと該ブロ
    ツク境界からのn未満のバイトに分けて読出しが
    可能なように制御されるメモリを有し、可変長命
    令を扱う情報処理装置において、上記読出しレジ
    スタの各バイト毎、又は所定の複数バイト毎にフ
    ラグを設け、読出しデータの存在するバイト位置
    を上記フラグにより表示し、可変長命令の中の最
    短語長命令のバイト数分の読出しデータが上記読
    出しレジスタ中にあることを上記フラグにより検
    知し、命令のデコードに開始し、デコードの結果
    上記フラグの示す読出しデータ数が命令長に足り
    ない事が判明したとき、もう一回の読み出しを待
    つことを特徴とする情報処理装置。
JP13624280A 1980-09-30 1980-09-30 Information processing equipment Granted JPS5760441A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP13624280A JPS5760441A (en) 1980-09-30 1980-09-30 Information processing equipment

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP13624280A JPS5760441A (en) 1980-09-30 1980-09-30 Information processing equipment

Publications (2)

Publication Number Publication Date
JPS5760441A JPS5760441A (en) 1982-04-12
JPS6244661B2 true JPS6244661B2 (ja) 1987-09-22

Family

ID=15170602

Family Applications (1)

Application Number Title Priority Date Filing Date
JP13624280A Granted JPS5760441A (en) 1980-09-30 1980-09-30 Information processing equipment

Country Status (1)

Country Link
JP (1) JPS5760441A (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0155275B1 (en) * 1983-09-12 1989-04-05 Motorola, Inc. Prefetch validation
JPS6075407U (ja) * 1983-10-26 1985-05-27 グンゼ株式会社 ブラジヤ−
JPH0630062B2 (ja) * 1984-07-26 1994-04-20 日本電気株式会社 デ−タ処理装置
JPS61155308U (ja) * 1985-03-19 1986-09-26
JPH0812601B2 (ja) * 1985-12-20 1996-02-07 日本電気株式会社 データ処理装置
JPS6324327A (ja) * 1986-07-16 1988-02-01 Fujitsu Ltd 命令フエツチ処理方式

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS509621A (ja) * 1973-04-12 1975-01-31

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS509621A (ja) * 1973-04-12 1975-01-31

Also Published As

Publication number Publication date
JPS5760441A (en) 1982-04-12

Similar Documents

Publication Publication Date Title
KR940009094B1 (ko) 데이타처리 시스템
US5598544A (en) Instruction buffer device for processing an instruction set of variable-length instruction codes
JPH0789319B2 (ja) デ−タ処理装置における先行制御装置
JPS6341093B2 (ja)
EP0220682B1 (en) Data processing system
KR970705079A (ko) 가변길이 명령어 세트를 위한 태그 프리페치와 명령어번역기 및 작동방법(Tagged Prefetch and Instruction Decoder for Variable Length Instruction Set and Method of Operation)
JPS6244661B2 (ja)
JP2571682B2 (ja) 情報処理装置
JPS6049340B2 (ja) 分岐命令先取り方式
JPS6211736B2 (ja)
JPH03147134A (ja) 命令シーケンス制御装置
JPH0377137A (ja) 情報処理装置
JPS60231241A (ja) プログラム先行フエツチ制御方式
JPH0646381B2 (ja) 命令取出し装置
KR100654477B1 (ko) 프로세서 동작 방법
JPH0342723A (ja) データ処理装置
JPS63314644A (ja) デ−タ処理装置
JPS6012187Y2 (ja) チャネル装置
JPS63280334A (ja) 情報処理装置
JPH024011B2 (ja)
JP2576589B2 (ja) 仮想記憶アクセス制御方式
JPS6036614B2 (ja) 情報処理装置
JPH0481218B2 (ja)
JPS6047617B2 (ja) 情報処理装置
JPS6047616B2 (ja) 情報処理装置