專利名稱:帶有可配置功率狀態的動態ram phy接口的制作方法
技術領域:
本發明涉及存儲子系統,所述存儲子系統包括與動態隨機存取存儲器(DRAM)裝置直接連接的物理層。相關申請的交叉引用本申請要求2010年9月13日提交的美國臨時專利申請號61/382,089以及2010年10月22日提交的美國臨時專利申請號12/910,412的權益,所述申請以引用的方式全文并入本文中。背景典型的存儲系統使用異步或同步時鐘方案來在存儲控制器與存儲裝置之間傳輸數據。同步時鐘是指存儲裝置先等待時鐘信號,然后對控制輸入做出響應,并因此與計算機系統總線同步。由于同步動態隨機存取存儲器(SDRAM)通常支持高于異步存儲裝置的時鐘速度,因此被廣泛使用。雙倍數據速率(DDR) SDRAM在時鐘信號的上升邊緣和下降邊緣傳輸數據。此類存儲裝置使用較低時鐘頻率,但是要求嚴格控制電氣數據和時鐘信號的定時。第一版此類裝置(DDRl)的帶寬達到以相同時鐘頻率運行的單倍數據速率(SDR) SDRAM的接近兩倍。DDR2和DDR3SDRAM裝置是對DDRl裝置的后續改進。無論使用哪種類型的DDR存儲器(DDR1/DDR2/DDR3),物理接口(Phy)均直接連接在存儲控制器與DDR SDRAM裝置之間。Phy接口通常包括用于處理DDR SDRAM數據選通的定時要求的電路。典型的Phy接口設備不提供迅速調整存儲性能水平或所需功率的機制。概述提供物理存儲接口(Phy)。Phy連接在存儲控制器與物理存儲裝置之間。所述Phy接口包括命令和狀態寄存器(CSR),所述命令和狀態寄存器被配置來接收第一功率上下文和第二功率上下文。提供選擇電路。所述選擇電路被配置來在所述第一功率上下文與所述第二功率上下文之間切換。Phy接口包括多個可調延遲元件,每個元件具有響應于所選功率上下文的延遲時間。在功率上下文之間切換能夠調整一個或多個所述可調延遲元件。在另一個實施方案中,所述Phy接口包括被配置來存儲所述第一功率上下文的第一組CSR以及被配置來存儲所述第二功率上下文的第二組CSR。所述Phy接口也可以包括多個驅動器,每個驅動器具有響應于所選功率上下文的可選驅動強度。所述Phy接口也可以包括多個接收器,每個接收器具有響應于所選功率上下文的可選終端阻抗。在功率上下文之間切換能夠調整一個或多個驅動器的驅動強度和/或一個或多個接收器的終端阻抗。所述第一功率上下文和第二功率上下文可以通過BIOS訓練程序確定。此類程序可以具有多個階段。例如,第一功率上下文可以通過第一存儲訓練階段確定,并且第二功率上下文可以通過第二存儲訓練階段確定。所述Phy接口可以包括配置總線,所述配置總線被配置來允許讀/寫訪問CSR。所述Phy接口也可以被配置來支持物理存儲裝置的多個通道。所述Phy接口可以位于多個位置中,包括中央處理單元(CPU)的芯片上。
附圖簡述
圖1示出了典型計算機系統的一部分;圖2示出了 Phy的高級架構;圖3是示出Phy接口配置總線上的地址、命令(例如,讀、寫)和數據的時序圖;以及圖4示出了故障CSR尋址。實施方案詳述圖1示出了計算機系統10的一部分,所述計算機系統包括中央處理單元(CPU) 12,核心邏輯芯片組14、16以及與主存儲器28的存儲接口 18。核心邏輯芯片組可以分為北橋14 (或者集成存儲控制器)和南橋(或I/O控制器集線器)16。存儲控制器18通常位于北橋14中。應了解,此類電路可以在實體上位于多個位置中,例如單個芯片或CPU中。存儲控制器18通常管理來往于主存儲器30的邏輯數據流。動態隨機存取存儲器也要求定期刷新信號,以維持多個存儲裝置電池中的電荷。存儲控制器18通常管理這些刷新操作。根據CPU架構和/或操作系統,主存儲器30可以以32或64位數據單元來傳輸數據。應了解,可以支持其它大小的數據單元。一些存儲系統包括如框20、24和30所反映的多個通道(例如,兩個或更多個獨立的存儲控制器)。出于簡明性的考慮,本文所含的實施例可能只示出單個存儲器通道。應了解,可以在不脫離本公開的范圍的情況下使用多個通道。Phy接口 22位于存儲控制器18與物理存儲裝置之間。Phy接口通常位于中央處理單元中,但是也可以位于其它位置。出于簡明性的考慮,圖1中將Phy接口 22圖示為單獨的塊。Phy接口通常包括用于處理主存儲器數據選通的定時要求的電路。對于本公開,術語雙倍數據速率(DDR)包括DDR1/DDR2/DDR3和/或后代的此類存儲裝置。DDR存儲裝置通常符合電子設備工程聯合委員會(JEDEC)標準。這些標準規定了 DDR存儲器數據的訪問(讀)和存儲(寫)方式。應了解,Phy接口可以被構造成適合其它存儲器類型和/或其它存儲器標準。與典型DDR SDRAM存儲裝置的連接主要通過兩種信號來實現,即DQ (數據)32和DQS (數據選通)34。其它信號包括存儲器時鐘(MEMCLK) 38以及地址和命令信號(通常圖示為ADDR/CMD36)。應了解,典型存儲裝置可以使用附圖中未示出的其它信號。僅出于簡明性的考慮,此類信號已省略。例如,功率和地面信號未圖示。應了解,此類信號應包括在典型實施中。在讀操作中,DDR SDRAM同時發出DQ和DQS,這種方式通常稱為“邊緣對齊”。為了讓存儲控制器正確地獲取從DDR SDRAM發送來的數據,Phy接口 22使用延遲鎖定環路(DLL)等延遲電路來延遲DQS信號,以便所述信號可以被用于在有效數據窗或“數據眼”期間正確地鎖存DQ信號。類似地,Phy接口 22也使用延遲電路來支持將數據寫入到DDR DRAM。為了讀取數據,必須延遲DQS34。為了寫入數據,必須延遲DQS和DQ34、32。Phy將DQS34與DQ32數據眼的中間對齊,而不是進行邊緣對齊。DQS34被延遲以進行寫調整,從而滿足數據眼中間的要求。也可使用其它延遲(例如,以進行數據總線的讀/寫三態控制)。Phy接口22包括多個命令和狀態寄存器(CSR)42,用于控制延遲定時、驅動強度和下文更詳細描述的多個其它參數。應了解,也可以每個通道為基礎對此類電路進行復制。Phy接口也可以調整或選擇發射器驅動強度和接收器終端阻抗。定時延遲、發射器驅動強度和接收器阻抗可以在每次打開計算機系統時進行調整,而不是使用固定的這些參數。這通常是借助于訓練程序來實現。訓練程序通常存儲在基本輸入/輸出系統(BIOS)存儲裝置26中,但也可以在裝置硬件中實施。訓練程序在開機自檢(POST)期間執行算法,以確定與許多存儲接口信號相關的合適的定時延遲、驅動強度和終端阻抗。這些參數存儲在Phy接口內的多個寄存器中,這些寄存器限定來往于Phy的各種信號通道的總時限。或者,這些參數可以存儲在其它位置(例如,北橋14或南橋16中)。圖2示出了 Phy接口 22的高級架構。Phy接口通常包括時鐘源(例如,PLL70)和控制接口,所述控制接口包括命令和狀態寄存器(CSR) 42。Phy接口 20為典型存儲裝置上的多數引線,例如雙列直插式存儲模塊(DIMM)提供物理連接,所述雙列直插式存儲模塊包括DQ32、DQS34、地址/命令行36以及時鐘輸入38。典型存儲裝置也設有時鐘使能(自刷新)輸入40。時鐘使能輸入40用于將存儲裝置置于自刷新模式中。在所述模式中,存儲裝置在必要時使用芯片內定時器來生成內部刷新周期。外部時鐘也可以在所述時間內停止。所述輸入通常用于斷電模式的連接,因為它能夠禁用存儲控制器而不損失主存儲器數據。如圖2所示,DQ32(數據)和DQS34 (選通)行是雙向的。應了解,每個DMM將具有多個DQ行(例如,64數據位)和多個DQS行。這些行在Phy接口 22中各自具有相關的驅動器52、56和接收器54、58。出于簡明性的考慮,圖2中僅示出單個驅動器/接收器對。每個驅動器具有可選或可調驅動輸出。類似地,每個接收器具有可選或可調終端阻抗(例如,在芯片終端上)。DQ和DQS行32、34也與延遲鎖定環路(DLL) 72、74、76等延遲元件相關。延遲元件(例如,70至76)、驅動強度或終端阻抗值是通過將合適值編程到相關CSR42的合適字段中來進行調整,如下文更詳細描述。CSR之間的邏輯連接以及延遲元件、驅動強度或終端阻抗的調整如圖中的虛線所示。在本實施例中,驅動器52和56分別與DLL72和74相關。接收器58與DLL76相關。如上所述,調整DLL以為讀寫操作提供合適的定時延遲。Phy接口也可被配置來在進行或不進行調整的情況下執行讀寫操作。在進行調整的對DDR3DIMMS的存儲器寫操作期間,Phy接口延遲將每個DQS寫入DIMM,使得在每個DRAM芯片上,DQS被視為與存儲器時鐘58合并。在進行調整的讀操作期間,Phy接口也可補償由fly-by拓撲產生的延遲。由于較高數據速率操作的信號完整性問題,Phy接口可以基于每個短脈沖串(或事務處理)動態地改變DLL設置。Phy接口可以存儲系統中每個DMM的最佳元組DQ和DQS延遲設置。根據所訪問的DIMM,Phy接口檢索合適的DLL設置并應用這些設置。Phy接口可以根據所需的性能級別來調整其需要的功率。應了解,何時改變功率上下文的決定可能來自多個來源。例如,操作系統可以決定需要改變上下文(例如,在設定的閑置期之后,通過用戶命令、時間表或類似指令)。或者,可以使用硬件來決定什么時候需要改變上下文。上下文改變是通過在與不同功率狀態相關的不同組Phy接口參數之間切換來實現。例如,高功率狀態(例如,較高存儲速度)和低功率狀態(例如,較低存儲速度)。每個功率狀態具有相關的Phy接口參數或上下文組(即,每一信號行的延遲元件設置、驅動強度和終端阻抗)。如以下更詳細地描述,在功率狀態之間切換可以通過若干方式來實現。應了解,本文所公開的在多個功率狀態之間切換可以應用到任何存儲器類型,并且不限于以用于以下實施例中的方式用于DDR存儲器。在本實施例中,存儲控制器18可以通過32位時間交替型單向配置總線80來訪問CSR42。地址和命令(例如,讀、寫、不執行任何操作)在第一流水級中發送,然后是圖3所示的第二流水級中的數據。應了解,CSR可以通過其它通信鏈路訪問。在本實施例中,CSR地址空間寬16位,從而提供65,536個獨特的16位寄存器的空間。作為對提供如此大的空間的替代,地址被映射以提供以下功能:小芯片識別;小芯片內廣播;補償廣播;小芯片實例識別(D3DBYTE、D3CLK和D3CMP是使用一次以上的小芯片)。圖4示出了 CSR尋址故障。只有一部分的CSR包括與給定功率狀態相關的值。為了促進兩個功率狀態之間的低延遲切換,為每個功率狀態提供一組功率上下文敏感性CSR。返回圖2,第一組CSR與第一功率上下文-PhyPS [O] 44相關。另一組CSR與第二功率上下文-PhyPS [I] 46相關。應了解,可以提供其它組CSR以支持用PhyPS[n]48表示的兩個以上功率狀態。提供倍增器或選擇電路50以在不同組CSR之間進行選擇。Phy接口也包括對功率上下文不敏感的CSR。此類CSR適用于所有功率狀態。每個PhyPS中每個CSR的可編程字段如下表I匯總所示。
權利要求
1.一種控制存儲裝置的物理存儲接口的方法,所述方法包括: 存儲第一功率上下文和第二功率上下文; 提供多個可調延遲元件,所述可調延遲元件被配置來提供定時延遲以從所述存儲裝置讀取數據和將數據寫入所述存儲裝置,每個可調延遲元件具有響應于所述第一功率上下文和所述第二功率上下文中的一個所選功率上下文的延遲時間; 接收功率上下文改變請求;以及 基于所述功率上下文改變請求選擇所述第一功率上下文和所述第二功率上下文中的一個功率上下文。
2.如權利要求1所述的方法,其進一步包括生成自刷新輸出,所述自刷新輸出被配置來選擇與所述存儲裝置相關的自刷新模式,然后才選擇所述第一功率上下文和所述第二功率上下文中的一個功率上下文。
3.如權利要求1所述的方法,其進一步包括: 提供第一組寄存器,所述寄存器被配置來存儲所述第一功率上下文; 提供第二組寄存器,所述寄存器被配置來存儲所述第二功率上下文;以及 響應于所述功率上下文 改變請求而選擇所述第一組寄存器和所述第二組寄存器中的一組寄存器。
4.如權利要求1所述的方法,其進一步包括: 響應于所述功率上下文改變請求而調整所述物理接口的至少一個驅動器的可選驅動強度。
5.如權利要求1所述的方法,其進一步包括: 響應于所述功率上下文改變請求而調整所述物理接口的至少一個接收器的可選終端阻抗。
6.如權利要求1所述的方法,其進一步包括經由第一存儲器訓練階段生成所述第一功率上下文以及經由第二存儲器訓練階段生成所述第二功率上下文。
7.如權利要求1所述的方法,其進一步包括在從高級配置和電源接口(ACPI)S3功率狀態恢復時還原所述第一功率上下文和所述第二功率上下文中的至少一個功率上下文。
8.如權利要求1所述的方法,其進一步包括從南橋上的存儲位置檢索所述第一功率上下文和所述第二功率上下文。
9.如權利要求1所述的方法,其進一步包括從北橋上的存儲位置檢索所述第一功率上下文和所述第二功率上下文。
10.一種存儲裝置的物理存儲接口,所述物理存儲接口包括: 多個寄存器,所述寄存器被配置來接收第一功率上下文和第二功率上下文; 選擇電路,所述選擇電路被配置來選擇所述第一功率上下文和所述第二功率上下文中的一個功率上下文;以及 多個可調延遲元件,所述可調延遲元件被配置來提供定時延遲以從所述存儲裝置讀取數據和將數據寫入所述存儲裝置,每個可調延遲元件具有響應于所述第一功率上下文和所述第二功率上下文中的一個所選功率上下文的延遲時間。
11.如權利要求10所述的物理存儲接口,其中所述選擇電路從存儲位置檢索所述第一功率上下文和第二功率上下文中的一個所選功率上下文。
12.如權利要求10所述的物理存儲接口,其進一步包括: 第一組寄存器,所述寄存器被配置來存儲所述第一功率上下文;以及 第二組寄存器,所述寄存器被配置來存儲所述第二功率上下文,其中所述選擇電路被配置來在所述第一組寄存器與所述第二組寄存器之間進行選擇。
13.如權利要求10所述的物理存儲接口,其進一步包括多個驅動器,每個驅動器具有響應于所述第一功率上下文和所述第二功率上下文中的一個所選功率上下文的可選驅動強度。
14.如權利要求10所述的物理存儲接口,其進一步包括多個接收器,每個接收器具有響應于所述第一功率上下文和所述第二功率上下文中的一個所選功率上下文的可選終端阻抗。
15.如權利要求10所述的物理存儲接口,其中所述第一功率上下文通過第一存儲器訓練階段確定,并且所述第二功率上下文通過第二存儲器訓練階段確定。
16.如權利要求10所述的物理存儲接口,其進一步包括物理存儲裝置的多個通道的接□。
17.如權利要求10所述的物理存儲接口,其中所述物理存儲接口位于中央處理單元(CPU)的芯片上。
18.如權利要求10所述的物理存儲接口,其進一步包括存儲接口,所述存儲接口被配置來在從高級配置和電源接口(ACPI) S3功率狀態恢復時檢索所述第一功率上下文和所述第二功率上下文中的至少一個功率上下文。
19.如權利要求10所述的物理存儲接口,其進一步包括存儲接口,所述存儲接口被配置來從存儲位置加載所述第一功率上下文和所述第二功率上下文。
20.如權利要求10所述的物理存儲接口,其進一步包括連接到所述物理存儲接口的存儲裝置,所述存儲裝置被配置來用于使用與所述第一功率上下文和所述第二功率上下文中的一個所選功率上下文相關的定時延遲來讀取和寫入數據。
全文摘要
本發明公開一種物理存儲接口(PHY)和操作方法。所述PHY接口包括命令和狀態寄存器(CSR),所述命令和狀態寄存器被配置來接收第一功率上下文和第二功率上下文。選擇電路被配置來在所述第一功率上下文與所述第二功率上下文之間切換。提供多個可調延遲元件,每個可調延遲元件具有響應于所選功率上下文的延遲時間。配置的第一組CSR可以存儲所述第一功率上下文,并且配置的第二組CSR可以存儲所述第二功率上下文。所述PHY接口也可以包括多個驅動器,每個驅動器具有響應于所選功率上下文的可選驅動強度。所述PHY接口也可以包括多個接收器,每個接收器具有響應于所選功率上下文的可選終端阻抗。在功率上下文之間切換可使得調整所述延遲元件、一個或多個驅動器的驅動強度和/或一個或多個接收器的終端阻抗。
文檔編號G06F13/42GK103168296SQ201180049362
公開日2013年6月19日 申請日期2011年9月13日 優先權日2010年9月13日
發明者肖恩·瑟爾斯, 尼古拉斯·T·漢弗萊斯, 布萊恩·W·阿米克, 理查德·W·里夫斯, 趙漢宇, 羅納德·L·佩蒂約翰 申請人:超威半導體公司