JP3830236B2 - クイック・デコード命令を用いるための方法およびデータ処理システム - Google Patents

クイック・デコード命令を用いるための方法およびデータ処理システム Download PDF

Info

Publication number
JP3830236B2
JP3830236B2 JP20545597A JP20545597A JP3830236B2 JP 3830236 B2 JP3830236 B2 JP 3830236B2 JP 20545597 A JP20545597 A JP 20545597A JP 20545597 A JP20545597 A JP 20545597A JP 3830236 B2 JP3830236 B2 JP 3830236B2
Authority
JP
Japan
Prior art keywords
instruction
memory location
data processor
execution
meaning
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
JP20545597A
Other languages
English (en)
Other versions
JPH1091434A (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.)
NXP USA Inc
Original Assignee
NXP USA Inc
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 NXP USA Inc filed Critical NXP USA Inc
Publication of JPH1091434A publication Critical patent/JPH1091434A/ja
Application granted granted Critical
Publication of JP3830236B2 publication Critical patent/JP3830236B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • 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/3812Instruction prefetching with instruction modification, e.g. store into instruction stream
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0875Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches with dedicated cache, e.g. instruction or stack
    • 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/3017Runtime instruction translation, e.g. macros
    • G06F9/30174Runtime instruction translation, e.g. macros for non-native instruction set, e.g. Javabyte, legacy code
    • 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/30181Instruction operation extension or modification
    • G06F9/30185Instruction operation extension or modification according to one or more bits in the instruction, e.g. prefix, sub-opcode

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Advance Control (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Executing Machine-Instructions (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、一般的に命令のデコードおよび実行に関し、特に命令の条件付きデコード処理に関するものである。
【0002】
【従来の技術】
JAVA(登録商標)バイト・コード・インタプリタ(JAVA byte code interpreter)は、通常バージョンおよびクイック・バージョンを有する多数の命令を有する。最初にこれらの命令の1つの通常オプコード(opcode)を見つけたとき、多数のチェックが起動される。これらのチェックは各々、通常は時間の形状のある量のオーバーヘッドを伴う。通常命令に対応するクイック命令は、関連するオーバーヘッドの全てを発生させることなく、命令の機能を実行する。
【0003】
ジャワ・コード・インタプリタが、クイック・バージョンを有する命令オプコードを実行する場合、図1の従来技術に示すように、この命令を含むメモリ位置を別のクイック・バージョンで上書きする。その結果、以降このメモリ位置から取り込んだ場合、クイック・バージョンを実行し、したがって、このオプコードの通常バージョンが必要とするチェックを繰り返さない。
【0004】
【発明が解決しようとする課題】
このような既存のコードの無視に伴う問題の1つに、変更された命令をメモリにライト・バック(write back)しなければならないために、オーバーヘッドが更に増加することがあげられる。キャッシュを用いる場合、キャッシュ内の命令が変更されるだけでなく、ある時点において、キャッシュ・ラインにフラッシュ(flush) が行われた場合に、このキャッシュ・ライン全体をメモリにライト・バックしなければならない場合もある。キャッシュの構成によっては、キャッシュに変化が起こったときにはいつでも、外部メモリも更新し、キャッシュと一致させなければならないこともある。これは、ライト・スルー・モード(write through mode)として知られている。変更されたコードをメモリに再度移動させなければならないことにより、メモリ帯域の使用が増大し、このためにシステム動作全体の低速化を招く。加えて、既存のオプコードを上書きする必要性のために、追加のステップが必要となり、システム性能の低下に至る可能性がある。したがって、通常のオプコードをクイック・オプコードで上書きする必要性をなくすことができれば、有益であろう。
【0005】
【課題を解決するための手段】
概して言えば、本発明の好適実施例においては、キャッシュ・ラインは変更可能命令(modifiable instruction)を含む。この変更可能命令は、中央演算装置(CPU)によってデコードされ、CPUが変更可能命令に関連する機能を実行する。変更可能命令を実行した後、CPUは、変更可能命令の実行結果に基づいて、命令変更ビットをセットする。後続の変更可能命令配置プロセスの間、CPUデコード部(212)は、命令変更指示子がセットされたという事実に基づいて、変更された命令を変更可能命令で自動的に置き換える。命令変更指示子を使用することにより、変更可能命令を他の実施例で無効にする必要はもはやなくなり、これによってシステムの時間および帯域が節約される。
【0006】
【発明の実施の形態】
図2は、メモリ220およびキャッシュ230に結合されたCPU210を、ブロック図状で示す。キャッシュ230は、キャッシュ・ライン0ないしキャッシュ・ラインNから成る。各キャッシュ・ラインには、命令変更指示子が関連付けられている。図2では、これは、キャッシュ・ラインの1ビットの拡張部として示されている。
【0007】
小型のプログラム・サイズを保存しつつ、効率的なプログラムの実行を達成するために、適応型オプコード(adaptive opcode) が用いられている。通常、適応型オプコードが用いられるのは、オプコードに関連する命令の機能的な実施態様が、実行時のシステムまたは状態情報に依存する場合である。JAVAは、適応型オプコードを用いる言語の一例である。例えば、JAVAは、ロード(LOAD)命令およびロード・クイック(LOADQ)命令を有する。命令LOADは、プログラムの実行中に、適応的に変更され、LOADQ命令となることができる。例をあげて説明すると、JAVAのLOADは、実行時に計算するためにアクセスすべきデータの供給源へのオフセットを必要とする。一旦計算したなら、その供給源、したがってオフセットは、通常変化せず、したがって、後続のアクセス時におけるクイック実行のために必要な供給源情報を維持するLOADQ命令がある。従来技術のシステムでこれは行うには、図1に示したように、LOAD命令をLOADQ命令で上書きしていた。
【0008】
本発明の一実施例では、コード変更は、命令変更指示子を維持することによって行われる。図2を参照して、メモリ220は、図示しない供給源から複数のオプコードを受信する。複数のオプコードは、適応型オプコードを含む。適応型オプコードを含むメモリ220内のメモリ位置への第1のアクセスの間、処理システム200は、キャッシュ230からキャッシュ・ミスを受信し、実行すべき命令がキャッシュ内にないことを示す。キャッシュ・ミスを受信すると、処理システム200は、メモリ220から実行すべき命令を取り込み、キャッシュ230内のキャッシュ・ラインの1つを充填する。キャッシュ230内のキャッシュ・ラインが充填された場合、命令変更指示子ビットはクリアされる。
【0009】
命令変更指示子をクリアすることにより、CPU210は、デコード部212を通じて、取り込まれたこの指示子に関連する命令が変更されていないことを知る。こうして、CPC210は、実行部211を通じて、通常命令即ちLOADを実行する。CPU210による通常命令の実行によって、命令変更指示子ビットがセットされ、この命令位置への後続のコールにおいては、適応型オプコードがコールされることが示される。例えば、JAVAの場合、命令変更ビットがセットされた場合、LOAD命令はLOADQ命令と交換することができる。
【0010】
キャッシュ・ラインがフラッシュされる場合、他のデータで置き換えられたことを示し、命令変更指示子をメモリ220に格納する必要はない。これは、ライト・バック(write back)またはライト・スルー(write through) 処理を実行しなければならない場合のオーバーヘッドを防止する。一般的に言えば、最低使用頻度キャッシュ・ラインにフラッシュが行われるが、フラッシュされるラインは頻繁には用いられていないことを示す。したがって、相当な時間量が節約される訳ではないので、ライトバック処理を実行する必要はない。
【0011】
尚、命令変更指示子(ビット)は、必ずしもキャッシュ・ラインの一部でなくてもよいことを注記しておく。重要なのは、各キャッシュ・ラインには命令変更ビットが関連付けられていることのみである。また、実行される適応型オプコードに2つ以上の可能な代替物がある場合、命令変更指示子も2ビット以上としてよいことを注記しておく。
【0012】
他の実施例では、CPU210は、各キャッシュ・ラインの命令変更指示子部分とは別個の変更アレイを含む。命令フローが所与のキャッシュ・ラインに渡った場合、CPU210の変更アレイを初期化して、各命令に関連する命令変更指示子の状態を示す。所与のキャッシュ・ライン内の各命令に対して、1つの命令変更指示子がある。したがって、現キャッシュ・ラインから実行が継続する限り、CPU210の変更アレイのみが更新され、各命令変更ビットの現ステータスを示す。制御が現キャッシュ・ライン外に流れた後にのみ、次のキャッシュ・ラインへの移行、あるいはフロー遠回り命令(flow indirection instruction)によって、CPU210のアレイ内の情報は適切なキャッシュ・ラインに転送される。
【0013】
これは、所与の命令が変更される場合においても、CPU210およびキャッシュ230間のバス上の帯域使用を防止するという利点がある。CPU210の変更アレイ内に現キャッシュ・ラインの命令変更指示子を保持することにより、CPUからキャッシュ230への更新は、キャッシュ・ライン毎に1回だけ行えばよい。
【0014】
図3は、本発明による方法300を示す。方法300は、矩形の実行ブロック301ないし308,および菱形の判断ブロック310,311を含む。ステップ301において、命令の取り込みから開始し、実行すべき命令を取り込む。次に、ステップ310において、取り込んだ命令が現在キャッシュ内にあるか否かについて判定を行う。この命令がキャッシュ内にある場合、フローはステップ311に進む。逆に、現在キャッシュ内にはない場合、フローはステップ304に進む。ステップ311において、当該命令に関連する命令変更ビットがセットされているか否かについて判定を行う。対応する命令変更ビットがセットされている場合、フローはステップ302に進み、クイック・デコードを実行する。本実施例では、単一ビットのみを用いて通常命令およびクイック命令間の判定を行っているが、ステップ311は、多数の変更された命令の1つを使用すべきか否かに関する判定も可能であることを注記しておく。加えて、命令変更ビットは、実際には、実際の命令ワードのビットの1つとして内蔵する場合もある。
【0015】
ステップ311において指示子ビットがセットされていないと判定された場合、フローはステップ303に進む。ステップ303において、通常命令のデコードが開始する。次に、ステップ307において、ステップ303におけるデコードの完了時に、命令変更指示子ビットがセットされる。ステップ310において、取り込まれた命令がキャッシュにないと判定された場合、フローはステップ304に進む。ステップ304において、メモリからの命令取り込みを完了し、メモリからキャッシュにロードする。次に、ステップ305において、命令変更指示子をクリアする。別の実施例では、命令変更子もメモリから受信することができ、この場合、命令変更子がロードされると、現命令が別のデコードのために使用可能か否かが示される。次に、ステップ306において、通常命令のデコードが行われる。次に、ステップ308において、命令変更指示子ビットをセットする。
【0016】
本発明の一実施例について記載したが、記載した実施例には多数の変更が可能であることは理解されよう。例えば、キャッシュ・ライン・フラッシュ機構を変更し、変更したキャッシュ・ラインをメモリにライト・バックすることによって、元の命令に対してクイック命令の使用を反映させることも可能である。更に、端的に論じたように、先の説明では、1ビットの情報だけ余分にキャッシュ・ラインに追加することを前提とした。プログラム実行状態または以前のオプコードを含むより多くの情報を保持して、適応型オプコードを作成し、その実行を他の素子の状態によって制御することも可能である。可能な例として、「タッチ・ロード」処理(touch load operation)を有するループがあげられよう。タッチ・ロード処理とは、キャッシュ・ラインを初期状態において作成し、メモリからキャッシュ・ラインをロードする必要性をなくするものである。この場合、ループの第1の通過において、タッチ・ロードを、以降のループによる実行における実際のロードと置き換えることが望ましい。他の代替案としては、通常機能および非選択機能(no-opt function) 間で切り替わる命令を有することがあげられよう。これによって、非選択に置き換わる単一ビットに応じて、キャッシュ・ライン・レベルにおいて、命令の入力および出力の切り替えが可能となる。
【図面の簡単な説明】
【図1】従来技術によって変更されたRAMロケーションを示すブロック図。
【図2】本発明によるプロセッサ・システム200を示すブロック図。
【図3】本発明による方法300を示すフロー・チャート。
【符号の説明】
200 処理システム
210 CPU
211 実行部
212 デコード部
213 変更アレイ
220 メモリ
230 キャッシュ

Claims (7)

  1. データ処理システム(200)であって:
    メモリ内において複数の状態を有する命令毎のビットフィールド;および
    中央演算装置(210);
    を具備し、
    前記中央演算装置は前記ビットフィールドのステータスに基づいて、複数の意味を有するオプコードを認識し、前記複数の意味の内の第1の意味はロード命令の意味を含み、かつ前記複数の意味の内の第2の意味はロード・クイック命令の意味を含み;
    前記ビットフィールドは前記オプコードに関連付けられ;
    前記中央演算装置は、前記オプコードの実行中に、自動的に前記ビットフィールドを変更することを特徴とするデータ処理システム(200)。
  2. 命令実行方法であって:
    a)中央演算装置による実行のために命令を取り込む段階;
    b)前記命令に関連して格納されたビットフィールドを検査する段階であって、複数のビットフィールド・ステータスを有する前記ビットフィールドを検査する段階;
    c)前記複数のビットフィールド状態に基づいて、複数の命令の意味の内どの1つを前記命令に割り当てるかを決定する段階であって、前記複数の命令の意味の内の第1の命令の意味はロード命令の意味を含み、かつ前記複数の命令の意味の内の第2の命令の意味はロード・クイック命令の意味を含む段階;および
    d)前記命令の実行の一部として、前記ビットフィールドを自動的に更新する段階;
    を具備することを特徴とする方法。
  3. データ処理システム(200)であって:
    メモリ内に複数の状態を有する命令毎のビットフィールド;および
    中央演算装置(210);
    を具備し、
    前記中央演算装置は前記ビットフィールドのステータスに基づいて、複数の意味を有するオプコードを認識し、前記複数の意味の内の第1の意味はロード命令の意味を含み、かつ前記複数の意味の内の第2の意味はロード・クイック命令の意味を含み;
    前記ビットフィールドは前記オプコードに関連付けられ;
    前記中央演算装置は、第1回目の前記オプコードの実行の間に、自動的に前記ビットフィールドを変更することを特徴とするデータ処理システム(200)。
  4. データ処理システム(200)であって:
    元の命令を含むメモリ位置を有するメモリ;
    第1状態および第2状態を有する命令変更指示子;
    実行部(211);および
    前記メモリに結合され前記元の命令を受信し、かつ前記実行部(211)に結合され命令の実行を行うデコード部(212);
    を具備し、
    前記デコード部(212)は、前記命令変更指示子が前記第1状態にある場合、前記元の命令を前記実行部(211)に供給し、前記元の命令はロード命令を含み;
    前記デコード部(212)は、前記命令変更指示子が前記第2状態にある場合、別の命令を前記実行部(211)に供給し、前記別の命令はロード・クイック命令を含むことを特徴とするデータ処理システム(200)。
  5. データプロセッサ命令を実行する方法であって:
    第1のデータプロセッサ命令の表現を第1のメモリ位置にロードする段階;
    第2のメモリ位置を第1状態および第2状態の内の1つにセットする段階;
    前記第1のメモリ位置における前記第1のデータプロセッサ命令の表現を処理しかつ前記第2のメモリ位置が前記第1状態にあることが判定された場合に前記第1のデータプロセッサ命令を実行する段階であって、前記第1のデータプロセッサ命令はロード命令を含む段階;および
    前記第1のメモリ位置における前記第1のデータプロセッサ命令の表現を処理しかつ前記第2のメモリ位置が前記第2状態にあることが判定された場合に第2のデータプロセッサ命令を実行する段階であって、前記第2のデータプロセッサ命令はロード・クイック命令を含む段階、
    を具備することを特徴とするデータプロセッサ命令を実行する方法。
  6. データプロセッサ命令を実行する方法であって:
    あるデータプロセッサ命令の表現を第1のメモリ位置にロードする段階;
    第2のメモリ位置を第1状態および第2状態の内の1つにセットする段階であって、前記第2のメモリ位置は前記第1のメモリ位置とは独立である段階;
    前記第1のメモリ位置における前記データプロセッサ命令の表現を処理しかつ前記第2のメモリ位置が前記第1状態にあることが判定された場合に前記データプロセッサ命令を実行して第1機能および第2機能を行なう段階;および
    前記第1のメモリ位置における前記データプロセッサ命令の表現を処理しかつ前記第2のメモリ位置が前記第2状態にあることが判定された場合に第2のデータプロセッサ命令を実行して前記第2機能を行ないかつ前記第1機能は行なわない段階、
    を具備することを特徴とするデータプロセッサ命令を実行する方法。
  7. データ処理システムであって:
    第1の命令位置を含む複数の命令位置を含むキャッシュ・ライン;
    前記第1の命令位置に排他的に関連することが可能なメモリ位置;
    実行部;
    前記第1の命令位置、前記実行部、および前記メモリ位置に結合されたデコード部であって、前記メモリ位置は第1の値を含むよう決定され、前記デコード部は前記第1の命令位置に格納された命令を実行のために前記実行部に提供し、前記メモリ位置が第2の値を含むことが判定された場合に、前記デコード部は前記第1の命令位置に格納された命令を使用して前記命令の変更された命令を実行のために前記実行部に提供するもの、
    を具備することを特徴とするデータ処理システム。
