TW201342067A - 用於排序記憶體回應之記憶體裝置,電腦系統及方法 - Google Patents

用於排序記憶體回應之記憶體裝置,電腦系統及方法 Download PDF

Info

Publication number
TW201342067A
TW201342067A TW101143134A TW101143134A TW201342067A TW 201342067 A TW201342067 A TW 201342067A TW 101143134 A TW101143134 A TW 101143134A TW 101143134 A TW101143134 A TW 101143134A TW 201342067 A TW201342067 A TW 201342067A
Authority
TW
Taiwan
Prior art keywords
memory
response
responses
logic
command
Prior art date
Application number
TW101143134A
Other languages
English (en)
Other versions
TWI496003B (zh
Inventor
Robert M Walker
Original Assignee
Micron Technology 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 Micron Technology Inc filed Critical Micron Technology Inc
Publication of TW201342067A publication Critical patent/TW201342067A/zh
Application granted granted Critical
Publication of TWI496003B publication Critical patent/TWI496003B/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/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
    • G06F13/1626Handling requests for interconnection or transfer for access to memory bus based on arbitration with latency improvement by reordering requests
    • 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
    • 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/18Handling requests for interconnection or transfer for access to memory bus based on priority control

Abstract

本發明提供可用於接收命令及排序記憶體回應之記憶體裝置。一種此記憶體裝置包含回應邏輯,該回應邏輯係藉由複數個通道耦合至複數個記憶體單元且可經組態以自該複數個記憶體單元接收複數個記憶體回應。排序邏輯可耦合至該回應邏輯且經組態以至少部分基於一系統協定依一順序提供該回應邏輯中之該複數個記憶體回應。例如,該排序邏輯可對儲存於該回應邏輯中之該複數個記憶體回應執行匯流排協定規則以保證依一正確順序自該記憶體裝置提供回應。

Description

用於排序記憶體回應之記憶體裝置,電腦系統及方法
本發明係關於記憶體裝置,且更特定言之,在一實施例中係關於容許同時使用多個記憶體通道之記憶體控制器。
近年來隨著記憶體器件之輸入/輸出速度增加,較新的實施方案已開始接近效能限制,藉此耗盡習知架構之實用性。
因此,為作出補償,一些方法已呈現朝採用多通道記憶體架構之趨勢,其中可經由分離、獨立邏輯通道藉由同時命令來存取一記憶體單元。此容許以一更有效速率透過命令佇列傳遞命令,因為只要一通道變成可用,便可提供命令。簡而言之,將一命令保持於一佇列中之時間量減小。
然而,此方法非不具備缺陷。傳統上,可在異動佇列層級執行藉由一記憶體控制器排序命令。即,排序邏輯係用以對該命令佇列執行特定排序規則以將命令提供給記憶體單元,使得自記憶體單元傳回回應之順序係符合一所要回應順序。因此,按照此方案,一多通道記憶體存取方案之效能受阻於事實上,甚至在一些情況中一通道由於在提供等待命令之前必須自一記憶體單元接收對應於一先前命令之一回應而變得可用,亦不能提供(例如,發出)一些命令。雖然此實施方案保證依正確順序傳回回應,但是在記憶體控制器等待自記憶體單元接收該回應時可用的通道仍保持未被使用。
因此,因此需要一種利用多通道記憶體存取並無關於何時提供回應亦經由可用通道將命令提供給記憶體單元之改良之記憶體裝置及方法。
下文陳述特定細節以提供對本發明之一充分理解。然而,熟習此項技術者將明白,可在不具備此等特定細節之情況下實踐本發明之實施例。此外,本文描述之本發明之特定實施例係以實例方式提供且不應被用以將本發明之範疇限於此等特定實施例。在其他例項中,並未詳細展示熟習的電路、控制信號、時序協定及軟體操作以免不必要的混淆本發明。
圖1圖解說明根據本發明之一實施例之一記憶體裝置100。一記憶體裝置可為一單一記憶體器件(例如)或分離器件之一組合。記憶體裝置可為一單一半導體晶粒或晶粒之一組合之形式,且可處於一單一封裝或封裝之一組合中。該記憶體裝置100可包含耦合至分別接收資料、位址及命令信號之資料匯流排110、位址匯流排112及命令匯流排114之一記憶體控制器102。該記憶體控制器可進一步經由一通信匯流排120耦合至複數個記憶體單元104。該記憶體控制器經組態以回應於產生對應的記憶體回應之記憶體單元104而執行各種記憶體功能,諸如將記憶體命令提供給該等記憶體單元104。該記憶體控制器進一步經組態以至少部分基於藉由一系統匯流排協定指定之一順序提供記憶體回應。在至少一實施例中,記憶體回應可包括對應於一 讀取命令之讀取資料及/或對應於一寫入命令之寫入確認資料。記憶體回應可進一步包括其他類型的資料且不限於本文中的描述。
記憶體單元104可包括任何數目個記憶體單元且進一步可包括任何數目個邏輯記憶體分割區。此外,通信匯流排120可包括任何數目個位元線及任何數目個邏輯通道。例如,在一實施例中,每一記憶體單元可對應於相同數目個邏輯通道,諸如每記憶體單元8個通道。此外,在至少一實施例中,可藉由(例如)增加或降低用以控制記憶體單元104之獨立晶片選擇信號之一數目而改變記憶體單元104中之邏輯記憶體分割區之數目及/或該通信匯流排120之邏輯通道之數目。一般技術者將明白,亦可在不背離本發明之範疇之情況下使用其他實施方案,諸如經組態以增加或降低與每一記憶體單元104相關聯之通道之數目之一分離控制邏輯單元。
在操作中,記憶體控制器102可經由命令匯流排114接收命令並將所接收命令提供給該等記憶體單元104。例如,可藉由一系統匯流排受控器(未展示)經由命令匯流排114提供命令給該記憶體控制器102。亦可藉由其他器件提供命令。可將藉由記憶體控制器102接收之每一命令排入佇列並隨後藉由排序邏輯針對讀取/寫入危險衝突檢查每一命令。一危險衝突可指代由一特定的命令順序(例如,序列)所致之一操作錯誤,諸如提供給記憶體單元104之相同列之讀取命令與寫入命令之間之一頁衝突。該排序邏輯可包 含於記憶體控制器102中,且在一替代性實施例中,該排序邏輯可與記憶體控制器102分離。
除危險檢查以外,記憶體控制器102中之排序邏輯亦可判定一經排入佇列之命令是否遵循一屏障命令。回應於一屏障命令之接收,該排序邏輯可延遲將隨後接收之命令提供給記憶體單元104,直到對應於在接收該屏障命令之前接收之命令之回應依如受控於該記憶體控制器102中之排序邏輯之一所需順序自記憶體單元104提供給該系統匯流排受控器(或將命令提供給該記憶體控制器102之其他器件)。最後,該排序邏輯亦可判定經排入佇列之命令是否可產生一頁命中。即,記憶體控制器102可判定是否可藉由兩個或兩個以上經排入佇列之命令存取記憶體單元104之一相同列且在將每一命令提供給該等記憶體單元104之間不關閉且重新開啟該列。若偵測到一頁命中,該排序邏輯可排序(例如,重新排序)該佇列中之命令(例如,使該佇列中一或多個命令提前或延遲)以減小必須開啟且關閉一特定列之時間量。
如先前描述,假設一所接收命令不產生一危險衝突或頁命中或不遵循一屏障命令,則記憶體控制器102可經組態以至少部分基於一系統匯流排協定排序(例如,重新排序)記憶體回應,且記憶體控制器102可經組態以如經由命令匯流排114接收命令般將命令提供給記憶體單元104。因此,存在以下一可能性:自記憶體單元104提供給記憶體控制器102之記憶體回應可不匹配其中將對應的命令提供 給該等記憶體單元104之順序,亦不匹配系統協定所需順序。為根據一所需順序將記憶體回應提供給一器件(例如,系統匯流排受控器),無關於將該等回應自該等記憶體單元104提供給該記憶體控制器102之順序,記憶體控制器102可控制藉由該記憶體控制器提供回應之順序使得依該所需順序傳回該等回應。
如下文將更詳細地解釋,惟一些命令(例如,危險、頁命中及屏障命令)例外,一命令可在其經排入佇列之後即刻提供給記憶體單元104,因為該排序邏輯容許命令實際上以任何序列提供給記憶體單元104。簡而言之,只要對應於一記憶體單元104之一記憶體通道可用,便可將一命令提供給該記憶體單元104。在至少一實施例中,因為每一記憶體單元通常對應於多個通道,所以多個記憶體命令可同時提供給相同記憶體單元104。
藉由記憶體控制器102接收之命令可包含主控器識別位元(主控器ID),其指示請求發出命令之一系統匯流排主控器;及異動識別位元(異動ID),其指示請求主控器內之一異動串流。若一系統匯流排主控器透過一系統匯流排受控器202(圖2)將多個命令提供給記憶體控制器102,則由於該等命令對應於相同的異動串流,請求系統匯流排主控器在不依賴於其中提供回應之順序之情況下不一定能夠區分該等回應。即,該等回應之順序應對應於藉由該主控器指定以使校正操作發生之所需順序。因此,若在將命令提供給記憶體單元104之後,對應的記憶體回應並未依該所需順 序自該等記憶體單元104提供給記憶體控制器102,則記憶體控制器102在將回應提供給該系統匯流排受控器202時應重新排序該等回應。
圖2圖解說明根據本發明之一實施例之一記憶體裝置200。記憶體裝置200可包含一記憶體控制器201,該記憶體控制器201在至少一實施例中可用於圖1之記憶體裝置100。記憶體控制器201可包含耦合至一記憶體庫狀態機206及排序邏輯210之一佇列204。該佇列204經組態以經由一命令匯流排214自一系統匯流排受控器202接收命令。該記憶體庫狀態機206可藉由一通信匯流排220耦合至記憶體單元208a-n。此外,記憶體控制器201可進一步包括回應邏輯212及讀取資料緩衝器218a-n。讀取資料緩衝器218a-n可藉由通信匯流排225分別耦合至記憶體單元208a-n,且每一讀取資料緩衝器218a-n亦可藉由一緩衝器匯流排230進一步耦合至回應邏輯212。最後,回應邏輯212可藉由一回應匯流排235耦合至該系統匯流排受控器202。在至少一實施例中,回應匯流排235可與其他匯流排實體分離或可與諸如命令匯流排214之其他匯流排多工處理。
在操作中,可經由該命令匯流排214將命令自該系統匯流排受控器202提供給記憶體控制器201之佇列204。接著,該排序邏輯210可針對如先前描述之危險衝突、屏障命令及頁命中檢查所接收命令。在至少一實施例中,諸如在圖2中描述之實施例中,可使用該佇列204以儲存用於複數個記憶體單元208a-n之所接收命令。在另一實施例中, 每一記憶體單元208a-n可耦合至一各自佇列204a-n。
經排入佇列之命令可提供給該記憶體庫狀態機206,其中一旦一通道可用於待存取之記憶體單元208a-n,可旋即將每一命令提供給記憶體單元208a-n。在一實施例中,該記憶體庫狀態機206可含有控制邏輯以判定一通道是否可用,或在另一實施例中,該記憶體庫狀態機206可自外部控制邏輯接收指示一特定通道可用於一命令之一信號。此外,在一實施例中,可使用多個記憶體庫狀態機206。例如,該記憶體控制器201可包含對應於每一記憶體庫208a-n之每一通道之記憶庫狀態機206。記憶體控制器201可替代地對每一通道使用任何數目個記憶體庫狀態機206。
一旦已將一命令提供給一記憶體單元208,該記憶體單元208可旋即將一回應提供給對應的讀取資料緩衝器218。雖然在一實施例中,每一記憶體單元208a-n可對應於一讀取緩衝器218a-n,但是在另一實施例中,記憶體單元208a-n可與一單一讀取資料緩衝器218(未展示)耦合並將回應提供給該讀取資料緩衝器218。一般技術者將明白,可在不背離本發明之範疇之情況下對該讀取資料緩衝器218a-n之實施方案作出變動且實施例並不限於本文陳述之特定實施例。
回應可經由緩衝器匯流排230自該等讀取資料緩衝器218a-n予以提供且藉由該回應邏輯212予以接收。如上所述,一旦藉由該回應邏輯212接收該等回應,該排序邏輯210可旋即排序該等回應使得該等回應係依該請求系統匯 流排主控器所需順序(例如,序列)。例如,該排序邏輯210可經組態以對儲存於該回應邏輯212中之回應執行匯流排協定規則,以保證回應係依一正確順序首先經由回應匯流排235提供給該系統匯流排受控器202且最終提供給該請求系統匯流排主控器。該排序邏輯210可使藉由該回應邏輯212接收之回應係至少部分基於獨立於其中藉由該回應邏輯212接收該等回應之順序之一順序而提供。
圖3係圖解說明根據本發明之一實施例之排序邏輯300之一方塊圖。該排序邏輯300可被用作圖2之記憶體裝置200中之排序邏輯210。該排序邏輯300可包含排序控制邏輯301、一接收佇列310及一回應佇列312,其等所有皆可耦合至回應邏輯305。接收佇列310可經組態以儲存主控器ID、異動ID及讀取識別位元(讀取ID),且回應佇列312可經組態以儲存通道選擇位元及讀取ID。此外,在至少一實施例中,接收佇列310可實施為一移位緩衝器。
在操作中,當一系統匯流排受控器202將一命令提供給佇列204時(圖2),接收佇列310亦可接收該命令並儲存對應於該命令之主控器ID及異動ID。此外,接收佇列310可對該命令產生一唯一讀取ID,進而容許區別該命令與對應於相同的主控器ID及異動ID之命令。隨著提供命令給記憶體單元208a-n且如上所述般提供對應的回應,可將每一回應儲存於回應邏輯305中。此外,對應於每一回應之讀取ID及通道選擇位元可提供給該回應佇列312,進而識別每一回應所對應之命令且識別提供該回應之通道。因為一些命 令可需要使用多個通道,所以使用通道選擇位元容許回應佇列312保證對每一命令提供一完整的回應。在一些實施例中,通道選擇位元可經一位有效編碼(one-hot encode)或可使用二進位用於通道識別。
如上所述,隨著在回應邏輯305中累積回應,排序控制邏輯301可使回應邏輯305至少部分基於該請求主控器所需順序將回應提供給該系統匯流排受控器202。例如,在至少一實施例中,若儲存於回應邏輯305中之回應包括相同的主控器ID及異動ID,則僅可基於在藉由該記憶體控制器201接收到命令時產生之讀取ID來區別該等回應。應將以此方式區分之回應依該所需順序提供給該系統匯流排受控器202,因為該請求主控器將無法以其他方式使該等回應彼此區別。
圖4係圖解說明根據本發明之一實施例之圖2之記憶體裝置200之操作之一時序圖。一系統匯流排受控器202(圖2)可經由命令匯流排214分別將可在時間T0及T1接收之一命令401及一命令402提供給該記憶體控制器201。該等命令可提供給記憶體單元208a-n且隨後在一時間T2可經由該緩衝器匯流排230在回應邏輯212處接收一回應403作為對該命令401之一回應。
一回應410可對應於命令402且如圖4中分別在時間T3-、T3及T3+之回應410圖解說明,可在該時間T2之前、同時或之後經由緩衝器匯流排230藉由該回應邏輯212接收回應410。在諸如圖4中所示之一實施例中,回應邏輯212可在 回應403之前(例如,在時間T3-)接收該回應410。在另一實施例中,回應邏輯212可在回應403之後(例如,在時間T3+)接收該回應410。在又另一實施例中,可近似同時(在時間T3)接收回應410及403。
如上所述,可依如藉由記憶體控制器201接收命令之順序將命令提供給記憶體單元208a-n,且可依一請求主控器所需的一順序將回應提供給該系統匯流排受控器202。因此,無關於藉由該回應邏輯212相對於回應403接收一回應410之一時間,經由回應匯流排235將回應提供給該系統匯流排受控器202之順序皆可保持相同。例如,回應420及421可對應於依一請求主控器所需順序重新排序之回應403及410且分別在時間T4及T5提供。即,無關於其中藉由該回應邏輯212自記憶體單元208a-n(例如,在時間T3-、T3或T3+)接收回應403及410之順序,皆可依如圖4中圖解說明之順序提供回應420及421。此外,如先前描述,無需以接收對應的命令之順序提供回應。例如,在另一實施例中,若需要,可將回應420及421提供給該系統匯流排受控器使得在該回應420之前提供該回應421。
圖5圖解說明根據本發明之一替代性實施例之一記憶體裝置500。該記憶體裝置500包含先前已關於圖2之記憶體裝置描述之元件。圖5使用圖2中使用的相同參考數字展示該等元件,且共同元件之操作係如先前所述。因此,為簡潔起見,將不會重複此等元件之操作之一詳細描述。
與該記憶體裝置200相比,記憶體裝置500進一步包括可 耦合至記憶體單元208a-n且經組態以儲存寫入回應之寫入緩衝器518a-n。寫入緩衝器518a-n可進一步耦合至回應邏輯212,且在一實施例中,可分別對應於記憶體單元208a-n之每一記憶體單元。在另一實施例中,該等寫入緩衝器518a-n可對應於每一通道。在又另一實施例中,一單一寫入緩衝器518(未展示)可耦合至所有記憶體單元208a-n及回應邏輯212。一般技術者將明白,亦可在不背離本發明之範疇之情況下使用其他實施方案,諸如經組態以儲存讀取回應及寫入回應二者之一單一緩衝器。
在操作中,記憶體單元208a-n可被提供寫入命令且繼而提供寫入回應。隨後可將每一寫入回應提供給一寫入緩衝器518,該寫入緩衝器518繼而可將該等回應提供給回應邏輯212。回應邏輯212可依所需順序將該等寫入回應提供給該系統匯流排受控器202。在一實施例中,排序邏輯210可使該回應邏輯212獨立於提供讀取回應之順序將寫入回應提供給該系統匯流排受控器202。在另一實施例中,該排序邏輯210可至少部分基於其中提供讀取回應之順序提供寫入回應。
圖6圖解說明根據本發明之一實施例之一計算系統600。計算系統600可包含經組態以執行各種計算功能之一處理器605及一記憶體裝置603。記憶體裝置603可藉由一匯流排606耦合至處理器605且可進一步包含藉由一通信匯流排620耦合之一記憶體控制器601及記憶體單元608。在至少一實施例中,記憶體控制器601可為圖2中圖解說明之實施 例中之記憶體控制器201。在一些實施例中,計算系統600可包括一桌上型電腦、膝上型電腦、電話、個人數位助理(PDA)、媒體播放器(即,一MP3播放器)、伺服器、電器、遊戲器件、網路連接器件(即,路由器)、電視機或可經組態以執行本文描述之程序之任一程序之至少部分之其他器件。計算系統600亦可包括此等器件之任何組合。
在操作中,如上文參考圖2描述,一系統匯流排受控器(未展示)可自一系統匯流排主控器(未展示)接收記憶體命令。如上文參考圖2描述,該記憶體控制器601可自該系統匯流排受控器接收該等命令且將該等命令提供給該等記憶體單元608。在一些實施例中,該系統匯流排主控器可包含於處理器605中,或可包含於一系統控制器(為展示)中且自處理器605接收命令。此外,在至少一實施例中,記憶體控制器601亦可包含於該系統控制器中。
自該前述將明白,雖然本文已針對圖解之目的描述本發明之特定實施例,但是亦可在不背離本發明之精神及範疇之情況下作出各種修改。例如,雖然本發明之實施例係在排序記憶體控制器中之回應之背景下予以解釋,但是應明白,回應一旦自一記憶體控制器提供給一系統匯流排,可旋即排序回應。因此,惟藉由申請專利範圍限制以外,本發明並無限制。
102‧‧‧記憶體控制器
104‧‧‧記憶體單元
110‧‧‧資料匯流排
112‧‧‧位址匯流排
114‧‧‧命令匯流排
120‧‧‧通信匯流排
200‧‧‧記憶體裝置
201‧‧‧記憶體控制器
202‧‧‧系統匯流排受控器
204‧‧‧佇列
206‧‧‧記憶體庫狀態機
208‧‧‧記憶體單元
208a‧‧‧記憶體單元/記憶體庫
208n‧‧‧記憶體單元/記憶體庫
210‧‧‧排序邏輯
212‧‧‧回應邏輯
214‧‧‧命令匯流排
218a‧‧‧讀取資料緩衝器
218n‧‧‧讀取資料緩衝器
220‧‧‧通信匯流排
225‧‧‧通信匯流排
230‧‧‧緩衝器匯流排
235‧‧‧回應匯流排
300‧‧‧排序邏輯
301‧‧‧排序控制邏輯
305‧‧‧回應邏輯
310‧‧‧接收佇列
312‧‧‧回應佇列
401‧‧‧命令
402‧‧‧命令
403‧‧‧回應
410‧‧‧回應
420‧‧‧回應
421‧‧‧回應
500‧‧‧記憶體裝置
518a‧‧‧寫入緩衝器
518n‧‧‧寫入緩衝器
600‧‧‧計算系統
601‧‧‧記憶體控制器
603‧‧‧記憶體裝置
605‧‧‧處理器
606‧‧‧匯流排
608‧‧‧記憶體單元
620‧‧‧通信匯流排
T0‧‧‧時間
T1‧‧‧時間
T2‧‧‧時間
T3‧‧‧時間
T3-‧‧‧時間
T3+‧‧‧時間
T4‧‧‧時間
T5‧‧‧時間
圖1係根據本發明之一實施例之一記憶體裝置之一方塊圖。
圖2係包含可用於圖1之根據本發明之一實施例之一記憶體控制器之一記憶體裝置之一方塊圖。
圖3係根據本發明之一實施例之一排序邏輯單元之方塊圖,該排序邏輯單元可用於圖2之記憶體控制器。
圖4係圖解說明根據本發明之一實施例之記憶體裝置之操作期間之各種信號之一時序圖。
圖5係根據本發明之一替代性實施例之一記憶體裝置之一方塊圖。
圖6係根據本發明之一實施例之一電腦系統之一方塊圖。
200‧‧‧記憶體裝置
201‧‧‧記憶體控制器
202‧‧‧系統匯流排受控器
204‧‧‧佇列
206‧‧‧記憶體庫狀態機
208a‧‧‧記憶體單元/記憶體庫
208n‧‧‧記憶體單元/記憶體庫
210‧‧‧排序邏輯
212‧‧‧回應邏輯
214‧‧‧命令匯流排
218a‧‧‧讀取資料緩衝器
218n‧‧‧讀取資料緩衝器
220‧‧‧通信匯流排
225‧‧‧通信匯流排
230‧‧‧緩衝器匯流排
235‧‧‧回應匯流排

Claims (30)

  1. 一種記憶體裝置,其包括:回應邏輯,其經組態以接收複數個記憶體回應;及排序邏輯,其耦合至該回應邏輯且經組態以導致至少部分基於一協定排序該複數個記憶體回應。
  2. 如請求項1之裝置,其中該複數個記憶體回應之個別者包括一讀取識別位元,且該排序邏輯進一步經組態以導致至少部分基於各自識別位元排序該複數個回應。
  3. 如請求項1之裝置,其進一步包括:一佇列,其耦合至該排序邏輯,該排序邏輯進一步經組態以導致至少部分基於偵測一頁命中及一危險衝突之至少一者排序該佇列中之複數個命令。
  4. 如請求項3之裝置,其進一步包括:一記憶體庫狀態機,其耦合至該佇列且經組態以自該佇列接收該複數個命令,該記憶體庫狀態機經組態以至少部分基於具有一可用通道之複數個記憶體單元之該至少一者將該複數個命令之至少一者提供給複數個記憶體單元之至少一者。
  5. 如請求項1之裝置,其進一步包括:複數個緩衝器,其等耦合至該回應邏輯且經組態以將該複數個回應提供給該回應邏輯。
  6. 如請求項1之裝置,其進一步包括以下至少一者:一讀取緩衝器,其耦合至該回應邏輯且經組態以提供讀取記憶體回應;及 一寫入緩衝器,其耦合至該回應邏輯且經組態以提供寫入記憶體回應。
  7. 如請求項1之裝置,其中該回應邏輯進一步經組態以儲存讀取記憶體回應及寫入記憶體回應。
  8. 如請求項7之裝置,其中該排序邏輯進一步經組態以導致藉由該回應邏輯接收之記憶體回應讀取及寫入記憶體回應係依獨立於其中藉由該回應邏輯接收該等回應之一順序之一順序而提供。
  9. 一種計算系統,其包括:複數個記憶體單元;一系統匯流排受控器;及一記憶體控制器,其耦合至該等記憶體單元及該系統匯流排受控器,該記憶體控制器包括:回應邏輯,其經組態以依一順序自該複數個記憶體單元接收複數個回應;及排序邏輯,其耦合至該回應邏輯且經組態以導致依獨立於其中藉由該回應邏輯接收該複數個回應之一順序之一順序將該複數個回應提供給該系統匯流排受控器。
  10. 如請求項9之計算系統,其中該記憶體控制器係藉由包括複數個邏輯通道之一匯流排耦合至該複數個記憶體單元。
  11. 如請求項10之計算系統,其中該複數個記憶體單元之各者對應於一各自邏輯通道。
  12. 如請求項9之計算系統,其中該系統匯流排受控器係耦 合至一系統匯流排主控器且經組態以自該系統匯流排主控器接收命令並將回應提供給該系統匯流排主控器。
  13. 如請求項9之計算系統,其中該複數個回應對應於各自複數個命令。
  14. 如請求項9之計算系統,其中該複數個回應包括讀取回應及寫入回應,該等讀取回應包括讀取資料且該等寫入回應包括寫入確認資料。
  15. 如請求項9之計算系統,其中至少部分回應於重新排序藉由該回應邏輯接收之該複數個回應將該複數個回應提供給該系統匯流排主控器。
  16. 一種計算系統,其包括:一處理器;及一記憶體裝置,其耦合至該處理器,該記憶體裝置經組態以產生複數個記憶體回應,該記憶體裝置進一步經組態以依獨立於其中該記憶體裝置產生該等記憶體回應之一順序之一順序將該複數個記憶體回應提供給該處理器。
  17. 如請求項16之計算系統,其中該記憶體裝置包括:複數個記憶體單元,其等經組態以產生該複數個記憶體回應;及一記憶體控制器,其耦合至該等記憶體單元,該記憶體控制器經組態以至少部分基於一排序邏輯接收並排序該複數個記憶體回應。
  18. 如請求項16之計算系統,其中該處理器包括一系統匯流 排主控器,該系統匯流排主控器經組態以將記憶體命令提供給一匯流排並自該匯流排接收該複數個記憶體回應。
  19. 如請求項16之計算系統,其進一步包括一系統控制器,該系統控制器耦合至該處理器及該記憶體裝置,該系統控制器經組態以自該處理器接收命令並將該等命令提供給該記憶體控制器。
  20. 如請求項19之計算系統,其中該記憶體控制器包括一系統匯流排受控器及一系統匯流排主控器之至少一者。
  21. 一種排序記憶體回應之方法,其包括:產生對應於提供給一記憶體單元之複數個命令之複數個記憶體回應;獨立於將該等命令提供給該等記憶體單元之該順序排序該複數個回應;及至少部分基於該排序將該複數個回應提供給一系統匯流排。
  22. 如請求項21之方法,其中該複數個命令之至少一者產生一危險衝突及一頁命中之至少一者。
  23. 如請求項21之方法,其中該複數個命令之至少一者係一緩衝器命令。
  24. 如請求項21之方法,其進一步包括:其中排序該複數個回應包括至少部分基於一系統協定排序該複數個回應。
  25. 如請求項21之方法,其中該複數個命令之至少一者係一 讀取命令。
  26. 如請求項21之方法,其中將該複數個回應提供給一系統匯流排包括:將該複數個回應提供給一系統匯流排受控器。
  27. 一種排序記憶體回應之方法,其包括:接收一第一命令及一第二命令;產生對應於該第一命令之一第一回應及對應於該第二命令之一第二回應;對該第一回應及該第二回應執行排序邏輯;及將對應於該第一回應之一第一排序回應及對應於該第二回應之一第二排序回應提供給一輸出。
  28. 如請求項27之方法,其中該將對應於該第一回應之一第一排序回應及對應於該第二回應之一第二排序回應提供給一輸出包括:將該第二排序回應提供給一系統匯流排;及在該提供該第二排序回應之後,將該第一排序回應提供給該系統匯流排。
  29. 如請求項27之方法,其進一步包括:在該接收一第一命令及一第二命令之後,將該第一命令及該第二命令之至少一者提供給一記憶體單元。
  30. 如請求項29之方法,其中該提供該第一命令及該第二命令之至少一者包括:開啟該記憶體單元之一列;存取該記憶體單元中對應於該第一命令之資料之一第 一集合;存取該記憶體單元中對應於該第二命令之資料之一第二集合;及關閉該記憶體單元之該列。
TW101143134A 2011-12-13 2012-11-19 用於排序記憶體回應之記憶體裝置,電腦系統及方法 TWI496003B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US13/324,877 US8880819B2 (en) 2011-12-13 2011-12-13 Memory apparatuses, computer systems and methods for ordering memory responses

Publications (2)

Publication Number Publication Date
TW201342067A true TW201342067A (zh) 2013-10-16
TWI496003B TWI496003B (zh) 2015-08-11

Family

ID=48573086

Family Applications (1)

Application Number Title Priority Date Filing Date
TW101143134A TWI496003B (zh) 2011-12-13 2012-11-19 用於排序記憶體回應之記憶體裝置,電腦系統及方法

Country Status (7)

Country Link
US (2) US8880819B2 (zh)
EP (1) EP2791941A4 (zh)
JP (1) JP6082752B2 (zh)
KR (1) KR101709385B1 (zh)
CN (1) CN103999159B (zh)
TW (1) TWI496003B (zh)
WO (1) WO2013089937A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI770165B (zh) * 2017-09-20 2022-07-11 韓商愛思開海力士有限公司 記憶體裝置、記憶體系統及其操作方法

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8880819B2 (en) 2011-12-13 2014-11-04 Micron Technology, Inc. Memory apparatuses, computer systems and methods for ordering memory responses
JP5842174B2 (ja) * 2013-03-13 2016-01-13 パナソニックIpマネジメント株式会社 バス制御装置、中継装置およびバスシステム
CN105339917A (zh) * 2013-05-30 2016-02-17 惠普发展公司,有限责任合伙企业 访问存储器中数据的分离的存储器控制器
US10007435B2 (en) 2015-05-21 2018-06-26 Micron Technology, Inc. Translation lookaside buffer in memory
TWI575384B (zh) * 2015-09-04 2017-03-21 慧榮科技股份有限公司 通道控制裝置
US20170160929A1 (en) * 2015-12-02 2017-06-08 Hewlett Packard Enterprise Development Lp In-order execution of commands received via a networking fabric
US10817528B2 (en) * 2015-12-15 2020-10-27 Futurewei Technologies, Inc. System and method for data warehouse engine
US10152237B2 (en) 2016-05-05 2018-12-11 Micron Technology, Inc. Non-deterministic memory protocol
US10534540B2 (en) 2016-06-06 2020-01-14 Micron Technology, Inc. Memory protocol
US10585624B2 (en) 2016-12-01 2020-03-10 Micron Technology, Inc. Memory protocol
US11003602B2 (en) 2017-01-24 2021-05-11 Micron Technology, Inc. Memory protocol with command priority
US10635613B2 (en) 2017-04-11 2020-04-28 Micron Technology, Inc. Transaction identification
US20180373653A1 (en) * 2017-06-21 2018-12-27 Hewlett Packard Enterprise Development Lp Commitment of acknowledged data in response to request to commit
DE102017008186B4 (de) * 2017-08-31 2022-12-15 WAGO Verwaltungsgesellschaft mit beschränkter Haftung Master eines Bussystems
KR102262209B1 (ko) * 2018-02-09 2021-06-09 한양대학교 산학협력단 더미 입출력 요청을 이용한 배리어 명령 전달 방법 및 그 장치
US10764455B2 (en) * 2018-12-31 2020-09-01 Kyocera Document Solutions Inc. Memory control method, memory control apparatus, and image forming method that uses memory control method
US10956166B2 (en) * 2019-03-08 2021-03-23 Arm Limited Instruction ordering
US11093244B2 (en) * 2019-08-28 2021-08-17 Micron Technology, Inc. Command delay
CN112395011B (zh) 2020-11-24 2022-11-29 海宁奕斯伟集成电路设计有限公司 命令响应信息的返回方法、返回控制装置和电子设备

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05151171A (ja) 1991-11-29 1993-06-18 Fuji Facom Corp マルチプロセツサシステムにおけるプロセツサ結合方式
JP2556268B2 (ja) 1993-07-20 1996-11-20 日本電気株式会社 プログラムダウンロード方式
US6272600B1 (en) 1996-11-15 2001-08-07 Hyundai Electronics America Memory request reordering in a data processing system
US6510474B1 (en) * 1998-11-16 2003-01-21 Infineon Technologies Ag Methods and apparatus for re-reordering command and data packets in order to restore an original order of out-of-order memory requests
US6453370B1 (en) * 1998-11-16 2002-09-17 Infineion Technologies Ag Using of bank tag registers to avoid a background operation collision in memory systems
US6748493B1 (en) 1998-11-30 2004-06-08 International Business Machines Corporation Method and apparatus for managing memory operations in a data processing system using a store buffer
US6477610B1 (en) * 2000-02-04 2002-11-05 International Business Machines Corporation Reordering responses on a data bus based on size of response
US6820181B2 (en) * 2002-08-29 2004-11-16 Micron Technology, Inc. Method and system for controlling memory accesses to memory modules having a memory hub architecture
US7188219B2 (en) * 2004-01-30 2007-03-06 Micron Technology, Inc. Buffer control system and method for a memory system having outstanding read and write request buffers
US8060670B2 (en) * 2004-03-17 2011-11-15 Super Talent Electronics, Inc. Method and systems for storing and accessing data in USB attached-SCSI (UAS) and bulk-only-transfer (BOT) based flash-memory device
DE602004012106T2 (de) * 2004-10-11 2009-02-19 Texas Instruments Inc., Dallas Multikanal-DMA mit gemeinsamem FIFO-Puffer
US7587521B2 (en) 2005-06-23 2009-09-08 Intel Corporation Mechanism for assembling memory access requests while speculatively returning data
US7685392B2 (en) 2005-11-28 2010-03-23 International Business Machines Corporation Providing indeterminate read data latency in a memory system
US20080104352A1 (en) * 2006-10-31 2008-05-01 Advanced Micro Devices, Inc. Memory system including a high-speed serial buffer
US9021482B2 (en) * 2007-05-04 2015-04-28 International Business Machines Corporation Reordering data responses using ordered indicia in a linked list
WO2009034652A1 (ja) * 2007-09-14 2009-03-19 Fujitsu Limited 情報処理装置及びその制御方法
JP2010027032A (ja) 2008-06-17 2010-02-04 Nec Electronics Corp Fifo装置及びfifoバッファへのデータ格納方法
JP5474327B2 (ja) * 2008-10-02 2014-04-16 ピーエスフォー ルクスコ エスエイアールエル 半導体記憶装置及びこれを備えるデータ処理システム
US8412880B2 (en) 2009-01-08 2013-04-02 Micron Technology, Inc. Memory system controller to manage wear leveling across a plurality of storage nodes
JP2010287058A (ja) 2009-06-11 2010-12-24 Canon Inc メモリシステム
US8838853B2 (en) * 2010-01-18 2014-09-16 Marvell International Ltd. Access buffer
US8458406B2 (en) * 2010-11-29 2013-06-04 Apple Inc. Multiple critical word bypassing in a memory controller
US8607003B2 (en) * 2011-07-15 2013-12-10 International Business Machines Corporation Memory access to a dual in-line memory module form factor flash memory
US8880819B2 (en) 2011-12-13 2014-11-04 Micron Technology, Inc. Memory apparatuses, computer systems and methods for ordering memory responses

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI770165B (zh) * 2017-09-20 2022-07-11 韓商愛思開海力士有限公司 記憶體裝置、記憶體系統及其操作方法

Also Published As

Publication number Publication date
EP2791941A4 (en) 2015-03-11
US8880819B2 (en) 2014-11-04
CN103999159A (zh) 2014-08-20
US20150052318A1 (en) 2015-02-19
WO2013089937A1 (en) 2013-06-20
JP6082752B2 (ja) 2017-02-15
JP2015500541A (ja) 2015-01-05
EP2791941A1 (en) 2014-10-22
KR101709385B1 (ko) 2017-02-22
CN103999159B (zh) 2017-07-25
US20130151741A1 (en) 2013-06-13
US9575907B2 (en) 2017-02-21
TWI496003B (zh) 2015-08-11
KR20140102738A (ko) 2014-08-22

Similar Documents

Publication Publication Date Title
TWI496003B (zh) 用於排序記憶體回應之記憶體裝置,電腦系統及方法
US7337293B2 (en) Streaming reads for early processing in a cascaded memory subsystem with buffered memory devices
US7222224B2 (en) System and method for improving performance in computer memory systems supporting multiple memory access latencies
US11347665B2 (en) Memory module threading with staggered data transfers
WO2017123413A1 (en) Apparatuses and methods for concurrently accessing multiple partitions of a non-volatile memory
US20160246514A1 (en) Memory system
KR100585116B1 (ko) 멀티 뱅크 메모리의 억세스 효율을 개선한 아비터, 이를구비한 메모리 억세스 중재 시스템 및 그 방법
US20190266113A1 (en) Memory module with reduced read/write turnaround overhead
US9396116B2 (en) Write and read collision avoidance in single port memory devices
US20080235707A1 (en) Data processing apparatus and method for performing multi-cycle arbitration
US20070101032A1 (en) Bus arbitration circuit and bus arbitration method
US8995210B1 (en) Write and read collision avoidance in single port memory devices
US9176906B2 (en) Memory controller and memory system including the same
CN106598742B (zh) 一种ssd主控内部负载均衡系统及方法
JP5383159B2 (ja) バス中継装置及び制御方法
US8713205B2 (en) Data transfer device and data transfer method
US20240094947A1 (en) Memory system
US20220283743A1 (en) Joint command dynamic random access memory (dram) apparatus and methods
JP4593220B2 (ja) メモリアクセス制御方式と方法、及び共有メモリアクセス制御方式と方法
US6700402B2 (en) Output control circuit and output control method
US20090175100A1 (en) Method and apparatus for storage device with a logic unit and method for manufacturing same
WO2014163923A1 (en) Apparatuses and methods for a memory die architecture