NAND FLASH ECC

NAND需要ECC以確保數據完整性。NAND閃存的每一個頁面上都包括額外的存儲空間,它就是64個字節的空閑區(每512字節的扇區有16字節)。該區能存儲ECC代碼及其它像磨損評級或邏輯到物理塊映射之類的信息ECC能在硬件或軟件中執行,但是,硬件執行有明顯的性能優勢。在編程操作期間,ECC單元根據扇區中存儲的數據來計算誤碼校正代碼。數據區的ECC代碼然后被分別寫入到各自的空閑區。當數據被讀出時,ECC代碼也被讀出;運用反操作可以核查讀出的數據是否正確。

  有可能采用ECC算法來校正數據錯誤。能校正的錯誤的數量取決于所用算法的校正強度。在硬件或軟件中包含ECC,就提供了強大的系統級解決方案。最簡單的硬件實現方案是采用簡單的漢明(Simple Hamming)碼,但是,只能校正單一位錯誤。瑞德索羅門(Reed-Solomon)碼提供更為強大的糾錯,并被目前的控制器廣為采用。此外,BCH碼由于比瑞德索羅門方法的效率高,應用也日益普及。用軟件執行NAND閃存的區塊管理。該軟件負責磨損評級或邏輯到物理映射。該軟件還提供ECC碼,如果處理器不包含ECC硬件的話。?
????? 要用軟件執行NAND閃存的區塊管理。該軟件負責磨損評級或邏輯到物理映射。該軟件還提供ECC碼,如果處理器不包含ECC硬件的話。
  編程或擦除操作之后,重要的是讀狀態寄存器,因為它確認是否成功地完成了編程或擦除操作如果操作失敗,要把該區塊標記為損壞且不能再使用以前已編寫進去的數據要從損壞的區塊中搬出,轉移到新的(好的)存儲塊之。2Gb NAND的規范規定,它可以最多有40個壞的區塊,這個數字在器件的生命周期(額定壽命為10萬次編程/擦除周期)內都適用。一些有壞塊的NAND器件能夠出廠,主要就歸根于其裸片面積大。管理器件的軟件負責映射壞塊并由好的存儲塊取而代之

  利用工廠對這些區塊的標記,軟件通過掃描塊可以確定區塊的好壞壞塊標記被固定在空閑區的第一個位置(列地址2048)。如果在0或1頁的列地址2048上的數據是“non-FF”,那么,該塊要標記為壞,并映射出系統初始化軟件僅僅需要掃描所有區塊確定以確定哪個為壞,然后建一個壞塊表供將來參考

  小心不要擦除壞塊標記,這一點很重要。工廠在寬溫和寬電壓范圍內測試了NAND;一些由工廠標記為壞的區塊可能在一定的溫度或電壓條件下仍然能工作,但是,將來可能會失效。如果壞塊信息被擦除,就無法再恢復

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/253493.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/253493.shtml
英文地址,請注明出處:http://en.pswp.cn/news/253493.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

快速上手SpyGlass——CDC檢查

隨著技術的發展,數字電路的集成度越來越高,設計也越來越復雜。很少有系統會只工作在同一個時鐘頻率。一個系統中往往會存在多個時鐘,這些時鐘之間有可能是同步的,也有可能是異步的。如果一個系統中,異步時鐘之間存在信…

laravel session redis 設置

Laravel 在使用 Redis 作為 Session 驅動之前, 需要通過 Composer 安裝 predis/predis 擴展包 (~1.0)。 當然也可以用原生自帶的,具體使用見 https://laravel-china.org/docs/laravel/5.6/redis/1402#phpredis 操作即可。 然后在database 配置文件中配置…

數字后端——低功耗單元庫

在之前的文章中,介紹了低功耗設計物理實施的方案: 數字后端——低功耗設計物理實施_滄海一升的博客-CSDN博客_低功耗設計低功耗設計方案所涉及到的物理實施相關內容https://blog.csdn.net/qq_21842097/article/details/119918312 為了實現例如門…

【CUDA開發】CUDA面內存拷貝用法總結

【CUDA開發】CUDA面內存拷貝用法總結 標簽(空格分隔): 【CUDA開發】 主要是在調試CUDA硬解碼并用D3D9或者D3D11顯示的時候遇到了一些代碼,如下所示: CUdeviceptr g_pRgba 0; CUDA_MEMCPY2D memcpy2D { 0 }; memcp…

PerfMon常用計數器

摘要: 故事來源于《sql server2012 深入解析和性能分析》 1.重要的PerfMon CPU計數器 計數器查看內容發生問題的條件Processor%Processor TimeCPU為生產環境的請求提供服務消耗的時間占總CPU時間的百分比>80%Processor%Privilege Time  CPU為內核模式請求提供服務消耗的時…

NandFlash詳述

1. 硬件特性: 【Flash的硬件實現機制】 Flash全名叫做Flash Memory,屬于非易失性存儲設備(Non-volatile Memory Device),與此相對應的是易失性存儲設備(Volatile Memory Device)。這類設備,除了Flash,還有其他比較常見…

