各種儲存器的區別

2021-09-24 15:37:50 字數 6275 閱讀 9091

ram / rom 儲存器

rom和ram指的都是半導體儲存器,rom是read only memory的縮寫,ram是random access memory的縮寫。rom在系統停止供電的時候仍然可以保持資料,而ram通常都是在掉電之後就丟失資料,典型的ram就是計算機的記憶體。

ram 有兩大類:

1) 靜態ram(static ram / sram),sram速度非常快,是目前讀寫最快的儲存裝置了,但是它也非常昂貴,所以只在要求很苛刻的地方使用,譬如cpu的一級緩衝,二級緩衝。

2) 動態ram(dynamic ram / dram),dram保留資料的時間很短,速度也比sram慢,不過它還是比任何的rom都要快,但從**上來說dram相比sram要便宜很多,計算機記憶體就是dram的。

dram分為很多種,常見的主要有fpram / fastpage、edoram、sdram、ddr ram、rdram、sgram以及wram等,這裡介紹其中的一種ddr ram。

ddr ram(double-date-rate ram)也稱作ddr sdram,這種改進型的ram和sdram是基本一樣的,不同之處在於它可以在乙個時鐘讀寫兩次資料,這樣就使得資料傳輸速度加倍了。

這是目前電腦中用得最多的記憶體,而且它有著成本優勢,事實上擊敗了intel的另外一種記憶體標準~rambus dram。

在很多高階的顯示卡上,也配備了高速ddr ram來提高頻寬,這可以大幅度提高3d加速卡的畫素渲染能力。

rom也有很多種:

1) prom(可程式設計rom),是一次性的,也就是軟體灌入後,就無法修改了,這種是早期的產品,現在已經不可能使用了;

2) eprom (可擦除可程式設計rom),是通過紫外光的照射擦出原先的程式,是一種通用的儲存器。

3) eeprom,是通過電子擦除,**很高,寫入時間很長,寫入很慢。

舉個例子,手機軟體一般放在eeprom中,我們打**,有些最後撥打的號碼,暫時是存在sram中的,不是馬上寫入聯絡歷史(聯絡歷史儲存在eeprom中),因為當時有很重要工作(通話)要做,如果寫入,漫長的等待是讓使用者忍無可忍的。

記憶體工作原理

記憶體是用來存放當前正在使用的(即執行中)的資料和程式,我們平常所提到的計算機的記憶體指的是動態記憶體(即dram)。

動態記憶體中所謂的「動態」,指的是當我們將資料寫入dram後,經過一段時間,資料會丟失,因此需要乙個額外設電路進行記憶體重新整理操作。

具體的工作過程是這樣的:

乙個dram的儲存單元儲存的是0還是1取決於電容是否有電荷,有電荷代表1,無電荷代表0。

但時間一長,代表1的電容會放電,代表0的電容會吸收電荷,這就是資料丟失的原因。

重新整理操作定期對電容進行檢查,若電量大於滿電量的1/2,則認為其代表1,並把電容充滿電;若電量小於 1/2,則認為其代表0,並把電容放電,藉此來保持資料的連續性。

flash儲存器

flash 儲存器又稱快閃儲存器,它結合了rom和ram的長處,不僅具備電子可擦除可程式設計(eeprom)的效能,還不會斷電丟失資料同時可以快速讀取資料(nvram 的優勢),u盤和***裡用的就是這種儲存器。

在過去的20年裡,嵌入式系統一直使用rom (eprom)作為它們的儲存裝置,然而近年來flash全面代替了rom (eprom)在嵌入式系統中的地位,用作儲存bootloader以及作業系統或者程式**或者直接當硬碟使用(u盤)。

目前flash主要有兩種nor flash和nand flash。

nor flash的讀取和我們常見的sdram的讀取是一樣,使用者可以直接執行裝載在nor flash裡面的**,這樣可以減少sram的容量從而節約了成本。

nand flash沒有採取記憶體的隨機讀取技術,它的讀取是以一次讀取一塊的形式來進行的,通常是一次讀取512個位元組,採用這種技術的flash比較廉價。

使用者不能直接執行nand flash上的**,因此好多使用nand flash的開發板除了使用nand flash以外,還用一塊小的nor flash來執行啟動**。

一般小容量的用nor flash,因為其讀取速度快,多用來儲存作業系統等重要資訊。

而大容量的用nand flash,最常見的nand flash應用是嵌入式系統採用的doc(disk on chip)和我們通常用的"閃盤",可以**擦除。

目前市面上的flash 主要來自intel,amd,fujitsu和toshiba,而生產nand flash的主要廠家有samsung和toshiba。

nor 和nand是現在市場上兩種主要的非易失快閃儲存器技術。

intel於2023年首先開發出nor flash技術,徹底改變了原先由eprom和eeprom一統天下的局面。

緊接著,2023年,東芝公司發表了nand flash結構,強調降低每位元的成本,更高的效能,並且象磁碟一樣可以通過介面輕鬆公升級。

但是經過了十多年之後,仍然有相當多的硬體工程師分不清nor 和nand快閃儲存器。

"flash儲存器"經常可以與相"nor儲存器"互換使用。

許多業內人士也搞不清楚nand快閃儲存器技術相對於nor技術的優越之處,因為大多數情況下快閃儲存器只是用來儲存少量的**,這時nor快閃儲存器更適合一些。而nand則是高資料儲存密度的理想解決方案。

nor 是現在市場上主要的非易失快閃儲存器技術。

nor一般只用來儲存少量的**,nor主要應用在**儲存介質中。

nor的特點是應用簡單、無需專門的介面電路、傳輸效率高,它是屬於晶元內執行(xip, execute in place),這樣應用程式可以直接在(nor型) flash快閃儲存器內執行,不必再把**讀到系統ram中。

在1~4mb的小容量時具有很高的成本效益,但是很低的寫入和擦除速度大大影響了它的效能。

nor flash帶有sram介面,有足夠的位址引腳來定址,可以很容易地訪問其內部的每乙個位元組。

nor flash佔據了容量為1~16mb快閃儲存器市場的大部分。

nand結構能提供極高的單元密度,可以達到高儲存密度,並且寫入和擦除的速度也很快。

應用nand的困難在於flash的管理和需要特殊的系統介面。

1) 效能比較

flash快閃儲存器是非易失儲存器,可以對稱為塊的儲存器單元塊進行擦寫和再程式設計。

任何flash器件的寫入操作只能在空或已擦除的單元內進行,所以大多數情況下,在進行寫入操作之前必須先執行擦除。

nand器件執行擦除操作是十分簡單的,而nor則要求在進行擦除前先要將目標塊內所有的位都寫為1。

由於擦除nor器件時是以64~128kb的塊進行的,執行乙個寫入/擦除操作的時間為5s,與此相反,擦除nand器件是以8~32kb的塊進行的,執行相同的操作最多隻需要4ms。

執行擦除時塊尺寸的不同進一步拉大了nor和nadn之間的效能差距,統計表明,對於給定的一套寫入操作(尤其是更新小檔案時),更多的擦除操作必須在基於nor的單元中進行。這樣,當選擇儲存解決方案時,設計師必須權衡以下的各項因素:

a、 nor的讀速度比nand稍快一些;

b、 nand的寫入速度比nor快很多;

c、 nand的4ms擦除速度遠比nor的5s快;

d、 大多數寫入操作需要先進行擦除操作;

e、 nand的擦除單元更小,相應的擦除電路更少。

2) 介面差別

nor flash帶有sram介面,有足夠的位址引腳來定址,可以很容易地訪問其內部的每乙個位元組。

nand器件使用複雜的i/o口來序列地訪問資料,各個產品或廠商的方法可能各不相同,8個引腳用來傳送控制、位址和資料資訊。

nand讀和寫操作採用節的塊,這一點有點像硬碟管理此類操作,很自然地,基於nand的儲存器就可以取代硬碟或其他塊裝置。

3) 容量和成本

nand flash的單元尺寸幾乎是nor器件的一半,由於生產過程更為簡單,nand結構可以在給定的模具尺寸內提供更高的容量,也就相應地降低了**。

nor flash佔據了容量為1~16mb快閃儲存器市場的大部分,而nand flash只是用在8~128mb的產品當中,這也說明nor主要應用在**儲存介質中,nand適合於資料儲存,nand在compactflash、secure digital、pc cards和mmc儲存卡市場上所佔份額最大。

4) 可靠性和耐用性

採用flahs介質時乙個需要重點考慮的問題是可靠性,對於需要擴充套件mtbf的系統來說,flash是非常合適的儲存方案,可以從壽命(耐用性)、位交換和壞塊處理三個方面來比較nor和nand的可靠性。

a、 壽命(耐用性)

在nand快閃儲存器中每個塊的最大擦寫次數是一百萬次,而nor的擦寫次數是十萬次,nand儲存器除了具有10比1的塊擦除週期優勢。

典型的nand塊尺寸要比nor器件小8倍,每個nand儲存器塊在給定的時間內的刪除次數要少一些。

b、 位交換

所有flash器件都受位交換現象的困擾。在某些情況下(很少見,nand發生的次數要比nor多),乙個位元(bit)位會發生反轉或被報告反轉了。

一位的變化可能不很明顯,但是如果發生在乙個關鍵檔案上,這個小小的故障可能導致系統停機。如果只是報告有問題,多讀幾次就可能解決了。

當然,如果這個位真的改變了,就必須採用錯誤探測/錯誤更正(edc/ecc)演算法。位反轉的問題更多見於nand快閃儲存器,nand的**商建議使用nand快閃儲存器的時候,同時使用edc/ecc演算法。

這個問題對於用nand儲存多**資訊時倒不是致命的。當然,如果用本地儲存裝置來儲存作業系統、配置檔案或其他敏感資訊時,必須使用edc/ecc系統以確保可靠性。

c、壞塊處理

nand器件中的壞塊是隨機分布的。以前也曾有過消除壞塊的努力,但發現成品率太低,代價太高,根本不划算。

