Electronics 板


LINE

※ 引述《jfsu (水精靈)》之銘言: : ※ 引述《looter (隬莉)》之銘言: : : 非本科系但工作遇到相問題 : : 麻煩版上高手解惑 : : 請問NAND flash 的ECC是 因為NAND本身的特性,每個Cell有寫入次數的壽命, 又因為製程跟設計的緣故,每個Block的壽命不一定, 或是因為不正常斷電導致資料寫入不完全造成的毀損, 所以透過ECC這個演算法去驗證每個Block是不是正常。 : : 1. NAND Flash內建的一個演算功能? 寫入資料時比對? : 有內建,也有做在Controller上;Spec都會寫。 : 寫入與讀取都需要。 一般市面的產品分成Pure NAND跟其他產品 Pure NAND就是單純的NAND Flash,不含Controller, 需搭配Controller或是內建Controller的SOC使用, 非Pure NAND就是NAND Flash加上Controller,一般會被當作另外的產品 例如eMMC、SD卡,將NAND Flash跟Controller封裝在一起 或USB隨身碟、SSD固態硬碟,將NAND Flash跟Controller做成同一個產品 ECC的檢查是放在Controller上面 至於檢查的時機我只大概知道幾個, 例如第一次燒錄前的Bad Block Check之類的, 好像有些eMMC出廠的時候就會跑過一次,但這我有些不是很肯定 具體要看廠商的作法 : : 2. 控制器(CPU)上控制器(Memory controller) 對NAND的偵錯? : 承上,內建的話就在memory裡頭做,做在controller就由controller做。 : : 3. HW ECC跟SW ECC之間的差異? : : 先感謝了 : HW的ECC主要都是組合邏輯,比較佔晶片空間,也會影響效能 : SW的話...不知道...哈...目前都是做HW的。 : 可能得多給個空間放這些SW code。 HW或SW取決於各自的實現方式,也有可能是混和 例如將ECC演算法的運算用硬體實現,搭配MCU做控制,增加產品的彈性 這部分都是取決於Controller 內建Controller的產品, 以eMMC來說,他不需要讓客戶知道ECC如何做或是Controller的細節。 他只要讓客戶知道我的eMMC符合JEDEC的標準就足夠, 所以對使用者來說eMMC看起來像是純粹的硬體, 但實際上eMMC有分FW版本,所以裡面是有MCU控制的 eMMC內有分不同的Block作為不同的用途跟不同的可靠度,也是由MCU控制的 所以ECC是在memory還是Controller做?這個問題我就無法回答 也說不定是在Controller裡面的memory做XD Pure NAND的話,就取決於SOC的Controller或是獨立的Controller怎麼實作 獨立的Controller我沒用過,不過應該也是內建MCU去增加產品的彈性 依稀記得以前在網路上有挖到過某一家USB Disk flash controller的Source 內建SOC的controller就不一定, 有一些Vendor把這部分包成library,所以也看不到他實際怎麼運作 有些Vendor這部分是開放的, 至少我之前看過某一家的Code,spare area放的方式跟其他家硬是不一樣 (Spare area:每個Block當中,用來記載判斷Bad block資訊的地方) 但ECC應該都是透過硬體實現,畢竟ECC越長,演算法的運算量越大, 不大可能犧牲效能去幹這件事... 以上給你做個參考:) --



