JP2888206B2 - データ処理装置 - Google Patents

データ処理装置

Info

Publication number
JP2888206B2
JP2888206B2 JP8249161A JP24916196A JP2888206B2 JP 2888206 B2 JP2888206 B2 JP 2888206B2 JP 8249161 A JP8249161 A JP 8249161A JP 24916196 A JP24916196 A JP 24916196A JP 2888206 B2 JP2888206 B2 JP 2888206B2
Authority
JP
Japan
Prior art keywords
instruction
instruction queue
immediate
queue
data
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 - Fee Related
Application number
JP8249161A
Other languages
English (en)
Other versions
JPH1078868A (ja
Inventor
一人 大澤
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.)
NEC Corp
Original Assignee
Nippon Electric Co 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 Nippon Electric Co Ltd filed Critical Nippon Electric Co Ltd
Priority to JP8249161A priority Critical patent/JP2888206B2/ja
Priority to US08/919,776 priority patent/US5925122A/en
Publication of JPH1078868A publication Critical patent/JPH1078868A/ja
Application granted granted Critical
Publication of JP2888206B2 publication Critical patent/JP2888206B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related 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, look ahead
    • G06F9/3802Instruction prefetching
    • G06F9/3814Implementation provisions of instruction buffers, e.g. prefetch buffer; banks
    • 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/30145Instruction analysis, e.g. decoding, instruction word fields
    • G06F9/30149Instruction analysis, e.g. decoding, instruction word fields of variable length instructions
    • 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/30145Instruction analysis, e.g. decoding, instruction word fields
    • G06F9/3016Decoding the operand specifier, e.g. specifier format
    • G06F9/30167Decoding the operand specifier, e.g. specifier format of immediate specifier, e.g. constants

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、データ処理装置に
関し、特に複数の異なる長さの命令を処理するデータ処
理装置の命令キューの構成方法に関する。
【0002】
【従来の技術】図4は、従来のデータ処理装置の命令キ
ューから即値生成器間のレイアウトを示すブロック図で
ある。命令キュー490の第1の命令キュー41は、第
1のセレク夕411から送られた命令を読み込み、当該
命令を第2のセレク夕412へ送る。第2の命令キュー
42は、第2のセレクタ412から送られた命令を読み
込み、当該命令を第3のセレクタ413とコントロール
ロジック49へ送り、また即値データを即値生成器47
の下位ビット及び第4のセレクタ417へ送る。第3の
命令キュー43は、第3のセレクタ413から送られた
命令を読み込み、命令をコントロールロジック49へ送
り、また即値データを即値生成器47の上位ビットある
いは第4のセレクタ417へと送る。
【0003】第1のセレクタ411は、メモリ40もし
くは第1の命令キュー41から送られた命令を第1の命
令キュー41へと送る。第2のセレクタ412は、メモ
リ40もしくは第1の命令キュー41から来た命令を第
2の命令キュー42へと送る。第3のセレクタ413
は、メモリ40、第1の命令キュー41もしくは第2の
命令キュー42の何れかから送られた命令を第3の命令
キュー43へと送る。
【0004】第4のセレク夕417は、第2の命令キュ
ー42から送られた即値データもしくは第3の命令キュ
ー43から送られた即値データを即値生成器47の下位
ビットへ送る。即値生成器47は、受け取った即値デー
タを演算器48の演算単位のビット幅に符号拡張するこ
とにより演算器48に送る。演算器48は、演算を行
い、その演算結果を出力する。コントロールロジック4
9は、第2の命令キュー42及び第3の命令キュー43
から命令コードを受け取り、第1のセレクタ411、第
2のセレクタ412、第3のセレクタ413、第4のセ
レクタ417の出力を制御するための信号を出力する。
【0005】次に、上記従来のデータ処理装置の動作を
説明する。ここで、このデータ処理装置が、図5のよう
な16ビットと32ビットという異なる長さの命令を処
理することができ、図4の演算器48の演算単位が32
ビットであるとする。また、図6のメモリマップに示す
ように、図4のメモリ40に命令が格納されているとす
る。図6中のA、B、C、D、X、Yはそれぞれ16ビ
ット毎に区切られた命令であり、1番地は8ビットで構
成されているとする。
【0006】また、偶数番地とは命令の先頭番地が4の
倍数であること、奇数番地とは命令の先頭番地が4の倍
数でないことを表す。命令キュー490は実行する命令
の長さにより、[状態0]、[状態1]、[状態2]、
[状態3]の4つの状態を持つ。[状態0]を図7、
[状態1]を図8、[状態2]を図9、[状態3]を図
10にそれぞれ示す。それぞれの状態には、図4の第1
のセレクタ411、第2のセレクタ412、第3のセレ
クタ413をコントロールロジック49が制御すること
で切り替えられる。
【0007】図6のメモリマップの例に従うと、最初は
偶数番地なので、命令キューは[状態0]となる。図7
に示すように、第3の命令キュー43はメモリ40の下
位16ビットを読み込む。第2の命令キュー42はメモ
リ40の上位16ビットを読み込む。第1の命令キュー
41はメモリ40の上位16ビットを読み込む。コント
ロールロジック49は第2の命令キュー42と第3の命
令キュー43に入っている命令を読み込み、実行すべき
命令がどのような命令かを判別し、次に読み込む命令の
入っているメモリの番地を決定する。実行する命令が1
6ビット長のときは、[状態2]へ遷移し、32ビット
長のときは、[状態0]へ遷移する。
【0008】ここで、16ビット命令を実行して[状態
2]へ遷移したとする。図9に示すように、第3の命令
キュー43は第1の命令キュー41に入っていた命令を
読み込む。第2の命令キュー42はメモリ40の下位1
6ビットを読み込む。第1の命令キュー41はメモリ4
0の上位16ビットを読み込む。コントロールロジック
49は第2の命令キュー42と第3の命令キュー43に
入っている命令を読み込み、実行すべき命令がどのよう
な命令かを判別し、次に読み込む命令の入っているメモ
リの番地を決定する。実行する命令が16ビット長のと
きは、[状態3]へ遷移し、32ビット長のときは、
[状態2]へ遷移する。
【0009】ここで、16ビット命令を実行して状態3
へ遷移したとする。図10に示すように、第3の命令キ
ュー43は第2の命令キュー42に入っていた命令を読
み込む。第2の命令キュー42は第1の命令キュー41
に入っていた命令を読み込む。第1の命令キュー41は
第1の命令キュー41に入っていた命令を読み込む。コ
ントロールロジック49は第2の命令キュー42と第3
の命令キュー43に入っている命令を読み込み、実行す
べき命令がどのような命令かを判別し、次に読み込む命
令の入っているメモリの番地を決定する。実行する命令
が16ビット長のときは、図9の[状態2]へ遷移し、
32ビット長のときは、図7の[状態0]へ遷移する。
【0010】この後、ジャンプ命令があり、奇数番地に
分岐したとする。図8のように、第3の命令キュー43
はメモリ40の上位16ビットを読み込む。第2の命令
キュー42はメモリ40の下位ビットを読み込む。第1
の命令キュー41はメモリ40の上位ビットを読み込
む。コントロールロジック49は第2の命令キュー42
と第3の命令キュー43に入っている命令を読み込み、
実行すべき命令がどのような命令かを判別し、次に読み
込む命令の入っているメモリの番地を決定する。実行す
る命令が16ビット長のときは、[状態0]へ遷移し、
32ビット長のときは、命令がコントロールロジック4
9に正しく格納されないため、命令を実行せずに[状態
2]へ遷移する。
【0011】上記のように命令キューを用いることで、
図8のように奇数番地に分岐した後32ビット長命令を
実行しようとする場合を除いて、異なる長さの命令を1
サイクル毎に効率よく実行することができる。
【0012】即値生成器47は、図5のように命令形式
の即値部分を32ビット即値データに符号拡張する。よ
り具体的には、32ビット即値データの符号拡張部分は
元の即値の符号ビットと同じ値で埋められる。図4のよ
うに、16ビット命令長のときは第3の命令キュー43
に入っている命令の即値部分を第4のセレクタ417を
通して即値生成器47の下位ビットに送り、符号拡張し
た即値データを生成する。32ビット命令長のときは、
第2の命令キュー42に入っている命令の即値部分を即
値生成器47の下位ビットに、第3の命令キュー43に
入っている命令の即値部分を即値生成器47の上位ビッ
トに送り、符号拡張した即値データを生成する。演算器
48は即値生成器47から送られた符号拡張された即値
データの演算を行い、結果を出力する。
【0013】
【発明が解決しようとする課題】上述した従来のデータ
処理装置においては、命令キューから即値演算器へ延び
る配線長を短くすることができないため、即値データの
伝達に時間がかかり、高速処理が行えないという問題点
があった。配線長を短くすることができない理由は、命
令の長さによって即値データの位置が異なるため、符号
拡張する際に命令キューから即値生成器へ即値データを
送るには、命令キューから即値生成器の上位ビットへつ
ながる配線と命令キューから即値生成器の下位ビットへ
つながる配線が必要となるためである。従って、命令キ
ューをどのように配置しても図4に示すように即値生成
器のビット並び方向に水平に延びる配線を設けなければ
ならず、この水平方向の距離分だけ配線長が長くなる。
【0014】また、電子回路の配線を行う際には、隣接
配線間に、製造上の制限から生じる最小ピッチ、又は隣
接配線に信号変化の影響が及ばないようにするための最
小距離を確保する必要があるため、命令キューから即値
生成器へ至る配線に、上述の即値生成器のビット並び方
向に水平な配線の成分があると、命令キューと即値生成
器の間の距離が上記水平方向の配線の束により制限され
るため、どうしても配線長が長くなる。
【0015】本発明の目的は、即値生成器のビット並び
方向に水平な配線を設ける必要性をなくすことにより、
即値データが即値生成器のビット並び方向に水平に延び
る配線部分を通過するために生じる即値データの伝達遅
延時間をなくし、データ処理の高速化を実現するデータ
処理装置を提供することにある。
【0016】
【課題を解決するための手段】上記目的を達成する本発
明は、命令キューと、命令キュー内の命令の即値データ
を入力して命令の即値データのビット幅以上のデータを
生成する即値生成回路を少なくとも備えるデータ処理装
置において、前記即値生成回路の上位ビットと下位ビッ
トに対応して同一の命令を格納する複数の命令キューを
二重化して設けたことを特徴とする。
【0017】請求項2の本発明のデータ処理装置は、同
じ命令を格納する第1の命令キューと第2の命令キュー
を備え、前記第1の命令キュー内の命令の即値データを
前記即値生成回路の上位ビットへ入力し、前記第2の命
令キュー内の命令の即値データを前記即値生成回路の下
位ビットへ入力することを特徴とする。
【0018】請求項3の本発明は、命令キューと、命令
キュー内の命令の即値データを入力して命令の即値デー
タのビット幅以上のデータを生成する即値生成回路を少
なくとも備えるデータ処理装置において、複数の命令キ
ューを有する第1の命令キュー回路と、前記第1の命令
キュー回路の命令キューと対応して同一の命令を格納す
る複数の命令キューを有する第2の命令キュー回路を備
え、前記第1の命令キュー回路の命令キュー内の命令の
即値データを前記即値生成回路の上位ビットへ入力し、
前記第2の命令キュー回路の命令キュー内の命令の即値
データを前記即値生成回路の下位ビットへ入力すること
を特徴とする。
【0019】請求項4の本発明のデータ処理装置は、前
記第1の命令キュー回路と前記第2の命令キュー回路
を、前記即値生成回路の上位ビット及び下位ビット位置
に対応させて並べて配置したことを特徴とする。
【0020】
【発明の実施の形態】次に本発明の実施の形態について
図面を参照して詳細に説明する。図1は本発明の第1の
実施の形態によるデータ処理装置の命令キューから即値
生成器間のレイアウトを示すブロック図である。
【0021】図1を参照すると、本実施の形態によるデ
ータ処理装置は、メモリ10、第1の命令キュー11と
第2の命令キュー12と第3の命令キュー13及び第1
のセレクタ111と第2のセレクタ112と第3のセレ
クタ113からなる命令キュー100、第4の命令キュ
ー14と第5の命令キュー15と第6の命令キュー16
及び第4のセレクタ114と第5のセレクタ115と第
6のセレクタ116からなる命令キュー110、コント
ロールロジック19、即値生成器17、演算器18を備
える。このデータ処理装置は、命令キュー100と命令
キュー110を二重化して設け、かつ命令キュー100
と命令キュー110をそれぞれ即値生成器17の上位ビ
ット及び下位ビット位置に対応させて配置したレイアウ
ト構成としている。
【0022】命令キュー100の第1の命令キュー11
は、第1のセレクタ111から送られる命令を読み込
み、命令を第2のセレクタ112へ送る。第2の命令キ
ュー12は、第2のセレクタ112から送られる命令を
読み込み、命令を第3のセレク夕113とコントロール
ロジック19へ送る。第3の命令キュー13は、第3の
セレク夕113から送られる命令を読み込み、命令をコ
ントロールロジック19へ、また即値データを即値生成
器17の上位ビットへ送る。
【0023】命令キュー110の第4の命令キュー14
は、第4のセレクタ114から送られる命令を読み込
み、命令を第5のセレクタ115へ送る。第5の命令キ
ュー15は、第5のセレクタ115から送られる命令を
読み込み、命令を第6のセレクタ116へ、また即値デ
ータを即値生成器17の下位ビットへ送る。第6の命令
キュー16は、第6のセレクタ116から送られる命令
を読み込み、即値データを第7のセレクタ117を通し
て即値生成器17の下位ビットへ送る。
【0024】第1のセレクタ111は、メモリ10もし
くは第1の命令キュー11から送られた命令を第1の命
令キュー11へと送る。第2のセレクタ112は、メモ
リ10もしくは第1の命令キュー11から送られた命令
を第2の命令キュー12へと送る。第3のセレクタ11
3は、メモリ10、第1の命令キュー11もしくは第2
の命令キュー12から送られた命令を第3の命令キュー
13へと送る。
【0025】第4のセレク夕114は、メモリ10もし
くは第4の命令キュー14から送られた命令を第4の命
令キュー14へと送る。第5のセレクタ115は、メモ
リ10もしくは第4の命令キュー14から送られた命令
を第5の命令キュー15へと送る。第6のセレクタ11
6は、メモリ10、第4の命令キュー14もしくは第5
の命令キュー15から送られた命令を第6の命令キュー
16へと送る。第7のセレクタ117は、第5の命令キ
ュー15から送られた即値データもしくは第6の命令キ
ュー16から送られた即値データを、即値生成器17の
下位ビットへ送る。
【0026】即値生成器17は、受け取った即値データ
を演算器18の演算単位のビット幅に符号拡張して演算
器18に送る。演算器18は、即値生成器17から送ら
れた即値データに基づいて演算を行い演算器を出力す
る。コントロールロジック19は、第2の命令キュー1
2及び第3の命令キュー13から命令コードを受け取
り、第1のセレクタ111、第2のセレクタ112、第
3のセレクタ113、第4のセレクタ114、第5のセ
レク夕115、第6のセレクタ116、第7のセレクタ
117の出力を制御する信号を出力する。
【0027】次に、図1に示すデータ処理装置の動作に
ついて、図を参照して説明する。例えば、このデータ処
理装置は、図5に示すような16ビットと32ビットの
異なる長さの命令を処理することができ、図1の演算器
18の演算単位が32ビットであるとする。前述した図
6のメモリマップに示すように、メモリ10に16ビッ
ト毎に区切られた命令A〜Yが格納されている。メモリ
10の1番地は8ビットで構成され、偶数番地とは命令
の先頭番地が4の倍数であることを意味し、奇数番地と
は命令の先頭番地が4の倍数でないことを意味する。
【0028】命令キュー100は実行する命令の長さに
より図7の[状態0]、図8の[状態1]、図9の[状
態2]、図10の[状態3]の4つの状態を持つ。それ
ぞれの状態には、図1の第1のセレクタ111、第2の
セレクタ112、第3のセレクタ113によって切り替
えられる。
【0029】図6のメモリマッブの例に従うと、最初は
偶数番地なので、命令キューは[状態0]となる。この
状態では、図7のように第3の命令キュー13はメモリ
10の下位16ビットを読み込み、第2の命令キュー1
2はメモリ10の上位16ビットを読み込む。第1の命
令キュー11はメモリ10の上位16ビットを読み込
む。コントロールロジック19は、第2の命令キュー1
2と第3の命令キュー13に入っている命令を読み込
み、実行すべき命令がどのような命令かを判別し、次に
読み込む命令の入っているメモリの番地を決定する。
【0030】実行する命令が16ビット長のときは、
[状態2]へ遷移し、32ビット長のときは、[状態
0]へ遷移する。
【0031】今、16ビット命令を実行して[状態2]
へ遷移したとする。図9のように、第3の命令キュー1
3は、第1の命令キュー11に入っていた命令を読み込
む。第2の命令キュー12は、メモリ10の下位16ビ
ットを読み込む。第1の命令キュー11は、メモリ10
の上位16ビットを読み込む。コントロールロジック1
9は、第2の命令キュー12と第3の命令キュー13に
入っている命令を読み込み、実行すべき命令がどのよう
な命令かを判別し、次に読み込む命令の入っているメモ
リ10の番地を決定する。
【0032】実行する命令が16ビット長のときは、
[状態3]へ遷移する。32ビット長のときは、[状態
2]へ遷移する。
【0033】ここで、16ビット命令を実行して[状態
3]へ遷移したとする。図10のように、第3の命令キ
ュー13は第2の命令キュー12に入っていた命令を読
み込む。第2の命令キュー12は第1の命令キュー11
に入っていた命令を読み込む。そして、第1の命令キュ
ー11は第1の命令キュー11に入っていた命令を読み
込む。コントロールロジック19は、第2の命令キュー
12と第3の命令キュー13に入っている命令を読み込
み、実行すべき命令がどのような命令か判別し、次に読
み込む命令の入っているメモリ10の番地を決定する。
【0034】実行する命令が16ビット長のときは、
[状態2]へ遷移する。32ビット長のときは、[状態
0]へ遷移する。
【0035】この後、ジャンプ命令があり奇数番地に分
岐した場合、図8のように、第3の命令キュー13はメ
モリ10の上位16ビットを読み込む。第2の命令キュ
ー12はメモリ10の下位ビットを読み込む。第1の命
令キュー11はメモリ10の上位ビットを読み込む。そ
して、コントロールロジック19は、第2の命令キュー
12と第3の命令キュー13に入っている命令を読み込
み、実行すべき命令がどのような命令かを判別し、次に
読み込む命令の入っているメモリ10の番地を決定す
る。
【0036】実行する命令が16ビット長のときは、
[状態0]へ遷移する。32ビット長のときは、命令が
コントロールロジック19に正しく格納されないため、
命令を実行せずに[状態2]へ遷移する。上記のように
命令キューを用いることで、図8のように奇数番地に分
岐した後32ビット長命令を実行しようとする場合を除
いて、異なる長さの命令を1サイクル毎に効率よく実行
することができる。
【0037】このデータ処理装置の第4の命令キュー1
4と第1の命令キュー11、第5の命令キュー15と第
2の命令キュー12、第6の命令キュー16と第3の命
令キュー13、第4のセレクタ114と第1のセレクタ
111、第5のセレクタ115と第2のセレクタ11
2、第6のセレクタ116と第3のセレクタ113はそ
れぞれ対応しており、常に同じ命令が入るようにコント
ロールロジック19によって制御される。
【0038】即値生成器17は、図5のように命令形式
の即値部分を32ビット即値データに符号拡張する。よ
り具体的には、32ビット即値データの符号拡張部分は
元の即値の符号ビットと同じ値で埋められる。図1のよ
うに、16ビット命令長のときは第6の命令キュー16
に入っている命令の即値部分を第7のセレクタ117を
通して即値生成器17の下位ビットに送り、符号拡張し
た即値データを生成する。32ビット命令長のときは第
5の命令キュー15に入っている命令の即値部分を即値
生成器17の下位ビットに、第3の命令キュー13に入
っている命令の即値部分を即値生成器17の上位ビット
に送り、符号拡張した即値データを生成する。演算器1
8は即値生成器17から送られる符号拡張された即値デ
ータの演算を行うことにより結果を出力する。
【0039】本発明の第1の実施の形態によるデータ処
理装置では、即値生成器17の上位ビット用、下位ビッ
ト用にそれぞれ個別の命令キューを二重化して設けたの
で、従来必要だった即値生成器のビット並び方向に水平
な配線を設ける必要性がなくなる。このため、即値デー
タが即値生成器のビット並び方向に水平に延びる配線部
分を通過するために生じる即値データの伝達遅延時間を
なくすことが可能となり、データ処理の高速化が実現で
きる。
【0040】また、従来必要であった即値生成器のビッ
ト並び方向に水平な配線を設ける必要がなくなること
で、即値生成器のビット並び方向に水平な配線のための
隣接配線間距離を確保する必要がなくなる分、命令キュ
ーと即値生成器間の距離を、ひいては命令キューと即値
生成器間の配線長を短くすることができ、より一層のデ
ータ処理の高速化を図ることができる。
【0041】次に、本発明の第2の実施の形態について
図2及び図3を参照して説明する。この実施の形態によ
るデータ処理装置は、図3に示すような32ビットと6
4ビットの命令形式を持つ。図2に第2の実施の形態に
よるデータ処理装置の命令キューから即値生成器間のレ
イアウトを示す。図2を参照すると、データ処理装置
は、メモリ20、第1の命令キュー21と第2の命令キ
ュー22と第3の命令キュー23及び第1のセレクタ2
11と第2のセレクタ212と第3のセレクタ213か
らなる命令キュー200、第4の命令キュー24と第5
の命令キュー25と第6の命令キュー26及び第4のセ
レクタ214と第5のセレクタ215と第6のセレクタ
216からなる命令キュー210、コントロールロジッ
ク29、即値生成器27、演算器28を備える。このデ
ータ処理装置は、図1に示すデータ処理装置と同様、命
令キュー200と命令キュー210を二重化して設け、
かつ命令キュー200と命令キュー210をそれぞれ即
値生成器27の上位ビット及び下位ビット位置に対応さ
せて配置したレイアウト構成としている。
【0042】この第2の実施の形態によるデータ処理装
置は、図3に示すような32ビットと64ビットの命令
形式を持ち、即値生成器27が出力する即値データが6
4ビットであり、かつそれに伴い各配線のビット幅が第
1の実施の形態の配線のビット幅の2倍となっている点
で第1の実施の形態と相違する。その他、基本的なレイ
アウト及び動作は第1の実施の形態と同じである。
【0043】この第2の実施の形態は、第1の実施の形
態で得られる効果に加えて、値の大きい即値をも扱うこ
とができるという効果も有する。以上好ましい実施の形
態によって本発明を説明したが、本発明は必ずしも上記
実施の形態に限定されるものではない。
【0044】
【発明の効果】以上説明したように本発明のデータ処理
装置によれば、即値生成器の上位ビット用と下位ビット
用にそれぞれ命令キューを二重化して設けた構成とした
ので、従来必要だった即値生成器のビット並び方向に水
平な配線を設ける必要性がなくなり、この結果、即値デ
ータが即値生成器のビット並び方向に水平に延びる配線
部分を通過するために生じる即値データの伝達遅延時間
をなくすことが可能となり、データ処理の高速化が実現
できる。
【0045】また、従来のデータ処理装置で必要であっ
た即値生成器のビット並び方向に水平な配線を設ける必
要がなくなることで、即値生成器のビット並び方向に水
平な配線のための隣接配線間距離を確保する必要がなく
なる分、命令キューと即値生成器間の距離を、ひいては
命令キューと即値生成器間の配線長を短くすることがで
き、より一層のデータ処理の高速化を図ることができ
る。
【図面の簡単な説明】
【図1】 本発明による第1の実施の形態によるデータ
処理装置のレイアウトを示すブロック図である。
【図2】 本発明による第2の実施の形態によるデータ
処理装置のレイアウトを示すブロック図である。
【図3】 本発明による第2の実施の形態によるデータ
処理装置における命令形式の例を示す図である。
【図4】 従来のデータ処理装置のレイアウトを示すブ
ロック図である。
【図5】 図1に示す本発明及び図4の従来のデータ処
理装置における命令形式の例を示す図である。
【図6】 データ処理装置のメモリマップを示す図であ
る。
【図7】 実行する命令長によって遷移する命令キュー
の状態例を示す図である。
【図8】 実行する命令長によって遷移する命令キュー
の状態例を示す図である。
【図9】 実行する命令長によって遷移する命令キュー
の状態例を示す図である。
【図10】 実行する命令長によって遷移する命令キュ
ーの状態例を示す図である。
【符号の説明】
10,20 メモリ 11,21 第1の命令キュー 12,22 第2の命令キュー 13,23 第3の命令キュー 14,24 第4の命令キュー 15,25 第5の命令キュー 16,26 第6の命令キュー 17,27 即値生成器 18,28 演算器 19,29 コントロールロジック 111,211 第1のセレクタ 112,212 第2のセレクタ 113,213 第3のセレクタ 114,214 第4のセレクタ 115,215 第5のセレクタ 116,216 第6のセレクタ 117,217 第7のセレクタ 100,110 命令キュー 200,210 命令キュー

