JP2810068B2 - プロセッサシステム、コンピュータシステム及び命令処理方法 - Google Patents

プロセッサシステム、コンピュータシステム及び命令処理方法

Info

Publication number
JP2810068B2
JP2810068B2 JP63283673A JP28367388A JP2810068B2 JP 2810068 B2 JP2810068 B2 JP 2810068B2 JP 63283673 A JP63283673 A JP 63283673A JP 28367388 A JP28367388 A JP 28367388A JP 2810068 B2 JP2810068 B2 JP 2810068B2
Authority
JP
Japan
Prior art keywords
instruction
instructions
information
register
cache memory
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
JP63283673A
Other languages
English (en)
Other versions
JPH02130634A (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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP63283673A priority Critical patent/JP2810068B2/ja
Priority to US07/433,368 priority patent/US5233694A/en
Priority to EP99122100A priority patent/EP0996057B1/en
Priority to DE68929483T priority patent/DE68929483T2/de
Priority to EP89120881A priority patent/EP0368332B1/en
Priority to DE68929215T priority patent/DE68929215T2/de
Priority to KR1019890016275A priority patent/KR0149658B1/ko
Priority to DE68928340T priority patent/DE68928340T2/de
Priority to EP97103969A priority patent/EP0782071B1/en
Publication of JPH02130634A publication Critical patent/JPH02130634A/ja
Priority to US07/979,772 priority patent/US6256726B1/en
Priority to US08/149,932 priority patent/US5404472A/en
Priority to KR1019980007835A priority patent/KR0160602B1/ko
Application granted granted Critical
Publication of JP2810068B2 publication Critical patent/JP2810068B2/ja
Priority to US09/853,769 priority patent/US7424598B2/en
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, look ahead
    • 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/3885Concurrent instruction execution, e.g. pipeline, look ahead using a plurality of independent parallel functional units
    • G06F9/3889Concurrent instruction execution, e.g. pipeline, look ahead using a plurality of independent parallel functional units controlled by multiple instructions, e.g. MIMD, decoupled access or execute
    • 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
    • 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/3824Operand accessing
    • 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/3836Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
    • G06F9/3842Speculative instruction execution
    • 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/3836Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
    • G06F9/3851Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution from multiple instruction streams, e.g. multistreaming
    • 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/3885Concurrent instruction execution, e.g. pipeline, look ahead using a plurality of independent parallel functional units

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明はミニコン,マイコン等のCPUに係り、特に高
速動作に好適なデータ処理装置及び方法に関する。
〔従来の技術〕
従来より、計算機の高速化のために、種々の工夫が行
なわれている。代表的な手法にパイプラインがある。パ
イプラインとは、1つの命令の処理を完全に終えてから
次の命令を始めるのではなくて、1つの命令を複数ステ
ージに分け、最初の命令が2番目のステージにさしかか
つたところで、次の命令の最初のステージの処理を始め
るというようにバケツリレー式に処理する方式である。
この様な方式については、富田眞治著「並列計算機構成
論」昭晃堂p.25〜68に詳しく論じられている。n段パイ
プライン方式を用いれば、それぞれのパイプラインステ
ージにて処理されている命令は1つであるが、全体とし
てn個の命令を同時に処理することができ、パイプライ
ンピツチごとに、1つの命令の処理を終えることができ
る。
さて、計算機の命令アーキテクチヤが、その処理方
式、処理性能に及ぼす影響が大であることは周知であ
る。命令アーキテクチヤの観点から計算機を分類する
と、CISC(Complex Instruction Set Computer)とRISC
(Reduced Instruction Set Computer)に分けられる。
CISCでは複雑な命令をマイクロ命令を使つて処理する。
これに対して、RISCでは、命令を簡単のものに絞る代わ
りに、マイクロ命令を用いずに、ハードワイヤド論理に
よる制御で高速化を計つている、以下、従来のCISC,RIS
Cの両者について、ハードウエア概要とそのパイプライ
ン動作について述べる。
第2図はCISC型計算機の一般的構成を説明する図であ
る。200はメモリインタフエース、201はプログラムカウ
ンタ(PC)、202は命令キヤツシユ、203は命令レジス
タ、204は命令デコーダ、205はアドレス計算制御回路、
206はマイクロ命令を格納しておくControl Storage(C
S)、207はマイクロ命令カウンタ、208はマイクロ命令
レジスタ、209はデコーダ、210はメモリとデータをやり
取りするレジスタMDR(Memory Data Register)、211は
メモリ上のオペランドアドレスを示すレジスタMAR(Mem
ory Address Register)、212はアドレス加算器、213は
レジスタフアイル、214はALU(Arithmetic Logical Uni
t)である。
動作の概要を説明する。PC201によつて示された命令
が、命令キヤツシユより取り出され、信号217を通し
て、命令レジスタ203にセツトされる。命令デコーダ204
は命令を信号218を通して受けとり、マイクロ命令の先
頭アドレスを信号220を通して、マイクロプログラムカ
ウンタ207にセツトする。また、アドレス計算方法を信
号219を通してアドレス計算制御回路205に指示する。ア
ドレス計算制御回路205は、アドレス計算に必要なレジ
スタの読み出し、アドレス加算器212の制御等を行う。
アドレス計算に必要なレジスタは、レジスタフアイル21
3よりバス226,227を通してアドレス加算器212に送出さ
れる。一方、マイクロ令令は1マシンサイクルごとにCS
206より読み出され、デコーダ209によりデコードされ、
ALU214,レジスタフアイル213を制御するのに使われる。
224は、これらの制御信号である。ALU214は、レジスタ
よりバス228,229を通して送られるデータを演算し、再
びレジスタフアイル213に格納する。メモリインターフ
エース200は、命令のフエツチ,オペランドのフエツチ
等、メモリとのやり取りを行う回路である。
次に、第2図で示した計算機のパイプライン動作を第
3,4,5図を用いて説明する。パイプラインは6段であ
る。IF(Instruction Fetch)ステージでは、命令キヤ
ツシユ202より命令が読み出され、命令レジスタ203にセ
ツトされる。D(Decode)ステージでは、命令デコーダ
204により、命令のデコードが行なわれる。A(Addres
s)ステージでは、アドレス加算器212により、オペラン
ドのアドレス計算が行なわれる。OF(Operand Fetch)
ステージでは、メモリインタフエース200を通して、MAR
211で指されたアドレスのオペランドがフエツチされ、M
DR210にセツトされる。次に、EX(Execution)ステージ
では、レジスタフアイル213、及び、MDR210より、デー
タが読み出され、ALU214に送られ、演算される。最後に
W(write)ステージでは、演算結果がレジスタフアイ
ル213の中の1つのレジスタにバス230を通して格納され
る。
さて、第3図は、基本命令の1つである加算命令ADD
を連続して処理する様子を示したものである。1マシン
サイクルごとに、1命令処理されており、ALU214,アド
レス加算器212共に毎サイクル並列して動いている。
第4図は、条件付分岐命令BRAccの処理の様子を示し
たものである。TEST命令でフラグが生成される。第4図
は条件成立時のフローを示したものである。フラグ生成
がEXステージで行われるため、ジヤンプ先命令のフエツ
チまでに3サイクルの待サイクルが生じる。パイプライ
ン段数を増やせば増やす程、この待サイクルは増え、性
能向上のネツクとなる。
第5図は、複雑な命令の実行フローを示したものであ
る。命令1が複雑な命令である。複雑な命令とはストリ
ングコピーの様に多数のメモリアクセスがある命令等
で、通常EXステージを多数回延長することにより処理さ
れる。EXステージはマイクロプログラムにより制御され
る。マイクロプログラムは1マシンサイクルに1回アク
セスされる。即、複雑な命令は、マイクロプログラムを
複数回読み出すことにより処理する。この時、EXステー
ジには1つの命令しか入らないので、次の命令(第5図
命令2)は待たされる。このような時には、ALU214は常
に動いているが、アドレス加算器212には遊びが生じて
しまう。
次にRISC型計算機について説明する。第6図はRISC型
計算機の一般的構成を説明する図である。601はメモリ
インタフエース、602はプログラムカウンタ、603は命令
キヤツシユ、604はシーサンサ、605は命令レジスタ、60
6はデコーダ、607はレジスタフアイル、608はALU、609
はMDR、610はMARである。
第7図に基本命令の処理フローを示す。IF(Instruct
ion Fetch)ステージでは、プログラムカウンタ602で指
される命令が、命令キヤツシユより読み出され、命令レ
ジスタ605にセツトされる。また、シーケンサ604は命令
信号615,ALU608よりのフラグ信号616より、プログラム
カウンタ602を制御する。R(Read)ステージでは、レ
ジスタフアイル607より、命令で示されたレジスタが、
バス618,619を通して、ALU608に転送される。また、E
(Execution)ステージでは、ALU608により、演算が行
なわれる。最後にW(Write)ステージでは、演算され
た結果がレジスタフアイル607に、バス620を通して格納
される。
RISC型計算機では、命令を基本的な命令のみに限定し
ている。演算はレジスタ−レジスタ間に限られており、
オペランドフエツチを伴う命令はロード命令とストア命
令のみである。複雑な命令は基本命令を組み合わせるこ
とによつて実現する。また、マイクロ命令は使用され
ず、命令レジスタ605の内容が直接デコーダ606でデコー
ドされ、ALU608等を制御する。
第7図はレジスタ−レジスタ間演算の処理フローを示
している。パイプラインは命令が簡単なため、4段です
んでいる。
第8図は条件分岐時の処理フローを示している。CISC
型計算機に比して、パイプライン段数が少ないため、待
サイクルが少ない。第8図の例では、待サイクルは1サ
イクルのみである。ただし、必ずしも、レジスタ間演算
ばかりではなく、メモリからのオペランドのロードや、
メモリへのオペランドのストアが必要である。CISC型計
算機では、アドレス加算器があるため、メモリからのオ
ペランドのロードが1マシンサイクルで実行可能だが、
第6図に示したRISC型計算機では、ロード命令は、アド
レス計算命令とロード命令に分解されるため、2マシン
サイクルを要してしまう。
〔発明が解決しようとする課題〕
上記従来技術の問題点について整理して述べる。CISC
型計算機では、アドレス加算器があるためメモリ,レジ
スタ間命令を1マシンサイクルで実行できるが、パイプ
ライン段数が多いため、分岐時のオーバヘツドが大き
い。また、複雑な命令を実行する時にはEステージのみ
が動くので、アドレス加算器に遊びが生じてしまうとい
う問題点があつた。
また、RISC型計算機では、パイプライン段数が少ない
ため分岐時のオーバヘツドが小さい。ところが、アドレ
ス加算器がなく、メモリ,レジスタ間演算のためには、
ロード命令,レジスタ間演算命令の2命令を要するとい
う問題点があつた。
本発明の第1の目的は、複数の演算器を無駄なく動作
させて処理能力を高めることにある。
本発明の第2の目的は、分岐時のオーバヘツドを小さ
くすることにある。
また本発明の第3の目的は、メモリ,レジスタ間演算
等の複雑な命令の処理時間を短縮することにある。
〔課題を解決するための手段〕
上記目的は、複数の命令と、この複数の命令を並列に
実行することを制御する情報とを格納し、格納された命
令を出力するときに並列に実行することを制御する情報
も出力するキャッシュメモリを有することにより達成す
ることができる。
〔作用〕
すなわち、複数の演算ユニットにより命令を並列に実
行する場合に、この命令を並列に実行できるが、できな
いかを予め判断して情報としてキャッシュメモリに格納
しておけば、この情報に基づいてそれぞれの演算ユニッ
トが実行すべき命令を決めることができ、全体として処
理速度を向上させることができる。
〔実施例〕
以下、本発明の一実施例を説明する。
第9図は、本実施例で述べるプロセツサの命令一覧で
ある。基本命令は全てレジスタ間演算である。分岐命令
には、無条件分岐命令BRA、条件付分岐命令BRAcc(ccは
分岐条件を示す。)、サブルーチンへの分岐命令CALL、
サブルーチンからの戻り命令RTNの4つがある。他に、
ロード命令LOAD、とストア命令STORがある。説明の都合
上、データ型32ビツト整数のみとしたがこれに限定され
るものではない。またアドレスは32ビツト(4バイト)
毎にふられているものとした。簡単のために、上記の如
く命令数を制限しているが、これは、本発明を制限する
ものではなく、1マシンサイクルで処理できる内容であ
れば、さらに命令を増やしてもよい。
第10図に命令フオーマツトを示す。命令は全て32ビツ
トの固定長である。基本命令中の下、S1,S2,Dフイール
ドは、それぞれ、演算結果をフラグに反映するかどうか
を指示するビツト,第1ソースレジスタを指示するフイ
ールド、第2ソースレジスタを指示するフイールド、デ
イステイネーシヨンレジスタを指示するフイールドであ
る。
本実施例の構成を示したのが、第1図である。100は
メモリインタフエース、101は32ビツトのプログラムカ
ウンタ、102はシーケンサ、103は命令ユニツト、104は3
2ビツトの第1命令レジスタ、105は32ビツトの第2命令
レジスタ、106は第1デコーダ、107は第2デコーダ、10
8はMDR、109はMAR、110は第1演算ユニツト、111はレジ
スタフアイル、112は第2演算ユニツトである。
本実施例では、1マシンサイクルの間に2つの命令が
並列して読み出され実行される。本実施例でのパイプラ
イン処理の様子を示したのが、第11〜14図である。パイ
プラインはIF(Instruction Fetch),R(Read),EX(Ex
ecution),W(write)の4段である。
再び、第1図を用いて、本実施例の動作について説明
する。
IFステージでは、プログラムカウンタによつて指され
る2つの命令が読み出され、バス115,117を通して、そ
れぞれ第1命令レジスタ104、第2命令レジスタ105にセ
ツトされる。PCが偶数の時には、PC番地の命令が第1命
令レジスタに、PC+1番地の命令が第2命令レジスタに
格納される。また、PCが奇数の時には、第1命令レジス
タにはNOP命令が、第1命令レジスタにはPC番地の命令
がセツトされる。シーケンサ102はプログラムカウンタ
を制御する回路である。第1命令レジスタ,第2命令レ
ジスタ共に、分岐命令でない時には、プログラムカウン
タには、前プログラムカウンタ値+2の値をセツトす
る。分岐時には、分岐アドレスを計算してプログラムカ
ウンタにセツトする。条件分岐時には、第1演算ユニツ
トよりのフラグ情報123、及び、第2演算ユニツトより
のフラグ情報124より、分岐の成否を判定する。また、
命令ユニツトより送出される信号116は、第1命令、第
2命令間の各種の競合を示す競合信号である。競合信号
がアサートされた場合には、競合を避けるようにハード
ウエアで制御する。競合回避方法については、後に詳し
く述べる。
次に基本命令処理時のRステージの動作について説明
する。Rステージでは、第1命令レジスタ104の内容が
第1デコーダ106でデコードされ、また、第2命令レジ
スタ105の内容が第2デコーダ107でデコードされる。そ
の結果、第1命令レジスタ104の第1ソースレジスタフ
イールドS1で指されるレジスタの内容がバス125を通し
て、第2ソースレジスタフイールドS2で指されるレジス
タの内容がバス126を通して、第1演算ユツト110へ送出
される。また、第2命令レジスタの第1ソースジスタS1
で指されるレジスタの内容がバス127を通して、第2ソ
ースレジスタフイールドS2で指されるレジスタの内容が
バス128を通して、第2演算ユニツト112に送出される。
次にEXステージの動作について説明する。EXステージ
では、第1命令レジスタのオペコードの内容に従つて、
第1演算ユニツト110において、バス125,126により送ら
れてきたデータ間の演算を行う。並列して、第2命令レ
ジスタ105のオペコードの内容に従つて、第2演算ユニ
ツト112において、バス127,128により送られてきたデー
タ間の演算を行う。
最後にWステージの動作を説明する。Wステージで
は、第1演算ユニツト110の演算結果が、バス129を通し
て、第1命令レジスタのデイステイネーシヨンフイール
ドDで指されるレジスタに格納される。また、第2演算
ユニツト112の演算結果が、バス131を通して、第2命令
レジスタのデイステイネーシヨンフイールドDで指され
るレジスタに格納される。
第11図は、基本命令を連続して処理するフローを示し
たものである。1マシンサイクルに2命令ずつ処理され
る。また、この例では、第1演算ユニツトと第2演算ユ
ニツトは常に並列して動作している。
第12図は第1命令としてロード命令、または、ストア
命令、第2命令として基本命令を連続して処理するフロ
ーを示したものである。ロード命令実行時には、Rステ
ージで、第1命令レジスタのS2フイールドで指されるレ
ジスタの内容が、バス126を通して、MAR109に転送され
る。次に、EXステージで、メモリインタフエース100を
通して、オペランドをフエツチする。最後に、Wステー
ジでフエツチされたオペランドが、バス129を通して、
第1命令レジスタのデイステイネーシヨンフイールドD
で指されるレジスタに格納される。EXステージ、1マシ
ンサイクルでオペランドをフエツチすることは、メモリ
インタフエースに高速キヤツシユを備えていれば、可能
である。特に、第1図に示す、計算機全体が半導体基板
上に集積され、命令キヤツシユ、データキヤツシユ共に
オンチツプ化されている場合などは容易である。もちろ
ん、キヤツシユがミスヒツトした場合には、1マシンサ
イクルでオペランドフエツチを終了することができな
い。このような時は、システムクロツクを止めて、EXス
テージを延長すればよい。これは、従来の計算機でも行
なわれていることである。
次にストア命令実行時には、Rステージにおいて、第
1命令レジスタの第1ソースレジスタフイールドS1で指
されるレジスタの内容がデータとして、バス125を通し
てMDR108に転送される。また同時に、第1命令レジスタ
の第2リースレジスタフイールドS2で指されるレジスタ
の内容がアドレスとして、バス126を通してMAR109に転
送される。次にEXステージで、MAR109で指される番地
に、MDR108内のデータが書き込まれる。第12図に示すよ
うに、ロード命令,ストア命令が第1命令にある場合に
ついても、1マシンサイクルに2命令ずつ処理すること
ができる。ロード命令,ストア命令が第2命令に出現し
た時の処理については後に詳しく述べる。
第13図は、第2命令として無条件ジヤンプBRA命令実
行時の処理フローを示したものである。BRA命令が読み
出されると、Rステージにおいてシーケンサ102はデイ
スプレースメントフイールドdとプログラムカウンタと
の加算を行い、プログラムカウンタ101にセツトする。
この間にBRA命令の次の番地の命令、と、その次の番地
の命令(第13図命令1と命令2)が読み出される。その
次のサイクルに、ジヤンプ先の2命令が読み出される。
本実施例では、命令1,2とも実行可能なハードウエアと
している。即ち、ジヤンプ命令処理時も、待サイクルが
発生しない。この手法は、遅延分岐と呼ばれるもので、
RISC型の従来計算機でも行なわれているものである。た
だし、従来のRISC型計算機では、ジヤンプ命令のアドレ
ス計算中に、1命令しか実行できなかつたが、本実施例
では、ジヤンプ命令のアドレス計算中にも、2命令同時
処理されるため、より処理能力を高めることができる。
CALL命令,RTN命令の処理フローも同様である。コンパイ
ラにより、分岐命令のアドレス計算中にできるかぎり有
効な命令を実行できるようにコード生成するが、何もす
ることがない時には第13図命令1,2をNOP命令としてお
く。この時には、実質的に1マシンサイクルの待ちが生
ずる。しかしながら、パイプライン段数が浅いので、従
来例で述べたCISC型の計算機に比して、分岐時のオーバ
ヘツドを小さくできるという利点がある。
第14図は条件分岐命令BRAccの処理フローを示したも
のである。ADD1Fと示した命令で、フラグのセツトが行
なわれ、その結果に従い分岐の成否が決められる。この
時も、第13図を用いて説明した無条件分岐命令処理時と
同様にBRAcc命令のおかれている番地の次の命令、第14
図命令1と、その次の命令、第14図2が読み出され処理
される。ただし、この2命令の処理フロー中Wステージ
においては、BRAcc命令の分岐条件不成立時のみ演算結
果のレジスタフアイルへの書き込みが行なわれる。即
ち、分岐命令成立時には、演算結果の書き込みが抑制さ
れる。
以上、第11〜14図を用いて説明したように、本実施例
では、1マシンサイクルに2命令ずつ処理するので、そ
の処理能力が最大2倍に向上されるという利点がある。
また、命令が簡単で、ワイヤドロジツクによる制御でパ
イプライン段数が4段と少ないため、分岐時のオーバヘ
ツドを最大1マシンサイクルと小さくすることができ
る。さらにコンパイラによる遅延分岐の最適化が成功す
れば、上記オーバヘツドをなくすことができる。
また、複雑な処理も、簡単な命令の組み合わせで実行
するため、従来のCISC型計算機におけるパイプライン並
列によるアドレス加算器とALUの並列動作に比して、第
1図第1演算ユニツト110と第2演算ユニツト112の並列
動作をより遊びなく行うことができるという利点があ
る。この点について、もう少し説明する。メモリからレ
ジスタへのロードを繰り返す場合、従来CISC型計算機で
は第15図に示すように、1マシンサイクルに1つずつデ
ータをロードすることができる。これに対して本実施例
においては、1つのデータのロードに、アドレス計算用
ADD命令と、そのアドレスを用いたLOAD命令の2命令か
かるが、第16図に示すように1マシンサククルに2命令
ずつ実行できるので、やはり、1マシンサイクルに1つ
ずつデータをロードできる。演算器の並列動作という意
味では、両者とも2つの演算器が同時に並列して動いて
おり、この例では同じである。
さらに複雑な処理について比較したのが、第17図と第
18図である。従来のCISC型計算機で6サイクルのEXステ
ージでの処理を要していた第17図に示す命令1は、第18
図に示すように、本実施例では3サイクルで終了するこ
とができる。これは従来のCISC型計算機では、命令1の
実行中、アドレス加算器の動作がとまつてしまうが、本
実施例では、2つの演算器が毎サイクル並列して動くこ
とが可能となるためである。
第1図第1演算ユニツト110の中を説明したのが第19
図である。1500はALU、1501はバレルシフタ、1502はフ
ラグ生成回路である。バス125,126より転送されてきた
データは、加減算,論理演算の時にはALU1500で、SFT命
令の時にはバレルシフタで処理される。処理結果はバス
130に送出される。演算結果によりフラグがフラグ生成
回路1502により生成され、信号123として送出される。
第1図第2演算ユニツト112の中を一例として説明し
たのが第20図である。1600はALU、1601はフラグ生成回
路である。第1演算ユニツトとの相違点はバレルシフタ
がない点である。これは、SFT命令は算術論理演算命令
に比して出現ひん度が低いため、省略したのである。こ
うすることにより、1マシンサイクルに、2つのSFT命
令を実行することができなくなるが、ハードウエア量を
削減できるという利点がある。2つのSFT命令が出現し
た時の制御方法については後述する。
第21図は第1図レジスタフアイル111の中を示したも
のである。1708はレジスタ、1700〜1709はバススイツチ
である。各レジスタは、4つのリードポード、2つの書
込みポートを持つ。バススイツチは、前命令のデイステ
イネーシヨンフイールドで指されたレジスタを、次命令
で直ちに使う時に、レジスタフアイルをバイパスするた
めに用いられる。例えば、バススイツチ1702は、バス12
9から127へのバイパススイツチであり、第1命令のデイ
ステイネーシヨンレジスタフイールドDと第2命令の第
1ソースレジスタフイールドS1が一致した時に開けるよ
うにすればよい。
次に第1命令と第2命令の競合解消方法について第22
図から第29図を用いて説明する。第1命令と第2命令の
組み合せによつては、両命令を同時に実行できないこと
がある。これを競合と呼ぶことにする。以下の場合に競
合がおこる。
1.ロード,ストア命令が第2命令として出現した場合。
2.SFT命令が第2命令として出現した場合。
3.第1命令のデイステイネーシヨンレジスタフイールド
Dで指されるレジスタと、第2命令の第1ソースレジス
タフイールドS1で指されるレジスタ、または、第2命令
の第2ソースレジスタフイールドS2で指されるレジスタ
が一致する時。
上記、競合の内、1と2は、第2演算ユニツトで、ロ
ード,ストア命令、及び、SFT命令が処理できないこと
により生ずる本実施例特有の問題である。第1図におい
て、バス127に第2MDR、バス128に第2MARを追加し、メモ
リインタフエースにて、1マシンサイクルに2つのデー
タをアクセスできるようにすれば、第1の競合条件は解
消できる。また、第2演算ユニツトにもバレルシフタを
設ければ、第2の競合条件も解消できる。本実施例で
は、ハードウエア削減のため、上記競合条件が生じたの
である。この様な場合も、後に述べるように、容易に競
合を解消できるので、必要性能と、許されるハードウエ
ア量に応じて、同時処理大の命令に対応するハードウエ
アのみ2重化することは、実質的に性能を落とさずに、
ハードウエアを削減できるという利点がある。
第22図を用いてSFT命令が第2命令として出現した時
の制御方法について述べる。第22図上部では、第2命令
となるアドレス“3"にSFT命令がある場合である。第22
図下部は、実行時の第1命令レジスタ、第2命令レジス
タに入る命令を示している。プログラムカウンタ2の
時、第2命令がSFT命令であることをハードウエアで検
出し、第1命令レジスタには2番地の命令を、第2命令
レジスタにNOP命令をセツトする。さらに、次のマシン
サイクルでは、プログラムカウンタを“1"だけインクリ
メントし、3番地をセツトする。そして、第1命令レジ
スタには、3番地のSFT命令を第2命令レジスタにはNOP
命令をセツトする。このように2マシンサイクルに分け
て処理することにより、正しく処理することができる。
もちろん、コンパイラによる最適化を行い、できるだけ
第2命令にSFT命令が出現しないようにすることが好ま
しい。
別の競合解消方式について第23図を用いて述べる。即
ち、第2命令となる奇数アドレスには、SFT命令をおく
ことを禁止し、他に実行する命令のない時にはNOP命令
を入れておく。こうすれば、プログラムサイズは若干増
加するが、競合解消のためのハードウエアを省略できる
よいう利点がある。
第24図は、ロード命令が第2命令として出現した時の
処理方法を示している。3番地にロード命令がある。処
理方法は、SFT命令の時と同じである。
第25図は、レジスタ競合時の処理方式を示している。
2番地の命令が8番レジスタに書き込んでおり、同じ8
番レジスタを3番地の命令が読み出している。この場合
も、SFT命令同様、2マシンサイクルに分けて実行す
る。
ロード,ストア命令,レジスタ競合についても、奇数
番地におくことを禁止して、競合を解消してもよい。効
果はSFT命令のところで述べたのと同じである。
次に、第22〜25図で説明した処理方式を実現するハー
ドウエア方式について説明する。第26図はこのための、
第1図命令ユニツト103の構成を示した図である。2300
は競合検出回路、2301はキヤツシユメモリ、2302は第1
マスク回路、2303は第2マスク回路である。バス113か
らは、通常プログラムカウンタの値が入力され、プログ
ラムカウンタで指される命令とその次の番地の命令が、
バス2305,バス2306に送出される。キヤツシユミスヒツ
ト時にはメモリインタフエース100により命令のフエツ
チが行なわれ、バス113を通して、キヤツシユ2301に書
き込まれる。この時競合検出回路が第1命令と第2命令
の間の競合をチエツクし、競合があれば、競合信号2304
をアサートする。キヤツシユには2命令に1ビツトずつ
両命令の競合状態を示すビツトが設けられており、キヤ
ツシユミス時に競合信号2304を格納する。第1マスク回
路は、入力として第1命令,第2命令,競合ビツト,プ
ログラムカウンタの最下位ビツトを受け、第27図に示す
ように、第1命令レジスタ104への信号115を制御する。
また、第2マスク回路は、入力として第2命令,競合ビ
ツト,プログラムカウンタの最下位ビツトを受け、やは
り、第27図に示すように、第2命令レジスタ105への信
号117を送出する。
第27図に示すように、競合ビツト,PC最下位ともに0
の時には第1命令レジスタに第1命令が、第2命令レジ
スタに第2命令が送出される。これは通常ケースであ
る。競合ビツトが1,PC最下位が0の時には、第1命令レ
ジスタに第1命令が、第2命令レジスタにNOP命令が送
出される。これは、競合命令処理時の第1マシンサイク
ル時の処理である。次に、競合ビツトが1でPC最下位も
1の時には、第1命令レジスタに第2命令を、第2命令
レジスタにNOPを送出する。これは、競合命令処理時の
第2マシンサイクル時の処理である。上記処理により、
第22,23,25図で説明した競合命令の処理フローが実現さ
れる。
分岐命令が奇数番地に分岐した時には、第27図に示す
ように、競合ビツトの値によらず、第2命令のみ実効さ
れるので正しい処理が可能である。キヤツシユ読出しは
毎サイクル行なわれるが、キヤツシユへの書き込みは、
キヤツシユがミスヒツトした時のみ、しかも、数マシン
サイクルかけて行なわれる。従つて、競合検出回路を、
キヤツシユ書込み時に動作させ、キヤツシユに競合ビツ
トを保持しておくことは、マシンサイクルを短縮する上
で有効である。
第28図は、第26図命令キヤツシユ2301の構成を示した
ものである。2500はデイレクトリ、2501はデータメモ
リ、2502はセレクタ、2503はアドレスレジスタ、2504は
書込みレジスタ、2505はコンパレータ、2506はキヤツシ
ユ制御回路である。第28図のキヤツシユは通常のキヤツ
シユの構成とほぼ同じであるが、データメモリ2501に、
2命令分8バイトに1つずつ、競合ビツト保持用のフイ
ールドがあること、キヤツシユ読出し時に、PC最下位を
無視し、常に第1命令2305と第2命令2306と競合信号11
6を送出する点が異なつている。
第28図では、データメモリ8K語分、ブロツクサイズ32
バイトとしてある。プログラムカウンタより送出された
信号113はアドレスレジスタ2503にセツトされる。アド
レスの3〜12ビツトで、デイレクトリ2500とデータメモ
リ2501が引かれる。コンパレータ2505は、デイレクトリ
出力とアドレスレジスタの13〜32ビツトを比較する。不
一致であれば、信号2508により、キヤツシユ制御回路25
06にそれを知らせる。キヤツシユ制御回路2506は、主メ
モリよりミスヒツトした命令を含むブロツクを読み出
し、データメモリ2501にセツトする。一方、セレクタ25
02は、アドレスレジスタの第1,2ビツトを用いて、ブロ
ツクの中から必要な2命令を選択する。第1命令と第2
命令は必ず同一ブロツク内にあり、片方のみミスヒツト
することはない。
第29図は、第1図命令ユニツト103の他の構成例を示
したものである。2600はキヤツシユメモリ、2601は競合
検出回路、2302は第1マスク回路、2303は第2マスク回
路である。第26図の構成との違いは、シヤツシユに競合
ビツト保持のフイールドがなく、キヤツシユ出力の第1
命令2601と第2命令2602を、毎サイクル競合検出回路26
01が監視していることである。第1マスク回路2302,第
2マスク回路2303の動作は、第26図のものと同じであ
る。本実施例によれば、キヤツシユ読み出し後に毎サイ
クル競合検出回路が働くので、マシンサイクルが伸びる
という欠点があるが、キヤツシユ内の競合ビツトフイー
ルドがなくてよいという利点がある。
さらに、本実施例では、1マシンサイクルに2命令ず
つ処理されることを生かして、第30図に示すように特殊
な場合に条件付分岐命令をさらに高速化することができ
る。即ち、条件付分岐命令において、条件成立時の分岐
先が次の次の命令(第30図命令2)である時、条件の成
否にかかわらず、命令2,命令3を実行し、条件の成否に
より、命令1のWステージを抑止するかどうかを制御す
ることにより、条件成立時の待サイクルをなくすことが
できる。ただし、この場合、条件分岐命令は必ず第1命
令側におくこととする。通常の条件付分岐では、第14図
を用いて説明したように、分岐成立時には、1サイクル
の待サイクルが生じる。言葉を換えて説明すれば、本発
明では1マシンサイクルに2命令ずつ処理するので、2
命令単位での命令処理フローに影響を与えずに、第1命
令側の条件付分岐命令の条件の成否により、第2命令側
の命令の実行を制御することができる。
さらに、本実施例では、1マシンサイクルに2命令ず
つ処理されることを生かして、“アトミツク”な処理を
容易に実現することができる。アトミツク処理とは、必
ず一続きに行なわれる処理のことで、プロセス間の同期
等に使用される。第31図(a)は従来の計算機の場合で
あり、(b)は本実施例について説明している。(a)
では各命令の間に割込みが入る可能性があるが、(b)
では、命令1と命令2の間、及び、命令3と命令4の間
には決して割込みが入らない。このため、(a)では、
任意の命令のすき間に、他のプロセスを処理するプログ
ラムが入る可能性があるが、(b)では、命令1と命令
2,命令3と命令4は必ず一続きに実行されることが保証
されているという利点がある。
第32図は、本発明の他の実施例の構成を示した図であ
る。本実施例では、1マシンサイクルに4命令ずつ処理
することができる。3200はメモリインタフエース、3201
はプログラムカウンタ、3202はシーケンサ、3203は命令
ユニツト、3204〜3207は、第1〜4命令レジスタ、3208
〜3211は、第1〜4デコーダ、3212はMDR、3213はMAR、
3214,3215,3217,3218は、第1〜4演算ユニツト,3216は
レジスタフアイルである。各演算ユニツトはレジスタフ
アイル3216を共有している。各部の動作説明は、第1図
で示した実施例と同じなので省略する。
同様に、さらに並列度をあげることは可能であるが、
数命令に1つの割合で分岐命令が存在するようなプログ
ラムもあり、そのようなプログラムでは、極端に並列度
をあげても、あまり効果が得られない。2〜4命令同時
処理程度が至当である。分岐が少なく、競合も少ないプ
ログラムでは、さらに並列度をあげれば、効果的に性能
が高まる。また、並列度を2n(nは自然数)とすること
により、命令ユニツトの制御を容易にすることができ
る。
さらに、本発明の他実施例について述べる。これまで
の実施例では、常に複数命令同時処理を行つていた。通
常は1マシンサイクルに1命令ずつ処理し、部分的に複
数命令同時処理を行うことによつても利益を得ることが
できる。第33図に3つの例を示す。第33図(a)では、
第1命令は主メモリ、第2命令はアドレス空間の先頭部
分のみにあり、かつ、ROM化されている。(b)では、
第1命令,第2命令ともに、アドレス空間の先頭部分で
ROM化されている。他の部分は第1命令のみで、主メモ
リにある。(c)では、(a)とほぼ同じであるが、第
2命令のROM化部分がアドレス空間の中間にある。計算
機全体の構成は第1図と同じであり、ただ命令ユニツト
103を変更すればよい。ROM部分には、使用ひん度が高
く、並列度の高いプログラムを書いておき、主ルーチン
よりサブルーチンコールによつて利用する。ROM部分は
小容量でよいので、コンパイラがなくても、アセンブラ
により最適なプログラムを作成することができる。
第34図は、第33図(a)を実現するための、第1図命
令ユニツト103の構成を示したものである。2900はキヤ
ツシユ,2901は4K語のROM、2903はマスク回路、2902はマ
スク回路制御回路である。マスク回路制御回路はアドレ
ス113を常に監視しておりアドレスの上位12〜31ビツト
がオールゼロの時のみ、有効信号2904をアサートする。
マスク回路2903は、有効信号2904がアサートされた時の
み、ROM出力2905を第2命令レジスタへの出力117として
送出する。他の時はNOP命令を送出する。
第33図(c)を実現するためには、第34図マスク回路
制御回路2902を第35図のようにすればよい。3000はコン
パレータ、3001はベースレジスタである。ベースレジス
タの上位12〜31ビツトと、アドレス113の上位12〜31ビ
ツトが一致した時に、コンパレータ3000は、有効信号29
04をアサートする。
第33図(b)を実現するためには、第1図命令ユニツ
ト103を第36図のように構成すればよい。2901,2902,290
3の機能は第29図で説明した同一番号のものと同じであ
る。3100はキヤツシユ、3101は4K語のROM、3102はセレ
クタ制御回路、3107はセレクタである。セレクタ制御回
路3102は、アドレス113の上位12〜31ビツトを常に監視
し、それらがオールゼロの時のみROM選択信号3105をア
サートする。セレクタ3107は、ROM選択信号3105がアサ
ートされた時のみROM出力信号3104を、第1命令レジス
タへの出力115として送出する。他の時には、キヤツシ
ユ出力3103を送出する。
第33〜36図を用いて述べたように、部分的に複数命令
同時処理を行い、その部分をROM化することによりハー
ドウエアを削減できる。また、ROM部分のみであればア
センブラによつて最適設計できるので、複数命令同時処
理を意識したコンパイラを開発しなくてもよいという利
点がある。さらに、ROM部分を書き換えることにより、
アプリケーシヨンごとに、アプリケーシヨンに適した高
速化が実現できる。
〔発明の効果〕
本発明によれば、複雑な命令は基本命令に分解され、
かつ、1マシンサイクルで複数の命令が同時に読み出さ
れ、実行されるために、複数の演算器が同時に動き、処
理能力を高めることができる。
また、命令の機能が簡単で、パイプライン段数を短く
できるので、分岐時のオーバヘツドを小さくできる。
また、複数演算器が並列して動くため、複雑な処理の
処理時間を短縮することができる。
【図面の簡単な説明】
第1図は本発明の一実施例の全体ブロツク図、第2図は
従来例の全体ブロツク図、第3図〜第5図はその動作を
説明するタイミングチヤート、第6図はもう1つの従来
例の全体ブロツク図、第7図、第8図はその動作を説明
するタイミングチヤート、第9図は本発明の一実施例の
命令一覧を示す図、第10図は本発明の一実施例にかかる
命令フオーマツトを示す図、第11図〜第14図は本発明の
一実施例の動作を説明するタイミンダチヤート、第15図
は従来例の動作を説明するタイミングチヤート、第16図
〜第18図は本発明の一実施例の動作を説明するタイミン
グチヤート、第19図は第1図の第1演算ユニツト110の
構成図、第20図は第1図の第2演算ユニツト112の構成
図、第21図は第1図のレジスタフアイル111の構成図、
第22図〜第25図は、第1図に示した本発明の一実施例の
動作を説明する図、第26図は第1図の命令ユニツト103
の構成図、第27図はその動作を説明する図、第28図は第
26図のキヤツシユ2301の構成図、第29図は第1図の命令
ユニツト103の他の構成図、第30図は本発明の一実施例
の動作を説明するタイミングチヤート、第31図は命令構
成を示す図、第32図は本発明の他の実施例の全体ブロツ
ク図、第33図〜第36図は部分的に複数命令同時処理を行
なう本発明の他の実施例の説明図である。 103……命令ユニツト、104……第1命令レジスタ、105
……第2命令レジスタ、110……第1演算ユニツト、111
……レジスタフアイル、112……第2演算ユニツト。

Claims (24)

    (57)【特許請求の範囲】
  1. 【請求項1】複数の命令をプリデコードし、前記複数の
    命令を並列に実行することを制御する情報を生成するプ
    リデコード手段と、 前記複数の命令と、前記情報とを格納するキャッシュメ
    モリとを有し、 前記キャッシュメモリは、前記情報と命令とを出力する
    ことを特徴とするプロセッサシステム。
  2. 【請求項2】請求項1に記載のプロセッサシステムにお
    いて、 前記キャッシュメモリから出力された前記情報に基づい
    て前記複数の命令を実行する複数の演算ユニットを有す
    ることを特徴とするプロセッサシステム。
  3. 【請求項3】請求項2に記載のプロセッサシステムにお
    いて、 前記情報は複数の命令の実行順序を制御する手段により
    使用されることを特徴とするプロセッサシステム。
  4. 【請求項4】請求項2に記載のプロセッサシステムにお
    いて、 前記情報は複数の命令を並列に実行することによる命令
    間の競合を排除する手段により使用されることを特徴と
    するプロセッサシステム。
  5. 【請求項5】請求項4に記載のプロセッサシステムにお
    いて、 前記競合はレジスタ競合であることを特徴とするプロセ
    ッサシステム。
  6. 【請求項6】請求項4に記載のプロセッサシステムにお
    いて、 前記競合はリソース競合であることを特徴とするプロセ
    ッサシステム。
  7. 【請求項7】請求項6に記載のプロセッサシステムにお
    いて、 前記リソース競合は同じ演算ユニットで演算されている
    複数の命令に関するものであることを特徴とするプロセ
    ッサシステム。
  8. 【請求項8】請求項6に記載のプロセッサシステムにお
    いて、 前記リソース競合は同じロードユニットによる使用を呼
    び出すロード命令に関するものであることを特徴とする
    プロセッサシステム。
  9. 【請求項9】請求項6に記載のプロセッサシステムにお
    いて、 前記リソース競合は同じシフタの使用を呼び出すシフト
    命令に関するものであることを特徴とするプロセッサシ
    ステム。
  10. 【請求項10】請求項2に記載のプロセッサシステムに
    おいて、 前記情報は単一のビットによって表現されることを特徴
    とするプロセッサシステム。
  11. 【請求項11】複数の命令と、前記複数の命令の実行を
    制御する情報とを格納するキャッシュメモリと、 前記複数の命令を実行する複数の演算ユニットとを有
    し、 前記複数の演算ユニットは、前記情報に基づいて前記命
    令の実行順序が制御されることを特徴とするプロセッサ
    システム。
  12. 【請求項12】複数の命令と、前記複数の命令の実行を
    制御する情報とを格納するキャッシュメモリと、 前記複数の命令を実行する複数の演算ユニットと、 前記キャッシュメモリから出力される前記情報に基づい
    て前記複数の演算ユニットが実行する命令を決定する手
    段とを有することを特徴とするプロセッサシステム。
  13. 【請求項13】データと命令とを格納するための主メモ
    リと、 前記命令の少なくとも一部と、前記命令の実行を制御す
    る情報とを格納し、前記複数の命令と前記情報とを出力
    するキャッシュメモリと、 前記命令を実行する複数の演算ユニットと、 前記キャッシュメモリから出力される前記情報に基づい
    て前記複数の命令の実行順序を制御する手段と、 前記主メモリと前記キャッシュメモリとの間にあり、前
    記主メモリに格納される前記命令を解析し、前記情報を
    前記キャッシュメモリに格納された前記命令に加える手
    段とを有することを特徴とするコンピュータシステム。
  14. 【請求項14】請求項13に記載のコンピュータシステム
    において、 前記実行順序を制御する手段は、前記情報に基づいて前
    記キャッシュメモリから出力された複数の命令を前記演
    算ユニットによって逐次実行するように制御することを
    特徴とするコンピュータシステム。
  15. 【請求項15】請求項13に記載のコンピュータシステム
    において、 前記実行順序を制御する手段は、前記情報に基づいて前
    記キャッシュメモリから出力された複数の命令を前記複
    数の演算ユニットによって並列に実行するように制御す
    ることを特徴とするコンピュータシステム。
  16. 【請求項16】複数の命令を格納するための主メモリ
    と、 前記複数の命令をプリデコードし、前記複数の命令の実
    行順序を制御する情報を生成するプリデコード手段と、 前記複数の命令と、前記情報とを格納するキャッシュメ
    モリとを有し、 前記キャッシュメモリは前記情報と前記命令とを出力す
    ることを特徴としたコンピュータシステム。
  17. 【請求項17】主メモリから出力される複数の命令から
    命令を実行するための情報を決定し、 前記複数の命令と共に前記情報をキャッシュメモリに格
    納し、 前記キャッシュメモリから出力される前記情報に基づい
    て並列に実行する命令を決定することを特徴とする命令
    処理方法。
  18. 【請求項18】請求項17に記載の命令処理方法におい
    て、 前記情報は前記複数の命令が競合せずに並列に実行でき
    ることを示す情報であることを特徴とする命令処理方
    法。
  19. 【請求項19】請求項18に記載の命令処理方法におい
    て、 前記情報によって示される競合はレジスタ競合であるこ
    とを特徴とする命令処理方法。
  20. 【請求項20】請求項18に記載の命令処理方法におい
    て、 前記情報によって示される競合はリソース競合であるこ
    とを特徴とする命令処理方法。
  21. 【請求項21】請求項20に記載の命令処理方法におい
    て、 前記リソース競合は同じ演算ユニットで演算されている
    複数の命令に関するものであることを特徴とする命令処
    理方法。
  22. 【請求項22】請求項20に記載の命令処理方法におい
    て、 前記リソース競合は同じロードユニットによる使用を呼
    び出すロード命令に関するものであることを特徴とする
    命令処理方法。
  23. 【請求項23】請求項20に記載の命令処理方法におい
    て、 前記リソース競合はロードユニットによる使用を呼び出
    すロード命令に関するものであることを特徴とする命令
    処理方法。
  24. 【請求項24】請求項20に記載の命令処理方法におい
    て、 前記リソース競合は同じシフタの使用を呼び出すシフト
    命令に関するものであることを特徴とする命令処理方
    法。
JP63283673A 1988-11-11 1988-11-11 プロセッサシステム、コンピュータシステム及び命令処理方法 Expired - Lifetime JP2810068B2 (ja)

Priority Applications (13)

Application Number Priority Date Filing Date Title
JP63283673A JP2810068B2 (ja) 1988-11-11 1988-11-11 プロセッサシステム、コンピュータシステム及び命令処理方法
US07/433,368 US5233694A (en) 1988-11-11 1989-11-08 Pipelined data processor capable of performing instruction fetch stages of a plurality of instructions simultaneously
DE68928340T DE68928340T2 (de) 1988-11-11 1989-11-10 Fliessband-Datenprozessor
EP89120881A EP0368332B1 (en) 1988-11-11 1989-11-10 Pipeline data processor
DE68929215T DE68929215T2 (de) 1988-11-11 1989-11-10 Datenprozessor
KR1019890016275A KR0149658B1 (ko) 1988-11-11 1989-11-10 데이터 처리장치 및 데이터 처리방법
EP99122100A EP0996057B1 (en) 1988-11-11 1989-11-10 Data processor with an instruction unit having a cache and a ROM
EP97103969A EP0782071B1 (en) 1988-11-11 1989-11-10 Data processor
DE68929483T DE68929483T2 (de) 1988-11-11 1989-11-10 Datenprozessor mit einer Befehlseinheit, die einen Cachespeicher und einen ROM aufweist.
US07/979,772 US6256726B1 (en) 1988-11-11 1992-11-20 Data processor for the parallel processing of a plurality of instructions
US08/149,932 US5404472A (en) 1988-11-11 1993-11-10 Parallel processing apparatus and method capable of switching parallel and successive processing modes
KR1019980007835A KR0160602B1 (ko) 1988-11-11 1998-03-10 데이터 처리장치
US09/853,769 US7424598B2 (en) 1988-11-11 2001-05-14 Data processor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP63283673A JP2810068B2 (ja) 1988-11-11 1988-11-11 プロセッサシステム、コンピュータシステム及び命令処理方法

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP09352657A Division JP3102399B2 (ja) 1997-12-22 1997-12-22 データ処理装置及び方法

Publications (2)

Publication Number Publication Date
JPH02130634A JPH02130634A (ja) 1990-05-18
JP2810068B2 true JP2810068B2 (ja) 1998-10-15

Family

ID=17668583

Family Applications (1)

Application Number Title Priority Date Filing Date
JP63283673A Expired - Lifetime JP2810068B2 (ja) 1988-11-11 1988-11-11 プロセッサシステム、コンピュータシステム及び命令処理方法

Country Status (5)

Country Link
US (3) US5233694A (ja)
EP (3) EP0996057B1 (ja)
JP (1) JP2810068B2 (ja)
KR (2) KR0149658B1 (ja)
DE (3) DE68929215T2 (ja)

Families Citing this family (100)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5504932A (en) * 1990-05-04 1996-04-02 International Business Machines Corporation System for executing scalar instructions in parallel based on control bits appended by compounding decoder
EP0459232B1 (en) * 1990-05-29 1998-12-09 National Semiconductor Corporation Partially decoded instruction cache and method therefor
JP2834292B2 (ja) * 1990-08-15 1998-12-09 株式会社日立製作所 データ・プロセッサ
JPH04111127A (ja) * 1990-08-31 1992-04-13 Toshiba Corp 演算処理装置
JP2532300B2 (ja) * 1990-10-17 1996-09-11 三菱電機株式会社 並列処理装置における命令供給装置
JP2682232B2 (ja) * 1990-11-21 1997-11-26 松下電器産業株式会社 浮動小数点演算処理装置
DE69130757T2 (de) * 1990-11-30 1999-07-29 Toshiba Kawasaki Kk Ausführungsvorrichtung für bedingte Verzweigungsbefehle
RU1804645C (ru) * 1991-03-27 1993-03-23 Институт Точной Механики И Вычислительной Техники Им.С.А.Лебедева Центральный процессор
US5488729A (en) * 1991-05-15 1996-01-30 Ross Technology, Inc. Central processing unit architecture with symmetric instruction scheduling to achieve multiple instruction launch and execution
JP3105197B2 (ja) 1991-06-24 2000-10-30 株式会社日立製作所 除算回路及び除算方法
JP2984463B2 (ja) * 1991-06-24 1999-11-29 株式会社日立製作所 マイクロコンピュータ
EP0945787A3 (en) * 1991-07-08 2008-12-31 Seiko Epson Corporation Risc microprocessor architecture implementing fast trap and exception state
US5961629A (en) * 1991-07-08 1999-10-05 Seiko Epson Corporation High performance, superscalar-based computer system with out-of-order instruction execution
EP0547247B1 (en) 1991-07-08 2001-04-04 Seiko Epson Corporation Extensible risc microprocessor architecture
US5493687A (en) 1991-07-08 1996-02-20 Seiko Epson Corporation RISC microprocessor architecture implementing multiple typed register sets
US5539911A (en) 1991-07-08 1996-07-23 Seiko Epson Corporation High-performance, superscalar-based computer system with out-of-order instruction execution
JP2875909B2 (ja) * 1991-07-12 1999-03-31 三菱電機株式会社 並列演算処理装置
JPH0546386A (ja) * 1991-08-13 1993-02-26 Hitachi Ltd データプロセツサ
GB9123271D0 (en) * 1991-11-02 1991-12-18 Int Computers Ltd Data processing system
EP0551090B1 (en) * 1992-01-06 1999-08-04 Hitachi, Ltd. Computer having a parallel operating capability
GB2263565B (en) * 1992-01-23 1995-08-30 Intel Corp Microprocessor with apparatus for parallel execution of instructions
DE4237417C2 (de) * 1992-03-25 1997-01-30 Hewlett Packard Co Datenverarbeitungssystem
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
WO1993020505A2 (en) 1992-03-31 1993-10-14 Seiko Epson Corporation Superscalar risc instruction scheduling
US5371864A (en) * 1992-04-09 1994-12-06 International Business Machines Corporation Apparatus for concurrent multiple instruction decode in variable length instruction set computer
DE69308548T2 (de) 1992-05-01 1997-06-12 Seiko Epson Corp Vorrichtung und verfahren zum befehlsabschluss in einem superskalaren prozessor.
US5416913A (en) * 1992-07-27 1995-05-16 Intel Corporation Method and apparatus for dependency checking in a multi-pipelined microprocessor
DE69329778T2 (de) * 1992-09-29 2001-04-26 Seiko Epson Corp System und verfahren zur handhabung von laden und/oder speichern in einem superskalar mikroprozessor
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
EP0682789B1 (en) 1992-12-31 1998-09-09 Seiko Epson Corporation System and method for register renaming
US5628021A (en) 1992-12-31 1997-05-06 Seiko Epson Corporation System and method for assigning tags to control instruction processing in a superscalar processor
JP3182591B2 (ja) * 1993-01-20 2001-07-03 株式会社日立製作所 マイクロプロセッサ
US5416911A (en) * 1993-02-02 1995-05-16 International Business Machines Corporation Performance enhancement for load multiple register instruction
US5560025A (en) * 1993-03-31 1996-09-24 Intel Corporation Entry allocation apparatus and method of same
US5673409A (en) * 1993-03-31 1997-09-30 Vlsi Technology, Inc. Self-defining instruction size
US5463748A (en) 1993-06-30 1995-10-31 Intel Corporation Instruction buffer for aligning instruction sets using boundary detection
CA2123442A1 (en) * 1993-09-20 1995-03-21 David S. Ray Multiple execution unit dispatch with instruction dependency
US5689672A (en) * 1993-10-29 1997-11-18 Advanced Micro Devices, Inc. Pre-decoded instruction cache and method therefor particularly suitable for variable byte-length instructions
DE69427734T2 (de) 1993-10-29 2002-05-23 Advanced Micro Devices Inc Linearadressierter Mikroprozessorcachespeicher
US5878245A (en) * 1993-10-29 1999-03-02 Advanced Micro Devices, Inc. High performance load/store functional unit and data cache
DE69434669T2 (de) * 1993-10-29 2006-10-12 Advanced Micro Devices, Inc., Sunnyvale Spekulative Befehlswarteschlange für Befehle mit variabler Byteslänge
DE69427265T2 (de) 1993-10-29 2002-05-02 Advanced Micro Devices Inc Superskalarbefehlsdekoder
US5630082A (en) * 1993-10-29 1997-05-13 Advanced Micro Devices, Inc. Apparatus and method for instruction queue scanning
US5604909A (en) * 1993-12-15 1997-02-18 Silicon Graphics Computer Systems, Inc. Apparatus for processing instructions in a computing system
US5974534A (en) * 1994-02-14 1999-10-26 Hewlett-Packard Company Predecoding and steering mechanism for instructions in a superscalar processor
US5559974A (en) * 1994-03-01 1996-09-24 Intel Corporation Decoder having independently loaded micro-alias and macro-alias registers accessible simultaneously by one micro-operation
US5630083A (en) * 1994-03-01 1997-05-13 Intel Corporation Decoder for decoding multiple instructions in parallel
US5586277A (en) * 1994-03-01 1996-12-17 Intel Corporation Method for parallel steering of fixed length fields containing a variable length instruction from an instruction buffer to parallel decoders
US5608885A (en) * 1994-03-01 1997-03-04 Intel Corporation Method for handling instructions from a branch prior to instruction decoding in a computer which executes variable-length instructions
US5673427A (en) * 1994-03-01 1997-09-30 Intel Corporation Packing valid micro operations received from a parallel decoder into adjacent locations of an output queue
US5600806A (en) * 1994-03-01 1997-02-04 Intel Corporation Method and apparatus for aligning an instruction boundary in variable length macroinstructions with an instruction buffer
US5566298A (en) * 1994-03-01 1996-10-15 Intel Corporation Method for state recovery during assist and restart in a decoder having an alias mechanism
US5537629A (en) * 1994-03-01 1996-07-16 Intel Corporation Decoder for single cycle decoding of single prefixes in variable length instructions
US5758116A (en) * 1994-09-30 1998-05-26 Intel Corporation Instruction length decoder for generating output length indicia to identity boundaries between variable length instructions
US5901302A (en) * 1995-01-25 1999-05-04 Advanced Micro Devices, Inc. Superscalar microprocessor having symmetrical, fixed issue positions each configured to execute a particular subset of instructions
US6237082B1 (en) 1995-01-25 2001-05-22 Advanced Micro Devices, Inc. Reorder buffer configured to allocate storage for instruction results corresponding to predefined maximum number of concurrently receivable instructions independent of a number of instructions received
JP3180175B2 (ja) * 1995-02-13 2001-06-25 株式会社日立製作所 命令レベルの並列処理制御方法およびプロセッサ
US5737550A (en) * 1995-03-28 1998-04-07 Advanced Micro Devices, Inc. Cache memory to processor bus interface and method thereof
US5859991A (en) * 1995-06-07 1999-01-12 Advanced Micro Devices, Inc. Parallel and scalable method for identifying valid instructions and a superscalar microprocessor including an instruction scanning unit employing the method
US5867701A (en) * 1995-06-12 1999-02-02 Intel Corporation System for inserting a supplemental micro-operation flow into a macroinstruction-generated micro-operation flow
US5926642A (en) 1995-10-06 1999-07-20 Advanced Micro Devices, Inc. RISC86 instruction set
US5706489A (en) * 1995-10-18 1998-01-06 International Business Machines Corporation Method for a CPU to utilize a parallel instruction execution processing facility for assisting in the processing of the accessed data
US5796974A (en) * 1995-11-07 1998-08-18 Advanced Micro Devices, Inc. Microcode patching apparatus and method
US5815724A (en) * 1996-03-29 1998-09-29 Intel Corporation Method and apparatus for controlling power consumption in a microprocessor
US6131152A (en) * 1996-05-15 2000-10-10 Philips Electronics North America Corporation Planar cache layout and instruction stream therefor
US5862398A (en) * 1996-05-15 1999-01-19 Philips Electronics North America Corporation Compiler generating swizzled instructions usable in a simplified cache layout
WO1997043715A2 (en) * 1996-05-15 1997-11-20 Philips Electronics N.V. Processor with an instruction cache
JPH1011289A (ja) * 1996-06-19 1998-01-16 Mitsubishi Electric Corp 並列処理プロセッサにおける命令数拡張方法および並列処理プロセッサ
US5890219A (en) * 1996-11-27 1999-03-30 Emc Corporation Redundant writing of data to cached storage system
US5890207A (en) * 1996-11-27 1999-03-30 Emc Corporation High performance integrated cached storage device
US5884055A (en) * 1996-11-27 1999-03-16 Emc Corporation Method and apparatus including a shared resource and multiple processors running a common control program accessing the shared resource
US5852727A (en) * 1997-03-10 1998-12-22 Advanced Micro Devices, Inc. Instruction scanning unit for locating instructions via parallel scanning of start and end byte information
TW373149B (en) 1997-07-02 1999-11-01 Matsushita Electric Ind Co Ltd Program control method
US6467035B2 (en) * 1997-09-08 2002-10-15 Agere Systems Guardian Corp. System and method for performing table look-ups using a multiple data fetch architecture
JP2954119B2 (ja) * 1997-11-26 1999-09-27 日本電気株式会社 命令実行サイクル可変回路
DE19802364A1 (de) * 1998-01-22 1999-07-29 Siemens Ag Vorrichtung und Verfahren zur Steuerung von Prozessen auf einem Computersystem
DE19819531C1 (de) * 1998-04-30 1999-12-02 Siemens Ag RISC-Prozessor mit einer Debug-Schnittstelleneinheit
US6233690B1 (en) * 1998-09-17 2001-05-15 Intel Corporation Mechanism for saving power on long latency stalls
US6668316B1 (en) * 1999-02-17 2003-12-23 Elbrus International Limited Method and apparatus for conflict-free execution of integer and floating-point operations with a common register file
EP1050809A1 (en) * 1999-05-03 2000-11-08 STMicroelectronics SA Computer instruction dependency
DE69938621D1 (de) * 1999-05-03 2008-06-12 St Microelectronics Sa Befehlausgabe in einem Rechner
US6442677B1 (en) * 1999-06-10 2002-08-27 Advanced Micro Devices, Inc. Apparatus and method for superforwarding load operands in a microprocessor
US7149878B1 (en) * 2000-10-30 2006-12-12 Mips Technologies, Inc. Changing instruction set architecture mode by comparison of current instruction execution address with boundary address register values
US7711926B2 (en) 2001-04-18 2010-05-04 Mips Technologies, Inc. Mapping system and method for instruction set processing
US6826681B2 (en) 2001-06-18 2004-11-30 Mips Technologies, Inc. Instruction specified register value saving in allocated caller stack or not yet allocated callee stack
US7107439B2 (en) * 2001-08-10 2006-09-12 Mips Technologies, Inc. System and method of controlling software decompression through exceptions
EP1387253B1 (en) * 2002-07-31 2017-09-20 Texas Instruments Incorporated Dynamic translation and execution of instructions within a processor
US7366352B2 (en) * 2003-03-20 2008-04-29 International Business Machines Corporation Method and apparatus for performing fast closest match in pattern recognition
US7698539B1 (en) * 2003-07-16 2010-04-13 Banning John P System and method of instruction modification
US6996916B2 (en) * 2004-03-09 2006-02-14 Helen Of Troy Limited Variable ion hair styling appliances
US20050224091A1 (en) * 2004-04-08 2005-10-13 Helen Of Troy Limited Ion curling iron and straightener
EP1821176A1 (en) * 2004-11-12 2007-08-22 JustSystems Corporation Data processing device and data processing method
EP3925997A3 (en) 2005-04-22 2022-04-20 Mitsubishi Chemical Corporation Biomass-resource-derived polyester and production process thereof
US8145888B2 (en) * 2006-09-06 2012-03-27 Silicon Hive B.V. Data processing circuit with a plurality of instruction modes, method of operating such a data circuit and scheduling method for such a data circuit
US9513959B2 (en) * 2007-11-21 2016-12-06 Arm Limited Contention management for a hardware transactional memory
US20090138890A1 (en) * 2007-11-21 2009-05-28 Arm Limited Contention management for a hardware transactional memory
SE536462C2 (sv) * 2011-10-18 2013-11-26 Mediatek Sweden Ab Digital signalprocessor och basbandskommunikationsanordning
JP6106499B2 (ja) * 2013-04-11 2017-03-29 株式会社日立製作所 データ反映方法
US11599358B1 (en) 2021-08-12 2023-03-07 Tenstorrent Inc. Pre-staged instruction registers for variable length instruction set machine
KR102449203B1 (ko) 2022-03-08 2022-09-29 주식회사 제이비티 안전상태정보 관리 방법

Family Cites Families (41)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3573853A (en) * 1968-12-04 1971-04-06 Texas Instruments Inc Look-ahead control for operation of program loops
US3614745A (en) * 1969-09-15 1971-10-19 Ibm Apparatus and method in a multiple operand stream computing system for identifying the specification of multitasks situations and controlling the execution thereof
US3771138A (en) * 1971-08-31 1973-11-06 Ibm Apparatus and method for serializing instructions from two independent instruction streams
US4521850A (en) * 1977-12-30 1985-06-04 Honeywell Information Systems Inc. Instruction buffer associated with a cache memory unit
JPS6043535B2 (ja) 1979-12-29 1985-09-28 富士通株式会社 情報処理装置
US4616331A (en) * 1980-02-25 1986-10-07 Tsuneo Kinoshita Information processing system consisting of an arithmetic control unit formed into a one-chip typed by application of a highly-integrated semiconductor device
JPS6028015B2 (ja) * 1980-08-28 1985-07-02 日本電気株式会社 情報処理装置
US4437149A (en) 1980-11-17 1984-03-13 International Business Machines Corporation Cache memory architecture with decoding
DE3174130D1 (en) * 1981-08-19 1986-04-24 Ibm Improved microprocessor
DE3176193D1 (en) * 1981-12-29 1987-06-19 Ibm Control unit connectable to a pair of memories having different speeds
JPS5932045A (ja) * 1982-08-16 1984-02-21 Hitachi Ltd 情報処理装置
US4928223A (en) * 1982-10-06 1990-05-22 Fairchild Semiconductor Corporation Floating point microprocessor with directable two level microinstructions
US4546428A (en) * 1983-03-08 1985-10-08 International Telephone & Telegraph Corporation Associative array with transversal horizontal multiplexers
US4594655A (en) * 1983-03-14 1986-06-10 International Business Machines Corporation (k)-Instructions-at-a-time pipelined processor for parallel execution of inherently sequential instructions
JPS59186062A (ja) * 1983-04-07 1984-10-22 Nec Corp 分散形プロセツサシステム
JPS6015746A (ja) * 1983-07-08 1985-01-26 Hitachi Ltd デ−タ処理装置
JPS60120439A (ja) * 1983-12-05 1985-06-27 Nec Corp 演算処理装置
JPS60136872A (ja) 1983-12-26 1985-07-20 Hitachi Ltd ベクトル処理装置
US4599708A (en) * 1983-12-30 1986-07-08 International Business Machines Corporation Method and structure for machine data storage with simultaneous write and read
AU553416B2 (en) * 1984-02-24 1986-07-17 Fujitsu Limited Pipeline processing
US4873629A (en) * 1984-06-20 1989-10-10 Convex Computer Corporation Instruction processing unit for computer
US4620275A (en) * 1984-06-20 1986-10-28 Wallach Steven J Computer system
JPS619734A (ja) * 1984-06-26 1986-01-17 Nec Corp プロセツサ制御方式
US4766564A (en) * 1984-08-13 1988-08-23 International Business Machines Corporation Dual putaway/bypass busses for multiple arithmetic units
US4677545A (en) * 1984-10-12 1987-06-30 American Telephone And Telegraph Company Microprocessor having macro-rom and main program queues
US4794517A (en) * 1985-04-15 1988-12-27 International Business Machines Corporation Three phased pipelined signal processor
US4789925A (en) * 1985-07-31 1988-12-06 Unisys Corporation Vector data logical usage conflict detection
EP0239081B1 (en) 1986-03-26 1995-09-06 Hitachi, Ltd. Pipelined data processor capable of decoding and executing plural instructions in parallel
US4722050A (en) * 1986-03-27 1988-01-26 Hewlett-Packard Company Method and apparatus for facilitating instruction processing of a digital computer
US4825360A (en) * 1986-07-30 1989-04-25 Symbolics, Inc. System and method for parallel processing with mostly functional languages
US4766566A (en) * 1986-08-18 1988-08-23 International Business Machines Corp. Performance enhancement scheme for a RISC type VLSI processor using dual execution units for parallel instruction processing
JPS6373332A (ja) 1986-09-16 1988-04-02 Nec Corp マイクロプログラム制御方式
JPS63131230A (ja) * 1986-11-21 1988-06-03 Hitachi Ltd 情報処理装置
JPH0810430B2 (ja) 1986-11-28 1996-01-31 株式会社日立製作所 情報処理装置
US4811296A (en) * 1987-05-15 1989-03-07 Analog Devices, Inc. Multi-port register file with flow-through of data
US5101341A (en) * 1988-08-25 1992-03-31 Edgcore Technology, Inc. Pipelined system for reducing instruction access time by accumulating predecoded instruction bits a FIFO
US5072364A (en) * 1989-05-24 1991-12-10 Tandem Computers Incorporated Method and apparatus for recovering from an incorrect branch prediction in a processor that executes a family of instructions in parallel
DE69032812T2 (de) * 1989-07-07 1999-04-29 Hitachi Ltd Vorrichtung und Verfahren zur parallelen Verarbeitung
JPH03288246A (ja) 1990-04-04 1991-12-18 Matsushita Electric Ind Co Ltd 命令キャッシュメモリ
US5214763A (en) 1990-05-10 1993-05-25 International Business Machines Corporation Digital computer system capable of processing two or more instructions in parallel and having a coche and instruction compounding mechanism
EP0459232B1 (en) 1990-05-29 1998-12-09 National Semiconductor Corporation Partially decoded instruction cache and method therefor

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
DTS-EDITION SIMP=S63 *

Also Published As

Publication number Publication date
EP0996057B1 (en) 2003-08-13
DE68929483T2 (de) 2004-07-01
KR900008394A (ko) 1990-06-04
EP0782071B1 (en) 2000-05-24
JPH02130634A (ja) 1990-05-18
US6256726B1 (en) 2001-07-03
KR0160602B1 (ko) 1999-10-01
EP0782071A3 (en) 1997-07-30
KR0149658B1 (ko) 1998-10-15
EP0782071A2 (en) 1997-07-02
EP0996057A1 (en) 2000-04-26
EP0368332A3 (en) 1992-07-15
DE68929483D1 (de) 2003-09-18
EP0368332A2 (en) 1990-05-16
US20010021970A1 (en) 2001-09-13
US5233694A (en) 1993-08-03
DE68929215D1 (de) 2000-06-29
DE68929215T2 (de) 2001-01-25
DE68928340T2 (de) 1998-02-12
DE68928340D1 (de) 1997-10-30
US7424598B2 (en) 2008-09-09
EP0368332B1 (en) 1997-09-24

Similar Documents

Publication Publication Date Title
JP2810068B2 (ja) プロセッサシステム、コンピュータシステム及び命令処理方法
JP2550213B2 (ja) 並列処理装置および並列処理方法
US5649145A (en) Data processor processing a jump instruction
US5404552A (en) Pipeline risc processing unit with improved efficiency when handling data dependency
JP2834837B2 (ja) プログラマブルコントローラ
JP2918631B2 (ja) デコーダ
US5398321A (en) Microcode generation for a scalable compound instruction set machine
US4897787A (en) Data processing system
JPH0926878A (ja) データ処理装置
US5041968A (en) Reduced instruction set computer (RISC) type microprocessor executing instruction functions indicating data location for arithmetic operations and result location
EP0279953A2 (en) Computer system having mixed macrocode and microcode instruction execution
US5363490A (en) Apparatus for and method of conditionally aborting an instruction within a pipelined architecture
JP3102399B2 (ja) データ処理装置及び方法
JP3147884B2 (ja) 記憶装置及び情報処理装置
US5187782A (en) Data processing system
US6266764B1 (en) Program controller for switching between first program and second program
JP2636821B2 (ja) 並列処理装置
JP2785820B2 (ja) 並列処理装置
JP2927281B2 (ja) 並列処理装置
JP2636074B2 (ja) マイクロプロセッサ
JPH03291724A (ja) マイクロプログラム制御方式
JPH04264954A (ja) 複合命令計算機
JPH0425937A (ja) 情報処理装置
JPH041821A (ja) パイプライン型マイクロ命令制御方式

Legal Events

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

Free format text: PAYMENT UNTIL: 20080731

Year of fee payment: 10

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

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: 20080731

Year of fee payment: 10

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

Free format text: PAYMENT UNTIL: 20080731

Year of fee payment: 10

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

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

Free format text: PAYMENT UNTIL: 20080731

Year of fee payment: 10

R360 Written notification for declining of transfer of rights

Free format text: JAPANESE INTERMEDIATE CODE: R360

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

Free format text: PAYMENT UNTIL: 20080731

Year of fee payment: 10

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

Free format text: PAYMENT UNTIL: 20080731

Year of fee payment: 10

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

Free format text: PAYMENT UNTIL: 20080731

Year of fee payment: 10

R370 Written measure of declining of transfer procedure

Free format text: JAPANESE INTERMEDIATE CODE: R370

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

Free format text: PAYMENT UNTIL: 20080731

Year of fee payment: 10

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

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

Free format text: PAYMENT UNTIL: 20080731

Year of fee payment: 10

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: 20080731

Year of fee payment: 10

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

Free format text: PAYMENT UNTIL: 20080731

Year of fee payment: 10

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

Free format text: PAYMENT UNTIL: 20090731

Year of fee payment: 11

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

Free format text: PAYMENT UNTIL: 20090731

Year of fee payment: 11