畢業(yè)論文最終修改_第1頁
畢業(yè)論文最終修改_第2頁
畢業(yè)論文最終修改_第3頁
畢業(yè)論文最終修改_第4頁
畢業(yè)論文最終修改_第5頁
已閱讀5頁,還剩32頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、I摘摘 要要嵌入式系統(tǒng)與以太網(wǎng)技術(shù)融合發(fā)展將是嵌入式技術(shù)未來發(fā)展的重要方向。針對(duì)目前網(wǎng)絡(luò)應(yīng)用的特點(diǎn),提出了基于 AT91RM9200 微處理器的嵌入式網(wǎng)絡(luò)應(yīng)用平臺(tái)的設(shè)計(jì)方案。即在以太網(wǎng)上,任何一臺(tái)機(jī)通過網(wǎng)絡(luò)瀏覽器,輸入嵌入式網(wǎng)站的地址,即可訪問本網(wǎng)站。在網(wǎng)站上設(shè)計(jì)了一系列 ARM9 嵌入式瀏覽網(wǎng)頁,單擊相應(yīng)的鏈接,可訪問相應(yīng)的網(wǎng)頁,體現(xiàn)出嵌入式系統(tǒng)的靜態(tài)特性。而且該設(shè)計(jì)還詳細(xì)介紹了該網(wǎng)站各個(gè)部分的設(shè)計(jì)和實(shí)現(xiàn)方法: 包括硬件模塊、軟件模塊、引導(dǎo)加載程序、嵌入式 Linux 內(nèi)核和根文件系統(tǒng)。為基于 ARM 的嵌入式網(wǎng)絡(luò)應(yīng)用系統(tǒng)的開發(fā)搭建了一個(gè)較為完善的平臺(tái) ,對(duì)于網(wǎng)絡(luò)通信在嵌入式設(shè)備中的應(yīng)用有很

2、好的借鑒意義,所以說嵌入式系統(tǒng)的設(shè)計(jì)已經(jīng)成為現(xiàn)代電子設(shè)計(jì)的一大領(lǐng)域和方向。 關(guān)鍵字關(guān)鍵字 嵌入式系統(tǒng) ARM920T WEB IITitleTitle ResearchResearch andand DesignDesign ofof embeddedembedded WEBWEB basedbased onon ARM9ARM9 technologytechnologyAbstractAbstractThe incorporated development of embedded system and Ethernet technology will be the important dir

3、ection of embedded technology development in the future. According to the characteristics of network application at present, the solution of constructing embedded network application platform based on embedded microprocessor AT91RM9200 is presented. That is to say, any PC computer through network br

4、owser , input the related embedded IP address and then you can have access to browse this web. On the website, I design a series of ARM9 embedded browser hompages, click on the appropriate link, you can visit the corresponding homepage,which reflect the static characteristics of embedded system. The

5、 design and implementation method of various parts, including hardware module, software module,bootloader program, embedded Linux kernel and root file system, are introduced in details. A perfect platform is built for the development of embedded network application system based on ARM, which is quit

6、e significant for the application of network communication in embedded systems. So, embedded system has been a great field of modern electronic design.KeyKeywordswords Embedded System ARM920T WEB i目目錄錄1 背景綜述.11.1 引 言 .11.2 選題背景 .11.2.1 問題的提出.11.2.2 課題來源.11.3 目的和意義 .11.4 指導(dǎo)思想 .21.5 本系統(tǒng)研究的內(nèi)容及主要工作 .22

7、系統(tǒng)設(shè)計(jì)綜述.32.1 方案論證 .32.2 嵌入式系統(tǒng)概述 .42.3 ARM 微處理器.52.4 嵌入式 LINUX 特點(diǎn) .73 系統(tǒng)硬件平臺(tái)設(shè)計(jì).93.1 AT91RM9200 電源電路設(shè)計(jì).93.2 AT91RM9200 芯片設(shè)計(jì).103.3 以太網(wǎng)電路的設(shè)計(jì) .123.4 SDRAM 存儲(chǔ)器電路設(shè)計(jì) .173.5 FLASH 存儲(chǔ)器電路設(shè)計(jì).183.6 USB 主設(shè)備電路設(shè)計(jì) .184 系統(tǒng)軟件平臺(tái)設(shè)計(jì).204.1 移植嵌入式 LINUX的關(guān)鍵工作 .204.2 BOA 移植的建立.244.2.1 嵌入式網(wǎng)站 Boa 的特點(diǎn) .244.2.2 Boa 的功能實(shí)現(xiàn).244.2.3 B

8、oa 在 ARM 上的移植.254.2.4 測(cè)試 Boa 的運(yùn)行.265 調(diào)試環(huán)境的建立及結(jié)果.275.1 調(diào)試環(huán)境的建立 .275.2 測(cè)試結(jié)論 .326 畢業(yè)設(shè)計(jì)總結(jié).33參考文獻(xiàn).3411 1 背景綜述背景綜述1.11.1 引引 言言當(dāng)今的信息時(shí)代,互聯(lián)網(wǎng)已經(jīng)滲透到了人們工作和生活的各個(gè)方面。隨著計(jì)算機(jī)技術(shù)發(fā)展,嵌入式系統(tǒng)已成為計(jì)算機(jī)領(lǐng)域的一個(gè)重要組成部分。嵌入式 Internet 是近幾年發(fā)展起來一項(xiàng)新興概念和技術(shù),通過各種各樣的嵌入式設(shè)備也能上網(wǎng)使用瀏覽Web。21 世紀(jì)的電子信息產(chǎn)品要適應(yīng)這個(gè)發(fā)展的方向和要求,否則將很難有強(qiáng)勁的競爭力。而目前正在開發(fā)的嵌入式系統(tǒng)中,近 50%的項(xiàng)目

9、選擇 Linux 作為嵌入式操作系統(tǒng),因此研究在 ARM-LINUX 操作系統(tǒng)下的嵌入式 Web 技術(shù)具有較高的現(xiàn)實(shí)意義。1.21.2 選題背景選題背景1.2.11.2.1 問題的提出問題的提出隨著 Internet 技術(shù)與光纖技術(shù)的廣泛應(yīng)用,使得網(wǎng)絡(luò)速度和帶寬大幅度提高,各種基于 WEB 的項(xiàng)目日趨豐富,服務(wù)日趨完善,使得大眾對(duì)嵌入式教學(xué)提出了更高的要求,傳統(tǒng)的八位單片機(jī)由于其運(yùn)行速度慢、驅(qū)動(dòng)能力、功耗等問題已越來越不能滿足用戶的需求。ARM 處理器以其高性能、低功耗、豐富驅(qū)動(dòng)等功能成為新的嵌入式教學(xué)領(lǐng)域開發(fā)的理想選擇。1.2.21.2.2 課題來源課題來源本系統(tǒng)來自于對(duì)現(xiàn)代教學(xué)系統(tǒng)的研究,

