国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

【小黑嵌入式系統(tǒng)第三課】嵌入式系統(tǒng)硬件平臺(一)——概述、總線、存儲設(shè)備(RAM&ROM&FLASH)

這篇具有很好參考價值的文章主要介紹了【小黑嵌入式系統(tǒng)第三課】嵌入式系統(tǒng)硬件平臺(一)——概述、總線、存儲設(shè)備(RAM&ROM&FLASH)。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

上一課:
【小黑嵌入式系統(tǒng)第二課】嵌入式系統(tǒng)的概述(二)——外圍設(shè)備、處理器、ARM、操作系統(tǒng)
下一課:
【小黑嵌入式系統(tǒng)第四課】嵌入式系統(tǒng)硬件平臺(二)——I/O設(shè)備、通信設(shè)備(UART&USB&藍牙)、其他(電源&時鐘&復位&中斷)



一、概述

嵌入式系統(tǒng)的硬件除了核心部件——嵌入式處理器,還包括存儲器系統(tǒng)、外圍接口部件以及連接各種設(shè)備的總線系統(tǒng)。

其中,存儲器是嵌入式系統(tǒng)存放數(shù)據(jù)和程序的功能部件;

而外圍設(shè)備決定了應用于不同領(lǐng)域的嵌入式系統(tǒng)的獨特功能。

【小黑嵌入式系統(tǒng)第三課】嵌入式系統(tǒng)硬件平臺(一)——概述、總線、存儲設(shè)備(RAM&ROM&FLASH),小黑嵌入式小課堂,物聯(lián)網(wǎng),stm32,單片機,原力計劃

嵌入式系統(tǒng)的硬件是 以嵌入式處理器為中心,由存儲器、I/O單元電路、通信模塊、其它外部設(shè)備 等必要的輔助接口組成。

在實際應用中,嵌入式系統(tǒng)硬件配置非常精簡,除了微處理器和基本的外圍電路以外,其余的電路可以根據(jù)需要和成本進行裁剪、定制。

通常,嵌入式系統(tǒng)還包括人機交互界面,用于系統(tǒng)與人的交互。人機界面常常使用鍵盤、液晶屏、觸摸屏等部件,以方便與人的交互操作。

存儲器是構(gòu)成嵌入式系統(tǒng)硬件的必要組成部分。在嵌入式系統(tǒng)中使用的存儲器可以只是內(nèi)部存儲器,也可以包含外部存儲器。

嵌入式處理器工作時必須有附屬電路支持。在設(shè)計其硬件電路時,常常將它們與嵌入式處理器設(shè)計成一個模塊,形成處理器子系統(tǒng)。

嵌入式處理器在功能上與通用處理器的區(qū)別之一在于嵌入式處理器上集成了大量的I/O電路。用戶在開發(fā)時,根據(jù)系統(tǒng)需求選擇某款嵌入式處理器,而不是讓嵌入式處理器另外選擇配合外圍的大量I/O電路。

【小黑嵌入式系統(tǒng)第三課】嵌入式系統(tǒng)硬件平臺(一)——概述、總線、存儲設(shè)備(RAM&ROM&FLASH),小黑嵌入式小課堂,物聯(lián)網(wǎng),stm32,單片機,原力計劃


二、總線

1. 總線的概念

**總線(Bus)**是計算機各種功能部件之間傳輸信息的公共通信干線,它是由導線組成的傳輸線束。根據(jù)所傳輸?shù)男畔⒎N類,計算機的總線可以劃分為 數(shù)據(jù)總線、地址總線和控制總線 ,分別用來傳輸數(shù)據(jù)、數(shù)據(jù)地址和控制信號。

所有微機系統(tǒng)的總線結(jié)構(gòu),不外乎有“馮·諾伊曼”和“哈佛”兩種。