Claims (4)

    (57)【特許請求の範囲】
  1. 【請求項1】 命令キューと、命令キュー内の命令の即
    値データを入力して命令の即値データのビット幅以上の
    データを生成する即値生成回路を少なくとも備えるデー
    タ処理装置において、 前記即値生成回路の上位ビットと下位ビットに対応して
    同一の命令を格納する複数の命令キューを二重化して設
    けたことを特徴とするデータ処理装置。
  2. 【請求項2】 同じ命令を格納する第1の命令キューと
    第2の命令キューを備え、 前記第1の命令キュー内の命令の即値データを前記即値
    生成回路の上位ビットへ入力し、前記第2の命令キュー
    内の命令の即値データを前記即値生成回路の下位ビット
    へ入力することを特徴とする請求項1に記載のデータ処
    理装置。
  3. 【請求項3】 命令キューと、命令キュー内の命令の即
    値データを入力して命令の即値データのビット幅以上の
    データを生成する即値生成回路を少なくとも備えるデー
    タ処理装置において、 複数の命令キューを有する第1の命令キュー回路と、前
    記第1の命令キュー回路の命令キューと対応して同一の
    命令を格納する複数の命令キューを有する第2の命令キ
    ュー回路を備え、 前記第1の命令キュー回路の命令キュー内の命令の即値
    データを前記即値生成回路の上位ビットへ入力し、前記
    第2の命令キュー回路の命令キュー内の命令の即値デー
    タを前記即値生成回路の下位ビットへ入力することを特
    徴とするデータ処理装置。
  4. 【請求項4】 前記第1の命令キュー回路と前記第2の
    命令キュー回路を、前記即値生成回路の上位ビット及び
    下位ビット位置に対応させて並べて配置したことを特徴
    とする請求項3に記載のデータ処理装置。