10、其應(yīng)用價(jià)值較高,系統(tǒng)性較強(qiáng)。由于工程較大,這里只設(shè)計(jì)了典型的幾個(gè)功能模塊,并且在整個(gè)項(xiàng)目中能夠單獨(dú)的實(shí)現(xiàn)重要的功能任務(wù),具有代表性。為了更好的開發(fā)研究,我們有必要對(duì)目前較為流行的ARM-LINUX 系統(tǒng)做較詳細(xì)的介紹。1.31.3 目的和意義目的和意義本設(shè)計(jì)主要研究內(nèi)容是實(shí)現(xiàn)一個(gè)基于9 的嵌入式網(wǎng)站。即在以太網(wǎng)上,任何一臺(tái)機(jī)通過網(wǎng)絡(luò)瀏覽器,輸入嵌入式網(wǎng)站的地址,即可訪問本網(wǎng)站。在網(wǎng)站上設(shè)計(jì)了一系列嵌入式教學(xué)網(wǎng)頁,單擊相應(yīng)的鏈接,可訪問相應(yīng)的網(wǎng)頁,可以滿足嵌入式教學(xué)的需要同時(shí)使嵌入式教學(xué)能廣泛應(yīng)用于各所學(xué)校中。與傳統(tǒng)的教學(xué)相比,本系統(tǒng)不僅可以節(jié)省很大的人力物力和時(shí)間,還可以優(yōu)化工作,提高工作質(zhì)量

11、和工作效率。21.41.4 指導(dǎo)思想指導(dǎo)思想ARM 處理器以其高性能, 低功耗,豐富驅(qū)動(dòng)等功能成為新的嵌入式電子產(chǎn)品開發(fā)的理想選擇,尤其隨著 32 位嵌入式 CPU 價(jià)格的下降和性能指標(biāo)的提高,為嵌入式系統(tǒng)的廣泛應(yīng)用提供了可能。同時(shí)為了實(shí)現(xiàn)對(duì)系統(tǒng)資源的更好分配,復(fù)雜任務(wù)的更好調(diào)度,引入了嵌入式操作系統(tǒng)。本次設(shè)計(jì)采用了 ATMEL 公司的 AT91RM9200 ARM芯片與 DM9161E 的硬件接口電路并且實(shí)現(xiàn)了 TCP/IP 協(xié)議,軟件部分在移植了基于ARM9 的嵌入式 LINUX 的基礎(chǔ)之上,又采用移植 BOA 的方法,實(shí)現(xiàn)了嵌入式 WEB 服務(wù)器部分,以滿足訪問網(wǎng)頁的要求。其中 ARM-

12、LINUX 具有很好的移植性、穩(wěn)定性、強(qiáng)大的協(xié)議支持功能、豐富的設(shè)備支持功能,現(xiàn)在被廣泛應(yīng)用于嵌入式操作系統(tǒng)中并已成為一種新興力量。1.51.5 本系統(tǒng)研究的內(nèi)容及主要工作本系統(tǒng)研究的內(nèi)容及主要工作采用 ATMEL 公司的 AR91RM9200 ARM 芯片設(shè)計(jì)與 DM9161E 的硬件接口,并且實(shí)現(xiàn)了 TCP/IP 協(xié)議,使其具有上網(wǎng)功能,可以作為一個(gè)嵌入式網(wǎng)站使用。由于受到 AR91RM9200 實(shí)現(xiàn)的嵌入式系統(tǒng)內(nèi)存和處理速度的限制,該設(shè)計(jì)對(duì)TCP/IP 按層進(jìn)行了簡化,實(shí)現(xiàn)了 ARP(地址解析協(xié)議)、IP(網(wǎng)際協(xié)議)、ICMP(Internet 控制報(bào)文協(xié)議)、UDP(用戶數(shù)據(jù)報(bào)協(xié)議)和

13、 TCP(傳輸控制協(xié)議)。在數(shù)據(jù)鏈路層實(shí)現(xiàn) ARP 協(xié)議。該模塊由 ARPRepuest ARP InputARP Timer 組成。ARPRepuest 負(fù)責(zé)主機(jī)在向網(wǎng)絡(luò)發(fā)送數(shù)據(jù)時(shí)發(fā)送 ARP 請(qǐng)求以確定目的地址的以太網(wǎng)地址。ARP Input 判斷 ARP 包的類型是網(wǎng)絡(luò)上其他機(jī)子發(fā)送過來的請(qǐng)求包或是回送給本機(jī)的響應(yīng)包、判斷其合法性并進(jìn)行相應(yīng)的處理。如果是請(qǐng)求包則交換目的地址跟源地址的以太網(wǎng)地址跟 IP 地址,然后計(jì)算校驗(yàn)碼,打包發(fā)送出去。如果是返回給本機(jī)的 ARP 響應(yīng)包,則將數(shù)據(jù)包里面的 IP 地址存到路由表里,以便往后發(fā)送數(shù)據(jù)時(shí)可以查詢目的以太網(wǎng)地址。在網(wǎng)絡(luò)層實(shí)現(xiàn) IP 協(xié)議和 IC

14、MP 協(xié)議。IP 模塊由 IPInput 和 Ipoutput 組成。IPInput 負(fù)責(zé)接受 IP 數(shù)據(jù)包,Ipoutput 負(fù)責(zé)發(fā)送 IP 數(shù)據(jù)包。32 2 系統(tǒng)設(shè)計(jì)綜述系統(tǒng)設(shè)計(jì)綜述嵌入式系統(tǒng)的設(shè)計(jì)需要對(duì)軟硬件都有一部分的了解,設(shè)計(jì)首先介紹了嵌入式系統(tǒng)概念,然后分別介紹了 ARM9 微處理器和操作系統(tǒng) Linux 的特點(diǎn),軟硬件平臺(tái)設(shè)計(jì),最后介紹了 BOA 的功能及實(shí)現(xiàn)方法和調(diào)試環(huán)境的建立及結(jié)果。2.12.1 方案論證方案論證方案 1:從 20 世紀(jì) 80 年代到現(xiàn)在,單片機(jī)始終在 8 位機(jī)的檔次上徘徊,8 位的單片機(jī)始終主導(dǎo)著應(yīng)用的潮流。16 位單片機(jī)雖然也曾經(jīng)掀起過波浪, 但很快就銷聲

15、匿跡了。隨著科技的發(fā)展,人們對(duì)單片機(jī)的性能、速度、能力、存儲(chǔ)量、通信功能的多樣性、開發(fā)的方便程度及耗電的多少等不斷提出更高的要求?,F(xiàn)在,也有以 51系列為核的單片機(jī),其設(shè)計(jì)主要基于 51 系列具有廣泛應(yīng)用這樣一個(gè)背景。在這樣的設(shè)計(jì)中,把使用 51 系列指令、具備 51 系列結(jié)構(gòu)的單片機(jī)設(shè)計(jì)得功能更加強(qiáng)大,內(nèi)部存儲(chǔ)區(qū)更多,輸入/輸出口線增加幾倍,速度可達(dá) 40Mb/s。但這種單片機(jī)仍然是一個(gè) 8 位機(jī),功能仍然受到 51 系列的局限。在處理器方面,51 系列單片機(jī)只有 5 個(gè)中斷源,而 ARM 系列單片機(jī)可多達(dá)上百個(gè)中斷源,雖然 ARM 處理器只有 7 個(gè)中斷源。其中有的以 ARM 為核的單片機(jī)

16、復(fù)位中斷也是可以屏蔽的,這可能是在 ARM 中也把復(fù)位作為中斷處理的原因,但從 51 系列的結(jié)構(gòu)出發(fā),這是一個(gè)很難處理的事情。方案 2:ARM 處理器是世界上最流行的嵌入式處理器,廣泛應(yīng)用于個(gè)人通信等嵌入式領(lǐng)域。ARM7 采用三級(jí)流水線:取指、譯碼、執(zhí)行。但是 ARM7 只有數(shù)據(jù)存取器接口,同時(shí)還用來取指令和數(shù)據(jù)訪問,ARM7 處理器雖然功能強(qiáng)大,但是目前已經(jīng)開始退出主流應(yīng)用領(lǐng)域,代替它的是性能更強(qiáng)大的 ARM9 系列處理器。方案 3:ARM9 系列處理器是美國 Atmel 公司設(shè)計(jì)的主流嵌入式處理器,新一代的嵌入式處理器,通過全新的設(shè)計(jì),采用更多的晶體管,能夠達(dá)到兩倍以上于 ARM7處理器的

17、處理能力。ARM9 采用五級(jí)流水線,5 級(jí)流水線能夠?qū)⒚恳粋€(gè)處理分配到 5個(gè)時(shí)鐘周期內(nèi),在每一個(gè)時(shí)鐘周期內(nèi)同時(shí)有 5 個(gè)指令在執(zhí)行。在同樣的加工工藝下,ARM9 處理器的時(shí)鐘頻率是 ARM7 的 1.82.2 倍,引入了獨(dú)立的存儲(chǔ)器和寫回流水線,分別用來訪問存儲(chǔ)器和將結(jié)果寫回寄存器。ARM9 有獨(dú)立的指令和數(shù)據(jù)存儲(chǔ)器接口,允許處理器同時(shí)進(jìn)行取指和讀寫數(shù)據(jù)。其主要特點(diǎn)如下:1)支持外部協(xié)處理器,指令和數(shù)據(jù)總線有簡單握手信令支持;2)設(shè)置保護(hù)單元,非常適合嵌入式應(yīng)用中對(duì)存儲(chǔ)器進(jìn)行分段和保護(hù);3)片內(nèi)指令和數(shù)據(jù)高速緩沖器(cache)容量從 4K 字節(jié)到1M 字節(jié);4)32bit 定點(diǎn) RISC 處

18、理器,改進(jìn)型 ARM/Thumb 代碼交織,增強(qiáng)性乘法設(shè)計(jì)。支持(real-time)調(diào)試。通過上面所述,可對(duì)比出 51 系列只是 8 位而 ARM 是一個(gè) 32 位處理器,在數(shù)4據(jù)訪問的處理方式上相差很大,單片機(jī)有 7 種尋址方式。而 ARM9 的時(shí)鐘頻率高,采用 5 級(jí)流水線,ARM9 不但有 32 位指令集,還包含 16 位的 Thumb 指令集而 51 系列單片機(jī)是一個(gè) 8 位的單片機(jī),因而只能執(zhí)行 8 位寬的指令。現(xiàn)在,由于網(wǎng)絡(luò)與通信的發(fā)展,我們無法把 51 系列和一個(gè)技術(shù)先進(jìn)的產(chǎn)品相提并論,同時(shí)越來越多的產(chǎn)品需要具有聯(lián)網(wǎng)功能,這需要智能產(chǎn)品具有一個(gè)更強(qiáng)勁的“芯”,這是 8 位機(jī)很難

19、做到的,所以我們必須適應(yīng)時(shí)代的需求,充分利用 ARM9, 以其高性能、低功耗、豐富驅(qū)動(dòng)等功能成為新的嵌入式電子產(chǎn)品開發(fā)的理想選擇,同時(shí)為保證 WEB 網(wǎng)站連接速度快,響應(yīng)迅速,不出現(xiàn)死機(jī)的情況,因此此設(shè)計(jì)采用方案三。2.22.2 嵌入式系統(tǒng)概述嵌入式系統(tǒng)概述嵌入式系統(tǒng)是指以應(yīng)用為中心,以計(jì)算機(jī)技術(shù)為基礎(chǔ),軟件硬件可裁剪,適應(yīng)應(yīng)用系統(tǒng)對(duì)功能、可靠性、成本、體積、功耗嚴(yán)格要求的專用計(jì)算機(jī)系統(tǒng)。它并不是最近出現(xiàn)的新技術(shù),只是隨著微電子技術(shù)和計(jì)算機(jī)技術(shù)的發(fā)展,微控制芯片功能越來越強(qiáng)大,而嵌入微控制芯片的設(shè)備和系統(tǒng)越來越多,從而使得這種技術(shù)越來越引人注目。它包括硬件和軟件兩部分。硬件包括處理器/微處理器

20、、存儲(chǔ)器及外設(shè)器件和 I/O 端口、圖形控制器等。軟件部分包括操作系統(tǒng)軟件(OS)(要求實(shí)時(shí)和多任務(wù)操作)和應(yīng)用程序。嵌入式系統(tǒng)的核心是嵌入式微處理器。嵌入式微處理器一般就具備以下 4 個(gè)特點(diǎn):1) 對(duì)實(shí)時(shí)多任務(wù)有很強(qiáng)的支持能力,能完成多任務(wù)并且有較短的中斷響應(yīng)時(shí)間,而使內(nèi)部的代碼和實(shí)時(shí)內(nèi)核的執(zhí)行時(shí)間減少到最低限度。2) 具有功能很強(qiáng)的存儲(chǔ)區(qū)保護(hù)功能。這是由于嵌入式系統(tǒng)的軟件結(jié)構(gòu)已模塊化,而為了避免在軟件模塊之間出現(xiàn)錯(cuò)誤的交叉作用,需要設(shè)計(jì)強(qiáng)大的存儲(chǔ)區(qū)保護(hù)功能,同時(shí)也有利于軟件診斷。3) 可擴(kuò)展的處理器結(jié)構(gòu),能最迅速地開展出滿足應(yīng)用的最高性能的嵌入式微處理器。4) 嵌入式微處理器必須功耗很低,

21、尤其是用于便攜式的無線及移動(dòng)的計(jì)算和通信設(shè)備中靠電池供電的嵌入式系統(tǒng)更是如此,如需要功耗只有 mW 甚至 W 級(jí)。嵌入式操作系統(tǒng)是支持嵌入式系統(tǒng)應(yīng)用的操作系統(tǒng)軟件,它是嵌入式系統(tǒng)極為重要的組成部分,通常包括與硬件相關(guān)的底層驅(qū)動(dòng)軟件、系統(tǒng)內(nèi)核、設(shè)備驅(qū)動(dòng)接口、通信協(xié)議、圖形界面、標(biāo)準(zhǔn)化瀏覽器等。與通用操作系統(tǒng)相比較,嵌入式操作系統(tǒng)在系統(tǒng)實(shí)時(shí)高效性、硬件的依賴性、軟件固態(tài)化以及應(yīng)用的專用性等方面具有較為突出的特點(diǎn)。嵌入式操作系統(tǒng)的出現(xiàn)將大大提高嵌入式系統(tǒng)開發(fā)的效率,改變以往5嵌入式軟件設(shè)計(jì)只能針對(duì)具體的應(yīng)用從頭做起。在嵌入式操作系統(tǒng)之上開發(fā)嵌入系統(tǒng)將減少系統(tǒng)開發(fā)的工作量,增強(qiáng)嵌入式應(yīng)用軟件的可移植性