史上最全的MySQL高性能優化實戰總結!

1.1 前言 MySQL對于很多Linux從業者而言,是一個非常棘手的問題,多數情況都是因為對數據庫出現問題的情況和處理思路不清晰。在進行MySQL的優化之前必須要了解的就是MySQL的查詢過程,很多的查詢優化工作實際上就是遵循一些原則讓MySQL的優化器…

低功耗設計——基于UPF進行設計

UPF, 統一電源格式UPF(Unified Power Format)是新思(Synopsys)公司通用的電源格式,是一組標準的類Tcl 語言的集合,用來描述芯片設計中的低功耗意圖(Low-Power Design Intent)。 使用UPF 的語言,可以描述供電…

用公眾號獲取 任意公眾號文章列表 軟件還是免費

用公眾號獲取 任意公眾號文章列表 軟件還是免費還不快點下載 下載 地址 https://pan.baidu.com/s/1jI44Wjs轉載于:https://www.cnblogs.com/wx85437898/p/7488590.html

CentOS7時間設置問題

本地安裝一個VMWare player虛擬機客戶端,并安裝了Linux CentOS7 Basic Web Server系統,時區在安裝時已經選擇了Asia/Shanghai,但是安裝完成后,時間和當前外部的時間不一致,如下圖 圖一 圖二 圖三 后經搜索發現,由于未開…

關于Nand ECC 錯誤

Nand flash ECC數據錯誤怎么辦? 我編譯過kernel 當時選了ECC校驗 啟動以后報錯 去掉了,就不報錯了 所以我會先考慮是不是這個問題 一般來說,硬件ECC校驗出錯可能性比較小吧? 我啥也不懂 -----摘自網絡經典文章:“LINU…

低功耗設計——功耗估算

根據在功耗分析的過程中是否有輸入向量的提供,功耗估算方法可以分為仿真的方法(Simulative)和非仿真的方法(Non-simulative): 仿真的方法是根據用戶所提供的大量輸入向量來對電路進行模擬,利用…

uboot 與系統內核中 MTD分區的關系

分類: Nand 驅動 2011-11-06 23:48 705人閱讀 評論(2) 收藏 舉報 uboot 與系統內核中 MTD分區的關系: 分區只是內核的概念,就是說A~B地址放內核,C~D地址放文件系統,等等。 1:在內核…

Deep Learning(深度學習)學習筆記整理系列三

Deep Learning(深度學習)學習筆記整理系列 聲明: 1)該Deep Learning的學習系列是整理自網上很大牛和機器學習專家所無私奉獻的資料的。具體引用的資料請看參考文獻。具體的版本聲明也參考原文獻。 2)本文僅供學術交流&…

輾轉相除法 求最大公約數和最小公倍數

# include<stdio.h> int main() { int a,b,c,x,y; printf("請輸入兩個正整數&#xff0c;用逗號間隔&#xff1a;"); scanf("%d,%d",&a,&b); xa; yb; if (a<b) { ca; ab;      //要保證 a>b bc; } while (b!0) { ca; ab; bc%b; …

Conformal ECO 流程介紹

之前聽說過一句話&#xff0c;沒有修過ECO的人生是不完整的。最近就給我整得再次完整了。。。。。。 最近趕項目&#xff0c;RTL freeze之后&#xff0c;后仿發現出了bug&#xff08;還好攔下來了&#xff0c;不然頭更大&#xff09;&#xff0c;于是做了一次function ECO&…

最新天貓面試題(含總結):線程池+并發編程+分布式設計+中間件

最新天貓面試題&#xff08;含總結&#xff09;&#xff1a;線程池并發編程分布式設計中間件https://my.oschina.net/u/3892...

關于NAND flash的MTD分區與uboot中分區的理解 .

今天做內核移植&#xff0c;準備添加NAND flash的驅動&#xff0c;做到MTD分區時&#xff0c;想起在一本書上看到的一句話&#xff0c;說的是分區時每個區之間沒有間隙&#xff0c;前一個區的結束地址是后一個區的起始地址。可是當我看我的開發板的教程時&#xff0c;分區如下&…

Zabbix discoverer processes more than 75% busy

原文發表于cu&#xff1a;2016-06-22 Zabbix discoverer processes more than 75% busy原因及處理。 一&#xff0e;現象 配置了discovery任務后&#xff0c;zabbix dashboard 告警如下&#xff1a; Zabbix discoverer processes more than 75% busy 二&#xff0e;原因 1. 配置…

Begin()

好&#xff0c;要開始在新的博客里寫東西了&#xff0c;上一個博客的賬號和密碼都忘了... 我開通博客的申請里寫&#xff0c;我博文的內容會以機器學習和控制算法的學習筆記為主。 那我寫的估計是假的申請。 好吧&#xff0c;既然是這樣寫申請的一定程度上也是要兌現承諾的&…