1.1 總線結(jié)構(gòu)
  • 馮·諾伊曼總線結(jié)構(gòu)將程序存儲器和數(shù)據(jù)存儲器合在一起管理,采用同一套地址和數(shù)據(jù)總線對它們進行尋址。因此總線就特別繁忙,成為提高運行速度的“瓶頸”。但在使用上非常靈活。
    【小黑嵌入式系統(tǒng)第三課】嵌入式系統(tǒng)硬件平臺(一)——概述、總線、存儲設(shè)備(RAM&ROM&FLASH),小黑嵌入式小課堂,物聯(lián)網(wǎng),stm32,單片機,原力計劃

  • 哈佛總線結(jié)構(gòu)采用兩套總線分別控制程序存儲器和數(shù)據(jù)存儲器,分別讀取程序代碼和存取數(shù)據(jù)。
    ☆ 降低了總線繁忙程度和指令執(zhí)行的時間。
    ☆ 哈佛結(jié)構(gòu)使得指令的執(zhí)行時間相等,提高了控制性能。
    【小黑嵌入式系統(tǒng)第三課】嵌入式系統(tǒng)硬件平臺(一)——概述、總線、存儲設(shè)備(RAM&ROM&FLASH),小黑嵌入式小課堂,物聯(lián)網(wǎng),stm32,單片機,原力計劃

  • 改進型哈佛總線結(jié)構(gòu) 雖然也使用兩個不同的存儲器:程序存儲器和數(shù)據(jù)存儲器,但合并了兩個存儲器的地址總線,數(shù)據(jù)總線也進行了合并,即原哈佛結(jié)構(gòu)需要4條不同的總線,改進后需要兩條總線。
    ☆ 使用兩個獨立的存儲器模塊,分別存儲程序指令和數(shù)據(jù),每個存儲模塊都不允許指令和數(shù)據(jù)并存,以便實現(xiàn)并行處理;
    ☆ 具有一條獨立的地址總線和一條獨立的數(shù)據(jù)總線,利用公用地址總線訪問兩個存儲模塊(程序存儲模塊和數(shù)據(jù)存儲模塊),公用數(shù)據(jù)總線則用來完成程序存儲模塊或數(shù)據(jù)存儲模塊與CPU之間的數(shù)據(jù)傳輸;
    ☆ 兩條總線由程序存儲器和數(shù)據(jù)存儲器分時共用。 【小黑嵌入式系統(tǒng)第三課】嵌入式系統(tǒng)硬件平臺(一)——概述、總線、存儲設(shè)備(RAM&ROM&FLASH),小黑嵌入式小課堂,物聯(lián)網(wǎng),stm32,單片機,原力計劃

1.2 總線類型
1.2.1 數(shù)據(jù)總線

數(shù)據(jù)總線的寬度又稱為計算機的“位數(shù)”,是計算機系統(tǒng)一個最重要的參數(shù)。原因是數(shù)據(jù)總線的寬度表明了計算機系統(tǒng)能夠一次(單指令)處理的數(shù)據(jù)的范圍,代表了計算機系統(tǒng)處理數(shù)據(jù)的能力。
如:MCS-51單片機的數(shù)據(jù)總線寬度為8位,ARM Cortex-M3的數(shù)據(jù)總線寬度為32位。

1.2.2 程序總線

決定了CPU每次能夠從程序存儲器取出多少位的指令,或者說一條指令中能夠含有多少信息。因此程序總線的寬度在很大程度上決定了計算機系統(tǒng)指令集的效率。

1.2.3 數(shù)據(jù)地址總線

數(shù)據(jù)地址總線配合數(shù)據(jù)總線,對數(shù)據(jù)存儲器進行尋址。其寬度決定了CPU能夠?qū)ぶ返臄?shù)據(jù)存儲器的多少。

1.2.4 程序地址總線

程序地址總線配合程序總線,對程序存儲器進行尋址。程序地址總線的寬度決定了微處理器理論上能夠含有的程序存儲器的多少。

以上概念主要描述的是并行通信總線,對于串行通信總線,則情況會有較多區(qū)別。
不管怎樣,總線是各種功能部件之間傳輸信息的公共通道,總線上所接的功能部件一定是可以多于2個的。