JP20545597A 1996-07-22 1997-07-15 クイック・デコード命令を用いるための方法およびデータ処理システム Expired - Fee Related JP3830236B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US08/684,717 US6523095B1 (en) 1996-07-22 1996-07-22 Method and data processing system for using quick decode instructions
US684717 1996-07-22

Publications (2)

Publication Number Publication Date
JPH1091434A JPH1091434A (ja) 1998-04-10
JP3830236B2 true JP3830236B2 (ja) 2006-10-04

Family

ID=24749266

Family Applications (1)

Application Number Title Priority Date Filing Date
JP20545597A Expired - Fee Related JP3830236B2 (ja) 1996-07-22 1997-07-15 クイック・デコード命令を用いるための方法およびデータ処理システム

Country Status (3)

Country Link
US (1) US6523095B1 (ja)
JP (1) JP3830236B2 (ja)
KR (1) KR100678354B1 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9098297B2 (en) * 1997-05-08 2015-08-04 Nvidia Corporation Hardware accelerator for an object-oriented programming language
US20090240928A1 (en) * 2008-03-18 2009-09-24 Freescale Semiconductor, Inc. Change in instruction behavior within code block based on program action external thereto
US9851990B2 (en) * 2015-01-30 2017-12-26 American Megatrends, Inc. Method and system for performing on-demand data write through based on UPS power status
US9886387B2 (en) 2015-01-30 2018-02-06 American Megatrends, Inc. Method and system for performing on-demand data write through based on virtual machine types

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4910656A (en) * 1987-09-21 1990-03-20 Motorola, Inc. Bus master having selective burst initiation
DE68924306T2 (de) * 1988-06-27 1996-05-09 Digital Equipment Corp Mehrprozessorrechneranordnungen mit gemeinsamem Speicher und privaten Cache-Speichern.
US5155824A (en) * 1989-05-15 1992-10-13 Motorola, Inc. System for transferring selected data words between main memory and cache with multiple data words and multiple dirty bits for each address
JPH0625984B2 (ja) * 1990-02-20 1994-04-06 インターナシヨナル・ビジネス・マシーンズ・コーポレーシヨン マルチプロセツサ・システム
US5426765A (en) * 1991-08-30 1995-06-20 Compaq Computer Corporation Multiprocessor cache abitration
GB2260628A (en) * 1991-10-11 1993-04-21 Intel Corp Line buffer for cache memory
US5428761A (en) * 1992-03-12 1995-06-27 Digital Equipment Corporation System for achieving atomic non-sequential multi-word operations in shared memory
JP3242161B2 (ja) * 1992-09-11 2001-12-25 株式会社日立製作所 データプロセッサ
US5572700A (en) * 1993-04-30 1996-11-05 Intel Corporation Cache access controller and method for permitting caching of information in selected cache lines
US5555392A (en) * 1993-10-01 1996-09-10 Intel Corporation Method and apparatus for a line based non-blocking data cache

