TW564352B - Adaptive read pre-fetch - Google Patents

Adaptive read pre-fetch Download PDF

Info

Publication number
TW564352B
TW564352B TW091105742A TW91105742A TW564352B TW 564352 B TW564352 B TW 564352B TW 091105742 A TW091105742 A TW 091105742A TW 91105742 A TW91105742 A TW 91105742A TW 564352 B TW564352 B TW 564352B
Authority
TW
Taiwan
Prior art keywords
pickup
patent application
read
data
coefficient
Prior art date
Application number
TW091105742A
Other languages
English (en)
Inventor
Gary A Solomon
Original Assignee
Intel Corp
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 Intel Corp filed Critical Intel Corp
Application granted granted Critical
Publication of TW564352B publication Critical patent/TW564352B/zh

Links

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/40Bus structure
    • G06F13/4004Coupling between buses
    • G06F13/4027Coupling between buses using bus bridges
    • G06F13/405Coupling between buses using bus bridges where the bridge performs a synchronising function
    • G06F13/4059Coupling between buses using bus bridges where the bridge performs a synchronising function where the synchronisation uses buffers, e.g. for speed matching between buses

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Ultra Sonic Daignosis Equipment (AREA)
  • Television Systems (AREA)
  • Filters That Use Time-Delay Elements (AREA)
  • Image Processing (AREA)
  • Measuring Pulse, Heart Rate, Blood Pressure Or Blood Flow (AREA)
  • Transmission Systems Not Characterized By The Medium Used For Transmission (AREA)
  • Vehicle Body Suspensions (AREA)
  • Image Analysis (AREA)
  • Amplifiers (AREA)
  • Stereo-Broadcasting Methods (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Description

564352 A7 B7 五、發明説明(1 發明領域 本發明係關於電腦讀取預先拾取操作。 發明背景 現存的P C I橋接器根據匯流排規格(如,舉例來說,由 PCI特殊愛好群所發表的Pca部g流排規格校訂版U), 輔助電腦®流排之操作順序與存取的控制。預先拾取運算 去則並未由p c I規格所涵蓋,但是卻廣泛地 :規避,定之基本問題··其不包含嵌入每丄置= 頃取數量。此等裝置利用靜態的讀取預先拾取,對特定 :又操作型4,要求同樣的資訊數量,而不管要求之媒介的 二。雖然此一常數預先拾取數量,彳以藉由裝置具 存器來碉整,所選擇之數量則是常數,且可應用 存器有關之所有要求的媒h靜態預先 能導致預先拾取太多資料。 圖式之簡單說明 圖1係一適應性讀取預先拾取系統之方塊圖。 圖2係一適應性預先拾取之讀取方法的流程圖。 發明之詳細說明 =圖卜顯示適應性讀取預先拾取系統 其於橋接器1 2上且有组株。、工+ 2丄 暫存器M,Α & Z、有,,且件》這些組件包含一預先拾取係數 拾取系:統複寫)的儲存位置。適應性讀取預先 ψ _亦I σ 一重新讀取預先拾取係數暫存器2 0、一 與下,讀取位址暫存器3〇。也顯示出 =疋可預先拾取資料儲存器,如系統記憶體4〇,以及媒 a 5b與3 5c。適應性讀取預先拾取系統⑼之每—個
564352 -^ A7 ' -----— B7_ 五、發明説明(2 ) '一' ------ 元件,宜為電腦之部分或附屬於電腦,如橋接器12,立 預先拾取係數暫存器15、重新讀取預先拾取係數暫存哭、⑼ 切重新讀取計時器25 ’與下一個讀取位址暫存器3〇,;以 田駐仁不疋必要的。圖丨中亦顯示的中央處理器單元 卿)42二其經由一主機橋接器44,與pci主匯流排“通 A °橋接器1 2也能夠與主匯流排4 6通訊。 媒介3 5a、35b或35c可以是任何要求的媒介,如連接到 橋接器12之PCI 2·2第二匯流排3〇上的媒介。一媒介可以是 任何能夠要求匯流排上記憶體讀取操作的若干裝置之一。 在一設置時間,通常是系統重置時,預先拾取係數暫存器 15與重新讀取預先拾取係數暫存器2〇中的數值便被初始化。 記憶體操作 校準 _________, 讀取大小 讀取 DWORD (PFFR+l)M^DW〇RD— 讀取傳輸線 快取傳輸線 (PFFR+1)·快取傳輸 讀取倍數 2快取傳輸線 (PFFR+1)*2快取傳輸^~^ 表1 當匯流排3 0上的媒介要求記憶體讀取操作時,其藉由在 匯泥排3 0上釋出適當的信號,通知所要求之物的橋接器u 。如果橋接器1 2決定要求之物係來自預先拾取之儲存器4 〇 ’則其將所要求之預先定義數量的資料,乘以保持在預先 拾取係數暫存器1 5中的數字。待讀取資料的數量取決於讀 取要求的類型,以及特殊的系統設計,舉例來說,快取^ 輸線的大小。表1顯示三種讀取要求的資料數量。pffr* 預先拾取係數暫存值。 -5- 本紙張尺度適用中國國家標準(CNS) A4規格(210 X 297公釐) 564352
、^取傳輸線是一系列對應於主機C P U快取次系統之連續 的貝料仏元。快取傳輸線確認隨C P U而定的位址校準。 D+WORD疋雙代碼,其長度取決於特殊的電腦記憶體組態。 項取&作可说限制到快取傳輸線邊界。係數是包含於預先 ^取係數暫存器中的數值,而且在電腦操作期間可能被軟 體改變。
裝 5青參見圖2 ’其顯示適應性預先拾取方法1 0 0之流程圖。 系、、.、¥七化時1 〇 5 ’預先拾取係數暫存器的初始值便被 口又疋。k可旎是在系統的唯讀記憶體(r〇m)中,或是可能藉 由“作系、”先或任何其他系統或應用軟體設定(並隨時改變) 成》數在具體實施例中’預先拾取計時器可能初始化 成固定時@ ’其將遞減至零,除非重新設定。 如果媒介提出可預先拾取讀取之要求110 (無論任何 、 、士 ^ 上·]顆玉 訂
則依據讀取類型之讀取數量,(參見表1)乘以預先拾取> 數加一,預先拾取係數被儲存在預先拾取係數暫存器丨5 。因此,如果預先拾取係數暫存器的值是零,則讀取的J 量是乘以一,有效地使特徵失效。 - 下一個讀取暫存器3 〇中的數值,與接收自媒介的讀取4 址數值相比較。如果它們是相同的(意指在下一個讀取位夫 中的數值’係從相同的媒介,儲存成先前讀取 έ 失=為某些原因中斷’如因為缺乏資料所造成:削; 失連而:斷)’則ΐ買取的數量再一次增加。讀取的數量㈣ -加重提預先拾取係數暫存器2 G中的數值1於每一個 先中斷的讀取’其他的執行可以持續地自動增如重新讀耳 -6- 564352 A7 B7 五、發明説明(4 ) 預先拾取係數暫存器中的數值,以及相反地可以週期性地 遞減重新讀取預先拾取係數。 如果碩取要求中的位址,與下一個讀取位址1 2 5中的數 值不吻合,則忽略重新讀取預先拾取暫存器中的數值。在 任何一種情況中,所計算的預先拾取數量是嘗試讀取的 13 5。 表2顯示不同記憶體操作之讀取大小,其使用重新讀取預 先拾取暫存器(RRPFR)數值: 記憶體操作 校準 讀取大小 讀取 DWORD (PFFR+1+RRPFR)*4*D WORD 讀取傳輸線 快取傳輸線 (PFFR+1+RRPFR)*快取傳輸線 讀取倍數 2快取傳輸線 (PFFR+1+RRPFR)*2 快取傳輸線 裝 表2 如果早期碩取終止,則要求的媒介還沒有接收到其推測 需要的所有資料。如果橋接器因為資料耗盡與讀取交易中 斷,而要求的裝置仍然預期額外的資料(亦即仍然釋放p c ^ 匯流排信號訊框FRAME#),早期終止便發生。因為各種不 同的原因,資料可能耗盡,這些原因包含資料結束、緩衝 .區耗盡或其他原因。 在第一個早期終止的情況中,適應性讀取預先拾取過程 從要求的媒介,增加在相同位置(目前讀取之末端)上,下 一個讀取要求取回資料的數量。這是藉由儲存下一個讀取 位址(下一個資料已經取回的位址,其具有早期未被終止的 讀取)以及開始使用重新讀取係數與命令類型的特殊預先拾 本紙張尺度適用中國國家標準(CNS) A4規格(210X297公釐) 訂
線 564352 A7
取數量來完成的。 聰明的預先拾取能力可以藉由程式化與將系統操作成參 數=失效,其中程式化在系統初始化的期間是易於進入二 。第一匯流排上的每一個媒介,可以執行單獨的過程,而 在王要匯流排方面,也可以和第二匯流排一樣執行。
—已經從特殊具體實施例的角度描述本發明。其他的具體 實施例係在下列申請專利範圍的範圍θ。舉例來說,過‘ 可以在一橋接器上、單獨的電路(離散的或積體的)或軟體 中,或軟體與韌體的結合中’或電路中執行。纟不是pci 2.2匯流排系統中’可以成功地使用。並不是所描述之具體 實施例的所有部分都要執行,才可以達到有益結果。 裝 訂
線 -8 -

Claims (1)

  1. 564352
    第091105742號專利申請案 中文申請專利範圍替換本(92年9月) 申請專利範圍 1 . 一種適應性讀取關於電腦之預先拾取之方法,包括·· 從一媒介接收一要求,以從可預先拾取資料儲存器 中之儲存位址,讀取資料; 取回由預先拾取係數所決定之資料的初始數量; 決定要求之媒介所接收的資料是否與其所要求的一 樣多;及 依據此一決定,儲存下一個讀取位址。 2.如申請專利範圍第丨項之方法,進一步包括,在取回步 驟之前,比較讀取位址與儲存之下一個讀取位址,而 如果其吻合,則取回由預先拾取係數與重新讀取預先 拾取係數所決定之資料數量。 3·如申請專利範圍第2項之方法,進一步包括依據該決定 ’改變重新讀取預先拾取係數。 4. 如申請專利範圍第3項之方法,進_步包括在_段間隔 後,改變重新讀取預先拾取係數的步驟。 5. 如申請專利範園第之方法,其中預先拾取係數的數 值是可以改變的。 6. 如申請專利範圍第4項之方法,其中增值是選擇性地生 效或失效。 7· -種適應性讀取關於電腦之預先拾取之系統,包括: 一::腦,其具有至少一個媒介、至少-個橋接器、 二=拾取係數暫存器、—重新讀取預先拾取係數暫 存益與下一個讀取位址暫存器; 遺橋接态被配置成 “尺度適财Μ規格(綱x 29_ 裝 訂 線 564352 、申請專利範圍
    (a) 從一媒介接收一要求,以從可預先拾取資料錄 器中之儲存位址,讀取資料; 存 (b) 要求由儲存於預先拾取係數暫存器中之數字戶、、 定之資料數量; (c)決定要求之媒介是否已經接收所要求之資料 部數量; '^ (d)依據此一決定,增值重新讀取預先拾取係數記綠。 8 ·如申請專利範圍第7項之系統,其中進一步依據該決* 來配置橋接器,以儲存下一個讀取位址。 裝 9·如申請專利範圍第8項之系統,進一步包括橋接器,其 被配置以比較讀取位址與儲存之下一個讀取位址,、 如果其吻合,則亦改變由重新讀取預先拾取係數暫^ 器中數值所決定之資料數量。 3 訂 1〇·如申請專利範圍第7項之系統,進一步包括橋接器,其 依據該決定,被進一步配置以改變重新讀取預先拾取 係數暫存器中數值。 "" ,其 取係 線 11.如申請專利範圍第7項之系統,進一步包括橋接器 在一時間間隔之後,被進一步配置以遞減預先拾 數記錄。 u 12· ^申請專㈣圍第7項之系統,其中預先拾取係數暫存 器的内容是可以改變的。 13.如申請專利範圍第7項之系統,其中該橋接器被進—步 配置,以 <更能夠使預先拾#暫存器與^新讀取預先拾 取暫存器的應用,在電腦的控制下生效與失效。 -2 - 、申請專利範園 H·如申請專利範園第 圏弟7項惑系統,其中預先拾取暫存器係 包含於橋接器中。 τ I5·如申請專利範圍第 t 罘7員惑系統,其中重新讀取預先拾取 暫存器係包含於橋接器中。 1己· 種電腦可讀取姐崎 ^ 媒姐’包括指令以使電腦 從一媒介接收—i +、 文叹要求,以從可預先拾取資料儲存器 中之儲存位址,讀取資料; σ 要求由預先拾取係數所決定之資料數量; Θ決足要求之媒介是否已經接收要求之資料的全部數 量;及 依據此一決定,儲存下一個讀取位址。 λ如申叫專利範圍第丨6項之電腦可讀取媒體,進一步包 括指令以使電腦比較讀取位址與儲存之下一個讀取位 噙果其勿合,則決定亦由重新讀取預先拾取係 數暫存器中數值所要求之資料數量。 18·如申凊專利範圍第16項之電腦可讀取媒體,進一步包 括扣々使I腦依據該決定,增值重新讀取預先拾取 係數記錄。 19·如申睛專利範圍第1 6項之電腦可讀取媒體,進一步包 括指令,使電腦在一段時間間隔後,遞減預先拾取係 數記錄。 20.如申請專利範圍第丨6項之電腦可讀取媒體,其中預先 拾取係數暫存器、重新讀取預先拾取暫存器與下一個 讀取位址係包含於橋接器中。 -3- 本紙張尺度適用中國國家標準(CNS) Α4規格(210X297公釐) 564352 A8 B8 C8 D8 v> [ : ::Ί_ 、申請專利範圍 ^ 丨 21.如申請專利範圍第1 6項之電腦可讀取媒體,其中指令 係儲存在橋接器中,並由其執行。 -4- 本紙張尺度適用中國國家標準(CNS) A4規格(210X 297公釐)
TW091105742A 2001-03-27 2002-03-25 Adaptive read pre-fetch TW564352B (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US09/818,951 US6795876B1 (en) 2001-03-27 2001-03-27 Adaptive read pre-fetch

Publications (1)

Publication Number Publication Date
TW564352B true TW564352B (en) 2003-12-01

Family

ID=25226857

Family Applications (1)

Application Number Title Priority Date Filing Date
TW091105742A TW564352B (en) 2001-03-27 2002-03-25 Adaptive read pre-fetch

Country Status (9)

Country Link
US (1) US6795876B1 (zh)
EP (1) EP1246072B1 (zh)
AT (1) ATE250242T1 (zh)
DE (1) DE60200031T2 (zh)
DK (1) DK1246072T3 (zh)
ES (1) ES2206437T3 (zh)
HK (1) HK1046746B (zh)
PT (1) PT1246072E (zh)
TW (1) TW564352B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI502357B (zh) * 2009-08-11 2015-10-01 Via Tech Inc 資料預先提取方法、裝置及電腦系統

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7051162B2 (en) * 2003-04-07 2006-05-23 Hewlett-Packard Development Company, L.P. Methods and apparatus used to retrieve data from memory before such data is requested
US7424562B2 (en) 2004-03-01 2008-09-09 Cisco Technology, Inc. Intelligent PCI bridging consisting of prefetching data based upon descriptor data
US7318125B2 (en) * 2004-05-20 2008-01-08 International Business Machines Corporation Runtime selective control of hardware prefetch mechanism
TWI243999B (en) * 2004-08-17 2005-11-21 Via Tech Inc Apparatus and related method for maintaining read caching data of south bridge with north bridge
JP2006251923A (ja) * 2005-03-08 2006-09-21 Oki Electric Ind Co Ltd 先読み制御方法
CN100375068C (zh) * 2005-09-29 2008-03-12 威盛电子股份有限公司 选择性预取方法以及桥接模块
CN100392621C (zh) * 2005-10-14 2008-06-04 威盛电子股份有限公司 总线控制器及数据缓冲空间分配方法
JP2007200169A (ja) * 2006-01-30 2007-08-09 Hitachi Ltd ストレージシステム及び記憶制御方法
US8718806B2 (en) * 2011-09-02 2014-05-06 Apple Inc. Slave mode transmit with zero delay for audio interface
US9335809B2 (en) 2013-03-15 2016-05-10 Seagate Technology Llc Volatile memory storing system data during low power mode operation and monitoring the voltage supplied to the memory during low power mode
US9411394B2 (en) 2013-03-15 2016-08-09 Seagate Technology Llc PHY based wake up from low power mode operation
US8766707B1 (en) 2013-03-15 2014-07-01 Seagate Technology Llc Integrated always on power island for low power mode operation
JP6457836B2 (ja) * 2015-02-26 2019-01-23 ルネサスエレクトロニクス株式会社 プロセッサおよび命令コード生成装置

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0284100A3 (en) * 1987-03-27 1991-10-09 Nec Corporation Information processor having instruction prefetch function
JP2530873B2 (ja) * 1988-01-25 1996-09-04 富士通株式会社 命令プリフェッチアドレスの更新回路
US5146578A (en) * 1989-05-01 1992-09-08 Zenith Data Systems Corporation Method of varying the amount of data prefetched to a cache memory in dependence on the history of data requests
US5768548A (en) 1992-04-15 1998-06-16 Intel Corporation Bus bridge for responding to received first write command by storing data and for responding to received second write command by transferring the stored data
US5761464A (en) 1995-05-22 1998-06-02 Emc Corporation Prefetching variable length data
US5860150A (en) * 1995-10-06 1999-01-12 International Business Machines Corporation Instruction pre-fetching of a cache line within a processor
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
US5765213A (en) * 1995-12-08 1998-06-09 Emc Corporation Method providing for the flexible prefetching of data from a data storage system
US5778435A (en) * 1996-05-30 1998-07-07 Lucent Technologies, Inc. History-based prefetch cache including a time queue
US6029228A (en) * 1996-12-31 2000-02-22 Texas Instruments Incorporated Data prefetching of a load target buffer for post-branch instructions based on past prediction accuracy's of branch predictions
US6195735B1 (en) * 1996-12-31 2001-02-27 Texas Instruments Incorporated Prefetch circuity for prefetching variable size data
US5958040A (en) * 1997-05-28 1999-09-28 Digital Equipment Corporation Adaptive stream buffers
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
US6167506A (en) * 1997-11-17 2000-12-26 Advanced Micro Devices, Inc. Replacing displacement in control transfer instruction with encoding indicative of target address, including offset and target cache line location
US6134643A (en) * 1997-11-26 2000-10-17 Intel Corporation Method and apparatus for cache line prediction and prefetching using a prefetch controller and buffer and access history
EP0924620A3 (en) 1997-12-22 2000-06-28 Compaq Computer Corporation Computer system including a bus bridge implementing adaptive speculative read operations
US6401193B1 (en) * 1998-10-26 2002-06-04 Infineon Technologies North America Corp. Dynamic data prefetching based on program counter and addressing mode
JP3206656B2 (ja) * 1998-12-21 2001-09-10 日本電気株式会社 バス上でのプリフェッチ装置およびプリフェッチ方法
US6622212B1 (en) * 1999-05-24 2003-09-16 Intel Corp. Adaptive prefetch of I/O data blocks
US6496921B1 (en) * 1999-06-30 2002-12-17 International Business Machines Corporation Layered speculative request unit with instruction optimized and storage hierarchy optimized partitions
US6609168B1 (en) * 2000-03-31 2003-08-19 Intel Corporation Bus master read request adaptive prefetch prediction method and apparatus
US6625696B1 (en) * 2000-03-31 2003-09-23 Intel Corporation Method and apparatus to adaptively predict data quantities for caching

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI502357B (zh) * 2009-08-11 2015-10-01 Via Tech Inc 資料預先提取方法、裝置及電腦系統

Also Published As

Publication number Publication date
EP1246072A1 (en) 2002-10-02
DK1246072T3 (da) 2004-01-26
PT1246072E (pt) 2004-02-27
ES2206437T3 (es) 2004-05-16
HK1046746A1 (en) 2003-01-24
HK1046746B (zh) 2004-04-23
ATE250242T1 (de) 2003-10-15
DE60200031D1 (de) 2003-10-23
DE60200031T2 (de) 2004-07-08
EP1246072B1 (en) 2003-09-17
US6795876B1 (en) 2004-09-21

Similar Documents

Publication Publication Date Title
TW564352B (en) Adaptive read pre-fetch
JP5274257B2 (ja) フラッシュメモリ・デバイスおよび方法
JP4579494B2 (ja) 順不同の書き込み動作を実行するように構成されたディスク制御装置
US5251312A (en) Method and apparatus for the prevention of race conditions during dynamic chaining operations
US20050108448A1 (en) Hardware assisted ATA command queuing
US10733122B2 (en) System and method for direct memory access in a flash storage
US20020065982A1 (en) 1394 hard disk sector format selection
JP2006502491A (ja) Usbおよび類似用途向けのdmaコントローラ
JP2531907B2 (ja) 分割を許容するバッファ・メモリ管理方法及びその装置
WO2004010316A2 (en) Method, system, and program for handling input/output commands
JP2011108252A (ja) メモリカード及びデータ処理装置並びにメモリカードの制御方法及び設定方法
US20050071570A1 (en) Prefetch controller for controlling retrieval of data from a data storage device
TW200842593A (en) Content-terminated DMA
EP1733308B1 (en) Intelligent pci bridging consisting of prefetching all data prior to sending data to requesting service
TWI227830B (en) Method and apparatus for optimizing data streaming in a computer system utilizing random access memory in a system logic device
JP3747213B1 (ja) シーケンシャルromインターフェース対応nand型フラッシュメモリーデバイス及びそのコントローラ
US6847990B2 (en) Data transfer unit with support for multiple coherency granules
US7818476B2 (en) Direct memory access controller with dynamic data transfer width adjustment, method thereof, and computer accessible storage media
JP2004303239A (ja) 複数の未処理データ要求を処理する方法
US8046434B2 (en) Data communication apparatus and method, data communication system, information-processing apparatus and method, recording medium, and program
JP3825605B2 (ja) データ処理装置
JP2001306481A (ja) 入出力命令実行装置
JP2004355041A (ja) Dma転送中継装置,dma転送方法,及びdma転送システム
GUARD et al. 2 SBC-3 changes
JPH01251151A (ja) バス拡張アダプタ

Legal Events

Date Code Title Description
GD4A Issue of patent certificate for granted invention patent
MM4A Annulment or lapse of patent due to non-payment of fees