22、,使嵌入式系統(tǒng)的開發(fā)方法更具科學(xué)性。嵌入式計(jì)算機(jī)系統(tǒng)同通用型計(jì)算機(jī)系統(tǒng)相比具有以下特點(diǎn):嵌入式系統(tǒng)中的系統(tǒng)程序(包括操作系統(tǒng))和應(yīng)用程序是渾然一體的,這些程序被編譯連接成一個(gè)可以執(zhí)行的二進(jìn)制映像文件(image),這個(gè)二進(jìn)制映像文件被固化在系統(tǒng)中,在系統(tǒng)復(fù)位后自動(dòng)執(zhí)行。嵌入式系統(tǒng)的開發(fā)系統(tǒng)和實(shí)際運(yùn)行的系統(tǒng)并不相同,需要交叉編譯系統(tǒng)和適當(dāng)?shù)恼{(diào)試系統(tǒng)。嵌入式系統(tǒng)通常是面向特定應(yīng)用的,嵌入式 CPU 與通用型的最大不同就是嵌入式 CPU 大多工作在為特定用戶群設(shè)計(jì)的系統(tǒng)中,它通常都具有低功耗、體積小、集成度高等特點(diǎn),能夠把通用 CPU 中許多由板卡完成的任務(wù)集成在芯片內(nèi)部,從而有利于嵌入式系統(tǒng)設(shè)計(jì)趨

23、于小型化,移動(dòng)能力大大增強(qiáng),跟網(wǎng)絡(luò)的耦合也越來越緊密。 嵌入式系統(tǒng)是將先進(jìn)的計(jì)算機(jī)技術(shù)、半導(dǎo)體技術(shù)和電子技術(shù)與各個(gè)行業(yè)的具體應(yīng)用相結(jié)合后的產(chǎn)物。這一點(diǎn)就決定了它必然是一個(gè)技術(shù)密集、資金密集、高度分散、不斷創(chuàng)新的知識(shí)集成系統(tǒng)。 嵌入式系統(tǒng)的硬件和軟件都必須高效率地設(shè)計(jì),量體裁衣、去除冗余,力爭在同樣的硅片面積上實(shí)現(xiàn)更高的性能,這樣才能在具體應(yīng)用中對(duì)處理器的選擇更具有競爭力。嵌入式系統(tǒng)和具體應(yīng)用有機(jī)地結(jié)合在一起,它的升級(jí)換代也是和具體產(chǎn)品同步進(jìn)行,因此嵌入式系統(tǒng)產(chǎn)品一旦進(jìn)入市場,具有較長的生命周期。為了提高執(zhí)行速度和系統(tǒng)可靠性,嵌入式系統(tǒng)中的軟件一般都固化在存儲(chǔ)器芯片或單片機(jī)本身中,而不是存貯于磁

24、盤等載體中。嵌入式系統(tǒng)本身不具備自舉開發(fā)能力,即使設(shè)計(jì)完成以后用戶通常也是不能對(duì)其中的程序功能進(jìn)行修改的,必須有一套開發(fā)工具和環(huán)境才能進(jìn)行開發(fā)。2.32.3 ARMARM 微處理器微處理器ARM(Advanced RISC Machines),既可以認(rèn)為是一個(gè)公司的名字,也可以認(rèn)為是對(duì)一類微處理器的通稱,還可以認(rèn)為是一種技術(shù)的名字。1990 年 11 月 ARM 公司成立于英國劍橋的一個(gè)谷倉里,主要出售芯片設(shè)計(jì)技術(shù)的授權(quán)。目前,采用 ARM 技術(shù)知識(shí)產(chǎn)權(quán)(IP)核的微處理器,即我們通常所說的 ARM 微處理器,已遍及工業(yè)控制、消費(fèi)類電子產(chǎn)品、通信系統(tǒng)、網(wǎng)絡(luò)系統(tǒng)、無線系統(tǒng)等各類產(chǎn)品市場,基于 A

25、RM技術(shù)的微處理器已經(jīng)占據(jù)了 32 位 RISC 芯片 75以上的市場份額,可以說,ARM 技6術(shù)幾乎無處不在。ARM 公司是專門從事基于 RISC 技術(shù)芯片設(shè)計(jì)開發(fā)的公司,作為知識(shí)產(chǎn)權(quán)供應(yīng)商,本身不直接從事芯片生產(chǎn),靠轉(zhuǎn)讓設(shè)計(jì)許可由合作公司生產(chǎn)各具特色的芯片,世界各大半導(dǎo)體生產(chǎn)商從 ARM 公司購買其設(shè)計(jì)的 ARM 微處理器核,根據(jù)各自不同的應(yīng)用領(lǐng)域,加入適當(dāng)?shù)耐鈬娐?,從而形成自己?ARM 微處理器芯片進(jìn)入市場。目前,全世界前 5 大半導(dǎo)體公司全都使用 ARM 公司的技術(shù)授權(quán),ARM 技術(shù)具有很高的性能和功效,因而容易被廠商接受。同時(shí),合作伙伴的增多,可獲得更多的第三方工具、制造和軟件支

26、持,又使整個(gè)系統(tǒng)成本降低,使產(chǎn)品更容易進(jìn)入市場的時(shí)間加快,從而具有更大的競爭優(yōu)勢(shì)。ARM9 系列微處理器在高性能和低功耗特性方面提供最佳的性能。具有以下特點(diǎn):5 級(jí)數(shù)流水線結(jié)構(gòu)(取指令、指令譯碼、執(zhí)行、數(shù)據(jù)存儲(chǔ)器、寫寄存器),指令執(zhí)行效率更高;VDDCORE 電流為 30.4mA 待機(jī)模式電流為 3.1mA;提供1.1MIPS/MHz 的哈佛結(jié)構(gòu);支持 32 位高性能 ARM 指令集和 16 位高代碼密度 Thumb指令集;支持 32 位的高速 AMBA 總線接口;全性能的 MMU,支持 Windows CE、Linux、Palm OS 等多種主流嵌入式操作系統(tǒng);MPU 支持實(shí)時(shí)操作系統(tǒng);支持

27、數(shù)據(jù) Cache 和指令 Cache,具有更高的指令和數(shù)據(jù)處理能力。16-K 字節(jié)數(shù)據(jù)緩存, 16-K 字節(jié)指令緩存:虛擬地址的 64 路相關(guān)緩存,每線 8 字,正向及反向?qū)懖僮鳎瑐坞S機(jī)或循環(huán)置換,低功耗 CAM RAM 設(shè)備。寫緩沖器:16 字的數(shù)據(jù)緩沖器,4 地址的地址緩沖器,軟件控制消耗。標(biāo)準(zhǔn)的 ARMv4 存儲(chǔ)器管理單元 (MMU):區(qū)域訪問許可,允許以 1/4 頁面大小對(duì)頁面進(jìn)行訪問,16 個(gè)嵌入域,64 個(gè)輸入指令 TLB 及 64 個(gè)輸入數(shù)據(jù) TLB,8 位、16 位、32 位的指令總線和數(shù)據(jù)總線。ARM9 系列微處理器主要應(yīng)用于無線設(shè)備、家庭網(wǎng)關(guān)、工業(yè)控制、安全系統(tǒng)、機(jī)頂盒、高

28、端打印機(jī)、數(shù)字照相機(jī)和數(shù)字?jǐn)z像機(jī)等。ARM9 系列微處理器包含 ARM920T、ARM922T 和 ARM940T 三種類型,主要用于適應(yīng)不同的市場要求。嵌入式 WEB 系統(tǒng)采用 ATMEL 公司的 AT91RM9200 處理器芯片,此芯片采用ARM920T 核,除了具有 ARM9 系列微處理器一般的特性外,還具有如下特點(diǎn):集成 ARM920T 芯核,180 MHz 時(shí)性能高達(dá) 200 MIPS,存儲(chǔ)器管理單元,16KB 的數(shù)據(jù) Cache,16KB 的指令 Cache,含有調(diào)試信道的內(nèi)部仿真器。中等規(guī)模的嵌入式宏單元結(jié)構(gòu)( 僅針對(duì) 256 BGA 封裝):全功能 MMU 支持 WINCE和

