JP2009530753A - 命令プリフェッチバッファ深さの動的制御を有するデータプロセッサとその方法 - Google Patents
命令プリフェッチバッファ深さの動的制御を有するデータプロセッサとその方法 Download PDFInfo
- Publication number
- JP2009530753A JP2009530753A JP2009501622A JP2009501622A JP2009530753A JP 2009530753 A JP2009530753 A JP 2009530753A JP 2009501622 A JP2009501622 A JP 2009501622A JP 2009501622 A JP2009501622 A JP 2009501622A JP 2009530753 A JP2009530753 A JP 2009530753A
- Authority
- JP
- Japan
- Prior art keywords
- prefetch buffer
- instruction
- data processor
- control unit
- maximum depth
- 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.)
- Granted
Links
- 239000000872 buffer Substances 0.000 title claims abstract description 139
- 238000000034 method Methods 0.000 title claims description 18
- 235000003642 hunger Nutrition 0.000 claims description 44
- 230000037351 starvation Effects 0.000 claims description 44
- 230000004044 response Effects 0.000 claims description 13
- 238000012544 monitoring process Methods 0.000 claims description 5
- 230000007423 decrease Effects 0.000 claims description 4
- 206010016531 fetishism Diseases 0.000 claims 1
- 238000012545 processing Methods 0.000 description 7
- 238000013519 translation Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 4
- 210000003813 thumb Anatomy 0.000 description 4
- 238000006243 chemical reaction Methods 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 230000002457 bidirectional effect Effects 0.000 description 2
- 230000002411 adverse Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 230000001360 synchronised effect 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/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3802—Instruction prefetching
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0862—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches with prefetch
-
- 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
-
- 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
-
- 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/3814—Implementation provisions of instruction buffers, e.g. prefetch buffer; banks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/60—Details of cache memory
- G06F2212/6022—Using a prefetch buffer or dedicated prefetch cache
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Advance Control (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
Description
本開示は、一般にデータプロセッサに関し、より詳細にはデータプロセッサの命令プリフェッチバッファを管理するシステム及び方法に関する。
[背景]
一般に、パーソナルコンピュータ、携帯情報端末、携帯及びデジタル電話並びに他のプロセッサベース装置などの計算システムは、コンピュータ可読命令を処理するためマイクロプロセッサの形式によるデータプロセッサを含む。マイクロプロセッサは、コンピュータ可読命令を復号化する命令デコーダと、復号化された命令を実行する1以上の命令ユニットとを有するシングルチップデータプロセッサである。実行ユニットは、アプリケーションプログラムが機能するためのアクションの大部分を実行する。
[発明の詳細な説明]
本発明の一特徴によると、データプロセッサはプリフェッチバッファとフェッチコントロールユニットとを有する、プリフェッチバッファは、複数のラインを有し、命令を格納可能な複数のラインのライン数を規定する可変的な最大深さを有する。フェッチコントロールユニットは、プリフェッチバッファの複数のラインの少なくとも1つをモニタし、データプロセッサの状態に応じてプリフェッチバッファの可変的な最大深さを調整するため、プリフェッチバッファに接続される。
Claims (23)
- 複数のラインから構成されるプリフェッチバッファであって、命令を格納可能な前記複数のラインのライン数を規定する可変的な最大深さを有するプリフェッチバッファと、
前記プリフェッチバッファに接続され、前記プリフェッチバッファの前記複数のラインの少なくとも1つをモニタし、データプロセッサの状態に応じて前記プリフェッチバッファの可変的な最大深さを調整するフェッチコントロールユニットと、
を有するデータプロセッサ。 - 前記フェッチコントロールユニットは、前記可変的な最大深さにより決定される前記プリフェッチバッファの第1ラインをモニタし、前記第1ラインがエンプティであるとき命令フェッチを開始する、請求項1記載のデータプロセッサ。
- 前記フェッチコントロールユニットは、前記プリフェッチバッファの可変的な最大深さを第1の所定の深さ又は第2の所定の深さに設定するよう構成される、請求項1記載のデータプロセッサ。
- 前記フェチコントロールユニットは、命令タイプに応じて前記プリフェッチバッファの可変的な最大深さを設定する、請求項1記載のデータプロセッサ。
- 前記フェッチコントロールユニットは、命令タイプに応じて前記プリフェッチバッファの可変的な最大深さを第1の所定の深さ又は第2の所定の深さに設定する、請求項1記載のデータプロセッサ。
- 前記命令タイプは、32ビット命令と16ビット命令の1つから構成される、請求項5記載のデータプロセッサ。
- 前記命令タイプは、32ビット命令と可変長命令の1つから構成される、請求項5記載のデータプロセッサ。
- 前記フェッチコントロールユニットは、前記プリフェッチバッファの可変的な最大深さを動的に調整する、請求項1記載のデータプロセッサ。
- 前記フェッチコントロールユニットは、前記プリフェッチバッファのスタベーション状態に応答して前記可変的な最大深さを増加させる、請求項8記載のデータプロセッサ。
- 前記スタベーション状態は、閾値を超える命令スタベーションの頻度から構成され、
前記フェッチコントロールユニットは、前記スタベーション状態に応じて前記可変的な最大深さを増加させる、請求項9記載のデータプロセッサ。 - 前記スタベーション状態は、前記プリフェッチバッファがスタベーションの近傍に平均的にないか否かから構成され、
前記フェッチコントロールユニットは、前記スタベーション状態に応じて前記可変的な最大深さを減少させる、請求項9記載のデータプロセッサ。 - 前記フェッチコントロールユニットは、前記プリフェッチバッファの複数のラインの状態をモニタすることによって、前記プリフェッチバッファがスタベーションの近傍に平均的にあるか判断する、請求項11記載のデータプロセッサ。
- データプロセッサが複数のモードの選択されたモードにより動作していることを示す命令プリフェッチコントロール値を格納するレジスタと、
複数のラインから構成されるプリフェッチバッファであって、命令を格納可能な前記複数のラインのライン数を規定する可変的な最大深さを有するプリフェッチバッファと、
前記プリフェッチバッファと前記レジスタとに接続されるフェッチコントロールユニットであって、前記命令プリフェッチコントロール値に応じて前記可変的な最大深さを制御するフェッチコントロールユニットと、
を有するデータプロセッサ。 - 前記命令プリフェッチコントロール値が第1の値又は第2の値であることに応じて、前記フェッチコントロールユニットは、前記プリフェッチバッファの可変的な最大深さを第1の所定の深さ又は第2の所定の深さにそれぞれ設定する、請求項13記載のデータプロセッサ。
- 前記命令プリフェッチコントロール値が所定の値であることに応じて、前記フェッチコントロールユニットは、前記プリフェッチバッファの可変的な最大深さを、現在の命令タイプにより少なくとも部分的に決定される第1の所定の深さと第2の所定の深さの1つに設定する、請求項13記載のデータプロセッサ。
- 前記命令プリフェッチコントロール値が所定の値であることに応じて、前記フェッチコントロールユニットは、前記プリフェッチバッファの可変的な最大深さを動的に設定する、請求項13記載のデータプロセッサ。
- 前記プリフェッチバッファのスタベーション状態に応じて、前記フェッチコントロールユニットは、前記プリフェッチバッファの可変的な最大深さを動的に増減する、請求項16記載のデータプロセッサ。
- 複数のラインを備えたプリフェッチバッファを有するデータプロセッサにおいて使用される方法であって、
前記プリフェッチバッファの可変的な最大深さを命令を格納可能な前記複数のラインのライン数として設定するステップと、
前記可変的な最大深さを用いて命令を前記プリフェッチバッファにフェッチするステップと、
前記データプロセッサの状態に応じて前記可変的な最大深さを動的に調整するステップと、
を有する方法。 - 前記動的に調整するステップは、
前記プリフェッチバッファのスタベーション状態をモニタし、
前記プリフェッチバッファのスタベーションレートが閾値を超える場合、前記可変的な最大深さを増加させ、
前記プリフェッチバッファがスタベーションの近傍に平均的にない場合、前記可変的な最大深さを減少させる、
ことから構成される、請求項18記載の方法。 - 前記プリフェッチバッファから命令を出力するステップと、
前記データプロセッサによる実行用に出力される命令を復号化するステップと、
をさらに有する、請求項19記載の方法。 - 複数のラインを備えるプリフェッチバッファを有するデータプロセッサにおいて使用される方法であって、
前記プリフェッチバッファの可変的な最大深さを第1の所定の深さに設定するステップと、
第1命令タイプの命令を前記プリフェッチバッファにフェッチするステップと、
その後、第2命令タイプの命令を前記プリフェッチバッファにフェッチするステップと、
前記第2命令タイプの命令をフェッチすることに応じて、前記プリフェッチバッファの可変的な最大深さを前記第1の所定の深さから第2の所定の深さに変更するステップと、
を有する方法。 - 前記第1命令タイプの命令をフェッチするステップは、32ビット命令をフェッチすることから構成され、
前記第2命令タイプの命令をフェッチするステップは、16ビット命令をフェッチすることから構成される、請求項21記載の方法。 - 前記第1命令タイプの命令をフェッチするステップは、32ビット命令をフェッチすることから構成され、
前記第2命令タイプの命令をフェッチするステップは、可変長命令をフェッチすることから構成される、請求項21記載の方法。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/385,463 | 2006-03-21 | ||
US11/385,463 US9304773B2 (en) | 2006-03-21 | 2006-03-21 | Data processor having dynamic control of instruction prefetch buffer depth and method therefor |
PCT/US2007/062651 WO2007109395A2 (en) | 2006-03-21 | 2007-02-23 | Data processor having dynamic control of instruction prefetch buffer depth and method therefor |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2009530753A true JP2009530753A (ja) | 2009-08-27 |
JP2009530753A5 JP2009530753A5 (ja) | 2010-04-08 |
JP5279701B2 JP5279701B2 (ja) | 2013-09-04 |
Family
ID=38523133
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009501622A Active JP5279701B2 (ja) | 2006-03-21 | 2007-02-23 | 命令プリフェッチバッファ深さの動的制御を有するデータプロセッサとその方法 |
Country Status (5)
Country | Link |
---|---|
US (1) | US9304773B2 (ja) |
EP (1) | EP1999574B1 (ja) |
JP (1) | JP5279701B2 (ja) |
KR (1) | KR20080102213A (ja) |
WO (1) | WO2007109395A2 (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2015032265A (ja) * | 2013-08-06 | 2015-02-16 | 株式会社デンソー | 電子制御装置 |
US11768689B2 (en) | 2013-08-08 | 2023-09-26 | Movidius Limited | Apparatus, systems, and methods for low power computational imaging |
Families Citing this family (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7996689B2 (en) * | 2006-06-12 | 2011-08-09 | Semiconductor Manufacturing International (Shanghai) Corporation | System and method for power control for ASIC device |
CN100483305C (zh) * | 2006-06-12 | 2009-04-29 | 中芯国际集成电路制造(上海)有限公司 | 用于asic器件功率控制的系统和方法 |
US9081501B2 (en) * | 2010-01-08 | 2015-07-14 | International Business Machines Corporation | Multi-petascale highly efficient parallel supercomputer |
US10346173B2 (en) * | 2011-03-07 | 2019-07-09 | Oracle International Corporation | Multi-threaded instruction buffer design |
CN103460183B (zh) | 2011-03-30 | 2016-11-23 | 飞思卡尔半导体公司 | 控制vles处理器架构内的提前提取的方法和装置 |
US9104532B2 (en) * | 2012-12-14 | 2015-08-11 | International Business Machines Corporation | Sequential location accesses in an active memory device |
US10628163B2 (en) | 2014-04-17 | 2020-04-21 | Texas Instruments Incorporated | Processor with variable pre-fetch threshold |
US9256541B2 (en) * | 2014-06-04 | 2016-02-09 | Oracle International Corporation | Dynamically adjusting the hardware stream prefetcher prefetch ahead distance |
US9639396B2 (en) | 2014-09-16 | 2017-05-02 | Nxp Usa, Inc. | Starvation control in a data processing system |
US9541988B2 (en) | 2014-09-22 | 2017-01-10 | Western Digital Technologies, Inc. | Data storage devices with performance-aware power capping |
US10146293B2 (en) * | 2014-09-22 | 2018-12-04 | Western Digital Technologies, Inc. | Performance-aware power capping control of data storage devices |
EP3047380B1 (en) * | 2014-12-13 | 2019-04-24 | VIA Alliance Semiconductor Co., Ltd. | Pattern detector for detecting hangs |
WO2016092347A1 (en) * | 2014-12-13 | 2016-06-16 | Via Alliance Semiconductor Co., Ltd. | Distributed hang recovery logic |
US10067871B2 (en) | 2014-12-13 | 2018-09-04 | Via Alliance Semiconductor Co., Ltd | Logic analyzer for detecting hangs |
GB2546465B (en) * | 2015-06-05 | 2018-02-28 | Advanced Risc Mach Ltd | Modal processing of program instructions |
US9965206B2 (en) | 2015-10-23 | 2018-05-08 | Western Digital Technologies, Inc. | Enhanced queue management for power control of data storage device |
US20180004512A1 (en) * | 2016-06-30 | 2018-01-04 | Intel Corporation | System and Method for Out-of-Order Clustered Decoding |
US10467141B1 (en) | 2018-06-18 | 2019-11-05 | International Business Machines Corporation | Process data caching through iterative feedback |
US10963249B2 (en) | 2018-11-02 | 2021-03-30 | International Business Machines Corporation | Processor prefetcher mode governor for switching between prefetch modes |
US11163683B2 (en) | 2019-08-01 | 2021-11-02 | International Business Machines Corporation | Dynamically adjusting prefetch depth |
US11301386B2 (en) | 2019-08-01 | 2022-04-12 | International Business Machines Corporation | Dynamically adjusting prefetch depth |
US11327891B2 (en) | 2019-09-20 | 2022-05-10 | Samsung Electronics Co., Ltd. | Prefetching operations in storage devices |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6349938A (ja) * | 1986-08-20 | 1988-03-02 | Fujitsu Ltd | 命令先取り制御装置 |
JPS6349937A (ja) * | 1986-08-20 | 1988-03-02 | Fujitsu Ltd | 命令先取り制御装置 |
JPH0218620A (ja) * | 1988-07-07 | 1990-01-22 | Toshiba Corp | 情報処理装置 |
JPH02157938A (ja) * | 1988-12-09 | 1990-06-18 | Matsushita Electric Ind Co Ltd | 命令先読み制御装置 |
JPH02163828A (ja) * | 1988-12-16 | 1990-06-25 | Mitsubishi Electric Corp | データ処理装置 |
JPH0497463A (ja) * | 1990-08-15 | 1992-03-30 | Nec Corp | メッセージバッファに対する実メモリ補給方式 |
JPH0728751A (ja) * | 1993-06-24 | 1995-01-31 | Nec Corp | 転送制御装置 |
JPH07182164A (ja) * | 1993-12-22 | 1995-07-21 | Nec Ic Microcomput Syst Ltd | 中央処理装置 |
JPH08339289A (ja) * | 1995-06-13 | 1996-12-24 | Nec Corp | 可変容量バッファメモリ |
JP2007524904A (ja) * | 2003-06-20 | 2007-08-30 | フリースケール セミコンダクター インコーポレイテッド | 動的プリフェッチ・バッファ構成および置換のための方法および装置 |
Family Cites Families (33)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US632280A (en) * | 1899-04-19 | 1899-09-05 | Llewellyn Emerson Pulsifer | Ash-sifter. |
US4714994A (en) * | 1985-04-30 | 1987-12-22 | International Business Machines Corp. | Instruction prefetch buffer control |
JP2834289B2 (ja) * | 1990-07-20 | 1998-12-09 | 株式会社日立製作所 | マイクロプロセッサ |
JP2682264B2 (ja) * | 1991-05-21 | 1997-11-26 | 日本電気株式会社 | プログラムカウンタ装置 |
IE940855A1 (en) | 1993-12-20 | 1995-06-28 | Motorola Inc | Data processor with speculative instruction fetching and¹method of operation |
US5623615A (en) | 1994-08-04 | 1997-04-22 | International Business Machines Corporation | Circuit and method for reducing prefetch cycles on microprocessors |
US5805876A (en) | 1996-09-30 | 1998-09-08 | International Business Machines Corporation | Method and system for reducing average branch resolution time and effective misprediction penalty in a processor |
US6092187A (en) | 1997-09-19 | 2000-07-18 | Mips Technologies, Inc. | Instruction prediction based on filtering |
US6205537B1 (en) * | 1998-07-16 | 2001-03-20 | University Of Rochester | Mechanism for dynamically adapting the complexity of a microprocessor |
US6314494B1 (en) * | 1999-04-15 | 2001-11-06 | Agilent Technologies, Inc. | Dynamically size configurable data buffer for data cache and prefetch cache memory |
EP1050802B1 (en) * | 1999-05-03 | 2007-02-07 | STMicroelectronics S.A. | Instruction prefetch unit |
US6490716B1 (en) * | 1999-08-20 | 2002-12-03 | Hewlett-Packard Company | Automated design of processor instruction units |
US6574727B1 (en) | 1999-11-04 | 2003-06-03 | International Business Machines Corporation | Method and apparatus for instruction sampling for performance monitoring and debug |
US6775765B1 (en) | 2000-02-07 | 2004-08-10 | Freescale Semiconductor, Inc. | Data processing system having instruction folding and method thereof |
US6751724B1 (en) | 2000-04-19 | 2004-06-15 | Motorola, Inc. | Method and apparatus for instruction fetching |
US6728873B1 (en) | 2000-06-06 | 2004-04-27 | International Business Machines Corporation | System and method for providing multiprocessor speculation within a speculative branch path |
US6691220B1 (en) | 2000-06-06 | 2004-02-10 | International Business Machines Corporation | Multiprocessor speculation mechanism via a barrier speculation flag |
US7865747B2 (en) * | 2000-10-31 | 2011-01-04 | International Business Machines Corporation | Adaptive issue queue for reduced power at high performance |
US6748522B1 (en) | 2000-10-31 | 2004-06-08 | International Business Machines Corporation | Performance monitoring based on instruction sampling in a microprocessor |
US6832280B2 (en) | 2001-08-10 | 2004-12-14 | Freescale Semiconductor, Inc. | Data processing system having an adaptive priority controller |
US20030105926A1 (en) * | 2001-12-03 | 2003-06-05 | International Business Machies Corporation | Variable size prefetch cache |
US7167954B2 (en) * | 2002-09-09 | 2007-01-23 | Broadcom Corporation | System and method for caching |
US6895530B2 (en) | 2003-01-24 | 2005-05-17 | Freescale Semiconductor, Inc. | Method and apparatus for controlling a data processing system during debug |
US6925542B2 (en) | 2003-03-21 | 2005-08-02 | Freescale Semiconductor, Inc. | Memory management in a data processing system |
US6963963B2 (en) | 2003-03-25 | 2005-11-08 | Freescale Semiconductor, Inc. | Multiprocessor system having a shared main memory accessible by all processor units |
US7146467B2 (en) * | 2003-04-14 | 2006-12-05 | Hewlett-Packard Development Company, L.P. | Method of adaptive read cache pre-fetching to increase host read throughput |
US6871246B2 (en) | 2003-05-07 | 2005-03-22 | Freescale Semiconductor, Inc. | Prefetch control in a data processing system |
US7610466B2 (en) | 2003-09-05 | 2009-10-27 | Freescale Semiconductor, Inc. | Data processing system using independent memory and register operand size specifiers and method thereof |
US7096348B2 (en) | 2003-12-15 | 2006-08-22 | Freescale Semiconductor, Inc. | Method and apparatus for allocating entries in a branch target buffer |
US6976110B2 (en) | 2003-12-18 | 2005-12-13 | Freescale Semiconductor, Inc. | Method and apparatus for reducing interrupt latency by dynamic buffer sizing |
US20050273310A1 (en) | 2004-06-03 | 2005-12-08 | Newburn Chris J | Enhancements to performance monitoring architecture for critical path-based analysis |
US7249223B2 (en) | 2004-08-11 | 2007-07-24 | Freescale Semiconductor, Inc. | Prefetching in a data processing system |
US8001363B2 (en) | 2005-04-04 | 2011-08-16 | Globalfoundries Inc. | System for speculative branch prediction optimization and method thereof |
-
2006
- 2006-03-21 US US11/385,463 patent/US9304773B2/en active Active
-
2007
- 2007-02-23 JP JP2009501622A patent/JP5279701B2/ja active Active
- 2007-02-23 WO PCT/US2007/062651 patent/WO2007109395A2/en active Application Filing
- 2007-02-23 KR KR1020087022855A patent/KR20080102213A/ko not_active Application Discontinuation
- 2007-02-23 EP EP07757384A patent/EP1999574B1/en active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6349938A (ja) * | 1986-08-20 | 1988-03-02 | Fujitsu Ltd | 命令先取り制御装置 |
JPS6349937A (ja) * | 1986-08-20 | 1988-03-02 | Fujitsu Ltd | 命令先取り制御装置 |
JPH0218620A (ja) * | 1988-07-07 | 1990-01-22 | Toshiba Corp | 情報処理装置 |
JPH02157938A (ja) * | 1988-12-09 | 1990-06-18 | Matsushita Electric Ind Co Ltd | 命令先読み制御装置 |
JPH02163828A (ja) * | 1988-12-16 | 1990-06-25 | Mitsubishi Electric Corp | データ処理装置 |
JPH0497463A (ja) * | 1990-08-15 | 1992-03-30 | Nec Corp | メッセージバッファに対する実メモリ補給方式 |
JPH0728751A (ja) * | 1993-06-24 | 1995-01-31 | Nec Corp | 転送制御装置 |
JPH07182164A (ja) * | 1993-12-22 | 1995-07-21 | Nec Ic Microcomput Syst Ltd | 中央処理装置 |
JPH08339289A (ja) * | 1995-06-13 | 1996-12-24 | Nec Corp | 可変容量バッファメモリ |
JP2007524904A (ja) * | 2003-06-20 | 2007-08-30 | フリースケール セミコンダクター インコーポレイテッド | 動的プリフェッチ・バッファ構成および置換のための方法および装置 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2015032265A (ja) * | 2013-08-06 | 2015-02-16 | 株式会社デンソー | 電子制御装置 |
US11768689B2 (en) | 2013-08-08 | 2023-09-26 | Movidius Limited | Apparatus, systems, and methods for low power computational imaging |
Also Published As
Publication number | Publication date |
---|---|
JP5279701B2 (ja) | 2013-09-04 |
WO2007109395A3 (en) | 2008-10-30 |
EP1999574A4 (en) | 2009-06-03 |
EP1999574B1 (en) | 2012-04-11 |
US20070226462A1 (en) | 2007-09-27 |
EP1999574A2 (en) | 2008-12-10 |
US9304773B2 (en) | 2016-04-05 |
WO2007109395A2 (en) | 2007-09-27 |
KR20080102213A (ko) | 2008-11-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5279701B2 (ja) | 命令プリフェッチバッファ深さの動的制御を有するデータプロセッサとその方法 | |
US8683136B2 (en) | Apparatus and method for improving data prefetching efficiency using history based prefetching | |
US7493451B2 (en) | Prefetch unit | |
US6105111A (en) | Method and apparatus for providing a cache management technique | |
US7930485B2 (en) | Speculative memory prefetch | |
US7937573B2 (en) | Metric for selective branch target buffer (BTB) allocation | |
US8156287B2 (en) | Adaptive data prefetch | |
KR101456860B1 (ko) | 메모리 디바이스의 전력 소비를 감소시키기 위한 방법 및 시스템 | |
US9886385B1 (en) | Content-directed prefetch circuit with quality filtering | |
US11954044B2 (en) | Translation lookaside buffer prewarming | |
US8060701B2 (en) | Apparatus and methods for low-complexity instruction prefetch system | |
JP2012150529A (ja) | メモリアクセス制御回路、プリフェッチ回路、メモリ装置および情報処理システム | |
KR100234647B1 (ko) | 인스트럭션 프리페치 방법 및 데이터 처리 시스템 | |
US6772326B2 (en) | Interruptible and re-entrant cache clean range instruction | |
JP5730973B2 (ja) | バスアクセス要求の選択的除外 | |
US20090222648A1 (en) | Selective postponement of branch target buffer (btb) allocation | |
US8429383B2 (en) | Multi-processor computing system having a JAVA stack machine and a RISC-based processor | |
CN111198827B (zh) | 页表预取方法及装置 | |
JP2001273137A (ja) | マイクロプロセッサ | |
JP3735373B2 (ja) | マイクロコンピュータ | |
CN116521578A (zh) | 一种提高指令缓存预取执行效率的芯片系统及方法 | |
JPS63163532A (ja) | マイクロプロセツサ |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100219 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20100219 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120821 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20121115 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20121218 |
|
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: 20130423 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20130521 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 Ref document number: 5279701 Country of ref document: JP 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 |
|
S533 | Written request for registration of change of name |
Free format text: JAPANESE INTERMEDIATE CODE: R313533 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |