JP2009508215A - メモリアクセス要求の遅延アービトレーション - Google Patents
メモリアクセス要求の遅延アービトレーション Download PDFInfo
- Publication number
- JP2009508215A JP2009508215A JP2008530073A JP2008530073A JP2009508215A JP 2009508215 A JP2009508215 A JP 2009508215A JP 2008530073 A JP2008530073 A JP 2008530073A JP 2008530073 A JP2008530073 A JP 2008530073A JP 2009508215 A JP2009508215 A JP 2009508215A
- Authority
- JP
- Japan
- Prior art keywords
- memory access
- memory
- access request
- memory controller
- controller
- 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
- 230000003111 delayed effect Effects 0.000 title abstract description 12
- 238000000034 method Methods 0.000 claims abstract description 32
- 230000004044 response Effects 0.000 claims description 13
- 239000000872 buffer Substances 0.000 claims description 7
- 230000011664 signaling Effects 0.000 claims description 3
- 230000008054 signal transmission Effects 0.000 claims description 2
- 238000007796 conventional method Methods 0.000 description 9
- 230000008901 benefit Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 230000003139 buffering effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1605—Handling requests for interconnection or transfer for access to memory bus based on arbitration
- G06F13/161—Handling requests for interconnection or transfer for access to memory bus based on arbitration with latency improvement
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1605—Handling requests for interconnection or transfer for access to memory bus based on arbitration
- G06F13/1642—Handling requests for interconnection or transfer for access to memory bus based on arbitration with request queuing
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Memory System (AREA)
- Multi Processors (AREA)
- Bus Control (AREA)
Abstract
Description
スケジュールマネージャ128は、現在のメモリアクセスオペレーションの完了が近いと判定すると、dispatch_req信号134をアサートして、メモリコントローラ102に次のメモリアクセス要求をディスパッチするように、アービタ130に通知する。アービタ130は、信号134に応応答して、優先度やタイムスタンプ等の1つ以上の特徴に基づいてキュー132からメモリアクセス要求を選択して、一時的にバッファしてから処理するために、選択されたメモリアクセス要求をメモリコントローラ102にディスパッチする。このため、図1の処理システム100は、従来のシステムが実施しているように、メモリコントローラ102にメモリアクセス要求の空きができると直ちに、メモリアクセス要求をディスパッチするようにアービタ130に指示する代わりに、遅延させたアービトレーション法を実装している。これにより、メモリコントローラにディスパッチされる次のメモリアクセス要求が、メモリアクセス要求を選択すべきほぼ直前の時点まで選択されない。この結果、メモリコントローラ102が、メモリアクセス要求を受け取り可能となった最初の時点の後に、BIU106が受け取る優先度の高いメモリアクセス要求が、アービタ130によって選択されて、メモリコントローラ102にディスパッチされるようになり、システム100の効率が向上する。
別の実施形態では、メモリコントローラ102によって処理されたメモリアクセスオペレーションの一部またはその全てが、所定の期間行われ得る。例えば、メモリコントローラ102は、特定のタイプのリードアクセスオペレーションが、決まったクロックサイクルを要することを認識していてもよい。したがって、このようなリードアクセスオペレーションの完了の予測は、メモリアクセスオペレーションの実際の完了が予測される前の所定の期間で表すことができる。例えば、メモリアクセスオペレーションが8クロックサイクルを要することがわかっている場合、このメモリアクセスオペレーションの完了の予測は、例えば、7番目のクロックサイクルで発生し、この時点で、スケジュールマネージャ128は、dispatch_req信号134をアサートして、メモリコントローラ102に次のメモリアクセス要求をディスパッチするように、アービタ130に通知しうる。
Claims (10)
- メモリコントローラ(102)に第1のメモリアクセス要求をディスパッチするステップと、
前記第1のメモリアクセスオペレーションが示すメモリアクセス要求の完了を予測したことに応答して、前記メモリコントローラ(102)に第2のメモリアクセス要求をディスパッチするステップと、を有する方法。 - 前記メモリアクセスオペレーションの前記完了の予測は、メモリ(104)と前記メモリコントローラ(102)の間の信号伝達によって表される請求項1に記載の方法。
- 前記第1のメモリアクセス要求は、
リードアクセス要求であって、前記信号伝達には、要求されたデータが前記メモリ(104)から前記メモリコントローラ(102)へ転送可能であることを示す信号が含まれている、
ライトアクセス要求であって、前記信号伝達には、書込データが前記メモリ(104)に提供されていることを示す信号が含まれている、のいずれか一方である請求項2に記載の方法。 - 前記メモリアクセスオペレーションの前記完了の予測は、前記メモリアクセスオペレーションが実際に完了する前の所定の期間によって表される請求項2に記載の方法。
- 前記メモリコントローラ(102)で前記第2のメモリアクセス要求を取得することは、前記メモリコントローラ(102)に提供可能な複数のメモリアクセス要求から、前記第2のメモリアクセス要求を選択することを有する請求項1に記載の方法。
- 前記第2のメモリアクセス要求をディスパッチするステップは、前記完了が予測されたことに応答して、前記メモリコントローラ(102)からバスインタフェースユニット(106)に信号(134)を提供するステップを有し、前記バスインタフェースユニット(106)は、前記信号(134)を受け取ったことに応答して、複数のメモリアクセス要求から前記第2のメモリアクセス要求を選択する請求項1に記載の方法。
- メモリ(104)に結合され、メモリアクセス要求を処理するためのメモリコントローラ(102)と、
前記メモリコントローラ(102)に結合されたバスインタフェースユニット(106)と、を有し、前記バスインタフェースユニット(106)は、
1つ以上のメモリアクセス要求を記憶するためのバッファ(132)と、
メモリアクセス要求を受け取るために前記バッファに結合された第1の入力、および前記メモリコントローラ(102)から信号(134)を受け取る第2の入力を有するアービタ(130)と、を有し、前記アービタ(130)は、前記信号(134)に応答して、前記メモリコントローラ(102)にディスパッチするために第2のメモリアクセス要求を選択し、
前記メモリコントローラ(102)は、前記メモリコントローラ(102)に既にディスパッチされている第1のメモリアクセス要求が示すメモリアクセスオペレーションの完了が予測されたことに応答して、前記信号(134)を提供するシステム(100)。 - 前記第1のメモリアクセス要求は、リードアクセス要求であって、前記信号(134)は、要求されたデータが前記メモリ(104)から前記メモリコントローラ(102)へ転送可能であることが示されたことに応答して提供される、
ライトアクセス要求であって、前記信号(134)は、書込データが前記メモリ(104)に提供されていることが示されたことに応答して提供される、のいずれか一方である請求項7に記載のシステム。 - 前記メモリアクセスオペレーションの前記完了の予測は、前記メモリアクセスオペレーションが実際に完了する前の所定の期間によって表される請求項7に記載のシステム。
- 前記アービタ(130)は、前記1つ以上のメモリアクセス要求に関連する優先度に基づいて、前記第2のメモリアクセス要求を選択する請求項7に記載のシステム。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/222,615 US8065457B2 (en) | 2005-09-09 | 2005-09-09 | Delayed memory access request arbitration |
US11/222,615 | 2005-09-09 | ||
PCT/US2006/032742 WO2007032866A1 (en) | 2005-09-09 | 2006-08-23 | Delayed memory access request arbitration |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2009508215A true JP2009508215A (ja) | 2009-02-26 |
JP2009508215A5 JP2009508215A5 (ja) | 2012-08-02 |
JP5058167B2 JP5058167B2 (ja) | 2012-10-24 |
Family
ID=37562281
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008530073A Active JP5058167B2 (ja) | 2005-09-09 | 2006-08-23 | メモリアクセス要求の遅延アービトレーション |
Country Status (8)
Country | Link |
---|---|
US (1) | US8065457B2 (ja) |
EP (1) | EP1922627B1 (ja) |
JP (1) | JP5058167B2 (ja) |
KR (1) | KR101262313B1 (ja) |
CN (1) | CN101258476B (ja) |
DE (1) | DE602006018959D1 (ja) |
TW (1) | TWI426387B (ja) |
WO (1) | WO2007032866A1 (ja) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8195903B2 (en) * | 2006-06-29 | 2012-06-05 | Oracle America, Inc. | System and method for metering requests to memory |
US8478950B2 (en) * | 2008-07-29 | 2013-07-02 | Synopsys, Inc. | Data processing circuit with arbitration between a plurality of queues |
TWI370361B (en) * | 2008-08-21 | 2012-08-11 | Ili Technology Corp | Memory access controlling apparatus and control method thereof |
CN101667448B (zh) * | 2008-09-04 | 2012-11-07 | 奕力科技股份有限公司 | 存储器存取控制装置及其相关控制方法 |
JP5418193B2 (ja) * | 2009-12-14 | 2014-02-19 | 富士ゼロックス株式会社 | 調停装置、画像処理装置、及び画像形成システム |
US20120290810A1 (en) * | 2011-04-18 | 2012-11-15 | Jean-Jacques Lecler | Memory Access Latency Metering |
GB2518884A (en) * | 2013-10-04 | 2015-04-08 | Ibm | Network attached storage system and corresponding method for request handling in a network attached storage system |
US10402324B2 (en) | 2013-10-31 | 2019-09-03 | Hewlett Packard Enterprise Development Lp | Memory access for busy memory by receiving data from cache during said busy period and verifying said data utilizing cache hit bit or cache miss bit |
US9646660B2 (en) * | 2014-09-23 | 2017-05-09 | Intel Corporation | Selectable memory access time |
CN107526534B (zh) * | 2016-06-21 | 2020-09-18 | 伊姆西Ip控股有限责任公司 | 管理存储设备的输入输出(i/o)的方法和设备 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002244919A (ja) * | 2001-02-20 | 2002-08-30 | Matsushita Electric Ind Co Ltd | Dramインターフェース回路 |
US6453401B1 (en) * | 1999-07-02 | 2002-09-17 | Rambus Inc. | Memory controller with timing constraint tracking and checking unit and corresponding method |
US20030070018A1 (en) * | 1999-04-23 | 2003-04-10 | Jiin Lai | Delayed transaction method and device used in a PCI system |
US6594730B1 (en) * | 1999-08-03 | 2003-07-15 | Intel Corporation | Prefetch system for memory controller |
US20030185032A1 (en) * | 2002-03-26 | 2003-10-02 | Zagorianakos Steven W. | Dual bus memory controller |
US20040006662A1 (en) * | 2002-07-03 | 2004-01-08 | Fu-Kuang Frank Chao | Preemptive round robin arbiter |
JP2004070880A (ja) * | 2002-08-09 | 2004-03-04 | Matsushita Electric Ind Co Ltd | メモリインターフェース回路 |
JP2004145598A (ja) * | 2002-10-24 | 2004-05-20 | Nec Corp | コンピュータの共有資源利用制限方法 |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4400771A (en) * | 1975-12-04 | 1983-08-23 | Tokyo Shibaura Electric Co., Ltd. | Multi-processor system with programmable memory-access priority control |
US5524220A (en) * | 1994-08-31 | 1996-06-04 | Vlsi Technology, Inc. | Memory subsystems having look-ahead instruction prefetch buffers and intelligent posted write buffers for increasing the throughput of digital computer systems |
US5892981A (en) | 1996-10-10 | 1999-04-06 | Hewlett-Packard Company | Memory system and device |
US6134625A (en) * | 1998-02-18 | 2000-10-17 | Intel Corporation | Method and apparatus for providing arbitration between multiple data streams |
US6105086A (en) * | 1998-06-04 | 2000-08-15 | Lsi Logic Corporation | Data communication circuit and method for buffering data between a shared resource and multiple interfaces |
US6499090B1 (en) * | 1999-12-28 | 2002-12-24 | Intel Corporation | Prioritized bus request scheduling mechanism for processing devices |
US7093094B2 (en) * | 2001-08-09 | 2006-08-15 | Mobilygen Corporation | Random access memory controller with out of order execution |
US6745308B2 (en) * | 2002-02-19 | 2004-06-01 | Ati Technologies, Inc. | Method and system for bypassing memory controller components |
US6857055B2 (en) * | 2002-08-15 | 2005-02-15 | Micron Technology Inc. | Programmable embedded DRAM current monitor |
US7093059B2 (en) * | 2002-12-31 | 2006-08-15 | Intel Corporation | Read-write switching method for a memory controller |
JP2004287576A (ja) * | 2003-03-19 | 2004-10-14 | Matsushita Electric Ind Co Ltd | バスコントローラ |
-
2005
- 2005-09-09 US US11/222,615 patent/US8065457B2/en active Active
-
2006
- 2006-08-18 TW TW095130385A patent/TWI426387B/zh active
- 2006-08-23 DE DE602006018959T patent/DE602006018959D1/de active Active
- 2006-08-23 WO PCT/US2006/032742 patent/WO2007032866A1/en active Application Filing
- 2006-08-23 JP JP2008530073A patent/JP5058167B2/ja active Active
- 2006-08-23 EP EP06802067A patent/EP1922627B1/en active Active
- 2006-08-23 CN CN2006800326550A patent/CN101258476B/zh active Active
-
2008
- 2008-04-10 KR KR1020087008617A patent/KR101262313B1/ko active IP Right Grant
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030070018A1 (en) * | 1999-04-23 | 2003-04-10 | Jiin Lai | Delayed transaction method and device used in a PCI system |
US6453401B1 (en) * | 1999-07-02 | 2002-09-17 | Rambus Inc. | Memory controller with timing constraint tracking and checking unit and corresponding method |
US6594730B1 (en) * | 1999-08-03 | 2003-07-15 | Intel Corporation | Prefetch system for memory controller |
JP2002244919A (ja) * | 2001-02-20 | 2002-08-30 | Matsushita Electric Ind Co Ltd | Dramインターフェース回路 |
US20030185032A1 (en) * | 2002-03-26 | 2003-10-02 | Zagorianakos Steven W. | Dual bus memory controller |
US20040006662A1 (en) * | 2002-07-03 | 2004-01-08 | Fu-Kuang Frank Chao | Preemptive round robin arbiter |
JP2004070880A (ja) * | 2002-08-09 | 2004-03-04 | Matsushita Electric Ind Co Ltd | メモリインターフェース回路 |
JP2004145598A (ja) * | 2002-10-24 | 2004-05-20 | Nec Corp | コンピュータの共有資源利用制限方法 |
Also Published As
Publication number | Publication date |
---|---|
TW200723001A (en) | 2007-06-16 |
CN101258476B (zh) | 2011-06-08 |
CN101258476A (zh) | 2008-09-03 |
WO2007032866A1 (en) | 2007-03-22 |
US20070067532A1 (en) | 2007-03-22 |
EP1922627A1 (en) | 2008-05-21 |
US8065457B2 (en) | 2011-11-22 |
JP5058167B2 (ja) | 2012-10-24 |
EP1922627B1 (en) | 2010-12-15 |
KR101262313B1 (ko) | 2013-05-08 |
DE602006018959D1 (de) | 2011-01-27 |
TWI426387B (zh) | 2014-02-11 |
KR20080043406A (ko) | 2008-05-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5058167B2 (ja) | メモリアクセス要求の遅延アービトレーション | |
JP4723260B2 (ja) | ソースデバイスに対するリクエストをスケジューリングする装置及び方法 | |
US8312229B2 (en) | Method and apparatus for scheduling real-time and non-real-time access to a shared resource | |
JP4944042B2 (ja) | Soc相互接続において転送待ち時間を低減するための方法および装置 | |
US7822885B2 (en) | Channel-less multithreaded DMA controller | |
JP2009508215A5 (ja) | ||
US6799254B2 (en) | Memory manager for a common memory | |
US7853743B2 (en) | Processor and interrupt controlling method | |
JP2011150397A (ja) | バス調停装置 | |
WO2012001835A1 (ja) | マルチプロセッサシステム | |
JP2010181989A (ja) | データ処理装置 | |
US7340544B2 (en) | Method of using bus and bus interface | |
JP6129976B2 (ja) | 高効率アトミック演算を使用した方法および装置 | |
JP2002304369A (ja) | バスシステム | |
US20060179172A1 (en) | Method and system for reducing power consumption of a direct memory access controller | |
US6735677B1 (en) | Parameterizable queued memory access system | |
JP2006268753A (ja) | Dma回路及びコンピュータシステム | |
JP2007249357A (ja) | 情報処理装置、分散処理システム及びタスク管理方法 | |
CN109426562B (zh) | 优先级加权轮转调度器 | |
JP2006215621A (ja) | Dma制御装置 | |
JP4314230B2 (ja) | 高速シフトタイプバッファ用システム及び方法 | |
JPH11175464A (ja) | 調停装置および方法 | |
JP2004220309A (ja) | マルチプロセッサシステム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20090813 |
|
RD03 | Notification of appointment of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7423 Effective date: 20100421 |
|
RD05 | Notification of revocation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7425 Effective date: 20100902 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20111222 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120111 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20120404 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20120411 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20120509 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20120516 |
|
A524 | Written submission of copy of amendment under article 19 pct |
Free format text: JAPANESE INTERMEDIATE CODE: A524 Effective date: 20120611 |
|
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: 20120711 |
|
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: 20120731 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20150810 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5058167 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 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 |
|
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 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |