JPH03147021A - 命令指定方法及び命令実行方式 - Google Patents
命令指定方法及び命令実行方式Info
- Publication number
- JPH03147021A JPH03147021A JP1285471A JP28547189A JPH03147021A JP H03147021 A JPH03147021 A JP H03147021A JP 1285471 A JP1285471 A JP 1285471A JP 28547189 A JP28547189 A JP 28547189A JP H03147021 A JPH03147021 A JP H03147021A
- Authority
- JP
- Japan
- Prior art keywords
- instruction
- instructions
- instruction word
- word
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 claims description 18
- 230000010365 information processing Effects 0.000 claims description 11
- 238000010586 diagram Methods 0.000 description 7
- 238000006073 displacement reaction Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 2
- 101150110872 ric-3 gene Proteins 0.000 description 2
- 230000000259 anti-tumor effect Effects 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000004904 shortening Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/22—Microcontrol or microprogram arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30145—Instruction analysis, e.g. decoding, instruction word fields
- G06F9/3016—Decoding the operand specifier, e.g. specifier format
- G06F9/30167—Decoding the operand specifier, e.g. specifier format of immediate specifier, e.g. constants
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30145—Instruction analysis, e.g. decoding, instruction word fields
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline, look ahead
- G06F9/3836—Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
- G06F9/3853—Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution of compound instructions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline, look ahead
- G06F9/3885—Concurrent instruction execution, e.g. pipeline, look ahead using a plurality of independent parallel functional units
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
【発明の詳細な説明】
〔概要〕
情報処理装置で実行する命令を指定し、これを実行する
命令指定方式及び命令実行方式に関し、ビット使用効率
が向上し、大きな即値データを指定でき、複数の命令を
同時実行するためのハードウェア構成が簡単となること
を目的とし、情報処理装置で実行する命令を指定する命
令指定方式に於いて、少なくとも命令コードとオペラン
ド指定部とを持ち単一の命令を指定する1又は複数の命
令語と、該一又は命令語の構成を指定するタイプコード
とで大命令語を形成し、単一の大命令語で並列実行する
一又は複数の命令を指定し、情報処理装置において前記
大命令語を入力する入力手段と、前記タイプコードより
、前記大命令語の演算指定命令の組合せ且つ演算指定命
令の数を判断する演算形式判断部と、複数の演算形式判
断部と、演算形式判断部の形式判断に従い、前記大命令
語内の演算指定命令のそれぞれを前記複数の演算手段の
内適当な演算手段に割り当て、送出する演算割り当て手
段を有し構成する。
命令指定方式及び命令実行方式に関し、ビット使用効率
が向上し、大きな即値データを指定でき、複数の命令を
同時実行するためのハードウェア構成が簡単となること
を目的とし、情報処理装置で実行する命令を指定する命
令指定方式に於いて、少なくとも命令コードとオペラン
ド指定部とを持ち単一の命令を指定する1又は複数の命
令語と、該一又は命令語の構成を指定するタイプコード
とで大命令語を形成し、単一の大命令語で並列実行する
一又は複数の命令を指定し、情報処理装置において前記
大命令語を入力する入力手段と、前記タイプコードより
、前記大命令語の演算指定命令の組合せ且つ演算指定命
令の数を判断する演算形式判断部と、複数の演算形式判
断部と、演算形式判断部の形式判断に従い、前記大命令
語内の演算指定命令のそれぞれを前記複数の演算手段の
内適当な演算手段に割り当て、送出する演算割り当て手
段を有し構成する。
本発明は命令指定方式及び命令実行方式に関し、情報処
理装置で実行する命令を指定し、これを実行する命令指
定方式に関する。
理装置で実行する命令を指定し、これを実行する命令指
定方式に関する。
近年、半導体の集積度、スピードの向上に伴いプロセッ
サの性能向上は著しいが、−層の性能向上が要求されて
いる。この性能向上の要求に応えるため、RI S C
(Reduced l n5tructionS e
t C01111Lltf3r)と呼ばれるアーキテ
クチャが普及しつつある。このアーキテクチャは一般的
に32b目固定長の命令語で、演算はレジスタ間のみで
行ない、メモリアクセスはメモリとレジスタの間の転送
のみに限りプログラムの使用V4麿が高い命令のみを持
つものである。これらの制限により命令実行に必要な物
量の削減及び1illlH1の簡単化ができ、ひいては
動作クロックの高速化あるいは1命令実行に必要なサイ
クル数の短縮により性能向上が図れる。また−層の性能
向上を進めるために、複数の命令を同時に実行する試み
も進められている。
サの性能向上は著しいが、−層の性能向上が要求されて
いる。この性能向上の要求に応えるため、RI S C
(Reduced l n5tructionS e
t C01111Lltf3r)と呼ばれるアーキテ
クチャが普及しつつある。このアーキテクチャは一般的
に32b目固定長の命令語で、演算はレジスタ間のみで
行ない、メモリアクセスはメモリとレジスタの間の転送
のみに限りプログラムの使用V4麿が高い命令のみを持
つものである。これらの制限により命令実行に必要な物
量の削減及び1illlH1の簡単化ができ、ひいては
動作クロックの高速化あるいは1命令実行に必要なサイ
クル数の短縮により性能向上が図れる。また−層の性能
向上を進めるために、複数の命令を同時に実行する試み
も進められている。
第6図(A)〜(C)夫々は従来のRISCアーキテク
チャによる命令形式の各個を示す。
チャによる命令形式の各個を示す。
第6図(A>に示す第1の形式の命令は命令コードOP
に基づき、第2レジスタ指定フイールドR2Xで指定す
るレジスタの内容と、第3レジスタ指定フイールドR3
Xで指定するレジスタの内容とを演算して第2レジスタ
指定フイールドR2Xで指定するレジスタに格納するこ
とを指示する。
に基づき、第2レジスタ指定フイールドR2Xで指定す
るレジスタの内容と、第3レジスタ指定フイールドR3
Xで指定するレジスタの内容とを演算して第2レジスタ
指定フイールドR2Xで指定するレジスタに格納するこ
とを指示する。
同図(B)に示す第2の形式の命令は演算命令を場合に
第2レジスタ指定フイールドR2Xの指定レジスタの内
容と16ビツトの即値データIMM16とを演算して第
ルジスタ指定フィールドRIXのレジスタに格納し、ロ
ード命令の場合に上記R2Xのレジスタの内容であるア
ドレスと1MM16として与えられた変位とを加算して
得られるメモリ上のアドレスのデータを第2レジスタ指
定フイールドRa2のレジスタに格納することを指定す
る。
第2レジスタ指定フイールドR2Xの指定レジスタの内
容と16ビツトの即値データIMM16とを演算して第
ルジスタ指定フィールドRIXのレジスタに格納し、ロ
ード命令の場合に上記R2Xのレジスタの内容であるア
ドレスと1MM16として与えられた変位とを加算して
得られるメモリ上のアドレスのデータを第2レジスタ指
定フイールドRa2のレジスタに格納することを指定す
る。
同図(C)に示す第3の形式の命令は21ビツトの即値
データIMM21を第2レジスタ指定フイールドRa2
の指定レジスタに格納することを指示する。
データIMM21を第2レジスタ指定フイールドRa2
の指定レジスタに格納することを指示する。
従来の第1の形式の命令は第21〜第31ビツトが使用
されておらずビット使用効率が悪いという問題がある。
されておらずビット使用効率が悪いという問題がある。
第2又は第3の形式では16又は21ビツトを越える大
きな即値データ及び変位を必要とするとき複数命令で指
定しなければならない。また、複数命令を並列実行しよ
うとするとき、この並列実行する命令の組合せの数が多
いため、制御が複雑になり並列実行するハードウェア構
成が大規模化するという問題があった。
きな即値データ及び変位を必要とするとき複数命令で指
定しなければならない。また、複数命令を並列実行しよ
うとするとき、この並列実行する命令の組合せの数が多
いため、制御が複雑になり並列実行するハードウェア構
成が大規模化するという問題があった。
本発明は上記の点に鑑みなされたもので、ビット使用効
率が向上し、大きな即値データを指定でき、複数の命令
を同時実行するためのハードウェア構成が簡単となる命
令指定方式及び命令実行方式を提供することを目的とす
る。
率が向上し、大きな即値データを指定でき、複数の命令
を同時実行するためのハードウェア構成が簡単となる命
令指定方式及び命令実行方式を提供することを目的とす
る。
本発明の命令指定方式は、
情報処理装置で実行する命令を指定する命令指定方式に
於いて、 少なくとも命令コードとオペランド指定部とを持ち単一
の命令を指定する1又は複数の命令語と、該一又は命令
語の構成を指定するタイプ」−ドとで大命令語を形成し
、単一の大命令3Bで並列実行する一又は複数の命令を
指定する。
於いて、 少なくとも命令コードとオペランド指定部とを持ち単一
の命令を指定する1又は複数の命令語と、該一又は命令
語の構成を指定するタイプ」−ドとで大命令語を形成し
、単一の大命令3Bで並列実行する一又は複数の命令を
指定する。
また、本発明の命令実行方式は、
情報処理装置に於いて、
演算を指定する演算指定命令を1又は複数個有し、且つ
前記演算指定命令が幾つあるか且つどの様な演算指定部
の組合せかの演算形式を指定するタイプコードを有する
大命令語を設定し、前記大命令語を入力する入力手段と
、 前記タイプコードより、前記大命令語の演算指定命令の
組合せ且つ演算指定命令の数を判断する演算形式判断部
と、 複数の演算形式判断部と、 演算形式判断部の形式判断に従い、前記大命令語内の演
算指定命令のそれぞれを前記複数の演算手段の内適当な
演算手段に割り当て、送出する演粋割り当て手段を有す
る。
前記演算指定命令が幾つあるか且つどの様な演算指定部
の組合せかの演算形式を指定するタイプコードを有する
大命令語を設定し、前記大命令語を入力する入力手段と
、 前記タイプコードより、前記大命令語の演算指定命令の
組合せ且つ演算指定命令の数を判断する演算形式判断部
と、 複数の演算形式判断部と、 演算形式判断部の形式判断に従い、前記大命令語内の演
算指定命令のそれぞれを前記複数の演算手段の内適当な
演算手段に割り当て、送出する演粋割り当て手段を有す
る。
本発明においては、固定長の大命令語をタイプコードと
複数の命令語とで構成することで大命令語の未使用ビッ
トがなくなりビット使用効率が向上する。また、大命令
語を構成する命令語の数を少なくして大きな即値データ
を指定することができる。更にタイプコードにより大命
令語を構成する命令語の構成つまり組合せを規定できこ
の組合せの規定により複数命令を並列実行する際の!1
1@及びハードウェア構成が簡単となる。
複数の命令語とで構成することで大命令語の未使用ビッ
トがなくなりビット使用効率が向上する。また、大命令
語を構成する命令語の数を少なくして大きな即値データ
を指定することができる。更にタイプコードにより大命
令語を構成する命令語の構成つまり組合せを規定できこ
の組合せの規定により複数命令を並列実行する際の!1
1@及びハードウェア構成が簡単となる。
第1図(A)〜(D)は本発明方式の命令形式の各実施
例を示す。
例を示す。
第1図(A>に示す第1の形式の大命令語は64ビツト
構成で、ビットO〜3のタイプコードTyρ0と、ビッ
ト4〜23.24〜43.44−63夫々の形式Aの3
つの命令語よりなる。ビット4〜23の形式Aの命令語
は5ビツトの命令」−ドOPaと、オペランド指定部と
しての5ビツトの第2レジスタ指定フイールドRa2、
及び5ビツトの第2レジスタ指定フイールドRa2、及
び5ビツトの第3レジスタ指定フイールドRa3とより
構成されており、第2レジスタ指定フイールドRa2の
指定するレジスタの内容を第2レジスタ指定フイールド
Ra2の指定するレジスタの内容とを演算して第3レジ
スタ指定フイールドRa3の指定するレジスタに格納す
ることを指示する。ビット24〜43の形式への命令語
は5ビツトの命令コードOPbに対応して、オペランド
旧定部としての5ビツトの第ルジスタ指定フィールドR
b1、及び5ビツトの第2レジスタ指定フイールドRb
2、及び5ビツトの第3レジスタ指定フイールドRb3
とより構成されており、第ルジスタ指定フィールドRb
1の指定するレジスタの内容を第2レジスタ指定フイー
ルドRb2の指定するレジスタの内容とを演算して第3
レジスタ指定フイールドRb3の指定するレジスタに格
納することを指示する。
構成で、ビットO〜3のタイプコードTyρ0と、ビッ
ト4〜23.24〜43.44−63夫々の形式Aの3
つの命令語よりなる。ビット4〜23の形式Aの命令語
は5ビツトの命令」−ドOPaと、オペランド指定部と
しての5ビツトの第2レジスタ指定フイールドRa2、
及び5ビツトの第2レジスタ指定フイールドRa2、及
び5ビツトの第3レジスタ指定フイールドRa3とより
構成されており、第2レジスタ指定フイールドRa2の
指定するレジスタの内容を第2レジスタ指定フイールド
Ra2の指定するレジスタの内容とを演算して第3レジ
スタ指定フイールドRa3の指定するレジスタに格納す
ることを指示する。ビット24〜43の形式への命令語
は5ビツトの命令コードOPbに対応して、オペランド
旧定部としての5ビツトの第ルジスタ指定フィールドR
b1、及び5ビツトの第2レジスタ指定フイールドRb
2、及び5ビツトの第3レジスタ指定フイールドRb3
とより構成されており、第ルジスタ指定フィールドRb
1の指定するレジスタの内容を第2レジスタ指定フイー
ルドRb2の指定するレジスタの内容とを演算して第3
レジスタ指定フイールドRb3の指定するレジスタに格
納することを指示する。
ビット44〜63の形式Aの命令語は5ビツトの命令コ
ードOPCに対応して、オペランド指定部としての5ビ
ツトの第ルジスタ指定フィールドRC1、及び5ビツト
の第2レジスタ指定フイールドRc2、及び5ビツトの
第3レジスタ指定フイールドRc3とより構成されてお
り、第ルジスタ指定フィールドRC1の指定するレジス
タの内容を第2レジスタ指定フイールドRc2の指定す
るレジスタの内容とを演算して第3レジスタ指定フイー
ルドRc3の指定するレジスタに格納することを指示す
る。演算の種類は4ビットのタイプコードT ypeと
5ビツトの命令コードOPa。
ードOPCに対応して、オペランド指定部としての5ビ
ツトの第ルジスタ指定フィールドRC1、及び5ビツト
の第2レジスタ指定フイールドRc2、及び5ビツトの
第3レジスタ指定フイールドRc3とより構成されてお
り、第ルジスタ指定フィールドRC1の指定するレジス
タの内容を第2レジスタ指定フイールドRc2の指定す
るレジスタの内容とを演算して第3レジスタ指定フイー
ルドRc3の指定するレジスタに格納することを指示す
る。演算の種類は4ビットのタイプコードT ypeと
5ビツトの命令コードOPa。
OPb、OPcとの組合せによって指定され、これは後
述する形式B、C,Dについても同様である。
述する形式B、C,Dについても同様である。
第1図(B)に示す第2の形式の大命令語は64ビツト
構成で、ビットO〜3のタイプコードT ypeと、ビ
ット4〜23の形式Aの命令語と、ビット24〜63の
形式Bの命令語よりなる。形式Aの命令語はタイプコー
ドT ypeと5ビツトの命令コードOPaとに応じて
5ビツトの第2レジスタ指定フイールドRa2の指定す
るレジスタの内容を5ビツトの第2レジスタ指定フイー
ルドRa2の指定するレジスタの内容とを演算して5ビ
ツトの第3レジスタ指定フイールドRa3の指定するレ
ジスタに格納することを指示する。形式Bの命令語はビ
ット24〜28の命令コードOPbが演算命令の場合に
ビット29〜33の第ルジスタ指定フィールドRt)1
の指定レジスタの内容とビット34〜58の即値データ
IMM25とを演算してビット59・−63の第3レジ
スタ指定フイールドRb3の1b定レジスタに格納し、
ロード命令の場合にRb1のレジスタの内容であるアド
レスと1MM25として与えられた変位とを加算して得
られるメモリ上のアドレスのデータをRb3の指定レジ
スタに格納することを指示する。
構成で、ビットO〜3のタイプコードT ypeと、ビ
ット4〜23の形式Aの命令語と、ビット24〜63の
形式Bの命令語よりなる。形式Aの命令語はタイプコー
ドT ypeと5ビツトの命令コードOPaとに応じて
5ビツトの第2レジスタ指定フイールドRa2の指定す
るレジスタの内容を5ビツトの第2レジスタ指定フイー
ルドRa2の指定するレジスタの内容とを演算して5ビ
ツトの第3レジスタ指定フイールドRa3の指定するレ
ジスタに格納することを指示する。形式Bの命令語はビ
ット24〜28の命令コードOPbが演算命令の場合に
ビット29〜33の第ルジスタ指定フィールドRt)1
の指定レジスタの内容とビット34〜58の即値データ
IMM25とを演算してビット59・−63の第3レジ
スタ指定フイールドRb3の1b定レジスタに格納し、
ロード命令の場合にRb1のレジスタの内容であるアド
レスと1MM25として与えられた変位とを加算して得
られるメモリ上のアドレスのデータをRb3の指定レジ
スタに格納することを指示する。
第1図(C)に示す第3の形式の大命令語は64ビツト
構成で、ビットO〜3のタイプコードT ypeと、ビ
ット4〜23の形式Aの命令語と、ビット24〜63の
形式Cの命令語とよりなる。
構成で、ビットO〜3のタイプコードT ypeと、ビ
ット4〜23の形式Aの命令語と、ビット24〜63の
形式Cの命令語とよりなる。
形式Aの命令語はタイプコードT ypeと5ビツトの
命令コードOPaとに応じて5ビツトの第2レジスタ指
定フイールドRa2の指定するレジスタの内容を5ビツ
トの第2レジスタ指定フイールドRa2の指定するレジ
スタの内容とを演算して5ビツトの第3レジスタ指定フ
イールドRa3の指定するレジスタに格納することを指
示する。形式Cの命令語はタイプコードT ypeと、
ビット24〜26の命令コードOPbとに応じてビット
27〜58の即値データIMM32をビット59〜63
の第3レジスタ指定フイールドRb3の指定レジスタに
格納することを指示する。
命令コードOPaとに応じて5ビツトの第2レジスタ指
定フイールドRa2の指定するレジスタの内容を5ビツ
トの第2レジスタ指定フイールドRa2の指定するレジ
スタの内容とを演算して5ビツトの第3レジスタ指定フ
イールドRa3の指定するレジスタに格納することを指
示する。形式Cの命令語はタイプコードT ypeと、
ビット24〜26の命令コードOPbとに応じてビット
27〜58の即値データIMM32をビット59〜63
の第3レジスタ指定フイールドRb3の指定レジスタに
格納することを指示する。
第1図(D)に示す第4の形式の大命令語は64ビツト
構成で、ビットO〜3のタイプコードT ypeと、ビ
ット4〜63の形式りの60ピッ1−の命令語で構成さ
れている。形式りの命令語はタイプコードT ypeと
ビット4〜8の命令コードOpaに応じてビット9〜4
0の即値データIMM32をビット59〜63の第3レ
ジスタ指定フイールドRa3の指定レジスタに格納する
ことを指示している。
構成で、ビットO〜3のタイプコードT ypeと、ビ
ット4〜63の形式りの60ピッ1−の命令語で構成さ
れている。形式りの命令語はタイプコードT ypeと
ビット4〜8の命令コードOpaに応じてビット9〜4
0の即値データIMM32をビット59〜63の第3レ
ジスタ指定フイールドRa3の指定レジスタに格納する
ことを指示している。
上記の形式A−DはタイプコードT ypeの値によっ
て区別される。
て区別される。
第2図は本発明方式を適用した情報処理装置の一実施例
のブロック図を示す。
のブロック図を示す。
同図中、インストラクション・メモリ20から読出され
た64ビツトの大命令語はプロセッサ21内の命令レジ
スタ(IR)22に格納され、格納された大命令語の各
ビットが制御回路23に供給される。
た64ビツトの大命令語はプロセッサ21内の命令レジ
スタ(IR)22に格納され、格納された大命令語の各
ビットが制御回路23に供給される。
制御回路23は第3図に示す構成であり、デコーダ(D
EC)25はlR22の0〜3ビツトつまりタイプコー
ドT Ypeをデコードし、デコーダ26.27.28
夫々はlR22のO〜3ビット(タイプコードType
)を付加して4〜8ビツト。
EC)25はlR22の0〜3ビツトつまりタイプコー
ドT Ypeをデコードし、デコーダ26.27.28
夫々はlR22のO〜3ビット(タイプコードType
)を付加して4〜8ビツト。
24〜28ビツト、44〜48ビツト(第1の形式の命
令コードOPa、OPb、OPcに相当)夫々のデコー
ドを行なって第1〜第3演算器制御信号を生成する。セ
レクタ24はデコーダ25の出力に応じてlR22のビ
ット19〜23又はビット59〜63のいずれかを選択
し、選択されたビットがEサイクルでラッチ回路(LT
)29にラッチされる。lR22のビット59〜63は
Eサイクルでラッチ回路30にラッチされる。セレクタ
31はデコーダ25の出力に応じてlR22のビット5
9〜63又はビット39〜43のいずれかを選択し、選
択されたビットがEサイクルでラッチ回路32にラッチ
される。ラッチ回路29゜32.30夫々の出力はWサ
イクルでラッチ回路35.36.37にラッチされ、デ
コーダ40゜41.42夫々でデコードされる。またラ
ンチ36の出力はAサイクルでラッチ回路43にラッチ
され、デコーダ44でデコードされる。デコーダ40〜
42.44夫々はデコーダ26〜28の出力する演算器
制御信号の一部によって動作可能となるよう制御されて
いる。32個のオア回路45゜〜4531夫々はデコー
ダ40〜42.44の出力よりクロック・ゲート・イネ
ーブル信号(CGE)O〜31を作成する。
令コードOPa、OPb、OPcに相当)夫々のデコー
ドを行なって第1〜第3演算器制御信号を生成する。セ
レクタ24はデコーダ25の出力に応じてlR22のビ
ット19〜23又はビット59〜63のいずれかを選択
し、選択されたビットがEサイクルでラッチ回路(LT
)29にラッチされる。lR22のビット59〜63は
Eサイクルでラッチ回路30にラッチされる。セレクタ
31はデコーダ25の出力に応じてlR22のビット5
9〜63又はビット39〜43のいずれかを選択し、選
択されたビットがEサイクルでラッチ回路32にラッチ
される。ラッチ回路29゜32.30夫々の出力はWサ
イクルでラッチ回路35.36.37にラッチされ、デ
コーダ40゜41.42夫々でデコードされる。またラ
ンチ36の出力はAサイクルでラッチ回路43にラッチ
され、デコーダ44でデコードされる。デコーダ40〜
42.44夫々はデコーダ26〜28の出力する演算器
制御信号の一部によって動作可能となるよう制御されて
いる。32個のオア回路45゜〜4531夫々はデコー
ダ40〜42.44の出力よりクロック・ゲート・イネ
ーブル信号(CGE)O〜31を作成する。
第2図に示すブロセッザ21はバイブライン動作を行な
う。この場合、第4図(A>に示すクロックに同11シ
て、1番目の大命令語は同図(B)の如くフェッチ(F
)、デコード(D)、イグビキュート(E)、ライト(
W>の各サイクルが実行され、2番目、3番目の大命令
語は同図(C)。
う。この場合、第4図(A>に示すクロックに同11シ
て、1番目の大命令語は同図(B)の如くフェッチ(F
)、デコード(D)、イグビキュート(E)、ライト(
W>の各サイクルが実行され、2番目、3番目の大命令
語は同図(C)。
(D)夫々に示す如く各サイクルが実行される。
つまり連続して実行される各大命令語は各サイクルが1
サイクルずれている。
サイクルずれている。
但し大命令語内のロード命令はEサイクルの代りにアド
レス計算が行なわれ、Wサイクルの代りにメモリアクセ
スが行なわれ(Aサイクル)、この次にWサイクルが実
行される。
レス計算が行なわれ、Wサイクルの代りにメモリアクセ
スが行なわれ(Aサイクル)、この次にWサイクルが実
行される。
ここで、lR22に第1の形式の大命令語が格納れてい
る場合、デコーダ25はタイプコードT ypeをデコ
ードし、デコーダ26.27.28夫々はタイプコード
T ypeを付加した命令コードOPa、OPb、OP
c夫々をデコードする。また、Eサイクルでラッチ回路
29.32.30夫々に第3レジスタ指定フイールドR
a3.Rb3゜RC3夫々がラッチされ、Wサイクルで
ラッチ回路35.36.37夫々に上記第3レジスタ指
定フイールドRa3.Rb3.Rc3夫々がラッチされ
てデコーダ40,41.42夫々でデコードされる。
る場合、デコーダ25はタイプコードT ypeをデコ
ードし、デコーダ26.27.28夫々はタイプコード
T ypeを付加した命令コードOPa、OPb、OP
c夫々をデコードする。また、Eサイクルでラッチ回路
29.32.30夫々に第3レジスタ指定フイールドR
a3.Rb3゜RC3夫々がラッチされ、Wサイクルで
ラッチ回路35.36.37夫々に上記第3レジスタ指
定フイールドRa3.Rb3.Rc3夫々がラッチされ
てデコーダ40,41.42夫々でデコードされる。
lR22に第2の形式の大命令語が格納されている場合
、デ」−ダ25はタイプコードT l/Deをデコード
し、デコーダ26.27夫々はタイプコード丁ypeを
付加して命令コードopa、opb夫々をデコードする
。また、セレクタ31がデコーダ25の出力によりTR
22のビット59・〜63を選択してEサイクルでラッ
チ回路29゜32夫々に第3レジスタ指定フイールドR
a3゜Rb3夫々がラッチされ、更にWサイクルでラッ
チ回路35.36夫々にラッチされてデコーダ40.4
1夫々でデコードされる。デコーダ42はデコーダ28
の出力する演算器υIm信号の一部によって非動作状態
とされる。また、ラッチ回路36の出力する第3レジス
タ指定フイールドRb3はAサイクルでラッチ回路43
にラッチされ、形式Bの命令語がロード命令の場合にの
みデコーダ27の出力する演算器制御信号の一部で動作
状態とされるデコーダ44でデコードされる。
、デ」−ダ25はタイプコードT l/Deをデコード
し、デコーダ26.27夫々はタイプコード丁ypeを
付加して命令コードopa、opb夫々をデコードする
。また、セレクタ31がデコーダ25の出力によりTR
22のビット59・〜63を選択してEサイクルでラッ
チ回路29゜32夫々に第3レジスタ指定フイールドR
a3゜Rb3夫々がラッチされ、更にWサイクルでラッ
チ回路35.36夫々にラッチされてデコーダ40.4
1夫々でデコードされる。デコーダ42はデコーダ28
の出力する演算器υIm信号の一部によって非動作状態
とされる。また、ラッチ回路36の出力する第3レジス
タ指定フイールドRb3はAサイクルでラッチ回路43
にラッチされ、形式Bの命令語がロード命令の場合にの
みデコーダ27の出力する演算器制御信号の一部で動作
状態とされるデコーダ44でデコードされる。
[R22に第3の形式の大命令語が格納されている場合
、デコーダ25はタイプ」−ドT ’/Fleをデコー
ドし、デコーダ26.27夫々はタイプコードT yp
eを付加して命令コードOPa、OPb夫々をデコード
する。また、セレクタ31がデコーダ25の出力により
lR22のビット59・〜63を選択してEサイクルで
ラッチ回路29゜32夫々に第3レジスタ指定フイール
ドRa3゜Rb3夫々がラッチされ、更にWサイクルで
ラッチ回路35.36夫々にラッチされてデコーダ40
.41夫々でデコードされる。デコーダ42はデコーダ
28の出力する演算器制御信号の一部によって非動作状
態とされる。また、ラッチ回路36の出力する第3レジ
スタ指定フイールドRb3はAサイクルでラッチ回路4
3にラッチされ、形式〇の命令語がロード命令の場合に
のみデコーダ27の出力する演算器制御信号の一部で動
作状態とされるデコーダ44でデコードされる。
、デコーダ25はタイプ」−ドT ’/Fleをデコー
ドし、デコーダ26.27夫々はタイプコードT yp
eを付加して命令コードOPa、OPb夫々をデコード
する。また、セレクタ31がデコーダ25の出力により
lR22のビット59・〜63を選択してEサイクルで
ラッチ回路29゜32夫々に第3レジスタ指定フイール
ドRa3゜Rb3夫々がラッチされ、更にWサイクルで
ラッチ回路35.36夫々にラッチされてデコーダ40
.41夫々でデコードされる。デコーダ42はデコーダ
28の出力する演算器制御信号の一部によって非動作状
態とされる。また、ラッチ回路36の出力する第3レジ
スタ指定フイールドRb3はAサイクルでラッチ回路4
3にラッチされ、形式〇の命令語がロード命令の場合に
のみデコーダ27の出力する演算器制御信号の一部で動
作状態とされるデコーダ44でデコードされる。
lR22に第4の形式の大命令語が格納されている場合
、デコーダ25はタイプコードT Ml)eをデコード
し、デコーダ26はタイプコードT ypeを付加して
命令コードOPaをデコードする。また、セレクタ24
がデコーダ25の出力によりlR22のピット59〜6
3を選択してEせイクルでラッチ回路29に第3レジス
タ指定フイールドRa3がラッチされ、更にWサイクル
でラッチ回路35にラッチされてデコーダ40でデコー
ドされる。デコーダ41,42.44はデコーダ28の
出力する演算器制御信号の一部によって非動作状態とさ
れる。
、デコーダ25はタイプコードT Ml)eをデコード
し、デコーダ26はタイプコードT ypeを付加して
命令コードOPaをデコードする。また、セレクタ24
がデコーダ25の出力によりlR22のピット59〜6
3を選択してEせイクルでラッチ回路29に第3レジス
タ指定フイールドRa3がラッチされ、更にWサイクル
でラッチ回路35にラッチされてデコーダ40でデコー
ドされる。デコーダ41,42.44はデコーダ28の
出力する演算器制御信号の一部によって非動作状態とさ
れる。
制御回路23出力によって制御されるレジスタファイル
50は第5図に示す構成である。第5図口、端子RIc
3.Rlb3.RIc3.RII。
50は第5図に示す構成である。第5図口、端子RIc
3.Rlb3.RIc3.RII。
夫々に入来する各32ビツトのデータはセレクタ51o
〜5131に供給される。セレクタ51o〜5131夫
々はデコーダ40〜42.44の出力により制御されて
上記4系統のいずれかを選択し、32個のレジスタR0
〜R31夫々に供給する。
〜5131に供給される。セレクタ51o〜5131夫
々はデコーダ40〜42.44の出力により制御されて
上記4系統のいずれかを選択し、32個のレジスタR0
〜R31夫々に供給する。
レジスタR0〜R31夫々はオア回路45o〜4531
よりCGE信号を供給されたとき入来データを格納する
。レジスタR0〜R31出力は6個のセレクタ52a〜
52f夫々に供給される。セレクタ52a〜52fは夫
々1R22のピッl”9〜13(Ra1に相当)、ピッ
ト14〜18(Ra2に相当)、ピット29〜33(R
b1に相当)、ピット34〜38 (Rb2に相当)、
ピット49〜53 (Rclに相当)、ピット54・〜
58(Ra2に相当)によって制御され、これらのlR
22の各ピットで指定されたレジスタR0〜R31のい
ずれかのデータが端子ROa1゜RObl、ROb2.
ROcl、ROc2夫々より出力される。
よりCGE信号を供給されたとき入来データを格納する
。レジスタR0〜R31出力は6個のセレクタ52a〜
52f夫々に供給される。セレクタ52a〜52fは夫
々1R22のピッl”9〜13(Ra1に相当)、ピッ
ト14〜18(Ra2に相当)、ピット29〜33(R
b1に相当)、ピット34〜38 (Rb2に相当)、
ピット49〜53 (Rclに相当)、ピット54・〜
58(Ra2に相当)によって制御され、これらのlR
22の各ピットで指定されたレジスタR0〜R31のい
ずれかのデータが端子ROa1゜RObl、ROb2.
ROcl、ROc2夫々より出力される。
第2図に戻って説明するにレジスタファイルROa2,
50の端子ROa1の出力データはラッチ回路55aで
ラッチされ、端子ROa2の出力データ及びlR22の
ピット9〜40の即値データIMM32のうちセレクタ
54で選択されたデータがラッチ回路55bにラッチさ
れ、第1演算器56で演算され、その結果がラッチ回路
57にラッチされる。
50の端子ROa1の出力データはラッチ回路55aで
ラッチされ、端子ROa2の出力データ及びlR22の
ピット9〜40の即値データIMM32のうちセレクタ
54で選択されたデータがラッチ回路55bにラッチさ
れ、第1演算器56で演算され、その結果がラッチ回路
57にラッチされる。
端子ROblの出力データはラッチ回路59aにラッチ
され、端子ROb2の出力データ及びlR22のピット
34〜58.27〜58の即値データIMM25.IM
M32のうらセレクタ58で選択されたデータがラッチ
回路59bにラッチされ、第2演算器60で演算され、
その結果がラッチ回路61にラッチされる。
され、端子ROb2の出力データ及びlR22のピット
34〜58.27〜58の即値データIMM25.IM
M32のうらセレクタ58で選択されたデータがラッチ
回路59bにラッチされ、第2演算器60で演算され、
その結果がラッチ回路61にラッチされる。
端子ROc1.ROc2の出力はラッチ回路62a、6
2bでラッチされて第3演算器63で演算され、その結
果がラッチ回路64にラッチされる。
2bでラッチされて第3演算器63で演算され、その結
果がラッチ回路64にラッチされる。
ここで、第1の形式の大命令語を実行する場合にはレジ
スタファイル50のROal、ROa2゜RObl、R
Ob2.ROcl、ROc2夫々よりレジスタ指定フィ
ールドRa1.Ra2゜Rb1.Rb2.Rcl、Ra
2夫々で指定されたレジスタの格納データが出力され、
かつセレクタ58が端子ROb2の出力データを選択す
ることにより上記の各データがラップ回路55a。
スタファイル50のROal、ROa2゜RObl、R
Ob2.ROcl、ROc2夫々よりレジスタ指定フィ
ールドRa1.Ra2゜Rb1.Rb2.Rcl、Ra
2夫々で指定されたレジスタの格納データが出力され、
かつセレクタ58が端子ROb2の出力データを選択す
ることにより上記の各データがラップ回路55a。
55b、59a、59b、62a、62b夫々ニラツチ
され、演算器56,60.63夫々で同時に演算される
。その演算結果は夫々レジスタフフィル50の端子RI
a3.RIb3.R1c3に供給される。
され、演算器56,60.63夫々で同時に演算される
。その演算結果は夫々レジスタフフィル50の端子RI
a3.RIb3.R1c3に供給される。
第2の形式の大命令語を実行する場合にはレジスタファ
イル50のROal、ROa2゜RObl、ROb2夫
々よりレジスタ指定フィールドRa1.Ra2.Rb1
夫々で指定されたレジスタの格納データが出力され、か
つセレクタ58が即値データIMM25を選択すること
により上記の各データがラッチ回路55a、55b。
イル50のROal、ROa2゜RObl、ROb2夫
々よりレジスタ指定フィールドRa1.Ra2.Rb1
夫々で指定されたレジスタの格納データが出力され、か
つセレクタ58が即値データIMM25を選択すること
により上記の各データがラッチ回路55a、55b。
59a、59b夫々にラッチされ、演算器56゜60夫
々で同時に演算される。その演算結果は夫々レジスタフ
ァイル50の端子RIa3゜RIb3に供給される。但
し形式Bの命令語がロード命令の場合には演算器60で
行なったアドレス計算結果がオペランドメモリ70に供
給され、ロードデータはオペランドメモリ70からレジ
スタファイル50の端子RILに供給される。
々で同時に演算される。その演算結果は夫々レジスタフ
ァイル50の端子RIa3゜RIb3に供給される。但
し形式Bの命令語がロード命令の場合には演算器60で
行なったアドレス計算結果がオペランドメモリ70に供
給され、ロードデータはオペランドメモリ70からレジ
スタファイル50の端子RILに供給される。
第3の形式の大命令語を実行する場合にはレジスタファ
イル50のROal、ROa2゜RObl、ROb2夫
々よりレジスタ指定フィールドRa1.Ra2.Rb1
夫々で指定されたレジスタの格納データが出力され、か
つセレクタ58が即値データIMM32を選択すること
により上記の各データがラッチ回路55a、55b。
イル50のROal、ROa2゜RObl、ROb2夫
々よりレジスタ指定フィールドRa1.Ra2.Rb1
夫々で指定されたレジスタの格納データが出力され、か
つセレクタ58が即値データIMM32を選択すること
により上記の各データがラッチ回路55a、55b。
59a、59b夫々にラッチされ、演算器56゜60夫
々で同時に演算される。その演算結果は夫々レジスタフ
ァイル50の端子RI a3゜R[)3に供給される。
々で同時に演算される。その演算結果は夫々レジスタフ
ァイル50の端子RI a3゜R[)3に供給される。
但し形式Bの命令語がロード命令の場合には演算器60
で行なったアドレス計算結果がオペランドメモリ70に
供給され、ロードデータはオペランドメモリ70がらレ
ジスタファイル50の端子RfLに供給される。
で行なったアドレス計算結果がオペランドメモリ70に
供給され、ロードデータはオペランドメモリ70がらレ
ジスタファイル50の端子RfLに供給される。
第4の形式の大命令語を実行する場合にはレジスタファ
イル50のROalよりレジスタ指定フィールドRal
で指定されたレジスタの格納データが出力され、かつセ
レクタ54が即値データIMM32を選択することによ
り上記の各データがラッチ回路55a、55b夫々にラ
ッチされ、演算器56で演算される。その演算結果は夫
々レジスタフフィル50の端子RIa3に供給される。
イル50のROalよりレジスタ指定フィールドRal
で指定されたレジスタの格納データが出力され、かつセ
レクタ54が即値データIMM32を選択することによ
り上記の各データがラッチ回路55a、55b夫々にラ
ッチされ、演算器56で演算される。その演算結果は夫
々レジスタフフィル50の端子RIa3に供給される。
なお、この実施例では、プロセッサ21が32ビツト構
成であるため第3の形式の大命令語のビット41〜58
は未使用であるが、プロセッサ21を64ビツト構成と
した場合には第3の形式の大命令語のビット9〜58を
即値データIMM51として全ビット使用できる。
成であるため第3の形式の大命令語のビット41〜58
は未使用であるが、プロセッサ21を64ビツト構成と
した場合には第3の形式の大命令語のビット9〜58を
即値データIMM51として全ビット使用できる。
プログラムカウンタ(PC)の出力する命令アドレスと
ラッチ回路61よりの分岐アドレスとのいずれかはセレ
クタ72で選択されてインストラクション・メモリ20
に供給され、次の大命令語が読出される。
ラッチ回路61よりの分岐アドレスとのいずれかはセレ
クタ72で選択されてインストラクション・メモリ20
に供給され、次の大命令語が読出される。
第2図では第1演算器56は論理演算及び加粋器を行な
うALUと乗算器とで構成し、第2演算器60はALU
とシフト回路とで構成し、第3演算器63はALtJで
構成しており第1〜第4の形式夫々の命令コードOPa
、OPb、OPcは各演算器56.60.63で可能な
命令だけを規定しておくことが並列実行が容易とされる
。
うALUと乗算器とで構成し、第2演算器60はALU
とシフト回路とで構成し、第3演算器63はALtJで
構成しており第1〜第4の形式夫々の命令コードOPa
、OPb、OPcは各演算器56.60.63で可能な
命令だけを規定しておくことが並列実行が容易とされる
。
このように、固定長の大命令語をタイプコードと複数の
命令語とで構成することで大命令語の未使用ビットがな
くなりビット使用効率が向上する。
命令語とで構成することで大命令語の未使用ビットがな
くなりビット使用効率が向上する。
また、大命令語を構成する命令語の数を少なくして大き
な即値データを指定することができる。更にタイプコー
ドにより大命令語を構成する命令語の構成つまり組合せ
が規定され、この組合せの規定により複数命令を並列実
行する際の制御及びハードウェア構成を簡単とすること
ができる。
な即値データを指定することができる。更にタイプコー
ドにより大命令語を構成する命令語の構成つまり組合せ
が規定され、この組合せの規定により複数命令を並列実
行する際の制御及びハードウェア構成を簡単とすること
ができる。
上述の如く、本発明の命令指定方式及び命令実行方式に
よれば、未使用ビットが少なくビット使用効率が向上し
、大きな即値データを単一の大命令語で指定でき、大命
令語を構成する命令語の規定によりハードウェア構成が
簡単となり実用上きわめて有用である。
よれば、未使用ビットが少なくビット使用効率が向上し
、大きな即値データを単一の大命令語で指定でき、大命
令語を構成する命令語の規定によりハードウェア構成が
簡単となり実用上きわめて有用である。
第1図は本発明方式の命令形式の各実施例を示す図、
第2図は本発明方式を適用した情報処理装置の一実論例
のブロック図、 第3図は制御回路のブロック図、 第4図はパイプライン動作を示す図、 第5図はレジスタファイルのブロック図、第6図は従来
方式の命令形式の各個を示す図である。 図において、 20はインストラクション・メモリ、 21はプロセッサ、 22は命令レジスタ、 23は制腫回路、 50はレジスタファイル、 56.60.63は演算器、 70はオペランド・メモリ、 T ypeはタイプコード、 OPa、OPb、OPcは命令コード、Ra1〜Rc3
はレジスタ指定フィールド、1MM25,1MM32は
即値データ を示す。 第2図 @#回路のフ゛℃・72図 (A) CLOCに パイブ2Aフ動作区ホ↑図 第4図
のブロック図、 第3図は制御回路のブロック図、 第4図はパイプライン動作を示す図、 第5図はレジスタファイルのブロック図、第6図は従来
方式の命令形式の各個を示す図である。 図において、 20はインストラクション・メモリ、 21はプロセッサ、 22は命令レジスタ、 23は制腫回路、 50はレジスタファイル、 56.60.63は演算器、 70はオペランド・メモリ、 T ypeはタイプコード、 OPa、OPb、OPcは命令コード、Ra1〜Rc3
はレジスタ指定フィールド、1MM25,1MM32は
即値データ を示す。 第2図 @#回路のフ゛℃・72図 (A) CLOCに パイブ2Aフ動作区ホ↑図 第4図
Claims (5)
- (1)情報処理装置で実行する命令を指定する命令指定
方式に於いて、 少なくとも命令コードとオペランド指定部とを持ち単一
の命令を指定する1又は複数の命令語と、 該一又は命令語の構成を指定するタイプコードとで大命
令語を形成し、単一の大命令語で並列実行する一又は複
数の命令を指定することを特徴とする命令指定方式。 - (2)情報処理装置に於いて、 演算を指定する演算指定命令を1又は複数個有し、且つ
前記演算指定命令が幾つあるか且つどの様な演算指定部
の組合せかの演算形式を指定するタイプコードを有する
大命令語を設定し、前記大命令語を入力する入力手段(
22)と、前記タイプコードより、前記大命令語の演算
指定命令の組合せ且つ演算指定命令の数を判断する演算
形式判断部(25)と、 複数の演算手段(56、60、63)と、 演算形式判断部(25)の形式判断に従い、前記大命令
語内の演算指定命令のそれぞれを前記複数の演算手段(
56、60、63)の内適当な演算手段に割り当て、送
出する演算割り当て手段(52a〜52f)を有するこ
とを特徴とする命令実行方式。 - (3)情報処理装置に於いて、 少なくとも命令コードとオペランド指定部とを持ち一つ
の演算を指定する演算指定命令を1又は複数個有し、且
つ前記演算指定部が幾つあるか且つどの様な演算指定命
令の組合せかの演算形式を指定するタイプコードを有す
る大命令語を設定し、 前記大命令語を入力する入力手段と(25)と、 前記タイプコードより、前記大命令語の演算指定命令の
組合せ且つ演算指定命令の数を判断する演算形式判断部
(25)と、 複数のオペランドレジスタと(R0〜R31)と、 複数の演算手段と(56、60、63)と、演算形式判
断部(25)の形式判断に従い、前記大命令語内の演算
指定部のそれぞれを前記複数の演算手段(56、60、
63)の内適当な演算手段を割り当て、且つそれぞれの
演算指定命令内の前記オペランド指定部により、複数の
オペランドレジスタ(R0〜R31)を演算指定命令毎
に指定する演算割り当て手段 (52a〜52f)を有することを特徴とする命令実行
方式。 - (4)複数の演算手段(56、60、63)では、ひと
つの大命令語内の演算指定命令を同時に実行することを
特徴とする特許請求の範囲第2項の命令実行方式。 - (5)複数の演算手段(56、60、63)では、ひと
つの大命令語内の演算指定命令を同時に実行することを
特徴とする特許請求の範囲第3項の命令実行方式。
Priority Applications (7)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP1285471A JP2835103B2 (ja) | 1989-11-01 | 1989-11-01 | 命令指定方法及び命令実行方式 |
EP90311767A EP0426393B1 (en) | 1989-11-01 | 1990-10-26 | Instructing method and execution system |
DE69031899T DE69031899T2 (de) | 1989-11-01 | 1990-10-26 | Befehlsmethode und Ausführungssystem |
CA002029088A CA2029088C (en) | 1989-11-01 | 1990-10-31 | Instructing method and execution system |
AU65722/90A AU625008B2 (en) | 1989-11-01 | 1990-10-31 | Instructing method and execution system |
KR1019900017654A KR930007041B1 (ko) | 1989-11-01 | 1990-11-01 | 명령 지정방법 및 실행장치 |
US08/202,668 US5442762A (en) | 1989-11-01 | 1994-02-25 | Instructing method and execution system for instructions including plural instruction codes |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP1285471A JP2835103B2 (ja) | 1989-11-01 | 1989-11-01 | 命令指定方法及び命令実行方式 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH03147021A true JPH03147021A (ja) | 1991-06-24 |
JP2835103B2 JP2835103B2 (ja) | 1998-12-14 |
Family
ID=17691950
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP1285471A Expired - Fee Related JP2835103B2 (ja) | 1989-11-01 | 1989-11-01 | 命令指定方法及び命令実行方式 |
Country Status (7)
Country | Link |
---|---|
US (1) | US5442762A (ja) |
EP (1) | EP0426393B1 (ja) |
JP (1) | JP2835103B2 (ja) |
KR (1) | KR930007041B1 (ja) |
AU (1) | AU625008B2 (ja) |
CA (1) | CA2029088C (ja) |
DE (1) | DE69031899T2 (ja) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0540630A (ja) * | 1991-08-05 | 1993-02-19 | Sharp Corp | 中央処理装置 |
JPH05100897A (ja) * | 1991-10-03 | 1993-04-23 | Agency Of Ind Science & Technol | 命令トレース方式 |
US6085306A (en) * | 1997-06-16 | 2000-07-04 | Matsushita Electric Industrial Co., Ltd | Processor for executing highly efficient VLIW |
US6115806A (en) * | 1995-07-12 | 2000-09-05 | Mitsubishi Denki Kabushiki Kaisha | Data processor having an instruction decoder and a plurality of executing units for performing a plurality of operations in parallel |
US6209080B1 (en) | 1997-07-30 | 2001-03-27 | Matsushita Electric Industrial Co., Ltd. | Constant reconstruction processor that supports reductions in code size and processing time |
US7194602B2 (en) | 1998-03-11 | 2007-03-20 | Matsushita Electric Industrial Co., Ltd. | Data processor |
USRE41751E1 (en) | 1998-03-30 | 2010-09-21 | Panasonic Corporation | Instruction converting apparatus using parallel execution code |
JP2012141810A (ja) * | 2010-12-29 | 2012-07-26 | Fujitsu Ltd | 演算処理装置および演算処理方法 |
JP2014238859A (ja) * | 2010-03-03 | 2014-12-18 | クアルコム,インコーポレイテッド | 階層型の超長命令パケットを処理するシステムおよび方法 |
Families Citing this family (50)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5539911A (en) * | 1991-07-08 | 1996-07-23 | Seiko Epson Corporation | High-performance, superscalar-based computer system with out-of-order instruction execution |
ATE200357T1 (de) | 1991-07-08 | 2001-04-15 | Seiko Epson Corp | Risc-prozessor mit dehnbarer architektur |
JP3333196B2 (ja) * | 1991-07-08 | 2002-10-07 | セイコーエプソン株式会社 | トラップ処理方法 |
US5961629A (en) * | 1991-07-08 | 1999-10-05 | Seiko Epson Corporation | High performance, superscalar-based computer system with out-of-order instruction execution |
EP0855647A1 (en) * | 1992-01-06 | 1998-07-29 | Hitachi, Ltd. | Computer for performing data fetch and data prefetch in parallel |
US5438668A (en) | 1992-03-31 | 1995-08-01 | Seiko Epson Corporation | System and method for extraction, alignment and decoding of CISC instructions into a nano-instruction bucket for execution by a RISC computer |
KR100248903B1 (ko) | 1992-09-29 | 2000-03-15 | 야스카와 히데아키 | 수퍼스칼라마이크로프로세서에서의 적재 및 저장연산처리방법 및 시스템 |
US6735685B1 (en) | 1992-09-29 | 2004-05-11 | Seiko Epson Corporation | System and method for handling load and/or store operations in a superscalar microprocessor |
WO1994027216A1 (en) * | 1993-05-14 | 1994-11-24 | Massachusetts Institute Of Technology | Multiprocessor coupling system with integrated compile and run time scheduling for parallelism |
EP0974894B1 (en) * | 1993-11-05 | 2002-02-27 | Intergraph Corporation | Instruction cache associative cross-bar switch |
US6360313B1 (en) | 1993-11-05 | 2002-03-19 | Intergraph Corporation | Instruction cache associative crossbar switch |
US5860085A (en) * | 1994-08-01 | 1999-01-12 | Cypress Semiconductor Corporation | Instruction set for a content addressable memory array with read/write circuits and an interface register logic block |
US6397262B1 (en) | 1994-10-14 | 2002-05-28 | Qnx Software Systems, Ltd. | Window kernel |
CA2118201C (en) * | 1994-10-14 | 2003-02-04 | Patrick M. Hayden | Photon windowing kernel |
US5867726A (en) * | 1995-05-02 | 1999-02-02 | Hitachi, Ltd. | Microcomputer |
US5848288A (en) * | 1995-09-20 | 1998-12-08 | Intel Corporation | Method and apparatus for accommodating different issue width implementations of VLIW architectures |
US5864704A (en) * | 1995-10-10 | 1999-01-26 | Chromatic Research, Inc. | Multimedia processor using variable length instructions with opcode specification of source operand as result of prior instruction |
JP3201716B2 (ja) * | 1996-02-22 | 2001-08-27 | シャープ株式会社 | コンピュータ装置 |
US5867681A (en) * | 1996-05-23 | 1999-02-02 | Lsi Logic Corporation | Microprocessor having register dependent immediate decompression |
US5896519A (en) * | 1996-06-10 | 1999-04-20 | Lsi Logic Corporation | Apparatus for detecting instructions from a variable-length compressed instruction set having extended and non-extended instructions |
US5794010A (en) * | 1996-06-10 | 1998-08-11 | Lsi Logic Corporation | Method and apparatus for allowing execution of both compressed instructions and decompressed instructions in a microprocessor |
US5890009A (en) * | 1996-12-12 | 1999-03-30 | International Business Machines Corporation | VLIW architecture and method for expanding a parcel |
US6219779B1 (en) * | 1997-06-16 | 2001-04-17 | Matsushita Electric Industrial Co., Ltd. | Constant reconstructing processor which supports reductions in code size |
JP3327818B2 (ja) * | 1997-08-29 | 2002-09-24 | 松下電器産業株式会社 | プログラム変換装置及び記録媒体 |
US6012138A (en) * | 1997-12-19 | 2000-01-04 | Lsi Logic Corporation | Dynamically variable length CPU pipeline for efficiently executing two instruction sets |
US6112299A (en) * | 1997-12-31 | 2000-08-29 | International Business Machines Corporation | Method and apparatus to select the next instruction in a superscalar or a very long instruction word computer having N-way branching |
US6081884A (en) * | 1998-01-05 | 2000-06-27 | Advanced Micro Devices, Inc. | Embedding two different instruction sets within a single long instruction word using predecode bits |
US6076154A (en) * | 1998-01-16 | 2000-06-13 | U.S. Philips Corporation | VLIW processor has different functional units operating on commands of different widths |
US6237076B1 (en) * | 1998-08-19 | 2001-05-22 | International Business Machines Corporation | Method for register renaming by copying a 32 bits instruction directly or indirectly to a 64 bits instruction |
US6681319B1 (en) | 1998-10-06 | 2004-01-20 | Texas Instruments Incorporated | Dual access instruction and compound memory access instruction with compatible address fields |
EP0992892B1 (en) * | 1998-10-06 | 2015-12-02 | Texas Instruments Inc. | Compound memory access instructions |
US6366998B1 (en) * | 1998-10-14 | 2002-04-02 | Conexant Systems, Inc. | Reconfigurable functional units for implementing a hybrid VLIW-SIMD programming model |
US20080008393A1 (en) * | 1999-04-09 | 2008-01-10 | Dave Stuttard | Parallel data processing apparatus |
EP1181648A1 (en) | 1999-04-09 | 2002-02-27 | Clearspeed Technology Limited | Parallel data processing apparatus |
US20080162875A1 (en) * | 1999-04-09 | 2008-07-03 | Dave Stuttard | Parallel Data Processing Apparatus |
US8171263B2 (en) * | 1999-04-09 | 2012-05-01 | Rambus Inc. | Data processing apparatus comprising an array controller for separating an instruction stream processing instructions and data transfer instructions |
US8169440B2 (en) | 1999-04-09 | 2012-05-01 | Rambus Inc. | Parallel data processing apparatus |
US8762691B2 (en) | 1999-04-09 | 2014-06-24 | Rambus Inc. | Memory access consolidation for SIMD processing elements using transaction identifiers |
US20070242074A1 (en) * | 1999-04-09 | 2007-10-18 | Dave Stuttard | Parallel data processing apparatus |
US7966475B2 (en) | 1999-04-09 | 2011-06-21 | Rambus Inc. | Parallel data processing apparatus |
US7802079B2 (en) | 1999-04-09 | 2010-09-21 | Clearspeed Technology Limited | Parallel data processing apparatus |
US8174530B2 (en) * | 1999-04-09 | 2012-05-08 | Rambus Inc. | Parallel date processing apparatus |
US7526630B2 (en) * | 1999-04-09 | 2009-04-28 | Clearspeed Technology, Plc | Parallel data processing apparatus |
US20080162874A1 (en) * | 1999-04-09 | 2008-07-03 | Dave Stuttard | Parallel data processing apparatus |
US6928073B2 (en) * | 1999-10-01 | 2005-08-09 | Stmicroelectronics Ltd. | Integrated circuit implementing packet transmission |
US6675285B1 (en) * | 2000-04-21 | 2004-01-06 | Ati International, Srl | Geometric engine including a computational module without memory contention |
US6633969B1 (en) | 2000-08-11 | 2003-10-14 | Lsi Logic Corporation | Instruction translation system and method achieving single-cycle translation of variable-length MIPS16 instructions |
KR100636596B1 (ko) | 2004-11-25 | 2006-10-23 | 한국전자통신연구원 | 고에너지 효율 병렬 처리 데이터 패스 구조 |
US8495341B2 (en) * | 2010-02-17 | 2013-07-23 | International Business Machines Corporation | Instruction length based cracking for instruction of variable length storage operands |
US20110314263A1 (en) * | 2010-06-22 | 2011-12-22 | International Business Machines Corporation | Instructions for performing an operation on two operands and subsequently storing an original value of operand |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4488219A (en) * | 1982-03-18 | 1984-12-11 | International Business Machines Corporation | Extended control word decoding |
US4569016A (en) * | 1983-06-30 | 1986-02-04 | International Business Machines Corporation | Mechanism for implementing one machine cycle executable mask and rotate instructions in a primitive instruction set computing system |
US5179680A (en) * | 1987-04-20 | 1993-01-12 | Digital Equipment Corporation | Instruction storage and cache miss recovery in a high speed multiprocessing parallel processing apparatus |
US5036454A (en) * | 1987-05-01 | 1991-07-30 | Hewlett-Packard Company | Horizontal computer having register multiconnect for execution of a loop with overlapped code |
JP2635057B2 (ja) * | 1987-11-04 | 1997-07-30 | 株式会社日立製作所 | マイクロプロセッサ |
US5115500A (en) * | 1988-01-11 | 1992-05-19 | International Business Machines Corporation | Plural incompatible instruction format decode method and apparatus |
US5202967A (en) * | 1988-08-09 | 1993-04-13 | Matsushita Electric Industrial Co., Ltd. | Data processing apparatus for performing parallel decoding and parallel execution of a variable word length instruction |
US5051885A (en) * | 1988-10-07 | 1991-09-24 | Hewlett-Packard Company | Data processing system for concurrent dispatch of instructions to multiple functional units |
US5293592A (en) * | 1989-04-07 | 1994-03-08 | Intel Corporatino | Decoder for pipelined system having portion indicating type of address generation and other portion controlling address generation within pipeline |
US5197137A (en) * | 1989-07-28 | 1993-03-23 | International Business Machines Corporation | Computer architecture for the concurrent execution of sequential programs |
-
1989
- 1989-11-01 JP JP1285471A patent/JP2835103B2/ja not_active Expired - Fee Related
-
1990
- 1990-10-26 DE DE69031899T patent/DE69031899T2/de not_active Expired - Fee Related
- 1990-10-26 EP EP90311767A patent/EP0426393B1/en not_active Expired - Lifetime
- 1990-10-31 CA CA002029088A patent/CA2029088C/en not_active Expired - Fee Related
- 1990-10-31 AU AU65722/90A patent/AU625008B2/en not_active Ceased
- 1990-11-01 KR KR1019900017654A patent/KR930007041B1/ko not_active IP Right Cessation
-
1994
- 1994-02-25 US US08/202,668 patent/US5442762A/en not_active Expired - Fee Related
Cited By (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0540630A (ja) * | 1991-08-05 | 1993-02-19 | Sharp Corp | 中央処理装置 |
JPH05100897A (ja) * | 1991-10-03 | 1993-04-23 | Agency Of Ind Science & Technol | 命令トレース方式 |
US6115806A (en) * | 1995-07-12 | 2000-09-05 | Mitsubishi Denki Kabushiki Kaisha | Data processor having an instruction decoder and a plurality of executing units for performing a plurality of operations in parallel |
US6397323B1 (en) | 1995-07-12 | 2002-05-28 | Mitsubishi Denki Kabushiki Kaisha | Data processor having an instruction decoder |
US7533243B2 (en) | 1997-06-16 | 2009-05-12 | Panasonic Corporation | Processor for executing highly efficient VLIW |
US6085306A (en) * | 1997-06-16 | 2000-07-04 | Matsushita Electric Industrial Co., Ltd | Processor for executing highly efficient VLIW |
US6397319B1 (en) | 1997-06-16 | 2002-05-28 | Matsushita Electric Ind. Co., Ltd. | Process for executing highly efficient VLIW |
US6834336B2 (en) | 1997-06-16 | 2004-12-21 | Matsushita Electric Industrial Co., Ltd. | Processor for executing highly efficient VLIW |
US6209080B1 (en) | 1997-07-30 | 2001-03-27 | Matsushita Electric Industrial Co., Ltd. | Constant reconstruction processor that supports reductions in code size and processing time |
US7194602B2 (en) | 1998-03-11 | 2007-03-20 | Matsushita Electric Industrial Co., Ltd. | Data processor |
US7664934B2 (en) | 1998-03-11 | 2010-02-16 | Panasonic Corporation | Data processor decoding instruction formats using operand data |
US7979676B2 (en) | 1998-03-11 | 2011-07-12 | Panasonic Corporation | Method for instructing a data processor to process data |
US8443173B2 (en) | 1998-03-11 | 2013-05-14 | Panasonic Corporation | Method for instructing a data processor to process data |
US8650386B2 (en) | 1998-03-11 | 2014-02-11 | Panasonic Corporation | Data processor including an operation unit to execute operations in parallel |
USRE41751E1 (en) | 1998-03-30 | 2010-09-21 | Panasonic Corporation | Instruction converting apparatus using parallel execution code |
JP2014238859A (ja) * | 2010-03-03 | 2014-12-18 | クアルコム,インコーポレイテッド | 階層型の超長命令パケットを処理するシステムおよび方法 |
US9678754B2 (en) | 2010-03-03 | 2017-06-13 | Qualcomm Incorporated | System and method of processing hierarchical very long instruction packets |
JP2012141810A (ja) * | 2010-12-29 | 2012-07-26 | Fujitsu Ltd | 演算処理装置および演算処理方法 |
US9043581B2 (en) | 2010-12-29 | 2015-05-26 | Fujitsu Limited | Storing in other queue when reservation station instruction queue reserved for immediate source operand instruction execution unit is full |
Also Published As
Publication number | Publication date |
---|---|
AU6572290A (en) | 1991-08-01 |
JP2835103B2 (ja) | 1998-12-14 |
DE69031899D1 (de) | 1998-02-12 |
EP0426393A3 (en) | 1991-08-07 |
KR930007041B1 (ko) | 1993-07-26 |
EP0426393A2 (en) | 1991-05-08 |
DE69031899T2 (de) | 1998-04-16 |
AU625008B2 (en) | 1992-06-25 |
KR910010301A (ko) | 1991-06-29 |
CA2029088C (en) | 1994-05-03 |
EP0426393B1 (en) | 1998-01-07 |
US5442762A (en) | 1995-08-15 |
CA2029088A1 (en) | 1991-05-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPH03147021A (ja) | 命令指定方法及び命令実行方式 | |
KR101812569B1 (ko) | 다중 명령 세트에 의해 사용되는 레지스터 간의 매핑 | |
JP4879307B2 (ja) | プロセッサでの条件付き実行をサポートする装置及びその方法 | |
US6356994B1 (en) | Methods and apparatus for instruction addressing in indirect VLIW processors | |
EP1267256A2 (en) | Conditional execution of instructions with multiple destinations | |
US5787025A (en) | Method and system for performing arithmetic operations with single or double precision | |
JP3781519B2 (ja) | プロセッサの命令制御機構 | |
GB2402764A (en) | Instruction endcoding within a data processing apparatus having multiple instruction sets | |
KR100765567B1 (ko) | 산술 논리 유닛 및 스택을 가지는 데이터 프로세서, 멀티미디어 장치 및 컴퓨터 판독가능 기록 매체 | |
JPH03286332A (ja) | デジタルデータ処理装置 | |
US4649477A (en) | Operand size mechanism for control simplification | |
US20240004663A1 (en) | Processing device with vector transformation execution | |
US10437598B2 (en) | Method and apparatus for selecting among a plurality of instruction sets to a microprocessor | |
EP1220089B1 (en) | Method for executing conditional branch instructions in a data processor and corresponding data processor | |
JP3841967B2 (ja) | マイクロプロセッサ | |
JP2000122919A (ja) | プロセッサ及びメモリ制御方法 | |
US20040093484A1 (en) | Methods and apparatus for establishing port priority functions in a VLIW processor | |
USRE41012E1 (en) | Register file indexing methods and apparatus for providing indirect control of register addressing in a VLIW processor | |
KR20010072490A (ko) | 레지스터 스택을 포함하는 데이터 프로세서, 그 처리방법, 컴퓨터 프로그램 제품 및 멀티미디어 장치 | |
JP3128843B2 (ja) | 情報処理装置 | |
JP3524240B2 (ja) | 並列命令処理装置 | |
JP2000298589A (ja) | マイクロプロセッサ | |
JPH07200289A (ja) | 情報処理装置 | |
JP2581298B2 (ja) | メモリアクセス権情報供給機構 | |
JPH0557614B2 (ja) |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
LAPS | Cancellation because of no payment of annual fees |