0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

存儲(chǔ)器的類型選擇的技巧和應(yīng)遵循的基本原則

電子設(shè)計(jì) ? 來(lái)源:賽迪網(wǎng) ? 作者:佚名 ? 2020-05-20 07:54 ? 次閱讀

存儲(chǔ)器的類型將決定整個(gè)嵌入式系統(tǒng)的操作和性能,因此存儲(chǔ)器的選擇是一個(gè)非常重要的決策。

無(wú)論系統(tǒng)是采用電池供電還是由市電供電,應(yīng)用需求將決定存儲(chǔ)器的類型(易失性或非易失性)以及使用目的(存儲(chǔ)代碼、數(shù)據(jù)或者兩者兼有)。另外,在選擇過(guò)程中,存儲(chǔ)器的尺寸和成本也是需要考慮的重要因素。對(duì)于較小的系統(tǒng),微控制器自帶的存儲(chǔ)器就有可能滿足系統(tǒng)要求,而較大的系統(tǒng)可能要求增加外部存儲(chǔ)器。為嵌入式系統(tǒng)選擇存儲(chǔ)器類型時(shí),需要考慮一些設(shè)計(jì)參數(shù),包括微控制器的選擇、電壓范圍、電池壽命、讀寫速度、存儲(chǔ)器尺寸、存儲(chǔ)器的特性、擦除/寫入的耐久性以及系統(tǒng)總成本。

圖1列出了在嵌入式應(yīng)用系統(tǒng)中最常用的存儲(chǔ)器類型。下面討論在選擇存儲(chǔ)器時(shí)應(yīng)遵循的基本原則。

存儲(chǔ)器的類型選擇的技巧和應(yīng)遵循的基本原則

選擇存儲(chǔ)器時(shí)應(yīng)遵循的基本原則

1.內(nèi)部存儲(chǔ)器與外部存儲(chǔ)器

一般情況下,當(dāng)確定了存儲(chǔ)程序代碼和數(shù)據(jù)所需要的存儲(chǔ)空間之后,設(shè)計(jì)工程師將決定是采用內(nèi)部存儲(chǔ)器還是外部存儲(chǔ)器。通常情況下,內(nèi)部存儲(chǔ)器的性價(jià)比最高但靈活性最低,因此設(shè)計(jì)工程師必須確定對(duì)存儲(chǔ)的需求將來(lái)是否會(huì)增長(zhǎng),以及是否有某種途徑可以升級(jí)到代碼空間更大的微控制器?;诔杀究紤] ,人們通常選擇能滿足應(yīng)用要求的存儲(chǔ)器容量最小的微控制器,因此在預(yù)測(cè)代碼規(guī)模的時(shí)候要必須特別小心,因?yàn)榇a規(guī)模增大可能要求更換微控制器。

目前市場(chǎng)上存在各種規(guī)模的外部存儲(chǔ)器器件,我們很容易通過(guò)增加存儲(chǔ)器來(lái)適應(yīng)代碼規(guī)模的增加。有時(shí)這意味著以封裝尺寸相同但容量更大的存儲(chǔ)器替代現(xiàn)有的存儲(chǔ)器,或者在總線上增加存儲(chǔ)器。即使微控制器帶有內(nèi)部存儲(chǔ)器,也可以通過(guò)增加外部串行EEPROM或閃存來(lái)滿足系統(tǒng)對(duì)非易失性存儲(chǔ)器的需求。

2.引導(dǎo)存儲(chǔ)器

在較大的微控制器系統(tǒng)或基于處理器的系統(tǒng)中,設(shè)計(jì)工程師可以利用引導(dǎo)代碼進(jìn)行初始化。應(yīng)用本身通常決定了是否需要引導(dǎo)代碼,以及是否需要專門的引導(dǎo)存儲(chǔ)器。例如,如果沒(méi)有外部的尋址總線或串行引導(dǎo)接口,通常使用內(nèi)部存儲(chǔ)器,而不需要專門的引導(dǎo)器件。但在一些沒(méi)有內(nèi)部程序存儲(chǔ)器的系統(tǒng)中,初始化是操作代碼的一部分,因此所有代碼都將駐留在同一個(gè)外部程序存儲(chǔ)器中。某些微控制器既有內(nèi)部存儲(chǔ)器也有外部尋址總線,在這種情況下,引導(dǎo)代碼將駐留在內(nèi)部存儲(chǔ)器中,而操作代碼在外部存儲(chǔ)器中。這很可能是最安全的方法,因?yàn)楦淖儾僮鞔a時(shí)不會(huì)出現(xiàn)意外地修改引導(dǎo)代碼。在所有情況下,引導(dǎo)存儲(chǔ)器都必須是非易失性存儲(chǔ)器。

3.配置存儲(chǔ)器

對(duì)于現(xiàn)場(chǎng)可編程門陣列(FPGA)或片上系統(tǒng)(SoC),人們使用存儲(chǔ)器來(lái)存儲(chǔ)配置信息。這種存儲(chǔ)器必須是非易失性EPROM、EEPROM或閃存。大多數(shù)情況下,F(xiàn)PGA采用SPI接口,但一些較老的器件仍采用FPGA串行接口。串行EEPROM或閃存器件最為常用,EPROM用得較少。

4.程序存儲(chǔ)器

所有帶處理器的系統(tǒng)都采用程序存儲(chǔ)器,但設(shè)計(jì)工程師必須決定這個(gè)存儲(chǔ)器是位于處理器內(nèi)部還是外部。在做出了這個(gè)決策之后,設(shè)計(jì)工程師才能進(jìn)一步確定存儲(chǔ)器的容量和類型。當(dāng)然有的時(shí)候,微控制器既有內(nèi)部程序存儲(chǔ)器也有外部尋址總線,此時(shí)設(shè)計(jì)工程師可以選擇使用它們當(dāng)中的任何一個(gè),或者兩者都使用。這就是為什么為某個(gè)應(yīng)用選擇最佳存儲(chǔ)器的問(wèn)題,常常由于微控制器的選擇變得復(fù)雜起來(lái),以及為什么改變存儲(chǔ)器的規(guī)模也將導(dǎo)致改變微控制器的選擇的原因。

如果微控制器既利用內(nèi)部存儲(chǔ)器也利用外部存儲(chǔ)器,則內(nèi)部存儲(chǔ)器通常被用來(lái)存儲(chǔ)不常改變的代碼,而外部存儲(chǔ)器用于存儲(chǔ)更新比較頻繁的代碼和數(shù)據(jù)。設(shè)計(jì)工程師也需要考慮存儲(chǔ)器是否將被在線重新編程或用新的可編程器件替代。對(duì)于需要重編程功能的應(yīng)用,人們通常選用帶有內(nèi)部閃存的微控制器,但帶有內(nèi)部OTP或ROM和外部閃存或EEPROM的微控制器也滿足這個(gè)要求。為降低成本,外部閃存可用來(lái)存儲(chǔ)代碼和數(shù)據(jù),但在存儲(chǔ)數(shù)據(jù)時(shí)必須小心避免意外修改代碼。

在大多數(shù)嵌入式系統(tǒng)中,人們利用閃存存儲(chǔ)程序以便在線升級(jí)固件。代碼穩(wěn)定的較老的應(yīng)用系統(tǒng)仍可以使用ROM和OTP存儲(chǔ)器,但由于閃存的通用性,越來(lái)越多的應(yīng)用系統(tǒng)正轉(zhuǎn)向閃存。表1給出了程序存儲(chǔ)器類型的參數(shù)比較。

5.?dāng)?shù)據(jù)存儲(chǔ)器

與程序存儲(chǔ)器類似,數(shù)據(jù)存儲(chǔ)器可以位于微控制器內(nèi)部,或者是外部器件,但這兩種情況存在一些差別。有時(shí)微控制器內(nèi)部包含SRAM(易失性)和EEPROM(非易失)兩種數(shù)據(jù)存儲(chǔ)器,但有時(shí)不包含內(nèi)部EEPROM,在這種情況下,當(dāng)需要存儲(chǔ)大量數(shù)據(jù)時(shí),設(shè)計(jì)工程師可以選擇外部的串行EEPROM或串行閃存器件。當(dāng)然,也可以使用并行EEPROM或閃存,但通常它們只被用作程序存儲(chǔ)器。

當(dāng)需要外部高速數(shù)據(jù)存儲(chǔ)器時(shí),通常選擇并行SRAM并使用外部串行EEPROM器件來(lái)滿足對(duì)非易失性存儲(chǔ)器的要求。一些設(shè)計(jì)還將閃存器件用作程序存儲(chǔ)器,但保留一個(gè)扇區(qū)作為數(shù)據(jù)存儲(chǔ)區(qū)。這種方法可以降低成本、空間并提供非易失性數(shù)據(jù)存儲(chǔ)器。

針對(duì)非易失性存儲(chǔ)器要求,串行EEPROM器件支持I2C、SPI或微線(Microwire)通訊總線,而串行閃存通常使用SPI總線。由于寫入速度很快且?guī)в蠭2C和SPI串行接口,F(xiàn)RAM在一些系統(tǒng)中得到應(yīng)用。表2比較了各類數(shù)據(jù)存儲(chǔ)器的優(yōu)缺點(diǎn)。

6.易失性和非易失性存儲(chǔ)器

存儲(chǔ)器可分成易失性存儲(chǔ)器或者非易失性存儲(chǔ)器,前者在斷電后將丟失數(shù)據(jù),而后者在斷電后仍可保持?jǐn)?shù)據(jù)。設(shè)計(jì)工程師有時(shí)將易失性存儲(chǔ)器與后備電池一起使用,使其表現(xiàn)猶如非易失性器件,但這可能比簡(jiǎn)單地使用非易失性存儲(chǔ)器更加昂貴。然而,對(duì)要求存儲(chǔ)器容量非常大的系統(tǒng)而言,帶有后備電池的DRAM可能是滿足設(shè)計(jì)要求且性價(jià)比很高的一種方法。

在有連續(xù)能量供給的系統(tǒng)中,易失性或非易失性存儲(chǔ)器都可以使用,但必須基于斷電的可能性做出最終決策。如果存儲(chǔ)器中的信息可以在電力恢復(fù)時(shí)從另一個(gè)信源中恢復(fù)出來(lái),則可以使用易失性存儲(chǔ)器。

選擇易失性存儲(chǔ)器與電池一起使用的另一個(gè)原因是速度。盡管非易失存儲(chǔ)器件可以在斷電時(shí)保持?jǐn)?shù)據(jù),但寫入數(shù)據(jù)(一個(gè)字節(jié)、頁(yè)或扇區(qū) )的時(shí)間較長(zhǎng)。

7.串行存儲(chǔ)器和并行存儲(chǔ)器

在定義了應(yīng)用系統(tǒng)之后,微控制器的選擇是決定選擇串行或并行存儲(chǔ)器的一個(gè)因素。對(duì)于較大的應(yīng)用系統(tǒng),微控制器通常沒(méi)有足夠大的內(nèi)部存儲(chǔ)器,這時(shí)必須使用外部存儲(chǔ)器,因?yàn)橥獠繉ぶ房偩€通常是并行的,外部的程序存儲(chǔ)器和數(shù)據(jù)存儲(chǔ)器也將是并行的。

較小的應(yīng)用系統(tǒng)通常使用帶有內(nèi)部存儲(chǔ)器但沒(méi)有外部地址總線的微控制器。如果需要額外的數(shù)據(jù)存儲(chǔ)器,外部串行存儲(chǔ)器件是最佳選擇。大多數(shù)情況下,這個(gè)額外的外部數(shù)據(jù)存儲(chǔ)器是非易失性的。

根據(jù)不同的設(shè)計(jì),引導(dǎo)存儲(chǔ)器可以是串行也可以是并行的。如果微控制器沒(méi)有內(nèi)部存儲(chǔ)器,并行的非易失性存儲(chǔ)器件對(duì)大多數(shù)應(yīng)用系統(tǒng)而言是正確的選擇。但對(duì)一些高速應(yīng)用,可以使用外部的非易失性串行存儲(chǔ)器件來(lái)引導(dǎo)微控制器,并允許主代碼存儲(chǔ)在內(nèi)部或外部高速SRAM中。

8.EEPROM與閃存

存儲(chǔ)器技術(shù)的成熟使得RAM和ROM之間的界限變得很模糊,如今有一些類型的存儲(chǔ)器(如EEPROM和閃存)組合了兩者的特性。這些器件像RAM一樣進(jìn)行讀寫,并像ROM一樣在斷電時(shí)保持?jǐn)?shù)據(jù),它們都可電擦除且可編程,但各自有它們優(yōu)缺點(diǎn)。

從軟件角度看,獨(dú)立的EEPROM和閃存器件是類似的,兩者主要差別是EEPROM器件可以逐字節(jié)地修改,而閃存器件只支持扇區(qū)擦除以及對(duì)被擦除單元的字、頁(yè)或扇區(qū)進(jìn)行編程。對(duì)閃存的重新編程還需要使用SRAM,因此它要求更長(zhǎng)的時(shí)間內(nèi)有更多的器件在工作,從而需要消耗更多的電池能量。設(shè)計(jì)工程師也必須確認(rèn)在修改數(shù)據(jù)時(shí)有足夠容量的SRAM可用。

存儲(chǔ)器密度是決定選擇串行EEPROM或者閃存的另一個(gè)因素。市場(chǎng)上目前可用的獨(dú)立串行EEPROM器件的容量在128KB或以下,獨(dú)立閃存器件的容量在32KB或以上。

如果把多個(gè)器件級(jí)聯(lián)在一起,可以用串行EEPROM實(shí)現(xiàn)高于128KB的容量。很高的擦除/寫入耐久性要求促使設(shè)計(jì)工程師選擇EEPROM,因?yàn)榈湫偷拇蠩EPROM可擦除/寫入100萬(wàn)次。閃存一般可擦除/寫入1萬(wàn)次,只有少數(shù)幾種器件能達(dá)到10萬(wàn)次。

今天,大多數(shù)閃存器件的電壓范圍為2.7V到3.6V。如果不要求字節(jié)尋址能力或很高的擦除/寫入耐久性,在這個(gè)電壓范圍內(nèi)的應(yīng)用系統(tǒng)采用閃存,可以使成本相對(duì)較低。

9.EEPROM與FRAM

EEPROM和FRAM的設(shè)計(jì)參數(shù)類似,但FRAM的可讀寫次數(shù)非常高且寫入速度較快。然而通常情況下,用戶仍會(huì)選擇EEPROM而不是FRAM,其主要原因是成本(FRAM較為昂貴)、質(zhì)量水平和供貨情況。設(shè)計(jì)工程師常常使用成本較低的串行EEPROM,除非耐久性或速度是強(qiáng)制性的系統(tǒng)要求。

DRAM和SRAM都是易失性存儲(chǔ)器,盡管這兩種類型的存儲(chǔ)器都可以用作程序存儲(chǔ)器和數(shù)據(jù)存儲(chǔ)器,但SRAM主要用于數(shù)據(jù)存儲(chǔ)器。DRAM與SRAM之間的主要差別是數(shù)據(jù)存儲(chǔ)的壽命。只要不斷電,SRAM就能保持其數(shù)據(jù),但DRAM只有極短的數(shù)據(jù)壽命,通常為4毫秒左右。

