CFI(Common Flash Interface)詳解

【什麼是CFI】
CFI(Common Flash Interface),是JEDEC(Joint Electron Device Engineering Council,電子器件工程聯合委員會)制定的一個接口,
用來幫助程序讀取Flash的製造商ID和設備ID,確定Flash的大小,獲得flash的各個物理特性,比如block塊的擦除時間等等。

【爲什麼需要這個CFI】
在應用CFI之前,Flash器件的有關信息都儲存在系統軟件的表格中。當有新的器件發佈時,一般必須修改軟件來添加該器件的描述信息。
CFI出現後,工程師們正在利用CFI來構建代碼,它不僅能夠運行在現在的Flash存儲器上,而且隨時準備着應用在下一代的低成本版本上。
這使得原始設備製造商能夠在低成本Flash存儲器設備可用時使用它而不必重寫代碼。

由於生產Flash Memory的半導體製造商衆多,不同廠商Flash Memory產品的操作命令集
和電氣參數又千差萬別,這些人在設計硬件的時候,已經在陣腳的兼容性等方面,
做了足夠多的文章,做得很好了,但是與此對應的軟件方面,由於硬件升級,軟件都要改動很大,
這給Flash Memory的開發設計人員和OEM製造商帶來許多不便。
爲了對現有的Flash Memory的產品進行升級或使用其它公司的Flash Memory產品替換,
必須對原有的程序代碼和硬件結構進行修改。
所以,由Intel、AMD、Sharp和Fujutsu出面,通過JEDEC(Joint Electron Device Engineering Council,電子器件工程聯合委員會)
制定了這個CFI。

【CFI的好處】
它可以使系統軟件查詢已安裝的Flash Memory器件的各種參數,
包括器件陣列結構參數、電氣和時間參數以及器件支持的功能等。
利用CFI可以不用修改系統軟件就可以用新型的和改進的產品代替舊版本的產品。
例如:如果新型的Flash Memory的擦除時間只有舊版本的一半,
系統軟件只要通過CFI讀取新器件的擦除時間等參數,修改一下定時器的時間參數即可。
簡單說就是:
1.使得軟件和硬件升級更加方便。
2.使得不同廠商之間的硬件兼容性更好,也就是如果都支持了CFI,很多時候,可以實現底層硬件的互換。
比如,軟件是基於CFI的,那麼底層硬件的flash,換了另一廠商的,,而上層軟件就不需要改動,也可以工作。

【CFI內容簡介】
CFI標準,其實也就是一系列的表格,包含了5個部分:
1.“CFI Query Identification String”,CFI查詢識別碼字符串
2.“System Interface String”,系統接口字符串
3. “Device Geometry Definition”,設備物理結構信息定義
4. “Primary Vendor-Specific Extended Query”,原始設備提供商相關的擴展查詢信息
5.“Alternate Vendor-Specific Extended Query”,可選/備用提供商相關的擴展查詢信息

【其他】
1.現在(截至2008年6月5號),CFI標準只支持並行(parallel) Nor flash,
還不支持SPI的Flash和Spansion的ORNAND flash。關於SPI的Flash,比如Spansion的FL系列的。

【引用】
1.Quick Guide to Common Flash Interface
http://www.spansion.com/application_notes/Quick_Guide_to_CFI_AN_02_e.pdf
2.CFI(通用Flash存儲器接口)
http://blog.verycd.com/light/showentry=47793
3.intel Common Flash Interface (CFI) and Command Sets
http://d.download.csdn.net/down/690990/alvazhao
4.關於NOR Flash的兩種接口
http://arm86.spaces.eaw.com.cn/articles/article/item/457

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章