訪問命令/地址寄存器裝置中存儲的數(shù)據(jù)的制作方法
【技術領域】
[0001] 一般來說,本發(fā)明的實施例涉及存儲器裝置,以及更具體來說,涉及在存儲器地址 或命令總線上訪問寄存器裝置中存儲的數(shù)據(jù)。
【背景技術】
[0002] 本專利文檔的公開的部分可包含受到著作權保護的資料。著作權所有者不反對任 何人復制本專利文檔或專利公開,這是因為它出現(xiàn)在專利和商標局專利文件或記載中,但 無論如何在其它方面仍保留所有著作權。著作權聲明適用于如下及其附圖中所述的所有數(shù) 據(jù)以及以下所述的任何軟件:著作權《>2011,因特爾公司,著作權所有,不得翻印。
[0003] 某些存儲器子系統(tǒng)包括寄存器裝置,所述寄存器裝置連接到存儲器子系統(tǒng)的地址 或命令總線,以存儲與存儲器子系統(tǒng)中的命令或配置相關的值。按傳統(tǒng)方式,不存在訪問這 種數(shù)據(jù)的良好方式。因此,為了配置目的而存儲在寄存器中的數(shù)據(jù)(例如,模式寄存器中存 儲的數(shù)據(jù))或者為了調(diào)試或檢錯目的而存儲的數(shù)據(jù)(例如C/A寄存器裝置中存儲的數(shù)據(jù)) 或者另一個這種寄存器中的其它數(shù)據(jù)不是可易于訪問的。
[0004] 訪問所述數(shù)據(jù)的一個選項是包括到存儲器子系統(tǒng)的數(shù)據(jù)總線的連接。這種選項在 硬件(額外引腳)和跡線的布線方面是非常昂貴的。另一個選項是使裝置處于特殊狀態(tài) (例如管理模式),以暫時允許現(xiàn)有總線或其它連接的重定目標。這種選項引起緩慢連接, 不允許裝置的持續(xù)操作,并且仍然可要求附加硬件。另一個選項是提供寄存器裝置上的帶 外串行接口,這也增加硬件和布線成本。因此,當前不存在允許以最小硬件要求、采用標準 命令來訪問存儲器子系統(tǒng)的寄存器中存儲的數(shù)據(jù)的傳統(tǒng)機制。
[0005] 支持DDR(雙倍數(shù)據(jù)速率)存儲器的較新標準的存儲器子系統(tǒng)增加提供用于在寄 存器裝置處來代替在存儲器裝置處執(zhí)行奇偶錯誤校驗的寄存器和邏輯的附加情況。例如, DDR4(到本申請?zhí)峤粫r仍然在制訂中的標準)將允許DRAM(動態(tài)隨機存取存儲器)裝置外 的命令/地址(C/A)奇偶錯誤校驗。但是,在沒有讀取奇偶錯誤的機構的情況下,命令仍然 將發(fā)送給DRAM以便執(zhí)行,這會引起掛起計算裝置(例如"藍屏"狀況)。
【附圖說明】
[0006] 以下描述包括對具有作為本發(fā)明的實施例的實現(xiàn)示例所提供的說明的附圖的論 述。附圖應當理解為作為舉例而不是進行限制。本文所使用的對一個或多個"實施例"的 提法要被理解為描述本發(fā)明的至少一種實現(xiàn)中包含的具體特征、結構或特性。因此,本文中 出現(xiàn)的例如"在一個實施例中"或"在一個備選實施例中"等詞語描述本發(fā)明的各個實施例 和實現(xiàn),但不一定都指同一個實施例。但是,它們也不一定相互排斥。
[0007] 圖1是具有存儲器子系統(tǒng)的系統(tǒng)的一個實施例的框圖,所述存儲器子系統(tǒng)具有經(jīng) 由地址或命令總線而非數(shù)據(jù)總線可訪問的寄存器。
[0008] 圖2是具有存儲器子系統(tǒng)的系統(tǒng)的一個實施例的框圖,所述存儲器子系統(tǒng)在存儲 控制器與DRAM裝置之間具有寄存器。
[0009] 圖3是具有存儲器子系統(tǒng)的系統(tǒng)的一個實施例的框圖,所述存儲器子系統(tǒng)具有經(jīng) 由地址或命令總線而非數(shù)據(jù)總線可訪問的寄存器以及經(jīng)由地址或命令總線和數(shù)據(jù)總線均 可訪問的存儲器裝置。
[0010] 圖4是具有存儲器子系統(tǒng)的系統(tǒng)的一個實施例的框圖,所述存儲器子系統(tǒng)在存儲 控制器與DRAM裝置之間具有寄存器裝置,其中該寄存器裝置執(zhí)行奇偶校驗。
[0011] 圖5是用于從經(jīng)由地址或命令總線而非數(shù)據(jù)總線可訪問的寄存器中訪問數(shù)據(jù)的 過程的一個實施例的流程圖。
[0012] 圖6是計算系統(tǒng)的一個實施例的框圖,其中所述存儲器子系統(tǒng)的寄存器由主處理 器間接地訪問。
[0013] 圖7是移動裝置的一個實施例的框圖,其中所述存儲器子系統(tǒng)的寄存器由主處理 器間接地訪問。
[0014] 下面是對某些細節(jié)和實現(xiàn)的描述,其中包括對附圖的描述,附圖可示出以下所述 的實施例的部分或全部,以及論述本文所提供的發(fā)明概念的其它可能的實施例或實現(xiàn)。下 面提供對本發(fā)明實施例的概述,之后是參照附圖進行的更詳細描述。
【具體實施方式】
[0015] 如本文所述,存儲器子系統(tǒng)中的寄存器連接到地址總線。將會理解,提到地址總線 可表示僅攜帶地址的總線或者攜帶地址和命令的總線。許多地址總線是地址或命令總線, 這是因為地址、命令或者地址和命令的組合均通過這些總線來發(fā)送。本文中提到"地址總 線"將被理解為表示地址或命令總線。因此,寄存器是經(jīng)由地址或命令總線而非數(shù)據(jù)總線可 訪問的。能夠通過如下方式來讀取數(shù)據(jù):跨地址總線將數(shù)據(jù)從寄存器傳遞給與數(shù)據(jù)總線連 接的裝置,通過數(shù)據(jù)總線從所述裝置中讀取所述數(shù)據(jù)(即使寄存器沒有連接到數(shù)據(jù)總線)。 寄存器駐留在經(jīng)由地址總線連接到存儲器裝置(所述存儲器裝置不僅連接到地址總線而 且連接到數(shù)據(jù)總線)的寄存器裝置中。主處理器觸發(fā)寄存器裝置通過地址總線向存儲器裝 置上的寄存器傳遞信息。主處理器然后從存儲器裝置的寄存器中讀取信息。通過這種讀取 機制,寄存器的"間接"讀取是可能的。
[0016] 該讀取機制與耦合到地址總線的任何寄存器裝置(例如模式寄存器或者奇偶錯 誤校驗寄存器裝置)配合工作。因此,特定存儲器配置在主操作系統(tǒng)的正常運轉時間運行 期間是可訪問的。另外,有可能訪問與引起奇偶錯誤的特定命令或地址有關的數(shù)據(jù),這能夠 防止對主系統(tǒng)的訪問和主系統(tǒng)的故障。因此,有可能在存儲器命令中出現(xiàn)錯誤時通過所述 讀取機制來執(zhí)行系統(tǒng)的錯誤恢復。
[0017] 對寄存器的間接讀取適用于所提出的DDR4系統(tǒng)。DDR4指定能夠執(zhí)行C/A奇偶錯 誤檢驗并且存儲出錯命令的寄存器裝置。因此,在DDR4中,該命令能夠在運行之前停止,以 及訪問出錯命令的機構幫助精確指出出錯命令,這又幫助錯誤恢復。
[0018] 圖1是具有存儲器子系統(tǒng)的系統(tǒng)的一個實施例的框圖,所述存儲器子系統(tǒng)具有經(jīng) 由地址總線而非數(shù)據(jù)總線可訪問的寄存器。系統(tǒng)100表示計算裝置或移動裝置,其中隔離 寄存器130與主處理器110隔離。主處理器110運行存儲器子系統(tǒng)120中存儲的指令。主 處理器110 -般性地發(fā)出訪問數(shù)據(jù)的命令。該命令能夠包括物理地址或虛擬地址,所述物 理地址或虛擬地址指向存儲器子系統(tǒng)120的存儲器裝置中的特定存儲位置。
[0019] 隔離寄存器130不是由主處理器110直接來訪問。因此,即使寄存器130連接到 存儲器子系統(tǒng)120的元件、例如地址總線(其還連接到存儲控制器和存儲器裝置(參見以下 圖2和圖3以獲得更詳細示例)),寄存器130與由主處理器110進行的直接訪問仍"隔離"。 系統(tǒng)100包括如本領域已知的控制機構,以將數(shù)據(jù)和代碼或指令加載到存儲器子系統(tǒng)120 中以便由處理器110運行。
[0020] 在一個實施例中,主處理器110發(fā)出使數(shù)據(jù)存儲在寄存器130中的命令,其中寄存 器130則不能由主處理器110直接訪問。示例包括模式寄存器值、某些調(diào)試值、奇偶錯誤信 息或其它信息。在這種實施例中,主處理器110發(fā)出命令,所述被轉發(fā)給寄存器130,以使該 寄存器將其內(nèi)容復制或傳遞到存儲器子系統(tǒng)120的存儲器裝置上的寄存器。該存儲器裝置 連接到數(shù)據(jù)總線,并且因而能夠通過將數(shù)據(jù)加載到可由主處理器110讀取的數(shù)據(jù)總線上來 響應來自主處理器110的命令。
[0021] 在一個實施例中,BIOS (基本輸入/輸出系統(tǒng))140包括能夠由主處理器110來運 行的代碼以觸發(fā)對寄存器130的讀取,并且處理其中存儲的內(nèi)容。例如,主處理器110能夠 配置成在某些事件發(fā)生時訪問BIOS 140中存儲的調(diào)試碼或糾錯碼。因此,能夠使主處理器 110運行調(diào)試狀態(tài)或糾錯狀態(tài),其將訪問寄存器130的內(nèi)容,并且確定響應所讀取的內(nèi)容要 采取什么動作。
[0022] 圖2是具有存儲器子系統(tǒng)的系統(tǒng)的一個實施例的框圖,所述存儲器子系統(tǒng)在存儲 控制器與DRAM裝置之間具有寄存器。系統(tǒng)200表