JP8249161A 1996-08-30 1996-08-30 データ処理装置 Expired - Fee Related JP2888206B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP8249161A JP2888206B2 (ja) 1996-08-30 1996-08-30 データ処理装置
US08/919,776 US5925122A (en) 1996-08-30 1997-08-29 Data processing unit which pre-fetches instructions of different lengths to conduct processing

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP8249161A JP2888206B2 (ja) 1996-08-30 1996-08-30 データ処理装置

Publications (2)

Publication Number Publication Date
JPH1078868A JPH1078868A (ja) 1998-03-24
JP2888206B2 true JP2888206B2 (ja) 1999-05-10

Family

ID=17188819

Family Applications (1)

Application Number Title Priority Date Filing Date
JP8249161A Expired - Fee Related JP2888206B2 (ja) 1996-08-30 1996-08-30 データ処理装置

Country Status (2)

Country Link
US (1) US5925122A (ja)
JP (1) JP2888206B2 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1050885B1 (en) * 1999-05-03 2005-02-02 STMicroelectronics S.A. A multiport storage array
US9141391B2 (en) 2011-05-26 2015-09-22 Freescale Semiconductor, Inc. Data processing system with latency tolerance execution
US8904150B2 (en) * 2011-05-26 2014-12-02 Freescale Semiconductor, Inc. Microprocessor systems and methods for handling instructions with multiple dependencies
CN114116005B (zh) * 2021-11-29 2022-12-23 海飞科(南京)信息技术有限公司 基于aigpu架构的立即数数据存储方法

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5373461A (en) * 1993-01-04 1994-12-13 Motorola, Inc. Data processor a method and apparatus for performing postnormalization in a floating-point execution unit
US5671170A (en) * 1993-05-05 1997-09-23 Hewlett-Packard Company Method and apparatus for correctly rounding results of division and square root computations
WO1995031767A1 (en) * 1994-05-11 1995-11-23 Vlsi Technology, Inc. Floating-point processor with apparent-precision based selection of execution-precision
JP3583474B2 (ja) * 1994-06-29 2004-11-04 株式会社ルネサステクノロジ 乗算装置
US5523961A (en) * 1994-10-28 1996-06-04 Cyrix Corporation Converting biased exponents from single/double precision to extended precision without requiring an adder
US5764959A (en) * 1995-12-20 1998-06-09 Intel Corporation Adaptive 128-bit floating point load and store instructions for quad-precision compatibility

