欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

用于存儲(chǔ)器系統(tǒng)的糾錯(cuò)碼分布的方法和系統(tǒng)的制作方法

文檔序號(hào):8340846閱讀:578來源:國知局
用于存儲(chǔ)器系統(tǒng)的糾錯(cuò)碼分布的方法和系統(tǒng)的制作方法
【技術(shù)領(lǐng)域】
[0001]本公開內(nèi)容總體上涉及計(jì)算機(jī)存儲(chǔ)器,并且更具體地涉及存儲(chǔ)器系統(tǒng)中的糾錯(cuò)碼分布。
【背景技術(shù)】
[0002]計(jì)算機(jī)系統(tǒng)在啟動(dòng)和操作時(shí)經(jīng)常需要相當(dāng)數(shù)量的高速隨機(jī)訪問存儲(chǔ)器(RAM)來臨時(shí)保存諸如數(shù)據(jù)和程序之類的信息。該信息在正常情況下是二進(jìn)制的,由被稱作數(shù)據(jù)比特的I和O的模式所組成。該數(shù)據(jù)比特經(jīng)常以更高級(jí)別進(jìn)行分組和組織。例如,字節(jié)經(jīng)常由八個(gè)比特所組成;更一般地,這些分組或字節(jié)被稱作符號(hào)并且可以由任意數(shù)量的比特或子符號(hào)所構(gòu)成。
[0003]存儲(chǔ)器設(shè)備的密度隨著計(jì)算機(jī)系統(tǒng)變得越來越強(qiáng)大而持續(xù)增長。在一些情況下,單個(gè)計(jì)算機(jī)的RAM內(nèi)容能夠由數(shù)百萬億個(gè)比特所組成。不幸的是,僅單個(gè)RAM設(shè)備的一部分就會(huì)導(dǎo)致全系統(tǒng)范圍的問題。當(dāng)發(fā)生可能為“硬”(重復(fù))或“軟”(一次性或間歇性)故障的存儲(chǔ)器錯(cuò)誤時(shí),這些故障可能會(huì)作為單個(gè)單元、多個(gè)比特、整個(gè)芯片或整個(gè)存儲(chǔ)器模塊的故障出現(xiàn),并且全部或部分的系統(tǒng)RAM可能會(huì)無法使用直至其被修復(fù)。修復(fù)輪轉(zhuǎn)(turn-around)時(shí)間可能是數(shù)小時(shí)或者甚至數(shù)日,這會(huì)對(duì)依賴于計(jì)算機(jī)系統(tǒng)的事務(wù)造成實(shí)質(zhì)性影響。在具有存儲(chǔ)器模塊陣列的系統(tǒng)(例如,服務(wù)器)中,發(fā)生故障的存儲(chǔ)器模塊可以被臨時(shí)隔離而并不導(dǎo)致系統(tǒng)癱瘓,以便維持系統(tǒng)操作。然而,這將導(dǎo)致整體系統(tǒng)存儲(chǔ)器的存儲(chǔ)器損失并且將對(duì)性能造成不利影響。
[0004]在正常操作期間遇到RAM故障的概率隨著同時(shí)代計(jì)算機(jī)中的存儲(chǔ)器存儲(chǔ)數(shù)量的增長而持續(xù)增加。糾錯(cuò)碼(ECC)在更為魯棒的系統(tǒng)中得到使用并且通常被共同存儲(chǔ)在附加設(shè)備中以檢測(cè)并糾正具體的錯(cuò)誤條件。存儲(chǔ)器系統(tǒng)架構(gòu)通常需要選擇EEC實(shí)現(xiàn)以糾正一個(gè)或兩個(gè)存儲(chǔ)器設(shè)備中的許多錯(cuò)誤比特,或者一個(gè)或多個(gè)比特的糾錯(cuò)能夠跨許多存儲(chǔ)器設(shè)備來提供。

【發(fā)明內(nèi)容】