※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 114.34.187.83
※ 文章網址: http://webptt.com/m.aspx?n=bbs/Electronics/M.1402035627.A.0B7.html
1F:推 mmonkeyboyy:ecc看bit數的 06/06 21:02
2F:推 looter:看來ECC做法很多,感謝您解答,大推! 06/07 11:26
3F:推 weop388:ECC是錯誤更正碼,而根據不同的ECC,有許多對應的演算法 06/07 11:34
4F:→ weop388:還有bad block detection跟ECC檢查是兩件沒有關聯的事情唷 06/07 11:35
5F:推 haworz:ECC是具有更正錯誤的能力 detection只能偵測有無錯誤 06/07 22:27
6F:→ haworz:當錯誤的bit數在ECC的保護範圍內 這樣還能夠解出正確的Data 06/07 22:30
7F:→ mosquito520:我是從應用的角度以及先前跟FAE討論的印象回答 06/08 01:57
8F:→ mosquito520:所以若是有錯誤的地方也請盡量指證:D 06/08 01:58
9F:→ mosquito520:ECC有錯誤更正的能力 但詳細的行為我沒辦法很肯定 06/08 01:58
10F:→ mosquito520:例如檢查有錯,算回正確資料後是改用新的Block? 06/08 01:59
11F:→ mosquito520:還是持續沿用原來的Block直到整個Block爛掉? 06/08 01:59
12F:→ mosquito520:Badblock偵測我沒記錯的話是根據sparearea的資料判斷 06/08 02:00
13F:→ mosquito520:但ECC檢查如果資料有誤,不需要mark bad block嗎?? 06/08 02:01
14F:→ mosquito520:另外...我不確定ECC操作的單位是Page還是Block...XD 06/08 02:02
15F:→ mosquito520:在家躺了兩個多月,有些東西都還回去了XDDD 06/08 02:02
16F:→ mosquito520:還請各位先進多多指教:) 06/08 02:03
17F:推 Baneling:推 06/10 00:15







like.gif 您可能會有興趣的文章
icon.png[問題/行為] 貓晚上進房間會不會有憋尿問題
icon.pngRe: [閒聊] 選了錯誤的女孩成為魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一張
icon.png[心得] EMS高領長版毛衣.墨小樓MC1002
icon.png[分享] 丹龍隔熱紙GE55+33+22
icon.png[問題] 清洗洗衣機
icon.png[尋物] 窗台下的空間
icon.png[閒聊] 双極の女神1 木魔爵
icon.png[售車] 新竹 1997 march 1297cc 白色 四門
icon.png[討論] 能從照片感受到攝影者心情嗎
icon.png[狂賀] 賀賀賀賀 賀!島村卯月!總選舉NO.1
icon.png[難過] 羨慕白皮膚的女生
icon.png閱讀文章
icon.png[黑特]
icon.png[問題] SBK S1安裝於安全帽位置
icon.png[分享] 舊woo100絕版開箱!!
icon.pngRe: [無言] 關於小包衛生紙
icon.png[開箱] E5-2683V3 RX480Strix 快睿C1 簡單測試
icon.png[心得] 蒼の海賊龍 地獄 執行者16PT
icon.png[售車] 1999年Virage iO 1.8EXi
icon.png[心得] 挑戰33 LV10 獅子座pt solo
icon.png[閒聊] 手把手教你不被桶之新手主購教學
icon.png[分享] Civic Type R 量產版官方照無預警流出
icon.png[售車] Golf 4 2.0 銀色 自排
icon.png[出售] Graco提籃汽座(有底座)2000元誠可議
icon.png[問題] 請問補牙材質掉了還能再補嗎?(台中半年內
icon.png[問題] 44th 單曲 生寫竟然都給重複的啊啊!
icon.png[心得] 華南紅卡/icash 核卡
icon.png[問題] 拔牙矯正這樣正常嗎
icon.png[贈送] 老莫高業 初業 102年版
icon.png[情報] 三大行動支付 本季掀戰火
icon.png[寶寶] 博客來Amos水蠟筆5/1特價五折
icon.pngRe: [心得] 新鮮人一些面試分享
icon.png[心得] 蒼の海賊龍 地獄 麒麟25PT
icon.pngRe: [閒聊] (君の名は。雷慎入) 君名二創漫畫翻譯
icon.pngRe: [閒聊] OGN中場影片:失蹤人口局 (英文字幕)
icon.png[問題] 台灣大哥大4G訊號差
icon.png[出售] [全國]全新千尋侘草LED燈, 水草

請輸入看板名稱,例如:WOW 或 站內搜尋

TOP