nand器件需要對介質進行初始化掃瞄以發現壞塊,並將壞塊標記為不可用。在已製成的器件中,如果通過可靠的方法不能進行這項處理,將導致高故障率。

5) 易於使用

可以非常直接地使用基於nor的快閃儲存器,可以像其他儲存器那樣連線,並可以在上面直接執行**。

由於需要i/o介面,nand要複雜得多。各種nand器件的訪問方法因廠家而異。

在使用nand器件時,必須先寫入驅動程式,才能繼續執行其他操作。向nand器件寫入資訊需要相當的技巧,因為設計師絕不能向壞塊寫入,這就意味著在nand器件上自始至終都必須進行虛擬對映。

6) 軟體支援

當討論軟體支援的時候,應該區別基本的讀/寫/擦操作和高一級的用於磁碟**和快閃儲存器管理演算法的軟體,包括效能優化。

在nor器件上執行**不需要任何的軟體支援,在nand器件上進行同樣操作時,通常需要驅動程式,也就是記憶體技術驅動程式(mtd),nand和nor器件在進行寫入和擦除操作時都需要mtd。

使用nor器件時所需要的mtd要相對少一些,許多廠商都提供用於nor器件的更高階軟體,這其中包括m-system的trueffs驅動,該驅動被 wind river system、microsoft、qnx software system、symbian和intel等廠商所採用。

驅動還用於對diskonchip產品進行**和nand快閃儲存器的管理,包括糾錯、壞塊處理和損耗平衡。

nor flash的主要**商是intel、micro等廠商,曾經是flash的主流產品,但現在被nand flash擠的比較難受。它的優點是可以直接從flash中執行程式,但是工藝複雜,**比較貴。

nand flash的主要**商是samsung和東芝,在u盤、各種儲存卡、*****器裡面的都是這種flash,由於工藝上的不同,它比nor flash擁有更大儲存容量,而且便宜。但也有缺點,就是無法定址直接執行程式,只能儲存資料。另外nand flash 非常容易出現壞區,所以需要有校驗的演算法。

在掌上電腦裡要使用nand flash 儲存資料和程式,但是必須有nor flash來啟動。除了samsung處理器,其他用在掌上電腦的主流處理器還不支援直接由nand flash 啟動程式。因此,必須先用一片小的nor flash 啟動機器,在把os等軟體從nand flash 載入sdram中執行才行,挺麻煩的。

總結  dram 利用mos管的柵電容上的電荷來儲存資訊,一旦掉電資訊會全部的丟失,由於柵極會漏電,所以每隔一定的時間就需要乙個重新整理機構給這些柵電容補充電荷,並且每讀出一次資料之後也需要補充電荷,這個就叫動態重新整理,所以稱其為動態隨機儲存器。

由於它只使用乙個mos管來存資訊,所以整合度可以很高,容量能夠做的很大。

sdram比它多了乙個與cpu時鐘同步。

sram 利用暫存器來儲存資訊,所以一旦掉電,資料就會全部丟失,只要供電,它的資料就會一直存在,不需要動態重新整理,所以叫靜態隨機儲存器。

以上主要用於系統記憶體儲器,容量大,不需要斷電後仍儲存資料的。

flash rom 是利用浮置柵上的電容儲存電荷來儲存資訊,因為浮置柵不會漏電,所以斷電後資訊仍然可以儲存。

也由於其機構簡單所以整合度可以做的很高,容量可以很大。

flash rom寫入前需要用電進行擦除,而且擦除不同,eeprom可以以byte(位元組)為單位進行,flash rom只能以sector(扇區)為單位進行。不過其寫入時可以byte為單位。

flash rom主要用於bios,u盤,***等需要大容量且斷電不丟資料的裝置。

各型別儲存器區別

rom ram dram sram flash的區別 rom和ram指的都是半導體儲存器,rom是read only memory的縮寫,ram是random access memory的縮寫。rom在系統停止供電的時候仍然可以保持資料,而ram通常都是在掉電之後就丟失資料,典型的ram就是計算機的...

原子vs電子 快閃儲存器與磁碟的區別

網路計算機與網路創新生活 憫 硼啊暖 原子 電子 快閃儲存器與磁碟的區別 副總裁兼首席技術官 在過去的幾年裡,快閃儲存器與磁碟放在伺服器上來獲得最佳效能,也速使企業在資訊時代有了顯著的差之間的爭議很多,也發生了顯著的可以用作物理和虛擬伺服器後端存異。變化。現在,我們已經不再討論閃 儲的快取,還可以用...

區別各種IE瀏覽器和火狐的css寫法

2011 08 29 00 33 1.區別ie和非ie瀏覽器 如下 tip 2.區別ie6,ie7,ie8,ff 區別符號 9 示例 如下 tip 說明 因為ie系列瀏覽器可讀 9 而ie6和ie7可讀 公尺字型大小 另外ie6可辨識 底線 因此可以依照順序寫下來,就會讓瀏覽器正確的讀取到自己看得懂...