flashrom
快速擦寫只讀編程器。也就是我們常說的“閃存”,所謂“閃存”,它也是一種非易失性的內(nèi)存,屬于EEPROM的改進產(chǎn)品。
FlashROM它的最大特點是必須按塊(Block)擦除(每個區(qū)塊的大小不定,不同廠家的產(chǎn)品有不同的規(guī)格), 而EEPROM則可以一次只擦除一個字節(jié)(Byte)。目前“閃存”被廣泛用在PC機的主板上,用來保存BIOS程序,便于進行程序的升級。其另外一大應(yīng)用領(lǐng)域是用來作為硬盤的替代品,具有抗震、速度快、無噪聲、耗電低的優(yōu)點,但是將其用來取代RAM就顯得不合適,因為RAM需要能夠按字節(jié)改寫,而Flash ROM不需要。
一、閃存簡介
Flash-ROM(閃存)已經(jīng)成為了目前最成功、流行的一種固態(tài)內(nèi)存,與 EEPROM 相比具有讀寫速度快,而與 SRAM 相比具有非易失、以及價廉等優(yōu)勢。而基于 NOR 和 NAND 結(jié)構(gòu)的閃存是現(xiàn)在市場上兩種主要的非易失閃存技術(shù)。 Intel 于 1988 年首先開發(fā)出 NOR flash 技術(shù),徹底改變了原先由 EPROM 和 EEPROM 一統(tǒng)天下的局面。緊接著,1989 年東芝公司發(fā)表了 NAND flash 技術(shù)(后將該技術(shù)無償轉(zhuǎn)讓給韓國 Samsung 公司),強調(diào)降低每比特的成本,更高的性能,并且象磁盤一樣可以通過接口輕松升級。
但是經(jīng)過了十多年之后,仍然有相當多的工程師分不清 NOR 和 NAND 閃存,也搞不清楚 NAND 閃存技術(shù)相對于 NOR 技術(shù)的優(yōu)越之處,因為大多數(shù)情況下閃存只是用來存儲少量的代碼,這時 NOR 閃存更適合一些。而 NAND 則是高資料存儲密度的理想解決方案。
NOR 的特點是芯片內(nèi)執(zhí)行(XIP,eXecute In Place),這樣應(yīng)用程序可以直接在閃存內(nèi)運行,不必再把代碼讀到系統(tǒng) RAM 中。NOR 的傳輸效率很高,在 1~4MB 的小容量時具有很高的成本效益,但是很低的寫入和擦除速度大大影響了它的性能。
NAND 結(jié)構(gòu)能提供極高的單元密度,可以達到高存儲密度,并且寫入和擦除的速度也很快,這也是為何所有的 U 盤都使用 NAND 閃存做為存儲介質(zhì)的原因。應(yīng)用 NAND 的困難在于閃存和需要特殊的系統(tǒng)接口。
二、性能比較
閃存是非易失內(nèi)存,可以對稱為塊的內(nèi)存單元塊進行擦寫和再編程。任何閃存器件的寫入操作只能在空或已擦除的單元內(nèi)進行,所以大多數(shù)情況下,在進行寫入操作之前必須先執(zhí)行擦除。NAND 器件執(zhí)行擦除操作是十分簡單的,而 NOR 則要求在進行擦除前先要將目標塊內(nèi)所有的位都寫為 0。
由于擦除 NOR 器件時是以 64~128KB 的塊進行的,執(zhí)行一個寫入/擦除操作的時間為5s,與此相反,擦除 NAND 器件是以 8~32KB 的塊進行的,執(zhí)行相同的操作最多只需要 4ms。
執(zhí)行擦除時塊尺寸的不同進一步拉大了 NOR 和 NAND 之間的性能差距,統(tǒng)計表明,對于給定的一套寫入操作(尤其是更新小文件時),更多的擦除操作必須在基于 NOR 的單元中進行。這樣,當選擇存儲解決方案時,設(shè)計師必須權(quán)衡以下的各項因素。
1) NOR的讀速度比NAND稍快一些。
2) NAND的寫入速度比NOR快很多。
3) NAND的4ms擦除速度遠比NOR的5s快。大多數(shù)寫入操作需要先進行擦除操作。
4) NAND的擦除單元更小,相應(yīng)的擦除電路更少。
三、接口差別
NOR 閃存帶有SRAM接口,有足夠的地址引腳來尋址,可以很容易地存取其內(nèi)部的每一個字節(jié)。
NAND閃存使用復(fù)雜的I/O口來串行地存取資料,各個產(chǎn)品或廠商的方法可能各不相同。8個引腳用來傳送控制、地址和資料信息。
NAND讀和寫操作采用512字節(jié)的塊,這一點有點像硬盤管理此類操作,很自然地,基于NAND的閃存就可以取代硬盤或其它塊設(shè)備。
EEPROM
EEPROM (Electrically Erasable Programmable read only memory),電可擦可編程只讀存儲器--一種掉電后數(shù)據(jù)不丟失的存儲芯片。 EEPROM 可以在電腦上或?qū)S迷O(shè)備上擦除已有信息,重新編程。一般用在即插即用。
EEPROM(帶電可擦寫可編程讀寫存儲器)是用戶可更改的只讀存儲器(ROM),其可通過高于普通電壓的作用來擦除和重編程(重寫)。不像EPROM芯片,EEPROM不需從計算機中取出即可修改。在一個EEPROM中,當計算機在使用的時候可頻繁地反復(fù)編程,因此EEPROM的壽命是一個很重要的設(shè)計考慮參數(shù)。EEPROM是一種特殊形式的閃存,其應(yīng)用通常是個人電腦中的電壓來擦寫和重編程。
EEPROM
EEPROM,一般用于即插即用(Plug & Play)。
常用在接口卡中,用來存放硬件設(shè)置數(shù)據(jù)。
也常用在防止軟件非法拷貝的“硬件鎖”上面。
基本原理
由于EPROM操作的不便,后來出的主板上BIOS ROM芯片大部分都采用EEPROM(Electrically Erasable Programmable ROM,電可擦除可編程ROM)。EEPROM的擦除不需要借助于其它設(shè)備,它是以電子信號來修改其內(nèi)容的,而且是以Byte為最小修改單位,不必將資料全部洗掉才能寫入,徹底擺脫了EPROM Eraser和編程器的束縛。
EEPROM在寫入數(shù)據(jù)時,仍要利用一定的編程電壓,此時,只需用廠商提供的專用刷新程序就可以輕而易舉地改寫內(nèi)容,所以,它屬于雙電壓芯片。借助于EEPROM芯片的雙電壓特性,可以使BIOS具有良好的防毒功能,在升級時,把跳線開關(guān)打至“on”的位置,即給芯片加上相應(yīng)的編程電壓,就可以方便地升級;平時使用時,則把跳線開關(guān)打至“off”的位置,防止CIH類的病毒對BIOS芯片的非法修改。所以,至今仍有不少主板采用EEPROM作為BIOS芯片并作為自己主板的一大特色。
EEPROM與Flash區(qū)別
EEPROM,EPROM,F(xiàn)LASH 都是基于一種浮柵管單元(Floating gate transister)的結(jié)構(gòu)。 EPROM 的浮柵處于絕緣的二氧化硅層中,充入的電子只能用紫外線的能量來激出,EEPROM 的 單元是由FLOTOX(Floating- gate tuneling oxide transister)及一個附加的Transister 組成,由于FLOTOX 的特性及兩管結(jié)構(gòu),所以可以單元讀/寫。技術(shù)上,F(xiàn)LASH 是結(jié)合EPROM 和EEPROM 技術(shù)達到的,很多FLASH 使用雪崩熱電子注入方式來編程,擦除和EEPROM 一樣用 Fowler-Nordheim tuneling。但主要的不同是,F(xiàn)LASH 對芯片提供大塊或整塊的擦除,這就 降低了設(shè)計的復(fù)雜性,它可以不要 EEPROM 單元里那個多余的Tansister,所以可以做到高集 成度,大容量,另FLASH 的浮柵工藝上也不同,寫入速度更快。
其實對于用戶來說,EEPROM 和FLASH 的最主要的區(qū)別就是
1。EEPROM 可以按“位”擦寫,而FLASH 只能一大片一大片的擦。
2。EEPROM 一般容量都不大,如果大的話,EEPROM 相對與FLASH 就沒有價格上的優(yōu)勢了。 市面上賣的stand alone 的EERPOM 一般都是在64KBIT 以下,而FLASH 一般都是8MEG BIT 以上(NOR 型)。
3。讀的速度的話,應(yīng)該不是兩者的差別,只是(碩士論文)EERPOM 一般用于低端產(chǎn)品,讀的速度不 需要那么快,真要做的話,其實也是可以做的和FLASH 差不多。
4。因為EEPROM 的存儲單元是兩個管子而FLASH 是一個(SST 的除外,類似于兩管), 所以CYCLING 的話,EEPROM 比FLASH 要好一些,到1000K 次也沒有問題的。
總的來說,對與用戶來說,EEPROM 和FLASH 沒有大的區(qū)別,只是EEPROM 是低端產(chǎn)品, 容量低,價格便宜,但是穩(wěn)定性較FLASH 要好一些。 但對于EEPROM 和FLASH 的設(shè)計來說,F(xiàn)LASH 則要難的多,不論是從工藝上的還是從外圍 電路設(shè)計上來說。
Flash memory 指的是“閃存”,所謂“閃存”,它也是一種非易失性的內(nèi)存,屬于EEPROM 的改進產(chǎn)品。它的最大特點是必須按塊(Block)擦除(每個區(qū)塊的大小不定,不同廠家的產(chǎn)品 有不同的規(guī)格), 而EEPROM 則可以一次只擦除一個字節(jié)(Byte)。目前“閃存”被廣泛用在 PC 機的主板上,用來保存BIOS 程序,便于進行程序的升級。其另外一大應(yīng)用領(lǐng)域是用來作 為硬盤的替代品,具有抗震、速度快、無噪聲、耗電低的優(yōu)點,但是將其用來取代RAM 就顯 得不合適,因為RAM 需要能夠按字節(jié)改寫,而Flash ROM 做不到。
ROM 和RAM 指的都是半導(dǎo)體存儲器,ROM 是Read Only Memory 的縮寫,RAM 是Random Access Memory 的縮寫。ROM 在系統(tǒng)停止供電的時候仍然可以保持數(shù)據(jù),而RAM 通常都是在掉電之后 就丟失數(shù)據(jù),典型的RAM 就是計算機的內(nèi)存。
RAM 有兩大類,一種稱為靜態(tài)RAM(Static RAM/SRAM),SRAM 速度非???,是目前讀寫最 快的存儲設(shè)備了,但是它也非常昂貴,所以只在要求很苛刻的地方使用,譬如CPU 的一級緩 沖,二級緩沖。另一種稱為動態(tài)RAM(Dynamic RAM/DRAM),DRAM 保留數(shù)據(jù)的時間很短,速度 也比SRAM 慢,不過它還是比任何的ROM 都要快,但從價格上來說DRAM 相比SRAM 要便宜很多, 計算機內(nèi)存就是DRAM 的。
DRAM 分為很多種,常見的主要有FPRAM/FastPage、EDORAM、SDRAM、DDR RAM、RDRAM、 SGRAM 以及WRAM 等,這里介紹其中的一種DDR RAM。DDR RAM(Date-Rate RAM)也稱作DDR SDRAM, 這種改進型的RAM 和SDRAM 是基本一樣的,不同之處在于它可以在一個時鐘讀寫兩次數(shù)據(jù), 這樣就使得數(shù)據(jù)傳輸速度加倍了。這是目前電腦中用得最多的內(nèi)存,而且它有著成本優(yōu)勢, 事實上擊敗了Intel 的另外一種內(nèi)存標準-Rambus DRAM。在很多高端的顯卡上,也配備了高 速DDR RAM 來提高帶寬,這可以大幅度提高3D 加速卡的像素渲染能力。
ROM 也有很多種,PROM 是可編程的ROM,PROM 和EPROM(可擦除可編程ROM)兩者區(qū)別是, PROM 是一次性的,也就是軟件灌入后,就無法修改了,這種是早期的產(chǎn)品,現(xiàn)在已經(jīng)不可能 使用了,而EPROM 是通過紫外光的照射擦出原先的程序,是一種通用的存儲器。另外一種 EEPROM 是通過電子擦出,價格很高,寫入時間很長,寫入很慢。 舉個例子,手機軟件一般放在EEPROM 中,我們打電話,有些最后撥打的號碼,暫時是存 在SRAM 中的,不是馬上寫入通過記錄(通話記錄保存在EEPROM 中),因為當時有很重要工作(通 話)要做,如果寫入,漫長的等待是讓用戶忍無可忍的。
FLASH存儲器又稱閃存,它結(jié)合了ROM和RAM的長處,不僅具備電子可擦出可編程(EEPROM) 的性能,還不會斷電丟失數(shù)據(jù)同時可以快速讀取數(shù)據(jù) (NVRAM 的優(yōu)勢),U 盤和MP3 里用的就 是這種存儲器。在過去的20 年里,嵌入式系統(tǒng)一直使用ROM(EPROM)作為它們的存儲設(shè)備, 然而近年來 Flash 全面代替了ROM(EPROM)在嵌入式系統(tǒng)中的地位,用作存儲Bootloader 以 及操作系統(tǒng)或者程序代碼或者直接當硬盤使用(U 盤)。
目前Flash 主要有兩種NOR Flash 和NADN Flash。NOR Flash 的讀取和我們常見的SDRAM 的讀取是一樣,用戶可以直接運行裝載在NOR FLASH 里面的代碼,這樣可以減少SRAM 的容量 從而節(jié)約了成本。NAND Flash 沒有采取內(nèi)存的隨機讀取技術(shù),它的讀取是以一次讀取一快的 形式來進行的,通常是一次讀取512 個字節(jié)(我要論文),采用這種技術(shù)的Flash 比較廉價。用戶不能直 接運行NAND Flash 上的代碼,因此好多使用NAND Flash 的開發(fā)板除了使用NAND Flah 以外, 還作上了一塊小的NOR Flash 來運行啟動代碼。
一般小容量的用NOR Flash,因為其讀取速度快,多用來存儲操作系統(tǒng)等重要信息,而 大容量的用NAND FLASH,最常見的NAND FLASH 應(yīng)用是嵌入式系統(tǒng)采用的DOC(Disk On Chip) 和我們通常用的“閃盤”,可以在線擦除。目前市面上的FLASH 主要來自Intel,AMD,F(xiàn)ujitsu 和Toshiba,而生產(chǎn)NAND Flash 的主要廠家有Samsung 和Toshiba。
SRAM 是Static Random www.wylunwen.com Access Memory 的縮寫,中文含義為靜態(tài)隨機訪問存儲器,它是 一種類型的半導(dǎo)體存儲器?!办o態(tài)”是指只要不掉電,存儲在SRAM 中的數(shù)據(jù)就不會丟失。這一 點與動態(tài)RAM(DRAM)不同,DRAM 需要進行周期性的刷新操作。 然后,我們不應(yīng)將SRAM 與只 讀存儲器(ROM)和Flash Memory 相混淆,因為SRAM 是一種易失性存儲器,它只有在電源保持 連續(xù)供應(yīng)的情況下才能夠保持數(shù)據(jù)?!半S機訪問”是指存儲器的內(nèi)容可以以任何順序訪問,而 不管前一次訪問的是哪一個位置。
SRAM 中的每一位均存儲在四個晶體管當中,這四個晶體管組成了兩個交叉耦合反向器。 這個存儲單元具有兩個穩(wěn)定狀態(tài),通常表示為0 和1。另外還需要兩個訪問晶體管用于控制 讀或?qū)懖僮鬟^程中存儲單元的訪問。因此,一個存儲位通常需要六個MOSFET。對稱的電路結(jié) 構(gòu)使得SRAM 的訪問速度要快于DRAM。
SRAM 比DRAM 訪問速度快的另外一個原因是SRAM 可以 一次接收所有的地址位,而DRAM 則使用行地址和列地址復(fù)用的結(jié)構(gòu)。 SRAM 不應(yīng)該與SDRAM 相混淆,SDRAM 代表的是同步DRAM(Synchronous DRAM),這與SRAM 是完全不同的。SRAM 也不應(yīng)該與PSRAM 相混淆,PSRAM 是一種偽裝成SRAM 的DRAM。
從晶體管的類型分,SRAM 可以分為雙極性與CMOS 兩種。從功能上分,SRAM 可以分為異 步SRAM 和同步SRAM(SSRAM)。異步SRAM 的訪問獨立于時鐘,數(shù)據(jù)輸入和輸出都由地址的變 化控制。同步SRAM 的所有訪問都在時鐘的上升/下降沿啟動。地址、數(shù)據(jù)輸入和其它控制信 號均于時鐘信號相關(guān)。
評論
查看更多