29、LINUX;16KB 的內(nèi)部 SRAM 和 128KB 的內(nèi)部 ROM;外部總線接口 EBI;支持SDRAM,SRAM,Burst Flash,和 CompactFlash,SmartMedia 以及 NAND Flash 的無縫連接。提高性能而使用的系統(tǒng)外設(shè):增強(qiáng)的時(shí)鐘發(fā)生器與電源管理控制器;兩個(gè)有雙7PLL 的片上振蕩器;低速的時(shí)鐘操作模式與軟件功耗優(yōu)化能力;四個(gè)可編程的外部時(shí)鐘信號(hào);包括周期性中斷、看門狗及第二計(jì)數(shù)器的系統(tǒng)定時(shí)器;有報(bào)警中斷的實(shí)時(shí)時(shí)鐘;調(diào)試單元、兩線 UART 并支持調(diào)試信道;有 8 個(gè)優(yōu)先級(jí)的高級(jí)中斷控制器,獨(dú)立的可屏蔽中斷源,偽中斷保護(hù);7 個(gè)外部中斷源及 1 個(gè)快速

30、中斷源;有 122 個(gè)可編程 I/O 口線的四個(gè) 32 位 PIO 控制器,各線均有輸入變化中斷及開漏能力。10/100 Base-T 型以太網(wǎng)卡接口:獨(dú)立的媒體接口(MII)或簡化的獨(dú)立媒體接口 (RMII);對(duì)于接收與發(fā)送有集成的 28 字節(jié) FIFO 及專用的 DMA 通道。USB 2.0 全速 (12 M 比特 /秒) 主機(jī)雙端口:雙片上收發(fā)器(208 引腳 PQFP 封裝中僅為一個(gè) );集成的 FIFO 及專用的 DMA 通道。USB 2.0 全速 (12 M 比特 /秒) 器件端口:片上收發(fā)器, 2-K 字節(jié)可配置的集成 FIFO。多媒體卡接口(MCI):自動(dòng)協(xié)議控制及快速自動(dòng)數(shù)據(jù)

31、傳輸;與 MMC 及 SD 存儲(chǔ)器卡兼容,支持兩個(gè) SD 存儲(chǔ)器。3 個(gè)同步串行控制器 (SSC):每個(gè)接收器與發(fā)送器有獨(dú)立的時(shí)鐘及幀同步信號(hào);支持 I S 模擬接口,時(shí)分復(fù)用;32 比特的高速數(shù)據(jù)流傳輸能力。4 個(gè)通用同步 /異步接收 /發(fā)送器(USART):支持 ISO7816 T0/T1 智能卡;硬軟件握手;支持 RS485 及高達(dá) 115 Kbps 的 IrDA 總線;USART1 為全調(diào)制解調(diào)控制線。主機(jī)/從機(jī)串行外設(shè)接口 (SPI):8 16 位可編程數(shù)據(jù)長度,可連接 4 個(gè)外設(shè)兩個(gè) 3 通道 16 位定時(shí)/計(jì)數(shù)器 (TC);3 個(gè)外部時(shí)鐘輸入,每條通道有 2 個(gè)多功能 I/O 引

32、腳;雙 PWM 產(chǎn)生器,捕獲/波形模式,上加 /下減計(jì)數(shù)能力。電源供應(yīng):VDDCORE,VDDOSC 及 VDDPLL 電壓為:1.65V 1.95V;VDDIOP (外設(shè) I/O) 及 VDDIOM (存儲(chǔ)器 I/O)電壓為:1.65V 3.6V。2.2.4 4 嵌入式嵌入式 LinuxLinux 特點(diǎn)特點(diǎn) 嵌入式 Linux 融合了嵌入式和 Linux 的特點(diǎn),其開發(fā)與一般的應(yīng)用程序開發(fā)相比有著自己的特點(diǎn),Arm-linux 可移植性強(qiáng),用戶通過重新進(jìn)行配、編譯內(nèi)核可以使其內(nèi)核文件小于 500K。Arm-linux 網(wǎng)絡(luò)支持能強(qiáng)大,支持 PPP、Ethernet 等多種網(wǎng)絡(luò)連接方式 ,包括

33、完整的 TCP/IP 協(xié)議棧及大量的其他協(xié)議 。另外,由于 Arm-linux 的開放性,新的網(wǎng)絡(luò)協(xié)議可以很容易地加入到內(nèi)核中。下面介紹了嵌入式Linux 的強(qiáng)大功能:第一,Linux 系統(tǒng)是層次結(jié)構(gòu)且內(nèi)核完全開放。Linux 是由很多體積小且性能高的微內(nèi)核系統(tǒng)組成。在內(nèi)核代碼完全開放的前提下,不同領(lǐng)域和不同層次的用戶可以根據(jù)自己的應(yīng)用需要方便地對(duì)內(nèi)核進(jìn)行改造,低成本地設(shè)計(jì)和開發(fā)出滿足自己需要的嵌入式系統(tǒng)。8第二,強(qiáng)大的網(wǎng)絡(luò)支持功能。Linux 誕生于因特網(wǎng)時(shí)代并具有 Unix 的特性,保證了它支持所有標(biāo)準(zhǔn)因特網(wǎng)協(xié)議,并且可以利用 Linux 的網(wǎng)絡(luò)協(xié)議棧將其開發(fā)成為嵌入式的 TCP/IP 網(wǎng)

34、絡(luò)協(xié)議棧。此外,Linux 還支持 ext2、fat16、fat32、romfs 等文件系統(tǒng),為開發(fā)嵌入式系統(tǒng)應(yīng)用打下了很好的基礎(chǔ)。第三,Linux 具備一整套工具鏈,容易自行建立嵌入式系統(tǒng)的開發(fā)環(huán)境和交叉運(yùn)行環(huán)境,可以跨越嵌入式系統(tǒng)開發(fā)中仿真工具的障礙。Linux 也符合 IEEE POSIX.1 標(biāo)準(zhǔn),使應(yīng)用程序具有較好的可移植性。傳統(tǒng)的嵌入式開發(fā)的程序調(diào)試和調(diào)試工具是用在線仿真器(ICE)實(shí)現(xiàn)的。它通過取代目標(biāo)板的微處理器,給目標(biāo)程序提供一個(gè)完整的仿真環(huán)境,完成監(jiān)視和調(diào)試程序;但一般價(jià)格比較昂貴,只適合做非常底層的調(diào)試。使用嵌入式 Linux,一旦軟硬件能夠支持正常的串口功能,即使不用仿

35、真器,也可以很好地進(jìn)行開發(fā)和調(diào)試工作,從而節(jié)省一筆不小的開發(fā)費(fèi)用。嵌入式 Linux 為開發(fā)者提供了一套完整的工具鏈(tool chain)。它利用 GNU 的gcc 做編譯器,用 gdb、kgdb、xgdb 做調(diào)試工具,能夠很方便地實(shí)現(xiàn)從操作系統(tǒng)到應(yīng)用軟件各個(gè)級(jí)別的調(diào)試。第四,Linux 具有廣泛的硬件支持特性。無論是 RISC 還是 CISC、32 位還是 64位等各種處理器,Linux 都能運(yùn)行。Linux 通常使用的微處理器是 Intel X86 芯片家族,但它同樣能運(yùn)行于 Motorola 公司的 68K 系列 CPU 和 IBM、Apple、Motorola 公司的 PowerPC

36、 CPU 以及 Intel 公司的 StrongARM CPU 等處理器。Linux 支持各種主流硬件設(shè)備和最新硬件技術(shù),甚至可以在沒有存儲(chǔ)管理單元(MMU)的處理器上運(yùn)行。這意味著嵌入式 Linux 將具有更廣泛的應(yīng)用前景。第五,嵌入式 LINUX 的可移植性好。它廣泛支持了許多不同體系結(jié)構(gòu)的計(jì)算機(jī)。而且將 LINUX 移植到新的微處理器體系非??旖荩话闶菍⑵湟浦驳揭环N新型的目標(biāo)板,其中包含有獨(dú)特的外設(shè)。大部分的內(nèi)核代碼都是相同的,因?yàn)樗鼈兣c微處理器無關(guān),所以,移植的工作多集中在一些存儲(chǔ)器管理及中斷處理程序上。一旦完成,它們將非常穩(wěn)定。 93 3 系統(tǒng)硬件平臺(tái)設(shè)計(jì)系統(tǒng)硬件平臺(tái)設(shè)計(jì)嵌入式 W

37、EB 的網(wǎng)站設(shè)計(jì)要求能夠通過輸入相應(yīng)的 IP 地址,鏈接到所需的網(wǎng)頁,要求具有較高實(shí)時(shí)性,因此在設(shè)計(jì)硬件電路時(shí),需要特別注重芯片的選擇。本系統(tǒng)采用的是具有世界先進(jìn)水平的 ARM 芯片 AT91RM9200,它是美國著名公司 ATMEL 生產(chǎn)的 ARM920T 內(nèi)核的芯片,PQFP208 封裝。速度快,工作于 180 MHz 時(shí)性能高達(dá) 200 MIPS,同時(shí)它還具有 10/100 Base-T 型以太網(wǎng)卡接口,有獨(dú)立的媒體接口(MII)或簡化的獨(dú)立媒體接口(RMII),對(duì)于接收與發(fā)送有集成的 28 字節(jié) FIFO 及專用的 DMA 通道。選取 Uboot 支持的通用 FLASH 型號(hào) HY57

38、V641620,32bit 總線,容量 128Mb,可擴(kuò)展為 256Mb。選取通用 USB 轉(zhuǎn)串口芯片 PL2303HX 為調(diào)試/下載串口。PC 僅需USB 口就可以完成下載/燒寫/調(diào)試開發(fā)的所有功能。發(fā)揮 9200+Linux 強(qiáng)勁的網(wǎng)絡(luò)功能。所有未使用得 GPIO 和 16 位 BUS 總線均用插針引出,擴(kuò)展十分方便。USB 供電,無需額外電源適配器。四層 PCB,穩(wěn)定設(shè)計(jì)。所以使用 AT91RM9200 作為 CPU,完全可以滿足設(shè)計(jì)的要求。其中電路板資源為:4MB FLASH / 16MB SDRAM,10M/100M 以太網(wǎng)口,下載/燒寫/調(diào)試 USB 口,IIC EEPROM (N

39、P),20 pin 通用 JTAG 口,USB HOST 標(biāo)準(zhǔn)接口,USB Device mini 接口,調(diào)試指示 LED。擴(kuò)展接口為:3.3V 電源,復(fù)位信號(hào),BUS 總線 D0-D16 / A0-A16,所有未使用的共 50 位 GPIO, GPI 可擴(kuò)展為SPI/UART/485/IrDA/IIC/7816/LCD/SD 卡/AC97/NandFlash 等等,擴(kuò)展接口具有PDC(DMA) 通道。下面具體介紹以 AT91RM9200 處理器芯片為核心,配備 SDRAM,網(wǎng)絡(luò)接口芯片DM9161E 等芯片完成系統(tǒng)所要求的核心模塊。3.13.1 AT91RM9200AT91RM9200 電源

40、電路設(shè)計(jì)電源電路設(shè)計(jì)本次設(shè)計(jì)采用 3.3V 電源供電。電源電路原理圖設(shè)計(jì)如圖 3.1:10圖 3.1 電源電路電源電路設(shè)計(jì)所采用的 SPX1117 為一個(gè)低功耗正向電壓調(diào)節(jié)器,有 0.8A 穩(wěn)定的輸出電流,過流及溫度保護(hù)的特點(diǎn)。這款器件非常適合嵌入式系統(tǒng)的應(yīng)用,因?yàn)槠渚哂懈咝?,小封裝和低功耗的特點(diǎn)。SPX1117 的輸入電壓最小大于輸出電壓1.1V,所以可以把 3.3V 的電壓輸出作為 SPX1117-1.8 的輸入電壓。當(dāng)輸出電流減少時(shí),靜態(tài)電流隨負(fù)載變化,并提高效率。3.23.2 AT91RM9200AT91RM9200 芯片設(shè)計(jì)芯片設(shè)計(jì)Atmel 公司的 32 位 RISC 處理器 A

41、T91RM9200 是基于 ARM Thumb 的 ARM920T(核)微控制器,帶有全性能的 MMU,支持 SDRAM,靜態(tài)存儲(chǔ)器,Burst Flash,CompactFals,SmartMedia,具有高性能,低功耗 ,低成本,小體積等優(yōu)點(diǎn).AT91RM9200 微處理器是一個(gè)多用途的通用芯片,它內(nèi)部集成了微處理器和常用外圍組件,具有更高性價(jià)比的特點(diǎn),可以為各個(gè)領(lǐng)域的嵌入式系統(tǒng)提供優(yōu)秀的解決方案。如圖 3.2 所示為 AT91RM9200 芯片設(shè)計(jì)圖。1112圖 3.2 AT91RM9200 芯片設(shè)計(jì)圖3.33.3 以太網(wǎng)電路的設(shè)計(jì)以太網(wǎng)電路的設(shè)計(jì)基于 AT91RM9200 的網(wǎng)絡(luò)設(shè)備,

42、如下圖 3.3 所示,網(wǎng)絡(luò)系統(tǒng)的構(gòu)架由物理介質(zhì)層,物理介質(zhì)獨(dú)立層,EMAC 層,驅(qū)動(dòng)程序和協(xié)議層組成。其中物理介質(zhì)層采用 DAVICOM 公司的 10/100Mbps 快速以太網(wǎng)物理層收發(fā)芯片 DM9161E 實(shí)現(xiàn)。EMAC 是由 AT91RM9200芯片內(nèi)部集成以太網(wǎng)控制器實(shí)現(xiàn)。協(xié)議層則由 Linux 操作系統(tǒng)實(shí)現(xiàn)。如圖 3.5 所示為基于 AT91RM9200 的網(wǎng)絡(luò)系統(tǒng)構(gòu)架。圖 3.3 基于 AT91RM9200 的網(wǎng)絡(luò)系統(tǒng)構(gòu)架DM9161E 集成了 100Base-TX 模式和 10Base-T 模式,提供了 MII(MediaIndependent Interface)接口,能夠執(zhí)行

43、載波監(jiān)聽(Carrier Sense)、沖突檢測(cè)(Collision Detection)和自動(dòng)協(xié)商(Auto Negotiation)的功能,DM9161E 結(jié)構(gòu)框圖見圖 3.4。DM9161E 提供的媒體獨(dú)立接口(MII)遵從 IEEE 802.3u 標(biāo)準(zhǔn).MII 接口為 PHY 層和 MAC 層提供了一種簡單并且容易的一種連接方式。MII 包括四位字節(jié)(nibble)寬度的數(shù)據(jù)接收總線,四位字節(jié)(nibble)寬度的數(shù)據(jù)發(fā)送總線和 PHY 與 MAC 層數(shù)據(jù)傳輸控制的信號(hào)線。 100Base-TX 傳輸模塊。100Base-TX 傳輸模塊包含有 4B5B 編碼器、Scrambler、并行

