JPH01269131A - 命令先行制御方式 - Google Patents

命令先行制御方式

Info

Publication number
JPH01269131A
JPH01269131A JP63097498A JP9749888A JPH01269131A JP H01269131 A JPH01269131 A JP H01269131A JP 63097498 A JP63097498 A JP 63097498A JP 9749888 A JP9749888 A JP 9749888A JP H01269131 A JPH01269131 A JP H01269131A
Authority
JP
Japan
Prior art keywords
instruction
address
branching
processing cycle
bit
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
JP63097498A
Other languages
English (en)
Inventor
Suketaka Ishikawa
石川 佐孝
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
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP63097498A priority Critical patent/JPH01269131A/ja
Priority to US07/340,084 priority patent/US5142630A/en
Publication of JPH01269131A publication Critical patent/JPH01269131A/ja
Pending 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
    • 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/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)
  • Executing Machine-Instructions (AREA)
  • Advance Control (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明はデータ処理装置の命令先行制御方式に係り、特
に、モード設定・無条件分岐命令(85M命令)及びモ
ード設定・無条件分岐・連係命令(RASSM命令)を
実行する場合に好適な命令先行制御方式に関する。
(従来の技術〕 近年、汎用のデータ処理装置は、メモリの大容量化に伴
い、オペランドアドレスはそれまでの例えば24ビツト
では足りなく、例えば31ビツトあるいはそれ以上のオ
ペランドアドレスを処理できるアーキテクチャを採用す
るようになってきたが、この場合、それまでの例えば2
4ビツトアーキテクチヤのプログラム資源も自由に使用
できる必要がある。このため、この種のデータ処理装置
には、アドレスモードを例えば24ビツトと31ビツト
に自由に遷移せしめる命令として所謂モード設定・無条
件分岐命令(85M命令)及びモード設定・無条件分岐
・連係命令(RASSM命令)が用意されている。
85M命令は、プログラムステータス語(PSW)のア
ドレスモードビットに新たなアドレスモードを設定する
と共に、この新たなアドレスモー   ′ドでの無条件
分岐によるプログラム処理を可能にする命令であり、B
ASSM命令は、該88M命令の機能の他に、分岐先の
プログラム処理が終了した時点において元のプログラム
処理に復帰することができるためのリンク機能を付加し
たものである。この88M命令やBASSM命令を介在
させることにより、アドレスモードの異なるプログラム
資源を同一のデータ処理装置で自由に実行することがで
きる。
第2図に88M命令やBASSM命令のフォーマットを
示す、88M命令とBASSM命令とはリンク機能を除
いて同様であるので、こ\では88M命令を例に説明す
る。第2図において、抛作部が83M命令コードを示し
ていると、まず、現在のPSW中のアドレスモードビッ
トの値を、R1フィールドで指定される汎用レジスタの
ビット0に格納するつ引続いて、R2フィールドで指定
される汎用レジスタのビット0の値をPSWのアドレス
モードビットに新しくセットすると共に、同汎用レジス
タのビット1〜31の値を用いて分岐アドレスを生成し
、プログラムカウンタにセットする。この分岐アドレス
は次のように計算される。即ち、新しくセットされるア
ドレスモードビットが“0” (これは24ビツトアー
キテクチヤを示す)の時は、R2フィールドで指定され
た汎用レジスタのビット8〜31の値に、上位8ビツト
にゼロを付加したものを分岐アドレスとする。
また、新しくセットされるアドレスモードビットが“1
″ (これは31ビツトアーキテクチヤを示す)の時は
、R2フィールドで指定された汎用レジスタのビット1
〜31の値に、上位1ビツトにゼロを付加したものを分
岐アドレスとする。
ところで、先行制御機能を有するデータ処理装置におい
ては、先行処理サイクルにおいて、上記分岐アドレスの
計算が、その時点でのPSWが示すアドレスモードの値
によって行われること\なる。このため、先行処理サイ
クルでのPSWのアドレスモードと、該命令の実行サイ
クルで、該PSWにセットされる新たなアドレスモード
の値が異なっていると、上記命令実行サイクルの間にオ
ペランドアドレス計算サイクルを設けて、該アドレスの
再計算を行わなければならないとい云う問題があった。
従来、上記アドレス再計算を省略して、88M命令やB
ASSM命令の実行機能の向上を図る方法としては、例
えば特開昭62−11939号公報に記載されているよ
うに、先行処理中にデコードした命令が88M命令やB
ASSM命令の場合。
先行処理サイクルにおいて1分岐アドレスを、それぞれ
のアドレスモードについて計算しておき、該命令の実行
サイクルにおいてPSWに設定されるアドレスモードの
値に従って、上記アドレス計算結果の何れかを選択して
、当該新たなアドレスモードの分岐先アドレスとする方
式がある。
〔発明が解決しようとする課題〕
上記従来方式においては、先行処理中に、1j4.PS
Wのアドレスモードの値に拘らず、24ビツトアドレス
、及び31ビツトアドレスの両方の分岐アドレスを計算
しておき、命令の実行サイクルでアドレスモードが確定
した後、上記アドレスの何れかを選択して分岐先アドレ
スが確定することになるため、アドレスモードが確定し
て正しい分岐先アドレスの確定する命令の実行サイクル
でないと、分岐先命令の取出しの起動をかけることがで
きないという問題があった。
本発明の目的は、命令の先行制御機能を備えたデータ処
理装置において、88M命令やBASSM命令の先行処
理中に所望の分岐先アドレスを得て、該先行処理中に分
岐先命令の取出しの起動をかけることができるようにし
、命令先行制御の性能向上をさらに図ることにある。
〔課題を解決するための手段〕
本発明は、88M命令やBASSM命令の先行処理サイ
クルにおいて、該命令のR2フィールが指定される汎用
レジスタのビットOが示す値に従ってアドレス計算を行
い、その計算結果を分岐先アドレスとして直ちに分岐先
命令の取出しを起動するものである。
〔作 用〕
88M命令やBASSM命令のR2フィールドで指定さ
れる汎用レジスタのビット0が示す値は、該命令が実行
した結果、PSWのアドレスモードビットに新しいアド
レスモードとして設定される値である。従って、88M
命令やBASSM命令の先行処理サイクルにおいて、該
命令のR2フィールドで指定される汎用レジスタのビッ
トOが示す値に従ってアドレス計算した結果は、該命令
の実行サイクルにおいてPSWに設定されるアドレスモ
ードの値に従ってアドレス計算を行ったものと等価であ
り、新しいアドレスモードの分岐先アドレスを示してい
る。これにより、88M命令やBASSM命令の先行処
理サイクル中に所望の分岐先アドレスを求めることがで
き、該先行処理サイクル中に、この求った分岐先アドレ
スで分岐先命令の取出しの起動をかけることができる。
〔実施例〕
以下、本発明の一実施例について図面により説明する。
第1図は本発明の一実施例のブロック図で、特に命令の
先行制御機構中の本発明に関係する部分のみを示したも
のである。命令の先行制御機構では、前命令の実行にオ
ーバラップさせて後続命令の先行処理が行われる。この
時間関係を第3図に示す、第3図において、Dは命令の
デコードステージ、Aはアドレス計算ステージ、Eは命
令の実行ステージである。
さて、先行処理サイクルで88M命令又はBASSM命
令がデコードされると、該命令のR2フィールドが示す
汎用レジスタの内容がページレジスタ2にセットされ、
バイトインデックスレジスタ1には、オール“O”が置
数される。オペランドアダー3はバイトインデックスレ
ジスタ1の0〜31ビツト・オール゛′O”とペースレ
ジスタ2の1〜31ビツトの値を加算しく具体的には、
ペースレジスタ2の値を単に通過)、アドレスアジャス
ト回路4の入力とする。
一方、88M命令又はBASSM命令が先行処理サイク
ルでデコードされた時、アドレスモード切換信号がオン
になる。この時、セレクタ7は現在のPSWのアドレス
モードビット6ではなく、ペースレジスタ2にセットさ
れたビット0の値を選択してアドレスモード信号として
アドレスアジャスト回路4へ入力する。
アドレスアジャスト回路4は、アドレスモード信号が#
 Ol+の場合、オペランドアダー3の演算結果データ
中のビット8〜31の値(これはペースレジスタ2のビ
ット8〜13の値と同じ)を選択し、ビット0〜7はオ
ール″0”とし、オペランドアドレスレジスタにセット
する。また、アドレスモード信号が1″の場合は、オペ
ランドアダー3の演算結果データ中のビット1〜31の
値(これはペースレジスタ2のビット1〜31の値と同
じ)を選択し、ビットOは“0”とし、オペランドアド
レスレジスタ5にセットする。
ニーで、ペースレジスタ2にセットされたビ、ット0の
値は、88M命令又はBASSM命令が命令実行サイク
ルで実行された結果、最終的に新しいアドレスモード゛
としてPSWのアドレスモードビット6に設定される値
である。したがって、上記動作によりオペランドアドレ
スレジスタ5にセットされた内容は、88M命令又はB
ASSM命令が実行された結果、新しいアドレスモード
としてアドレスモードビット6に設定される値に従って
アドレス計算して求まるところの所望分岐先アドレスを
示している。即ち、88M命令又はBASSM命令の分
岐先アドレス計算は、新アドレスモード決定前に、新ア
ドレスモードとして設定されるべき値で、先行処理サイ
クル中に行われ、オペランドアドレスレジスタ5にセッ
トされる。このオペランドアドレスレジスタ5の内容を
使用し、該先行処理サイクル中にメモリに対し分岐先命
令の取出しの起動をかける。
〔発明の効果〕
以上説明したように、本発明によれば、命令の先行制御
機能を有し、異なったアドレスモードを有するデータ処
理装置において、先行処理中にデコードした命令が88
M命令又はBASSM命令の場合、該命令の分岐先アド
レスが該先行処理サイクル中に求められるため、分岐先
命令の取出し起動も先行処理中に行うことができ、命令
の先行制御の性能をさらに向上させることができる効果
がある。
【図面の簡単な説明】
第1図は本発明の一実施例のブロック図、第2図は88
M命令、BASSM命令の形式を示す図、第3図は先行
処理サイクルと命令処理サイクルの時間関係を示す図で
ある。 1・・・バイトインデックスレジスタ、2・・・ペース
レジスタ。 3・・・オペランドアダー。 4・・・アドレスアジャスト回路。 5・・・オペランドアドレスレジスタ、6・・・PSW
のアドレスモードビット、7・・・セレクタ。

Claims (1)

    【特許請求の範囲】
  1. (1)命令の先行制御機能を備え、複数の異なったアド
    レスモードを有するデータ処理装置において、命令の先
    行処理サイクル中に、新たなアドレスモードの設定及び
    分岐アドレスを生成して分岐を実行する命令(以下、モ
    ード設定・分岐命令と称す)をデコードした場合、該モ
    ード設定・分岐命令で示されるオペランドデータの特定
    ビットの値を新たに設定されるアドレスモードとして該
    先行処理サイクル中に分岐アドレスを計算し、その結果
    を用いて分岐を行うことを特徴とする命令先行制御方式
JP63097498A 1988-04-20 1988-04-20 命令先行制御方式 Pending JPH01269131A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP63097498A JPH01269131A (ja) 1988-04-20 1988-04-20 命令先行制御方式
US07/340,084 US5142630A (en) 1988-04-20 1989-04-18 System for calculating branch destination address based upon address mode bit in operand before executing an instruction which changes the address mode and branching

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP63097498A JPH01269131A (ja) 1988-04-20 1988-04-20 命令先行制御方式

Publications (1)

Publication Number Publication Date
JPH01269131A true JPH01269131A (ja) 1989-10-26

Family

ID=14193929

Family Applications (1)

Application Number Title Priority Date Filing Date
JP63097498A Pending JPH01269131A (ja) 1988-04-20 1988-04-20 命令先行制御方式

Country Status (2)

Country Link
US (1) US5142630A (ja)
JP (1) JPH01269131A (ja)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03233630A (ja) * 1990-02-08 1991-10-17 Nec Corp 情報処理装置
DE69132675T2 (de) * 1990-04-06 2002-06-13 Nec Corp Parallelfliessband-Befehlsverarbeitungssystem für sehr lange Befehlswörter
JP2875909B2 (ja) * 1991-07-12 1999-03-31 三菱電機株式会社 並列演算処理装置
US5434986A (en) * 1992-01-09 1995-07-18 Unisys Corporation Interdependency control of pipelined instruction processor using comparing result of two index registers of skip instruction and next sequential instruction
US5410660A (en) * 1992-12-24 1995-04-25 Motorola, Inc. System and method for executing branch on bit set/clear instructions using microprogramming flow
US5379442A (en) * 1993-03-31 1995-01-03 Intel Corporation Fast primary and feedback path in a programmable logic circuit
US5905881A (en) * 1995-11-30 1999-05-18 Unisys Corporation Delayed state writes for an instruction processor
US5867699A (en) * 1996-07-25 1999-02-02 Unisys Corporation Instruction flow control for an instruction processor
JP3606435B2 (ja) * 1999-09-29 2005-01-05 富士通株式会社 モードを変更する分岐命令を制御する命令処理装置および方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60142742A (ja) * 1983-12-29 1985-07-27 Hitachi Ltd デ−タ処理装置

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3725868A (en) * 1970-10-19 1973-04-03 Burroughs Corp Small reconfigurable processor for a variety of data processing applications
US3818460A (en) * 1972-12-29 1974-06-18 Honeywell Inf Systems Extended main memory addressing apparatus
JPS59174948A (ja) * 1983-03-25 1984-10-03 Toshiba Corp 情報処理装置
JPH0762823B2 (ja) * 1985-05-22 1995-07-05 株式会社日立製作所 デ−タ処理装置
JPS6211939A (ja) * 1985-07-10 1987-01-20 Fujitsu Ltd モ−ド設定・分岐命令先行制御方式
JPH0743648B2 (ja) * 1985-11-15 1995-05-15 株式会社日立製作所 情報処理装置
US4868740A (en) * 1986-06-04 1989-09-19 Hitachi, Ltd. System for processing data with multiple virtual address and data word lengths
US4979098A (en) * 1988-02-10 1990-12-18 International Business Machines Corporation Multiple address space token designation, protection controls, designation translation and lookaside

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60142742A (ja) * 1983-12-29 1985-07-27 Hitachi Ltd デ−タ処理装置

Also Published As

Publication number Publication date
US5142630A (en) 1992-08-25

Similar Documents

Publication Publication Date Title
JPH02140831A (ja) データ処理装置
EP0094535B1 (en) Pipe-line data processing system
JPH01269131A (ja) 命令先行制御方式
EP0093430A2 (en) Pipeline data processing system
JP4141112B2 (ja) プロセッサおよびプロセッサシステム
US5390306A (en) Pipeline processing system and microprocessor using the system
JPH034936B2 (ja)
JPS60142742A (ja) デ−タ処理装置
JPS5860355A (ja) 情報処理装置
JPH0528431B2 (ja)
JPS63111535A (ja) デ−タ処理装置
JP3395727B2 (ja) 演算装置および方法
JPS6211939A (ja) モ−ド設定・分岐命令先行制御方式
JPH0233173B2 (ja)
JPS6114536B2 (ja)
JPH04338825A (ja) 演算処理装置
JPH0619705A (ja) パイプライン制御方式
JP2003044272A (ja) プロセッサ、データタイプ指定方法、データロード方法、演算方法、データタイプ更新方法および命令プログラム
JP3124361B2 (ja) メモリデータロード装置
JP2583614B2 (ja) ベクトル演算装置
JPH0535499A (ja) データ処理装置及びデータ処理方法
JPS63276126A (ja) 命令デコ−ド回路
JPH0517574B2 (ja)
JPH01307831A (ja) 情報処理装置
JPS63245526A (ja) 情報処理装置