與SRAM相比,DRAM似乎是毫無(wú)用處的,但位于微控制器內(nèi)部的DRAM控制器使DRAM的性能表現(xiàn)與SRAM一樣。DRAM控制器在數(shù)據(jù)消失之前周期性地刷新所存儲(chǔ)的數(shù)據(jù),所以存儲(chǔ)器的內(nèi)容可以根據(jù)需要保持長(zhǎng)時(shí)間。

由于比特成本低,DRAM通常用作程序存儲(chǔ)器,所以有龐大存儲(chǔ)要求的應(yīng)用可以從DRAM獲益。它的最大缺點(diǎn)是速度慢,但計(jì)算機(jī)系統(tǒng)使用高速SRAM作為高速緩沖存儲(chǔ)器來(lái)彌補(bǔ)DRAM的速度缺陷。

表3總結(jié)了本文提到的各類存儲(chǔ)器的特性。需要注意的是,不同類型的存儲(chǔ)器的適合情況不同,每種類型都有自己的優(yōu)點(diǎn)和弱點(diǎn),所以逐項(xiàng)比較并非總能得到有意義的結(jié)果。

本文小結(jié)

盡管我們幾乎可以使用任何類型的存儲(chǔ)器來(lái)滿足嵌入式系統(tǒng)的要求,但終端應(yīng)用和總成本要求通常是影響我們做出決策的主要因素。有時(shí),把幾個(gè)類型的存儲(chǔ)器結(jié)合起來(lái)使用能更好地滿足應(yīng)用系統(tǒng)的要求。例如,一些PDA設(shè)計(jì)同時(shí)使用易失性存儲(chǔ)器和非易失性存儲(chǔ)器作為程序存儲(chǔ)器和數(shù)據(jù)存儲(chǔ)器。把永久的程序保存在非易失性ROM中,而把由用戶下載的程序和數(shù)據(jù)存儲(chǔ)在有電池支持的易失性DRAM中。不管選擇哪種存儲(chǔ)器類型,在確定將被用于最終應(yīng)用系統(tǒng)的存儲(chǔ)器之前,設(shè)計(jì)工程師必須仔細(xì)折中考慮各種設(shè)計(jì)因素。

責(zé)任編輯:gt


聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 微控制器
    +關(guān)注

    關(guān)注

    48

    文章

    7334

    瀏覽量

    150092
  • 存儲(chǔ)器
    +關(guān)注

    關(guān)注

    38

    文章

    7365

    瀏覽量

    163088
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    汽車電源架構(gòu)設(shè)計(jì)需要遵循哪些原則?

    汽車電源架構(gòu)在設(shè)計(jì)時(shí)需要遵循的六項(xiàng)基本原則。但不是每個(gè)設(shè)計(jì)師都對(duì)這些原則有很透徹的了解。本文將對(duì)汽車電源設(shè)計(jì)應(yīng)遵循的六大
    發(fā)表于 04-02 19:38 ?3073次閱讀
    汽車電源架構(gòu)設(shè)計(jì)需要<b class='flag-5'>遵循</b>哪些<b class='flag-5'>原則</b>?

    FPGA設(shè)計(jì)基本原則及設(shè)計(jì)思想

    基本原則。二、Verilog的分層建模Verilog HDL 作為一種HDL語(yǔ)言,對(duì)系統(tǒng)行為的建模方式是分層次的。比較重要的層次有系統(tǒng)級(jí)(system)、算法級(jí)(Algorithm)、寄存傳輸級(jí)(RTL
    發(fā)表于 10-11 12:26

    MOS設(shè)計(jì)選型的基本原則

    6個(gè)MOS設(shè)計(jì)選型的基本原則
    發(fā)表于 03-18 07:04

    汽車電源設(shè)計(jì)要遵循哪幾項(xiàng)基本原則?

    汽車電源設(shè)計(jì)要遵循哪幾項(xiàng)基本原則?汽車通用電源的拓?fù)浼軜?gòu)有哪幾種?
    發(fā)表于 05-12 06:42

    電源IC的選擇基本原則

    及成本等問(wèn)題。這里給出一些選擇基本原則,供參考。成本等問(wèn)題。這里給出一些選擇基本原則,供參考。1、優(yōu)先考慮升壓式DC/DC變換采用升壓式D
    發(fā)表于 11-17 08:10

    光纖收發(fā)故障維護(hù)的基本原則和方法

      §1.1 進(jìn)行光纖收發(fā)故障維護(hù)應(yīng)遵循基本原則:   一、進(jìn)行故障維護(hù)判斷須從最簡(jiǎn)單的事情做起   簡(jiǎn)單的事情,一方面指觀察,另一方面是指簡(jiǎn)捷的環(huán)境
    發(fā)表于 08-25 16:05 ?0次下載

    搭配功放和音箱的基本原則

    搭配功放和音箱的基本原則 HIFI器材的搭配非常重要。雖然其中有不少主觀因素在內(nèi),但功放和音箱的搭配,則必須遵循幾大原則,如
    發(fā)表于 12-15 10:55 ?2434次閱讀

    內(nèi)電層分割基本原則

    內(nèi)電層分割基本原則,內(nèi)電層分割基本原則,內(nèi)電層分割基本原則
    發(fā)表于 12-24 11:02 ?0次下載

    PCB設(shè)計(jì)基本原則

    PCB設(shè)計(jì)基本原則,好東西,喜歡的朋友可以下載來(lái)學(xué)習(xí)。
    發(fā)表于 01-18 15:17 ?0次下載

    汽車電源架構(gòu)設(shè)計(jì)的六項(xiàng)基本原則

    多數(shù)汽車的電源架構(gòu)在設(shè)計(jì)時(shí)都要遵循最基本的原則,但不是每個(gè)設(shè)計(jì)師都對(duì)這些原則有很透徹的了解。本文將對(duì)汽車電源設(shè)計(jì)應(yīng)遵循的六大
    發(fā)表于 11-03 16:29 ?4次下載

    選擇GPU服務(wù)基本原則有哪些

    在介紹選擇GPU服務(wù)基本原則之前,先來(lái)跟大家介紹下常見(jiàn)的GPU和GPU服務(wù)。
    的頭像 發(fā)表于 02-24 13:29 ?2942次閱讀

    選擇PLC時(shí)需遵循哪些基本原則

    PLC也叫可編程邏輯控制,它是我們實(shí)現(xiàn)自動(dòng)化生產(chǎn)的核心部件。那么,在選擇PLC的時(shí)候,我們都需要遵循哪些基本的原則呢?
    的頭像 發(fā)表于 06-12 11:04 ?1745次閱讀

    工業(yè)傳感選型的六大基本原則

    工業(yè)傳感選型的六大基本原則
    的頭像 發(fā)表于 01-06 09:17 ?948次閱讀

    選擇IGBT的基本原則是什么

    選擇IGBT的基本原則涉及以下幾個(gè)方面: 電壓等級(jí):選擇合適的IGBT要考慮其能夠承受的電壓等級(jí)。通常情況下,IGBT的額定電壓等級(jí)應(yīng)大于實(shí)際電路中的最高電壓。 電流容量:根據(jù)電路的負(fù)
    的頭像 發(fā)表于 03-12 15:29 ?914次閱讀

    電路仿真所遵循基本原則是什么

    電路仿真是一種基于電子計(jì)算機(jī)進(jìn)行模擬的技術(shù),用于分析和預(yù)測(cè)電路的行為和性能。它可以幫助設(shè)計(jì)師優(yōu)化電路的功能、減少成本和提高可靠性。為了保證仿真結(jié)果的準(zhǔn)確性和可靠性,電路仿真需要遵循一些基本原則。本文
    的頭像 發(fā)表于 04-21 10:20 ?896次閱讀