JP2004005738A - データ処理装置及び命令セット拡張方法 - Google Patents
データ処理装置及び命令セット拡張方法 Download PDFInfo
- Publication number
- JP2004005738A JP2004005738A JP2003290766A JP2003290766A JP2004005738A JP 2004005738 A JP2004005738 A JP 2004005738A JP 2003290766 A JP2003290766 A JP 2003290766A JP 2003290766 A JP2003290766 A JP 2003290766A JP 2004005738 A JP2004005738 A JP 2004005738A
- Authority
- JP
- Japan
- Prior art keywords
- instruction
- register
- address
- format
- instruction format
- 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
Images
Abstract
【解決手段】 データ処理装置は、第1命令フォーマットで記述される命令、及び第2命令フォーマットで記述される命令を受ける。前記第2命令フォーマットは、第1命令フォーマットが持つレジスタ指定領域よりも広いレジスタ指定領域を持つ。命令型判定部111は、命令を受け、この命令自身から、受けた命令のフォーマットの種類を判定する。第2のレジスタファイル120には、第1のレジスタファイル220の8個のレジスタA0〜A3、D0〜D3に加えて、他の8個のレジスタE0〜E7が追加拡張される。第1命令フォーマットの命令は、第1のレジスタファイル220のデータを用いて実行され、第2命令フォーマットの命令は、第2のレジスタファイル120が持つデータを用いて実行される。
【選択図】図5
Description
命令フェッチ部102が命令メモリ101から命令を読み出して、命令レジスタ103に格納する。
命令型判定部111は、命令レジスタ103に格納された命令を解読して、この命令が第1の命令フォーマットによる命令であることを出力する。第1のレジスタアドレス抽出部112は、ソースのレジスタアドレスとしてアドレスレジスタ“00”を、格納先のアドレスとしてデータレジスタのレジスタアドレス“00”を抽出する。レジスタアドレス変換部113は、アドレスレジスタのアドレス“00”を4ビットのアドレス“1000”に、データレジスタのアドレス“00”を4ビットのアドレス“1100”に変換する。第1のレジスタアドレスセレクタ117は、命令型判定部111からの制御信号に応じて、レジスタアドレス変換部113から出力されるアドレスをレジスタファイル120に出力する。オペレーション解読部116は、アドレスレジスタA0からデータレジスタD0へのレジスタ間転送命令であることを解読し、その制御信号を生成する。
E0レジスタ131に格納されたデータが演算器133をスルーして、M0レジスタ141に格納される。
M0レジスタ141に格納されたデータがデータメモリ143をスルーして、W0レジスタ151に格納される。
W0レジスタに格納されたデータが、物理アドレス“1100”に対応したデータレジスタD0に書き込まれる。
命令フェッチ部102が命令メモリ101から命令を読み出して、命令レジスタ103に格納する。
命令型判定部111は、命令レジスタ103に格納された命令を解読して、この命令が第2の命令フォーマットによる命令であることを出力する。第2のレジスタアドレス抽出部114は、ソースのレジスタアドレスとして“1000”を、格納先のアドレスとしてレジスタアドレス“0111”を抽出する。第1のレジスタアドレスセレクタ117は、命令型判定部111からの制御信号に応じて、第2のレジスタアドレス抽出部114から出力されるアドレスをレジスタファイル120に出力する。オペレーション解読部116は、アドレスレジスタA0から拡張レジスタE7へのレジスタ間転送命令であることを解読し、その制御信号を生成する。
E0レジスタ131に格納されたデータが演算器133をスルーして、M0レジスタ141に格納される。
M0レジスタ141に格納されたデータがデータメモリ143をスルーして、W0レジスタ151に格納される。
W0レジスタに格納されたデータが、物理アドレス“0111”に対応した拡張レジスタE7に書き込まれる。
命令フェッチ部102が命令メモリ101から命令を読み出して、命令レジスタ103に格納する。
命令型判定部111は、命令レジスタ103に格納された命令を解読して、この命令が第3の命令フォーマットによる命令であることを出力する。
E0レジスタ131に格納されたデータが演算器133をスルーしてM0レジスタ141に格納され、同時に、E2レジスタ131に格納されたデータが演算器136をスルーしてM1レジスタ142に格納される。
M0レジスタ141に格納されたデータがデータメモリ143をスルーしてW0レジスタ151に格納され、同時にM1レジスタ142に格納されたデータがデータメモリ143をスルーしてW1レジスタ152に格納される。
W0レジスタ151に格納されたデータが、物理アドレス“0110”に対応した拡張レジスタE6に書き込まれ、同時にW1レジスタ152に格納されたデータが、物理アドレス“0111”に対応した拡張レジスタE7に書き込まれる。
命令フェッチ部102が命令メモリ101から命令を読み出して、命令レジスタ103に格納する。
命令型判定部111は、命令レジスタ103に格納された命令を解読して、この命令が第1の命令フォーマットによる命令であることを出力する。第1のレジスタアドレス抽出部112は、ソースのデータアドレスとして、データレジスタのアドレス“00”とアドレスレジスタのアドレス”11”とを抽出する。レジスタアドレス変換部113は、データレジスタのアドレス“00”を4ビットのアドレス“1100”に、アドレスレジスタのアドレス“11”を4ビットのアドレス“1011”に変換する。
E0レジスタ131に格納されたデータが演算器133をスルーして、M0レジスタ141に格納され、E1レジスタ132に格納されたアドレスは、オペレーション解読部116からの制御信号によって“6”だけ減算処理され、その演算結果をデータメモリ143のアドレス入力部に出力する。
M0レジスタ141に格納されたデータが、演算器133の演算結果で得られたアドレス値のデータメモリ143に格納される。
オペレーションはない。
命令フェッチ部102が命令メモリ101から命令を読み出して、命令レジスタ103に格納する。
命令型判定部111は、命令レジスタ103に格納された命令を解読して、この命令が第2の命令フォーマットによる命令であることを出力する。第2のレジスタアドレス抽出部114は、ソースのデータアドレスとして”0000”を、格納先のアドレスとしてレジスタアドレス“0010”を抽出する。
E0レジスタ131に格納されたデータを入力とし、演算器133はオペレーション解読部116から供給される制御信号を元に、その上位ハーフワードと下位ハーフワードとを入れ換えたデータを生成し、その結果をM0レジスタ141に格納する。
M0レジスタ141に格納されたデータがデータメモリ143をスルーし、W0レジスタ151に格納される。
W0レジスタ151に格納されたデータが読み出され、このデータが、レジスタファイル120の第2のレジスタアドレス抽出部112が出力する格納先アドレス”0010”に格納される。
命令フェッチ部102が命令メモリ101から命令を読み出して、命令レジスタ103に格納する。
命令型判定部111は、命令レジスタ103に格納された命令を解読して、この命令が第2の命令フォーマットによる命令であることを出力する。第1のレジスタアドレス抽出部112は、ソースのデータアドレスとしてアドレスレジスタのアドレス”11”を抽出する。第2のレジスタアドレス抽出部114は、ソースのデータアドレスとして拡張レジスタのアドレス”0010”を抽出する。レジスタアドレス変換部113は、アドレスレジスタのアドレス“11”を4ビットのアドレス“1011”に 変換する。
E0レジスタ131に格納されたデータが演算器133をスルーして、M0レジスタ141に格納され、E1レジスタ132に格納されたアドレスは、オペレーション解読部116からの制御信号によって“4”だけ減算処理され、その演算結果をデータメモリ143のアドレス入力部に出力する。
M0レジスタ141に格納されたデータが、演算器133の演算結果で得られたアドレス値のデータメモリ143に格納される。
オペレーションはない。
命令フェッチ部102が命令メモリ101から命令を読み出して、命令レジスタ103に格納する。
命令型判定部111は、命令レジスタ103に格納された命令を解読して、この命令が第2の命令フォーマットによる命令であることを出力する。第2のレジスタアドレス抽出部114は、ソースのデータアドレスとして”0110”を、格納先のアドレスとしてレジスタアドレス“0001”を抽出する。
演算器133において、E0レジスタ131に格納されたデータの上位ハーフワードとE1レジスタ132に格納されたデータの上位ハーフワードとが抽出され、これ等の乗算が実行され、同時に、E0レジスタ131に格納されたデータの下位ハーフワードとE1レジスタ132に格納されたデータの下位ハーフワードとが抽出され、これ等の乗算が実行され、この2つの乗算結果とE1レジスタ132に格納されたデータとの加算が実行され、その加算結果がM0レジスタ141に格納される。
M0レジスタ141に格納されたデータがデータメモリ143をスルーし、W0レジスタ151に格納される。
W0レジスタ151に格納されたデータが読み出され、このデータが、レジスタファイル120の第2のレジスタアドレス抽出部114が出力する格納先アドレス”0001”に格納される。
命令フェッチ部102が命令メモリ101から命令を読み出して、命令レジスタ103に格納する。
命令型判定部111は、命令レジスタ103に格納された命令を解読して、この命令が第2の命令フォーマットによる命令であることを出力する。第2のレジスタアドレス抽出部114は、ソースのデータアドレスとして”0011”を、格納先のアドレスとしてレジスタアドレス“0011”を抽出する。
演算器133において、E0レジスタ131に格納されたデータが読み出され、“1”の減算が実行され、その結果がM0レジスタ141に格納される。
M0レジスタ141に格納されたデータがデータメモリ143をスルーし、W0レジスタ151に格納される。
W0レジスタ151に格納されたデータが読み出され、このデータが、レジスタファイル120の第2のレジスタアドレス抽出部114が出力する格納先アドレス”0011”に格納される。
命令フェッチ部102が命令メモリ101から命令を読み出して、命令レジスタ103に格納する。
命令型判定部111は、命令レジスタ103に格納された命令を解読して、この命令が第2の命令フォーマットによる命令であることを出力する。第2のレジスタアドレス抽出部114は、ソースのデータアドレスとして”0100”を、格納先のアドレスとしてレジスタアドレス“0110”を抽出する。
演算器133において、E0レジスタ131に格納されたデータが読み出され、このデータをオペレーション解読部116からの制御信号によってデータメモリ143のアドレス入力部に出力する。また、“4”の加算を実行し、その結果がM0レジスタ141に格納される。
M0レジスタ141に格納されたデータがデータメモリ143をスルーし、W0レジスタ151に格納される。また、オペレーション解読部116からの制御信号により、指定されるメモリアドレスのデータメモリ143からデータを読み出し、W0レジスタ151に格納する。
W0レジスタ151に格納されたデータが読み出され、このデータが、レジスタファイル120の第2のレジスタアドレス抽出部114が出力する格納先アドレス”0110”に格納される。
命令フェッチ部102が命令メモリ101から命令を読み出して、命令レジスタ103に格納する。
命令型判定部111は、命令レジスタ103に格納された命令を解読して、この命令が第2の命令フォーマットによる命令であることを出力する。第2のレジスタアドレス抽出部114は、ソースのデータアドレスとして”0101”を、格納先のアドレスとしてレジスタアドレス“0001”を抽出する。
演算器133において、E0レジスタ131に格納されたデータが読み出され、このデータが、オペレーション解読部116からの制御信号によってデータメモリ143のアドレス入力部に出力される。また、“4”の加算を実行し、その結果がM0レジスタ141に格納される。
M0レジスタ141に格納されたデータがデータメモリ143をスルーし、W0レジスタ151に格納される。また、オペレーション解読部116からの制御信号によって、指定されるメモリアドレスのデータメモリ143からデータを読み出し、このデータをW0レジスタ151に格納する。
W0レジスタ151に格納されたデータが読み出され、このデータは、レジスタファイル120の第2のレジスタアドレス抽出部114が出力する格納先アドレス”0001”に格納される。
命令フェッチ部102が命令メモリ101から命令を読み出して、命令レジスタ103に格納する。
命令型判定部111は、命令レジスタ103に格納された命令を解読して、この命令が第1の命令フォーマットによる命令であることを出力する。オペレーション解読部116はループ命令であることを解読し、その制御信号を生成する。
演算器133において、E0レジスタ131に格納されたデータが読み出され、オペレーション解読部116から出力される制御信号に基づいて、ループの飛び先アドレス値がM0レジスタ141に格納される。
M0レジスタ141に格納されたデータがデータメモリ143をスルーし、W0レジスタ151に格納される。
W0レジスタ151に格納されたデータが、レジスタファイル120内のプログラムカウンタ124に格納される。
命令フェッチ部102が命令メモリ101から命令を読み出して、命令レジスタ103に格納する。
命令型判定部111は、命令レジスタ103に格納された命令を解読して、この命令が第1の命令フォーマットによる命令であることを出力する。第1のレジスタアドレス抽出部112は、ソースのデータアドレスとしてデータレジスタのアドレス“00”とアドレスレジスタのアドレス”11”とを抽出する。レジスタアドレス変換部113は、データレジスタのアドレス“00”を4ビットのアドレス“1100”に、アドレスレジスタのアドレス“11”を4ビットのアドレス“1011”に各々変換する。
E0レジスタ131に格納されたデータが演算器133をスルーして、Mレジスタ141に格納され、E1レジスタ132に格納されたアドレスは、オペレーション解読部116からの制御信号によって“6”だけ減算処理され、その演算結果をデータメモリ143のアドレス入力部に出力する。
M0レジスタ141に格納されたデータが、演算器133の演算結果で得られたアドレス値のデータメモリ143に格納される。
オペレーションはない。
命令フェッチ部102が命令メモリ101から命令を読み出して、命令レジスタ103に格納する。
命令型判定部111は、命令レジスタ103に格納された命令を解読して、この命令が第2の命令フォーマットによる命令であることを出力する。第2のレジスタアドレス抽出部114は、ソースのデータアドレスとして”0000”を、格納先のアドレスとしてレジスタアドレス“0010”を抽出する。
演算器133は、E0レジスタ131に格納されたデータを入力とし、演算器133はオペレーション解読部116から供給される制御信号を元に、その上位ハーフワードと下位ハーフワードとを入れ換えたデータを生成し、その結果をM0レジスタ141に格納する。
M0レジスタ141に格納されたデータがデータメモリ143をスルーし、W0レジスタ151に格納される。
W0レジスタ151に格納されたデータが読み出され、このデータがレジスタファイル120の第2のレジスタアドレス抽出部114が出力する格納先アドレス”0010”に格納される。
命令フェッチ部102が命令メモリ101から命令を読み出して、命令レジスタ103に格納する。
命令型判定部111は、命令レジスタ103に格納された命令を解読して、この命令が第2の命令フォーマットによる命令であることを出力する。第1のレジスタアドレス抽出部112は、ソースのデータアドレスとしてアドレスレジスタのアドレス”11”を抽出する。第2のレジスタアドレス抽出部114は、ソースのデータアドレスとして拡張レジスタのアドレス”0010”を抽出する。レジスタアドレス変換部113は、アドレスレジスタのアドレス“11”を4ビットのアドレス“1011”に変換する。
E0レジスタ131に格納されたデータが演算器133をスルーして、M0レジスタ141に格納され、E1レジスタ132に格納されたアドレスは、オペレーション解読部116からの制御信号によって“4”だけ減算処理され、その演算結果をデータメモリ143のアドレス入力部に出力する。
M0レジスタ141に格納されたデータが、演算器133の演算結果で得られたアドレス値のデータメモリ143に格納される。
オペレーションはない。
命令フェッチ部102が命令メモリ101から命令を読み出して、命令レジスタ103に格納する。
命令型判定部111は、命令レジスタ103に格納された命令を解読して、この命令が第3の命令フォーマットによる命令であることを出力する。第2のレジスタアドレス抽出部114は、ソースのデータアドレスとして”0110”を、格納先のアドレスとしてレジスタアドレス“0001”を抽出する。また、第3のレジスタアドレス抽出部115は、ソース及び格納先のデータアドレスとして、”0011”を抽出する。
演算器133において、E0レジスタ131に格納されたデータの上位ハーフワードとE1レジスタ132に格納されたデータの上位ハーフワードとが抽出され、それ等の乗算が実行され、同時に、E0レジスタ131に格納されたデータの下位ハーフワードとE1レジスタ132に格納されたデータの下位ハーフワードとが抽出され、それ等の乗算が実行され、この2つの乗算結果と、E1レジスタ132に格納されたデータとの加算が実行され、その結果がM0レジスタ141に格納される。また、並行して、E2レジスタ134に格納されたデータから、“1”の減算を実行し、その減算結果をM1レジスタ142に格納する。
M0レジスタ141に格納されたデータがデータメモリ143をスルーし、W0レジスタ151に格納されると共に、M1レジスタ142に格納されたデータがデータメモリ143をスルーし、W1レジスタに格納される。
W0レジスタ151に格納されたデータが読み出され、このデータが、レジスタファイル120の第2のレジスタアドレス抽出部114が出力する格納先アドレス”0001”に格納され、これに並行して、W1レジスタ152に格納されたデータが読み出され、このデータが、レジスタファイル120の第3のレジスタアドレス抽出部115が出力する格納先アドレス”0011”に格納される。
命令フェッチ部102が命令メモリ101から命令を読み出して、命令レジスタ103に格納する。
命令型判定部111は、命令レジスタ103に格納された命令を解読して、この命令が第2の命令フォーマットによる命令であることを出力する。第2のレジスタアドレス抽出部114は、ソースのデータアドレスとして”0100”を、格納先のアドレスとしてレジスタアドレス“0110”を抽出する。
演算器133において、E0レジスタ131に格納されたデータが読み出され、このデータを、オペレーション解読部116からの制御信号によってデータメモリ143のアドレス入力部に出力する。また、“4”の加算を実行し、その結果がM0レジスタ141に格納される。
M0レジスタ141に格納されたデータがデータメモリ143をスルーし、W0レジスタ151に格納される。また、オペレーション解読部116からの制御信号によって、指定されるメモリアドレスのデータメモリ143からデータを読み出し、このデータをW0レジスタ151に格納する。
W0レジスタ151に格納されたデータが読み出され、レジスタファイル120の第2のレジスタアドレス抽出部114が出力する格納先アドレス”0110”に格納される。
命令フェッチ部102が命令メモリ101から命令を読み出して、命令レジスタ103に格納する。
命令型判定部111は、命令レジスタ103に格納された命令を解読して、この命令が第3の命令フォーマットによる命令であることを出力する。第2のレジスタアドレス抽出部114は、ソースのデータアドレスとして”0101”を、格納先のアドレスとしてレジスタアドレス“0001”を抽出する。
演算器133において、E0レジスタ131に格納されたデータが読み出され、このデータを、オペレーション解読部116からの制御信号によってデータメモリ143のアドレス入力部に出力する。また、“4”の加算を実行し、その結果がM0レジスタ141に格納される。
M0レジスタ141に格納されたデータがデータメモリ143をスルーし、W0レジスタ151に格納される。また、オペレーション解読部116からの制御信号によって、指定されるメモリアドレスのデータメモリ143からデータを読み出し、このデータをW0レジスタ151に格納する。
W0レジスタ151に格納されたデータが読み出され、このデータが、レジスタファイル120の第2のレジスタアドレス抽出部114が出力する格納先アドレス”0001”に格納される。
102 命令フェッチ部
103 命令レジスタ
110 命令解読器
111 命令型判定部(識別手段)
112 第1のレジスタアドレス抽出部
113 レジスタアドレス変換部
114 第2のレジスタアドレス抽出部
115 第3のレジスタアドレス抽出部
116 オペレーション解読部
117 第1のレジスタアドレスセレクタ
120 レジスタファイル(第2のレジスタファイル)
121 汎用レジスタ
122 スタックポインタ
123 Processor Status Word
124 プログラムカウンター
E0〜E7 拡張レジスタ
133、136 演算器
220 第1のレジスタファイル
Claims (29)
- 第1命令フォーマットで記述される命令、及び第2の命令フォーマットで記述される命令を実行するデータ処理装置であって、
前記第1の命令フォーマットは、所定の大きさのレジスタ指定領域を有し、
前記第2命令フォーマットは、前記第1命令フォーマットが有するレジスタ指定領域よりも大きいレジスタ指定領域を有し、
前記各命令を受け、この受けた命令自身から、この命令を記述する命令フォーマットが前記第1又は第2の命令フォーマットであることを識別する識別手段と、
所定個のレジスタを持つ第1レジスタファイルと、
前記第1レジスタファイルのレジスタ数よりも多い個数のレジスタを持つ第2レジスタファイルとを備え、
前記識別手段で識別された第1命令フォーマットで記述された命令を、前記第1レジスタファイルに保持されたデータを用いて実行し、前記識別手段で識別された第2命令フォーマットで記述された命令を、前記第2レジスタファイルに保持されたデータを用いて実行する
ことを特徴とするデータ処理装置。 - 前記第1及び第2の命令フォーマットは、各々、所定個数の命令フィールドを有し、
前記識別手段は、前記第1及び第2の命令フォーマットの所定番目の命令フィールドの内容に基づいて、受けた命令のフォーマットを識別する
ことを特徴とする請求項1記載のデータ処理装置。 - 前記第2の命令フォーマットが有する命令フィールドの個数は、前記第1の命令フォーマットが有する命令フィールドの個数よりも多い
ことを特徴とする請求項2記載のデータ処理装置。 - 前記識別手段での識別に供する所定番目の命令フィールドは、第1番目の命令フィールドである
ことを特徴とする請求項2記載のデータ処理装置。 - 前記識別手段での識別に供する所定番目の命令フィールドは、第1番目及び第2番目の命令フィールドである
ことを特徴とする請求項2記載のデータ処理装置。 - 第1及び第2命令フォーマットで記述される各命令は、可変長命令である
ことを特徴とする請求項2記載のデータ処理装置。 - 前記第1の命令フォーマットは、前記識別手段での識別に供する所定番目の命令フィールドにレジスタ指定領域を持ち、
前記第2の命令フォーマットは、前記識別手段での識別に供する所定番目の命令フィールドにレジスタ指定領域を持たない
ことを特徴とする請求項2記載のデータ処理装置。 - 前記第1の命令フォーマットでは、
第1の命令フィールドは、実行すべき命令の動作及び命令語長、又は命令語長のみを指定し、第2番目以後の命令フィールドは実行すべき命令の動作のみを指定する
ことを特徴とする請求項2記載のデータ処理装置。 - 前記第2の命令フォーマットでは、
第1番目の命令フィールドは命令語長のみを指定し、第2番目以後の命令フィールドは実行すべき命令の動作のみを指定する
ことを特徴とする請求項2記載のデータ処理装置。 - 前記第2のレジスタファイルは、前記第1のレジスタファイルが持つ所定個のレジスタを含んで構成される
ことを特徴とする請求項1又は2記載のデータ処理装置。 - 前記第1及び第2命令フォーマットでは、
前記第1のレジスタファイルのレジスタを指定するアドレスが相互に異なる
ことを特徴とする請求項1又は2記載のデータ処理装置。 - 別途、アドレス変換部を備え、このアドレス変換部は、
前記命令を受け、この命令が指定する第1レジスタファイルのレジスタのアドレスを、前記第2命令フォーマットで記述されるレジスタのアドレスに変換し、
前記識別手段は、識別された命令フォーマットが前記第1命令フォーマットであるとき、前記アドレス変換部により変換されたアドレスを前記第1のレジスタファイルに出力させる
ことを特徴とする請求項11記載のデータ処理装置。 - 前記第1の命令フォーマットは、
命令の動作と第1のレジスタファイルのレジスタのアドレスとを指定する命令フィールドを持つ
ことを特徴とする請求項2記載のデータ処理装置。 - 前記第2の命令フォーマットは、
命令の動作のみを指定する命令フィールドと、第1及び第2のレジスタファイルのレジスタのアドレスのみを指定する他の命令フィールドとを持つ
ことを特徴とする請求項2記載のデータ処理装置。 - 前記第1及び第2のレジスタファイルに保持されたデータを用いて、一連の命令が指示する演算を並列に実行する複数の演算器を備える
ことを特徴とする請求項1又は2記載のデータ処理装置。 - 第3命令フォーマットで記述される命令をも実行するデータ処理装置であって、
前記第3の命令フォーマットは、複数の操作を記述すると共に、前記第1命令フォーマットが有するレジスタ指定領域よりも大きいレジスタ指定領域を有し、このレジスタ指定領域に前記第2のレジスタファイルのレジスタが指定され、
前記識別手段は、前記命令を受け、この受けた命令自身から、この命令が第3の命令フォーマットで記述されることを識別する
ことを特徴とする請求項1又は2記載のデータ処理装置。 - 前記第3の命令フォーマットは、
複数の操作を実行する命令の動作を指定する命令フィールドと、
前記第2のレジスタファイルに対するアドレスを指定する他の命令フィールドとを持つ
ことを特徴とする請求項16記載のデータ処理装置。 - 前記第3の命令フォーマットで記述された命令が指示する複数の操作を、並列に実行する複数の演算器を備える
ことを特徴とする請求項16記載のデータ処理装置。 - 前記第3の命令フォーマットで記述される命令は、
前記第2の命令フォーマットで記述される命令のうち使用頻度の高い命令である
ことを特徴とする請求項16記載のデータ処理装置。 - 前記第3の命令フォーマットにおいて、並列に実行すべき操作の各々の動作を指定する動作指定フィールドの構成ビット数は、
前記第2の命令フォーマットの動作指定フィールドの構成ビット数よりも小さい
ことを特徴とする請求項16記載のデータ処理装置。 - 前記第2の命令フォーマットと前記第3の命令フォーマットとでは、
前記第2のレジスタファイルのレジスタを指定するアドレスが一致する
ことを特徴とする請求項16記載のデータ処理装置。 - 第1命令フォーマットで記述される命令、及び第2の命令フォーマットで記述される命令を実行するデータ処理装置であって、
所定個のレジスタを持ち、これ等レジスタのアドレスが前記第1及び第2命令フォーマット間で異なるレジスタファイルと、
前記第1命令フォーマットで記述される命令を受け、この命令が指示するレジスタのアドレスを前記第2命令フォーマットのアドレスに変換するアドレス変換部と、
前記各命令を受け、この受けた命令自身から、この命令を記述する命令フォーマットが前記第1又は第2の命令フォーマットであることを識別する識別手段とを備え、
前記識別手段の出力により、前記アドレス変換部の出力が制御される
ことを特徴とするデータ処理装置。 - 所定個のレジスタを持つ第1レジスタファイルを有し、
所定の大きさのレジスタ指定領域を有する第1命令フォーマットで記述される命令を受けて、この命令を前記第1レジスタファイルに保持されたデータを用いて実行するデータ処理装置において、
前記データ処理装置は、
前記第1レジスタファイルのレジスタ数よりも多い個数のレジスタを持つ第2レジスタファイルが追加増設され、
前記第1命令フォーマットが有するレジスタ指定領域よりも大きいレジスタ指定領域を有する第2命令フォーマットで記述される命令を受けて、この命令を前記第2レジスタファイルに保持されたデータを用いて実行する
ことを特徴とするデータ処理装置。 - 複数個の演算器を有し、
前記第2命令フォーマットによって指定される複数の演算を前記複数個の演算器を用いて並列に実行する
ことを特徴とする請求項23記載のデータ処理装置。 - 前記第2のレジスタファイルは、前記第1のレジスタファイルが持つ所定個のレジスタを含んで構成される
ことを特徴とする請求項24記載のデータ処理装置。 - 前記第1命令フォーマットで記述された命令を受け、この命令が指定する第1レジスタファイルのレジスタのアドレスを、前記第2命令フォーマットで記述されるレジスタのアドレスに変換するアドレス変換部を備える
ことを特徴とする請求項25記載のデータ処理装置。 - 各命令を記述する命令フォーマットが前記第1又は第2命令フォーマットであることを識別する識別手段を有し、
前記識別手段は、識別された命令フォーマットが前記第1命令フォーマットであるとき、前記アドレス変換部により変換されたアドレスを前記第1のレジスタファイルに出力させる
ことを特徴とする請求項26記載のデータ処理装置。 - 第1命令フォーマットで記述される命令セットを、前記第1命令フォーマットよりもビット数が大きい第2命令フォーマットで記述される命令セットに拡張する命令セット拡張方法であって、
前記第1の命令フォーマットは、所定個のレジスタを持つ第1レジスタファイルからレジスタを選択するための所定の大きさの第1レジスタ指定領域を有し、
前記第2の命令フォーマットは、前記第1レジスタファイルのレジスタ数よりも多い個数のレジスタを持つ第2レジスタファイルからレジスタを選択するためのレジスタ指定領域であって、前記第1レジスタ指定領域よりも大きい第2レジスタ指定領域を有し、
前記第1レジスタファイルは、前記第2レジスタファイルの一部である
ことを特徴とする命令セット拡張方法。 - 前記第2命令フォーマットは、複数の演算の並列操作を記述する
ことを特徴とする請求項28記載の命令セット拡張方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003290766A JP3901670B2 (ja) | 1998-03-11 | 2003-08-08 | データ処理装置 |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP5968098 | 1998-03-11 | ||
JP11558898 | 1998-04-24 | ||
JP2003290766A JP3901670B2 (ja) | 1998-03-11 | 2003-08-08 | データ処理装置 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP06223099A Division JP3472504B2 (ja) | 1998-03-11 | 1999-03-09 | 命令解読方法、命令解読装置及びデータ処理装置 |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2004005738A true JP2004005738A (ja) | 2004-01-08 |
JP2004005738A5 JP2004005738A5 (ja) | 2005-09-29 |
JP3901670B2 JP3901670B2 (ja) | 2007-04-04 |
Family
ID=30448907
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003290766A Expired - Lifetime JP3901670B2 (ja) | 1998-03-11 | 2003-08-08 | データ処理装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3901670B2 (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2013038307A1 (en) * | 2011-09-16 | 2013-03-21 | International Business Machines Corporation | Fine-grained instruction enablement at sub-function granularity |
US9395981B2 (en) | 2011-09-16 | 2016-07-19 | International Business Machines Corporation | Multi-addressable register files and format conversions associated therewith |
CN113157636A (zh) * | 2021-04-01 | 2021-07-23 | 西安邮电大学 | 协处理器、近数据处理装置和方法 |
-
2003
- 2003-08-08 JP JP2003290766A patent/JP3901670B2/ja not_active Expired - Lifetime
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2013038307A1 (en) * | 2011-09-16 | 2013-03-21 | International Business Machines Corporation | Fine-grained instruction enablement at sub-function granularity |
GB2509034A (en) * | 2011-09-16 | 2014-06-18 | Ibm | Fine-grained instruction enablement at sub-function granularity |
US9395981B2 (en) | 2011-09-16 | 2016-07-19 | International Business Machines Corporation | Multi-addressable register files and format conversions associated therewith |
US9411585B2 (en) | 2011-09-16 | 2016-08-09 | International Business Machines Corporation | Multi-addressable register files and format conversions associated therewith |
US9727337B2 (en) | 2011-09-16 | 2017-08-08 | International Business Machines Corporation | Fine-grained instruction enablement at sub-function granularity based on an indicated subrange of registers |
US9727336B2 (en) | 2011-09-16 | 2017-08-08 | International Business Machines Corporation | Fine-grained instruction enablement at sub-function granularity based on an indicated subrange of registers |
CN113157636A (zh) * | 2021-04-01 | 2021-07-23 | 西安邮电大学 | 协处理器、近数据处理装置和方法 |
CN113157636B (zh) * | 2021-04-01 | 2023-07-18 | 西安邮电大学 | 协处理器、近数据处理装置和方法 |
Also Published As
Publication number | Publication date |
---|---|
JP3901670B2 (ja) | 2007-04-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7664934B2 (en) | Data processor decoding instruction formats using operand data | |
US5867726A (en) | Microcomputer | |
US6490673B1 (en) | Processor, compiling apparatus, and compile program recorded on a recording medium | |
US7676653B2 (en) | Compact instruction set encoding | |
EP1734440B1 (en) | Processor for executing highly efficient VLIW instructions | |
JP2816248B2 (ja) | データプロセッサ | |
US7487338B2 (en) | Data processor for modifying and executing operation of instruction code according to the indication of other instruction code | |
JPH0926878A (ja) | データ処理装置 | |
KR0167005B1 (ko) | 중앙처리장치 | |
JPH04172533A (ja) | 電子計算機 | |
US4945511A (en) | Improved pipelined processor with two stage decoder for exchanging register values for similar operand instructions | |
JP3781519B2 (ja) | プロセッサの命令制御機構 | |
JP2002215387A (ja) | 命令トランスレータを備えたデータ処理装置およびメモリインタフェース装置 | |
US7047396B1 (en) | Fixed length memory to memory arithmetic and architecture for a communications embedded processor system | |
US6209080B1 (en) | Constant reconstruction processor that supports reductions in code size and processing time | |
US6925548B2 (en) | Data processor assigning the same operation code to multiple operations | |
JP3901670B2 (ja) | データ処理装置 | |
JP3472504B2 (ja) | 命令解読方法、命令解読装置及びデータ処理装置 | |
JP3727395B2 (ja) | マイクロコンピュータ | |
JP2004005738A5 (ja) | ||
JP3670801B2 (ja) | プロセッサ | |
JPH06149563A (ja) | データ処理装置 | |
JP2007156557A (ja) | 並列プロセッサ | |
JP2000099329A (ja) | プロセッサ |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050715 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20050715 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20060411 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060609 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20060704 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20060829 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060928 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20061107 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20061212 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20061226 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110112 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110112 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120112 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130112 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130112 Year of fee payment: 6 |
|
S533 | Written request for registration of change of name |
Free format text: JAPANESE INTERMEDIATE CODE: R313533 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313111 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
EXPY | Cancellation because of completion of term |