摘要:本文主要介紹了移動(dòng)電話中的存儲(chǔ)技術(shù),包括電池支持的RAM,電磁媒質(zhì),NOR閃存,NAND閃存和DiskOnChip,并對(duì)它們的應(yīng)用前景做了分析。
關(guān)鍵詞:非易失性存儲(chǔ) NOR NAND DiskOnChip
1.引言
3G或者未來的4G移動(dòng)電話,以多媒體報(bào)文,視頻流等應(yīng)用為特征,對(duì)內(nèi)存的要求將上升到好幾百兆。這個(gè)變化擴(kuò)大了對(duì)非易失性存儲(chǔ)系統(tǒng)(如2G中的SRAM,NOR閃存等)的需求。將來對(duì)移動(dòng)電話中的非易失性存儲(chǔ)系統(tǒng)的要求是:更高的容量,16~64MB;良好的讀寫性能;高可靠性;低電源消耗;基于文件的存儲(chǔ);體積;更小的系統(tǒng)、更小的材料清單(BOM)和更低的開發(fā)成本。
這些需求主要由高端用戶,生產(chǎn)商和運(yùn)營商推動(dòng)。用戶需要的是體積更小,電池使用壽命更長,性能更好,可以進(jìn)行商業(yè)活動(dòng)和娛樂的電話。生產(chǎn)商則希望降低成本,使用更復(fù)雜的操作系統(tǒng),可以安全地啟動(dòng)和運(yùn)行,因此希望無錯(cuò)地存儲(chǔ)代碼和數(shù)據(jù)。從運(yùn)營商的觀點(diǎn)看,由于ARPU值不斷下降,他們希望提供更多以數(shù)據(jù)為中心的業(yè)務(wù)來增加收入,這也需要更大的存儲(chǔ)空間。
2.存儲(chǔ)技術(shù)
當(dāng)選取非易失性存儲(chǔ)解決方案時(shí),移動(dòng)系統(tǒng)的設(shè)計(jì)者有許多選擇。第一,是否要將代碼和數(shù)據(jù)分開存儲(chǔ),如果分開,是各自使用不同的技術(shù)還是使用同樣的技術(shù)不同的設(shè)備。分開存儲(chǔ)是更安全的選擇,是對(duì)傳統(tǒng)的嵌入式存儲(chǔ)解決方案的簡單擴(kuò)展。對(duì)于小系統(tǒng)來說,這便于運(yùn)行,在開發(fā)方面有優(yōu)勢。缺點(diǎn)是增加設(shè)備的數(shù)量將影響成本,大小和電源消耗,存儲(chǔ)容量越大,影響就越大。
現(xiàn)有的幾種技術(shù)是:電池支持的RAM,電磁媒質(zhì),NOR閃存,NAND閃存和DiskOnChip。
2.1電池支持的RAM和電磁媒質(zhì)
電池支持的RAM提供高速的隨機(jī)讀寫接入,它比較昂貴,體積大,而且需要連續(xù)供電。盡管這項(xiàng)技術(shù)在PDA中使用很廣泛,但是,從用戶的角度看,這種設(shè)備體積大,也比較重,還需要每天進(jìn)行充電以免數(shù)據(jù)丟失。當(dāng)需要大量存儲(chǔ)時(shí),可以選擇電磁媒質(zhì),如小型磁盤。但是即使對(duì)PDA來說其體積也顯得稍大,它僅在便攜式嵌入式系統(tǒng)如數(shù)據(jù)記錄器中使用。因此,對(duì)移動(dòng)電話來說,選用這兩種技術(shù)的可能性都不是很大。
2.2 NOR技術(shù)
NOR是一種較好的選擇,這是一種可靠的技術(shù),它在嵌入式系統(tǒng)中有很長的使用歷史,主要用于代碼的存儲(chǔ),多數(shù)設(shè)計(jì)者都比較熟悉。如圖1所示,它有基于地址和數(shù)據(jù)總線的接口。因此,在進(jìn)行讀寫操作時(shí),不會(huì)發(fā)生錯(cuò)誤。它提供了很好的讀的性能,可以隨機(jī)接入,可以“現(xiàn)場運(yùn)行”(XIP)。如果將其擴(kuò)展到存儲(chǔ)用戶數(shù)據(jù),這樣非常簡單,但是當(dāng)處理變得復(fù)雜時(shí),就有許多問題需要考慮。
首先,不可能僅是簡單地寫入數(shù)據(jù)到NOR閃存。在寫入之前,必須先將擦寫NOR閃存設(shè)備的目標(biāo)位置。然而,當(dāng)NOR閃存設(shè)備被組成“可擦寫的塊”時(shí),擦寫不是按字節(jié)進(jìn)行的,而是將整個(gè)塊都擦掉。這對(duì)代碼存儲(chǔ)來說很方便,先將整個(gè)設(shè)備都擦寫,然后重新進(jìn)行編程,但是對(duì)數(shù)據(jù)存儲(chǔ)來說,這是一個(gè)比較麻煩的問題。
閃存擦寫是一個(gè)比較耗時(shí)的處理過程。一般來說,一個(gè)塊的擦寫時(shí)間為100ms到幾秒,讀一個(gè)字節(jié)約為100ns,寫一個(gè)字節(jié)用10~20ms。只有采用新的算法,能夠識(shí)別數(shù)據(jù)中的新項(xiàng),才能加速這個(gè)處理過程。
一個(gè)擦寫塊可進(jìn)一步分為編程塊。當(dāng)擦掉后,所有的比特位處于“1”狀態(tài),寫數(shù)據(jù)僅將一些比特變?yōu)椤?”態(tài),剩下的“1”比特位可寫,但僅可以變?yōu)椤?”態(tài)。這種方法稱為部分編程。這樣,一個(gè)塊可以被部分地擦寫多次,實(shí)際的次數(shù)取決于不同的設(shè)備。
NOR閃存設(shè)備也有使用壽命,一般是設(shè)備可擦寫次數(shù)的函數(shù)。通常是100s或者1000s的倍數(shù)。每進(jìn)行一次擦寫之后,下一次的擦寫時(shí)間就增加了。當(dāng)一個(gè)設(shè)備到達(dá)其使用壽命時(shí),擦一個(gè)塊的時(shí)間將會(huì)超過預(yù)期值,會(huì)變得很不可靠。因此,為確保設(shè)備能夠最合理地使用,管理算法應(yīng)該使擦寫塊和其他塊的老化速度一致。
2.3 NAND閃存
NAND閃存是一種比NOR閃存新的技術(shù),許多系統(tǒng)設(shè)計(jì)者并不熟悉。如圖2所示,它的接口更像一個(gè)I/O設(shè)備,它的存儲(chǔ)單元比NOR設(shè)備的要小40%,因此在同樣大小的設(shè)備上有更大的存儲(chǔ)量。與NOR不同,NAND設(shè)備不是按字節(jié)進(jìn)行編址。內(nèi)部的單元像鏈一樣串行排列,一般為512字節(jié),這些鏈可進(jìn)一步排列成可擦寫的塊。
NAND設(shè)備的管理與NOR設(shè)備類似,但是更復(fù)雜。在寫入之前,必須首先進(jìn)行擦寫,擦寫操作將單元設(shè)為“1”狀態(tài),寫僅僅能夠?qū)⒋鎯?chǔ)單元設(shè)為“0”狀態(tài)。NAND也可以進(jìn)行部分編程,設(shè)備也有一定的使用壽命,也需要合理的管理算法,使經(jīng)常擦寫的塊和其他塊的老化速度一致。
為了達(dá)到100%的可靠性,在讀時(shí),算法必須進(jìn)行檢錯(cuò)和糾錯(cuò),這會(huì)增加開銷。然而,有些應(yīng)用并不要求100%的可靠性,如圖像和語音。因此,NAND可用在媒質(zhì)卡中,然而,媒質(zhì)卡的性能一般受到接口的限制。
對(duì)NAND設(shè)備來說,512B的讀操作耗時(shí)25ms,寫512B耗時(shí)250ms,一個(gè)塊的擦寫需要3ms。NAND設(shè)備的耗電量比NOR設(shè)備低,進(jìn)行擦寫是最耗電的操作。NAND設(shè)備需要幾個(gè)微安培,而NOR設(shè)備則需要幾個(gè)毫安培的電流。由于NAND設(shè)備使用的電流更低,操作時(shí)間更短,所以它比NOR設(shè)備更省電。NAND設(shè)備也可連接到I/O總線,這樣會(huì)限制其性能,可以通過引入一個(gè)NAND控制器來消除這個(gè)限制,但是這樣做會(huì)增加成本。
3.寫性能的重要性
在2G手機(jī)中,寫不是一個(gè)很重要的部分,數(shù)據(jù)存儲(chǔ)的要求并不是很頻繁,因此有足夠的時(shí)間來完成操作。一般來講,NOR和NAND閃存都滿足它們的存儲(chǔ)要求。在3G和4G手機(jī)中,寫的性能十分重要,非易失性存儲(chǔ)技術(shù)的選取將是一個(gè)十分關(guān)鍵的因素。
對(duì)使用數(shù)據(jù)庫類型操作的應(yīng)用,如日歷和通信聯(lián)系簿,當(dāng)編輯一條或者組織數(shù)據(jù)時(shí),如果操作耗時(shí),會(huì)使得用戶很不滿意。例如,在可拍照的手機(jī)中,每幅圖片的寫入需要10~100s。幀速率,色彩深度和幀大小決定了數(shù)據(jù)速率。如果這超過了存儲(chǔ)設(shè)備所能提供的性能,操作將會(huì)受到限制。要么減少幀的屬性,要么將數(shù)據(jù)暫時(shí)放到內(nèi)存中,然后再存儲(chǔ)在非易失性存儲(chǔ)器中。這可以限制持續(xù)的流操作,但在寫入數(shù)據(jù)的時(shí)候引入了時(shí)延。
操作系統(tǒng),文件流和開放的標(biāo)準(zhǔn),有助于不同的應(yīng)用呈指數(shù)型增長,操作環(huán)境不再是決定性的,還取決于操作系統(tǒng)和與其他運(yùn)行的操作系統(tǒng)的相互作用。由于它們在一個(gè)系統(tǒng)內(nèi)的奇異性,需要很小心地管理,以讓其性能最優(yōu)。如果這些資源的處理很慢,不僅會(huì)影響使用這些資源的應(yīng)用,也會(huì)潛在影響其他的應(yīng)用。
隨著設(shè)備變滿,寫入新的數(shù)據(jù)變得更困難。為此,在進(jìn)行寫操作之前,管理系統(tǒng)首先進(jìn)行垃圾的收集整理。如果寫入操作變得很慢,將會(huì)阻礙用戶的使用。
一個(gè)可行的解決方案是使用多級(jí)單元(MLC)閃存技術(shù)。在NOR和NAND技術(shù)中,一個(gè)存儲(chǔ)單元只能存儲(chǔ)一個(gè)比特,而在MLC中一個(gè)單元可以存儲(chǔ)2個(gè)比特,對(duì)同樣大小的物理設(shè)備來說,這加倍了存儲(chǔ)容量,將每個(gè)比特的成本減半。由于這種存儲(chǔ)方式,MLC的錯(cuò)誤率比單級(jí)單元要高。由于管理每個(gè)單元的控制數(shù)量和部分寫的特征沒有了,數(shù)據(jù)速率會(huì)降低。因此,有人質(zhì)疑MLC在移動(dòng)市場中的適用性。然而,隨著市場對(duì)增加容量和降低成本的需求,由于MLC技術(shù)具有的成本優(yōu)勢,使得MLC的采用是必然的。其他的因素只是在工程實(shí)現(xiàn)中所需要解決的一些問題。
最新的非易失性存儲(chǔ)方案是DiskOnChipTM技術(shù)。顧名思義,閃存具有磁盤的許多性質(zhì)。其核心使用最新的非易失性存儲(chǔ)媒質(zhì),用一個(gè)小控制器保證硬件接口兼容性和可靠性,F(xiàn)在,DiskOnChipTM是基于NAND技術(shù)的,因?yàn)樗悄芴峁└呷萘康募夹g(shù)?刂破魈峁┝嗽S多與NOR類似的接口,這保證了它的兼容性。使用基于閃存管理的TrueFFS技術(shù),控制器也可以管理NAND的錯(cuò)誤問題。到目前為止,DiskOnChipTM是唯一支持多級(jí)單元的NAND設(shè)備,它比使用標(biāo)準(zhǔn)的NAND設(shè)備有更低的成本。
使用NAND的一個(gè)缺點(diǎn)是它不支持XIP,這要求它使用一個(gè)額外的非易失性設(shè)備作為啟動(dòng)ROM(類似計(jì)算機(jī)的BIOS和硬盤)。DiskOnChip提供了一個(gè)內(nèi)置的XIP啟動(dòng)模塊,使它可以作為非易失性存儲(chǔ)設(shè)備。通過消除啟動(dòng)ROM,可以進(jìn)一步降低成本。
另一個(gè)挑戰(zhàn)是軟件綜合。使用TrueFFS閃存管理和文件系統(tǒng)軟件,可以將閃存變成磁盤一樣的設(shè)備。在多數(shù)移動(dòng)操作系統(tǒng),如Symbian OS, Microsoft OS, Linux和 Palm中,都提供了開發(fā)工具。
當(dāng)移動(dòng)電話不使用時(shí),使用一種深度省電模式可以進(jìn)一步減少電源的消耗,延長電池的使用壽命。
4.結(jié)束語
隨著對(duì)快速、可靠和高容量手機(jī)的需求,手機(jī)的體積和成本變得日益重要,NAND閃存和Chip-based 磁盤可以作為非易失性存儲(chǔ)系統(tǒng)的解決方案。MLC NAND的引入是因?yàn)樗cNOR相比有成本和體積的優(yōu)勢。然而,NOR閃存仍將在以語音為中心的手機(jī)中扮演一個(gè)主要角色,在其他的移動(dòng)應(yīng)用中它也占有一席之地。
原創(chuàng)