2. 總線協(xié)議
2.1 握手協(xié)議
  • 總線握手協(xié)議的作用是控制每個總線周期中數(shù)據(jù)傳送的開始和結(jié)束,從而實現(xiàn)兩個設(shè)備間協(xié)調(diào)和配合,保證數(shù)據(jù)傳送的正確和可靠。

  • 這是因為總線上連接有多個通信設(shè)備,它們之間若隨意在總線上傳送數(shù)據(jù)必然會導致沖突。
    最簡單的握手使用兩根用來進行握手的電線enq(表示查詢)和ack(表示應答),并使用專用的電線來傳輸數(shù)據(jù)。

  • 握手信號線必須以某種方式的信號變化來表明整個總線傳輸周期的開始和結(jié)束,以及在整個周期內(nèi)每個子周期(若有)的開始和結(jié)束。

總線握手協(xié)議中的基本構(gòu)件是 四周期握手協(xié)議 。

【小黑嵌入式系統(tǒng)第三課】嵌入式系統(tǒng)硬件平臺(一)——概述、總線、存儲設(shè)備(RAM&ROM&FLASH),小黑嵌入式小課堂,物聯(lián)網(wǎng),stm32,單片機,原力計劃

2.2 總線讀寫
  • 微處理器總線在握手基礎(chǔ)上為CPU和系統(tǒng)其它部分建立通信?;镜目偩€操作包括讀和寫。
    【小黑嵌入式系統(tǒng)第三課】嵌入式系統(tǒng)硬件平臺(一)——概述、總線、存儲設(shè)備(RAM&ROM&FLASH),小黑嵌入式小課堂,物聯(lián)網(wǎng),stm32,單片機,原力計劃

  • 總線行為經(jīng)常用時序圖來說明,時序圖表示了總線上的信號如何隨時間變化。
    【小黑嵌入式系統(tǒng)第三課】嵌入式系統(tǒng)硬件平臺(一)——概述、總線、存儲設(shè)備(RAM&ROM&FLASH),小黑嵌入式小課堂,物聯(lián)網(wǎng),stm32,單片機,原力計劃

  • 在許多系統(tǒng)中,總線上也可執(zhí)行突發(fā)數(shù)據(jù)傳輸。

【小黑嵌入式系統(tǒng)第三課】嵌入式系統(tǒng)硬件平臺(一)——概述、總線、存儲設(shè)備(RAM&ROM&FLASH),小黑嵌入式小課堂,物聯(lián)網(wǎng),stm32,單片機,原力計劃

  • 總線事務(wù)的狀態(tài)機是對時序圖的有效補充。
  • 當CPU決定執(zhí)行一個讀事務(wù),它轉(zhuǎn)換到新狀態(tài),并發(fā)給讓設(shè)備正確工作的總線信號;而設(shè)備狀態(tài)轉(zhuǎn)換圖捕獲它這一端的總線協(xié)議狀態(tài)。

【小黑嵌入式系統(tǒng)第三課】嵌入式系統(tǒng)硬件平臺(一)——概述、總線、存儲設(shè)備(RAM&ROM&FLASH),小黑嵌入式小課堂,物聯(lián)網(wǎng),stm32,單片機,原力計劃

2.3 DMA

關(guān)于DMA的文章:【物聯(lián)網(wǎng)】DMA傳輸原理與實現(xiàn)詳解(超詳細)

某些數(shù)據(jù)傳輸可能并不需要CPU介入,如I/O設(shè)備和存儲器之間的數(shù)據(jù)交換。要實現(xiàn)這類操作,就要求有CPU以外的設(shè)備單元能夠控制總線上的操作。

  • 直接存儲器訪問(Direct Memory Access,DMA)允許不由CPU控制的總線讀寫操作。
    雖然名字上有“存儲器”,但DMA也可以適用于映射到地址空間上的別的I/O設(shè)備。
  • DMA使用一種稱為DMA控制器的專用硬件來完成外設(shè)與存儲器之間的高速數(shù)據(jù)傳送。
  • DMA控制器向CPU請求總線控制,當CPU不需使用總線傳輸數(shù)據(jù)時,則DMA控制器得到總線控制權(quán),它能像CPU那樣提供存儲地址和必要的讀寫控制信號,實現(xiàn)直接在設(shè)備和存儲器之間執(zhí)行讀寫操作。

【小黑嵌入式系統(tǒng)第三課】嵌入式系統(tǒng)硬件平臺(一)——概述、總線、存儲設(shè)備(RAM&ROM&FLASH),小黑嵌入式小課堂,物聯(lián)網(wǎng),stm32,單片機,原力計劃
DMA控制器、CPU都可以發(fā)起總線數(shù)據(jù)傳輸,它們被稱為總線主設(shè)備,總線上的其它設(shè)備則稱為總線從設(shè)備。
總線在一段時間內(nèi)只能由一個主設(shè)備控制使用,若多個總線主設(shè)備同時需要使用總線,此時需要“仲裁”,由仲裁器決定哪一個使用。

2.4 多總線系統(tǒng)
  • 一個微處理器系統(tǒng)可能使用多條總線來連接設(shè)備。
    【小黑嵌入式系統(tǒng)第三課】嵌入式系統(tǒng)硬件平臺(一)——概述、總線、存儲設(shè)備(RAM&ROM&FLASH),小黑嵌入式小課堂,物聯(lián)網(wǎng),stm32,單片機,原力計劃
  • 使用這樣的總線配置主要考慮到以下幾個原因:
    1、高速總線通常提供較寬的數(shù)據(jù)連接。
    2、高速總線通常要更昂貴的電路和連接器,可以通過使用較慢的、比較便宜的總線來降低低速設(shè)備成本。
    3、橋允許總線獨立操作,因此可以在I/O操作中提供并行性。
2.5 多總線系統(tǒng)實例

ARM AMBA(Advanced Microcontroller Bus Architecture)總線系統(tǒng)
【小黑嵌入式系統(tǒng)第三課】嵌入式系統(tǒng)硬件平臺(一)——概述、總線、存儲設(shè)備(RAM&ROM&FLASH),小黑嵌入式小課堂,物聯(lián)網(wǎng),stm32,單片機,原力計劃


三、存儲設(shè)備

存儲設(shè)備更加詳細文章:【物聯(lián)網(wǎng)】ROM、RAM和FLASH的區(qū)別

存儲器用來存放計算機工作所必須的數(shù)據(jù)和程序,在嵌入式系統(tǒng)中普遍使用。

嵌入式微處理器在運行時,大部分總線周期都是用于對存儲器的讀/寫訪問。存儲器系統(tǒng)性能的好壞將在很大程度上影響嵌入式系統(tǒng)的性能。

為了追求存儲器的高性能,一方面要從存儲單元的設(shè)計、制造上研究改進(Flash、NVRAM) ;另一方面從存儲器系統(tǒng)的結(jié)構(gòu)上探索、優(yōu)化(3D堆疊,多通道)。

  • 嵌入式系統(tǒng)存儲器子系統(tǒng)的結(jié)構(gòu) :
  • RAM
  • ROM
  • Flash

3.1 嵌入式系統(tǒng)存儲器子系統(tǒng)的結(jié)構(gòu)

  • 嵌入式系統(tǒng)的存儲器子系統(tǒng)與通用計算機的存儲器子系統(tǒng)的功能并無明顯的區(qū)別。
  • 這決定了嵌入式系統(tǒng)的存儲器子系統(tǒng)的設(shè)計指標和方法也可以采用通用計算機的方法,尤其是嵌入通用計算機的大型嵌入式系統(tǒng)更是如此。
  • 存儲器子系統(tǒng)設(shè)計的首要目標是使存儲器在工作速度上很好地與處理器匹配,并滿足各種存取需要。

存儲器子系統(tǒng)設(shè)計的首要目標是使存儲器在工作速度上很好地與處理器匹配,并滿足各種存取需要。

  • 大量使用高速存儲器,使它們在速度上與處理器相吻合,能夠簡便地解決問題,但受到經(jīng)濟上的限制。
    在實際的計算機系統(tǒng)中,總是采用分級的方法來設(shè)計整個存儲器子系統(tǒng)。
  • 全部存儲系統(tǒng)分為四級,即寄存器組、高速緩存、內(nèi)存和外存。它們在存取速度上依次遞減,而在存儲容量上逐級遞增。
    【小黑嵌入式系統(tǒng)第三課】嵌入式系統(tǒng)硬件平臺(一)——概述、總線、存儲設(shè)備(RAM&ROM&FLASH),小黑嵌入式小課堂,物聯(lián)網(wǎng),stm32,單片機,原力計劃
    存儲的分層體系:
    【小黑嵌入式系統(tǒng)第三課】嵌入式系統(tǒng)硬件平臺(一)——概述、總線、存儲設(shè)備(RAM&ROM&FLASH),小黑嵌入式小課堂,物聯(lián)網(wǎng),stm32,單片機,原力計劃
    存儲的分層體系:
    【小黑嵌入式系統(tǒng)第三課】嵌入式系統(tǒng)硬件平臺(一)——概述、總線、存儲設(shè)備(RAM&ROM&FLASH),小黑嵌入式小課堂,物聯(lián)網(wǎng),stm32,單片機,原力計劃
    寄存器組:

寄存器組是最高一級的存儲器。

  • 在計算機設(shè)備中,寄存器組一般是CPU內(nèi)含的,ARM處理器中有37個寄存器。
  • 有些待使用的數(shù)據(jù)或者運算的中間結(jié)果可以暫存在這些寄存器中。
  • 微處理器在對CPU內(nèi)的寄存器讀寫時,速度很快,一般在一個時鐘周期內(nèi)完成。
  • 從總體上說,設(shè)置一系列寄存器是為了盡可能減少微處理器從外部取數(shù)的次數(shù)。
  • 但由于寄存器組是制作在CPU內(nèi)部的,受芯片面積和集成度、以及指令系統(tǒng)的限制,寄存器的數(shù)量不可能做得很多。

高速緩沖存儲器(Cache)

第二級存儲器是高速緩沖存儲器(Cache)。

  • 高速緩存是一種小型、快速的存儲器,其存取速度足以與微處理器相匹配。
  • 高速緩存保存部分內(nèi)存內(nèi)容的拷貝,這部分內(nèi)容應是被高頻率使用的。如果正確使用,它能夠減少內(nèi)存平均訪問時間。

內(nèi)存

第三級是內(nèi)存。

  • 運行的程序和數(shù)據(jù)都放在內(nèi)存中。
  • 如果微處理器的訪問大部分在高速緩存上,內(nèi)存就可以采用速度稍慢的存儲器,對系統(tǒng)性能的影響不會太大,同時又降低了成本。
  • 內(nèi)存除主要使用RAM外,還要使用一定量的ROM。

外存

最低一級存儲器是大容量的外存。

  • 這種外存容量大,但是在存取速度上比內(nèi)存要慢得多。
  • 目前嵌入式系統(tǒng)中常用閃存作為大容量“硬盤”存儲各種程序和數(shù)據(jù)。

3.2 RAM

隨機存取存儲器(Random Access Memory,RAM)能夠隨時在任一地址讀出或?qū)懭雰?nèi)容。

  • RAM的突出優(yōu)點是讀寫方便、使用靈活。缺點是不能長期保存信息,一旦停電,所存信息就會丟失。但維持靜態(tài)數(shù)據(jù)所需的功耗通常較低。
  • RAM用于數(shù)據(jù)的臨時存儲或緩沖存儲,在嵌入式系統(tǒng)中主要用于:
    • 存放當前正在執(zhí)行的程序和數(shù)據(jù),如用戶的調(diào)試程序、程序的中間運算結(jié)果以及掉電時無需保存的I/O數(shù)據(jù)和參數(shù)等。
    • 作為I/O數(shù)據(jù)緩沖存儲器,如顯示輸出緩沖存儲器、鍵盤輸入緩沖存儲器等。
    • 作為函數(shù)調(diào)用時傳遞參數(shù)和返回值的、以及中斷服務(wù)中保護CPU現(xiàn)場信息的棧。

RAM分類:

1、靜態(tài)RAM
  • 靜態(tài)隨機存儲器(Static RAM,SRAM)的存儲單元電路是以雙穩(wěn)態(tài)電路為基礎(chǔ),因此狀態(tài)穩(wěn)定,只要不掉電,信息不會丟失。存儲一位需要花6個晶體管.
    異步SRAM讀寫時序:
    【小黑嵌入式系統(tǒng)第三課】嵌入式系統(tǒng)硬件平臺(一)——概述、總線、存儲設(shè)備(RAM&ROM&FLASH),小黑嵌入式小課堂,物聯(lián)網(wǎng),stm32,單片機,原力計劃
  • SRAM的操作方法有兩種,即讀操作和寫操作。異步SRAM的操作是最簡單的,如下:

異步SRAM上的讀操作方法:

  • 將地址送到地址線上
  • 然后讓CE’=0,啟用SRAM
  • 讓R/W’=1
  • 一定延遲時間后,數(shù)據(jù)通過數(shù)據(jù)信號線輸出。

異步SRAM上的寫操作方法:

  • 將地址送到地址線上

  • 讓CE’=0,啟用SRAM

  • 讓R/W’=0

  • 數(shù)據(jù)送到數(shù)據(jù)線上

  • 讓R/W’=1,在R/W’上升沿數(shù)據(jù)被寫入存儲器。

  • 存儲芯片讀取時間應小于CPU從發(fā)出地址到要求數(shù)據(jù)穩(wěn)定的時間間隔;存儲芯片從片選有效到輸出穩(wěn)定的時間應小于系統(tǒng)自片選有效到CPU要求數(shù)據(jù)穩(wěn)定的時間間隔,或提供外部電路,以產(chǎn)生READY信號,迫使CPU插入等待時鐘Tw (時序匹配) 。若內(nèi)存速度過慢,CPU插入大量等待時鐘Tw ,則內(nèi)存拖慢了整體處理速度(速度匹配)。

  • 例如, Intel 2114-2的讀取時間最大為200 ns,而CPU要求的從地址有效到數(shù)據(jù)穩(wěn)定的時間間隔為150 ns,則不能使用2114-2,可選用比它快的芯片。如果出于價格因素,一定要用2114-2,則需要設(shè)計READY產(chǎn)生電路,以便插入Tw。

2、動態(tài)RAM
  • 動態(tài)隨機存儲器(Dynamic RAM,DRAM)的存儲單元電路以小電容(幾pF~幾十pF)為基礎(chǔ),大容量的DRAM存儲單元一般為1T1C(1晶體管1電容)結(jié)構(gòu),電路簡單、集成度高。

  • 但DRAM即使不掉電也會因小電容放電而丟失信息,需要定時刷新(每行幾us~十幾us的刷新周期),因此在工作時必須配合DRAM控制器。

  • DRAM有很多類型,主要是接口方面的不同,內(nèi)部存儲單元基礎(chǔ)則差別不大。(最老式的)異步接口的有FPM DRAM、EDO DRAM,同步接口的有SDR SDRAM、DDR~DDR6 SDRAM。這些產(chǎn)品均有在產(chǎn)及應用。

【小黑嵌入式系統(tǒng)第三課】嵌入式系統(tǒng)硬件平臺(一)——概述、總線、存儲設(shè)備(RAM&ROM&FLASH),小黑嵌入式小課堂,物聯(lián)網(wǎng),stm32,單片機,原力計劃
對DRAM的操作除了一般的讀寫之外,還有刷新等必需的操作。有了DRAM控制器可以極大地釋放CPU直接操作DRAM的負擔,同時實現(xiàn)高可靠性。

EDO DRAM讀時序
【小黑嵌入式系統(tǒng)第三課】嵌入式系統(tǒng)硬件平臺(一)——概述、總線、存儲設(shè)備(RAM&ROM&FLASH),小黑嵌入式小課堂,物聯(lián)網(wǎng),stm32,單片機,原力計劃

SRAM vs DRAM
  • SRAM不需要刷新電路即能保存它內(nèi)部存儲的數(shù)據(jù),DRAM每隔一段時間,要刷新充電一次,否則內(nèi)部的數(shù)據(jù)即會消失。
  • SRAM速度快,不必配合內(nèi)存刷新電路,可提高整體的工作效率。
  • SRAM集成度較低,相同容量的DRAM內(nèi)存可以設(shè)計為較小的體積,但是SRAM卻需要很大的體積,而且價格較高。
  • 因為DRAM需要定時刷新,消耗能量相對大;而SRAM在系統(tǒng)進入待機工作方式時,只需要微小的待機電流就可以維持數(shù)據(jù)不丟失。但需要注意的是,SRAM的靜態(tài)功耗低,但是工作時動態(tài)功耗不低。
  • 例如:cache追求的是速度所以選擇SRAM,而內(nèi)存則追求容量所以選擇能夠在相同空間中存放更多內(nèi)容并且造價相對低廉的DRAM。

3.3 ROM

只讀存儲器(Read-Only Memory,ROM)中的內(nèi)容一經(jīng)寫入,在工作過程中就只能讀出不能重寫,即使掉電,寫入的內(nèi)容也不會丟失。

  • ROM在嵌入式系統(tǒng)中非常有用,常常用來存放系統(tǒng)軟件(如ROM BIOS)、應用程序等不隨時間改變的代碼或數(shù)據(jù)。
  • ROM可以分為工廠可編程ROM現(xiàn)場可編程ROM兩大類。
    • 工廠可編程ROM(即掩模可編程ROM,Mask-Programmable ROM)是由半導體廠商按照用戶要求掩模制成,之后不能改寫,用戶只能讀出、不能改寫。掩模ROM一般只用于大批量生產(chǎn)的計算機產(chǎn)品中,在產(chǎn)品研制和實驗室小批量生產(chǎn)時,應選用現(xiàn)場可編程ROM。
    • 有幾種不同類型的現(xiàn)場可編程ROM(Field Programmable ROM),一些只可編程一次(OTP),而另一些可以被重復編程。
      • 可編程ROM(Programmable ROM),為一般的術(shù)語。

      • 紫外線可擦可編程ROM(UV Erasable Programmable ROM, UV_EPROM)
        【小黑嵌入式系統(tǒng)第三課】嵌入式系統(tǒng)硬件平臺(一)——概述、總線、存儲設(shè)備(RAM&ROM&FLASH),小黑嵌入式小課堂,物聯(lián)網(wǎng),stm32,單片機,原力計劃

      • 電可擦可編程ROM(Electrical Erasable Programmable ROM, EEPROM)

3.4 Flash

快閃存儲器、閃存(Flash Memory)是一種電可擦可編程ROM存儲器,現(xiàn)今被廣泛使用于內(nèi)存和外存。

  • Flash的特點:

    • 在不加電情況下能長期保存信息,同時又能在線進行快速擦除與重寫。
    • 從軟件的觀點來看,由于可以使用一套相似的軟件接口,F(xiàn)lash和EEPROM的技術(shù)十分類似(雖然電路結(jié)構(gòu)不同)。
  • 閃存與 EEPROM的區(qū)別:

    • 有些EEPROM擦寫和編程時要加高電壓(如12V),這意味著重新編程時必須將芯片從系統(tǒng)中取下來;而Flash使用標準供電電壓擦寫和編程,允許芯片在標準系統(tǒng)內(nèi)部編程(在系統(tǒng)可編程ISP、在應用可編程IAP) 。
    • EEPROM可以單獨擦寫某個存儲單元,操作起來很方便;Flash則必須擦除一個存儲塊,然后再寫入新數(shù)據(jù)到這個塊中,因此需要保存和重寫此塊中被迫被擦除的內(nèi)容。
    • 大部分Flash允許某些塊被保護,這一點對存儲空間有限的嵌入式系統(tǒng)非常有用,即將引導代碼放進保護塊內(nèi)而允許更新設(shè)備上其它的存儲塊。
    • EEPROM通常容量較小,F(xiàn)lash則可以有非常大容量。

Flash與各種存儲器技術(shù)的比較:
【小黑嵌入式系統(tǒng)第三課】嵌入式系統(tǒng)硬件平臺(一)——概述、總線、存儲設(shè)備(RAM&ROM&FLASH),小黑嵌入式小課堂,物聯(lián)網(wǎng),stm32,單片機,原力計劃

  • Flash的分類:

    • NOR Flash是在EEPROM的基礎(chǔ)上發(fā)展起來的,它的存儲單元由N-MOS構(gòu)成,而連接N-MOS單元的線是獨立的。NOR Flash可以隨機讀取任意單元的內(nèi)容,有SRAM形式的接口,適合于程序代碼的并行讀取,常用于制作計算機的BIOS存儲器和微控制器的內(nèi)部存儲器等。
    • NAND Flash是將幾個N-MOS單元用同一根線連接起來,適合按順序讀取存儲單元的內(nèi)容,適合于數(shù)據(jù)或文件的存儲。
  • Flash的操作包括讀出和寫入:

    • 讀操作:處理器只要提供地址、讀操作信號和片選信號,存儲器就返回在該位置保存的數(shù)據(jù)。大部分的Flash在系統(tǒng)重啟時自動進入讀狀態(tài),啟動讀狀態(tài)不需要特別的初始化序列。
    • 寫操作:把程序或數(shù)據(jù)寫入Flash的過程也叫作編程。Flash的編程有兩種方式,一種是在線編程,一種是離線編程。
  • Flash的編程:

    • 存儲位置必須在重寫操作之前被擦除。如果舊的數(shù)據(jù)沒有被擦除,寫操作的結(jié)果會是新舊數(shù)值的某種邏輯組合,存儲的數(shù)據(jù)通常是錯誤的。
    • 一次至少有一個扇區(qū)或者塊被擦除,而不可能只是擦除一個單個的字節(jié)。
    • 擦除舊數(shù)據(jù)和寫入新數(shù)據(jù)的操作過程是隨著芯片制造商的不同而異的。因此針對Flash編程,提供一個軟件層來完成擦除和寫入操作比較方便,這個軟件層叫作Flash的驅(qū)動程序。
  • Flash的嵌入式應用:文章來源地址http://www.zghlxwxcb.cn/news/detail-722818.html

    • Flash文件系統(tǒng):因為Flash提供了可被重寫的非易失性存儲,因此它可以被看作類似于硬盤的存儲系統(tǒng)。在作為文件系統(tǒng)的情況下,由驅(qū)動程序提供的函數(shù)要更加面向文件,提供諸如open()、close()、read()、write()等標準文件系統(tǒng)函數(shù)。Flash文件系統(tǒng)的組織與普通的外存基本相同。
    • 便攜設(shè)備的存儲裝置:隨著數(shù)碼產(chǎn)品的飛速發(fā)展,利用其大容量非易失的特點,F(xiàn)lash作為一種最常用的存儲裝置應用于數(shù)碼相機(如CF卡、SD卡、記憶棒等)、MP3等數(shù)碼產(chǎn)品中。但有的設(shè)備并不一定需要將Flash組織成文件系統(tǒng)。
    • 內(nèi)存中的ROM:存儲程序代碼和常數(shù),還可以實現(xiàn)ISP或IAP。

到了這里,關(guān)于【小黑嵌入式系統(tǒng)第三課】嵌入式系統(tǒng)硬件平臺(一)——概述、總線、存儲設(shè)備(RAM&ROM&FLASH)的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔相關(guān)法律責任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包