大家好,我是痞子衡,是正經搞技術的痞子。今天痞子衡給大家講的是英飛凌MirrorBit工藝NOR Flash的扇區架構設計。 NOR Flash 大家都很熟悉,其內部按組織從小到大分為 Page(128B/256B/512B)、Sector(4KB)、Block(32KB/64KB/128KB/25 ...
大家好,我是痞子衡,是正經搞技術的痞子。今天痞子衡給大家講的是英飛凌MirrorBit工藝NOR Flash的扇區架構設計。
NOR Flash 大家都很熟悉,其內部按組織從小到大分為 Page(128B/256B/512B)、Sector(4KB)、Block(32KB/64KB/128KB/256KB)、Chip,其中 Page 是編程單元,Sector/Block/Chip 是擦除單元(一個 Block 由多個 Sector 組成,一顆 Chip 由多個 Block 組成)。關於擦除,Flash 提供了不同大小的單元粒度,也是為需要數據和參數存儲的應用程式提供更大的靈活性。
最近痞子衡在支持 RT1170 客戶過程中就在英飛凌 NOR Flash S25HL512T 擦除上遇到了一些問題,後來翻看 Flash 數據手冊,才發現它的擦除單元設計有特別之處,今天痞子衡就給大家介紹一下:
一、英飛凌NOR Flash系列
我們先來看一下目前英飛凌主流 NOR Flash 系列,從介面上看有 Parallel/QSPI/Octal/HyperBus 四種,從工藝上看有 45nm MB/65nm MB/65nm FG 三種:
其中屬於 65nm FG 工藝(也稱 ETOX)下的 QSPI Flash S25FL064L 算是我們比較耳熟能詳的型號,這和大家常用的 Winbond/GigaDevice/MXIC 家的 NOR Flash 差別不大(這三家的產品也是基於 FG 工藝,一個基本存儲單元 CELL 僅存儲一個比特位),無需特別註意。
其它 Flash 均是 45/65nm MB 工藝下的產物,MB 是 MirrorBit 的縮寫,這是 Spansion 公司主推的一種快閃記憶體技術,其與英特爾的 MLC 方案非常類似,它也是通過讓一個基本存儲單元 CELL 存儲兩個(或更多)比特位,實現容量增倍的目的。
MB 工藝和 FG 工藝各有優缺點,MB 工藝的優點是容量大、價格便宜、擦寫快,缺點則是可靠性較差,高溫下容易發生 bit 反轉導致數據錯誤(當然這也可以通過增加 ECC 特性來改善)。
二、MirrorBit下不一樣的扇區架構
我們就以英飛凌 S25HL512T 型號為例介紹其扇區架構設計,其餘 MirrorBit 工藝下的 Flash 扇區設計也類似。
S25HL512T 數據手冊開篇就直接點明瞭工藝特性以及扇區架構設計,這其實就是提醒用戶這裡要特別註意,扇區一共有三種不同的配置選項,用戶可根據項目實際情況按需配置(設置 Flash 相應配置寄存器)。
和扇區架構配置相關的 Flash 寄存器位分別是 CFR3[3]、CFR1[6]、CFR1[2]:
2.1 配置選項一:僅第一個Block能拆分出Sector
如果 CFR3[3]、CFR1[6]、CFR1[2] 均為 0,這也是 Flash 出廠的預設配置,這種情況下 Flash 第一個 Block(256KB) 里會包含 32個 4KB Sector,即 0x00000000 - 0x0001FFFF 區域可用 Sector Erase 命令(0x20/0x21)去擦除,其餘 Block 則無法拆分。
2.2 配置選項二:僅最後一個Block能拆分出Sector
如果僅將 CFR1[2] 設為 1,這種情況下 Flash 最後一個 Block(256KB) 里會包含 32個 4KB Sector,即 0x03FE0000 - 0x03FFFFFF 區域可用 Sector Erase 命令(0x20/0x21)去擦除,其餘 Block 則無法拆分。
2.3 配置選項三:第一個和最後一個Block能拆分出Sector
如果僅將 CFR1[6] 設為 1,這種情況下 Flash 第一個和最後一個 Block(256KB) 里均會包含 16個 4KB Sector,即 0x00000000 - 0x0001FFFF、0x03FF0000 - 0x03FFFFFF 區域可用 Sector Erase 命令(0x20/0x21)去擦除。
2.4 配置選項四:所有Block均無法拆分
如果將 CFR3[3] 設為 1,那麼 Flash 里所有 Block(256KB) 均無法拆分,此時擦除也只能用 Block Erase 命令(0xD8/0xDC)。
現在我們知道 MirrorBit 工藝下的 Flash 扇區架構相比 FG 工藝 Flash 在粒度劃分上要粗糙得多,靈活性降低了,這在做程式設計、下載演算法時均需要特別考慮。
至此,英飛凌MirrorBit工藝NOR Flash的扇區架構設計痞子衡便介紹完畢了,掌聲在哪裡~~~
歡迎訂閱
文章會同時發佈到我的 博客園主頁、CSDN主頁、知乎主頁、微信公眾號 平臺上。
微信搜索"痞子衡嵌入式"或者掃描下麵二維碼,就可以在手機上第一時間看了哦。
最後歡迎關註痞子衡個人微信公眾號【痞子衡嵌入式】,一個專註嵌入式技術的公眾號,跟著痞子衡一起玩轉嵌入式。
衡傑(痞子衡),目前就職於某全球頂級半導體原廠MCU系統部門,擔任高級嵌入式系統應用工程師。
專欄內所有文章的轉載請註明出處:http://www.cnblogs.com/henjay724/
與痞子衡進一步交流或咨詢業務合作請發郵件至 [email protected]
可以關註痞子衡的Github主頁 https://github.com/JayHeng,有很多好玩的嵌入式項目。
關於專欄文章有任何疑問請直接在博客下麵留言,痞子衡會及時回覆免費(劃重點)答疑。
痞子衡郵箱已被私信擠爆,技術問題不推薦私信,堅持私信請先掃碼付款(5元起步)再發。