JP2007500402A - 周辺装置アクセス保護付きデータ処理システム - Google Patents

周辺装置アクセス保護付きデータ処理システム Download PDF

Info

Publication number
JP2007500402A
JP2007500402A JP2006532425A JP2006532425A JP2007500402A JP 2007500402 A JP2007500402 A JP 2007500402A JP 2006532425 A JP2006532425 A JP 2006532425A JP 2006532425 A JP2006532425 A JP 2006532425A JP 2007500402 A JP2007500402 A JP 2007500402A
Authority
JP
Japan
Prior art keywords
prefetch
access
master
control
interconnect
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.)
Pending
Application number
JP2006532425A
Other languages
English (en)
Other versions
JP2007500402A5 (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 JP2007500402A publication Critical patent/JP2007500402A/ja
Publication of JP2007500402A5 publication Critical patent/JP2007500402A5/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4204Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
    • G06F13/4234Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a memory bus
    • G06F13/4243Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a memory bus with synchronous protocol
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/10Program control for peripheral devices
    • G06F13/12Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor
    • 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/0862Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches with prefetch
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1605Handling requests for interconnection or transfer for access to memory bus based on arbitration
    • G06F13/161Handling requests for interconnection or transfer for access to memory bus based on arbitration with latency improvement
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1668Details of memory controller
    • G06F13/1673Details of memory controller using buffers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/20Handling requests for interconnection or transfer for access to input/output bus
    • G06F13/28Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/60Details of cache memory
    • G06F2212/6026Prefetching based on access pattern detection, e.g. stride based prefetch
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE 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/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Multi Processors (AREA)

Abstract

データ処理システム(10)には、相互接続(22)が含まれ、第1相互接続マスタ(12)及び第2相互接続マスタ(14)が、その相互接続に接続される。共有記憶装置(35)は、その相互接続に接続され、第1相互接続マスタ及び第2相互接続マスタによって用いられる。また、このデータ処理システムには、第1相互接続マスタに対応する第1制御記憶回路(60,64)と、第2相互接続マスタに対応する第2制御記憶回路(62,66)とが含まれる。一実施形態において、プリフェッチ回路(40)は、第1制御記憶回路及び第2制御記憶回路に接続され、第1相互接続マスタ及び第2相互接続マスタのうちのどちらが、共有記憶装置へのアクセスを要求しているかに基づき、第1制御記憶装置及び第2制御記憶回路のうちの一方を選択する。次いで、プリフェッチ回路は、選択した制御記憶回路を用いて、共有記憶装置へのアクセスによってトリガされるプリフェッチ動作を決定する。

Description

本発明は、データ処理システムに関する。より詳細には、データ処理システム内におけるプリフェッチ制御に関する。
プリフェッチ処理は、一般的に、データ処理システム内の情報にアクセスするために用いられる。情報に対する要求に先立ち、その情報をプリフェッチすることによって、バス・マスタから要求される情報をアクセスすることにより生じる待ち時間を低減し得る。しかしながら、通常のプリフェッチ処理方式では、バス・マスタが、プリフェッチされた情報へのアクセスを要求しないことがあるため、多数のプリフェッチが無駄になる。一般的なプリフェッチ処理方式の他の欠点は、プリフェッチ動作が、利用可能なメモリ帯域幅のかなりの部分を必要とし、これが、バス・マスタによって要求される要求時フェッチを妨害し得ることである。
従って、無駄なプリフェッチの数を低減し、データ・プロセッサ機能への無用な妨害を防止し、これによって消費電力量を低減し、また、データ・プロセッサ性能を最適化するプリフェッチ処理方法に対するニーズが存在する。
本発明の一実施形態は、データ処理システム内における選択的プリフェッチ制御に関する。例えば、多重マスタ・データ処理システム内において、プリフェッチ動作は、例えば、アクセス要求を行うマスタの識別子及びアクセス要求のタイプ(例えば、アクセス要求がデータ用であるのか、あるいは命令用であるのか、もしくはアクセス要求がバースト・アクセスであるのか、あるいは非バースト・アクセスであるのか)のような属性に基づき、マスタによるアクセス要求(例えば、読出しアクセス要求、要求時フェッチとも称される)によってトリガされ得る。プリフェッチ動作は、例えば、データ処理システム内における各マスタに関連するプリフェッチ制御情報を記憶可能なプリフェッチ制御レジスタ(又は他のプリフェッチ制御記憶回路)を用いることによって、決定又は制御され得る。幾つかの実施形態において、プリフェッチ動作は、プリフェッチが発生しないようにプリフェッチを抑制することを含み得る。データ処理システム内においてプリフェッチを選択的に制御することによって、余分な電力を消費し性能低下をもたらす無駄なプリフェッチを防止し得る。
本発明の一実施形態は、データ処理システムに関する。このデータ処理システムは、相互接続と、相互接続に接続された第1相互接続マスタと、相互接続に接続された第2相互接続マスタと、相互接続に接続され第1相互接続マスタ及び第2相互接続マスタによって用いられる共有記憶装置と、第1相互接続マスタに対応する第1制御記憶回路と、第2相互接続マスタに対応する第2制御記憶回路と、第1制御記憶回路及び第2制御記憶回路に接続されたプリフェッチ回路とを有する。プリフェッチ回路は、第1相互接続マスタ及び第2相互接続マスタのうちのどちらが共有記憶装置へのアクセスを要求しているのかに基づき、第1制御記憶回路及び第2制御記憶回路のうちの一方を選択し、選択した制御記憶回路を用いて、共有記憶装置へのアクセスによってトリガされるプリフェッチ動作を決定する。
本発明の他の実施形態は、データ処理システムにおいてプリフェッチ制御を提供するための方法に関する。本実施形態では、記憶装置へアクセスするためのアクセス要求を受信し、プリフェッチ制御記憶回路を提供してプリフェッチ・バースト・アクセス制御情報を記憶し、バースト・アクセス制御情報、及びアクセス要求がバースト・アクセスであるか否かに基づき、記憶装置へのプリフェッチを選択的に起動する。
本発明の更に他の実施形態は、データ処理システムにおいてプリフェッチ制御を提供するための方法に関する。本方法では、第1相互接続マスタを提供し、第2相互接続マスタを提供し、共有記憶装置へアクセスするためのアクセス要求を受信し、アクセス要求が第1相互接続マスタからであるのか、あるいは第2相互接続マスタからであるのかに基づき、プリフェッチ制御記憶装置を選択し、プリフェッチ記憶回路に記憶されている制御情報を用いて、共有記憶装置へのアクセス要求によってトリガされるプリフェッチ動作を制御する。
本発明は、添付図面によって、一例として例示されるものであって、これらによって限定されるものではない。図面では、同様な参照符号は、同様な構成要素を示す。
図面の構成要素は、簡単明瞭に示されており、必ずしも縮尺通りに描かれていないことを当業者は認識されよう。例えば、図面の構成要素の中には、本発明の実施形態の理解を改善する一助とするために、他の構成要素と比較して寸法を誇張したものがある。
本明細書で用いる用語「バス」は、データ、アドレス、制御、又はステータス等、1つ又は複数の様々なタイプの情報を伝達するために用い得る複数の信号又は配線を参照するために用いる。本明細書で記載される配線は、単一の配線、複数の配線、単方向の配線、又は双方向の配線を参照するものとして例示され、説明される。しかしながら、異なる実施形態では、配線の実装を変更してもよい。例えば、双方向の配線以外に別個の単方向の配線を用いてもよく、また、その逆であってもよい。更に、複数の配線は、直列にあるいは時分割多重方式で多数の信号を伝達する単一の配線で置き換えられ得る。同様に、多数の信号を搬送する単一の配線は、これらの信号の一部を搬送する様々な異なる配線に分離され得る。従って、信号を伝達するための多くの選択肢が存在する。
図1は、データ処理システム10の一実施形態を示す。データ処理システム10には、マスタ12(相互接続マスタ12とも称される)と、マスタ14(相互接続マスタ14とも称される)と、メモリ・アレイ・コントローラ36と、システム相互接続22と、I/O回路16と、周辺装置18と、他のスレーブ20と、メモリ・アレイ35と、が含まれる。マスタ12は、配線48を介してシステム相互接続22に双方向接続され、マスタ14は、配線50を介してシステム相互接続22に双方向接続され、I/O回路は、配線52を介してシステム相互接続22に双方向接続され、周辺装置18は、配線54を介してシステム相互接続22に双方向接続され、他のスレーブ20は、配線56を介してシステム相互接続22に双方向接続され、メモリ・アレイ・コントローラ36は、配線24を介してシステム相互接続22に双方向接続される。配線24には、マスタ識別子26、アドレス/データ27、R/W信号28、バースト信号30、命令/データ信号32、及び他の信号34を伝達するための配線が含まれる。メモリ・アレイ・コントローラ36には、制御レジスタ38、プリフェッチ回路40、及びバッファ群42が含まれ、また、配線33を介してメモリ・アレイ35に双方向接続される。制御レジスタ38は、プリフェッチ回路40に接続され、プリフェッチ回路40は、バッファ群42に接続される。バッファ群42には、バッファ44及びバッファ46が含まれる。図1には、1つの周辺装置18のみを示すが、データ処理システム10には、システム相互接続22に接続される任意の数の周辺装置を含めてもよい。同様に、任意の数のマスタ及びスレーブをシステム相互接続22に接続してよく、図1に示すものに制限されない。また、一実施形態において、データ処理システム10の全てを、単一の集積回路上に又は同じ装置内に配置し得ることに留意されたい。他の選択肢として、データ処理システム10には、互いに相互接続された任意の数の別個の集積回路又は別個の装置が含まれていてもよい。例えば、一実施形態において、メモリ及びメモリ・コントローラ(例えば、メモリ・アレイ35及びメモリ・アレイ・コントローラ36等)は、データ処理システム10の他の部分から分離して、1つ又は複数の集積回路上に配置されてもよい。
一実施形態において、バス・マスタ12及びバス・マスタ14は、マイクロプロセッサ、デジタル信号プロセッサ等の命令を実行可能なプロセッサであってよく、あるいは、直接メモリ・アクセス(DMA:Direct Memory Access)回路又はデバッグ回路等のいずれか他のタイプの相互接続マスタであってもよい。周辺装置18は、ユニバーサル非同期型送受信機(UART:Universal Asynchronous Receiver Transmitter )、リアル・タイム・クロック(RTC:Real Time Clock )、キーボード・コントローラ等の任意のタイプの周辺装置であってもよい。他のスレーブ20は、例えば、マスタ12及び14によってアクセス可能なメモリ等、任意のタイプの相互接続スレーブを含み得ること、また更に、周辺装置18と同じタイプの周辺装置等、システム・バス上に常駐する任意のタイプの周辺装置を含み得ることに留意されたい。I/O回路16は、データ処理システム10の外部の情報を受信又は提供する任意のタイプのI/O回路を含み得る。
例示した実施形態において、メモリ・アレイ・コントローラ36及びメモリ・アレイ35は、システム相互接続22に接続された他のスレーブに対応する。他の実施形態において、メモリ・アレイ35は、任意の数のアレイを含み得ることに留意されたい。また、他の実施形態において、メモリ・アレイ35は、システム相互接続22に接続された少なくとも2つのマスタ(例えば、マスタ12及び14等)によって共有される記憶装置であることから、共有記憶装置35と呼称され得ることに留意されたい。メモリ・アレイ35は、マスタ12及び14と同じ集積回路又は別個の集積回路に配置され得る。更に、メモリ・アレイ35は、例えば、読出し専用メモリ(ROM:Read Only Memory)、ランダム・アクセス・メモリ(RAM:Random Access Memory)、不揮発性メモリ(例えば、フラッシュ・メモリ)等の任意のタイプのメモリであってよい。また、メモリ・アレイ35は、メモリ、又は他の周辺装置又はスレーブ内に配置される他の記憶装置であってよい。
システム相互接続22は、マスタ12、マスタ14、I/O回路16、周辺装置18、他のスレーブ20、及びメモリ・アレイ・コントローラ36を相互接続する。一実施形態において、図1に示すように、システム相互接続22は、システム・バス・プロトコルにより動作するシステム・バスとして実装される。他の選択肢として、システム相互接続22は、例えば、様々な装置間において情報をルーティングするスイッチング回路等の相互接続回路を用いて実装され得る。
動作時、マスタ12及び14は、システム相互接続22のアクセスを要求して、他のスレーブ20に対して、周辺装置18に対して、あるいはメモリ・アレイ・コントローラ36を介してメモリ・アレイ35に対してアクセスを要求する。要求側マスタは、システム相互接続22を介して、メモリ・アレイ・コントローラ36にアクセス要求を提供し得る。アクセス要求は、例えば、データ又は命令のいずれかに対する読出し要求又は書込み要求であってもよい。メモリ・アレイ・コントローラ36は、読出しアクセス要求に応答して、要求された情報(データ又は命令)を、システム相互接続22を介して、要求側マスタに提供する。要求側マスタからの読出しアクセス要求は、要求時フェッチとも呼称されることに留意されたい。一実施形態において、アクセス要求に対して、マスタ識別子26がメモリ・アレイ・コントローラ36に提供され、これによって、どのマスタが現アクセスを要求しているかが識別される。また、R/W信号28は、メモリ・アレイ・コントローラ36に提供され、現アクセス要求が、読出しタイプのアクセスであるのか、あるいは書込みタイプのアクセスであるのかを示す。バースト信号30は、メモリ・アレイ・コントローラ36に提供され、現アクセス要求が、バースト・タイプのアクセスであるのか、あるいは非バースト・タイプのアクセスであるのかを示す。例えば、非バースト・タイプのアクセスは、単一ビート読出し又は書込みを含み得る。命令/データ信号32は、メモリ・アレイ・コントローラ36に提供され、現アクセス要求が命令用であるのか、あるいはデータ用であるのかを示す。また、メモリ・アレイ・コントローラ36は、現アクセス要求に対応するアドレス情報を受信し、アドレス/データ27を介して、要求された情報を提供する。メモリ・アレイ・コントローラ36との通信を行うために必要な他のあらゆる信号は、他の信号34によって提供され得る。
一実施形態において、メモリ・アレイ35とメモリ・アレイ・コントローラ36との間における配線33の幅は、システム相互接続22の幅より大きい。例えば、一実施形態において、システム相互接続22は、配線33の幅のわずか4分の1であり、このことは、単一のバースト・トランザクションの4つのデータ又は命令項目を、メモリ・アレイ35からの単一のアクセスで取得し得ることを意味する。例えば、システム相互接続22及びデータ又は命令項目は、わずかに64ビット幅であるが、配線33は、256ビット幅であってもよい。しかしながら、また、一般的に、メモリ・アレイ35から情報を取り出すためのアクセス時間は、システム相互接続22に接続された他の周辺装置、スレーブ、又はマスタと比較して、非常に長い(例えば、4〜5倍長い)ことに留意されたい。従って、アクセス時間を低減するために、メモリ・アレイ・コントローラ36は、メモリ・アレイ35から情報をプリフェッチし、その情報をバッファ群42内に記憶し得る。
例えば、一実施形態において、プリフェッチ回路40は、一例として、各々、256ビット幅であり得るバッファ44及びバッファ46等のバッファ群42へメモリ・アレイ35からの情報をプリフェッチし得る。従って、要求側マスタからのアクセス要求に応答して、メモリ・アレイ・コントローラ36は、一般的に、バッファ群42と比較してアクセス時間が長いメモリ・アレイ35から情報をフェッチしなければならないこと以外に(情報が既にプリフェッチされているならば)要求された情報をバッファ群42から提供することができる。一実施形態において、プリフェッチ回路には、バッファ44及び46の各々に対応するタグ部(図示せず)、及び現アクセス要求において要求されている情報が、バッファ44及び46のうちの1つに既に配置されているか否かを判断するための比較回路(図示せず)が含まれる。例えば、プリフェッチ回路は、アドレス/データ27を介した現アクセス要求に対応する着信アドレスとタグ部とを比較して、既に情報がプリフェッチされているか否かを判断することができる。プリフェッチされていない場合、メモリ・アレイ・コントローラ36は、要求された情報をメモリ・アレイ35から提供する。
例示した実施形態においては、2つのバッファが示されている(バッファ44及びバッファ46)。しかしながら、他の実施形態において、バッファ群42は、任意の数の(1つ又は複数の)バッファを含み得る。一実施形態において、プリフェッチ回路は、メモリ・アレイ35からバッファ44及び46のうちの一方に情報をプリフェッチし、その間、バッファ44及び46のうちの他方から要求側マスタに情報を提供し得る。即ち、複数のバッファを用いると、少なくとも部分的には、要求側マスタからのアクセス要求に対応すると同時に、メモリ・アレイ35へのプリフェッチを行い得る。また、一実施形態において、バッファは、配線33と同じ幅を有し得るが、他の実施形態において、その幅は、異なっていてもよいことに留意されたい。
メモリ・アレイ35にアクセスして要求側マスタからのアクセス要求に応答することに比べて、バッファ群42から情報提供すると、アクセス時間が低減されることから、その後要求される情報をメモリ・アレイ35からバッファ群42にプリフェッチすることが望ましい。しかしながら、プリフェッチ処理は、プリフェッチされた情報がマスタによって実際に要求されるか否かを断定できないという点において、不確かであることに留意されたい。プリフェッチされた情報が、その後要求されないならば、プリフェッチは、無駄なプリフェッチになり、余分な電力が消費され、性能が低下する。一実施形態において、プリフェッチ処理は、また、(マスタによって実際に要求されるものなどの、不確かでない)要求時フェッチを妨害し得る。例えば、プリフェッチの間、要求側マスタからの要求時フェッチは、それが対応されるまで、プリフェッチの完了を待たねばならず、従って、要求時フェッチの待ち時間が長くなり、平均アクセス待ち時間が長くなる。更に、そのプリフェッチが、無駄なプリフェッチになると、プリフェッチに用いられた時間が無用に浪費され、従って、更に、平均アクセス待ち時間が長くなる。従って、本発明の一実施形態は、平均アクセス待ち時間を低減するために、バッファ群42への不確かなデータのプリフェッチ処理を制御する。
引き続き図1において、プリフェッチ回路40は、制御レジスタ38に基づき、バッファ群42へのプリフェッチ処理を選択的に制御し得る。例えば、一実施形態において、プリフェッチ回路40は、制御レジスタ38に基づき、(マスタ12又は14等の)要求側マスタからのメモリ・アレイ35へのアクセス要求によってトリガされるプリフェッチ動作を決定する。従って、異なるタイプのプリフェッチ動作は、異なるタイプのアクセス属性によってトリガされ得るが、これら属性は、例えば、どのマスタがアクセスを要求しているか、アクセス要求が部分的にバースト・アクセスであるか否か、アクセス要求がデータ用であるか、あるいは命令用であるか、もしくは、それらの任意の組合せ、を含み得る。従って、現アクセス要求(即ち、現要求時フェッチ)に対応するマスタ識別子26、R/W信号38、バースト信号30、及び命令/データ信号32の値、及び制御レジスタ38に基づき、プリフェッチ回路40は、現アクセス要求によってトリガされるプリフェッチ動作を決定する。
図2は、各マスタ用の1つのデータ・プリフェッチ・イネーブル(DPEN:Data Prefetch Enable)フィールド及び1つの命令プリフェッチ・イネーブル(IPEN:Instruction Prefetch Enable )フィールドが含まれる制御レジスタ38の一実施形態を示す。例えば、図2に示すように、制御レジスタ38には、マスタ12DPENフィールド60、マスタ14DPENフィールド62、マスタ12IPENフィールド64、及びマスタ14IPENフィールド66が含まれる。従って、他の実施形態において、制御レジスタ38には、所望のプリフェッチ制御情報を記憶するために、必要に応じていくらかのフィールドを含み得る。また、制御レジスタ38は、システム相互接続22に接続されたマスタ12又は14等のマスタからの命令を介して、プログラムされ得ることに留意されたい。これらの値を、例えば、ユーザが提供したり、設計時、プログラム化したりしてもよい。
図3は、図2の制御レジスタ38におけるフィールド定義の一実施形態を示す。例えば、一実施形態において、各フィールド60,62,64,66は、2ビット・フィールドであり、ここで、各フィールドは、4つの値(00,01,10,11)を持つことが可能である。図3で説明するように、DPENフィールド60及び62は、どのマスタが、アクセスを要求したか、また、データ読出しアクセスよって起動されたプリフェッチ処理をイネーブルするか、あるいはディスエーブルするかに基づき、データ・プリフェッチ動作がトリガされるか否かを制御するために用いられる。(どのマスタがアクセスを要求したか決定するために用いられ得る)マスタ識別子は、例えば、図1のマスタ識別子26によって提供される。一実施形態において、マスタ12は0の識別子を有し、マスタ14は1の識別子を有し得る。従って、各マスタには、固有の識別子が割り当てられ得る。他の実施形態において、幾つかのマスタは、同じ識別子を共有し得る。また、他の実施形態において、どのマスタがアクセスを要求しているかは、マスタ識別子26等の信号を提供すること以外の様々な方法で決定され得ることに留意されたい。
図3の例において、各DPENフィールド60及び62は、2ビット・フィールドであり、ここで、00の値は、プリフェッチ処理が、対応するマスタからのデータ読出しアクセスによってトリガされていないことを示す。即ち、マスタ12DPENフィールド60が00に設定されているならば、プリフェッチ処理は、マスタ12からのデータ読出しアクセスによってトリガされていない。同様に、マスタ14DPENフィールド62が00に設定されているならば、プリフェッチ処理は、マスタ14からのデータ読出しアクセスによってトリガされていない。現アクセス要求が読出し要求であるのか、あるいは書込み要求であるのかは、R/W信号28によってプリフェッチ回路40に示され得ること、また、現アクセス要求がデータ用であるのか、あるいは命令用であるのかは、命令/データ信号32によってプリフェッチ回路に示され得ることに留意されたい。DPENフィールド60及び62の01の値は、プリフェッチ処理が、対応するマスタからのデータ・バースト読出しアクセスのみによってトリガされ得ることを示す。即ち、マスタ12DPENフィールド60が01に設定されているならば、プリフェッチ処理は、マスタ12からのデータ・バースト読出しアクセスのみによってトリガされ得る。現アクセスがバースト読出しアクセスであるか否かは、バースト信号30によって、プリフェッチ回路40に示され得る。DPENフィールド60及び62の11の値は、プリフェッチ処理が、対応するマスタからの任意のデータ読出しアクセスによってトリガされ得ることを示す。即ち、マスタ12DPENフィールド60が11に設定されているならば、プリフェッチ処理は、マスタ12からの任意のデータ読出しによってトリガされ得る。(本実施形態において、10の値は予備の値であり、プリフェッチ動作を設定するために用いられていないことに留意されたい。)従って、マスタ12からのデータ・アクセス要求によってトリガされたメモリ・アレイ35からのデータ・プリフェッチ動作は、DPENフィールド60に基づき、決定され制御され得る。また、本明細書に用いられるデータ・プリフェッチ動作は、プリフェッチを選択的に実施すること、あるいはプリフェッチを実施しないことを含み得ることに留意されたい。
図3の例において、各IPENフィールド64及び66は、2ビット・フィールドであり、ここで、00の値は、プリフェッチ処理が、対応するマスタからの命令読出しアクセスによって、トリガされていないことを示す。即ち、マスタ12IPENフィールド64が00に設定されるならば、プリフェッチ処理は、マスタ12からの命令読出しアクセスによってトリガされていない。再度、上述したように、R/W信号28及び命令/データ信号32は、現アクセスが読出しアクセスであるのか、あるいは書込みアクセスであるのか、現アクセスが命令を要求しているのか、あるいはデータを要求しているのかを、プリフェッチ回路40に示すために用いられ得る。IPENフィールド64及び66の01の値は、プリフェッチ処理が、対応するマスタからの命令バースト読出しアクセスのみによってトリガされ得ることを示す。即ち、マスタ12IPENフィールド64が01に設定されているならば、プリフェッチ処理は、マスタ12からの命令バースト読出しアクセスのみによってトリガされ得る。IPENフィールド64及び66の11の値は、プリフェッチ処理が、対応するマスタからの任意の命令読出しアクセスによってトリガされ得ることを示す。即ち、マスタ12DPENフィールド60が11に設定されているならば、プリフェッチ処理は、マスタ12からの命令読出しアクセスによってトリガされ得る。従って、マスタ12からの命令アクセス要求によってトリガされたメモリ・アレイ35からの命令プリフェッチ動作は、IPENフィールド64に基づき、決定され制御され得る。また、本明細書に用いられる命令プリフェッチ動作には、プリフェッチを選択的に実施すること、あるいはプリフェッチを実施しないことを含み得ることに留意されたい。
他の実施形態において、制御レジスタ38には、必要に応じて、いくらかのビットを有する各マスタ用のいくらかのフィールドを含み得ることに留意されたい。また、図3において説明した制御レジスタ38のフィールドの設定値は、例として提供されている。他の実施形態は、図3において提供されたものとは異なる属性、図3のものよりも多くの属性、又は図3におけるもののうちの一部に基づき、データ・アクセス要求、命令アクセス要求、又は双方のうちのいずれかによってトリガされるプリフェッチ動作を決定し得る。例えば、一実施形態において、プリフェッチは、現時点でアクセスを要求しているマスタの識別子のみに基づき、トリガされ得る。他の選択肢として、プリフェッチは、現在アクセスを要求しているマスタの識別子にかかわらず、アクセス要求がバースト・アクセスであるのか、あるいは非バースト・アクセスであるのかのみに基づき、トリガされ得る。また、他の実施形態において、現アクセス要求の特定の属性は、図1に示す信号28,30,32による方法以外の様々な方法で、プリフェッチ回路40に示され得ることに留意されたい。
図4は、本発明の一実施形態に基づくデータ処理システム10の動作をフロー図形式で示す。フロー70は、開始72で始まり、ブロック74に進み、ここで、マスタからのアクセス要求を受信する。このアクセス要求は、読出し要求、書込み要求、バースト要求、非バースト要求、データ要求、命令要求等の多くの異なるタイプの要求であってもよい。次いで、フローは、ブロック76に進み、ここで、要求側マスタの識別子を判断する。例えば、図1の実施形態において、このことは、マスタ識別子26を提供することによって行われる。次いで、フローは、ブロック78に進み、ここで、アクセス要求がデータ用であるのか、あるいは命令用であるのかを判断する(このことは、一実施形態において、命令/データ信号32を提供することによって行われる)。次いで、フローは、ブロック80に進み、ここで、アクセス要求が、バースト・アクセスであるのか、あるいは非バースト・アクセスであるのかを判断する(このことは、一実施形態において、バースト信号30を提供することによって行われる)。次いで、フローは、ブロック82に進み、ここで、ブロック76,78,80において決定されたアクセス属性に基づき、プリフェッチ処理動作を決定する。即ち、ブロック82において、プリフェッチ処理は、制御レジスタ38における要求側マスタに対応する少なくとも1つのフィールドに基づき、選択的に行われる。例えば、アクセス要求がマスタ12からであると判断され、かつ、アクセス要求が命令用であるのならば、そのアクセス要求によってトリガされるプリフェッチ動作は、マスタ12IPENフィールド64内の制御情報によって決定されるように実施される。次いで、フローは、終了84において終了する。
他の実施形態において、フロー70は、ブロック76,78,80のうちの1つ又は2つのブロックのみを含み得ることに留意されたい。例えば、プリフェッチ処理が、要求側マスタの識別子のみに基づくように、もしくは、アクセスがバースト・アクセスであるのか、あるいは非バースト・アクセスであるのかのみに基づくように、ブロック76,78,80のうちのブロック76のみ又はブロック80のみが存在し得る。他の選択肢として、選択的プリフェッチ処理が、ブロック76,78,80に対応するものよりも多くの属性に基づくように、フロー70は、より多くの決定を含み得る。
従って、性能を向上できるように、また、無駄なプリフェッチを最小限に抑えられるように、様々なタイプのアクセス属性に基づき、如何にしてプリフェッチ動作がトリガされるのかを理解されたであろう。本明細書に説明した実施形態を用いて、様々な異なる方法及び用途において、アクセス要求によってトリガされるプリフェッチ動作を制御し得る。例えば、一実施形態において、命令を実行するプロセッサによって(例えば、中央処理装置(CPU:Central Processing Unit )によって)なされる命令アクセス要求にプリフェッチトリガ動作を制限することは、有益であり得る。このことは、命令フェッチは、一般的に、順次的であるが、データ・フェッチは、ランダムに分散し得ることによる。従って、本例において、制御レジスタ38は、プロセッサからの命令アクセス要求のみがプリフェッチをトリガするように、設定され得るが、これは、命令が一般的に順次的であることから、このプリフェッチが無駄にならない可能性が高いからである。更に、多くの制御コード用途において(例えば、車両用途において)、分岐でさえ一般的に順次的に見えるが、これは、分岐は、一般的に、依然として(一実施形態において、256ビットである)バッファ・プリフェッチ・サイズに収まる短い前方分岐であるためである。従って、制御レジスタ38内のフィールドを用いて、この選択的プリフェッチ方式を実現し得る。
他の例において、直接メモリ・アクセス(DMA:Direct Memory Access)装置が要求側マスタである場合、データ・プリフェッチ処理は、通常、DMAが、順次的であるブロック・データの移動処理等のデータ伝達を実施しているため、有利なことがある。従って、制御レジスタ38内のフィールドは、DMAからのデータ・アクセス要求がメモリ・アレイ35へのプリフェッチをトリガするように、設定され得る。更に他の例において、デバッグ動作を実施可能なデバッグ回路が要求側マスタである場合(この場合、デバッグ回路は、システム相互接続22に接続されたマスタであっても、あるいは、システム相互接続22に接続されたマスタ内に常駐していてもよい)、他のマスタ又はシステム全般との干渉は一般的に望ましくないことから、プリフェッチ処理を全て抑制することが望ましい。即ち、デバッグの場合、システムに対する影響を最小限にすると、デバッグ処理の精度は、通常、向上する。更に、デバッグ動作の間の性能は、一般的に重要ではない。
更に他の例において、現読出しアクセスが単一ビート読出しであるのならば、バッファ群(バッファ44及び46等)がオペランド又はデータサイズより広い場合、最初の要求時フェッチによって、多数のデータ又は命令項目がフェッチされることから、プリフェッチ処理をディスエーブルすることが望ましい。即ち、例えば、一実施形態において、バッファは、256ビット幅であり、これによって、バッファにロードされた元の情報を保持するために用いられるバッファにおいて、順次的アクセス(例えば、順次的単一ビート読出し)がヒットするように、多数の命令又はデータ項目を保持する。この場合、プリフェッチは、恐らく次のプリフェッチ・ラインは必要とされないことから、無駄である。
本明細書において、具体的な実施形態を参照して、本発明について説明した。しかしながら、当業者が理解されるように、以下の請求項に記載した本発明の範囲から逸脱することなく、様々な修正及び変更が行われ得る。したがって、明細書及び図面は、限定的でなく例示的であると見なすものとし、また、そのような全ての修正は、本発明の範囲内に含まれるものとする。
恩恵、他の利点、及び問題の解決策について、具体的な実施形態を基に上述した。しかしながら、これらの恩恵、利点、問題の解決策、及び何らかの恩恵、利点、又は解決策を生じさせるか、あるいはより顕著にさせる如何なる構成要素も、全ての請求項の重要な、必要な、若しくは不可欠な特徴又は構成要素として解釈してはならない。本明細書に用いた用語「“a ”又は“an”(不定冠詞)」は、1つ又は1つ以上と定義する。本明細書に用いた用語「“including ”(含んでいる)」及び/又は「“having”(有している)」は、「“comprising”(備えている)」(即ち、オープン・ランゲージ)と定義する。本明細書に用いた用語「“comprises ”(備える)」、「“comprising”(備えている)」又はその派生語は、非排他的な包括を網羅するものであり、一連の構成要素を含むプロセス、方法、物、又は装置が、これらの構成要素だけでなく、明示的に列記されていない他の構成要素や、このようなプロセス、方法、物、又は装置に固有の他の構成要素も含み得る。
本発明による一実施形態に基づくデータ処理システムをブロック図形式で示す図。 本発明による一実施形態に基づく図1のデータ処理システムの制御レジスタをブロック図形式で示す図。 本発明による一実施形態に基づく図2の制御レジスタのフィールド内容を表形式で示す図。 本発明による一実施形態に基づく図1のデータ処理システムの動作をフロー図形式で示す図。

Claims (10)

  1. データ処理システムであって、
    相互接続と、
    前記相互接続に接続された第1相互接続マスタと、
    前記相互接続に接続された第2相互接続マスタと、
    前記相互接続に接続され、前記第1相互接続マスタ及び前記第2相互接続マスタによって用いられる共有記憶装置と、
    前記第1相互接続マスタに対応する第1制御記憶回路と、
    前記第2相互接続マスタに対応する第2制御記憶回路と、
    前記第1制御記憶回路及び前記第2制御記憶回路に接続されたプリフェッチ回路と、
    を備え、前記プリフェッチ回路は、前記第1相互接続マスタ及び前記第2相互接続マスタのうちのどちらが前記共有記憶装置へのアクセスを要求しているのかに基づき、前記第1制御記憶回路及び前記第2制御記憶回路のうちの一方を選択し、該選択した制御記憶回路を用いて、前記共有記憶装置へのアクセスによってトリガされるプリフェッチ動作を決定する、データ処理システム。
  2. 請求項1に記載のデータ処理システムにおいて、前記第1相互接続マスタは、命令を実行し、前記第1制御記憶回路及び前記プリフェッチ回路は、プリフェッチを命令アクセスに選択的に制限する、データ処理システム。
  3. 請求項1に記載のデータ処理システムにおいて、前記第1相互接続マスタは、直接メモリ・アクセスを行い、前記第1制御記憶回路及び前記プリフェッチ回路は、プリフェッチをデータ・アクセスに選択的に制限する、データ処理システム。
  4. 請求項1に記載のデータ処理システムにおいて、前記第1相互接続マスタは、デバッグ動作を行い、前記第1制御記憶回路及び前記プリフェッチ回路は、プリフェッチを防止することによってプリフェッチを選択的に制限するデータ処理システム。
  5. 請求項1に記載のデータ処理システムにおいて、前記第1制御記憶回路及び前記プリフェッチ回路は、非バースト・アクセス用のプリフェッチを防止することによって、プリフェッチを選択的に制限する、データ処理システム。
  6. プリフェッチ制御を提供するための方法であって、
    記憶装置へアクセスするためのアクセス要求を受信すること、
    プリフェッチ・バースト・アクセス制御情報を記憶するプリフェッチ制御記憶回路を提供すること、
    前記バースト・アクセス制御情報、及び前記アクセス要求がバースト・アクセスであるか否かに基づき、前記記憶装置へのプリフェッチを選択的に起動すること、
    を備える方法。
  7. 請求項6に記載の方法であって、更に、
    第1相互接続マスタを提供すること、
    第2相互接続マスタを提供すること、
    を備え、前記プリフェッチ制御記憶回路を提供する段階は、前記アクセス要求が前記第1相互接続マスタからであるのか、あるいは前記第2相互接続マスタからであるのかに基づき、前記バースト・アクセス制御情報を提供する複数のプリフェッチ制御記憶回路のうちの1つを選択することを含む、方法。
  8. データ処理システムにおいてプリフェッチ制御を提供するための方法であって、
    第1相互接続マスタを提供すること、
    第2相互接続マスタを提供すること、
    共有記憶装置へアクセスするためのアクセス要求を受信すること、
    前記アクセス要求が前記第1相互接続マスタからであるのか、あるいは前記第2相互接続マスタからであるのかに基づき、プリフェッチ制御記憶回路を選択すること、
    前記共有記憶装置へのアクセス要求によってトリガされるプリフェッチ動作を制御するために、前記プリフェッチ記憶回路に記憶されている制御情報を用いること、
    を備える方法。
  9. 請求項8に記載の方法において、前記共有記憶装置へのアクセス要求によってトリガされるプリフェッチ動作を制御するために、前記プリフェッチ記憶回路に記憶された制御情報を用いる段階は、アクセス要求がバースト・アクセスであるか否かに基づき、前記共有記憶装置へのプリフェッチを選択的に起動することを含む、方法。
  10. 請求項8に記載の方法において、前記共有記憶装置へのアクセス要求によってトリガされるプリフェッチ動作を制御するために、前記プリフェッチ記憶回路に記憶された制御情報を用いる段階は、アクセス要求が、命令アクセスであるのか、あるいはデータ・アクセスであるのかに基づき、前記共有記憶装置へのプリフェッチを選択的に起動することを含む、方法。
JP2006532425A 2003-05-07 2004-04-16 周辺装置アクセス保護付きデータ処理システム Pending JP2007500402A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/431,285 US6871246B2 (en) 2003-05-07 2003-05-07 Prefetch control in a data processing system
PCT/US2004/011874 WO2004102402A1 (en) 2003-05-07 2004-04-16 Data processing system with peripheral access protection

Publications (2)

Publication Number Publication Date
JP2007500402A true JP2007500402A (ja) 2007-01-11
JP2007500402A5 JP2007500402A5 (ja) 2007-06-14

Family

ID=33416427

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006532425A Pending JP2007500402A (ja) 2003-05-07 2004-04-16 周辺装置アクセス保護付きデータ処理システム

Country Status (7)

Country Link
US (1) US6871246B2 (ja)
EP (1) EP1623329A4 (ja)
JP (1) JP2007500402A (ja)
KR (1) KR20060009307A (ja)
CN (1) CN100435122C (ja)
TW (1) TWI345710B (ja)
WO (1) WO2004102402A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012533811A (ja) * 2009-07-20 2012-12-27 フリースケール セミコンダクター インコーポレイテッド プリフェッチ・モジュールを備える信号処理システムおよび集積回路、並びにそのための方法

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7181556B2 (en) * 2003-12-23 2007-02-20 Arm Limited Transaction request servicing mechanism
US7328312B2 (en) * 2005-02-03 2008-02-05 International Business Machines Corporation Method and bus prefetching mechanism for implementing enhanced buffer control
JP2006251923A (ja) * 2005-03-08 2006-09-21 Oki Electric Ind Co Ltd 先読み制御方法
US9304773B2 (en) * 2006-03-21 2016-04-05 Freescale Semiconductor, Inc. Data processor having dynamic control of instruction prefetch buffer depth and method therefor
US8307164B2 (en) 2009-12-15 2012-11-06 International Business Machines Corporation Automatic determination of read-ahead amount
US8583894B2 (en) * 2010-09-09 2013-11-12 Advanced Micro Devices Hybrid prefetch method and apparatus
WO2013030628A1 (en) 2011-09-01 2013-03-07 Freescale Semiconductor, Inc. Integrated circuit device, memory interface module, data processing system and method for providing data access control
US9218310B2 (en) * 2013-03-15 2015-12-22 Google Inc. Shared input/output (I/O) unit
US11126522B2 (en) * 2013-06-18 2021-09-21 Nxp Usa, Inc. Method and apparatus for offloading functional data from an interconnect component
JP6458682B2 (ja) * 2015-08-24 2019-01-30 富士通株式会社 演算処理装置及び演算処理装置の制御方法

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6448159A (en) * 1987-08-19 1989-02-22 Fujitsu Ltd Data prefetch system
JPH0210450A (ja) * 1988-06-29 1990-01-16 Hitachi Ltd キヤツシユメモリの先行フエツチ制御方式
US5327540A (en) * 1991-09-18 1994-07-05 Ncr Corporation Method and apparatus for decoding bus master arbitration levels to optimize memory transfers
JPH07129464A (ja) * 1993-11-05 1995-05-19 Hitachi Ltd 情報処理装置
JPH08137754A (ja) * 1994-11-10 1996-05-31 Fuji Xerox Co Ltd ディスクキャッシュ装置
JPH096704A (ja) * 1995-06-19 1997-01-10 Nec Corp データ転送装置
JPH1055307A (ja) * 1996-04-22 1998-02-24 Internatl Business Mach Corp <Ibm> コンピュータ・システム
JPH10187531A (ja) * 1996-12-27 1998-07-21 Nec Corp キャッシュメモリのプリフェッチ方式
JPH10301847A (ja) * 1997-04-30 1998-11-13 Nec Corp データ記憶装置
JP2000235520A (ja) * 1999-01-15 2000-08-29 Hewlett Packard Co <Hp> キャッシュ・データ管理方法
WO2001004760A1 (fr) * 1999-07-07 2001-01-18 Hitachi, Ltd. Controleur de memoire
US20020052987A1 (en) * 1998-11-19 2002-05-02 Sun Microsystems, Inc. Host controller interface descriptor fetching unit

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02275549A (ja) * 1989-04-18 1990-11-09 Fujitsu Ltd 中間バッファプリフェッチ制御方式
US6453388B1 (en) * 1992-06-17 2002-09-17 Intel Corporation Computer system having a bus interface unit for prefetching data from system memory
US5566324A (en) 1992-12-24 1996-10-15 Ncr Corporation Computer apparatus including a main memory prefetch cache and method of operation thereof
JP3516963B2 (ja) * 1993-03-12 2004-04-05 株式会社東芝 メモリアクセス制御装置
JP3590427B2 (ja) * 1994-08-30 2004-11-17 株式会社ルネサステクノロジ 先行読出機能付命令キャッシュメモリ
US5675749A (en) * 1995-06-02 1997-10-07 Motorola, Inc. Method and apparatus for controlling show cycles in a data processing system
US6085291A (en) * 1995-11-06 2000-07-04 International Business Machines Corporation System and method for selectively controlling fetching and prefetching of data to a processor
US5829028A (en) * 1996-05-06 1998-10-27 Advanced Micro Devices, Inc. Data cache configured to store data in a use-once manner
US6138213A (en) * 1997-06-27 2000-10-24 Advanced Micro Devices, Inc. Cache including a prefetch way for storing prefetch cache lines and configured to move a prefetched cache line to a non-prefetch way upon access to the prefetched cache line
US6012106A (en) * 1997-11-03 2000-01-04 Digital Equipment Corporation Prefetch management for DMA read transactions depending upon past history of actual transfer lengths
US6151662A (en) * 1997-12-02 2000-11-21 Advanced Micro Devices, Inc. Data transaction typing for improved caching and prefetching characteristics
JP3757117B2 (ja) * 1998-12-18 2006-03-22 富士通株式会社 キャッシュ装置及び制御方法
JP2001014840A (ja) * 1999-06-24 2001-01-19 Nec Corp 複数ラインバッファ型メモリlsi
US6636927B1 (en) * 1999-09-24 2003-10-21 Adaptec, Inc. Bridge device for transferring data using master-specific prefetch sizes
US6560693B1 (en) * 1999-12-10 2003-05-06 International Business Machines Corporation Branch history guided instruction/data prefetching
US6542982B2 (en) * 2000-02-24 2003-04-01 Hitachi, Ltd. Data processer and data processing system
US6564286B2 (en) * 2001-03-07 2003-05-13 Sony Corporation Non-volatile memory system for instant-on
US6832280B2 (en) * 2001-08-10 2004-12-14 Freescale Semiconductor, Inc. Data processing system having an adaptive priority controller
US6832296B2 (en) * 2002-04-09 2004-12-14 Ip-First, Llc Microprocessor with repeat prefetch instruction

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6448159A (en) * 1987-08-19 1989-02-22 Fujitsu Ltd Data prefetch system
JPH0210450A (ja) * 1988-06-29 1990-01-16 Hitachi Ltd キヤツシユメモリの先行フエツチ制御方式
US5327540A (en) * 1991-09-18 1994-07-05 Ncr Corporation Method and apparatus for decoding bus master arbitration levels to optimize memory transfers
JPH07129464A (ja) * 1993-11-05 1995-05-19 Hitachi Ltd 情報処理装置
JPH08137754A (ja) * 1994-11-10 1996-05-31 Fuji Xerox Co Ltd ディスクキャッシュ装置
JPH096704A (ja) * 1995-06-19 1997-01-10 Nec Corp データ転送装置
JPH1055307A (ja) * 1996-04-22 1998-02-24 Internatl Business Mach Corp <Ibm> コンピュータ・システム
JPH10187531A (ja) * 1996-12-27 1998-07-21 Nec Corp キャッシュメモリのプリフェッチ方式
JPH10301847A (ja) * 1997-04-30 1998-11-13 Nec Corp データ記憶装置
US20020052987A1 (en) * 1998-11-19 2002-05-02 Sun Microsystems, Inc. Host controller interface descriptor fetching unit
JP2000235520A (ja) * 1999-01-15 2000-08-29 Hewlett Packard Co <Hp> キャッシュ・データ管理方法
WO2001004760A1 (fr) * 1999-07-07 2001-01-18 Hitachi, Ltd. Controleur de memoire

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012533811A (ja) * 2009-07-20 2012-12-27 フリースケール セミコンダクター インコーポレイテッド プリフェッチ・モジュールを備える信号処理システムおよび集積回路、並びにそのための方法

Also Published As

Publication number Publication date
EP1623329A1 (en) 2006-02-08
US20040225758A1 (en) 2004-11-11
CN1809822A (zh) 2006-07-26
KR20060009307A (ko) 2006-01-31
US6871246B2 (en) 2005-03-22
WO2004102402A1 (en) 2004-11-25
TWI345710B (en) 2011-07-21
TW200517856A (en) 2005-06-01
EP1623329A4 (en) 2008-03-26
CN100435122C (zh) 2008-11-19

Similar Documents

Publication Publication Date Title
JP5144542B2 (ja) アドレス変換バイパスを有するデータ処理システム及びその方法
KR101021046B1 (ko) 동적 프리페치 버퍼 구성 및 대체를 위한 방법 및 장치
KR100341948B1 (ko) 제어된버스트메모리액세스기능을갖는데이타처리기및그방법
KR100899951B1 (ko) 캐시 메모리 버스트 싸이클 동안 버스 중재를 제어하는시스템 및 방법
JP4875981B2 (ja) データ処理システムにおけるプリフェッチ制御
JP2007073052A (ja) 集積回路から外部メモリへのアクセス
JP2002140289A (ja) 調整可能ワード・サイズ転送とアドレス配列/増加を備えたマイクロコントローラdmaオペレーション
US7299341B2 (en) Embedded system with instruction prefetching device, and method for fetching instructions in embedded systems
US6341335B1 (en) Information processing system for read ahead buffer memory equipped with register and memory controller
JP2007500402A (ja) 周辺装置アクセス保護付きデータ処理システム
US20020056027A1 (en) Information processing system
KR970003709B1 (ko) 선택적 지연 버스트를 구비한 버스 마스터
WO2014068694A1 (ja) 半導体装置及びキャッシュメモリへのデータ先読み方法
US20140089587A1 (en) Processor, information processing apparatus and control method of processor
TWI324755B (en) Processing modules with multilevel cache architecture
US6633927B1 (en) Device and method to minimize data latency and maximize data throughput using multiple data valid signals
JP2002140284A (ja) マイクロコントローラ
US7130943B2 (en) Data processing system with bus access retraction
US7657690B1 (en) Control of PCI memory read behavior using memory read alias and memory command reissue bits
JP2001256169A (ja) データ転送制御システム及び装置
JP2000047930A (ja) データ処理装置
JP2009042992A (ja) バス制御装置
JPH09269915A (ja) マイクロプロセッサ

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070416

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070416

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100609

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100615

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20101109