Also Published As

Publication number Publication date
US5925122A (en) 1999-07-20
JPH1078868A (ja) 1998-03-24

Similar Documents

Publication Publication Date Title
KR0125623B1 (ko) 데이타 프로세서 및 데이타 처리방법
EP0138451B1 (en) Vector data processing system for indirect address instructions
US5418915A (en) Arithmetic unit for SIMD type parallel computer
KR20030064239A (ko) 화상을 처리하는 장치 및 방법과 이 장치에 이용되는컴파일러
US5651123A (en) Program execution control device having addressability in accordance with M series pseudo-random number sequence
US4759021A (en) Test pattern generator
JP3237858B2 (ja) 演算装置
JP2888206B2 (ja) データ処理装置
JP2552784B2 (ja) 並列データ処理制御方式
JP3119618B2 (ja) データ処理装置
JP3989397B2 (ja) 集積回路装置およびその装置に対するデータ設定装置
JP4134371B2 (ja) 入出力バスブリッジ装置
JP2538388B2 (ja) パタ―ン変換装置
JP2007323491A (ja) ダイレクトメモリアクセス制御装置および制御方法
JPH07191955A (ja) データ駆動型情報処理装置
JP2001092658A (ja) データ処理回路及びデータ処理装置
JP2001202351A (ja) Simd型プロセッサ
JPH1185506A (ja) 複数条件コード処理機能を有するデータ処理装置
JPH0452760A (ja) ベクトル処理装置
JPH11110212A (ja) データ処理装置
WO2019059153A1 (ja) プロセッサエレメント、プログラマブルデバイス及びプロセッサエレメントの制御方法
JPH0668055A (ja) ディジタル信号処理装置
JP2006018536A (ja) メモリ装置、メモリ制御方法並びに情報処理装置
KR19980083459A (ko) 데이터버스 사이즈 조정 장치
JP2010231645A (ja) 演算処理装置

Legal Events

Date Code Title Description
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080219

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090219

Year of fee payment: 10

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100219

Year of fee payment: 11

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100219

Year of fee payment: 11

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110219

Year of fee payment: 12

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110219

Year of fee payment: 12

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110219

Year of fee payment: 12

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110219

Year of fee payment: 12

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120219

Year of fee payment: 13

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130219

Year of fee payment: 14

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140219

Year of fee payment: 15

LAPS Cancellation because of no payment of annual fees