[0005]根據(jù)一個(gè)實(shí)施例,一種存儲(chǔ)器系統(tǒng)包括多個(gè)存儲(chǔ)器設(shè)備以及操作地耦合至所述存儲(chǔ)器設(shè)備的存儲(chǔ)器控制器。所述存儲(chǔ)器控制器被配置為將寫數(shù)據(jù)劃分為多個(gè)數(shù)據(jù)塊,其中所述數(shù)據(jù)塊中的每個(gè)數(shù)據(jù)塊與所述存儲(chǔ)器設(shè)備之一相關(guān)聯(lián)。所述存儲(chǔ)器控制器進(jìn)一步被配置為生成與所述數(shù)據(jù)塊中的每個(gè)數(shù)據(jù)塊相對(duì)應(yīng)的局部糾錯(cuò)碼(ECC)的實(shí)例,并且將所述數(shù)據(jù)塊中的每個(gè)數(shù)據(jù)塊與相對(duì)應(yīng)的、局部ECC的實(shí)例相合并,以針對(duì)所述存儲(chǔ)器設(shè)備中的每個(gè)存儲(chǔ)器設(shè)備形成經(jīng)編碼的數(shù)據(jù)塊。此外,所述存儲(chǔ)器控制器被配置為將所述經(jīng)編碼的數(shù)據(jù)塊中的每個(gè)經(jīng)編碼的數(shù)據(jù)塊寫入到所述存儲(chǔ)器設(shè)備,而使得所述存儲(chǔ)器設(shè)備中的每個(gè)存儲(chǔ)器設(shè)備存儲(chǔ)所述數(shù)據(jù)塊中具有所述相對(duì)應(yīng)的所述局部ECC的實(shí)例的一個(gè)數(shù)據(jù)塊。在所述存儲(chǔ)器系統(tǒng)中還可以包括全局ECC以及所述全局ECC的局部ECC。
[0006]根據(jù)另一個(gè)實(shí)施例,一種方法包括將寫數(shù)據(jù)劃分為多個(gè)數(shù)據(jù)塊,其中所述數(shù)據(jù)塊中的每個(gè)數(shù)據(jù)塊與所述存儲(chǔ)器設(shè)備之一相關(guān)聯(lián)。生成與所述數(shù)據(jù)塊中的每個(gè)數(shù)據(jù)塊相對(duì)應(yīng)的局部糾錯(cuò)碼(ECC)的實(shí)例。將所述數(shù)據(jù)塊中的每個(gè)數(shù)據(jù)塊與所述相對(duì)應(yīng)的、所述局部ECC實(shí)例相合并,以針對(duì)所述存儲(chǔ)器設(shè)備中的每個(gè)存儲(chǔ)器設(shè)備形成經(jīng)編碼的數(shù)據(jù)塊。將經(jīng)編碼的數(shù)據(jù)塊中的每個(gè)經(jīng)編碼的數(shù)據(jù)塊寫入到所述存儲(chǔ)器設(shè)備,而使得所述存儲(chǔ)器設(shè)備中的每個(gè)存儲(chǔ)器設(shè)備存儲(chǔ)所述數(shù)據(jù)塊中具有相對(duì)應(yīng)的局部ECC的實(shí)例的一個(gè)數(shù)據(jù)塊。還可以包括全局ECC以及所述全局ECC的局部ECC。
[0007]根據(jù)另外的實(shí)施例,一種計(jì)算機(jī)程序產(chǎn)品包括可由處理電路讀取并且存儲(chǔ)有由所述處理電路執(zhí)行以便執(zhí)行一種方法的指令的有形存儲(chǔ)介質(zhì)。所述方法包括將寫數(shù)據(jù)劃分為多個(gè)數(shù)據(jù)塊,其中所述數(shù)據(jù)塊中的每個(gè)數(shù)據(jù)塊與多個(gè)存儲(chǔ)器設(shè)備之一相關(guān)聯(lián)。生成與所述數(shù)據(jù)塊中的每個(gè)數(shù)據(jù)塊相對(duì)應(yīng)的局部糾錯(cuò)碼(ECC)的實(shí)例。將所述數(shù)據(jù)塊中的每個(gè)數(shù)據(jù)塊與相對(duì)應(yīng)的、所述局部ECC的實(shí)例相合并,以針對(duì)所述存儲(chǔ)器設(shè)備中的每個(gè)存儲(chǔ)器設(shè)備形成經(jīng)編碼的數(shù)據(jù)塊。將所述經(jīng)編碼的數(shù)據(jù)塊中的每個(gè)經(jīng)編碼的數(shù)據(jù)塊寫入到所述存儲(chǔ)器設(shè)備,而使得所述存儲(chǔ)器設(shè)備中的每個(gè)存儲(chǔ)器設(shè)備存儲(chǔ)所述數(shù)據(jù)塊中具有所述相對(duì)應(yīng)的所述局部ECC的實(shí)例的一個(gè)數(shù)據(jù)塊。還可以包括全局ECC以及所述全局ECC的局部ECC。
【附圖說明】
[0008]圖1圖示了依據(jù)實(shí)施例的包括存儲(chǔ)器系統(tǒng)的處理系統(tǒng)的框圖;
[0009]圖2圖示了圖1的存儲(chǔ)器系統(tǒng)的實(shí)施例的框圖;
[0010]圖3圖示了圖1的存儲(chǔ)器系統(tǒng)的另一個(gè)實(shí)施例的框圖;
[0011]圖4圖示了圖1的存儲(chǔ)器系統(tǒng)的另一個(gè)實(shí)施例的框圖;
[0012]圖5圖示了依據(jù)實(shí)施例的存儲(chǔ)器控制器的框圖;
[0013]圖6是依據(jù)實(shí)施例的編碼處理的流程圖;
[0014]圖7是依據(jù)實(shí)施例的另一種編碼處理的流程圖;
[0015]圖8是依據(jù)實(shí)施例的另外的編碼處理的流程圖;
[0016]圖9是依據(jù)實(shí)施例的另外的編碼處理的流程圖;以及
[0017]圖10是依據(jù)實(shí)施例的糾錯(cuò)處理的流程圖。
【具體實(shí)施方式】
[0018]在實(shí)施例中,存儲(chǔ)器總線上的存儲(chǔ)器設(shè)備群組中的每個(gè)存儲(chǔ)器設(shè)備(例如,動(dòng)態(tài)隨機(jī)訪問存儲(chǔ)器或DRAM)包括基于數(shù)據(jù)塊和存儲(chǔ)器設(shè)備所計(jì)算的局部糾錯(cuò)碼(ECC)。作為一個(gè)示例,九個(gè)存儲(chǔ)器設(shè)備均具有8比特的設(shè)備數(shù)據(jù)總線寬度并且支持8的脈沖長度。因此,針對(duì)存儲(chǔ)器設(shè)備的每個(gè)脈沖寫入包括多達(dá)513比特的數(shù)據(jù)以及63比特的局部ECC,它們可以被分配為每個(gè)存儲(chǔ)器設(shè)備的57比特的數(shù)據(jù)和7比特的局部ECC。向每個(gè)存儲(chǔ)器設(shè)備分配局部ECC比特可以在每個(gè)存儲(chǔ)器設(shè)備中支持多個(gè)錯(cuò)誤,例如一個(gè)或兩個(gè)比特反轉(zhuǎn)。除了每個(gè)設(shè)備的局部ECC值之外,通過增加全局ECC存儲(chǔ)存儲(chǔ)器設(shè)備來存儲(chǔ)跨全部存儲(chǔ)區(qū)設(shè)備所計(jì)算的全局ECC能夠?qū)崿F(xiàn)額外的故障模式覆蓋。全局ECC能夠針對(duì)整個(gè)存儲(chǔ)器設(shè)備的故障或者單個(gè)存儲(chǔ)器設(shè)備中的單/雙比特故障進(jìn)行糾正。全局ECC存儲(chǔ)存儲(chǔ)器設(shè)備自身可以具有局部ECC值以保護(hù)全局ECC數(shù)據(jù)。局部ECC和全局ECC值可以結(jié)合使用以對(duì)可能無法以其它方式糾正的多種錯(cuò)誤模式進(jìn)行糾正。
[0019]圖1圖示了依據(jù)實(shí)施例的用于在存儲(chǔ)器中存儲(chǔ)并取回?cái)?shù)據(jù)的處理系統(tǒng)100的框圖。圖1所描繪的處理系統(tǒng)100包括計(jì)算機(jī)處理器102,包括存儲(chǔ)器設(shè)備的存儲(chǔ)器106,以及用于從計(jì)算機(jī)處理器102接收數(shù)據(jù)以便存儲(chǔ)在存儲(chǔ)器106中的存儲(chǔ)器控制器104。存儲(chǔ)器控制器104和存儲(chǔ)器106被共同稱作存儲(chǔ)器系統(tǒng)105。此外,存儲(chǔ)器106還可以包括一個(gè)或多個(gè)全局ECC存儲(chǔ)存儲(chǔ)器設(shè)備。
[0020]在一個(gè)實(shí)施例中,存儲(chǔ)器控制器104耦合至計(jì)算機(jī)處理器102并且從計(jì)算機(jī)處理器102接收寫請(qǐng)求和讀請(qǐng)求。當(dāng)接收到寫請(qǐng)求時(shí),存儲(chǔ)器控制器104生成任意所需的ECC值以支持存儲(chǔ)器系統(tǒng)105的ECC架構(gòu),諸如存儲(chǔ)器106的局部ECC值或者局部和全局ECC值。如這里進(jìn)一步描述的,存儲(chǔ)器控制器104將數(shù)據(jù)和ECC值寫入到存儲(chǔ)器106。類似地,如這里進(jìn)一步描述的,存儲(chǔ)器控制器104使用在讀操作取回的諸如局部ECC值或者局部和全局ECC值二者之類的ECC值來檢測(cè)并糾正從存儲(chǔ)器106所讀取的數(shù)據(jù)中的錯(cuò)誤。
[0021]處理系統(tǒng)100是可以被用來執(zhí)行這里所描述的處理的配置的一個(gè)示例。雖然處理系統(tǒng)100已經(jīng)被描繪為僅具有一個(gè)計(jì)算機(jī)處理器102和存儲(chǔ)器控制器104,但是將要理解的是,其它實(shí)施例也可以在具有兩個(gè)或更多計(jì)算機(jī)處理器102或存儲(chǔ)器控制器104的系統(tǒng)中進(jìn)行操作。計(jì)算機(jī)處理器102也可以被稱作處理電路(processing circuit)或處理電路裝置(processing circuitry),并且可以包括多個(gè)處理核或者被分布于多個(gè)設(shè)備上。存儲(chǔ)器106可以表示任意數(shù)量的存儲(chǔ)器設(shè)備,其包括被組織為分級(jí)、模塊、?;蚱矫媾渲玫拇鎯?chǔ)器設(shè)備的多個(gè)群組。在一個(gè)實(shí)施例中,存儲(chǔ)器106、存儲(chǔ)器控制器104和計(jì)算機(jī)處理器102并非位于相同的計(jì)算機(jī)內(nèi)。例如,存儲(chǔ)器106和存儲(chǔ)器控制器104可以位于一個(gè)物理位置(例如,在存儲(chǔ)器模塊上)而計(jì)算機(jī)處理器102則位于另一個(gè)物理位置(例如,計(jì)算機(jī)處理器102經(jīng)由網(wǎng)絡(luò)訪問存儲(chǔ)器控制器104)。此外,這里所描述的部分處理的范圍可以涉及存儲(chǔ)器106、存儲(chǔ)器控制器104和計(jì)算機(jī)處理器102中的一個(gè)或多個(gè)。
[0022]圖2圖示了作為存儲(chǔ)器系統(tǒng)200的圖1的存儲(chǔ)器系統(tǒng)105的實(shí)施例的框圖。存儲(chǔ)器系統(tǒng)200包括圖1的存儲(chǔ)器控制器104和作為圖1的存儲(chǔ)器106的多個(gè)存儲(chǔ)器設(shè)備202。每個(gè)存儲(chǔ)器設(shè)備202能夠存儲(chǔ)數(shù)據(jù)值204和ECC值206。雖然圖2出于圖示的目的而將ECC值206描繪為每個(gè)存儲(chǔ)器設(shè)備202中的列或條,但是ECC值206可以在每個(gè)存儲(chǔ)器設(shè)備202內(nèi)以任意模式進(jìn)行分布。ECC值206針對(duì)每個(gè)存儲(chǔ)器設(shè)備202以數(shù)據(jù)塊為基礎(chǔ)生成。存儲(chǔ)器控制器104經(jīng)由存儲(chǔ)器總線208操作地耦合至存儲(chǔ)器設(shè)備202。例如,每個(gè)存儲(chǔ)器設(shè)備202可以具有8比特的輸入/輸出(I/O)寬度(W)并且支持8的脈沖串長度(BL),而使得跨九個(gè)存儲(chǔ)器設(shè)備202的單次讀或?qū)懖僮鳟a(chǎn)生8個(gè)72比特的傳輸(總共576比特)作為存儲(chǔ)器控制器104和存儲(chǔ)器設(shè)備202之間的存儲(chǔ)器總線208上的脈沖209。
[0023]在每次寫操作時(shí),存儲(chǔ)器設(shè)備202均接收包括數(shù)據(jù)塊212和對(duì)應(yīng)于數(shù)據(jù)塊212的局部ECC 214的經(jīng)編碼的數(shù)據(jù)塊210。類似地,在每次讀操作時(shí),存儲(chǔ)器202均返回包括數(shù)據(jù)塊212和局部ECC 214的經(jīng)編碼的數(shù)據(jù)塊210。局部ECC 214針對(duì)每個(gè)相對(duì)應(yīng)的數(shù)據(jù)塊212生成而形成經(jīng)編碼的數(shù)據(jù)塊210以針對(duì)每個(gè)存儲(chǔ)器設(shè)備202校正比特錯(cuò)誤。經(jīng)編碼的數(shù)據(jù)塊210中的術(shù)語“編碼”是指數(shù)據(jù)塊與相對(duì)應(yīng)的局部ECC實(shí)例相合并而形成更大的塊結(jié)構(gòu)的部署形式。共同地,跨存儲(chǔ)器設(shè)備202進(jìn)行分布的局部ECC 214能夠在每次讀操作對(duì)每個(gè)數(shù)據(jù)塊212中的一個(gè)或兩個(gè)比特錯(cuò)誤進(jìn)行糾正。
[0024]在圖2的示例中,每個(gè)經(jīng)編碼的數(shù)據(jù)塊
當(dāng)前第1頁1 2 3 4 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
朔州市| 大渡口区| 云阳县| 姚安县| 化州市| 封丘县| 台前县| 宜川县| 佛学| 偏关县| 万盛区| 娱乐| 舒兰市| 白玉县| 邢台市| 三河市| 延吉市| 依兰县| 溆浦县| 东兴市| 灵石县| 随州市| 深水埗区| 宜良县| 建始县| 湛江市| 兴宁市| 东至县| 嘉兴市| 延吉市| 三江| 安新县| 乐山市| 清镇市| 个旧市| 保亭| 晋宁县| 呈贡县| 周口市| 潞西市| 喜德县|