Also Published As

Publication number Publication date
US6523095B1 (en) 2003-02-18
KR980010777A (ko) 1998-04-30
JPH1091434A (ja) 1998-04-10
KR100678354B1 (ko) 2007-11-12

Similar Documents

Publication Publication Date Title
JP3771273B2 (ja) 述語レジスタ・セットをレストアする方法および装置
US20200364054A1 (en) Processor subroutine cache
US5926646A (en) Context-dependent memory-mapped registers for transparent expansion of a register file
JP2539199B2 (ja) デジタルプロセッサ制御装置
US6823447B2 (en) Software hint to improve the branch target prediction accuracy
US5193157A (en) Piplined system includes a selector for loading condition code either from first or second condition code registers to program counter
US7234025B2 (en) Microprocessor with repeat prefetch instruction
US6076156A (en) Instruction redefinition using model specific registers
US6230259B1 (en) Transparent extended state save
US5940876A (en) Stride instruction for fetching data separated by a stride amount
KR100777772B1 (ko) 연산 처리 장치, 정보 처리 장치 및 레지스터 파일의 제어방법
US5958045A (en) Start of access instruction configured to indicate an access mode for fetching memory operands in a microprocessor
US4541047A (en) Pipelined data processing system
US20040181654A1 (en) Low power branch prediction target buffer
US5835972A (en) Method and apparatus for optimization of data writes
US5951671A (en) Sharing instruction predecode information in a multiprocessor system
JP3830236B2 (ja) クイック・デコード命令を用いるための方法およびデータ処理システム
US5761718A (en) Conditional data pre-fetching in a device controller
US8484446B2 (en) Microprocessor saving data stored in register and register saving method
US6647487B1 (en) Apparatus and method for shift register rate control of microprocessor instruction prefetches
US5625808A (en) Read only store as part of cache store for storing frequently used millicode instructions
US5421026A (en) Data processor for processing instruction after conditional branch instruction at high speed
US6192449B1 (en) Apparatus and method for optimizing performance of a cache memory in a data processing system
KR20020086214A (ko) 마이크로프로세서
US6308262B1 (en) System and method for efficient processing of instructions using control unit to select operations

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040715

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20040715

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20040715

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20041217

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20050425

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20050715

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20051115

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20060215

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20060223

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060512

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20060613

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20060711

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20090721

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20100721

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20110721

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20110721

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20120721

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20120721

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20130721

Year of fee payment: 7

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees