www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

當(dāng)前位置:首頁 > 嵌入式 > 嵌入式硬件

隨著相關(guān)技術(shù)的迅速發(fā)展,系統(tǒng)的功能越來越強(qiáng)大,應(yīng)用接口更加豐富,根據(jù)實(shí)際應(yīng)用的需要設(shè)計(jì)出特定的最小系統(tǒng)和應(yīng)用系統(tǒng),是系統(tǒng)設(shè)計(jì)的關(guān)鍵。目前在系統(tǒng)開發(fā)的過程中,開發(fā)者往往把大量精力投入到微處理器MPU(Micro Processing Unit)與眾多外設(shè)的連接方式以及應(yīng)用代碼的開發(fā)之中,而忽視了對(duì)系統(tǒng)最基本、最核心部分的研究。

當(dāng)前在領(lǐng)域中,ARM(Advanced RISC Machines)處理器被廣泛應(yīng)用于各種設(shè)備中。由于ARM體系結(jié)構(gòu)類似并且具有通用的外圍電路,同時(shí)ARM內(nèi)核的最小系統(tǒng)的設(shè)計(jì)原則及方法基本相同,這使得對(duì)最小系統(tǒng)的研究在整個(gè)系統(tǒng)的開發(fā)中具有著至關(guān)重要的意義。本文以基于ARM的最小系統(tǒng)為平臺(tái),從硬件和軟件兩方面對(duì)最小系統(tǒng)的架構(gòu)進(jìn)行了研究,硬件方面主要介紹了arm處理器與典型外部存儲(chǔ)器的接口技術(shù),軟件方面重點(diǎn)就最小系統(tǒng)的啟動(dòng)架構(gòu)做了詳細(xì)分析。

2. 最小系統(tǒng)

最小系統(tǒng)即是在盡可能減少上層應(yīng)用的情況下,能夠使系統(tǒng)運(yùn)行的最小化模塊配置。對(duì)于一個(gè)典型的最小系統(tǒng),以ARM處理器為例,其構(gòu)成模塊及其各部分功能如圖1所示,其中arm微處理器、FLASH和SDRAM模塊是最小系統(tǒng)的核心部分。

時(shí)鐘模塊——通常經(jīng)arm內(nèi)部鎖相環(huán)進(jìn)行相應(yīng)的倍頻,以提供系統(tǒng)各模塊運(yùn)行所需的時(shí)鐘頻率輸入

Flash存儲(chǔ)模塊——存放啟動(dòng)代碼、操作系統(tǒng)和用戶應(yīng)用程序代碼

SDRAM模塊——為系統(tǒng)運(yùn)行提供動(dòng)態(tài)存儲(chǔ)空間,是系統(tǒng)代碼運(yùn)行的主要區(qū)域

JTAG模塊——實(shí)現(xiàn)對(duì)程序代碼的下載和調(diào)試

UART模塊——實(shí)現(xiàn)對(duì)調(diào)試信息的終端顯示

復(fù)位模塊——實(shí)現(xiàn)對(duì)系統(tǒng)的復(fù)位

3. 外存儲(chǔ)器接口技術(shù)

arm處理器與外部存儲(chǔ)器(Flash和SDRAM)的接口技術(shù)是最小系統(tǒng)硬件設(shè)計(jì)的關(guān)鍵。根據(jù)需要選擇合理的接口方式,可以有效的提升系統(tǒng)的整體性能。

3.1常用外存儲(chǔ)器簡介

(1)Nor Flash與Nand Flash

Nor Flash也稱為線性Flash,可靠性高、隨機(jī)讀取速度快,具有芯片內(nèi)執(zhí)行(XIP, eXecute In Place)的特點(diǎn),這樣應(yīng)用程序可以直接在Flash閃存內(nèi)運(yùn)行,不必再把代碼讀到系統(tǒng)RAM中。常用在擦除和編程操作較少而直接執(zhí)行代碼的場(chǎng)合。

Nand Flash則是高數(shù)據(jù)存儲(chǔ)密度的理想解決方案,一般用于數(shù)據(jù)存儲(chǔ)和文件存儲(chǔ),以塊為單位進(jìn)行擦除,具有擦除速度快的優(yōu)點(diǎn)。

(2)同步動(dòng)態(tài)存儲(chǔ)器SDRAM

SDRAM(Synchronous Dynamic Random Access Memory)是在早期DRAM的基礎(chǔ)上改進(jìn)而來的,它是同步內(nèi)存,并在接口信號(hào)中引入了CLK信號(hào),所有數(shù)據(jù)、地址和控制信號(hào)都是和CLK上升沿對(duì)齊的。此外SDRAM還在內(nèi)部引入了一個(gè)命令控制器,處理器訪問SDRAM都是通過向命令控制器發(fā)送命令來實(shí)現(xiàn)的。

3.2arm處理器與Flash接口技術(shù)

3.2.1arm處理器與Nor Flash接口技術(shù)

Nor Flash 帶有SRAM接口,有足夠的地址引腳,可以很容易的對(duì)存儲(chǔ)器內(nèi)部的存儲(chǔ)單元進(jìn)行直接尋址。在實(shí)際的系統(tǒng)中,可以根據(jù)需要選擇ARM處理器與Nor Flash的連接方式。圖2給出了最小系統(tǒng)在包含兩塊Nor Flash的情況下,arm處理器與Nor Flash兩種不同的連接方式。

1)雙Flash獨(dú)立片選

該方式是把兩個(gè)Nor Flash芯片各自作為一個(gè)獨(dú)立的單元進(jìn)行處理。根據(jù)不同的應(yīng)用需要,可以在一塊Flash中存放啟動(dòng)代碼,而在另一塊Flash中建立文件系統(tǒng),存放應(yīng)用代碼。該方式操作方便,易于管理。

(2)雙Flash統(tǒng)一片選

該方式是把兩個(gè)Nor Flash芯片合為一個(gè)單元進(jìn)行處理,arm處理器將它們作為一個(gè)并行的處理單元來訪問,本例是將兩個(gè)8bit的Nor Flash芯片SST39VF1601用作一個(gè)16bit單元來進(jìn)行處理。對(duì)于N(N>2)塊Flash的連接方式可以此作為參考。

3.2.2arm處理器與Nand Flash接口技術(shù)

Nand Flash接口信號(hào)比較少,地址,數(shù)據(jù)和命令總線復(fù)用。Nand Flash的接口本質(zhì)上是一個(gè)I/O接口,系統(tǒng)對(duì)Nand Flash進(jìn)行數(shù)據(jù)訪問的時(shí)候,需要先向Nand Flash發(fā)出相關(guān)命令和參數(shù),然后再進(jìn)行相應(yīng)的數(shù)據(jù)操作。arm處理器與Nand Flash的連接主要有三種方式,如圖3所示:

運(yùn)用GPIO管腳方式去控制Nand Flash的各個(gè)信號(hào),在速度要求相對(duì)較低的時(shí)候,能夠較充分的發(fā)揮NAND設(shè)備的性能。它在滿足NAND設(shè)備時(shí)域需求方面將會(huì)有很大的便利,使得arm處理器可以很容易的去控制NAND設(shè)備。該方式需要處理器提供充足的GPIO。

(2)運(yùn)用邏輯運(yùn)算方式進(jìn)行連接

在該方式下,處理器的讀和寫使能信號(hào)通過與片選信號(hào)CS進(jìn)行邏輯運(yùn)算后去驅(qū)動(dòng)NAND設(shè)備對(duì)應(yīng)的讀和寫信號(hào)。圖3中b例為SamSung公司arm7TDMI系列處理器S3C44B0與Nand Flash K9F2808U0C的連接方式。

(3)直接芯片使能

有些ARM處理器如S3C2410內(nèi)部提供對(duì)NAND設(shè)備的相應(yīng)控制寄存器,通過控制寄存器可以實(shí)現(xiàn)ARM處理器對(duì)NAND設(shè)備相應(yīng)信號(hào)的驅(qū)動(dòng)。該方式使得ARM處理器與NAND設(shè)備的連接變得簡單規(guī)范,圖3中c例給出了arm處理器S3C2410與Nand Flash K9F2808U0C的連接方式。

3.3arm處理器與SDRAM接口技術(shù)

最小系統(tǒng)的外部動(dòng)態(tài)存儲(chǔ)器模塊一般采用SDRAM?,F(xiàn)在的大多數(shù)arm處理器內(nèi)部都集成有SDRAM控制器,通過它可以很容易的訪問SDRAM內(nèi)部的每一個(gè)字節(jié)。在實(shí)際開發(fā)中可以根據(jù)需要選用一片或多片SDRAM。圖4中給出了兩種常用的接口方式。

(1)單片SDRAM

圖4 中a例為arm處理器S3C44B0與一個(gè)16bit的SDRAM K4S641632d的連接方式。在對(duì)尺寸有嚴(yán)格限制且對(duì)動(dòng)態(tài)存儲(chǔ)器容量要求不高的系統(tǒng)中常采用此種連接方式。

(2)雙片16bit SDRAM結(jié)合使用

在雙片16bit SDRAM合成一個(gè)32bit SDRAM使用時(shí),arm處理器的地址線A2接SDRAM的地址線A0,其余地址依次遞增,這是因?yàn)樵赟DRAM中字節(jié)是存儲(chǔ)容量的惟一單位,而此時(shí)SDRAM為32bit位寬。

SDRAM的BA地址線是其內(nèi)部Bank的地址線,代表了SDRAM內(nèi)存的最高位。在圖4中b例的SDRAM總大小是64M(64M= ),需要A25-A0引腳來尋址,所以BA1-BA0連接到了A25-A24引腳上。還需注意的是SDRAM內(nèi)存行地址和列地址是復(fù)用的,所以地址線的數(shù)目一般少于26條,具體連接需要參考arm處理器和SDRAM的相關(guān)手冊(cè)。

值得注意的是,有些ARM處理器如SamSung公司的ARM940T系列處理器S3C2510 ,其地址總線與其它標(biāo)準(zhǔn)ARM處理器不太一樣,它的地址線分為內(nèi)部地址線和外部地址線兩種類型。根據(jù)所連接的存儲(chǔ)器數(shù)據(jù)總線寬度,內(nèi)部地址線進(jìn)行相應(yīng)的移位,對(duì)應(yīng)到外部地址線A23-A0,從而對(duì)外提供固定的地址線A23-A0。其實(shí)質(zhì)與典型的arm處理器是一致的。

4. 系統(tǒng)啟動(dòng)架構(gòu)

啟動(dòng)架構(gòu)是系統(tǒng)的關(guān)鍵技術(shù)。掌握啟動(dòng)架構(gòu)對(duì)于了解系統(tǒng)的運(yùn)行原理有著重要的意義。系統(tǒng)在啟動(dòng)時(shí),引導(dǎo)代碼、操作系統(tǒng)的運(yùn)行和應(yīng)用程序的加載主要有兩種架構(gòu),一種是直接從Nor Flash啟動(dòng)的架構(gòu),另一種是直接從Nand Flash啟動(dòng)的架構(gòu)。

需要注意的是,在系統(tǒng)啟動(dòng)引導(dǎo)的過程中會(huì)有多種情況出現(xiàn),如vxWorks的啟動(dòng)代碼BootRom就有壓縮和非壓縮,駐留和非駐留方式之分,而操作系統(tǒng)本身也多以壓縮映象方式存儲(chǔ),所以啟動(dòng)代碼在執(zhí)行和加載過程中需要根據(jù)不同的情況,作出相應(yīng)的處理。

4.1從Nor Flash啟動(dòng)

Nor Flash具有芯片內(nèi)執(zhí)行(XIP,eXecute In Place)的特點(diǎn),在系統(tǒng)中常做為存放啟動(dòng)代碼的首選。從Nor Flash啟動(dòng)的架構(gòu)又可細(xì)分為只使用Nor Flash的啟動(dòng)架構(gòu)和Nor Flash與Nand Flash配合使用的啟動(dòng)架構(gòu)。圖5 給出了這兩種啟動(dòng)架構(gòu)的原理框圖。

4.1.1單獨(dú)使用Nor Flash

在該架構(gòu)中,引導(dǎo)代碼、操作系統(tǒng)和應(yīng)用代碼共存于同一塊Nor Flash中。系統(tǒng)上電后,引導(dǎo)代碼首先在Nor Flash中執(zhí)行,然后把操作系統(tǒng)和應(yīng)用代碼加載到速度更高的SDRAM中運(yùn)行。另一種可行的架構(gòu)是,在Nor Flash中執(zhí)行引導(dǎo)代碼和操作系統(tǒng),而只將應(yīng)用代碼加載到SDRAM中執(zhí)行。

該架構(gòu)充分利用了Nor Flash芯片內(nèi)執(zhí)行的特點(diǎn),可有效提升系統(tǒng)性能。不足在于隨著操作系統(tǒng)和應(yīng)用代碼容量的增加,需要更大容量昂貴的Nor Flash來支撐。

4.1.2 Nor Flash和Nand Flash配合使用

Nor Flash的單獨(dú)使用對(duì)于代碼量較大的應(yīng)用程序會(huì)增加產(chǎn)品的成本投入,一種的改進(jìn)的方式是采用Nor Flash 和Nand Flash配合使用的架構(gòu)。在該架構(gòu)中附加了一塊Nand Flash,Nor Flash(2M或4M)中存放啟動(dòng)代碼和操作系統(tǒng)(操作系統(tǒng)可以根據(jù)代碼量的大小選擇存放于Nor Flash或者Nand Flash),而Nand Flash中存放應(yīng)用代碼,根據(jù)存放的應(yīng)用代碼量的大小可以對(duì)Nand Flash容量做出相應(yīng)的改變。

系統(tǒng)上電后,引導(dǎo)代碼直接在Nor Flash中執(zhí)行,把Nand Flash中的操作系統(tǒng)和應(yīng)用代碼加載到速度更高的SDRAM中執(zhí)行。也可以在Nor Flash中執(zhí)行引導(dǎo)代碼和操作系統(tǒng),而只將Nand Flash中的應(yīng)用代碼加載到SDRAM中執(zhí)行。該架構(gòu)是當(dāng)前系統(tǒng)中運(yùn)用最廣泛的啟動(dòng)架構(gòu)之一。

4.1.2從Nand Flash啟動(dòng)

有些處理器如SamSung公司的arm920T系列處理器S3C2410支持從Nand Flash啟動(dòng)的模式,它的工作原理是將NandFlash中存儲(chǔ)的前4KB代碼裝入一個(gè)稱為Steppingstone(BootSRAM)的地址中,然后開始執(zhí)行該段引導(dǎo)代碼,從而完成對(duì)操作系統(tǒng)和應(yīng)用程序的加載。該方式需要處理器內(nèi)部有NAND控制器,同時(shí)還要提供一定大小額外的SRAM空間,有一定的使用局限性,在實(shí)際開發(fā)中較少使用。

5. 結(jié)束語

本文作者創(chuàng)新點(diǎn):根據(jù)ARM體系結(jié)構(gòu)的相通性,以基于ARM的最小系統(tǒng)為平臺(tái),從硬件和軟件兩方面對(duì)其架構(gòu)進(jìn)行了研究。硬件方面就arm處理器與常用外部存儲(chǔ)器的接口方式進(jìn)行了闡述,軟件方面給出了最小系統(tǒng)典型的啟動(dòng)架構(gòu)及其選擇標(biāo)準(zhǔn)。




本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

8位單片機(jī)在嵌入式設(shè)計(jì)領(lǐng)域已經(jīng)成為半個(gè)多世紀(jì)以來的主流選擇。盡管嵌入式系統(tǒng)市場(chǎng)日益復(fù)雜,8位單片機(jī)依然不斷發(fā)展,積極應(yīng)對(duì)新的挑戰(zhàn)和系統(tǒng)需求。如今,Microchip推出的8位PIC?和AVR?單片機(jī)系列,配備了先進(jìn)的獨(dú)立...

關(guān)鍵字: 單片機(jī) 嵌入式 CPU

在工業(yè)物聯(lián)網(wǎng)設(shè)備部署中,Modbus通信故障是導(dǎo)致系統(tǒng)停機(jī)的首要原因之一。據(jù)統(tǒng)計(jì),超過60%的現(xiàn)場(chǎng)問題源于通信配置錯(cuò)誤或數(shù)據(jù)解析異常。本文從嵌入式系統(tǒng)開發(fā)視角,系統(tǒng)闡述Modbus通信調(diào)試的方法論,結(jié)合實(shí)際案例解析如何高...

關(guān)鍵字: 嵌入式系統(tǒng) Modbus通信

在嵌入式系統(tǒng)開發(fā)中,程序燒錄是連接軟件設(shè)計(jì)與硬件實(shí)現(xiàn)的關(guān)鍵環(huán)節(jié)。當(dāng)前主流的單片機(jī)燒錄技術(shù)已形成ICP(在電路編程)、ISP(在系統(tǒng)編程)、IAP(在應(yīng)用編程)三大技術(shù)體系,分別對(duì)應(yīng)開發(fā)調(diào)試、量產(chǎn)燒錄、遠(yuǎn)程升級(jí)等不同場(chǎng)景。...

關(guān)鍵字: 單片機(jī) ISP ICP IAP 嵌入式系統(tǒng)開發(fā)

在嵌入式系統(tǒng)開發(fā)中,看門狗(Watchdog Timer, WDT)是保障系統(tǒng)可靠性的核心組件,其初始化時(shí)機(jī)的選擇直接影響系統(tǒng)抗干擾能力和穩(wěn)定性。本文從硬件架構(gòu)、軟件流程、安全規(guī)范三個(gè)維度,系統(tǒng)分析看門狗初始化的最佳實(shí)踐...

關(guān)鍵字: 單片機(jī) 看門狗 嵌入式系統(tǒng)

本文中,小編將對(duì)單片機(jī)予以介紹,如果你想對(duì)它的詳細(xì)情況有所認(rèn)識(shí),或者想要增進(jìn)對(duì)它的了解程度,不妨請(qǐng)看以下內(nèi)容哦。

關(guān)鍵字: 單片機(jī) 開發(fā)板 Keil

隨著單片機(jī)系統(tǒng)越來越廣泛地應(yīng)用于消費(fèi)類電子、醫(yī)療、工業(yè)自動(dòng)化、智能化儀器儀表、航空航天等各領(lǐng)域,單片機(jī)系統(tǒng)面臨著電磁干擾(EMI)日益嚴(yán)重的威脅。電磁兼容性(EMC)包含系統(tǒng)的發(fā)射和敏感度兩方面的問題。

關(guān)鍵字: 單片機(jī) 電磁兼容

ARM系統(tǒng)幾乎都采用Linux的操作系統(tǒng),而且?guī)缀跛械挠布到y(tǒng)都要單獨(dú)構(gòu)建自己的系統(tǒng),與其他系統(tǒng)不能兼容,這也導(dǎo)致其應(yīng)用軟件不能方便移植,這一點(diǎn)一直嚴(yán)重制約了ARM系統(tǒng)的發(fā)展和應(yīng)用。GOOGLE開發(fā)了開放式的Andro...

關(guān)鍵字: Linux x86 ARM

隨著計(jì)算需求的多樣化,尤其是隨著移動(dòng)設(shè)備、嵌入式系統(tǒng)和云計(jì)算的興起,ARM 和 x86 架構(gòu)之間的爭論變得更加突出。ARM(高級(jí) RISC 機(jī)器)和 x86 代表兩種不同類型的處理器架構(gòu),每種架構(gòu)都針對(duì)不同的工作負(fù)載和用...

關(guān)鍵字: Linux x86 ARM
關(guān)閉