TW201737100A - 具有窄頻寬中繼器通道的記憶體子系統 - Google Patents
具有窄頻寬中繼器通道的記憶體子系統 Download PDFInfo
- Publication number
- TW201737100A TW201737100A TW106104763A TW106104763A TW201737100A TW 201737100 A TW201737100 A TW 201737100A TW 106104763 A TW106104763 A TW 106104763A TW 106104763 A TW106104763 A TW 106104763A TW 201737100 A TW201737100 A TW 201737100A
- Authority
- TW
- Taiwan
- Prior art keywords
- memory
- channel
- signal lines
- module
- data
- Prior art date
Links
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/1668—Details of memory controller
- G06F13/1684—Details of memory controller using multiple buses
-
- 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
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1668—Details of memory controller
- G06F13/1678—Details of memory controller using bus width
-
- 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/38—Information transfer, e.g. on bus
- G06F13/40—Bus structure
- G06F13/4004—Coupling between buses
- G06F13/4009—Coupling between buses with data restructuring
- G06F13/4018—Coupling between buses with data restructuring with data-width conversion
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C5/00—Details of stores covered by group G11C11/00
- G11C5/02—Disposition of storage elements, e.g. in the form of a matrix array
- G11C5/04—Supports for storage elements, e.g. memory modules; Mounting or fixing of storage elements on such supports
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C5/00—Details of stores covered by group G11C11/00
- G11C5/06—Arrangements for interconnecting storage elements electrically, e.g. by wiring
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/10—Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/21—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
- G11C11/34—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
- G11C11/40—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
- G11C11/401—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
- G11C11/4063—Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing
- G11C11/407—Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing for memory cells of the field-effect type
- G11C11/409—Read-write [R-W] circuits
- G11C11/4093—Input/output [I/O] data interface arrangements, e.g. data buffers
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Dram (AREA)
- Human Computer Interaction (AREA)
- Memory System (AREA)
Abstract
具有記憶體的一系統包括一中繼器架構於該處記憶體以一個頻寬連結至一主機,及以一較低頻寬中繼該通道。一記憶體電路包括一第一組信號線以在一第一組記憶體裝置與一主機裝置間點對點耦合。該記憶體電路包括一第二組信號線以在該第一組記憶體裝置與一第二組記憶體裝置間點對點耦合。該第二組信號線延伸該記憶體通道至該第二組記憶體裝置。該第二組信號線包括比該第一組信號線更少的資料信號線,用以在該記憶體通道上支援比該第一組信號線一更低的頻寬。
Description
發明領域 本文描述大致上係有關於記憶體通道,及更特別地本文描述係有關於自一通道中繼器之一窄頻寬後端通道。
著作權聲明/權限 本專利文件之部分揭示內容可能含有受著作權保護之材料。當本專利出現在專利商標局的專利檔案或記錄時,著作權擁有者並不反對任何人複製專利文件或專利揭示文,但仍然保有全部著作權權利。著作權聲明適用於後述全部資料及其附圖圖式,以及後述任何軟體:著作權©2016,英特爾公司(Intel Corporation),版權所有。
發明背景 隨著設計及製造能力的不斷改進,處理器持續地變成更具能力且達成更高效能。隨著其能力的提升,對來自裝置的更多功能之需求增高。功能的增加又轉而增加了處理器頻寬的需求。處理器頻寬的需求係與總體資料通量的增高有關。因此,無法將資料移動輸入及輸出具有較高頻寬的處理器可能阻礙處理器效能的持續改良。
現代計算系統包括晶粒上記憶體儲存裝置、或處理器能夠相對快速地存取的快取記憶體、及具有較高容量但耗時較久來存取的主記憶體。較高的處理器通量表示針對記憶體的需求不斷增高,及系統結合愈來愈多的主記憶體容量。主記憶體至處理器的傳統連結係透過原生記憶體通道。原生記憶體通道仰賴自記憶體裝置至主機處理器上的控制器電路或記憶體管理器/驅動裝置的直接連結。如此,傳統記憶體連結係經由多點通道發生,於該處記憶體通道的信號線自實體上安裝最接近處理器的裝置延伸到實體上安裝最遠離處理器的裝置。該等裝置循序地連結及驅動相同信號線。
多點通道限制了能連結至處理器的記憶體裝置數目,其限制了系統的記憶體容量。當更多記憶體裝置及記憶體模組係以原生連結而連結時,記憶體通道上的負載可能降級匯流排上的通訊。因此,於記憶體子系統中提高速度與增加容量間須折衷。折衷表示記憶體頻寬繼續放大至處理器效能的能力有潛在極限。目前系統已達安裝二記憶體模組的原生多點記憶體通道的資料速率極限。雖然增加通道的數目能有助於資料速率問題,但也無法隨著處理器效能的增高擴充。增加通道頻寬可能也不合實際,原因在於信號線數目的增加,以及為了容納額外信號線導致裝置大小及連接器大小的增加。
依據本揭露之一實施例,係特地提出一種記憶體電路,其包含:一第一組信號線,其可點對點耦接以作為在一第一組記憶體裝置與一主機裝置之間的一記憶體通道;一第二組信號線,其可在該第一組記憶體裝置與一第二組記憶體裝置之間點對點耦接,以使該記憶體通道延伸至該第二組記憶體裝置,其中,該第二組信號線包括比該第一組信號線更少的資料信號線,以支援在該記憶體通道上比該第一組信號線更低的頻寬;以及一中繼器,其經耦接以在該第一組信號線與該第二組信號線之間的該記憶體通道上中繼信號。
較佳實施例之詳細說明 如於本文中描述,具有記憶體的一系統包括中繼器架構於該處記憶體以一個頻寬連結至主機,及以較低頻寬中繼該通道。取代多點記憶體通道,此種系統可採用點對點記憶體通道。儘管多點記憶體通道具有全部記憶體裝置或記憶體模組載入直接耦合至主機的相同信號線,但點對點記憶體通道導入中繼該通道的一緩衝器。緩衝器能導致主機將負載只視為單一連結,但通道能透過中繼而延長至額外裝置。
如於本文中描述,記憶體電路包括第一組信號線以在第一組記憶體裝置與主機裝置間點對點耦合。記憶體電路包括第二組信號線以在第一組記憶體裝置與第二組記憶體裝置間點對點耦合。第二組信號線延長該記憶體通道至該第二組記憶體裝置。該第二組信號線包括比該第一組信號線更少的資料信號線,用以在該記憶體通道上支援比該第一組信號線一更低的頻寬。如此,中繼器或緩衝器架構可將多點連結轉換成點對點連結。因電容負載減低故,點對點連結使其能有更高的資料速率,否則電容負載將降級在連結上的高速通訊。
於一個實施例中,記憶體子系統包括點對點通道以連結記憶體模組至中央處理單元(CPU)。點對點通道可擴充至比較傳統於記憶體標準中使用的多點通道遠更高的資料速率。於一個實施例中,記憶體子系統支援每個通道兩個記憶體模組連結至CPU,帶有連結於CPU與該第一模組間之點對點通道,及在第一記憶體模組上的中繼器以提供第二點對點通道至第二模組。於若干描述中,連結可被描述為第一點對點通道及第二點對點通道,或主通道及副通道,或若干其它描述。須瞭解此等描述係用於例示性目的及指稱被中繼的記憶體通道。如此,述及第二通道或副通道須瞭解為指稱記憶體通道之第二部分或記憶體通道之副部分。如此,單一記憶體通道可被視為分開成第一通道及延伸通道,或被視為記憶體通道之分開子通道處理。
具有中繼器通道架構,經延伸的或經中繼的點對點通道係比通道之第一部分窄。更明確言之,自緩衝器或中繼器延伸的通道之第二部分具有比在主機與第一點對點連結間之該通道的該部分更少的信號線。藉由在一對記憶體模組間分享至CPU的頻寬,第二記憶體模組可在更窄的通道上操作以傳遞要求的頻寬。
全文參考在第一記憶體模組與第二記憶體模組間分享頻寬作說明。為求描述的簡明,實例及實施例係就具有主通道之一半頻寬的副通道作說明。須瞭解此等描述為非限制性實例。雖然某些實施方式能在經中繼的通道上分享一半頻寬,但其它實施方式能分享頻寬之其它部分。舉個實例,副通道可被分配三分之一頻寬,諸如藉交錯至/自副記憶體模組的封包於該處每第三個記憶體存取封包被分配給副記憶體模組。須瞭解依據於本文中描述者,記憶體通道之其它分割及其它部分可被分享。熟諳技藝人士將瞭解如何修正系統以分享一半以外的頻寬部分。
又復,全文中述及主及副記憶體模組耦合至相同記憶體通道,頻寬在多個記憶體模組間分享。雖然兩個記憶體模組或DIMM連結至相同記憶體通道提供了一個實例,但須瞭解依據於本文中描述者,也可能透過經中繼的通道延伸記憶體通道至額外記憶體模組。如此,述及主記憶體模組可指耦合至經中繼的通道的一記憶體模組,及進一步中繼該通道至另一記憶體模組。於此種實施方式中,副模組可以是自耦合較接近主機的上游記憶體模組之觀點的副模組且可以是自耦合較遠離主機的下游記憶體模組之觀點的主模組。因此副記憶體模組可在另一經中繼的通道節段上中繼該通道。
於其中有兩個記憶體模組耦合至一記憶體通道的一系統之一實際實施方式中,中繼超過一半頻寬可能不合實際。如此,經中繼的節段或部分可高達原生通道的一半。依據一實施例於該處多於兩個記憶體模組耦合至相同記憶體通道,經中繼的部分可多於頻寬之一半。舉例言之,考慮一個實例於該處三個連結的記憶體模組各自被分配以三分之一總頻寬。第一記憶體模組上的中繼器可在一經中繼的通道上中繼2/3頻寬,及第二記憶體模組上的中繼器可在一第二經中繼的通道上中繼1/3頻寬。於此等實施方式中,中繼器邏輯可更複雜及時序可更複雜,但須瞭解此種實施方式可落入於本文中描述的範圍內。如此,後文中述及第一及第二記憶體模組及具有一半頻寬的一經中繼的通道之描述須瞭解為非限制性實例,及具有更多個記憶體模組及/或具有經中繼的原生記憶體通道之不同部分的系統組態也可適用於本文描述。
對記憶體裝置的敘述可適用於不同的記憶體類型。記憶體裝置通常係指依電性記憶體技術。依電性記憶體為若供應裝置的電力中斷則其狀態(及因而儲存其上的資料)為不確定的記憶體。非依電性記憶體係指即便供應裝置的電力中斷其狀態為確定的記憶體。動態依電性記憶體要求刷新儲存於裝置中之資料以維持狀態。動態依電性記憶體的一個實施例包括動態隨機存取記憶體(DRAM),或若干變化諸如同步DRAM(SDRAM)。如本文描述的記憶體子系統與多種記憶體技術可相容,諸如DDR3(雙倍資料率版本3,原先於2007年6月27日由聯合電子裝置工程委員會(JEDEC)發行,目前為發行版21)、DDR4(DDR版本4,初始規格於2012年9月由JEDEC公告)、DDR4E(DDR版本4,延伸,目前正由JEDEC討論中)、LPDDR3(低功率DDR版本3,JESD209-3B,2013年8月由JEDEC公告)、LPDDR4(低功率雙倍資料率(LPDDR)版本4,JESD209-4,原先於2014年8月由JEDEC公告)、WIO2(寬I/O 2(WideIO2),JESD229-2,原先於2014年8月由JEDEC公告)、HBM(高頻寬記憶體DRAM,JESD235,原先於2013年10月由JEDEC公告)、DDR5(DDR版本5,目前正由JEDEC討論中)、LPDDR5(目前正由JEDEC討論中)、HBM2(HBM版本2),(目前正由JEDEC討論中)、及/或其它,及基於此等規格衍生或延伸的技術。
此外,或另外,依電性記憶體,於一個實施例中,述及記憶體裝置可指即便至裝置的電力中斷其狀態為確定的非依電性記憶體裝置。於一個實施例中,非依電性記憶體裝置為區塊可定址記憶體裝置,諸如NAND或NOR技術。如此,記憶體裝置也可包括未來世代的非依電性裝置,諸如三維交叉點記憶體裝置、或其它位元組可定址非依電性記憶體裝置、或使用硫屬相變材料(例如,硫屬玻璃)的記憶體裝置。於一個實施例中,記憶體裝置可以是或可包括多臨界值層級之NAND快閃記憶體、NOR快閃記憶體、單一或多層級相變記憶體(PCM)、電阻式記憶體、奈米線記憶體、鐵電電晶體隨機存取記憶體(FeTRAM)、結合憶阻器技術的磁阻式隨機存取記憶體(MRAM)記憶體、或自旋轉移矩(STT)-MRAM、或前述中之任一者的組合、或其它記憶體。
本文中描述述及「DRAM」可應用至允許隨機存取的任何記憶體裝置,無論為依電性或非依電性。記憶體裝置或DRAM可指晶粒本身及/或指封裝記憶體產品。
圖1為具有中繼器通道架構之一系統之一實施例的方塊圖,該架構具有較低頻寬中繼器通道以將記憶體通道延伸至另一個記憶體模組。系統100包括於計算裝置中之記憶體子系統的元件。處理器110表示執行作業系統(OS)及應用程式的主機計算平台之處理單元,其可集合地稱作為記憶體的「主機」。OS及應用程式執行導致記憶體存取的操作。處理器110可包括一或多個分開的處理器。各個分開的處理器可包括單一及/或多核心處理單元。處理單元可以是主處理器諸如中央處理單元(CPU)及/或周邊處理器諸如圖形處理單元(GPU)。系統100可以實施為單晶片系統(SoC),或以獨立組件實施。
記憶體控制器120表示用於系統100的一或多個記憶體控制器電路或裝置。記憶體控制器120表示回應於由處理器110執行操作產生記憶體存取指令。記憶體控制器120存取一或多個記憶體裝置140。記憶體裝置140可以是依據前述任何DRAM。於一個實施例中,記憶體裝置140經組織及管理為不同通道,於該處各個通道耦合至匯流排及信號線其並聯耦合至多個記憶體裝置。各個通道為可獨立操作。如此,各個通道經獨立存取及控制,及時序、資料移轉、指令及位址改變,及其它操作針對各個通道為分開。如於本文中使用,耦合可指電氣耦合、通訊、及/或實體耦合。實體耦合可包括直接接觸。電氣耦合包括允許組件間之電氣流動及/或傳訊的介面或互連。通訊耦合包括連結,包括使得組件能交換資料的無線連結。
於一個實施例中,針對各個通道的設定係由分開的模式暫存器或其它暫存器設定控制。於一個實施例中,各個記憶體控制器120管理一分開的記憶體通道,但系統100可經組配以具有由單一控制器管理的多個通道,或在單一通道上有多個控制器。於一個實施例中,記憶體控制器120為主機處理器110的部件,諸如在與處理器相同晶粒上實施的邏輯或於相同封裝空間中實施的邏輯。
記憶體控制器120包括I/O介面邏輯122以耦合至系統匯流排及/或記憶體匯流排,諸如上述記憶體通道。I/O介面邏輯122(以及記憶體裝置140之I/O介面邏輯142)可包括針腳、襯墊、連接器、信號線、線跡、導線、及/或其它硬體以連結該等裝置。I/O介面邏輯122可包括硬體介面。如圖例示,I/O介面邏輯122包括用於信號線的至少驅動裝置/收發器。常見,積體電路介面內部之導線耦合襯墊、針腳、或連接器以以介接裝置間的介面信號線或線跡或其它導線。I/O介面邏輯122可包括驅動裝置、接收器、收發器、終端、及/或其它電路以在裝置間之信號線上發送及/或接收信號。系統匯流排可被實施為耦合記憶體控制器120至記憶體裝置140之多條信號線。系統匯流排包括至少時鐘(CLK)132、指令/位址(CMD)及寫入資料(DQ)134、讀取DQ 136、及零或多個其它信號線138。於一個實施例中,記憶體控制器120與記憶體間之匯流排或連結可稱作記憶體匯流排。用於CMD的信號線可稱作「C/A匯流排」(或ADD/CMD匯流排,或若干其它標示指示指令及位址資訊的移轉)及讀取及寫入DQ的信號線可稱作「資料匯流排」。於一個實施例中,獨立通道具有不同的時鐘信號、C/A匯流排、資料匯流排、及其它信號線。如此,系統100可被考慮為具有多個「系統匯流排」,表示獨立介面路徑可被視為分開的系統匯流排。須瞭解除了明確顯示的線路之外,系統匯流排可包括選通傳訊線、警戒線、補助線、及其它信號線。
須瞭解系統匯流排包括經組配以於頻寬操作的指令及寫入資料匯流排134。於一個實施例中,指令及寫入信號線可包括自主機至記憶體的用於寫入及指令資料的單向線,及讀取DQ 136可包括自記憶體至主機的用於讀取資料的單向線。於一個實施例中,資料匯流排可包括用於讀取資料及/或用於寫入及指令資料的雙向線。基於系統100之設計及/或實施方式,每個記憶體裝置140資料匯流排可具有更多或更少頻寬。舉例言之,資料匯流排可支援具有x32介面、x16介面、x8介面、或其它介面的記憶體裝置。慣例「xW」於該處W為指稱記憶體裝置140之介面大小的二進制整數,其表示多條信號線以與記憶體控制器120交換資料。記憶體裝置之介面大小為有關多少個記憶體裝置可於系統100中每個通道同時使用或並聯耦合相同信號線。
記憶體裝置140表示系統100的記憶體資源。於一個實施例中,各個記憶體裝置140為分開的記憶體晶粒。於一個實施例中,各個記憶體裝置140可每個裝置或晶粒介接多個(例如,2個)通道。各個記憶體裝置140包括I/O介面邏輯142,其具有由裝置之實施方式決定的頻寬(例如,x16或x8或若干其它介面頻寬)。I/O介面邏輯142使得記憶體裝置能介接記憶體控制器120。I/O介面邏輯142可包括硬體介面,且可根據記憶體控制器的I/O 122,但在記憶體裝置末端。於一個實施例中,多個記憶體裝置140並聯至相同資料匯流排。舉例言之,系統100可經組配以多個並聯耦合的記憶體裝置140,各個記憶體裝置對一指令作回應,及存取各自內部的記憶體資源160。用於寫入操作,個別記憶體裝置140可寫入總資料字組的一部分,及用於讀取操作,個別記憶體裝置140可提取總資料字組的一部分。
於一個實施例中,記憶體裝置140係直接配置於計算裝置的母板或主機系統平台(例如,於其上配置處理器110的印刷電路板(PCB))上。於一個實施例中,記憶體裝置140可被組織成記憶體模組130。於一個實施例中,記憶體模組130表示雙列記憶體模組(DIMM)。於一個實施例中,記憶體模組130表示用以分享存取或控制電路的至少一部分的多個記憶體裝置之其它組織結構,其可以是與主機系統平台分開的電路、分開的裝置、或分開的板。記憶體模組130可包括多個記憶體裝置140,記憶體模組可包括支援至配置其上的涵括記憶體裝置之多個分開的通道。
記憶體裝置140各自包括記憶體資源160。記憶體資源160表示用於資料的記憶體位置或儲存位置之個別陣列。典型記憶體資源160係作為資料列管理,透過字線(列)及位元線(一列內部的個別位元)存取。記憶體資源160可被組織成記憶體的分開通道、等級、及排組。通道為至記憶體裝置140內部的儲存位置之獨立控制路徑。等級係指跨多個記憶體裝置的共通位置(例如,於不同裝置內部的相同列位址)。排組係指記憶體裝置140內部的記憶體位置之陣列。於一個實施例中,記憶體之排組被分割成子排組,至少有分享電路(例如,驅動裝置、信號線、控制邏輯)的一部分用於子排組。須瞭解記憶體位置的分開通道、等級、排組、及/或其它組織結構可重疊實體資源。舉例言之,相同的實體記憶體位置可於特定通道上存取為一特定排組,其也可屬於一等級。如此,將以涵括的而非互斥的方式瞭解記憶體資源之組織結構。
於一個實施例中,記憶體裝置140包括一或多個暫存器144。暫存器144表示提供組態或設定用於記憶體裝置之操作的一或多個儲存裝置或儲存位置。於一個實施例中,暫存器144可給記憶體裝置140提供一儲存位置用以儲存資料以供由記憶體控制器120存取作為控制或管理操作的一部分。於一個實施例中,暫存器144包括一或多個模式暫存器。於一個實施例中,暫存器144包括一或多個多用途暫存器。暫存器144內部的位置之組態可組配記憶體裝置140以不同「模式」操作,於該處取決於模式,指令及/或位址資訊或信號線可於記憶體裝置140內部觸發不同操作。暫存器144之設定可指示I/O設定的組態(例如,時序、終端或晶粒上終端(ODT)、驅動裝置組態、及/或其它I/O設定)。
於一個實施例中,記憶體裝置140包括ODT 146作為與I/O 142相關聯的介面硬體之一部分。ODT 146可如前述組配,及提供阻抗設定欲施加至特定信號線的介面。ODT設定可基於記憶體裝置是否為存取操作的經選取目標或非目標裝置而改變。ODT 146設定可影響終端線上的時序及傳訊之反射。審慎地控制ODT 146可使其能更高速操作,具有施加阻抗與負載間之改良匹配。ODT 146可施加至I/O介面142、122的特定信號線,而非必然施加至全部信號線。
記憶體裝置140包括控制器150,其表示記憶體裝置內部的控制邏輯以控制記憶體裝置內部的內部操作。舉例言之,控制器150解碼由記憶體控制器120發送的指令,及產生執行或滿足指令的內部操作。控制器150可被稱作內部控制器。控制器150可基於暫存器144判定選取了哪一種模式,及基於所選取模式組配用於記憶體資源160的操作之存取及/或執行。控制器150產生控制信號以控制記憶體裝置140內部位元的路徑安排,以給經選取的模式提供適當介面及導引指令至適當記憶體位置或位址。
再度參考記憶體控制器120,記憶體控制器120包括指令(CMD)邏輯124,其表示用以生成指令而發送至記憶體裝置140的邏輯或電路。典型地,記憶體子系統中之傳訊包括該指令內部的或伴隨該指令的位址資訊用以指示或選擇一或多個記憶體位置,於該處記憶體裝置須執行該指令。於一個實施例中,記憶體裝置140之控制器150包括指令邏輯152,以接收及解碼透過I/O 142而接收自記憶體控制器120的指令及位址資訊。基於所接收的指令及位址資訊,控制器150可控制記憶體裝置140內部之邏輯及電路的時序操作以執行指令。控制器150負責遵照記憶體裝置140內部的標準或規格,諸如時序及傳訊要求。記憶體控制器120藉存取排程及控制也能確保符合標準或規格。
於一個實施例中,記憶體控制器120包括再新(REF)邏輯126。再新邏輯126可被使用在記憶體裝置140為依電性而需再新以維持確定狀態之處。於一個實施例中,再新邏輯126指示一個用於再新的位置,及欲進行的一型再新。再新邏輯126可觸發記憶體裝置140內部的自行再新,及/或藉發送再新指令而執行外部再新。舉例言之,於一個實施例中,系統100支援全部排組再新以及每個排組再新,或其它全部排組及每個排組指令。全部排組指令造成全部記憶體裝置140內部並聯耦合的經選取排組操作。每個排組指令造成特定記憶體裝置140內部的特定排組操作。於一個實施例中,記憶體裝置140內部的控制器150包括再新邏輯154以於記憶體裝置140內部施加再新。於一個實施例中,再新邏輯154生成內部操作以根據接收自記憶體控制器120的外部再新進行再新。再新邏輯154可判定再新是否導向記憶體裝置140,及回應於該指令哪些記憶體資源160用以再新。
於一個實施例中,系統100包括多個記憶體模組130其包括記憶體裝置140。於一個實施例中,記憶體模組130提供用於記憶體通道的中繼器架構。記憶體通道可包括時鐘132、指令及寫入DQ 134、讀取DQ 136、及零或多個其它控制信號138。於中繼器架構中,記憶體模組130[1]透過記憶體模組130[0]的緩衝器或中繼器172連結至記憶體控制器120。如此,記憶體模組130[0]具有至記憶體控制器120的點對點連結,及記憶體模組130[1]具有至記憶體模組130[0]的點對點連結。於本文中描述的中繼器架構中,記憶體模組130[0]以比記憶體模組130[1]更高的頻寬連結而連結至記憶體控制器120。於一個實施例中,緩衝器172針對全部記憶體通道信號提供自記憶體控制器120的輸入點,以實施點對點連結,及提供至記憶體模組130[0]的全部記憶體裝置140之時鐘、指令/寫入、讀取、及控制介面。須瞭解時鐘132及可能其它控制信號線138可透過緩衝器172中繼。為了例示之目的,中繼通道上的指令及寫入信號線以及讀取信號線具有不同的元件符號(分別為174及176)以識別經中繼的通道或經中繼的通道部分具有較低頻寬。
為了描述目的,自記憶體模組130[0]至記憶體控制器120的點對點連結將稱作為主通道或主連結,而自記憶體模組130[1]至記憶體模組130[0]的點對點連結將稱作為副通道或副連結。於任一情況下,記憶體控制器120可視為具有記憶體模組130[0]及記憶體模組130[1]連結其上的一記憶體通道。傳訊至記憶體模組130[1]的時序可與自記憶體模組130[0]的時序不同。
如於系統100中例示,記憶體模組130[0]具有與記憶體控制器120的原生連結,帶有N條指令及寫入DQ信號線及M條讀取DQ信號線。於一個實施例中,M大於N,但於一個實施例中M可等於N。記憶體模組130[1]不具有與記憶體控制器120的原生連結,及於一個實施例中,連結N/2指令及寫入DQ信號線174及M/2讀取DQ信號線176。須瞭解緩衝器172包括硬體以介接主連結至副連結。於一個實施例中,緩衝器172可包括軟體或其它邏輯以控制指令及寫入信號線134至寫入信號線174的連結及/或讀取信號線136至讀取信號線176的連結。
使用點對點連結,在記憶體控制器120於記憶體通道上的負載相對於多點架構減輕。具有減輕的負載,系統100可以比較對應多點記憶體通道更高的資料速率操作記憶體通道。於一個實施例中,較高的資料速率可使得使用較少的資料針腳以提供相同的通量。於一個實施例中,在經中繼的通道上的傳訊時序係與在主通道上的傳訊時序相同(例如,每個信號線相同的資料速率)。然而,使用較低頻寬連結或較少信號線,因通道之頻寬縮小故,在經中繼的通道上的總資料通量將少於主通道上的資料通量。系統可藉由增加在主通道上使用來移轉資料的週期數(例如,單位間隔或UI)而補償較低頻寬。舉例言之,在N信號線上歷X週期發送的資料可在N/2信號線上歷2X週期發送。
傳統記憶體系統只包括雙向資料通道,其只允許在資料匯流排上的單一操作。於一個實施例中,系統100包括分開的寫入及讀取資料匯流排,包括單向信號線。此等單向信號線可使其能使用一個記憶體模組130進行讀取,而使用另一個記憶體模組130進行寫入。
於一個實施例中,系統100包括第一組信號線以點對點耦合為一記憶體通道,諸如記憶體控制器120或其它主機裝置與記憶體模組130[0]間之信號線。記憶體模組130[0]可被視為第一組記憶體裝置140,指稱記憶體模組上的記憶體裝置。系統100包括第二組信號線以在記憶體模組130[0]與記憶體模組130[1]間點對點耦合,其可被視為第二組記憶體裝置140。如此,緩衝器172可延伸記憶體通道至記憶體模組130[1],但具有較少的資料線及窄或較低的頻寬。緩衝器172包括中繼器,其可中繼自第一組信號線上的主機的信號至第二組信號線,及中繼自第二組信號線上的記憶體裝置的信號至主機。概略言之,緩衝器致能點對點連結功能,及針對多個連結的記憶體裝置提供在記憶體通道上的單一負載例,其可包括在經中繼的通道上的裝置。中繼器使其能中繼記憶體通道至另一記憶體模組及/或另一組記憶體裝置。
於一個實施例中,自記憶體模組130[0]至記憶體模組130[1]的經中繼的通道包括自記憶體控制器120至記憶體模組130[0]的主通道之資料信號線數目的半數資料信號線。於一個實施例中,緩衝器172提供約一半主通道的總頻寬由記憶體模組130[0]使用,及主通道的約一半總頻寬欲在副通道上中繼,由記憶體模組130[1]使用。於一個實施例中,取決於主及副通道之組態,緩衝器172可提供大於半數可用頻寬給記憶體模組130[0],及因而使用比記憶體模組130[1]更多頻寬。
圖2A為具有中繼器通道架構之一系統之一實施例的方塊圖,於其中雙倍資料速率(DDR)模組占用較低頻寬經中繼的通道上之主及副位置兩者。系統202提供依據圖1之系統100的系統之一個實例。系統202包括中央處理單元(CPU)210,其表示記憶體資源連結的主機或主機裝置。CPU 210包括處理資源以於系統202中進行操作。CPU 210也包括記憶體控制器電路及邏輯以驅動指令至記憶體資源及自記憶體資源接收資料。
如圖例示,系統202包括2X分開的通道。於一個實施例中,多個通道連結至相同記憶體模組,例如於一實施方式中,於該處記憶體模組包括經組配以耦合至兩個分開通道的記憶體裝置。系統202中之通道數目將為偶數,例如2、4、6、8、或若干其它通道數目。但於替代實施例中,系統可經設計而使用奇數通道數目。通道於附圖中之位置僅用於例示,而非必然表示實際實施方式。於一個實施例中,通道連結組織成記憶體模組的記憶體裝置群組,諸如DIMM。
於系統202中,各個通道包括兩個記憶體模組,一個主記憶體模組及一個副記憶體模組。如圖例示,全部記憶體模組包括同型記憶體裝置。依據特定實例,記憶體模組包括DDR DRAM。圖2B之系統204包括具有不同型記憶體的記憶體模組之一實例,容後詳述。再度參考系統202,主DDR模組220[0]耦合至CPU 210具有用於讀取資料的R之頻寬及用於指令及寫入資料的W之頻寬。須瞭解R及W並非必然相等,但於一個實施例中可以相等。副DDR模組220[0]耦合至主DDR模組220[0]具有用於讀取資料的R/2之頻寬及用於指令及寫入資料的W/2之頻寬。如此,副連結之頻寬具有通道[0]上的主連結之一半頻寬。其餘通道為類似。
針對在DIMM上使用中繼器的完全經緩衝之DIMM有已知之解決方案。此等解決方案實施第一DIMM與主機間之全寬通道,以及第一與第二DIMM間之全寬通道。然而,於大部分情況下,副DIMM並不要求全頻寬連結,表示副連結於傳統實施例中為過度供給。系統202包括窄的經中繼的通道。縮小經中繼的通道頻寬可減少在CPU 210之封裝上,以及在對應連接器上及PCB線跡連結至副DDR模組上要求的信號針腳之數目。信號針腳及信號線軌跡之減少導致減低的矽成本、較低功率、及較低模組連接器針腳數目。
於一個實施例中,X通道包括單向指令及寫入資料鏈路及單向讀取資料鏈路。於一個實施例中,主模組與副模組間之通道之寬度為CPU 210與主模組間之通道之寬度的一半寬。於一個實施例中,模組220包括具有遵照DDR5標準的DRAM或SDRAM之DIMM。於此種實施例中,如由二模組間之偶數位址分布指示,主及副DIMM可各自傳遞約一半CPU通道頻寬。讀取資料鏈路可自記憶體模組傳遞全讀取頻寬至CPU 210。於一個實施例中,CPU 210可與將資料寫入至副DIMM同時自主DIMM讀取。於一個實施例中,系統202可偏斜頻寬的使用朝向主DIMM。舉例言之,系統202可提供高達全頻寬(全部的R及/或全部的W)給主DIMM,及提供任何請求頻寬給副DIMM。
圖2B為具有中繼器通道架構之一系統之一實施例的方塊圖,於其中雙倍資料速率(DDR)模組占用較低頻寬經中繼的通道上之主位置,及非依電性記憶體占用副位置。系統204提供根據圖1之系統100的一系統之一個實例,且為圖2A之系統202的替代方案。系統204包括中央處理單元(CPU)230,其表示記憶體資源連結的主機或主機裝置。CPU 230包括處理資源以於系統204中進行操作。CPU 230也包括記憶體控制器電路或等效電路及邏輯以驅動指令至記憶體資源及自記憶體資源接收資料。
如圖例示,系統204包括2Y分開的通道,於該處2Y可以是與2X相同或相異的數目。於一個實施例中,多個通道連結至相同記憶體模組,例如於一實施方式中,於該處記憶體模組包括經組配以耦合至兩個分開通道的記憶體裝置。系統204中之通道數目將為偶數,例如2、4、6、8、或若干其它通道數目,但須瞭解於替代實施例中,系統可經設計而使用奇數通道數目。於一個實施例中,通道連結組織成記憶體模組的記憶體裝置群組,諸如DIMM。
於系統204中,各個通道包括兩個記憶體模組,一個主記憶體模組及一個副記憶體。而於系統202中全部記憶體模組包括相同類型技術的記憶體裝置(例如,DDR5 DRAM),系統204例示連結至相同通道的不同類型記憶體模組之一個實例。舉例言之,使用如圖例示的通道[0],通道[0]包括DDR模組240[0]作為連結至CPU 230的主記憶體模組,及非依電性(NV)模組240[0]作為連結至主模組的副記憶體模組。於系統204中,主DDR模組240[0]耦合至CPU 230具有用於讀取資料的R之頻寬及用於指令及寫入資料的W之頻寬。須瞭解R及W並非必然相等,但於一個實施例中可以相等。副NV模組240[0]耦合至主DDR模組240[0]具有用於讀取資料的R/2之頻寬及用於指令及寫入資料的W/2之頻寬。如此,副連結之頻寬具有通道[0]上的主連結之一半頻寬。其餘通道為類似。
於一個實施例中,Y通道包括單向指令及寫入資料鏈路及單向讀取資料鏈路。於一個實施例中,主模組與副模組間之通道之寬度為CPU 210與主模組間之通道之寬度的一半寬。於一個實施例中,主DDR模組240包括具有遵照DDR5標準的DRAM或SDRAM之DIMM,及副DDR模組240包括具有非依電性位元組可定址的隨機存取記憶體裝置之DIMM。於一個實施例中,CPU 210可與將資料寫入至副DIMM同時自主DIMM讀取。於一個實施例中,系統204可偏斜頻寬的使用朝向主DIMM。舉例言之,系統202可提供高達全頻寬(全部的R及/或全部的W)給主DDR記憶體模組,及提供任何請求頻寬給具有非依電性記憶體類型的DIMM。
於一個實施例中,NV模組240包括含具有硫屬玻璃之記憶體胞元的三維記憶體裝置。舉例言之,非依電性記憶體裝置的一個實施方式包括三維交叉點(3DXP)。若DDR模組240包括DDR5記憶體裝置及NV模組240包括3DXP記憶體裝置,則3DXP在窄頻寬通道比較傳統原生記憶體通道連結更有效操作。DDR5記憶體裝置於比3DXP更高速度及更低功率操作。但3DXP於接近DDR記憶體之速度操作且為非依電性。如此,系統204提供高速低功率記憶體伴以略為較低速非依電性記憶體兩者在相同記憶體通道上。
於一個實施例中,當DDR模組240包括DDR5 DIMM及NV模組240包括3DXP模組時,系統204在DDR模組上的DDR5記憶體與3DXP記憶體間分享頻寬(例如,透過緩衝器或中繼器)。於一個實施例中,當沒有3DXP存取要求時,DDR5 DIMM可傳遞全通道頻寬至CPU 230。因藉專用寫入及讀取鏈路致能的頻寬淨高故,顯著量之3DXP頻寬可遞送至CPU 230而不減少DDR5頻寬。
圖3A為具有中繼器通道架構之一系統之一實施例的方塊圖,於其中主及副記憶體模組兩者包括緩衝器。系統302提供依據系統100、及/或系統202或204之系統的一個實例。主機310表示於其中涵括記憶體的系統中控制操作的邏輯。主機310包括處理器316,其可包括一或多個處理資源,其生成存取儲存於記憶體中之資料的請求。記憶體控制器318表示回應於處理器316的資料需要控制存取記憶體的硬體及邏輯。於一個實施例中,記憶體控制器318為處理器316的部件。主機310包括介面312,其表示耦合主機310至記憶體的硬體諸如針腳、球、襯墊、及/或其它硬體。
主機連接器314表示系統302中之硬體以安裝主機310至PCB,或其它基板以互連主機310與主模組330及副模組350之記憶體資源。於一個實施例中,主機310包括耦合至PCB上的安裝位置之離散組件。於一個實施例中,主機310結合於SOC內其安裝於插座內,及介面312可提供電氣及通訊耦合至插座連接器。
主機連接器314以W條指令及寫入信號線322(其亦稱指令/寫入鏈路)及R條讀取信號線324(其亦稱讀取鏈路)連結至主模組連接器334。主模組330耦合至主模組連接器334。主模組330包括記憶體裝置336,其可被考慮為第一組記憶體裝置。記憶體裝置336表示欲藉來自主機310的請求存取的記憶體資源。於一個實施例中,主模組330包括緩衝器338,其表示邏輯使其能自主模組連接器334至主機連接器314的點對點連結,及自主模組連接器334至副模組連接器354的點對點連結。緩衝器338包括提供互連的硬體組件。於一個實施例中,緩衝器338包括韌體及/或軟體邏輯以提供互連。
於一個實施例中,緩衝器338包括主介面332A具有用於主通道連結至主機310的W指令/寫入信號線及R讀取信號線之頻寬。於一個實施例中,緩衝器338包括副介面332B具有用於副通道連結至副模組350的W/2指令/寫入信號線及R/2讀取信號線之頻寬。介面332B可表示緩衝器338之中繼器電路。須瞭解於記憶體子系統之實際實施例中,基於連接器的針腳數目,互連上有限制。如此,傳統系統自主模組330中繼記憶體通道至副模組350不合實際,至少原因在於沒有夠高的針腳計數可資用於支援連結故。如此,經緩衝的DIMM可在DIMM內部中繼信號,但傳統上記憶體通道不中繼為自一個DIMM至另一者的點對點連結,至少原因在於實體針道計數限制故。
如於系統302中提供,自主模組330至副模組350之經中繼的通道具有較少信號線,其可允許點對點連結而無需增加在目前工業標準連接器上的連結接腳數目。此種經中繼的通道包括較少信號線,其縮小了通道的頻寬。然而,縮小的頻寬可藉提高通道上的傳訊速度加以補償。
如此,主機連接器314透過具有W/2條指令與寫入信號線342(其亦稱指令/寫入鏈路)及R/2條讀取信號線344(其亦稱讀取鏈路)的緩衝器338連結至副模組連接器354。副模組350包括記憶體裝置356,其可被考慮為第二組記憶體裝置。記憶體裝置356表示欲藉來自主機310的請求存取的記憶體資源。於一個實施例中,副模組350包括緩衝器358,其可與緩衝器338相同或相似。如此,緩衝器358可包括主介面352A及副介面352B。於一個實施例中,緩衝器358包括類似緩衝器338的中繼器,其使得緩衝器358能支援至下個DIMM(未顯示於圖中)的經中繼的通道。
於系統302之組態中,於一個實施例中,可製造單一DIMM,其可置放於主模組連接器334中或副模組連接器354中。此種實施方式之優點為相同類型的DIMM可連結於任何可用的DIMM插槽。此種組態可要求DIMM知曉其連結類型。於一個實施例中,副模組350發現其係以用於指令/寫入鏈路的W/2信號線及用於讀取鏈路的R/2信號線連結至記憶體通道。於一個實施例中,副模組350組配內部路由及連結以使用縮小頻寬之通道,其可包括緩衝讀取資料欲在更多UI上發送。基於連結至較低頻寬介面,主介面352A及/或副介面352B中之至少部分將不由副模組350使用。
於一個實施例中,系統302之一實際實施例可包括電路板或電路,其包括主機連接器314、主模組連接器334、及副模組連接器354。用於主機連接器314與主模組連接器334間連結的信號線,及用於主模組連接器334與副模組連接器354間連結的信號線可存在於電路中,即便於主機310、主模組330、及/或副模組350之連結之前亦復如此。假設用於第一組態(例如,1DPC(每個通道一個DIMM)),主機310與主模組330連結。於此種組態中,於一個實施例中,主模組330可運用至主機310的全部頻寬。然後假設用戶將副模組350連結入系統302內。於此種情況下(例如,2DPC(每個通道兩個DIMM)),於一個實施例中,緩衝器338可分享主模組330與副模組350間之頻寬至主機310。於一個實施例中,於2DPC組態中,基於分開的指令/寫入鏈路及讀取鏈路的分享利用,系統302可生成較高通量至主機310。舉例言之,主機310可協調寫入至一個模組同時自另一個模組讀取。
於一個實施例中,主模組330與副模組350間之資料位址的小心協調可減少模組上的應力。舉例言之,以適當位址位置分段,半數資料可儲存於主模組330上,及半數資料可儲存於副模組350上。資料的較大分布結果導致較少中繼存取單一模組,其可導致每個記憶體模組之較低功耗。較低功耗可減少否則可能出現在記憶體模組的節流量。舉例言之,當資料流(讀取及/或寫入資料流)的臨界值量集中在一個模組上時,組件傾向於被加熱,導致效率減低。為了防止過熱故障,記憶體模組上的控制器(未特別顯示於圖中)將造成資料由主機存取的節流。展開資料傾向於展開存取,其可能導致單一模組上的較少應力,及因而較少節流。
理論預測提示尖峰效能有一半總頻寬提供給各個記憶體模組。於一個實施例中,於系統302中,主模組330利用約一半總記憶體通道頻寬,及副模組350利用約一半總記憶體通道頻寬。須瞭解總記憶體通道頻寬係指於主機310的記憶體通道連結(例如,透過主機連接器314)。雖然總記憶體通道頻寬係於緩衝器338於主模組330提供,但副模組350只呈現一半總頻寬。
具有縮小的副指令/寫入鏈路及讀取鏈路,系統302有利於較低針腳計數用於較高實施複雜度。較高複雜度來自主機310對記憶體模組的資料存取之管理。於一個實施例中,記憶體控制器318管理資料存取複雜度,例如,藉由遵照針對各個模組之時序及存取頻率的規則。於一個實施例中,替代針對各個記憶體模組分享半個頻寬,系統302可經組配用於主模組330來利用比副模組350更多頻寬。
圖3B為具有中繼器通道架構的一系統之一實施例的方塊圖,於其中主記憶體模組包括支援副通道的緩衝器,及副記憶體模組包括不提供中繼器功能的緩衝器。系統304表示系統302之替代例。系統304包括主機310,具有連結至主機連接器314的處理器316、記憶體控制器318、及介面312。如上此等組件之描述可與前文就系統302描述者相同。系統304包括主模組330,具有連結至主模組連接器334的記憶體裝置336、緩衝器338、主介面332A、及副介面332B。如上此等組件之描述可與前文就系統302描述者相同。
於一個實施例中,系統304包括具有記憶體裝置366的副模組360。副模組360以W/2條指令與寫入信號線342(其亦稱指令/寫入鏈路)及R/2條讀取信號線344(其亦稱讀取鏈路)透過緩衝器338連結至主機連接器314。副模組360包括記憶體裝置366,其可被考慮為第二組記憶體裝置。記憶體裝置366表示欲藉來自主機310的請求存取的記憶體資源。
副模組360係與主模組330不同。換言之,副模組360不包括中繼器。緩衝器368不中繼介面362的連結。副模組360包括用以耦合至副模組連結器364的介面362。於一個實施例中,副模組連結器364係與系統302的副模組連接器354相同。於一個實施例中,副模組360係與主模組330不同,原因在於記憶體裝置366係屬與記憶體裝置336不同型的記憶體。舉例言之,副模組360可以是與非依電性記憶體裝置366不同型模組。於一個實施例中,副模組360包括同型記憶體,在於記憶體裝置366及記憶體裝置336乃同型記憶體,及副模組360係特別設計安裝於副位置。
圖4A為具有中繼器通道架構的一系統之一實施例的方塊圖,其例示針對在記憶體模組上的單一主通道的主及副通道連結。系統402表示依據本文中描述的實施例一記憶體子系統的元件。系統402包括依據本文中描述的任何實施例之記憶體模組410,其表示以縮窄頻寬中繼記憶體通道的記憶體模組,諸如系統100之記憶體模組、系統202或204之DDR模組、或系統302或304之主模組。
於一個實施例中,記憶體模組410包括DRAM 412,其表示記憶體裝置資源。須瞭解記憶體裝置之數目將基於總容量及密度的期望實施方式改變。記憶體模組410包括緩衝器420,其表示依據本文中描述的任何實施例之緩衝器及/或中繼器。緩衝器420使得記憶體模組410能以較低頻寬連結中繼記憶體通道至第二記憶體模組(未特別顯示於圖中)。
於一個實施例中,緩衝器420包括分開的讀取及指令/寫入連結。緩衝器420透過主讀取通道自主機讀取介面432發送讀取資料至主機。於一個實施例中,主機讀取介面432包括M個資料(DQ)信號及一時鐘(CLK)信號。於一個實施例中,單向信號線提供信號。於一個實施例中,系統402包括雙向線路以提供信號。於一個實施例中,緩衝器420透過中繼讀取介面434在副讀取通道上方自連結於記憶體通道上的副DIMM或下一個記憶體模組接收讀取資料。於一個實施例中,中繼讀取介面434包括1/2 M個資料信號及時鐘信號。
緩衝器420在主機指令/寫入介面436透過主指令/寫入通道自主機接收指令及寫入資料。於一個實施例中,主機指令/寫入介面436包括N個資料信號及時鐘信號。於一個實施例中,單向信號線提供信號。於一個實施例中,系統402包括雙向線路以提供信號。於一個實施例中,緩衝器420透過中繼指令/寫入介面438發送指令/寫入資料至連結於記憶體通道上的副DIMM或下個記憶體模組。於一個實施例中,中繼指令/寫入介面438包括1/2 N個資料信號及時鐘信號。
於一個實施例中,系統402施加不同資料速率(DR)至與記憶體模組410交換資料的不同面向。舉例言之,介面432、434、436、及438被例示為以DR之資料速率操作。DRAM 412於DRAM介面414耦合至緩衝器420。於一個實施例中,緩衝器420以1/2 DR之資料速率與DRAM 412交換信號。於一個實施例中,個別DRAM 412以1/4 DR之資料速率操作。於一個實施例中,緩衝器420包括硬體介面邏輯諸如圖中例示的介面以路徑安排資料至其目標或與其目標交換資料。於一個實施例中,緩衝器420包括控制器邏輯422以控制資料自主通道連結流至副通道連結,及反之亦然。於一個實施例中,控制邏輯422包括軟體邏輯。
圖4B為具有中繼器通道架構的一系統之一實施例的方塊圖,其例示針對在記憶體模組上的第一及第二通道的主及副通道連結。系統404表示依據本文中描述的實施例一記憶體子系統的元件。系統404包括依據本文中描述的任何實施例之記憶體模組450,其表示以縮窄頻寬中繼記憶體通道的記憶體模組。
於一個實施例中,記憶體模組450包括兩個通道,亦即通道0及通道1。通道0包括DRAM 452及通道1包括DRAM 456,其可瞭解為獨立記憶體通道。DRAM 452及456表示記憶體模組450中之記憶體裝置資源。須瞭解記憶體裝置之數目將基於總容量及密度之期望實施方式改變。記憶體裝置均勻分配在二通道間,但此種組態並非必要。於一個實施例中,分開通道包括分開緩衝器,緩衝器460用於通道0及緩衝器464用於通道1。於一個實施例中,相同緩衝器可服務用於二通道的窄頻寬經中繼的通道連結。
於一個實施例中,通道0包括緩衝器460,依據本文中描述的任何實施例其可以是緩衝器或中繼器。緩衝器460使得記憶體模組450能以較低頻寬連結中繼通道0自記憶體模組450至第二記憶體模組(未特別顯示於圖中)。於一個實施例中,通道1包括緩衝器464,依據本文中描述的任何實施例其可以是緩衝器及/或中繼器。緩衝器464使得記憶體模組450能以較低頻寬連結中繼通道1自記憶體模組450至第二記憶體模組(未特別顯示於圖中),其可以是與藉經中繼的通道0所連結的相同的或相異的第二記憶體模組。
於一個實施例中,緩衝器460係與系統402之緩衝器420類似或相同。於一個實施例中,緩衝器460包括控制邏輯462以控制主機、記憶體模組450、及連結至經中繼的通道連結的「下一個DIMM」或額外記憶體模組間之資料流。於一個實施例中,緩衝器460包括主機讀取介面482以透過用於通道0(CH0)的主讀取通道發送讀取資料至主機。於一個實施例中,用於通道0的主讀取通道具有M個資料(DQ)信號及一時鐘信號,及以DR之資料速率操作。於一個實施例中,緩衝器460包括中繼讀取介面484以透過用於通道0的副讀取通道自副模組接收讀取資料。於一個實施例中,用於通道0的副讀取通道具有M/2個資料信號及一時鐘信號,及以DR之資料速率操作。
於一個實施例中,緩衝器460包括主機指令/寫入(CMD/WR)介面486以透過用於通道0(CH0)的主指令/寫入通道自主機接收指令及寫入資料。於一個實施例中,用於通道0的主指令/寫入通道具有N個資料信號及一時鐘信號,及以DR之資料速率操作。於一個實施例中,緩衝器460包括中繼指令/寫入介面488以透過用於通道0的副指令/寫入通道發送指令及寫入資料至副模組。於一個實施例中,用於通道0的副指令/寫入通道具有N/2個資料信號及一時鐘信號,及以DR之資料速率操作。
於一個實施例中,緩衝器464係與緩衝器460類似或相同。於一個實施例中,緩衝器464包括控制邏輯466以控制主機、記憶體模組450、及連結至經中繼的通道連結的「下一個DIMM」或額外記憶體模組間之資料流。於一個實施例中,緩衝器464包括主機讀取介面492以透過用於通道1(CH1)的主讀取通道發送讀取資料至主機。於一個實施例中,用於通道1的主讀取通道具有M個資料(DQ)信號及一時鐘信號,及以DR之資料速率操作。於一個實施例中,緩衝器464包括中繼讀取介面494以透過用於通道1的副讀取通道自副模組接收讀取資料。於一個實施例中,用於通道1的副讀取通道具有M/2個資料信號及一時鐘信號,及以DR之資料速率操作。
於一個實施例中,緩衝器464包括主機指令/寫入(CMD/WR)介面496以透過用於通道1(CH1)的主指令/寫入通道自主機接收指令及寫入資料。於一個實施例中,用於通道1的主指令/寫入通道具有N個資料信號及一時鐘信號,及以DR之資料速率操作。於一個實施例中,緩衝器464包括中繼指令/寫入介面498以透過用於通道1的副指令/寫入通道發送指令及寫入資料至副模組。於一個實施例中,用於通道1的副指令/寫入通道具有N/2個資料信號及一時鐘信號,及以DR之資料速率操作。
於一個實施例中,系統404施加不同資料率(DR)至與記憶體模組450交換資料的不同面向。舉例言之,外部介面482、484、486、488、492、494、496、及498被例示為以DR之資料速率操作。DRAM 452以1/2 DR之資料速率於DRAM介面454耦合至緩衝器460。於一個實施例中,個別DRAM 452以1/4 DR之資料速率操作。同理,DRAM 456以1/2 DR之資料速率於DRAM介面458耦合至緩衝器464。於一個實施例中,個別DRAM 456以1/4 DR之資料速率操作。
圖4C為具有中繼器通道架構的一系統之一實施例的方塊圖,其例示針對主及副通道連結的差分傳訊。系統406表示依據本文中描述的實施例一記憶體子系統之元件。系統406包括記憶體模組440,其表示依據本文中描述的任何實施例以縮窄的頻寬中繼一記憶體通道的記憶體模組,諸如系統100之記憶體模組、系統202或204之DDR模組、或系統302或304之主模組。記憶體模組440提供依據系統402之模組410、或系統404之模組450的記憶體模組之一實施例的實例。
更明確言之,記憶體模組440例示使用記憶體子系統之差分傳訊。於一個實施例中,系統406多工化DRAM資料至鏈結到主機窄高速差分鏈路上。須瞭解記憶體子系統內部之差分傳訊因差分傳訊之改良信號品質故,使得資料速率能進一步提高。信號品質的改良對記憶體存取操作有益,但差分傳訊傳統上將要求過多信號線以嵌合入DIMM插槽連接器內部。然而,如於本文中使用點對點差分資料鏈路及具有較低頻寬之經中繼的通道描述,使用現有記憶體模組連接器針腳計數能實施差分實施例。
於一個實施例中,記憶體模組440包括DRAM 442,其表示記憶體裝置資源。須瞭解記憶體裝置之數目將基於總容量及密度的期望實施方式改變。記憶體模組440包括緩衝器424,其表示依據本文中描述的任何實施例之緩衝器及/或中繼器。緩衝器424使得記憶體模組440能以較低頻寬連結中繼記憶體通道至第二記憶體模組(未特別顯示於圖中)。主通道及經中繼的或副通道兩者為相異。
於一個實施例中,緩衝器424包括分開的讀取及指令/寫入連結。緩衝器424以DR之資料速率,透過主讀取通道自主機讀取介面472發送讀取資料至主機。於一個實施例中,主機讀取介面472包括M個資料(DQ)信號對及一時鐘(CLK)信號對。於系統402及404中,取決於該等系統之實施方式,述及信號之數目,其可指信號線之數目或信號對之數目。於一個實施例中,緩衝器424以DR之資料速率,透過中繼讀取介面474在副讀取通道上方自連結於記憶體通道上的副DIMM或下一個記憶體模組接收讀取資料。於一個實施例中,中繼讀取介面474包括1/2 M個資料信號對及時鐘信號對。
緩衝器424以DR之資料速率,在主機指令/寫入介面476透過主指令/寫入通道自主機接收指令及寫入資料。於一個實施例中,主機指令/寫入介面476包括N個資料信號對及時鐘信號對。於一個實施例中,緩衝器424以DR之資料速率,透過中繼指令/寫入介面478發送指令/寫入資料至連結於記憶體通道上的副DIMM或下個記憶體模組。於一個實施例中,中繼指令/寫入介面478包括1/2 N個資料信號對及時鐘信號對。
於一個實施例中,緩衝器424及記憶體模組440之面向外的介面包括針對資料的差分信號對。面向外的介面係指具有裝置在記憶體模組440外部的介面。如此,至主機的及至下個DIMM的連結為面向外的介面。於一個實施例中,緩衝器424至DRAM的面向內的介面為單端而非差分。如此,舉例言之,DRAM介面444只包括單端信號線而非差分信號對以耦合至DRAM 442。於一個實施例中,DRAM 442以等於1/4 DR之速度操作,及以1/2 DR之資料速率耦合至DRAM介面444。於一個實施例中,緩衝器424包括硬體介面邏輯諸如圖中例示的介面以路徑安排資料至其目標或與其目標交換資料。於一個實施例中,緩衝器424包括控制器邏輯426以控制資料自主通道連結流至副通道連結,及反之亦然。於一個實施例中,控制邏輯426包括軟體邏輯。
圖5為一系統之一實施例的方塊圖,於其中一記憶體控制器排程用於具有不同頻寬之主及副通道節段的中繼器通道架構的指令。系統500表示依據圖1之系統100一系統之一實施例的實例。系統500包括處理器510,其包括用以執行處理512的硬體資源。處理器510可包括一或多個處理裝置,其可包括多核心處理器。處理512表示在處理器510上執行的代理器、執行緒、常式、軟體程式、或其它軟體。處理512生成針對儲存於記憶體中之資料的請求,用以讀取及/或寫入資料。
系統500包括記憶體控制器520,其可以是獨立組件或整合成處理器510之控制器電路。回應於自處理512對資料的請求,記憶體控制器520控制存取至記憶體。記憶體控制器520包括排程器522,其使得記憶體控制器520能排程對記憶體的請求之時序。系統500包括至少兩組記憶體裝置,如由主模組530之記憶體裝置502及副模組540之記憶體裝置504表示。排程器522管理對記憶體裝置502及504之指令的排序。指令的排序之管理使得記憶體控制器520能在分開兩組記憶體裝置間排程存取。雖然圖中例示為分開的記憶體裝置組,但於一個實施例中類似技術可被使用來分開地存取具有點對點連結的兩個記憶體裝置。
於一個實施例中,主模組530包括緩衝器532,其表示依據本文中描述的任何實施例的緩衝器及/或中繼器。緩衝器532以主機指令/寫入介面552接收指令及寫入資料。至主機指令/寫入介面552的鏈路具有相關聯的頻寬,其可以是原生記憶體通道連結的頻寬。於一個實施例中,副模組540包括緩衝器542,其表示不執行中繼功能的緩衝器。緩衝器542以縮窄的頻寬,使用主機指令/寫入介面558自主模組530接收指令及寫入資料。
於一個實施例中,緩衝器532包括指令/寫入引擎554,以管理使得能點對點連結至副模組540的記憶體通道之中繼。緩衝器532可中繼指令及寫入資料流量自主機至副模組540。指令/寫入引擎554可透過後端指令/寫入介面556,其為中繼指令及資料至副模組540的介面,移轉指令及寫入資料。後端指令/寫入介面556可被指稱為中繼介面。後端指令/寫入介面556介接副模組540的主機指令/寫入介面558。於一個實施例中,主機指令/寫入介面558為緩衝器542的部件,但副模組540之緩衝器542並不必要包括中繼器於緩衝器內。
用於讀取流通訊息,副模組540之主機讀取介面548使副模組能發送讀取資料至記憶體控制器520及處理器510。於一個實施例中,主機讀取介面548為在副模組540的緩衝器542之部件。主機讀取介面548介接主模組530之緩衝器532之後端讀取介面546。於一個實施例中,緩衝器532包括讀取引擎544以管理使其能點對點連結至副模組540的記憶體通道之中繼。緩衝器532可中繼自副模組540至主機的讀取資料流通訊息。讀取引擎544可透過主機讀取介面542,其為至記憶體控制器520及處理器510之介面,移轉讀取資料。
於一個實施例中,記憶體控制器520透過排程器522可經組配以基於由讀取引擎544及指令/寫入引擎554管理流通訊息而排程資料存取至記憶體裝置502及至記憶體裝置504。如此,排程器522可基於至記憶體裝置的預期時序、及至模組之可用頻寬而排程讀取及寫入至主模組530及副模組540。
圖6為針對中繼器通道架構之一時序表示型態之一實施例的方塊圖,於其中主及副通道節段具有不同的頻寬。系統600包括主機602、主DIMM緩衝器604、及副DIMM 606。系統600包括主機、緩衝器、及第二DIMM間之時序之表示型態。系統600提供依據圖1之系統100的一系統之一實施例的一個實例。系統600例示如於本文中描述的一經中繼的通道架構之一實施例。於系統600之特例中,副或後端通道係以主或前端通道的一半頻寬中繼。為了調整縮窄的頻寬,副通道可加倍其耗用來自副模組交換資料至主模組的時間量。
主機602表示依據本文中描述的任何實施例之一主機,及包括至少用以管理存取記憶體的邏輯。舉例言之,主機602可包括主機處理器及記憶體控制器電路。主DIMM緩衝器604表示於主記憶體模組上的緩衝器,於該處緩衝器提供點對點連結至主機602,及提供點對點連結至下一個經連結的記憶體模組。副DIMM 606表示下一個經連結的記憶體模組,其具有點對點連結至主DIMM緩衝器604。
如圖例示,主機602生成時鐘612以控制跨記憶體通道傳訊的時序。主DIMM緩衝器604中繼時鐘612至副DIMM 606。記憶體裝置(未特別顯示於圖中)基於時鐘612,在主及副記憶體模組兩者上計時其操作。
於一個實施例中,系統600包括分開的讀取及寫入鏈路。如圖例示,緩衝器604包括主指令/寫入介面620及主讀取介面640,兩者皆介接主機602。緩衝器604經由副指令/寫入介面630中繼主指令/寫入通道至副DIMM 606,及經由副讀取介面650中繼主讀取通道至副DIMM 606。
於一個實施例中,主指令/寫入介面620包括M條信號線,及副指令/寫入介面630包括M/2條信號線。於一個實施例中,主讀取介面640包括N條信號線,及副讀取介面650包括N/2條信號線。主通道包括,作為獨立介面管理的,M條指令/寫入資料信號線及N條讀取資料信號線。同理,副通道可包括,作為分開介面管理的,M/2條指令/寫入資料信號線及N/2條讀取資料信號線。
如圖例示,主通道在X個UI上操作,其可稱作為用於記憶體存取操作的一叢發長度(BL)。舉例言之,X可以是8或16 UI用以在各個信號線上分別地移轉一序列之8或16位元。如此,記憶體存取操作(讀取或寫入)包括等於介面大小乘以叢發長度的位元總數。如此,X*M位元自主機602指令及寫入移轉至主DIMM緩衝器604。若主DIMM緩衝器604中繼該等位元至副DIMM 606,則移轉出現於半數指令/寫入資料信號線(M/2),但歷經較長的叢發週期(2X)。如此,移轉的位元總數為相同:(2X)*(M/2)=X*M。
須瞭解系統600例示寫入位元自主機602流向記憶體模組,而讀取位元係例示為自記憶體模組流至主機602。將X*N位元自主DIMM緩衝器604讀取移轉至主機602。若自副DIMM 606讀取存取請求資料位元,則移轉包括針對2X UI於N/2讀取資料信號線上移轉資料歷位元之總數等於(2X)*(N/2)=X*N。然後,主DIMM緩衝器604針對X UI於N信號線上中繼X*N資料以移轉X*N位元至主機602。
圖7為於經中繼的通道架構中用於存取資料之一方法之一實施例的流程圖,主通道及副通道節段具有不同的頻寬。方法700例示於經中繼的通道架構中用於資料存取的流程。方法700提供依據本文中描述的任何經中繼的通道架構之一流程的實例。
於電子裝置之操作期間,主機針對儲存於耦合至記憶體通道的記憶體資源中之資料產生請求。主機可包括主機處理器或周邊處理器、控制電子裝置之硬體及軟體平台的主機作業系統(OS)、或於主機OS下自應用程式或服務操作方法或程式。主機請求資料,702。記憶體控制器或等效電路產生記憶體存取請求以於記憶體通道上發送給記憶體資源,704。記憶體控制器排程記憶體存取記憶體資源,706。於一個實施例中,鑑於在副記憶體模組上自記憶體資源的較長存取時間,記憶體控制器排程存取請求。於一個實施例中,排程可考慮由指令及寫入引擎施加用於發送指令的不同中繼技術及/或由讀取引擎施加用於接收讀取資料的不同中繼技術。依據前文描述,寫入引擎及讀取引擎可施加於主記憶體模組中之緩衝器或中繼器內部。
於一個實施例中,系統包括分開的指令/寫入資料及讀取資料鏈路。於一個實施例中,若存取請求係用於指令或寫入資料,708 COMMAND/WRITE分支,則記憶體控制器於全頻寬點對點連結至第一記憶體模組上發送已排程之指令或寫入資料,710。第一記憶體模組或實體上最接近耦合至記憶體控制器或記憶體通道上主機的記憶體模組包括緩衝器或中繼器以延伸記憶體通道至下一個記憶體模組。於一個實施例中,緩衝器可判定是否有耦合至記憶體通道之第二或下一個記憶體模組,712。若沒有第二模組,712 NO分支,則緩衝器只分布該請求至第一記憶體模組之記憶體裝置上的本地記憶體資源,714。
若有連結至經中繼之記憶體通道的第二記憶體模組,712 YES分支,則於一個實施例中緩衝器在窄頻寬通道上中繼該指令或寫入資料至第二記憶體模組,716。如此,經中繼的通道具有與至第一記憶體模組之該鏈路不同的頻寬。然後,第二記憶體模組依據指令及/或寫入資料處理該請求及進行要求的操作,718。
於一個實施例中,若存取請求係用於讀取資料,708 READ分支,則記憶體控制器發送讀取請求給第一記憶體模組,720。須瞭解發送讀取請求係藉發送指令完成,但為了本文描述之目的,讀取請求之發送係於讀取分支中例示。於使用分開的讀取及指令/寫入匯流排之實際實施方式中,記憶體控制器典型地將在指令/寫入匯流排發送一讀取請求,第一記憶體模組處理或前傳至第二記憶體模組。然後,經選取的模組於適當讀取匯流排上回送資料。
如此,若第一記憶體模組之緩衝器判定沒有連結至記憶體通道的第二記憶體模組或接收的讀取請求係定址於第一記憶體模組而非第二記憶體模組,722 NO分支,則第一記憶體模組接收在全頻寬通道上自第一記憶體模組本身發送的讀取資料,724。若緩衝器判定讀取請求係針對已連結的第二記憶體模組,則緩衝器前傳請求至第二記憶體模組。隨後,緩衝器在窄頻寬通道上自第二記憶體模組接收讀取資料,726。然後,緩衝器在全頻寬通道上中繼讀取資料至控制器,728。
圖8為於具有經中繼的通道架構之系統中用於建構記憶體模組之一方法之一實施例的流程圖而主通道及副通道節段具有不同的頻寬。方法800例示針對窄經中繼的通道架構建構記憶體之流程。方法800提供依據本文中描述的任何實施例用於在經中繼的通道架構中之記憶體模組的流程的一個實例。
於一個實施例中,記憶體模組進行探索操作以判定其係系統中連結之處。當記憶體模組組配其本身用於操作時,記憶體模組可在啟動或其它初始化時,諸如在自低功率或關閉狀態復置時進行此種探索。於一個實施例中,記憶體模組組配其本身為定期組配檢查的一部分。如此,於一個實施例中,記憶體模組組配,802。於一個實施例中,記憶體模組判定在記憶體通道上其是否為主記憶體模組,804。於一個實施例中,記憶體控制器做決定及發送組態資訊給記憶體模組。於一個實施例中,記憶體模組本身透過與記憶體控制器之交握程序做出決定。
若記憶體模組判定其非為在記憶體通道上的主記憶體模組,806 NO分支,則於一個實施例中記憶體模組組配其本身用於使用至記憶體通道的窄頻寬介面,808。舉例言之,記憶體模組包括控制記憶體模組與主機間之資料交換的控制器(與主機之記憶體控制器分開)。控制器可組配用於使用更多UI以發送讀取資料,或接收指令及寫入資料用於更多UI。
若記憶體模組判定其為在記憶體通道上的主記憶體模組,806 YES分支,則於一個實施例中記憶體模組進一步試圖判定是否有連結至記憶體通道的副記憶體模組,810。若副記憶體模組並非也連結至記憶體通道,812 NO分支,則於一個實施例中主記憶體模組利用記憶體通道點對點連結至記憶體控制器的全頻寬。若副記憶體模組係連結至記憶體通道,812 YES分支,則於一個實施例中主記憶體模組與副記憶體模組分享主鏈路之頻寬,816。依據本文中描述的任何實施例,主記憶體模組通過通道中繼器之操作而與副模組分享頻寬。
圖9為於其中可實施經中繼的記憶體通道架構之一計算系統之一實施例的方塊圖。系統900表示依據本文中描述的任何實施例之計算裝置,及可以是膝上型電腦、桌上型電腦、伺服器、遊戲或娛樂控制系統、掃描器、影印機、列印器、路由或切換裝置、或其它電子裝置。系統900包括處理器920,其給系統900提供指令的處理、操作管理、及執行。處理器920可包括任何類型的微處理器、中央處理單元(CPU)、處理核心、或其它處理硬體以給系統900提供處理。處理器920控制系統900之總體操作,且可以是或包括一或多個可規劃通用或特用微處理器、數位信號處理器(DSP)、可規劃控制器、特定應用積體電路(ASIC)、可程式化邏輯裝置(PLD)、或其類、或此等裝置的組合。處理器920可執行儲存於記憶體932的資料及/或寫入或編輯儲存於記憶體932的資料。
記憶體子系統930表示系統900之主記憶體,及提供欲藉處理器920執行的代碼提供暫態儲存,或欲用於執行常式的資料值。記憶體子系統930可包括一或多個記憶體裝置,諸如唯讀記憶體(ROM)、快閃記憶體、一或多個各種隨機存取記憶體(RAM)、或其它記憶體裝置、或此等裝置的組合。記憶體子系統930儲存及主持作業系統(OS)936以提供用於在系統900中執行指令的軟體平台等。此外,其它指令938自記憶體子系統930儲存及執行以提供系統900的邏輯及處理。OS 936及指令938係藉處理器920執行。記憶體子系統930包括記憶體裝置932,於該處其儲存資料、指令、程式、或其它項目。於一個實施例中,記憶體子系統包括記憶體控制器934,其乃用以產生及簽發指令至記憶體裝置932的記憶體控制器。須瞭解記憶體控制器934將為處理器920的實體部件。
處理器920及記憶體子系統930耦合至匯流排/匯流排系統910。匯流排910為表示由適當橋接器、配接器、及/或控制器連結的任一個或多個分開的實體匯流排、通訊線路/介面、及/或點對點連結的抽象概念。因此,匯流排910可包括,例如,系統匯流排、周邊組件互連(PCI)匯流排、超傳輸或工業標準架構(ISA)匯流排、小型電腦系統介面(SCSI)匯流排、通用串列匯流排(USB)、或美國電機及電子工程師學會(IEEE)標準1394匯流排(通稱為「火線」)中之一或多者。匯流排910之該等匯流排也對應於網路介面950中之介面。
電源912耦合至匯流排910以供電給系統900之組件。於一個實施例中,電源912包括AC至DC(交流至直流)配接器以插入牆壁插座。此種AC電力可以是再生能源(例如,太陽能)。於一個實施例中,電源912只包括DC電力,其可由DC電源提供,諸如外部AC至DC轉換器。於一個實施例中,電源912包括無線充電硬體以透過接近充電場而充電。於一個實施例中,電源912可包括內部電池或燃料電池源。
系統900也包括耦合至匯流排910的一或多個輸入/輸出(I/O)介面940、網路介面950、一或多個內部大容量儲存裝置960、及周邊介面970。I/O介面940可包括一或多個介面組件,透過該組件一用戶介接系統900(例如,視訊、音訊、及/或文數介接)。於一個實施例中,I/O介面940基於儲存於記憶體中之資料及/或由處理器920執行的操作產生顯示。網路介面950給系統900提供透過一或多個網路與遠端裝置(例如,伺服器、其它計算裝置)通訊的能力。網路介面950可包括乙太網路配接器、無線互連組件、通用串列匯流排(USB)、或其它基於有線或無線標準的或專有介面。網路介面950可與遠端裝置交換資料,其可包括發送儲存於記憶體的資料及/或接收欲儲存於記憶體的資料。
儲存裝置960可以是或可包括以非依電性方式儲存大量資料的任何習知媒體,諸如一或多個以磁性、固態、或光學為基礎之碟片、或其組合。儲存裝置960以持久方式(亦即,儘管系統900的電力中斷,數值仍被持有)保有代碼或指令及資料962。儲存裝置960可通例地視為「記憶體」,但記憶體930為提供指令給處理器920的執行或操作記憶體。雖然儲存裝置960為非依電性,但記憶體930可包括依電性記憶體(亦即,若系統900的電力中斷,則資料之值或狀態為不確定)。
周邊介面970可包括前文未特別提及的任何硬體介面。周邊裝置通常係指相依性連結至系統900的裝置。相依性連結為於其上執行操作且用戶與其互動的系統900提供軟體及/或硬體平台者。
於一個實施例中,系統900包括通道中繼器980。依據本文中描述的任何實施例,通道中繼器980可實施為中繼器及/或實施於主記憶體模組上的緩衝器中。通道中繼器980提供點對點連結用於自一主記憶體模組或實體上耦合至最接近在記憶體通道上的主機之一記憶體模組至主機的一主連結。通道中繼器980提供自主記憶體模組至副記憶體模組的副連結,於該處副連結具有比主連結更低的頻寬。
圖10為於其中可實施經中繼的記憶體通道架構之一行動裝置的一實施例之方塊圖。裝置1000表示行動計算裝置,諸如計算平板、行動電話或智慧型電話、無線啟用的電子讀取器、穿戴式計算裝置、或其它行動裝置。須瞭解某些組件係概略顯示,並非此種裝置的全部組件皆顯示於裝置1000中。
裝置1000包括處理器1010,其進行裝置1000的主要處理操作。處理器1010可包括一或多個實體裝置,諸如微處理器、應用處理器、微控制器、可程式化邏輯裝置、或其它處理構件。由處理器1010進行的處理操作包括於其上執行應用程式及/或裝置功能的操作平台或作業系統的執行。處理操作包括與人類使用或與其它裝置輸入/輸出(I/O)相關之操作、電源管理相關之操作、及/或裝置1000連結至另一裝置相關之操作。處理操作也可包括音訊I/O及/或顯示器I/O相關之操作。處理器1010可執行儲存於記憶體中之資料及/或寫入或編輯儲存於記憶體中之資料。
於一個實施例中,裝置1000包括音訊子系統1020,其表示與提供音訊功能給計算裝置相關聯的硬體(例如,音訊硬體及音訊電路)及軟體(例如,驅動裝置、編解碼器)組件。音訊功能可包括揚聲器及/或耳機輸出,以及麥克風輸入。用於此等功能的裝置可整合入裝置1000內,或連結至裝置1000。於一個實施例中,藉提供由處理器1010接收及處理的音訊指令用戶與裝置1000互動。
顯示器子系統1030表示對用戶提供視覺及/或觸覺顯示以與計算裝置互動的硬體(例如,顯示裝置)及軟體(例如,驅動裝置)組件。顯示器子系統1030包括顯示介面1032,其包括用來提供顯示給用戶的特殊螢幕或硬體裝置。於一個實施例中,顯示介面1032包括與處理器1010分開的邏輯以進行與顯示相關的至少若干處理。於一個實施例中,顯示器子系統1030包括提供輸出及輸入兩者給用戶的觸控螢幕裝置。於一個實施例中,顯示器子系統1030包括提供輸出至用戶的高畫質(HD)顯示器。高畫質可指具有約100每吋像素(PPI)或以上的像素密度之一顯示器,且可包括諸如全HD(例如,1080p)、視網膜顯示器、4K(超高畫質或UHD)、或其它格式。於一個實施例中,顯示器子系統1030基於儲存於記憶體中之資料及/或由處理器1010執行的操作而產生顯示資訊。
I/O控制器1040表示與用戶互動有關的硬體裝置及軟體組件。I/O控制器1040可操作以管理屬於音訊子系統1020及/或顯示器子系統1030之部件的硬體。此外,I/O控制器1040例示透過連結至裝置1000而一用戶可與系統互動的用於額外裝置之連結點。舉例言之,能附接至裝置1000的裝置可包括麥克風裝置、揚聲器或立體聲系統、視訊系統或其它顯示裝置、鍵盤或數字小鍵盤裝置、或用於特定應用的其它I/O裝置,諸如讀卡機或其它裝置。
如前述,I/O控制器1040可與音訊子系統1020及/或顯示器子系統1030互動。舉例言之,透過麥克風或其它音訊裝置的輸入可提供針對裝置1000之一或多個應用或功能的輸入或指令。此外,替代或除外顯示器輸出,可提供音訊輸出。於另一實例中,若顯示器子系統包括一觸控螢幕,則顯示裝置也可用作為輸入裝置,其可以至少部分地由I/O控制器1040管理。在裝置1000上也有額外按鈕或開關以提供由I/O控制器1040管理的I/O功能。
於一個實施例中,I/O控制器1040管理裝置,諸如加速度計、相機、光感測器或其它環境感測器、迴轉儀、全球定位系統(GPS)、或能涵括於裝置1000內的其它硬體。輸入可以是直接用戶互動部分,以及提供環境輸入至系統以影響其操作(諸如,過濾雜訊,調整顯示器用於亮度檢測,對相機施以閃光燈,或其它特徵)。
於一個實施例中,裝置1000包括電源管理1050其管理電池電力的使用、電池的充電、及節電操作的相關特徵。電源管理1050管理來自電源1052的電力,其提供電力給系統1000之組件。於一個實施例中,電源1052包括AC至DC(交流至直流)配接器以插入牆壁插座。此種AC電力可以是再生能源(例如,太陽能)。於一個實施例中,電源1052只包括DC電力,其可由DC電源提供,諸如外部AC至DC轉換器。於一個實施例中,電源1052包括無線充電硬體以透過接近充電場而充電。於一個實施例中,電源1052可包括內部電池或燃料電池源。
記憶體子系統1060包括用於將資訊儲存於裝置1000中之記憶體裝置1062。記憶體子系統1060可包括非依電性(記憶體裝置的電力中斷時狀態不改變)及/或依電性(記憶體裝置的電力中斷時狀態不確定)記憶體裝置。記憶體1060可儲存裝置1000之應用及功能的執行相關的應用程式資料、用戶資料、音樂、照片、文件、或其它資料、以及系統資料(無論長期或短期)。於一個實施例中,記憶體子系統1060包括記憶體控制器1064(其也可被視為裝置1000的控制部件,及潛在地被視為處理器1010之部件)。記憶體控制器1064包括一排程器以產生及簽發指令給記憶體裝置1062。
連接性1070包括硬體裝置(例如,無線及/或有線連接器及通訊硬體)及軟體組件(例如,驅動裝置、協定堆疊)以使得裝置1000能與外部裝置通訊。外部裝置可以是分開裝置,諸如,其它計算裝置、無線接取點或其地台、以及周邊裝置諸如頭戴式耳機、列印器、或其它裝置。於一個實施例中,系統1000可與外部裝置交換資料用於儲存於記憶體中及/或用於顯示於顯示裝置上。被交換的資料可包括欲儲存於記憶體中之資料及/或已儲存於記憶體中用於讀取、寫入、或編輯資料之資料。
連接性1070可包括多種不同類型的連接性。概略言之,裝置1000係以蜂巢式連接性1072及無線連接性1074例示。蜂巢式連接性1072大致係指由無線載波提供的蜂巢式網路連接性,諸如,透過全球行動通訊系統(GSM)或其變化或其衍生、劃碼多向接取(CDMA)或其變化或其衍生、分時多工(TDM)或其變化或其衍生、長期演進(LTE-又稱「4G」)、或其它蜂巢式服務標準提供者。無線連接性1074係指非為蜂巢式的無線連接性,及可包括個人區域網路(諸如藍牙)、區域網路(諸如WiFi)、及/或廣域網路(諸如WiMax)、或其它無線通訊。無線通訊係指透過經由非固體媒體之經調變的電磁輻射之使用而移轉資料。有線通訊經由固體通訊媒體發生。
周邊連結1080包括硬體介面及連接器,以及軟體組件(例如,驅動裝置、協定堆疊)以完成周邊連結。須瞭解裝置1000可以是至其它計算裝置的周邊裝置(「至」1082),以及具有周邊裝置連結其上者(「自」1084)。裝置1000常見具有「對接」連接器以連結至其它計算裝置用於諸如管理(例如,下載及/或上傳、改變、同步化)裝置1000上的內容之目的。此外,對接連接器可允許裝置1000連結至某些周邊裝置,其允許裝置1000控制例如內容輸出至影音或其它系統。
除了專有對接連接器或其它專有連接硬體之外,裝置1000可透過以通用或標準為基礎的連接器進行周邊連結1080。常見類型可包括通用串列匯流排(USB)連接器(其可包括多種不同硬體介面中之任一者)、顯示埠包括迷你顯示埠(MDP)、高畫質多媒體介面(HDMI)、火線、或其它類型。
於一個實施例中,系統1000包括通道中繼器1090。通道中繼器1090依據本文中描述的任何實施例可實施為中繼器及/或實施於主記憶體模組上的緩衝器中。通道中繼器1090提供點對點連結用於自一主記憶體模組或實體上耦合至最接近在記憶體通道上的主機之一記憶體模組至主機的一主連結。通道中繼器1090提供自主記憶體模組至副記憶體模組的副連結,於該處副連結具有比主連結更低的頻寬。
於一個面向中,用以耦合多個記憶體裝置至一記憶體通道的一記憶體電路包括:一第一組信號線以點對點耦合作為一第一組記憶體裝置與一主機裝置間之一記憶體通道;一第二組信號線以在該第一組記憶體裝置與一第二組記憶體裝置間點對點耦合用以延伸該記憶體通道至該第二組記憶體裝置,其中該第二組信號線包括比該第一組信號線更少的資料信號線,用以在該記憶體通道上支援比該第一組信號線一更低的頻寬;及經耦合以在該第一組信號線與該第二組信號線間之該記憶體通道上中繼信號的一中繼器。
於一個實施例中,該第一組信號線及該第二組信號線包含單端資料信號線。於一個實施例中,該第一組信號線及該第二組信號線包含差分資料信號線。於一個實施例中,該第二組信號線包括該第一組信號線之半數資料信號線。於一個實施例中,該第一組記憶體裝置係用以運用該記憶體通道之約一半總頻寬及該第二組記憶體裝置係用以運用該記憶體通道之約一半總頻寬。於一個實施例中,該第一組記憶體裝置係用以運用比該第二組記憶體裝置更多的頻寬。於一個實施例中,該第一組記憶體裝置包含一第一記憶體模組之記憶體裝置,及該第二組記憶體裝置包含一第二記憶體模組之記憶體裝置。於一個實施例中,該第一記憶體模組包含涵括遵照一雙倍資料速率版本5(DDR5)之同步動態隨機存取記憶體(SDRAM)裝置的一雙列記憶體模組(DIMM),及該第二記憶體模組包含涵括遵照一雙倍資料速率版本5(DDR5)標準之SDRAM裝置的一DIMM。於一個實施例中,該第一記憶體模組包含涵括遵照一雙倍資料速率版本5(DDR5)標準之同步動態隨機存取記憶體(SDRAM)裝置的一雙列記憶體模組(DIMM),及該第二記憶體模組包含涵括位元組可定址之隨機存取非依電性記憶體裝置的一DIMM。於一個實施例中,該等位元組可定址之隨機存取非依電性記憶體裝置包含具有硫屬玻璃之涵括記憶體胞元的三維記憶體裝置。
於一個面向中,用以耦合多個記憶體裝置至一記憶體通道的一系統包括:一記憶體控制器電路用以控制存取至記憶體;一第一記憶體模組用以透過在該記憶體控制器電路與該第一記憶體模組間之一記憶體通道之一第一組信號線而點對點耦合至該記憶體控制器電路,該第一記憶體模組包括一中繼器;及一第二記憶體模組用以透過在該第一記憶體模組該第二記憶體模組間點對點耦合之一第二組信號線而經由該中繼器耦合至該記憶體控制器電路,其中該第二組信號線包括比該第一組信號線更少的資料信號線,用以在該記憶體通道上支援比該第一組信號線一更低的頻寬;其中該中繼器係用以在該第一組信號線與該第二組信號線間之該記憶體通道上中繼信號。
該系統可包括依據如上記憶體電路之一面向的任何實施例之一記憶體電路。於一個實施例中,其進一步包含耦合至該記憶體控制器的一處理器,該處理器之至少一個核心用以執行儲存於該等記憶體模組中之資料。於一個實施例中,其進一步包含耦合以在該等記憶體模組與一遠端網路位置間交換資料的一網路配接器。於一個實施例中,其進一步包含通訊式耦合至該處理器的一顯示器。
於一個面向中,用以在一記憶體通道上存取多個記憶體裝置之一方法包括:在一第一組信號線上接收一記憶體存取信號以點對點耦合作為一第一組記憶體裝置與一主機裝置間之一記憶體通道;及在一第二組信號線上中繼該記憶體存取信號之至少一部分以在該第一組記憶體裝置與一第二組記憶體裝置間點對點耦合用以延伸該記憶體通道至該第二組記憶體裝置;其中該第二組信號線包括比該第一組信號線更少的資料信號線,用以在該記憶體通道上支援比該第一組信號線一更低的頻寬。
於一個實施例中,該第一組信號線及該第二組信號線包含單端資料信號線。於一個實施例中,該第一組信號線及該第二組信號線包含差分資料信號線。於一個實施例中,該第二組信號線包括該第一組信號線之半數資料信號線。於一個實施例中,進一步包含分配該記憶體通道之約一半總頻寬給該第一組記憶體裝置及分配該記憶體通道之約一半總頻寬給該第二組記憶體裝置。於一個實施例中,進一步包含分配該記憶體通道之多於一半總頻寬給該第一組記憶體裝置。於一個實施例中,該第一組記憶體裝置包含一第一記憶體模組之記憶體裝置,及該第二組記憶體裝置包含一第二記憶體模組之記憶體裝置。於一個實施例中,該第一記憶體模組包含涵括遵照一雙倍資料速率版本5(DDR5)之同步動態隨機存取記憶體(SDRAM)裝置的一雙列記憶體模組(DIMM),及該第二記憶體模組包含涵括遵照一雙倍資料速率版本5(DDR5)標準之SDRAM裝置的一DIMM。於一個實施例中,該第一記憶體模組包含涵括遵照一雙倍資料速率版本5(DDR5)標準之同步動態隨機存取記憶體(SDRAM)裝置的一雙列記憶體模組(DIMM),及該第二記憶體模組包含涵括位元組可定址之隨機存取非依電性記憶體裝置的一DIMM。於一個實施例中,該等位元組可定址之隨機存取非依電性記憶體裝置包含具有硫屬玻璃之涵括記憶體胞元的三維記憶體裝置。
於一個面向中,一製造物件包含具有內容儲存於其上的一電腦可讀取儲存媒體用以使得執行操作來執行依據如上一面向之任何實施例用以在一記憶體通道上存取多個記憶體裝置之一方法。於一個面向中,用以在一記憶體通道上存取多個記憶體裝置之一設備,包含用於進行操作以執行依據如上一面向之任何實施例之一方法。
如於本文中例示的流程圖提供各種方法動作之序列的實例。流程圖可指示欲由軟體或韌體常式執行的操作,以及實體操作。於一個實施例中,流程圖可例示有限狀態機(FSM)的狀態,其可於硬體及/或軟體中實施。雖然以特定順序或排序顯示,但除非另行載明,否則動作的排序可經修改。如此,須瞭解例示實施例僅作為實例,及該方法可以不同順序進行,及有些動作可並列進行。此外,於各種實施例中,一或多個動作可經刪除;因此,並非全部動作皆為每個實施例中所需。其它處理流程亦屬可能。
至本文描述的各種操作或功能的程度,其可被描述或界定為軟體代碼、指令、組態、及/或資料。內容可直接執行(「目標」或「可執行」形式)、來源代碼、或差分代碼(「Δ」或「補塊」代碼)。本文描述的實施例之軟體內容可透過有內容儲存其上的製造物件提供,或透過操作通訊介面以透過通訊介面發送資料的方法提供。機器可讀取儲存媒體可使得機器進行所描述之功能或操作,及包括以由機器(例如,計算裝置、電子系統等)可存取之形式儲存資訊,諸如可錄式/非可錄式媒體(例如,唯讀記憶體(ROM)、隨機存取記憶體(RAM)、磁碟儲存媒體、光學儲存媒體、快閃記憶體裝置等)。通訊介面包括介接有線、無線、光學等媒體以通訊至另一裝置中之任一者的任何機構,諸如記憶體匯流排介面、處理器匯流排介面、網際網路連結、碟片控制器等。通訊介面可經組配以藉由提供組態參數及/或發送信號以準備通訊介面而提供描述該軟體內容的資料信號。通訊介面可透過發送給通訊介面的一或多個指令或信號存取。
於本文中描述的各種組件可以是進行所描述之操作或功能的構件。於本文中描述的各個組件包括軟體、硬體、或此等之組合。該等組件可以軟體模組、硬體模組、特用硬體(例如,特定應用硬體、特定應用積體電路(ASIC)、數位信號處理器(DSP)等)、嵌入式控制器、有線電路等實施。
除了本文描述者之外,不背離其範圍可對所揭示之本發明之實施例及實施方式進行各種修改。因此,本文中之例示及實例須以例示性解譯而非限制性。本發明之範圍須僅參照如下申請專利範圍度量。
100、202、204、302、402、404、406、500、600、900‧‧‧系統
110、316、510、920、1010‧‧‧處理器
120、318、520、934、1064‧‧‧記憶體控制器
122、142‧‧‧I/O介面邏輯
124、152‧‧‧指令(CMD)邏輯
126、154‧‧‧再新(REF)邏輯
130、130[0]、130[1]、410、440、450‧‧‧記憶體模組
132、612‧‧‧時鐘(CLK)
134‧‧‧指令/位址(CMD)及寫入資料(DQ)
136‧‧‧讀取DQ
138‧‧‧其它信號線
140、336、356、366、502、504、932‧‧‧記憶體裝置、記憶體
144‧‧‧暫存器
146‧‧‧晶粒上終端(ODT)
150‧‧‧控制器
160‧‧‧記憶體資源
170‧‧‧排程器
172、338、358、368、420、424、460、464、532、542‧‧‧緩衝器或中繼器
174、342‧‧‧指令及寫入信號線
176、344‧‧‧讀取信號線
210、230‧‧‧CPU
220、240‧‧‧DDR模組
240‧‧‧NV模組、DDR模組
310、602‧‧‧主機
312、362‧‧‧介面
314‧‧‧主機連接器
330、530‧‧‧主模組
332A、352A‧‧‧主介面
332B、352B‧‧‧副介面
334‧‧‧主模組連接器
350、360、540‧‧‧副模組
354、364‧‧‧副模組連接器
412、442、452、456‧‧‧DRAM
414、444、454、458‧‧‧DRAM介面
422、426、462、466‧‧‧控制邏輯、控制器邏輯
432、472、482、492、548‧‧‧主機讀取介面
434、474、484、494‧‧‧中繼讀取介面
436、476、486、496、552、558‧‧‧主機指令/寫入(CMD/WR)介面
438、478、488、498‧‧‧中繼指令/寫入介面
512‧‧‧處理
522‧‧‧排程器
544‧‧‧讀取引擎
546‧‧‧後端讀取介面
554‧‧‧指令/寫入引擎
556‧‧‧後端指令/寫入介面
604‧‧‧主DIMM緩衝器
606‧‧‧副DIMM緩衝器
620‧‧‧主指令/寫入介面
630‧‧‧副指令/寫入介面
640‧‧‧主讀取介面
650‧‧‧副讀取介面
700、800‧‧‧方法
702-728、802-816‧‧‧方塊
910‧‧‧匯流排、匯流排/匯流排系統
912、1052‧‧‧電源
930、1060‧‧‧記憶體子系統
936‧‧‧作業系統(OS)
938‧‧‧指令
940‧‧‧輸入/輸出(I/O)介面
950‧‧‧網路介面
960‧‧‧儲存裝置
962‧‧‧代碼/資料、代碼或指令及資料
970‧‧‧周邊介面
980、1090‧‧‧通道中繼器
1000‧‧‧裝置
1020‧‧‧音訊子系統
1030‧‧‧顯示子系統
1032‧‧‧顯示介面
1040‧‧‧I/O控制器
1050‧‧‧電源管理
1070‧‧‧連接性
1072‧‧‧蜂巢式連接性
1074‧‧‧無線連接性
1080‧‧‧周邊連結
1082‧‧‧至
1084‧‧‧自
110、316、510、920、1010‧‧‧處理器
120、318、520、934、1064‧‧‧記憶體控制器
122、142‧‧‧I/O介面邏輯
124、152‧‧‧指令(CMD)邏輯
126、154‧‧‧再新(REF)邏輯
130、130[0]、130[1]、410、440、450‧‧‧記憶體模組
132、612‧‧‧時鐘(CLK)
134‧‧‧指令/位址(CMD)及寫入資料(DQ)
136‧‧‧讀取DQ
138‧‧‧其它信號線
140、336、356、366、502、504、932‧‧‧記憶體裝置、記憶體
144‧‧‧暫存器
146‧‧‧晶粒上終端(ODT)
150‧‧‧控制器
160‧‧‧記憶體資源
170‧‧‧排程器
172、338、358、368、420、424、460、464、532、542‧‧‧緩衝器或中繼器
174、342‧‧‧指令及寫入信號線
176、344‧‧‧讀取信號線
210、230‧‧‧CPU
220、240‧‧‧DDR模組
240‧‧‧NV模組、DDR模組
310、602‧‧‧主機
312、362‧‧‧介面
314‧‧‧主機連接器
330、530‧‧‧主模組
332A、352A‧‧‧主介面
332B、352B‧‧‧副介面
334‧‧‧主模組連接器
350、360、540‧‧‧副模組
354、364‧‧‧副模組連接器
412、442、452、456‧‧‧DRAM
414、444、454、458‧‧‧DRAM介面
422、426、462、466‧‧‧控制邏輯、控制器邏輯
432、472、482、492、548‧‧‧主機讀取介面
434、474、484、494‧‧‧中繼讀取介面
436、476、486、496、552、558‧‧‧主機指令/寫入(CMD/WR)介面
438、478、488、498‧‧‧中繼指令/寫入介面
512‧‧‧處理
522‧‧‧排程器
544‧‧‧讀取引擎
546‧‧‧後端讀取介面
554‧‧‧指令/寫入引擎
556‧‧‧後端指令/寫入介面
604‧‧‧主DIMM緩衝器
606‧‧‧副DIMM緩衝器
620‧‧‧主指令/寫入介面
630‧‧‧副指令/寫入介面
640‧‧‧主讀取介面
650‧‧‧副讀取介面
700、800‧‧‧方法
702-728、802-816‧‧‧方塊
910‧‧‧匯流排、匯流排/匯流排系統
912、1052‧‧‧電源
930、1060‧‧‧記憶體子系統
936‧‧‧作業系統(OS)
938‧‧‧指令
940‧‧‧輸入/輸出(I/O)介面
950‧‧‧網路介面
960‧‧‧儲存裝置
962‧‧‧代碼/資料、代碼或指令及資料
970‧‧‧周邊介面
980、1090‧‧‧通道中繼器
1000‧‧‧裝置
1020‧‧‧音訊子系統
1030‧‧‧顯示子系統
1032‧‧‧顯示介面
1040‧‧‧I/O控制器
1050‧‧‧電源管理
1070‧‧‧連接性
1072‧‧‧蜂巢式連接性
1074‧‧‧無線連接性
1080‧‧‧周邊連結
1082‧‧‧至
1084‧‧‧自
後文詳細說明包括具有藉由本發明之實施例的實例例示之圖式的討論。須瞭解附圖係用於舉例說明而非限制性。如於本文中使用,述及一或多個「實施例」須瞭解為描述涵括於至少一個本發明之實施例中的特定特徵、結構、及/或特性。如此,出現於此處的片語諸如「於一個實施例中」或「於一替代實施例中」描述本發明之各種實施例及實施方式,而非必然全部皆係指相同實施例。然而,絕非必然彼此互斥。
圖1為具有中繼器通道架構之一系統之一實施例的方塊圖,該架構具有較低頻寬中繼器通道以將記憶體通道延伸至另一個記憶體模組。
圖2A為具有中繼器通道架構之一系統之一實施例的方塊圖,於其中雙倍資料速率(DDR)模組占用較低頻寬經中繼的通道上之主及副位置兩者。
圖2B為具有中繼器通道架構之一系統之一實施例的方塊圖,於其中雙倍資料速率(DDR)模組占用較低頻寬經中繼的通道上之主位置,及非依電性記憶體占用副位置。
圖3A為具有中繼器通道架構之一系統之一實施例的方塊圖,於其中主及副記憶體模組兩者包括緩衝器。
圖3B為具有中繼器通道架構的一系統之一實施例的方塊圖,於其中主記憶體模組包括支援副通道的緩衝器,及副記憶體模組包括不支援中繼器功能的緩衝器。
圖4A為具有中繼器通道架構的一系統之一實施例的方塊圖,其例示針對在記憶體模組上的單一主通道的主及副通道連結。
圖4B為具有中繼器通道架構的一系統之一實施例的方塊圖,其例示針對在記憶體模組上的第一及第二通道的主及副通道連結。
圖4C為具有中繼器通道架構的一系統之一實施例的方塊圖,其例示針對主及副通道連結的差分傳訊。
圖5為一系統之一實施例的方塊圖,於其中一記憶體控制器排程用於具有不同頻寬之主及副通道節段的中繼器通道架構的指令。
圖6為針對中繼器通道架構之一時序表示型態之一實施例的方塊圖,於其中主及副通道節段具有不同的頻寬。
圖7為於經中繼的通道架構中用於存取資料之一方法之一實施例的流程圖,主通道及副通道節段具有不同的頻寬。
圖8為於具有經中繼的通道架構之系統中用於建構記憶體模組之一方法之一實施例的流程圖而主通道及副通道節段具有不同的頻寬。
圖9為於其中可實施經中繼的記憶體通道架構之一計算系統之一實施例的方塊圖。
圖10為於其中可實施經中繼的記憶體通道架構之一行動裝置之一實施例的方塊圖。
如下某些細節及實施例之描述,包括圖式之描述,可描繪如下描述之部分或全部實施例,以及討論本文中呈現的本發明之構想的其它潛在實施例或實施方式。
100‧‧‧系統
110‧‧‧處理器
120‧‧‧記憶體控制器
122、142‧‧‧I/O介面邏輯
124、152‧‧‧CMD邏輯
126、154‧‧‧REF邏輯
130‧‧‧記憶體模組
132‧‧‧時鐘(CLK)信號
134、174‧‧‧指令及寫入資料(CMD+WR DQ)
136、176‧‧‧讀取DQ
138、150‧‧‧控制器(CTRL)
140‧‧‧記憶體裝置
144‧‧‧暫存器
146‧‧‧晶粒上終端(ODT)
156‧‧‧錯誤檢查與校正(ECC)
160‧‧‧記憶體資源
170‧‧‧排程器
172‧‧‧緩衝器
Claims (22)
- 一種記憶體電路,其包含: 一第一組信號線,其可點對點耦接以作為在一第一組記憶體裝置與一主機裝置之間的一記憶體通道; 一第二組信號線,其可在該第一組記憶體裝置與一第二組記憶體裝置之間點對點耦接,以使該記憶體通道延伸至該第二組記憶體裝置,其中,該第二組信號線包括比該第一組信號線更少的資料信號線,以支援在該記憶體通道上比該第一組信號線更低的頻寬;以及 一中繼器,其經耦接以在該第一組信號線與該第二組信號線之間的該記憶體通道上中繼信號。
- 如請求項1的記憶體電路,其中,該第一組信號線與該第二組信號線包含單端資料信號線。
- 如請求項1的記憶體電路,其中,該第一組信號線與該第二組信號線包含差分資料信號線。
- 如請求項1的記憶體電路,其中,該第二組信號線包括該第一組信號線之半數的資料信號線。
- 如請求項1的記憶體電路,其中,該第一組記憶體裝置可運用該記憶體通道大約一半的總頻寬,且該第二組記憶體裝置可運用該記憶體通道大約一半的總頻寬。
- 如請求項1的記憶體電路,其中,該第一組記憶體裝置可運用比該第二組記憶體裝置更多的頻寬。
- 如請求項1的記憶體電路,其中,該第一組記憶體裝置包含一第一記憶體模組之記憶體裝置,且該第二組記憶體裝置包含一第二記憶體模組之記憶體裝置。
- 如請求項7的記憶體電路,其中,該第一記憶體模組包含包括有與一雙倍資料速率版本5(DDR5)標準符合之同步動態隨機存取記憶體(SDRAM)裝置的一雙列記憶體模組(DIMM),且該第二記憶體模組包含包括有與一雙倍資料速率版本5(DDR5)標準符合之SDRAM裝置的一DIMM。
- 如請求項7的記憶體電路,其中,該第一記憶體模組包含包括有與一雙倍資料速率版本5(DDR5)標準符合之同步動態隨機存取記憶體(SDRAM)裝置的一雙列記憶體模組(DIMM),且該第二記憶體模組包含包括有位元組可定址之隨機存取非依電性記憶體裝置的一DIMM。
- 如請求項9的記憶體電路,其中,該等位元組可定址之隨機存取非依電性記憶體裝置包含三維記憶體裝置,該三維記憶體裝置包括具有硫屬玻璃的記憶體胞元。
- 一種系統,其包含: 一記憶體控制器電路,其可控制對記憶體的存取; 一第一記憶體模組,其可經由在該記憶體控制器電路與該第一記憶體模組之間的一記憶體通道之一第一組信號線而與該記憶體控制器電路點對點耦接,該第一記憶體模組包括一中繼器;以及 一第二記憶體模組,其可經由會在該第一記憶體模組該第二記憶體模組間點對點耦接的一第二組信號線而透過該中繼器與該記憶體控制器電路耦接,其中,該第二組信號線包括比該第一組信號線更少的資料信號線,以支援在該記憶體通道上比該第一組信號線一更低的頻寬; 其中,該中繼器可在該第一組信號線與該第二組信號線之間的該記憶體通道上中繼信號。
- 如請求項11的系統,其中,該第一組信號線與該第二組信號線包含單端資料信號線。
- 如請求項11的系統,其中,該第一組信號線與該第二組信號線包含差分資料信號線。
- 如請求項11的系統,其中,該第二組信號線包括該第一組信號線之半數的資料信號線。
- 如請求項11的系統,其中,該第一記憶體模組可運用該記憶體通道大約一半的總頻寬,且該第二記憶體模組可運用該記憶體通道大約一半的總頻寬。
- 如請求項11的系統,其中,該第一記憶體模組可運用比該第二記憶體模組更多的頻寬。
- 如請求項11的系統,其中,該第一記憶體模組包含包括有與一雙倍資料速率版本5(DDR5)標準符合之同步動態隨機存取記憶體(SDRAM)裝置的一雙列記憶體模組(DIMM),且該第二記憶體模組包含包括有與一雙倍資料速率版本5(DDR5)標準符合之SDRAM裝置的一DIMM。
- 如請求項11的系統,其中,該第一記憶體模組包含包括有與一雙倍資料速率版本5(DDR5)標準符合之同步動態隨機存取記憶體(SDRAM)裝置的一雙列記憶體模組(DIMM),且該第二記憶體模組包含包括有位元組可定址之隨機存取非依電性記憶體裝置的一DIMM。
- 如請求項18的系統,其中,該等位元組可定址之隨機存取非依電性記憶體裝置包含三維記憶體裝置,該三維記憶體裝置包括具有硫屬玻璃的記憶體胞元。
- 如請求項11的系統,其進一步包含與該記憶體控制器耦接的一處理器,該處理器之至少一個核心可執行儲存於該等記憶體模組中之資料。
- 如請求項20的系統,其進一步包含經耦接以在該等記憶體模組與一遠端網路位置之間交換資料的一網路配接器。
- 如請求項20的系統,其進一步包含通訊式耦合至該處理器的一顯示器。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/089,453 | 2016-04-01 | ||
US15/089,453 US20170285992A1 (en) | 2016-04-01 | 2016-04-01 | Memory subsystem with narrow bandwidth repeater channel |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201737100A true TW201737100A (zh) | 2017-10-16 |
TWI740897B TWI740897B (zh) | 2021-10-01 |
Family
ID=59961531
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW106104763A TWI740897B (zh) | 2016-04-01 | 2017-02-14 | 具有窄帶寬中繼器通道的記憶體子系統 |
Country Status (5)
Country | Link |
---|---|
US (1) | US20170285992A1 (zh) |
EP (1) | EP3436963B1 (zh) |
CN (1) | CN108701108A (zh) |
TW (1) | TWI740897B (zh) |
WO (1) | WO2017172285A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI711930B (zh) * | 2018-02-05 | 2020-12-01 | 美商美光科技公司 | 具有嵌入於積體電路記憶體封裝中之控制器之記憶體系統 |
Families Citing this family (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20180061557A (ko) * | 2016-11-29 | 2018-06-08 | 삼성전자주식회사 | 컨트롤러 및 컨트롤러와 불휘발성 메모리 장치들을 포함하는 스토리지 장치 |
JP7006166B2 (ja) * | 2017-11-17 | 2022-01-24 | 富士通株式会社 | データ転送装置およびデータ転送方法 |
US10606692B2 (en) * | 2017-12-20 | 2020-03-31 | International Business Machines Corporation | Error correction potency improvement via added burst beats in a dram access cycle |
US10782908B2 (en) | 2018-02-05 | 2020-09-22 | Micron Technology, Inc. | Predictive data orchestration in multi-tier memory systems |
US11099789B2 (en) | 2018-02-05 | 2021-08-24 | Micron Technology, Inc. | Remote direct memory access in multi-tier memory systems |
US11416395B2 (en) | 2018-02-05 | 2022-08-16 | Micron Technology, Inc. | Memory virtualization for accessing heterogeneous memory components |
US10880401B2 (en) | 2018-02-12 | 2020-12-29 | Micron Technology, Inc. | Optimization of data access and communication in memory systems |
US10877892B2 (en) | 2018-07-11 | 2020-12-29 | Micron Technology, Inc. | Predictive paging to accelerate memory access |
US11709623B2 (en) | 2018-08-03 | 2023-07-25 | Sk Hynix Nand Product Solutions Corp. | NAND-based storage device with partitioned nonvolatile write buffer |
KR20200034360A (ko) * | 2018-09-21 | 2020-03-31 | 에스케이하이닉스 주식회사 | 내부채널을 통해 서로 간에 연결된 다수의 메모리 시스템을 포함하는 데이터 처리 시스템 |
US10996890B2 (en) * | 2018-12-19 | 2021-05-04 | Micron Technology, Inc. | Memory module interfaces |
US10852949B2 (en) | 2019-04-15 | 2020-12-01 | Micron Technology, Inc. | Predictive data pre-fetching in a data storage device |
WO2020226949A1 (en) * | 2019-05-07 | 2020-11-12 | Rambus Inc. | Cascaded memory system |
US10915451B2 (en) * | 2019-05-10 | 2021-02-09 | Samsung Electronics Co., Ltd. | Bandwidth boosted stacked memory |
CN114667509A (zh) * | 2020-02-13 | 2022-06-24 | 华为技术有限公司 | 一种存储器、网络设备及数据访问方法 |
US11409684B2 (en) | 2020-07-31 | 2022-08-09 | Alibaba Group Holding Limited | Processing accelerator architectures |
US11625341B2 (en) | 2020-08-11 | 2023-04-11 | Alibaba Group Holding Limited | Narrow DRAM channel systems and methods |
US11417411B2 (en) | 2020-11-04 | 2022-08-16 | Micron Technology, Inc. | Systems and methods for power savings in row repaired memory |
TWI762274B (zh) * | 2021-04-19 | 2022-04-21 | 群聯電子股份有限公司 | 電路參數調整系統、方法及主機系統 |
US20230170037A1 (en) * | 2021-11-30 | 2023-06-01 | Qualcomm Incorporated | Hybrid memory system with increased bandwidth |
US20240028208A1 (en) * | 2022-07-25 | 2024-01-25 | Samsung Electronics Co., Ltd. | Memory-interface converter chip |
CN117492525B (zh) * | 2023-12-29 | 2024-04-16 | 闪极科技(深圳)有限公司 | Usb扩展设备、带宽管理方法和可读存储介质 |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6154498A (en) * | 1997-09-26 | 2000-11-28 | Intel Corporation | Computer system with a semi-differential bus signaling scheme |
US7017002B2 (en) * | 2000-01-05 | 2006-03-21 | Rambus, Inc. | System featuring a master device, a buffer device and a plurality of integrated circuit memory devices |
US6806728B2 (en) * | 2001-08-15 | 2004-10-19 | Rambus, Inc. | Circuit and method for interfacing to a bus channel |
CA2597692A1 (en) * | 2005-04-21 | 2006-11-02 | Violin Memory, Inc. | Interconnection system |
US20060288132A1 (en) * | 2005-05-31 | 2006-12-21 | Mccall James A | Memory single-to-multi load repeater architecture |
US20070239906A1 (en) * | 2006-03-13 | 2007-10-11 | Vakil Kersi H | Input/output agent having multiple secondary ports |
US7447831B2 (en) * | 2006-05-18 | 2008-11-04 | International Business Machines Corporation | Memory systems for automated computing machinery |
US7970990B2 (en) * | 2006-09-22 | 2011-06-28 | Oracle America, Inc. | Memory module with optical interconnect that enables scalable high-bandwidth memory access |
US7773689B2 (en) * | 2007-02-02 | 2010-08-10 | International Business Machines Corporation | Multimodal memory controllers |
US7925826B2 (en) * | 2008-01-24 | 2011-04-12 | International Business Machines Corporation | System to increase the overall bandwidth of a memory channel by allowing the memory channel to operate at a frequency independent from a memory device frequency |
EP2513802B1 (en) * | 2009-12-14 | 2015-03-18 | Rambus Inc. | Expandable asymmetric-channel memory system |
WO2015065310A1 (en) * | 2013-10-28 | 2015-05-07 | Intel Corporation | Mesh performance improvement using dual voltage data transfer |
-
2016
- 2016-04-01 US US15/089,453 patent/US20170285992A1/en not_active Abandoned
-
2017
- 2017-02-14 TW TW106104763A patent/TWI740897B/zh active
- 2017-03-06 WO PCT/US2017/021003 patent/WO2017172285A1/en active Application Filing
- 2017-03-06 EP EP17776252.3A patent/EP3436963B1/en active Active
- 2017-03-06 CN CN201780014389.7A patent/CN108701108A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI711930B (zh) * | 2018-02-05 | 2020-12-01 | 美商美光科技公司 | 具有嵌入於積體電路記憶體封裝中之控制器之記憶體系統 |
Also Published As
Publication number | Publication date |
---|---|
EP3436963A4 (en) | 2019-12-11 |
US20170285992A1 (en) | 2017-10-05 |
CN108701108A (zh) | 2018-10-23 |
EP3436963A1 (en) | 2019-02-06 |
EP3436963B1 (en) | 2022-08-24 |
TWI740897B (zh) | 2021-10-01 |
WO2017172285A1 (en) | 2017-10-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI740897B (zh) | 具有窄帶寬中繼器通道的記憶體子系統 | |
US9940984B1 (en) | Shared command address (C/A) bus for multiple memory channels | |
TWI721003B (zh) | 記憶體裝置及用於記憶體管理的系統 | |
CN109478177B (zh) | 双数据率命令总线 | |
EP3462455B1 (en) | Reading from a mode register having different read and write timing | |
US10339072B2 (en) | Read delivery for memory subsystem with narrow bandwidth repeater channel | |
US10459855B2 (en) | Load reduced nonvolatile memory interface | |
KR102256441B1 (ko) | 저전력 메모리 디바이스들에 대한 공통 다이 구현 | |
US20170194962A1 (en) | On-die termination control without a dedicated pin in a multi-rank system | |
US11750190B2 (en) | Encoded on-die termination for efficient multipackage termination | |
US20170289850A1 (en) | Write delivery for memory subsystem with narrow bandwidth repeater channel | |
US20180121123A1 (en) | Efficiently training memory device chip select control | |
US20200233821A1 (en) | Unidirectional information channel to monitor bidirectional information channel drift | |
US11200113B2 (en) | Auto-increment write count for nonvolatile memory | |
US20230333928A1 (en) | Storage and access of metadata within selective dynamic random access memory (dram) devices |