44、到串行轉(zhuǎn)換器、NRZ 到 NRZI 編碼器、MLT-3 轉(zhuǎn)換器、MLT-3 驅(qū)動(dòng)器。13圖 3.4 DM9161E 功能結(jié)構(gòu)框圖4B5B 編碼器把從 MAC 層接收的 4 位字節(jié)數(shù)據(jù)轉(zhuǎn)換為 5 位字節(jié)數(shù)據(jù)便于傳輸,4B5B 編碼器可以被旁路。Scrambler 用于更為有效的抗輻射干擾。并行到串行轉(zhuǎn)換器把經(jīng)過擾頻處理的 5B 數(shù)據(jù)串行化。NRZ 到 NRZI 編碼器使數(shù)據(jù)傳輸符合 5 類非屏蔽雙絞線基于 100Base-TX 傳輸?shù)腡P-PMD 標(biāo)準(zhǔn)。MLT-3 轉(zhuǎn)換器把經(jīng)過 NRZI 編碼器輸出的數(shù)據(jù)轉(zhuǎn)換為二進(jìn)制數(shù)據(jù)流輸出。MLT-3 驅(qū)動(dòng)器產(chǎn)生驅(qū)動(dòng)網(wǎng)絡(luò)變壓器原端的電壓信號(hào)。100Base-

45、TX 接收模塊。100Base-TX 接收模塊由自適應(yīng)補(bǔ)償器(Adaptive Equalizer)、MLT-3 到 NRZI 解碼器、時(shí)鐘恢復(fù)模塊、NRZI 到 NRZ 解碼器、串行到并行轉(zhuǎn)換器、Descrambler、碼組對(duì)齊模塊和 4B5B 解碼器組成。10Base-T 操作模塊。當(dāng) DM9161 工作在 10Base-T 模式,采用的是曼徹斯特(Manchester)編碼格式。當(dāng)發(fā)送時(shí),MII 提供 4 位字節(jié)的數(shù)據(jù),串行化為位流,經(jīng)曼徹斯特編碼發(fā)送出去。當(dāng)接收時(shí),把在線路上接收到的曼徹斯特編碼格式的數(shù)據(jù)解碼后轉(zhuǎn)化為 4 位字節(jié)的數(shù)據(jù)提供給 MII 接口。沖突檢測(cè)。在半雙工工作模式時(shí),

46、發(fā)送和接收的沖突檢測(cè)功能同時(shí)有效,當(dāng)檢測(cè)到?jīng)_突時(shí),會(huì)通過 MII 接口提供 COL 信號(hào)。在全雙工工作模式時(shí)此功能禁止。14載波監(jiān)聽。在全雙工工作模式時(shí),此功能在接收和發(fā)送數(shù)據(jù)有效;在半雙工工作模式時(shí),僅僅在接收數(shù)據(jù)有效。自動(dòng)協(xié)商。通過自動(dòng)協(xié)商可以確定鏈路狀態(tài)、鏈路速度以及工作方式(全雙工或半雙工)。AT91RM9200 與 DM9161E 的硬件接口原理圖電路如圖 3.5 所示:圖 3.5 AT91RM9200 與 DM9161E 的硬件接口原理圖在 AT91RM9200 內(nèi)部集成了以太網(wǎng)控制器(EMAC),DM9161E 負(fù)責(zé)與物理層的通信,HR61H58L 負(fù)責(zé)電平濾波與屏蔽五類雙絞線的

47、接口。AT91RM9200 與 DM9161E 之間是通過 RMII 接口進(jìn)行通信. AT91RM9200 的 PA15/EMDC,PA16/EMDIO 分別接 DM9161E 的 MDC 與 MDIO,這樣可以對(duì) DM9161E 的內(nèi)部寄存器進(jìn)行操作的,包括配置 DM9161E 的物理地址,子網(wǎng)掩碼等。AT91RM9200 集成有以太網(wǎng)控制器 EMAC(Ethernet MAC)使這款芯片具有了更為廣泛的應(yīng)用價(jià)值。正是具有此種功能才是選用 AT91RM9200 最為主要的原因。EMAC是 OSI 參考模型 MAC 子層的物理實(shí)現(xiàn),介于物理層(physical layerPHY)與邏輯鏈路層(

48、logical link layer LLC)之間,以 IEEE 802.3u 數(shù)據(jù)貞格式控制著主機(jī)與PHY 之間的數(shù)據(jù)交換。EMAC 為邏輯、傳輸和接受的 DMA 控制提供了 FIFO 緩沖區(qū)。除此之外,還為物理層(PHY)管理提供了 MDIO/MDC 接口。依據(jù)引腳的配置,EMAC 能夠以 MII(media-independent interface)或 RMII(reduced media-independent interface)接口傳輸數(shù)據(jù)。15EMAC 主要特性為:符合 IEEE 標(biāo)準(zhǔn) 802.3;10 和 100Mbits 每秒的數(shù)據(jù)吞吐能力;全雙工和半雙工的工作模式;為物理

49、層提供 MII 和 RMII 接口;提供地址、數(shù)據(jù)和控制寄存器接口;DMA 控制接口;具有接收發(fā)送完畢后產(chǎn)生中斷信號(hào)的功能;在傳輸數(shù)據(jù)是具有自動(dòng)填充和 CRC 生成功能;通過 MDIO 接口支持物理層的管理。EMAC框圖(如下圖 3.6 所示:圖 3.6 EMAC 控制器框圖從硬件的角度看,以太網(wǎng)接口電路主要由 MAC 控制器和物理層接口兩大部分構(gòu)成。該設(shè)計(jì)中,使用 DM9161E 作為以太網(wǎng)的物理層接口。DM9161E 是一款低功耗、高性能的 CMOS 芯片,支持 10M 和 100M 的以太網(wǎng)傳輸,它起編碼、譯碼輸入和輸出數(shù)據(jù)的作用。由于 DM9161E 和 AT91RM9200 具有的

50、EMAC 都支持 MII 接口功能,根據(jù)信號(hào)的定義相連接即可。信號(hào)的發(fā)送和接收端通過網(wǎng)絡(luò)隔離變壓器和 RJ45 接口接入傳輸媒體,實(shí)際完整應(yīng)用電路如圖 3.7。16圖 3.7 以太網(wǎng)電路173.43.4 SDRAMSDRAM 存儲(chǔ)器電路設(shè)計(jì)存儲(chǔ)器電路設(shè)計(jì)SDRAM(Synchronous Dynamic RAM)同步動(dòng)態(tài)存儲(chǔ)器,使用 SDRAM 不但能提高系統(tǒng)表現(xiàn),還能簡化設(shè)計(jì)、提供高速的數(shù)據(jù)傳輸。在功能上,它類似常規(guī)的 DRAM,但是也需要時(shí)鐘進(jìn)行刷新。在系統(tǒng)運(yùn)行時(shí),所有的程序和數(shù)據(jù)都是在 RAM(主要是在SDRAM)中與 CPU 和外圍設(shè)備交互,所以 SDRAM 的速度對(duì)于整個(gè)系統(tǒng)的運(yùn)行速

51、度有著至關(guān)重要的影響。AT91RM9200 內(nèi)置有 SDRAM 控制器(SDRAMC),具有 SDRAM 控制接口,為簡化電路設(shè)計(jì)提供了很大的方便,本電路設(shè)計(jì)采用了二片通用 SDRAM,型號(hào)HY57V641620,32bit 總線。具有如下特點(diǎn):支持多種配置:2K、 4K、 8K 行地址存儲(chǔ)部分;兩個(gè)或四個(gè)內(nèi)部 SDRAM 區(qū);6 位或 32 位數(shù)據(jù)路徑的 SDRAM。錯(cuò)誤檢測(cè):實(shí)時(shí)更新錯(cuò)誤中斷節(jié)能能力強(qiáng):支持自更新與低功耗模式如圖 3.8 所示為 SDRAM 存儲(chǔ)器電路原理圖。圖 3.8 SDRAM 電路183.53.5 FLASHFLASH 存儲(chǔ)器電路設(shè)計(jì)存儲(chǔ)器電路設(shè)計(jì)本設(shè)計(jì)采用了型號(hào)為

52、E28F320J3A110,16bit 總線,單片 32Mb 容量的 FLASH。其原理圖如 3.9 所示。圖 3.9 FLASH 電路3.63.6 USBUSB 主設(shè)備電路設(shè)計(jì)主設(shè)備電路設(shè)計(jì)為了滿足日后有本地存儲(chǔ)的需求,而 USB 主設(shè)備接口可以外接移動(dòng)存儲(chǔ)設(shè)備,所以設(shè)計(jì)了此電路以備日后使用。AT91RM9200 內(nèi)部集成的 USB 主端口控制器(UHP)完全符合開放 HCI 規(guī)范(Open Host Controller Interface)。具有以下特性:符合 USB 2.0 版本全速傳輸規(guī)范。支持電源管理功能。支持全速 12Mbps 的 USB 設(shè)備支持雙片上收發(fā)器集成的 FIFO 及

53、專用的 DMA 通道。電路設(shè)計(jì)如下圖 3.10 所示:19圖 3.10 USB 主設(shè)備電路設(shè)計(jì)204 4 系統(tǒng)軟件平臺(tái)設(shè)計(jì)系統(tǒng)軟件平臺(tái)設(shè)計(jì)嵌入式系統(tǒng)通常為一個(gè)資源受限的系統(tǒng)。直接在此嵌入式系統(tǒng)的硬件平臺(tái)編寫軟件是不可行的。由于受到內(nèi)存和處理速度的限制,不可能實(shí)現(xiàn)完整的 TCP/IP。因此必須對(duì) TCP/IP 根據(jù)實(shí)際情況進(jìn)行簡化。計(jì)劃在 AT91RM9200 上面實(shí)現(xiàn) ARP(地址解析協(xié)議)、IP(網(wǎng)際協(xié)議)、ICMP(Internet 控制報(bào)文協(xié)議)、UDP(用戶數(shù)據(jù)報(bào)協(xié)議)和 TCP(傳輸控制協(xié)議),并對(duì)它們按層進(jìn)行簡化。只有實(shí)現(xiàn)了這些協(xié)議,才能成功設(shè)計(jì)嵌入式網(wǎng)站。本次設(shè)計(jì)先在通用計(jì)算機(jī)上

54、編寫程序,然后通過交叉編譯,生成目標(biāo)平臺(tái)上可運(yùn)行的二進(jìn)制代碼再通過移植嵌入式 Linux,實(shí)現(xiàn)了以上協(xié)議。4.14.1 移植嵌入式移植嵌入式 LinuxLinux 的關(guān)鍵工作的關(guān)鍵工作1. 準(zhǔn)備工作a) 交叉開發(fā)環(huán)境的安裝 交叉開發(fā)環(huán)境是指編譯、鏈接和調(diào)試嵌入式應(yīng)用軟件的開發(fā)環(huán)境。它與嵌入式應(yīng)用軟件的環(huán)境有所不同,采用宿主機(jī)/目標(biāo)機(jī)模式。交叉開發(fā)環(huán)境,安裝在位置/usr/local/arm/2.95.3/bin。b) 內(nèi)核原碼的安裝 源碼程序 linux-2.4.19-rmk7,拷貝到/usr/local/arm/k9l 下面,并且解壓縮,得到內(nèi)核源碼c) 安放 Uboot 工具 源碼程序 u

55、boot,拷貝到/usr/local/arm/k9s 下面。2. 預(yù)先設(shè)置主要在內(nèi)核原碼中設(shè)置 makefile 文件,主要設(shè)置兩個(gè)地方 ARCH 和CROSS_COMPILE。ARCH :=arm ;表示目標(biāo)板為armCROSS_COMPILE=/usr/local/arm/2.95.3/bin/arm-linux- ;設(shè)置交叉編譯工具的地址。3. 內(nèi)核配置在內(nèi)核源碼/usr/local/arm/k9l/ linux-2.4.19-rmk7 下make menuconfig ;菜單界面或make xconfig ;圖形界面,通常采用4. 內(nèi)核編譯在內(nèi)核源碼/usr/local/arm/k9l

56、/ linux-2.4.19-rmk7 下make clean21make depmake5. 建立內(nèi)核影象在內(nèi)核源碼/usr/local/arm/k9l/ linux-2.4.19-rmk7 下:make Image ;形成 vmlinuxcp vmlinux /usr/local/arm/2.95.3/bin ;copy在編譯工具/usr/local/arm/2.95.3/bin 下./arm-linux-objcopy -O binary -S vmlinux linux.bin ;形成 linux.bingzip -v9 linux.bin ;形成 linux.bin.gzcp lin

57、ux.bin.gz /usr/local/arm/k9s/uboot/tools ;copy 在 uboot 的目錄/usr/local/arm/k9s/uboot/tools 下./mkimage-Aarm-Olinux-Cgzip-a0 x20008000-e0 x20008000-dlinux.bin.gzuImage ;把 linux.bin.gz 文件變?yōu)樽罱K的影象文件 uImage最后,檢查 uImage 大小,盡量使 uImge 小于 8*128=768(KB)。至此,Linux 內(nèi)核移植完成,我們生成了 linux-2.4.19-rmk 的 linux 內(nèi)核燒寫文件uImage

58、。6. 配置和裁剪 Linux 的內(nèi)核在 Linux 下,用 make xconfig 或者 make menuconfig 進(jìn)入配置的界面。在內(nèi)核配置中,一般有四種選擇:Y(選種)、N(不選)、M(模塊)和數(shù)字,用戶可以根據(jù)裁剪需要進(jìn)行設(shè)置,最后配置完畢,選擇是否對(duì)配置結(jié)果進(jìn)行保存。圖形配置界面如下圖 4.1 所示:圖 4.1 圖形配置界面BlockBlock Devices:Devices: Network block device support : n22 - Ramdisk support: y - Default Ramdisk size: 15360 # 真實(shí)的 Ramdisk

59、大小在 Uboot ENV 里面配置 - Initial Ramdisk (initrd) support: yFileFile SystemSystem - Network File systems: NFS file system support : n - NFS server support: nConsoleConsole driversdrivers - Frame Buffer Support: support for frame buffer devices (exp):n # 本網(wǎng)站不支持屏,選n - epson LCD/CR/TV controller support: y

60、 - epson S1 D1 3806 support for AT91RM9200DK: y - virtual frame buffer support (only for testing!): n - advanced low level driver option: y - 16 bpp packed pixeld support: y (others n)USBUSB Support:Support: support for USB: y - AT91RM9200 OHCI- compatible host interface: y - USB mass storage suppor

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論