国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      提高閃存壽命的可靠性存儲(chǔ)方法

      文檔序號(hào):6444257閱讀:373來(lái)源:國(guó)知局
      專(zhuān)利名稱(chēng):提高閃存壽命的可靠性存儲(chǔ)方法
      技術(shù)領(lǐng)域
      本發(fā)明涉及閃存技術(shù)領(lǐng)域,特別涉及ー種提高閃存壽命的可靠性存儲(chǔ)方法。
      背景技術(shù)
      在エ業(yè)控制領(lǐng)域中,經(jīng)常會(huì)使用閃存(FLASH)進(jìn)行數(shù)據(jù)存儲(chǔ),對(duì)現(xiàn)場(chǎng)設(shè)備的運(yùn)行狀態(tài)進(jìn)行實(shí)時(shí)的記錄;在設(shè)備下線(xiàn)后,再將閃存中存儲(chǔ)的設(shè)備運(yùn)行數(shù)據(jù)拷出,對(duì)現(xiàn)場(chǎng)狀況、 設(shè)備運(yùn)行或是控制效果進(jìn)行數(shù)據(jù)分析,以便在后期工作中進(jìn)行評(píng)價(jià)、調(diào)整或是改迸。上述應(yīng)用中使用的閃存一般是安裝在電路板上,體積和容量通常較??;此外,上述應(yīng)用中記錄的是的現(xiàn)場(chǎng)設(shè)備的實(shí)時(shí)運(yùn)行狀態(tài),對(duì)閃存進(jìn)行的數(shù)據(jù)存儲(chǔ)的特點(diǎn)是記錄次數(shù)多、每次記錄數(shù)據(jù)量小、拷貝頻繁。雖然現(xiàn)有的閃存形式有多種,讀寫(xiě)方式也分串行或并行等多種,但基本的閃存寫(xiě)操作都是基于頁(yè)寫(xiě)(Sector Write,或稱(chēng)扇區(qū)、區(qū)段、區(qū)塊寫(xiě)入等)方式進(jìn)行的。頁(yè)寫(xiě)方式有 ー個(gè)特點(diǎn),即如果要寫(xiě)入或修改某頁(yè)中的1個(gè)字節(jié),該頁(yè)整頁(yè)都需要被刷新一遍。由于閃存的使用壽命與刷新次數(shù)有關(guān),每一閃存單元可寫(xiě)入的次數(shù)是有限的,一般僅有10000次 100000次,如果寫(xiě)入頻率過(guò)于頻繁,勢(shì)必造成閃存的實(shí)際使用壽命降低。為避免對(duì)閃存単元頻繁進(jìn)行寫(xiě)入,一般閃存寫(xiě)入的解決方案都是將數(shù)據(jù)積攢滿(mǎn)ー頁(yè)后再執(zhí)行寫(xiě)入,通過(guò)這種方式來(lái)延長(zhǎng)閃存的使用壽命。但由于閃存的處理速度雖然高于磁盤(pán)但相對(duì)于高速緩存或普通易失性存儲(chǔ)器仍有一定差距,閃存頁(yè)寫(xiě)的時(shí)間可能會(huì)高達(dá)IOms之多,在這個(gè)過(guò)程中如果發(fā)生設(shè)備掉電或者瞬時(shí)干擾,很容易造成寫(xiě)入失敗,數(shù)據(jù)丟失或數(shù)據(jù)錯(cuò)誤。而在エ業(yè)控制領(lǐng)域,對(duì)設(shè)備記錄的可靠性要求較高,設(shè)備突然掉電造成的數(shù)據(jù)丟失或數(shù)據(jù)錯(cuò)誤都會(huì)影響記錄的準(zhǔn)確性,若想進(jìn)行準(zhǔn)確的數(shù)據(jù)分析,對(duì)エ業(yè)控制進(jìn)行正確的監(jiān)控、管理或是維護(hù),需要保證閃存中記錄的設(shè)備運(yùn)行數(shù)據(jù)的有效性,并且要能識(shí)別錯(cuò)誤數(shù)據(jù)?,F(xiàn)有技術(shù)中,為確保數(shù)據(jù)完整型,通常是采用大容量閃存,并使用一定的數(shù)據(jù)記錄幀格式來(lái)進(jìn)行數(shù)據(jù)備份或恢復(fù)。但現(xiàn)有技術(shù)的恢復(fù)手段有限,通常不能恢復(fù)由于偶然故障導(dǎo)致的寫(xiě)入失敗,仍然會(huì)造成數(shù)據(jù)丟失現(xiàn)象,另外增加的記錄幀也會(huì)加重對(duì)閃存的寫(xiě)入頻度,導(dǎo)致閃存的使用壽命降低。

      發(fā)明內(nèi)容
      (一)要解決的技術(shù)問(wèn)題針對(duì)現(xiàn)有技術(shù)的上述缺陷,本發(fā)明為了解決現(xiàn)有技術(shù)中閃存數(shù)據(jù)寫(xiě)入可靠性低影響壽命的技術(shù)問(wèn)題,提供了ー種提高閃存壽命的可靠性存儲(chǔ)方法。( ニ )技術(shù)方案為實(shí)現(xiàn)上述目的,本發(fā)明采用如下技術(shù)方案ー種提高閃存壽命的可靠性存儲(chǔ)方法,所述方法包括步驟Si,毎次上電后,進(jìn)行 NVRAM臨時(shí)頁(yè)的檢查,判斷4個(gè)臨時(shí)頁(yè)的內(nèi)容是否有至少兩頁(yè)相同,若沒(méi)有,則認(rèn)為數(shù)據(jù)無(wú)法恢復(fù),將臨時(shí)頁(yè)擦除,執(zhí)行步驟S4 ;若有則執(zhí)行步驟S2 ;S2,判斷4個(gè)臨時(shí)頁(yè)中內(nèi)容是兩兩相同還是多數(shù)頁(yè)相同,若是兩兩相同,則使用第一臨時(shí)頁(yè)中內(nèi)容將序號(hào)靠后的頁(yè)中內(nèi)容恢復(fù)后,執(zhí)行步驟S3;若是多數(shù)頁(yè)相同,則使用多數(shù)頁(yè)中內(nèi)容將少數(shù)頁(yè)中內(nèi)容恢復(fù)后,執(zhí)行步驟S3 ;S3,使用臨時(shí)頁(yè)中內(nèi)容將閃存當(dāng)前記錄頁(yè)內(nèi)容恢復(fù);S4,正常進(jìn)行閃存數(shù)據(jù)讀寫(xiě)。優(yōu)選地,每個(gè)臨時(shí)頁(yè)的字節(jié)數(shù)與閃存文件系統(tǒng)劃分的每頁(yè)字節(jié)數(shù)相同。優(yōu)選地,步驟S4中,在閃存讀寫(xiě)過(guò)程中,毎次有數(shù)據(jù)需要記錄吋,首先將數(shù)據(jù)按臨時(shí)頁(yè)的編號(hào)順序順次寫(xiě)入NVRAM的各臨時(shí)頁(yè)中。優(yōu)選地,當(dāng)臨時(shí)頁(yè)數(shù)據(jù)寫(xiě)滿(mǎn)ー頁(yè)后,再將這ー頁(yè)數(shù)據(jù)寫(xiě)入閃存的當(dāng)前記錄頁(yè)中。優(yōu)選地,數(shù)據(jù)寫(xiě)入閃存吋,按閃存文件系統(tǒng)劃分的頁(yè)編號(hào)順序?qū)懭?。?yōu)選地,在臨時(shí)頁(yè)中維持有閃存的頁(yè)索引,根據(jù)所述頁(yè)索引確定所述閃存的當(dāng)前記錄頁(yè)。優(yōu)選地,所述NVRAM與閃存FLASH集成在同一存儲(chǔ)系統(tǒng)中。(三)有益效果本發(fā)明的方案中,充分利用了 NVRAM的寫(xiě)入時(shí)間快的優(yōu)勢(shì),使用NVRAM臨時(shí)頁(yè)作為數(shù)據(jù)寫(xiě)入的緩沖和冗余,在下次上電時(shí)根據(jù)臨時(shí)頁(yè)內(nèi)容把數(shù)據(jù)恢復(fù),避免閃存中存在不完整的“臟”數(shù)據(jù)。此外,由于對(duì)閃存的寫(xiě)入是在數(shù)據(jù)寫(xiě)滿(mǎn)1頁(yè)后才開(kāi)始向閃存記錄頁(yè)中進(jìn)行整頁(yè)寫(xiě)入,降低了對(duì)閃存的寫(xiě)入刷新頻度,保證了閃存的使用壽命。


      圖1為本發(fā)明的實(shí)施例中提高閃存壽命的可靠性存儲(chǔ)方法流程圖。
      具體實(shí)施例方式下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例是本發(fā)明的一部分實(shí)施例,而不是全部的實(shí)施例。基于本發(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒(méi)有做出創(chuàng)造性勞動(dòng)的前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。在本發(fā)明中,通過(guò)在閃存中引入一個(gè)靜態(tài)非易失性RAM (Random Access Memory, 隨機(jī)存取存儲(chǔ)器),即NVRAM (Non-Volatile Random Access Memory),來(lái)輔助閃存進(jìn)行數(shù)據(jù)記錄和恢復(fù)。由于NVRAM掉電后數(shù)據(jù)不會(huì)丟失,且掉電后數(shù)據(jù)存儲(chǔ)時(shí)間超長(zhǎng),可有效保證數(shù)據(jù)的完整性;另一方面,NVRAM寫(xiě)入速度快,如字節(jié)寫(xiě)入時(shí)間通常小于70ns,同樣是寫(xiě)入1頁(yè)數(shù)據(jù),NVRAM 一般僅需要不到17us,幾乎比普通閃存快1000倍。本發(fā)明中,首先將NVRAM的存儲(chǔ)空間分割出一部分,建立4個(gè)臨時(shí)頁(yè)并將臨時(shí)頁(yè)編號(hào)(比如編號(hào)為0、1、2、3),每個(gè)臨時(shí)頁(yè)的字節(jié)數(shù)與閃存文件系統(tǒng)劃分的每頁(yè)字節(jié)數(shù)相同, 比如,常見(jiàn)閃存文件系統(tǒng)ー頁(yè)256字節(jié),則NVRAM中建立臨時(shí)頁(yè)每頁(yè)字節(jié)數(shù)也為256字節(jié)。在閃存讀寫(xiě)過(guò)程中,毎次有數(shù)據(jù)需要記錄吋,首先將數(shù)據(jù)按臨時(shí)頁(yè)的編號(hào)順序順次寫(xiě)入NVRAM的各臨時(shí)頁(yè),如在上文的順次示例中,按臨時(shí)頁(yè)0、1、2、3的順序分別寫(xiě)入要同一個(gè)記錄的數(shù)據(jù)。在正常情況下,每個(gè)臨時(shí)頁(yè)相同偏移地址對(duì)應(yīng)的內(nèi)容是完全一祥的。當(dāng)臨時(shí)頁(yè)數(shù)據(jù)寫(xiě)滿(mǎn)ー頁(yè)后,再將這ー頁(yè)數(shù)據(jù)寫(xiě)入閃存;數(shù)據(jù)寫(xiě)入閃存吋,按閃存文件系統(tǒng)劃分的頁(yè)編號(hào)順序?qū)懭?即臨時(shí)頁(yè)第一次寫(xiě)滿(mǎn)時(shí)數(shù)據(jù)寫(xiě)入閃存第0頁(yè)、臨時(shí)頁(yè)第二次寫(xiě)滿(mǎn)時(shí)數(shù)
      據(jù)寫(xiě)入閃存第1頁(yè)......在閃存全部頁(yè)均寫(xiě)過(guò)后,再重新從閃存第0頁(yè)開(kāi)始寫(xiě)入)。為保
      證對(duì)閃存的正確寫(xiě)入,在臨時(shí)頁(yè)中維持有閃存的頁(yè)索引。最后,圖1展示了本發(fā)明中利用NVRAM提高閃存壽命的可靠性存儲(chǔ)方法,其方法包括步驟Si,每次上電后,進(jìn)行NVRAM臨時(shí)頁(yè)的檢查,判斷4個(gè)臨時(shí)頁(yè)的內(nèi)容是否有至少兩頁(yè)相同,若沒(méi)有,則認(rèn)為數(shù)據(jù)無(wú)法恢復(fù),將臨時(shí)頁(yè)擦除,執(zhí)行步驟S4 ;若有則執(zhí)行步驟S2 ;S2,判斷4個(gè)臨時(shí)頁(yè)中內(nèi)容是兩兩相同還是多數(shù)頁(yè)相同,若是兩兩相同,則使用第一臨時(shí)頁(yè)中內(nèi)容將序號(hào)靠后的頁(yè)中內(nèi)容恢復(fù)后,執(zhí)行步驟S3;若是多數(shù)頁(yè)相同,則使用多數(shù)頁(yè)中內(nèi)容將少數(shù)頁(yè)中內(nèi)容恢復(fù)后,執(zhí)行步驟S3 ;S3,根據(jù)臨時(shí)頁(yè)中的閃存頁(yè)索弓丨,使用臨時(shí)頁(yè)中內(nèi)容將閃存當(dāng)前記錄頁(yè)內(nèi)容恢復(fù);S4,正常進(jìn)行閃存數(shù)據(jù)讀寫(xiě)。本發(fā)明中,采用“時(shí)間優(yōu)先+多數(shù)表決”的原則,可以推斷出數(shù)據(jù)是否最新且完整, 并根據(jù)判斷結(jié)果進(jìn)行相應(yīng)的數(shù)據(jù)恢復(fù)。具體地,由于閃存數(shù)據(jù)正常寫(xiě)入?yún)迹紫仁前凑张R時(shí)頁(yè)的編號(hào)順序在臨時(shí)頁(yè)中記錄數(shù)據(jù),若在數(shù)據(jù)記錄過(guò)程中系統(tǒng)發(fā)生掉電,掉電時(shí)數(shù)據(jù)必然處于這4個(gè)臨時(shí)頁(yè)之間。而按照上面的閃存數(shù)據(jù)正常寫(xiě)入的流程,這4個(gè)臨時(shí)頁(yè)中數(shù)據(jù)是按編號(hào)順序“順次寫(xiě)入”的,這樣,序號(hào)靠前的臨時(shí)頁(yè)(如頁(yè)0)的權(quán)重最高,其內(nèi)容為新數(shù)據(jù)的概率最大。因此,若上電時(shí)發(fā)現(xiàn)頁(yè)1與頁(yè)0內(nèi)容相同,則可以判斷出頁(yè)0中存儲(chǔ)的是最新且完整的內(nèi)容,此時(shí)根據(jù)頁(yè)0的內(nèi)容對(duì)數(shù)據(jù)進(jìn)行恢復(fù)能最大限度的保證數(shù)據(jù)的及時(shí)性和完整性;而若頁(yè)1、2、3相同、并與頁(yè)0不同,也可以判斷出頁(yè)0中存儲(chǔ)的是最新數(shù)據(jù),但此時(shí)頁(yè)0中數(shù)據(jù)并不一定完整,可能會(huì)存在錯(cuò)誤數(shù)據(jù),此時(shí)根據(jù)多數(shù)頁(yè)的內(nèi)容對(duì)頁(yè)0內(nèi)容進(jìn)行恢復(fù)至少可以保證數(shù)據(jù)的正確性;若前3頁(yè)內(nèi)容相同而最后ー頁(yè)內(nèi)容不同,則與第一種情況相類(lèi)似,用靠前的頁(yè)內(nèi)容進(jìn)行數(shù)據(jù)恢復(fù)即可;若4個(gè)臨時(shí)頁(yè)內(nèi)容完全相同,則可知上次掉電時(shí)并沒(méi)有記錄新數(shù)據(jù)。最后ー種情況,若沒(méi)有兩頁(yè)內(nèi)容是相同的,則可以認(rèn)為NVRAM臨時(shí)頁(yè)未被使用或發(fā)生了數(shù)據(jù)錯(cuò)誤,此時(shí)數(shù)據(jù)無(wú)法恢復(fù),則強(qiáng)制擦除NVRAM臨時(shí)頁(yè)內(nèi)容。對(duì)NVRAM 臨時(shí)頁(yè)的數(shù)據(jù)進(jìn)行恢復(fù)完成后,再根據(jù)索引表將對(duì)應(yīng)的閃存記錄頁(yè)的內(nèi)容進(jìn)行與臨時(shí)頁(yè)相同的恢復(fù)。通過(guò)上述方式,由于NVRAM的寫(xiě)入時(shí)間非??欤诙虝r(shí)間內(nèi)受到干擾或掉電的概率降低,能夠有效地保證數(shù)據(jù)的正確性和完整性;而即使是發(fā)生掉電現(xiàn)象,由于有臨時(shí)頁(yè)作為緩沖、冗余,在下次上電時(shí)也可以根據(jù)臨時(shí)頁(yè)內(nèi)容把數(shù)據(jù)恢復(fù),避免閃存中存在不完整的 “臟”數(shù)據(jù)。此外,由于對(duì)閃存的寫(xiě)入是在數(shù)據(jù)寫(xiě)滿(mǎn)1頁(yè)后才開(kāi)始向閃存記錄頁(yè)中進(jìn)行整頁(yè)寫(xiě)入,降低了對(duì)閃存的寫(xiě)入刷新頻度,保證了閃存的使用壽命。以上實(shí)施方式僅用于說(shuō)明本發(fā)明,而并非對(duì)本發(fā)明的限制,有關(guān)技術(shù)領(lǐng)域的普通技術(shù)人員,在不脫離本發(fā)明的精神和范圍的情況下,還可以做出各種變化和變型,因此所有等同的技術(shù)方案也屬于本發(fā)明的范疇,本發(fā)明的專(zhuān)利保護(hù)范圍應(yīng)由權(quán)利要求限定。
      權(quán)利要求
      1.ー種提高閃存壽命的可靠性存儲(chǔ)方法,其特征在干,所述方法包括步驟Si,毎次上電后,進(jìn)行NVRAM臨時(shí)頁(yè)的檢查,判斷4個(gè)臨時(shí)頁(yè)的內(nèi)容是否有至少兩頁(yè)相同,若沒(méi)有,則認(rèn)為數(shù)據(jù)無(wú)法恢復(fù),將臨時(shí)頁(yè)擦除,執(zhí)行步驟S4 ;若有則執(zhí)行步驟S2 ;S2,判斷4個(gè)臨時(shí)頁(yè)中內(nèi)容是兩兩相同還是多數(shù)頁(yè)相同,若是兩兩相同,則使用第一臨時(shí)頁(yè)中內(nèi)容將序號(hào)靠后的頁(yè)中內(nèi)容恢復(fù)后,執(zhí)行步驟S3;若是多數(shù)頁(yè)相同,則使用多數(shù)頁(yè)中內(nèi)容將少數(shù)頁(yè)中內(nèi)容恢復(fù)后,執(zhí)行步驟S3 ;S3,使用臨時(shí)頁(yè)中內(nèi)容將閃存當(dāng)前記錄頁(yè)內(nèi)容恢復(fù);S4,正常進(jìn)行閃存數(shù)據(jù)讀寫(xiě)。
      2.根據(jù)權(quán)利要求1所述的方法,其特征在干,每個(gè)臨時(shí)頁(yè)的字節(jié)數(shù)與閃存文件系統(tǒng)劃分的每頁(yè)字節(jié)數(shù)相同。
      3.根據(jù)權(quán)利要求1所述的方法,其特征在干,步驟S4中,在閃存讀寫(xiě)過(guò)程中,毎次有數(shù)據(jù)需要記錄吋,首先將數(shù)據(jù)按臨時(shí)頁(yè)的編號(hào)順序順次寫(xiě)入NVRAM的各臨時(shí)頁(yè)中。
      4.根據(jù)權(quán)利要求3所述的方法,其特征在干,當(dāng)臨時(shí)頁(yè)數(shù)據(jù)寫(xiě)滿(mǎn)ー頁(yè)后,再將這ー頁(yè)數(shù)據(jù)寫(xiě)入閃存的當(dāng)前記錄頁(yè)中。
      5.根據(jù)權(quán)利要求4所述的方法,其特征在干,數(shù)據(jù)寫(xiě)入閃存吋,按閃存文件系統(tǒng)劃分的頁(yè)編號(hào)順序?qū)懭搿?br> 6.根據(jù)權(quán)利要求1所述的方法,其特征在干,在臨時(shí)頁(yè)中維持有閃存的頁(yè)索引,根據(jù)所述頁(yè)索引確定所述閃存的當(dāng)前記錄頁(yè)。
      7.根據(jù)權(quán)利要求1所述的方法,其特征在干,所述NVRAM與閃存FLASH集成在同一存儲(chǔ)系統(tǒng)中。
      全文摘要
      本發(fā)明涉及閃存技術(shù)領(lǐng)域,特別涉及一種提高閃存壽命的可靠性存儲(chǔ)方法。該方法包括步驟S1,每次上電后,進(jìn)行NVRAM臨時(shí)頁(yè)的檢查,判斷4個(gè)臨時(shí)頁(yè)是否有至少兩頁(yè)內(nèi)容相同,若沒(méi)有,則將臨時(shí)頁(yè)擦除執(zhí)行步驟S4;若有則執(zhí)行步驟S2;S2,判斷4個(gè)臨時(shí)頁(yè)是否兩兩相同,若是則使用第一臨時(shí)頁(yè)將序號(hào)靠后的臨時(shí)頁(yè)恢復(fù)后,執(zhí)行步驟S3;否則使用多數(shù)頁(yè)將少數(shù)頁(yè)恢復(fù)后,執(zhí)行步驟S3;S3,使用臨時(shí)頁(yè)中內(nèi)容將閃存當(dāng)前記錄頁(yè)內(nèi)容恢復(fù);S4,正常進(jìn)行閃存數(shù)據(jù)讀寫(xiě)。本發(fā)明中,充分利用了NVRAM的寫(xiě)入時(shí)間快的優(yōu)勢(shì),使用NVRAM臨時(shí)頁(yè)作為數(shù)據(jù)寫(xiě)入的緩沖和冗余,保證了閃存數(shù)據(jù)完整性并提高了閃存壽命。
      文檔編號(hào)G06F12/02GK102567216SQ201110452498
      公開(kāi)日2012年7月11日 申請(qǐng)日期2011年12月29日 優(yōu)先權(quán)日2011年12月29日
      發(fā)明者姜宏飛, 李超, 樓宇偉 申請(qǐng)人:北京交控科技有限公司
      網(wǎng)友詢(xún)問(wèn)留言 已有0條留言
      • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
      1