JP2779557B2 - 並列演算処理装置 - Google Patents

並列演算処理装置

Info

Publication number
JP2779557B2
JP2779557B2 JP3168063A JP16806391A JP2779557B2 JP 2779557 B2 JP2779557 B2 JP 2779557B2 JP 3168063 A JP3168063 A JP 3168063A JP 16806391 A JP16806391 A JP 16806391A JP 2779557 B2 JP2779557 B2 JP 2779557B2
Authority
JP
Japan
Prior art keywords
instruction
instructions
register
register means
stage
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 - Lifetime
Application number
JP3168063A
Other languages
English (en)
Other versions
JPH0520068A (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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP3168063A priority Critical patent/JP2779557B2/ja
Priority to DE4222275A priority patent/DE4222275C2/de
Publication of JPH0520068A publication Critical patent/JPH0520068A/ja
Priority to US08/305,983 priority patent/US5504923A/en
Application granted granted Critical
Publication of JP2779557B2 publication Critical patent/JP2779557B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime 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/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/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3802Instruction prefetching
    • 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/3816Instruction alignment, e.g. cache line crossing

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Advance Control (AREA)

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】この発明は並列演算処理装置に関
し、特に、スーパースカラー型プロセッサ(以下、単に
スーパースカラーと称す)における命令フェッチ方式に
関する。
【0002】
【従来の技術】スーパースカラーとは、以下の特徴を備
えるプロセッサである: (1) 命令を複数個同時にフェッチする。
【0003】(2) 複数の機能ユニットを備え、それ
により複数の命令を同時に実行する。
【0004】(3) 同時にフェッチされた複数の命令
の中から、同時に実行可能な命令を見出し、この同時に
実行可能な命令を対応の機能ユニットに投入する。
【0005】図2はスーパースカラーの一般的な構成を
示す図である。図2において、1は命令を格納するため
の命令キャッシュ(命令メモリ)、2は命令メモリ1に
対しフェッチする命令のアドレスを送出する命令フェッ
チステージ(IF)、3は命令メモリ1からフェッチさ
れた複数の命令のデコード、レジスタ・ファイルの読出
および分岐命令の実行等を行なう命令デコードステージ
(ID)。この命令デコードステージ(ID)3は、ま
たデコードした複数の命令の中から同時に実行可能な命
令を見出し、この同時実行可能な命令を機能ユニット4
a,4b,5および6のうちの対応のものへ投入(発
行)する。機能ユニット4a,4b,5および6は、そ
れぞれに並列に命令の実行が可能である。図2に示す構
成においては、4a,4bは整数加算等を実行する整数
演算ユニット、5はデータキャッシュ(データメモリ)
7へのデータのストアまたはからのデータのロードを実
行するユニット、6は浮動小数点演算を実行するユニッ
トである。
【0006】スーパースカラーにおいては、命令フェッ
チステージ(IFステージ)2、命令デコードステージ
(IDステージ)3および機能ユニット4a,4b,5
および6はパイプライン化されている。機能ユニット4
aおよび4bはデコードステージ3から与えられた命令
を実行する実行ステージEXCと、この実行結果をレジ
スタファイル(図示せず)へ書込むライトバックステー
ジ(WBステージ)を備える。
【0007】メモリアクセスユニット5は、命令デコー
ドステージ3からの命令に従ってデータキャッシュ7の
アドレスを計算するアドレス計算ステージ(ADRステ
ージ)と、この計算されたアドレスに従ってデータキャ
ッシュ7へアクセスするメモリアクセスステージ(ME
Mステージ)と、データキャッシュ7からロードされた
データをレジスタファイルへ書込むライトバックステー
ジ(WBステージ)を含む。
【0008】浮動小数点演算ユニット6は、命令デコー
ドステージ3からの命令を実行する3段の実行ステージ
EXC1、EXC2,EXC3および、該実行結果をレ
ジスタファイルへ書込むライトバックステージWBを含
む。
【0009】スーパースカラーにおいては、上述のよう
に、命令キャッシュ1から複数の命令が同時にフェッチ
される。この複数の同時にフェッチされた命令から、命
令デコードステージにおいて同時実行可能な命令が見出
され、対応の機能ユニットへ発行される。機能ユニット
4a,4b,5および6は並列に命令の実行が可能であ
る。したがってスーパースカラーでは、複数の命令が同
時に実行されるため、通常のプロセッサに比べて処理速
度の向上が得られる。
【0010】図3に従来のスーパースカラーにおける命
令フェッチステージ(IF)と命令デコードステージ
(IDステージ)の要部の構成を概略的に示す。図3に
示すスーパースカラーの構成においては、4つの命令が
同時にフェッチされかつデコードされる。
【0011】図3において、8は命令キャッシュ1から
フェッチを行なう複数の命令のうち最初の命令のアドレ
スを保持するプログラムカウンタ(PC)である。命令
フェッチステージにおいては、プログラムカウンタ8
は、ポインタIC addrを命令キャッシュ1へ与え、
対応の命令(4命令)を同時に読出す。プログラムカウ
ンタ8からのアドレスは加算器9において16を加算さ
れる。加算器9の出力は、次のサイクルにおけるフェッ
チアドレスを与える。プログラムカウンタ8からのアド
レスは30ビット<31:2>であり、その上位の28
ビット<31:4>が命令キャッシュ1へ与えられる。
【0012】命令キャッシュ1は、4命令を読出すと、
この命令を読出したことを示す信号IC readyを
オン状態にし信号線10上へ送出するとともに、命令デ
ータバス11上へデータIC dataを送出する。
【0013】ミスアラインメント計算ユニット17は、
命令キャッシュ1から読出された4つの命令(IR1,
IR2,IR3およびIR4)のうちのワードの境界を
計算し、該境界を示す信号misalignを計算す
る。このワードの境界の計算は、後に詳細に説明する
が、プログラムカウンタ8からの下位2ビットのアドレ
ス<3:2>に基づいて行なわれる。
【0014】命令デコードステージ(IDステージ)
は、命令キャッシュ1から読出された命令を一時ラッチ
する命令レジスタ12a,12b,12cおよび12d
と、命令レジスタ12a〜12dに格納された命令IR
1,IR2,IR3およびIR4をデコードする命令デ
コーダ13と、命令キャッシュ1からの信号IC re
adyをラッチするレジスタ14を含む。
【0015】命令レジスタ12a〜12dには命令キャ
ッシュ1からの命令IR1,IR2,IR3およびIR
4が無条件に書込まれる。ここで、命令キャッシュ1か
らのデータIC dataは4つの並列な命令IR1,
IR2,IR3およびIR4を含む。
【0016】この命令レジスタ12a〜12dに書込ま
れた命令が有効であるか否かは、命令キャッシュ1から
発生される信号IC readyがオンであるか否かに
より決定される。レジスタ14は、この命令レジスタ1
2a〜12dに格納される命令IR1〜IR4が有効で
あるか否かを表わすために、信号IC readyをラ
ッチする。
【0017】命令デコーダ13は、そこに予め準備され
た命令コードに基づいて関連の機能ユニットにおける実
行を指示する操作コードcode1、code2、co
de3およびcode4を生成し、信号線15a,15
b,15cおよび15d上へそれぞれ送出する。命令デ
コーダ13はさらに、機能ユニットに発行可能な命令に
対しては、発行可能(有効)であることを示すためフラ
グia out1,ia out2,ia out3お
よびia out4を信号線16a,16b,16cお
よび16d上へ送出する。
【0018】これらの操作コードcode1〜code
4および有効フラグia out1〜ia out4
は、各対応の機能ユニットの実行ステージEXEC1ま
たはADRへ送出される。
【0019】この操作コードcode1〜code4は
それぞれ対応の機能ユニットで実行されるが、その実行
態様は種々の方式が考えられている。一般的に、与えら
れた操作コードに従って演算が対応の機能ユニットにお
いて実行される。
【0020】
【発明が解決しようとする課題】命令キャッシュ1から
は4つの命令が同時に読出される。しかしながら、任意
のアドレスから4つの命令を同時に命令キャッシュ1か
ら読出すことはできない。命令キャッシュ1から4命令
を同時に読出すことのできるアドレスは4ワードの境界
により与えられる。この4命令の読出しについて以下の
ように命令が命令キャッシュ1に格納されている状態を
参照して説明する。
【0021】 アドレス 命令 4n 命令0 4n+4 命令1 4n+8 命令2 4n+12 命令3 4(n+4) 命令4 4(n+4)+4 命令5 4(n+4)+8 命令6 4(n+4)+12 命令7
【0022】フェッチアドレスIC addrが4nで
あれば、命令0、命令1、命令2、および命令3を読出
すことができる。フェッチアドレスIC addrが4
n+8の場合、命令2、命令3、命令4および命令5を
読出すことはできない。命令キャッシュ1は、この場
合、命令0、命令1、命令2および命令3を出力する。
命令デコードステージ(IDステージ)が命令レジスタ
12に与えられた命令を取込むときに、命令レジスタ1
2cおよび12dは命令IR3およびIR4として与え
られた命令を取込むものの、命令レジスタ12aおよび
12bは与えられた命令,命令0および命令1を命令I
R1およびIR2としては取込まない。レジスタ12a
および12bはリセット状態とされる。すなわちレジス
タ12aおよび12bは命令“nop(ノーオペレーシ
ョン)”を記憶する。
【0023】命令レジスタ12をリセットするための情
報は、プログラムカウンタ(PC)8から発生されるポ
インタPCの4ワード境界からのずれ、すなわちミスア
ラインメント量を計算することにより作成される。この
ミスアラインメント量の計算がミスアラインメント計算
ユニット17により実行される。ミスアラインメント計
算ユニット17は、プログラムカウンタ8からのポイン
タPCの下位2ビット、PC<3:2>から、ミスアラ
インメントの情報misalignを生成し、命令レジ
スタ12へ送出する。このミスアラインメント情報mi
salignは3ビット<3:1>を備え、この3ビッ
トのデータ<3:1>の各ビットが命令レジスタ12
a,12bおよび12cへそれぞれ与えられる。
【0024】図4(a)はこのミスアラインメント計算
ユニット17が実行する論理を一覧にして示す図であ
り、図4(b)にこのミスアラインメント計算ユニット
17の論理構成を示す。ポインタPC<3:2>が例え
ば“00”の場合ワードの境界から命令が読出されてい
ることを示している。すなわちミスアラインメント量は
0である。ミスアラインメント情報misalign<
3:1>はこのミスアラインメント量の0,1,2およ
び3に応じてレジスタ12a、レジスタ12aおよび1
2b、レジスタ12a,12bおよび12cをリセット
する。命令キャッシュ1の4ワードの境界からしか同時
に4命令を読出せない理由は、キャッシュメモリ1が4
つのメモリにより構成されており、この4つのメモリを
1つのアドレスでアクセスしているためである。この構
成を図5に示す。
【0025】図5において、命令キャッシュ1は、4つ
のメモリ19a,19b,19cおよび19dを含む。
メモリ19aはアドレス16m(mは任意の整数)の命
令を格納する。メモリ19bはアドレス16m+4の命
令を格納する。メモリ19cはアドレス16m+8の命
令を格納する。メモリ19dはアドレス16m+12の
命令を格納する。1命令は32ビットであり4アドレス
領域にわたって格納される。
【0026】これらの4つのメモリ19a〜19dに対
し同じフェッチアドレスIC addrが与えられる。
メモリ19a〜19dの同一アドレスには同時に読出さ
れるべき命令が格納される。したがって、4ワード境界
のアドレス16mからは連続する4つの命令,命令4
m,命令4m+1,命令4m+2および命令4m+3を
キャッシュ1から読出すことができる。しかしながら、
この4ワード境界にないアドレス(たとえば16m+
4)からはこのアドレス16m+4から始まる4つの命
令を同時に読出すことはできない。この場合においても
アドレス16m,16m+4,16m+8および16m
+12の命令が読出される。ここで、フェッチアドレス
IC addrはプログラムカウンタ8のポインタPC
<31:2>のうち下位2ビットを含んでいないことに
注目されたい。
【0027】フェッチアドレスを2つ作り、さらにこの
命令キャッシュ1からの出力をアドレス値にしたがって
シフトする回路を設ければ、任意のアドレスから4命令
を命令キャッシュ1から読出すことはできる。しかしな
がら、このような構成を設けた場合、命令キャッシュ1
のアクセス時間が長くなり、プロセッサの高速性が損な
われる。
【0028】図3に示す従来の、4ワード境界に存在し
ない命令をフェッチする方式においては、命令レジスタ
12a,12bおよび12cに対しリセット回路が必要
とされる。このため、命令レジスタ12に必要とされる
トランジスタの数が多くなり、消費電力、チップ占有面
積等の点で不利であるという問題がある。
【0029】図6に従来から一般にレジスタに用いられ
るラッチ回路の構成を示し、図7にリセット端子付ラッ
チ回路の構成を示す。図6および図7において示される
信号“クロック”は、このスーパースカラーを駆動する
クロックであり、パイプライン動作のサイクルを規定す
る。
【0030】インバータ回路においては、最小限2つの
トランジスタ(相補接続されたpチャネルMOS(絶縁
ゲート型電界効果)トランジスタおよびnチャネルMO
Sトランジスタが必要とされる。したがって、図6に示
すラッチ回路の構成の場合、10個のトランジスタが必
要とされる。
【0031】図7に示すリセット端子付ラッチ回路の構
成においては、リセット機能を実現するため2入力NO
R回路NRが必要とされる。2入力NOR回路は、通
常、出力部を放電するためのOR接続された2個のnチ
ャネルMOSトランジスタと、出力部を充電するための
2個のAND接続されたPチャネルMOSトランジスタ
とが必要とされる。すなわちNOR回路NR2は、4個
のトランジスタが必要とされる。したがって、図7に示
すリセット端子付ラッチ回路においては12個のトラン
ジスタが必要とされる。
【0032】図3に示す命令レジスタ12に対しては、
リセット端子付ラッチ回路が3つの命令レジスタ12
a,12bおよび12cに対して用いられるため、通常
のラッチ回路を用いる構成に比べて、192個(2×3
2×3)のトランジスタが余分に必要とされる(32は
命令長)。
【0033】また、リセット端子付ラッチ回路(図7参
照)は図6に示す通常のラッチ回路に比べて、リセット
用のゲート回路のために遅延時間が長く、サイクルタイ
ムを延ばす原因にもなっていた。
【0034】それゆえ、この発明の目的は、命令デコー
ダ前段に設けられる命令レジスタの構成トランジスタ数
を低減し、かつサイクルタイムが短縮された並列処理装
置を提供することである。
【0035】この発明の他の目的は、4ワード境界に存
在しない命令のフェッチを行なった際の制御動作を実行
する回路を少ないトランジスタ数で実現することであ
る。
【0036】
【課題を解決するための手段】この発明に係る並列演算
処理装置は、互いに並列に設けられ、各々が与えられた
命令を実行する複数の機能ユニットと、プログラムカウ
ンタからのポインタに従ってワード境界を示す先頭アド
レスを生成し、この先頭アドレスに従って命令メモリか
ら複数の命令を同時にフェッチする手段と、これらフェ
ッチされた複数の命令を並列に受けて格納するための複
数の第1のレジスタ手段と、これら複数の第1のレジス
タ手段各々に対応して設けられ、対応の第1のレジスタ
手段に格納された命令の有効/無効を示す情報を格納す
るための複数の第2のレジスタ手段と、プログラムカウ
ンタからのポインタと先頭アドレスとの差に従って複数
の第2のレジスタ手段の内容を設定するための手段と、
複数の第1のレジスタ手段からの命令を並列に受け、こ
れらの受けた命令から同時実行可能な命令を見出し、同
時実行可能な命令を対応の機能ユニットへ発行するデコ
ーダ手段を備える。このデコーダ手段は、複数の第2の
レジスタ手段に格納された情報に従って各命令に発行可
能か否かを示すフラグの値を設定して、対応の機能ユニ
ットへ送出する手段を含む。
【0037】
【作用】複数の命令を格納するための第1のレジスタ手
段各々に対応して第2のレジスタ手段を設け、この第2
のレジスタ手段に対応の第1のレジスタ手段に格納され
た命令の有効/無効を示す情報を、ワード境界とプログ
ラムカウンタのポインタとの差に従っで決定しで格納
し、命令デコーダから機能ユニットへの命令の発行時、
命令が発行可能か否かであるかを示す発行可能指示フラ
グの値をこの第2のレジスタ手段に格納された情報に従
って決定して対応の機能ユニットに送出する。第1のレ
ジスタ手段はリセット機能を持つ必要がなく、この第1
のレジスタ手段を構成するトランジスタの数が低減さ
れ、またリセット機能が不要となり、サイクルタイムが
短縮される。
【0038】
【実施例】図1にこの発明の一実施例である並列演算処
理装置の要部の構成を示す。図1においては、命令レジ
スタ12a〜12dは、通常のたとえば図6に示すよう
なラッチ回路で構成され、そのリセット機能は排除され
る。各命令レジスタ12a〜12dに対応して有効性フ
ラグレジスタ20a〜20dが設けられる。有効性フラ
グレジスタ20aは、命令レジスタ12aに格納される
命令IR1の有効性を示すフラグia1を格納する。有
効性フラグレジスタ20bは命令レジスタ12bに格納
される命令IR2の有効性を示す有効性フラグia2を
格納する。有効性フラグレジスタ20cは、命令レジス
タ12cに格納される命令IR3の有効性を示す有効性
フラグia3を格納する。有効性フラグレジスタ20d
は命令レジスタ12dに格納される命令IR4の有効性
を示すフラグia4を格納する。
【0039】この図1に示す構成においては、命令キャ
ッシュ1から命令供給を示す信号IC readyを格
納するレジスタは設けられていない。
【0040】図1に示す構成においては、ミスアライン
メントが生じた場合、対応の命令レジスタに関連する有
効フラグiaがオフにされる。すなわち、 ia1=IC ready*/misalign<1> ia2=IC ready*/misalign<2> ia3=IC ready*/misalign<3> ia4=IC ready なる論理が実現される。上述の論理は、命令キャッシュ
1からの信号IC readyを受けるインバータ22
と、インバータ22の出力をその一方入力に受け、ミス
アラインメント計算ユニット17からのミスアラインメ
ント情報misalign<3:1>の対応のビットを
それぞれ他方入力に受けるNOR回路21a,21bお
よび21cにより実現される。NOR回路21aの出力
は有効性フラグレジスタ20aへ与えられる。NOR回
路21の出力は有効性フラグレジスタ20bに与えられ
る。NOR回路21cの出力は有効性フラグレジスタ2
0cへ与えられる。
【0041】有効性フラグがオフの場合、命令デコーダ
3においては従来、信号IC readyに従って付さ
れていた発行可能指示フラグia outがオフとされ
る。すなわち、命令デコーダ3は、各命令IR1〜IR
4に付随する有効性フラグia1〜ia4に従ってこの
発行可能指示フラグia out1〜ia out4の
値を決定する。すなわち、命令デコーダ3において、 ia out1=/ia1*(IR1が発行可能である条件) ia out2=/ia2*(IR2が発行可能である条件) ia out3=/ia3*(IR3が発行可能である条件) ia out4=/ia4*(IR4が発行可能である条件) が実行される。なお、上述の論理式において、“*”は
論理積を示し、“/”は否定を示す。また、ミスアライ
ンメント計算ユニット17の構成は従来と同様である。
【0042】図1に示す回路構成においては命令レジス
タ12を構成するラッチ回路にリセット機能が不必要と
されるため、192個のトランジスタが不要となる。さ
らに、レジスタ14が不必要となったため、トランジス
タはさらに10個減る。トランジスタの増加する数は、
各命令レジスタ12に対して設けられた有効性フラグレ
ジスタ20が与えるトランジスタ40(4×10)と、
NOR回路21が与える12個のトランジスタ(3×
4)とインバータ21が与える2個のトランジスタであ
る。すなわちこの図1に示す構成においては、図3に示
す構成と比べてトランジスタは148個少なくなる。
【0043】
【発明の効果】以上のように、この発明に従えば、ミス
アラインメント調整用の回路を構成するトランジスタ数
を大幅に減少することができる。さらに、命令レジスタ
においてはリセット機能が設けられていないため、この
命令レジスタにおける遅延時間を短縮することができ、
並列処理装置の高速化等の性能向上をもたらすことがで
きる。
【図面の簡単な説明】
【図1】この発明の一実施例であるスーパースカラーの
命令フェッチに関連する部分の構成を示す図である。
【図2】スーパースカラーの一般的な構成を示す図であ
る。
【図3】従来のスーパースカラーの命令フェッチ提示お
よび命令デコードステージを概略的に示す図である。
【図4】図3および図1に示すミスアラインメント計算
ユニットの実現する論理および構成を示す図である。
【図5】図1および図3に示す命令キャッシュの構成を
概略的に示す図である。
【図6】リセット端子のないラッチ回路の構成を示す図
である。
【図7】リセット端子付ラッチ回路の構成を示す図であ
る。
【符号の説明】
1 命令キャッシュ 2 命令フェッチステージ(IFステージ) 3 命令デコードステージ(IDステージ) 4 整数演算ユニット 5 メモリアクセスユニット 6 浮動小数点演算ユニット 7 データ・キャッシュ 8 プログラム・カウンタ 9 加算器 12 命令レジスタ 13 命令デコーダ 20 各命令レジスタの有効性を示す信号を格納する有
効性フラグレジスタ 21 NOR回路 22 インバータ なお、各図中、同一符号は同一または相当部分を示す。
フロントページの続き (58)調査した分野(Int.Cl.6,DB名) G06F 9/38

Claims (1)

    (57)【特許請求の範囲】
  1. 【請求項1】 互いに並列に設けられ、各々が与えられ
    た命令を実行する複数の機能ユニット、 プログラムカウンタからのポインタに従ってワード境界
    を示す先頭アドレスを生成し、前記先頭アドレスに従っ
    て命令メモリから複数の命令を同時にフェッチするため
    の手段、 前記フェッチされた複数の命令を並列に受けて格納する
    ための複数の第1のレジスタ手段、 前記複数の第1のレジスタ手段各々に対応して設けら
    れ、対応の第1のレジスタ手段に格納された命令の有効
    /無効を示す情報を格納するための複数の第2のレジス
    タ手段、 前記先頭アドレスと前記プログラムカウンタのポインタ
    との差に従って前記複数の第2のレジスタ手段の内容を
    設定する手段、および前記複数の第1のレジスタ手段か
    らの命令を並列に受け、これらの受けた命令から同時実
    行可能な命令を見出し、該同時実行可能な命令を対応の
    機能ユニットへ発行するデコーダ手段を備え、前記デコ
    ーダ手段は、前記複数の第2のレジスタ手段の格納情報
    に従って命令が発行可能か否かを示す発行可能指示フラ
    グの値を設定して対応の機能ユニットへ送出する手段を
    含む、並列演算処理装置。
JP3168063A 1991-07-09 1991-07-09 並列演算処理装置 Expired - Lifetime JP2779557B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP3168063A JP2779557B2 (ja) 1991-07-09 1991-07-09 並列演算処理装置
DE4222275A DE4222275C2 (de) 1991-07-09 1992-07-07 Parallelprozessor und Betriebsverfahren für diesen
US08/305,983 US5504923A (en) 1991-07-09 1994-09-19 Parallel processing with improved instruction misalignment detection

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP3168063A JP2779557B2 (ja) 1991-07-09 1991-07-09 並列演算処理装置

Publications (2)

Publication Number Publication Date
JPH0520068A JPH0520068A (ja) 1993-01-29
JP2779557B2 true JP2779557B2 (ja) 1998-07-23

Family

ID=15861145

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3168063A Expired - Lifetime JP2779557B2 (ja) 1991-07-09 1991-07-09 並列演算処理装置

Country Status (3)

Country Link
US (1) US5504923A (ja)
JP (1) JP2779557B2 (ja)
DE (1) DE4222275C2 (ja)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
ES2143490T3 (es) 1992-08-12 2000-05-16 Advanced Micro Devices Inc Decodificador de instrucciones.
JP2760273B2 (ja) * 1993-12-24 1998-05-28 日本電気株式会社 演算装置及びその制御方法
US5991869A (en) * 1995-04-12 1999-11-23 Advanced Micro Devices, Inc. Superscalar microprocessor including a high speed instruction alignment unit
US5872947A (en) * 1995-10-24 1999-02-16 Advanced Micro Devices, Inc. Instruction classification circuit configured to classify instructions into a plurality of instruction types prior to decoding said instructions
US6049863A (en) * 1996-07-24 2000-04-11 Advanced Micro Devices, Inc. Predecoding technique for indicating locations of opcode bytes in variable byte-length instructions within a superscalar microprocessor
US5867680A (en) * 1996-07-24 1999-02-02 Advanced Micro Devices, Inc. Microprocessor configured to simultaneously dispatch microcode and directly-decoded instructions
US5881260A (en) * 1998-02-09 1999-03-09 Hewlett-Packard Company Method and apparatus for sequencing and decoding variable length instructions with an instruction boundary marker within each instruction
US6438664B1 (en) 1999-10-27 2002-08-20 Advanced Micro Devices, Inc. Microcode patch device and method for patching microcode using match registers and patch routines
DE10043003A1 (de) * 2000-09-01 2002-03-14 Infineon Technologies Ag Programmgesteuerte Einheit
JP2009230610A (ja) * 2008-03-25 2009-10-08 Kawai Musical Instr Mfg Co Ltd 命令処理装置及び命令処理方法。
US9223714B2 (en) 2013-03-15 2015-12-29 Intel Corporation Instruction boundary prediction for variable length instruction set

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE2702586C3 (de) * 1977-01-22 1979-07-05 Standard Elektrik Lorenz Ag, 7000 Stuttgart Schaltungsanordnung zum Steuern des Speicherzugriffs bei einem Rechner
US4295193A (en) * 1979-06-29 1981-10-13 International Business Machines Corporation Machine for multiple instruction execution
US4847755A (en) * 1985-10-31 1989-07-11 Mcc Development, Ltd. Parallel processing method and apparatus for increasing processing throughout by parallel processing low level instructions having natural concurrencies
JPS62152043A (ja) * 1985-12-26 1987-07-07 Nec Corp 命令コ−ドアクセス制御方式
EP0239081B1 (en) * 1986-03-26 1995-09-06 Hitachi, Ltd. Pipelined data processor capable of decoding and executing plural instructions in parallel
US5051940A (en) * 1990-04-04 1991-09-24 International Business Machines Corporation Data dependency collapsing hardware apparatus
JPH0810430B2 (ja) * 1986-11-28 1996-01-31 株式会社日立製作所 情報処理装置
US5201057A (en) * 1987-01-22 1993-04-06 Uht Augustus K System for extracting low level concurrency from serial instruction streams
JP2729795B2 (ja) * 1987-11-19 1998-03-18 株式会社日立製作所 並列計算機及びその制御方法
US5073855A (en) * 1989-06-30 1991-12-17 Bull Hn Information Systems Inc. Resource conflict detection method and apparatus included in a pipelined processing unit
JP2818249B2 (ja) * 1990-03-30 1998-10-30 株式会社東芝 電子計算機

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
原哲也 外3名著 "SIMP(単一命令流/多重命令パイプライン)方式に基づくスーパースカラ・プロセッサ『新風』の命令供給機構",情報処理学会研究報告,Vol.90,No.7 (90−ARC−80),80−7,P.49−56

Also Published As

Publication number Publication date
JPH0520068A (ja) 1993-01-29
DE4222275C2 (de) 1995-12-21
US5504923A (en) 1996-04-02
DE4222275A1 (de) 1993-01-21

Similar Documents

Publication Publication Date Title
US5511173A (en) Programmable logic array and data processing unit using the same
US5923615A (en) Synchronous pipelined burst memory and method for operating same
JP2779557B2 (ja) 並列演算処理装置
EP0954791B1 (en) Eight-bit microcontroller having a risc architecture
JP2773471B2 (ja) 情報処理装置
US5835746A (en) Method and apparatus for fetching and issuing dual-word or multiple instructions in a data processing system
US5301338A (en) System including central processing unit
JPH0748187B2 (ja) レジスタ間接モードを用いる汎用メモリ・アクセス方法およびコンピュータ・システム
JP3202108B2 (ja) パイプライン処理を用いたプロセッサ
US7134000B2 (en) Methods and apparatus for instruction alignment including current instruction pointer logic responsive to instruction length information
KR920002573B1 (ko) 데이타 처리기
US5107462A (en) Self timed register file having bit storage cells with emitter-coupled output selectors for common bits sharing a common pull-up resistor and a common current sink
US5001629A (en) Central processing unit with improved stack register operation
US6233675B1 (en) Facility to allow fast execution of and, or, and test instructions
KR19980024622A (ko) 프로그램 실행 방법 및 그 방법을 이용한 장치
JP2000163265A (ja) 命令発行回路
JP3164915B2 (ja) データ処理装置及びそのデータ処理方法
EP0573071A2 (en) A microprocessor
JPH08166880A (ja) コンピュータ
US6842846B2 (en) Instruction pre-fetch amount control with reading amount register flag set based on pre-detection of conditional branch-select instruction
JP2861560B2 (ja) データ処理装置
JPH0210454B2 (ja)
JP2968288B2 (ja) 中央演算処理装置
JP3474384B2 (ja) シフタ回路及びマイクロプロセッサ
JPH05307483A (ja) レジスタ書き込み制御方法および回路

Legal Events

Date Code Title Description
A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 19971021

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 19980331

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

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

Free format text: PAYMENT UNTIL: 20080515

Year of fee payment: 10

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

Free format text: PAYMENT UNTIL: 20080515

Year of fee payment: 10

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

Free format text: PAYMENT UNTIL: 20090515

Year of fee payment: 11

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

Free format text: PAYMENT UNTIL: 20100515

Year of fee payment: 12

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

Free format text: PAYMENT UNTIL: 20100515

Year of fee payment: 12

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

Free format text: PAYMENT UNTIL: 20120515

Year of fee payment: 14

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

Free format text: PAYMENT UNTIL: 20120515

Year of fee payment: 14

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

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

Free format text: PAYMENT UNTIL: 20120515

Year of fee payment: 14

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

EXPY Cancellation because of completion of term
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120515

Year of fee payment: 14