JP4613168B2 - 命令整列の方法および装置 - Google Patents
命令整列の方法および装置 Download PDFInfo
- Publication number
- JP4613168B2 JP4613168B2 JP2006533397A JP2006533397A JP4613168B2 JP 4613168 B2 JP4613168 B2 JP 4613168B2 JP 2006533397 A JP2006533397 A JP 2006533397A JP 2006533397 A JP2006533397 A JP 2006533397A JP 4613168 B2 JP4613168 B2 JP 4613168B2
- Authority
- JP
- Japan
- Prior art keywords
- instruction
- pointer
- buffer
- current
- instructions
- 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
Links
- 238000000034 method Methods 0.000 title claims description 14
- 239000000872 buffer Substances 0.000 claims description 265
- 230000004044 response Effects 0.000 claims description 20
- 238000010586 diagram Methods 0.000 description 12
- 230000002411 adverse Effects 0.000 description 1
- 239000012141 concentrate Substances 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 235000019800 disodium phosphate Nutrition 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30145—Instruction analysis, e.g. decoding, instruction word fields
- G06F9/30149—Instruction analysis, e.g. decoding, instruction word fields of variable length instructions
- G06F9/30152—Determining start or end of instruction; determining instruction length
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3802—Instruction prefetching
- G06F9/3816—Instruction alignment, e.g. cache line crossing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3818—Decoding for concurrent execution
- G06F9/382—Pipelined decoding, e.g. using predecoding
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)
- Executing Machine-Instructions (AREA)
Description
本発明はディジタルプロセッサに関し、より具体的には、命令キャッシュからフェッチされた可変長命令を整列させるため、および整列命令を命令デコーダに提供するための方法および装置に関する。
ディジタル信号コンピュータ、またはディジタル信号プロセッサ(DSP)は、例えば、高速フーリエ変換、ディジタルフィルタ、画像処理、無線システムにおける信号処理、および音声認識などのディジタル信号処理応用に対する性能を最適化するように設計された、特殊目的コンピュータである。ディジタル信号プロセッサ応用は、通常は、リアルタイム動作、高い割込み速度および大規模な数値演算を特徴とする。さらに、ディジタル信号プロセッサ応用は、メモリアクセス動作が集中する傾向、および大量のデータの入出力を必要とする傾向がある。ディジタル信号プロセッサアーキテクチャは、通常、そのような演算を効率的に実行するために最適化されている。ディジタル信号プロセッサ応用に加えて、DSPは、マイクロコントローラ動作を実行することが要求されることが多い。マイクロコントローラ動作は、データの処理を伴うが、通常、大規模な演算を必要とすることはない。
本発明の第1の観点によれば、パイプラインアーキテクチャを有するディジタルプロセッサにおける、命令整列ユニットが提供される。この命令整列ユニットは、パイプライン段階nにおける現命令バッファ(current instruction buffer)および次命令バッファ(next instruction buffer)、パイプライン段階n+1における整列命令バッファ(aligned instruction buffer)、メモリまたは前記次命令バッファから、前記現命令バッファに命令をロードするとともに、前記メモリから前記次命令バッファに命令をロードするための命令フェッチ論理、および前記命令に包含される命令長情報に応答して前記現命令バッファおよび前記次命令バッファから前記整列命令バッファへの命令の転送を制御するための、整列制御論理を含む。現命令バッファ、次命令バッファおよび整列命令バッファには、それぞれ、命令語を保持するための複数のレジスタを含めることができる。各命令には、1つまたは2つ以上の命令語を含めることができる。
本発明をより詳しく理解するために、参照により本明細書に組み入れてある、添付の図面を参照する。
ディジタル信号プロセッサ(DSP)の一態様のブロック図を図1に示してある。ディジタル信号プロセッサは、計算コア10およびメモリ12を含む。計算コア10は、DSPの中央プロセッサである。コア10およびメモリ12は、下記のパイプランアーキテクチャを有することができる。この態様において、コア10は、命令フェッチユニット20、命令デコードユニット22、ロード/ストアユニット24、実行ユニット30およびシステムユニット32を含み、システムユニット32には分岐解消ユニット(branch resolution unit)を含めてもよい。
第2の例においては、16ビット命令が、現命令バッファ110から整列命令バッファ120へ連続サイクルで転送され、新規にフェッチされた命令は、現命令バッファ110における16ビット命令が使用されるまで、次命令バッファ112および命令キュー44にロードされる。
図5に示すように、制御バッファ210からのV16有効ビットは、プリデコーダ160a、160b、160c、160dの出力と組み合わされ、命令キュー44からのV16有効ビットは、プリデコーダ170a、170b、170c、170dの出力と組み合わされる。プリデコーダの出力およびV16有効ビットは、mux180a、180b、180c、180dを介して、それぞれ命令長(Instruction length)レジスタ190a、190b、190c、190dに供給される。
図6に示す、ポインタ生成論理200の動作は、図8A〜8Eの例を参照して理解することができる。図8Aの例において、現命令ポインタCur_ptrは、レジスタ110bおよび対応する命令長レジスタ190bを指す。したがって、図6におけるバス270上で現命令ポインタは、mux250〜264のそれぞれの2番目の入力を選択し、それによって命令長レジスタ190bを選択する。命令長レジスタ190bは、16ビットの命令長を指示する。命令長レジスタ190bにおける16ビット位置は、mux254の2番目の入力に供給されるので、mux254は、次命令ポインタに論理1を与える。mux252および256〜264は、次の命令ポインタに論理ゼロを提供するが、この理由は、muxの2番目の入力が論理ゼロに固定されているため、または命令長レジスタ190bにおける選択された位置が論理ゼロであるためのいずれかである。結果として、次命令ポインタNxt_ptrはレジスタ110cを指す。
Claims (24)
- 複数の連続するパイプライン段階を備えたパイプラインアーキテクチャを有するディジタルプロセッサにおいて、命令を整列するための命令整列ユニットであって、
現命令バッファおよび次命令バッファを有するパイプライン段階n、
整列命令バッファを有するパイプライン段階n+1、
メモリまたは次命令バッファから、現命令バッファに命令をロードするとともに、メモリから次命令バッファに命令をロードするための命令フェッチ論理、および
命令に包含される命令長情報に応答して現命令バッファおよび次命令バッファから整列命令バッファへの命令の転送を制御するための整列制御論理を含み、
整列制御論理は、
現命令バッファおよび次命令バッファ中の命令の命令長を提供するためのプリデコーダと、
複数の命令長レジスタのそれぞれが現命令バッファを構成するそれぞれのレジスタに対応する、プリデコードされた命令の命令長を保持するための複数の命令長レジスタと、
命令長情報に応答して現命令バッファから、または命令が次命令バッファ中にわたる場合には現命令バッファおよび次命令バッファから、整列命令バッファへの命令の転送を制御するための現命令ポインタを生成する、ポインタ生成論理とを含み、
ポインタ生成論理は、現命令ポインタの位置に応答して命令長レジスタから次命令ポインタの位置を選択するための次ポインタ選択論理、および該次ポインタ選択論理によって選択された次命令ポインタの位置から次のクロックサイクルにおける現命令ポインタの位置を選択する現ポインタ選択論理を含み、
現ポインタ選択論理は、次命令ポインタの低位ビットがゼロのときに設定される状態ビットを含む状態ラッチ、および状態ビットが設定されている場合には次命令ポインタの上位ビットを現命令ポインタとして採用する選択論理を含む、前記命令整列ユニット。 - 現命令バッファ、次命令バッファおよび整列命令バッファは、それぞれ、複数の命令語を保持するためのレジスタを含むとともに、命令のそれぞれが、1つまたは2つ以上の命令語を含む、請求項1に記載の命令整列ユニット。
- プリデコーダは、メモリからの命令の命令長を提供する第1のプリデコーダ、および次命令レジスタ内の命令の命令長を提供する第2のプリデコーダを含み、整列制御論理は、第1のプリデコーダ、第2のプリデコーダ、または命令長レジスタを選択して、選択された命令長情報を命令長レジスタに供給するマルチプレクサをさらに含む、請求項1に記載の命令整列ユニット。
- 複数の命令長レジスタのそれぞれの命令長レジスタが、対応する命令語の有効性を符号化するビットを含む、請求項3に記載の命令整列ユニット。
- パイプライン段階nが、プリデコーダおよび命令長レジスタを含み、パイプライン段階n+1が、ポインタ生成論理を含むものである、請求項1に記載の命令整列ユニット。
- ポインタ生成論理が、分岐命令に応答して新ポインタを現命令ポインタとして選択する、新ポインタ選択論理をさらに含む、請求項1に記載の命令整列ユニット。
- ポインタ生成論理が、1組の値の各値が次命令ポインタおよび現命令ポインタの選択を制御するための1ビットによって表わされる、論理回路を使用する、請求項1に記載の命令整列ユニット。
- ポインタ生成論理が、1組の値の各値が現命令バッファおよび次命令バッファから整列命令バッファへの命令の転送を制御する1ビットによって表わされる、論理回路をさらに使用する、請求項1に記載の命令整列ユニット。
- 現命令バッファおよび次命令バッファが一杯のときに、命令キューが、メモリからフェッチされた命令を保持する、請求項1に記載の命令整列ユニット。
- パイプラインアーキテクチャを有するディジタルプロセッサにおいて、命令を整列する方法であって、
メモリまたは次命令バッファから現命令バッファに命令をロードすること、
現命令バッファが一杯である場合に、メモリから次命令バッファに命令をロードすること、および
命令に含まれている命令長情報に応答して、現命令バッファおよび次命令バッファから整列バッファへの命令の転送を制御することを含み、
命令の転送を制御することは、現命令バッファおよび次命令バッファ内の命令をプリデコードして命令長情報を提供すること、および命令長情報に応答して、現命令バッファおよび次命令バッファから整列命令バッファへの命令の転送を制御するための、現命令ポインタを生成することを含み、
現命令ポインタを生成することは、命令長情報から現命令ポインタの位置に応じて次命令ポインタの位置を選択すること、および該次命令ポインタの位置に基づき次のクロックサイクルにおける現命令ポインタの位置を選択することを含み、
現命令ポインタの位置を選択することは、次命令ポインタの低位ビットがゼロである場合に、次命令ポインタの高位ビットを現命令ポインタとして採用することを含む、前記方法。 - 現命令バッファ、次命令バッファおよび整列命令バッファは、それぞれ、複数の命令語を保持するためのレジスタを含み、命令のそれぞれは、1つまたは2つ以上の命令語を含み、かつ現命令バッファおよび次命令バッファから整列命令バッファへの命令の転送を制御することが、現命令バッファおよび次命令バッファのレジスタから整列命令バッファのレジスタへの命令語の転送を制御することを含む、請求項10に記載の方法。
- 現命令ポインタを生成することが、分岐命令に応答して新ポインタを現命令ポインタとして選択することをさらに含む、請求項10に記載の方法。
- 現命令バッファおよび次命令バッファから整列命令バッファへの命令の転送を制御することが、1組の値の各値が1ビットで表わされる、論理回路を使用することを含む、請求項10に記載の方法。
- 現命令バッファおよび次命令バッファが一杯のときに、メモリからフェッチされる命令を命令キュー内に保持することをさらに含む、請求項10に記載の方法。
- パイプラインアーキテクチャを有するディジタルプロセッサにおける命令を整列するための、現命令バッファ、次命令バッファおよび整列命令バッファを含む命令整列ユニットにおける、整列制御論理であって、
第1のパイプライン段階において、現命令バッファおよび次命令バッファ中の命令の命令長情報を提供するプリデコーダ、およびプリデコードされた命令長情報を保持するための命令長レジスタ、ならびに
第2のパイプライン段階において、命令長情報に応答して、現命令バッファから、または命令が次命令バッファ中に亘る場合には、現命令バッファおよび次命令バッファから、整列命令バッファへの命令の転送を制御するための現命令ポインタを生成するための、ポインタ生成論理を含み、
ポインタ生成論理は、現命令ポインタの位置に応答して、命令長レジスタから次命令ポインタの位置を選択するための次ポインタ選択論理、および該次ポインタ選択論理によって選択された次命令ポインタの位置から次のクロックサイクルにおける現命令ポインタの位置を選択するための現ポインタ選択論理を含み、
現ポインタ選択論理が、次命令ポインタの低位ビットがゼロである場合に設定される状態ビットを含む状態ラッチ、および状態ビットが設定されている場合に、現命令ポインタとして、次命令ポインタの上位ビットを採用する次ポインタ選択論理を含む、前記整列制御論理。 - 複数の命令長レジスタのうちのそれぞれの命令長レジスタが、対応する命令語の有効性をコード化する有効ビットを含む、請求項15に記載の整列制御論理。
- ポインタ生成論理が、分岐命令に応答して新ポインタを現命令ポインタとして選択する新ポインタ選択論理をさらに含む、請求項15に記載の整列制御論理。
- ポインタ生成論理が、1組の値における各値が次命令ポインタおよび現命令ポインタの選択を制御するための1ビットによって表わされる、論理回路を使用する、請求項15に記載の整列制御論理。
- パイプラインアーキテクチャを有するディジタルプロセッサにおいて命令を整列する命令整列システムであって、
命令キュー、現命令バッファおよび次命令バッファを有するパイプライン段階n、
整列命令バッファを有するパイプライン段階n+1、
命令キャッシュまたは次命令バッファから現命令バッファに命令をロードするとともに、命令キャッシュまたは命令キューから次命令バッファに命令をロードするための命令フェッチ論理、および
命令に含まれた命令長情報に応答して、現命令バッファおよび次命令バッファから整列命令バッファへの命令の転送を制御するための整列制御論理を含み、
整列制御論理は、現命令バッファおよび次命令バッファ中の命令の命令長情報を提供するプリデコーダ、複数の命令長レジスタであって、それぞれの命令長レジスタはプリデコードされた命令の命令長情報を保持するものであって、現命令バッファにおける各レジスタに対応する命令長レジスタ、および命令長情報に応答して、現命令バッファから、または命令が次命令バッファ中に亘る場合には、現命令バッファおよび次命令バッファから整列命令バッファへの命令の転送を制御するための現命令ポインタを生成する、ポインタ生成論理とを含み、
ポインタ生成論理は、現命令ポインタの位置に応答して命令長レジスタから次命令ポインタの位置を選択するための次ポインタ選択論理、および該次ポインタ選択論理によって選択された次命令ポインタの位置から次のクロックサイクルにおける現命令ポインタの位置を選択する現ポインタ選択論理を含み、
現ポインタ選択論理は、次命令ポインタの低位ビットがゼロのときに設定される状態ビットを含む状態ラッチ、および状態ビットが設定されている場合に現命令ポインタとして次命令ポインタの上位ビットを採用する選択論理を含む、前記命令整列システム。 - 現命令バッファ、次命令バッファおよび整列命令バッファは、それぞれ、複数の命令語を保持するためのレジスタを含み、命令のそれぞれは、1つまたは2つ以上の命令語を含む、請求項19に記載の命令整列システム。
- プリデコーダは、命令キューからの命令の命令長情報を提供する第1のプリデコーダ、および次命令レジスタ内の命令の命令長情報を提供する第2のプリデコーダを含み、整列制御論理は、第1のプリデコーダ、第2のプリデコーダ、または命令長レジスタを選択して、選択された命令長情報を命令長レジスタに供給する、マルチプレクサをさらに含む、請求項19に記載の命令整列システム。
- ポインタ生成論理が、分岐命令に応答して新ポインタを現命令ポインタとして選択する、新ポインタ選択論理をさらに含む、請求項19に記載の命令整列システム。
- ポインタ生成論理が、1組の値の各値が次命令ポインタおよび現命令ポインタの選択を制御するための1ビットによって表わされる、論理回路を使用する、請求項19に記載の命令整列システム。
- ポインタ生成論理が、1組の値の各値が現命令バッファおよび次命令バッファから整列命令バッファへの命令の転送を制御する1ビットによって表わされる、論理回路をさらに使用する、請求項19に記載の命令整列システム。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/442,329 US7134000B2 (en) | 2003-05-21 | 2003-05-21 | Methods and apparatus for instruction alignment including current instruction pointer logic responsive to instruction length information |
PCT/US2004/016408 WO2004104822A1 (en) | 2003-05-21 | 2004-05-20 | Methods and apparatus for instruction alignment |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2007500404A JP2007500404A (ja) | 2007-01-11 |
JP2007500404A5 JP2007500404A5 (ja) | 2007-07-05 |
JP4613168B2 true JP4613168B2 (ja) | 2011-01-12 |
Family
ID=33450168
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006533397A Expired - Fee Related JP4613168B2 (ja) | 2003-05-21 | 2004-05-20 | 命令整列の方法および装置 |
Country Status (7)
Country | Link |
---|---|
US (1) | US7134000B2 (ja) |
EP (1) | EP1625492B1 (ja) |
JP (1) | JP4613168B2 (ja) |
CN (1) | CN100356318C (ja) |
DE (1) | DE602004020884D1 (ja) |
TW (1) | TWI283828B (ja) |
WO (1) | WO2004104822A1 (ja) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7350059B2 (en) * | 2004-05-21 | 2008-03-25 | Via Technologies, Inc. | Managing stack transfers in a register-based processor |
US7263621B2 (en) * | 2004-11-15 | 2007-08-28 | Via Technologies, Inc. | System for reducing power consumption in a microprocessor having multiple instruction decoders that are coupled to selectors receiving their own output as feedback |
US20060155961A1 (en) * | 2005-01-06 | 2006-07-13 | International Business Machines Corporation | Apparatus and method for reformatting instructions before reaching a dispatch point in a superscalar processor |
US8578134B1 (en) * | 2005-04-04 | 2013-11-05 | Globalfoundries Inc. | System and method for aligning change-of-flow instructions in an instruction buffer |
GB2482710A (en) * | 2010-08-12 | 2012-02-15 | Advanced Risc Mach Ltd | Enabling stack access alignment checking independently of other memory access alignment checking |
JP5968463B2 (ja) * | 2012-01-06 | 2016-08-10 | インテル コーポレイション | データを別の記憶装置にコピーせずにデータソースによりバッファに格納されたデータを処理するためのポインタのスワッピング |
CN103593169B (zh) * | 2013-11-29 | 2017-09-05 | 深圳中微电科技有限公司 | 一种多线程处理器中的指令输出装置、方法及其处理器 |
US11086627B2 (en) * | 2019-09-27 | 2021-08-10 | Intel Corporation | Instruction length decoder system and method |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5463748A (en) | 1993-06-30 | 1995-10-31 | Intel Corporation | Instruction buffer for aligning instruction sets using boundary detection |
US5835967A (en) * | 1993-10-18 | 1998-11-10 | Cyrix Corporation | Adjusting prefetch size based on source of prefetch address |
SG47981A1 (en) * | 1994-03-01 | 1998-04-17 | Intel Corp | Pipeline process of instructions in a computer system |
US5832249A (en) | 1995-01-25 | 1998-11-03 | Advanced Micro Devices, Inc. | High performance superscalar alignment unit |
US5668984A (en) | 1995-02-27 | 1997-09-16 | International Business Machines Corporation | Variable stage load path and method of operation |
US5819056A (en) * | 1995-10-06 | 1998-10-06 | Advanced Micro Devices, Inc. | Instruction buffer organization method and system |
US6093213A (en) * | 1995-10-06 | 2000-07-25 | Advanced Micro Devices, Inc. | Flexible implementation of a system management mode (SMM) in a processor |
US5896543A (en) | 1996-01-25 | 1999-04-20 | Analog Devices, Inc. | Digital signal processor architecture |
US5845099A (en) | 1996-06-28 | 1998-12-01 | Intel Corporation | Length detecting unit for parallel processing of variable sequential instructions |
US5870576A (en) | 1996-12-16 | 1999-02-09 | Hewlett-Packard Company | Method and apparatus for storing and expanding variable-length program instructions upon detection of a miss condition within an instruction cache containing pointers to compressed instructions for wide instruction word processor architectures |
US5978899A (en) * | 1997-12-23 | 1999-11-02 | Intel Corporation | Apparatus and method for parallel processing and self-timed serial marking of variable length instructions |
US6061779A (en) | 1998-01-16 | 2000-05-09 | Analog Devices, Inc. | Digital signal processor having data alignment buffer for performing unaligned data accesses |
US6314509B1 (en) | 1998-12-03 | 2001-11-06 | Sun Microsystems, Inc. | Efficient method for fetching instructions having a non-power of two size |
JP3490007B2 (ja) * | 1998-12-17 | 2004-01-26 | 富士通株式会社 | 命令制御装置 |
US6694425B1 (en) | 2000-05-04 | 2004-02-17 | International Business Machines Corporation | Selective flush of shared and other pipeline stages in a multithread processor |
-
2003
- 2003-05-21 US US10/442,329 patent/US7134000B2/en not_active Expired - Lifetime
-
2004
- 2004-05-20 DE DE602004020884T patent/DE602004020884D1/de not_active Expired - Lifetime
- 2004-05-20 EP EP04753266A patent/EP1625492B1/en not_active Expired - Fee Related
- 2004-05-20 JP JP2006533397A patent/JP4613168B2/ja not_active Expired - Fee Related
- 2004-05-20 WO PCT/US2004/016408 patent/WO2004104822A1/en active Application Filing
- 2004-05-20 CN CNB2004800139945A patent/CN100356318C/zh not_active Expired - Fee Related
- 2004-05-24 TW TW093114616A patent/TWI283828B/zh not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
EP1625492A1 (en) | 2006-02-15 |
TW200539024A (en) | 2005-12-01 |
CN100356318C (zh) | 2007-12-19 |
WO2004104822A1 (en) | 2004-12-02 |
TWI283828B (en) | 2007-07-11 |
DE602004020884D1 (de) | 2009-06-10 |
EP1625492B1 (en) | 2009-04-29 |
US20040236926A1 (en) | 2004-11-25 |
US7134000B2 (en) | 2006-11-07 |
JP2007500404A (ja) | 2007-01-11 |
CN1791856A (zh) | 2006-06-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5233694A (en) | Pipelined data processor capable of performing instruction fetch stages of a plurality of instructions simultaneously | |
EP0427245B1 (en) | Data processor capable of simultaneously executing two instructions | |
US5954811A (en) | Digital signal processor architecture | |
US5638526A (en) | Apparatus for operand data bypassing having previous operand storage register connected between arithmetic input selector and arithmetic unit | |
US6128721A (en) | Temporary pipeline register file for a superpipelined superscalar processor | |
US11474944B2 (en) | Zero latency prefetching in caches | |
JP2000222206A (ja) | データ処理装置 | |
JPH04313121A (ja) | インストラクションメモリ装置 | |
JPH07168714A (ja) | ディジタル信号処理プロセッサおよびそれを用いて命令を実行する方法 | |
JPH0477925A (ja) | マイクロプロセッサ | |
KR100266424B1 (ko) | 롬(rom)용량을 저감한 데이타 프로세서 | |
WO1998006042A1 (en) | Wide instruction unpack method and apparatus | |
EP2461246B1 (en) | Early conditional selection of an operand | |
JP4613168B2 (ja) | 命令整列の方法および装置 | |
US4685058A (en) | Two-stage pipelined execution unit and control stores | |
US20060095746A1 (en) | Branch predictor, processor and branch prediction method | |
KR100974401B1 (ko) | 주소 레지스터의 내용을 스와핑하기 위한 방법 및 장치 | |
US20020161987A1 (en) | System and method including distributed instruction buffers holding a second instruction form | |
US6115805A (en) | Non-aligned double word fetch buffer | |
WO2020243044A1 (en) | Processor, system and method of storing register data elements. | |
JPS63168730A (ja) | 分岐命令処理装置 | |
JP2004110248A (ja) | データ処理装置 | |
KR20000010200A (ko) | 명령어 디코딩 경로를 줄인 명령어 디코딩 장치 | |
JPH0277840A (ja) | データ処理装置 | |
JPH08171489A (ja) | プログラム格納用メモリ及びそれを用いたデータ処理装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20070516 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20070516 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20091117 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20091201 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20100301 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20100308 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100325 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20100511 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100811 |
|
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: 20100928 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20101018 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131022 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |