第4章 嵌入式系統(tǒng)的存儲(chǔ)器系統(tǒng)_第1頁(yè)
第4章 嵌入式系統(tǒng)的存儲(chǔ)器系統(tǒng)_第2頁(yè)
第4章 嵌入式系統(tǒng)的存儲(chǔ)器系統(tǒng)_第3頁(yè)
第4章 嵌入式系統(tǒng)的存儲(chǔ)器系統(tǒng)_第4頁(yè)
第4章 嵌入式系統(tǒng)的存儲(chǔ)器系統(tǒng)_第5頁(yè)
已閱讀5頁(yè),還剩32頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

第4章嵌入式系統(tǒng)

的存儲(chǔ)器系統(tǒng)教學(xué)目的1)了解常見(jiàn)嵌入式系統(tǒng)存儲(chǔ)器;2)學(xué)習(xí)ROM和SRAM型存儲(chǔ)器擴(kuò)展方法;3)學(xué)習(xí)NORFLASH和NANDFLASH存儲(chǔ)器接口方法;4)學(xué)習(xí)SDRAM存儲(chǔ)器接口方法4.1存儲(chǔ)器系統(tǒng)概述4.1.1存儲(chǔ)器系統(tǒng)的層次結(jié)構(gòu)4.1.2高速緩沖存儲(chǔ)器在主存儲(chǔ)器和CPU之間采用高速緩沖存儲(chǔ)器(cache)用來(lái)提高存儲(chǔ)器系統(tǒng)的性能。cache能夠減少內(nèi)存平均訪(fǎng)問(wèn)時(shí)間。指令預(yù)取時(shí)和數(shù)據(jù)讀寫(xiě)時(shí)使用同一個(gè)cache-統(tǒng)一的cache。指令預(yù)取時(shí)和數(shù)據(jù)讀寫(xiě)時(shí)使用不同的cache-獨(dú)立的cache。

(S3C2410采用此種結(jié)構(gòu))4.1.3存儲(chǔ)管理單元(MMU)MMU(MemoryManageUnit,存儲(chǔ)管理單元)MMU主要完成以下工作:(1)虛擬存儲(chǔ)空間到物理存儲(chǔ)空間的映射。(2)存儲(chǔ)器訪(fǎng)問(wèn)權(quán)限的控制。(3)設(shè)置虛擬存儲(chǔ)空間的緩沖特性。嵌入式系統(tǒng)中常常采用頁(yè)式存儲(chǔ)管理。頁(yè)式存儲(chǔ)管理:把虛擬地址空間分成一個(gè)個(gè)固定大小的塊,每一塊稱(chēng)為一頁(yè),把物理內(nèi)存的地址空間也分成同樣大小的頁(yè)。MMU實(shí)現(xiàn)的就是從虛擬地址到物理地址的轉(zhuǎn)換。頁(yè)表是存儲(chǔ)在內(nèi)存中的一個(gè)表,頁(yè)表用來(lái)管理這些頁(yè)。頁(yè)表的每一行對(duì)應(yīng)于虛擬存儲(chǔ)空間的一個(gè)頁(yè),該行包含了該虛擬內(nèi)存頁(yè)對(duì)應(yīng)的物理內(nèi)存頁(yè)的地址、該頁(yè)的方位權(quán)限和該頁(yè)的緩沖特性等。從虛擬地址到物理地址的變換過(guò)程就是查詢(xún)頁(yè)表的過(guò)程。例如在ARM嵌入式系統(tǒng)中,使用系統(tǒng)控制協(xié)處理器CP15的寄存器C2來(lái)保存頁(yè)表的基地址。嵌入式系統(tǒng)支持的內(nèi)存塊大小有以下幾種:段(section)大小為1MB的內(nèi)存塊;大頁(yè)(LargePages)大小為64KB的內(nèi)存塊;小頁(yè)(SmallPages)大小為4KB的內(nèi)存塊;極小頁(yè)(TinyPages)大小為1KB的內(nèi)存塊。極小頁(yè)只能以1KB大小為單位不能再細(xì)分,而大頁(yè)和小頁(yè)有些情況下可以在進(jìn)一步的劃分。MMU中的域指的是一些段、大頁(yè)或者小頁(yè)的集合。每個(gè)域的訪(fǎng)問(wèn)控制特性都是由芯片內(nèi)部的寄存器中的相應(yīng)控制位來(lái)控制的。例如在ARM嵌入式系統(tǒng)中,每個(gè)域的訪(fǎng)問(wèn)控制特性都是由CP15中的寄存器C3中的兩位來(lái)控制的。MMU中的快速上下文切換技術(shù)(FastContextSwitchExtension,F(xiàn)CSE)通過(guò)修改系統(tǒng)中不同進(jìn)程的虛擬地址,避免在進(jìn)行進(jìn)程間切換時(shí)造成的虛擬地址到物理地址的重映射,從而提高系統(tǒng)的性能。4.2.1存儲(chǔ)器部件的分類(lèi)1.按在系統(tǒng)中的地位分類(lèi)主存儲(chǔ)器(MainMemory簡(jiǎn)稱(chēng)主存或內(nèi)存)輔助存儲(chǔ)器(AuxiliaryMemory,SecondaryMemory,簡(jiǎn)稱(chēng)輔存或外存)。4.2嵌入式系統(tǒng)存儲(chǔ)設(shè)備分類(lèi)內(nèi)存內(nèi)存是計(jì)算機(jī)主機(jī)的一個(gè)組成部分,一般都用快速存儲(chǔ)器件來(lái)構(gòu)成,內(nèi)存的存取速度很快,但內(nèi)存空間的大小受到地址總線(xiàn)位數(shù)的限制。內(nèi)存通常用來(lái)容納當(dāng)前正在使用的或要經(jīng)常使用的程序和數(shù)據(jù)CPU可以直接對(duì)內(nèi)存進(jìn)行訪(fǎng)問(wèn)。系統(tǒng)軟件中如引導(dǎo)程序、監(jiān)控程序或者操作系統(tǒng)中的基本輸入/輸出部分BIOS都是必須常駐內(nèi)存。更多的系統(tǒng)軟件和全部應(yīng)用軟件則在用到時(shí)由外存?zhèn)魉偷絻?nèi)存。外存外存存放的是相對(duì)來(lái)說(shuō)不經(jīng)常使用的程序和數(shù)據(jù)容量大,速度相對(duì)內(nèi)存較慢常見(jiàn)的外存有軟盤(pán)、硬盤(pán)、U盤(pán)、光盤(pán)等CPU要使用外存的這些信息時(shí),必須通過(guò)專(zhuān)門(mén)的設(shè)備將信息先傳送到內(nèi)存中2.按存儲(chǔ)介質(zhì)分類(lèi)磁存儲(chǔ)器(MagneticMemory)半導(dǎo)體存儲(chǔ)器(SemiconductorMemory)光存儲(chǔ)器(OpticalMemory)激光光盤(pán)存儲(chǔ)器(LaserOpticalDisk)。3.按信息存取方式分類(lèi)RAM:隨機(jī)存取存儲(chǔ)器(RandomAccessMemory)

運(yùn)行期間可讀、可寫(xiě)ROM:只讀存儲(chǔ)器(ReadOnlyMemory)

運(yùn)行期間只能讀出信息,不能隨時(shí)寫(xiě)入信息4.2.2存儲(chǔ)器的組織和結(jié)構(gòu)容量是描述存儲(chǔ)器的最基本參數(shù),如1MB。存儲(chǔ)器容量的表示不唯一,不同的數(shù)據(jù)寬度有不同容量。在存儲(chǔ)器內(nèi)部,數(shù)據(jù)是存放在二維陣列存儲(chǔ)單元中。n位地址被分成行地址和列地址(n=r十c)。r是行地址數(shù),c是列地址數(shù)。行列選定一個(gè)特定存儲(chǔ)單元。嵌入式系統(tǒng)的存儲(chǔ)器與通用系統(tǒng)的存儲(chǔ)器有所不同,通常由ROM、RAM、EPROM等組成。嵌入式存儲(chǔ)器一般采用存儲(chǔ)密度較大的存儲(chǔ)器芯片,存儲(chǔ)容量與應(yīng)用的軟件大小相匹配。4.2.3常見(jiàn)的嵌入式系統(tǒng)存儲(chǔ)設(shè)備1.RAM(隨機(jī)存儲(chǔ)器)RAM可以被讀和寫(xiě),地址可以以任意次序被讀。常見(jiàn)RAM的種類(lèi)有SRAM(StaticRAM,靜態(tài)隨機(jī)存儲(chǔ)器)DRAM(DynamicRAM,動(dòng)態(tài)隨機(jī)存儲(chǔ)器)DDRAM(DoubleDataRateSDRAM,雙倍速率隨機(jī)存儲(chǔ)器)。SRAM比DRAM運(yùn)行速度快SRAM比DRAM耗電多DRAM需要周期性刷新DDRAM是RAM的下一代產(chǎn)品,200MHz時(shí)鐘頻率時(shí)內(nèi)存帶寬可達(dá)3.2GB/s海量

2.ROM(只讀存儲(chǔ)器)ROM斷電后數(shù)據(jù)不丟失,但速度較慢,適合存儲(chǔ)需長(zhǎng)期保留的不變數(shù)據(jù)。在嵌入式系統(tǒng)中,ROM用于固定數(shù)據(jù)和程序。常見(jiàn)ROM有:MaskROM(掩模ROM,廠(chǎng)家一次性寫(xiě)入用戶(hù)無(wú)法修改)PROM(ProgrammableROM,可編程ROM,用戶(hù)一次性寫(xiě)入)EPROM(ErasableProgrammableROM,可擦寫(xiě)ROM,紫外光可重復(fù)擦除和寫(xiě)入)EEPROM(電可擦除可編程ROM,也可表示為E2PROM,電擦除)FlashROM(閃速存儲(chǔ)器,可快速讀取,電可擦寫(xiě)可編程)3.FlashMemoryFlashmemory(閃速存儲(chǔ)器)是一種非易失性存儲(chǔ)器(NVM:Non-VolatileMemory)是嵌入式系統(tǒng)中重要的組成部分,用來(lái)存儲(chǔ)程序和數(shù)據(jù),掉電后數(shù)據(jù)不會(huì)丟失根據(jù)結(jié)構(gòu)不同分成NORFlash和NANDFlash兩種FlashMemory在物理結(jié)構(gòu)上分成若干個(gè)區(qū)塊,區(qū)塊之間相互獨(dú)立NORFlash把整個(gè)存儲(chǔ)區(qū)分成若干個(gè)扇區(qū)(Sector);NANDFlash把整個(gè)存儲(chǔ)區(qū)分成若干個(gè)塊(Block);可以對(duì)以塊或扇區(qū)為單位的內(nèi)存單元進(jìn)行擦寫(xiě)和編程。NORFlash和NANDFlash特性NANDFlash執(zhí)行擦除操作是十分簡(jiǎn)單的,而NOR型內(nèi)存則要求在進(jìn)行擦除前先要將目標(biāo)塊內(nèi)所有的位都寫(xiě)為0擦除時(shí)間:NORFlash執(zhí)行一個(gè)寫(xiě)入/擦除操作的時(shí)間為5s;NANDFlash相同操作最多只需要4ms(快小+高速)NORFlash的讀速度比NANDFlash稍快一些,NANDFlash的寫(xiě)入速度比NORFlash快很多。應(yīng)用程序可以直接在NORFlash內(nèi)運(yùn)行,不需要再把代碼讀到系統(tǒng)RAM中運(yùn)行。NANDFlash的隨機(jī)讀取能力差,適合大量數(shù)據(jù)的連續(xù)讀取NORFlash帶有SRAM接口,有足夠的地址引腳來(lái)尋址,可以很容易地存取其內(nèi)部的每一個(gè)字節(jié)。NANDFlash結(jié)構(gòu)可以達(dá)到高存儲(chǔ)密度,并且寫(xiě)入和擦除的速度也很快,應(yīng)用NANDFlash的困難在于需要特殊的系統(tǒng)接口。NANDFlash地址、數(shù)據(jù)和命令共用8位總線(xiàn)/16位總線(xiàn),每次讀寫(xiě)都要使用復(fù)雜的I/O接口串行地存取數(shù)據(jù)除了NORFlash的讀,F(xiàn)lashMemory的其他操作不能像RAM那樣,直接對(duì)目標(biāo)地址進(jìn)行總線(xiàn)操作。例如執(zhí)行一次寫(xiě)操作,它必須輸入一串特殊的指令(NORFlash),或者完成一段時(shí)序(NANDFlash)才能將數(shù)據(jù)寫(xiě)入到FlashMemory中NORFlash容量通常在1MB~8MB之間。而NANDFlash用在8MB以上的產(chǎn)品當(dāng)中。NORFlash主要應(yīng)用在代碼存儲(chǔ)介質(zhì)中,NANDFlash適用于數(shù)據(jù)存儲(chǔ)。在NANDFlash中每個(gè)塊的最大擦寫(xiě)次數(shù)是一百萬(wàn)次,而NORFlash的擦寫(xiě)次數(shù)是十萬(wàn)次。4.3NORFlash接口電路4.3.1NORFlash存儲(chǔ)器Am29LV160DAMD公司的一款NORFlash存儲(chǔ)器存儲(chǔ)容量為2M×8Bit/1M×16Bit接口與CMOSI/O兼容工作電壓為2.7~3.6V讀操作電流為9mA編程和擦除操作電流為20mA待機(jī)電流為200nA采用FBGA-48、TSOP-48、SO-44三種封裝形式。Am29LV160D僅需3.3V電壓即可完成在系統(tǒng)的編程與擦除操作,通過(guò)對(duì)其內(nèi)部的命令寄存器寫(xiě)入標(biāo)準(zhǔn)的命令序列,可對(duì)Flash進(jìn)行編程(燒寫(xiě))、整片擦除、按扇區(qū)擦除,以及其他操作。以16位(字模式)數(shù)據(jù)寬度的方式工作。引腳類(lèi)型功能A19~A0輸入地址輸入。提供存儲(chǔ)器地址DQ14~DQ0輸入/輸出數(shù)據(jù)輸入/輸出DQ15/A-1輸入/輸出在字模式,DQ15為數(shù)據(jù)輸入/輸出;在字節(jié)模式,A-1為L(zhǎng)SB地址輸入BYTE#輸入選擇8bit或者16bit模式CE#輸入片選。當(dāng)CE#為低電平時(shí),芯片有效OE#輸入輸出使能。當(dāng)OE#為低電平時(shí),輸出有效WE#輸入寫(xiě)使能,低電平有效,控制寫(xiě)操作RESET#輸入硬件復(fù)位引腳端,低電平有效RY/BY#輸出就緒/忙標(biāo)志信號(hào)輸出,SO-44封裝無(wú)此引腳端VCC電源3V電源電壓輸入VSS地器件地NC未連接。空腳Am29LV160D的邏輯框圖表4.3.1Am29LV160D引腳端功能4.3.2S3C2410A與NORFlash存儲(chǔ)器的接口電路

Flash存儲(chǔ)器在系統(tǒng)中通常用于存放程序代碼,系統(tǒng)上電或復(fù)位后從此獲取指令并開(kāi)始執(zhí)行,應(yīng)將存有程序代碼的Flash存儲(chǔ)器配置到Bank0S3C2410A的nGCS0接至Am29LV160D的CE#(nCE)端Am29LV160D的OE#(nOE)端接S3C2410X的nOE;WE#(nXE)端S3C2410X的nWE相連;地址總線(xiàn)A19~A0與S3C2410X的地址總線(xiàn)ADDR20~ADDR1(A20~A1)相連;16位數(shù)據(jù)總線(xiàn)DQ15~DQ0與S3C2410X的低16位數(shù)據(jù)總線(xiàn)DATA15~DATA0(D15~D0)相連。[不使用NANDFlash作為啟動(dòng)ROM][使用NANDFlash作為啟動(dòng)ROM]注意:①SROM表示是ROM或SRAM類(lèi)型的存儲(chǔ)器;②SFR指特殊功能寄存器。圖4.3.2S3C2410A與Am29LV160D的接口電路4.4NANDFlash接口電路4.4.1S3C2410ANANDFlash控制器1.S3C2410ANANDFlash控制器特性NANDFlash模式:支持讀/擦除/編程N(yùn)ANDFlash存儲(chǔ)器。自動(dòng)啟動(dòng)模式:復(fù)位后,啟動(dòng)代碼被傳送到Steppingstone中。傳送完畢后,啟動(dòng)代碼在Steppingstone中執(zhí)行。具有硬件ECC產(chǎn)生模塊(硬件生成校驗(yàn)碼和通過(guò)軟件校驗(yàn))。在NANDFlash啟動(dòng)后,Steppingstone4KB內(nèi)部SRAM緩沖器可以作為其他用途使用。

為了支持NANDFlash的啟動(dòng)裝載(bootloader),S3C2410A配置了一個(gè)叫做“Steppingstone”的內(nèi)部SRAM緩沖器。當(dāng)系統(tǒng)啟動(dòng)時(shí),NANDFlash存儲(chǔ)器的前4KB將被自動(dòng)加載到Steppingstone中,然后系統(tǒng)自動(dòng)執(zhí)行這些載入的啟動(dòng)代碼。在一般情況下,啟動(dòng)代碼將復(fù)制NANDFlash的內(nèi)容到SDRAM中。在復(fù)制完成后,將在SDRAM中執(zhí)行主程序。2.S3C2410ANANDFlash控制器結(jié)構(gòu)

圖4.4.1NANDFlash控制器內(nèi)部結(jié)構(gòu)方框圖圖4.4.2NANDFlash的操作模式NANDFlash的工作模式如圖4.4.2所示。

自動(dòng)啟動(dòng)模式的時(shí)序如下:(1)完成復(fù)位;(2)當(dāng)自動(dòng)啟動(dòng)模式使能時(shí),首先將NANDFlash存儲(chǔ)器的前4KB內(nèi)容自動(dòng)復(fù)制到Steppingstone4KB內(nèi)部緩沖器中;(3)Steppingstone映射到nGCSO;(4)CPU開(kāi)始執(zhí)行在Steppingstone4KB內(nèi)部緩沖器中的啟動(dòng)代碼。注意:在自動(dòng)啟動(dòng)模式,不進(jìn)行ECC檢測(cè)。因此,應(yīng)確保NANDFlash的前4KB不能有位錯(cuò)誤。NANDFlash模式配置:(1)利用NFCONF寄存器設(shè)置NANDFlash配置;(2)寫(xiě)NANDFlash命令到NFCMD寄存器;(3)寫(xiě)NANDFlash地址到NFADDR寄存器;(4)在檢查NANDFlash狀態(tài)時(shí),利用NFSTAT寄存器讀/寫(xiě)數(shù)據(jù)。在讀操作之前或者編程操作之后應(yīng)該檢查R/nB信號(hào)。表4.4.1NANDFlash控制器的引腳配置引腳配置D[7:0]數(shù)據(jù)/命令/地址輸入/輸出端口(用數(shù)據(jù)總線(xiàn)分派)CLE命令鎖存使能(輸出)ALE地址鎖存使能(輸出)nFCENANDFlash芯片使能(輸出)nFRENANDFlash讀使能(輸出)nFWENANDFlash寫(xiě)使能(輸出)R/nBNANDFlash準(zhǔn)備就緒/忙使能(輸出)4.4.2S3C2410A與NANDFlash存儲(chǔ)器的接口電路與NORFlash存儲(chǔ)器相比,NANDFlash的接口相對(duì)比較復(fù)雜。一些嵌入式處理器芯片內(nèi)部配置了專(zhuān)門(mén)的NANDFlash控制器,如S3C2410A。K9F1208UDM-YCB0的存儲(chǔ)容量為64M字節(jié)數(shù)據(jù)總線(xiàn)寬度為8位工作電壓為2.7V~3.6V僅需單3.3V電壓即可完成在系統(tǒng)的編程與擦除操作表4.4.3K9F1208UDM的引腳功能引腳類(lèi)型功能I/O7~I(xiàn)/O0輸入/輸出數(shù)據(jù)輸入輸出、控制命令和地址的輸入CLE輸入命令鎖存信號(hào)ALE輸入地址鎖存信號(hào)/CE輸入芯片使能信號(hào)/RE輸入讀有效信號(hào)/WE輸入寫(xiě)有效信號(hào)/WP輸入寫(xiě)保護(hù)信號(hào)R/nB輸出就緒/忙標(biāo)志信號(hào)輸出Vcc電源電源電壓2.7V~3.3VVss接地器件地CLE有效時(shí),鎖存在I/O口上的是控制命令字;ALE有效時(shí),鎖存在I/O口上的是地址;/RE或/WE有效時(shí),鎖存的是數(shù)據(jù)這種一口多用的方式可以大大減少總線(xiàn)的數(shù)目,只是控制方式略微有些復(fù)雜。S3C2410X處理器的NANDFlash控制器可以解決這個(gè)問(wèn)題。圖4.4.4S3C2410A與K9F1208UDM-YCB0接口電路4.5SDRAM接口電路SDRAM可讀/可寫(xiě),掉電不保持?jǐn)?shù)據(jù),存取速度大大高于Flash存儲(chǔ)器。在嵌入式系統(tǒng)中,SDRAM主要用做程序的運(yùn)行空間、數(shù)據(jù)及堆棧區(qū)。當(dāng)系統(tǒng)啟動(dòng)時(shí),CPU首先從復(fù)位地址0x0處讀取啟動(dòng)代碼,在完成系統(tǒng)的初始化后,程序代碼一般應(yīng)調(diào)入SDRAM中運(yùn)行,以提高系統(tǒng)的運(yùn)行速度。同時(shí),系統(tǒng)及用戶(hù)堆棧、運(yùn)行數(shù)據(jù)也都放在SDRAM中。SDRAM為避免數(shù)據(jù)丟失,必須定時(shí)刷新。要求微處理器具有刷新控制邏輯,或在系統(tǒng)中另外加入刷新控制邏輯電路。S3C2410A在片內(nèi)具有獨(dú)立的SDRAM刷新控制邏輯,可方便地與SDRAM接口。目前常用的SDRAM為8位/16位的數(shù)據(jù)寬度,工作電壓一般為3.3V。主要的生產(chǎn)廠(chǎng)商為HYUNDAI,Winbond等。HY57V561620存儲(chǔ)容量為4組×64M位16位數(shù)據(jù)寬度。工作電壓為3.3V常見(jiàn)封裝為T(mén)SOP-54兼容LVTTL接口支持自動(dòng)刷新(Auto-Refresh)和自刷新(Self-Refresh)表4.4.4HY57V561620引腳功能引腳類(lèi)型功能CLK輸入時(shí)鐘,芯片時(shí)鐘輸入。所有的輸入中CLK的上升沿有效CKE輸入時(shí)鐘使能,片內(nèi)時(shí)鐘信號(hào)控制

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論