ARM系統圖文顯示技術與圖形中間件的研究與開發._第1頁
ARM系統圖文顯示技術與圖形中間件的研究與開發._第2頁
已閱讀5頁,還剩45頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、西南科技大學碩士研究生學位論文第U頁 Abstract西南科技大學碩士學位論文ARM 系統圖文顯示技術與圖形中間件的研究與開發姓名:趙仁杰申請學位級別:碩士專業:計算機應用技術指導教師:李眾立20070403西南科技大學碩士研究生學位論文 第 I 頁摘要本論文題目來源于導師所進行的,基于 A 跚芯片和嵌入式 Linux 平臺的高性 能、開放式新型數控系統科研項目的一個子課題。論文的主要目標是:為嵌入式應用研發 LED 高清晰圖形界面軟硬件接口,以及底層驅動無關的圖 形中間件系統。本論文研制的系統,為嵌入式數控應用提供了目前所缺乏的高分辨率圖形界面支持,并有效解決了隨著軟硬件環境的遷移,上層人機

2、交互應用軟件 也需完全從頭開 發的問題。本論文分析并裁減出的 Linux 內核,結合多種文 件系統優點研發出的合 理的 Flash存儲結構,能給數控系統的軟硬件開發帶 來便利。從分析 Linux 驅動機制 和 LED 控制器特點入手,研發了高分辨率 LED 驅動,滿足了人機交互的需求。并針 對上層應用軟件的研發,詳細分析了中間件系統的原理,設計了輕量級的實現,為二次 開發也進行了良好的鋪墊。最后輔以系統應用,闡述了繼續研發的方向。關鍵詞:A 跚嵌入式系統 Linux LCD 驅動中間件The field of study of this paper sources from a projcot

3、 that my tutor is carrying on:a newhigh-performa nce,ope n digital con trol system based on ARM processor and embeddedLinu x.This paper aims atdeliveri ng a high-resoluti on LCD graphic software/hardware in terface and a loW?level hardware driver depe ndless graphical middleware for embedded applica

4、ti on developing.The system desig ned and described in this paper delivers a highresoluti on graphicaluser in terface support for embedded applicati on, which is now sca nty. The system alsosolves the applicati on level user in terface softwares?full rewriti ng problem in troduced byhardware/softwar

5、e en vir onment shift in g.The Linux kernel an alyzed and con figured by theauthor and the proper Flash storage system that enjoys more tha n one file system?S excellenee can bring adva ntages into the software/hardware developme nt of digital control system.The thesis then starts from analyzing the

6、 Linux driver mechanism and LCD con troller,designes a high-resoluti on LCD driver which successfully meets the requireme nt of user interface.Target ing at assist ing higher level applicati on develop in g,this paperalso researches On the prin ciple of graphical middleware and fini shes a light imp

7、lementatio n, which will h e a good preparati on for the whole system?S future develop in g.Thisarticle ends with an applicati on case and expla ining the prospect field of further research.Keywords:APdVI;Embedded System;Linux;LCD Driver;Middleware 】獨創性聲明本人聲明所星交的論文是我個人在導師指導下進行的研究 -T 作及取得的研究 成果。盡我所知,

8、除了文中特別加以標注和致謝的地方外,論文中不包 含其他人已經 發表或撰寫過的研究成果,也不包含為獲得西南科技大學或其它教育機構的學位或證書面使用過的材料。與我一同工作的同志對本研究所做的任何貢獻均已在論文 中作了明確的說明并表示了謝意。簽名:走再蠢?.日期:沙 07.6,.7關于論文使用和授權的說明本人完全了鰓西南科技大學有關保留使用學位論文的規定,即:學校有權保留 學位論文的復印件,允許該論文被查閱和借閱;學校可以公布該論 文的全部或部分內 容,可以采用影印、縮印或其他復制手段保存論文。(保密的學位論文在解密后應遵守此規定簽名:趑爭走一導師簽名 日期:勁 07.6.7西南科技大學碩士研究生學

9、位論文第 1 頁1 緒論本課題是針對嵌入式系統應用中使用越來越廣泛的液晶顯示人機交互界 面,而 進行的接口開發和圖形中間件開發。主要是為基于 ARM 核,Linux 操作系統的嵌入 式應用提供一個良好的 LCD 接口驅動以及硬件無關的,方便數 控系統上層開發的圖 形中間件界面。1.1 課題來源及選題背景隨著微電子技術的不斷創新和發展,嵌入計算機系統(簡稱嵌入系統,作為計算 機應用的一個重要領域,已深入到社會的方方面面,越來越為人們 所關注.信息技術的 高速發展,使得嵌入式技術的應用,也廣泛滲透到人的 工作、生活中。從家用電器、 手持通訊設備、信息終端、儀器儀表、汽車、航天航空、軍事裝備、制造工

10、業、過程控制等,各種形式多樣的嵌入式產品 已經成為信息化時代市場中的主流“ 1.本論文所研究的課題,就來源于筆者導師所進行的,基于 A 蹦芯片和嵌入式 Linux 平臺的高性能、開放式新型數控系統科研項目的一個子課題。隨著嵌入式系統在數控機床上的應用越來越廣泛。市場對人機圖形界面的要求也越來越高,對開發的速度和效率要求也越來越高。而導師課題先前的基于ARM 的數控系統實現方案,在圖文并顯的高清晰人機界面上一直缺失,造成了上層應用控制軟件界面簡單,交 互能力弱等不足。為改善這樣的狀況,本論文的主要工作目標定位為:為嵌入式應用 研發 LCD高清晰圖形界面的軟硬 件接口 ,以及底層驅動無關的圖形中間

11、件系統。使 得流行的ARM+Linux 硬件開發平臺能夠更好的適應數控系統的上層應用需求.1.2 嵌入式系統的發展與應用現狀1.2.1 嵌入式系統的特點嵌入式系統是計算機的一種應用形式,通常指埋藏在宿主設備中的微處理機系 統。對用戶而言,此類計算機一般不被設備使用者在意,亦稱理藏式計算機,典型機種 如微控制器、微處理器和 DSP 等。嵌入式處理器使宿主設 備功能智能化、設計靈 活和操作簡單,他們小到移動電話,大致飛機導航系統,這些設備功能各異,千差萬別,但都具有功能強、實時性強、結構緊湊、西南科技大學碩士研究生學位論文第 2 頁可靠性高和面向對象等共同特點。嵌入式系統通常由硬件和軟件兩部分組成

12、。嵌入式處理器一般具有以下 4 個特點2113J:(1 對實時多任務操作系統具有很強的支持能力(2 具有功能很強的存儲區保護功能。(3 處理器結構可擴展。(4 低功耗。嵌入式系統的運行除了特定的硬件之外,還需要特定的嵌入式軟件系統。其中 最重要的當屬嵌入式操作系統。嵌入式操作系統 EOS(Embedded Operati ng System 是一種用途廣泛的系統軟件,過去它主要應用于工業控 制和國防系統領域。EOS 是 相對于一般操作系統而言的,它除具備了一般操作系統最基本的功能,如任務調度、 同步機制、中斷處理、文件功能等外,還有以下特點 n,:(1 可裝卸性。開放性、可伸縮性的體系結構.(

13、2強實時性。EOS 實時性一般較強,可用于各種設備控制當中.(3 統一的接口。提供各種設備驅動接口。(4 操作方便、簡單、提供友好的圖形 GUI,圖形界面,追求易學易用。(5 提供強大的網絡功能,為各種移動計算設備預留接口。(6 強穩定性,弱交互性。(7 更好的硬件適應性,也就是良好的移植性。另外,嵌入式軟件中甸件與通常所說的軟件中間件也有著很大的不同。通常所說的軟件中間件一般可分為消息中間件、交易中間件、數據庫中問件、安全中問件等目前流行的用于 Web 應用服務器上;而嵌入式軟件中間件更具有為特定應用 領域而設計的特性,因而沒用像通用軟件中間件那樣明確的 劃分,嵌入式軟件中間件 既可以是對某

14、些復雜外設的驅動程序,也可以是運 行在用戶空問的應用程序內核,功 能上也可以涵蓋通訊、交易、安全等多個 方面“J。1.2.2 嵌入式系統的應用嵌入式計算機在應用數量上遠遠超過了各種通用計算機,一臺通用計算杌的外 部設備中就包含了 510 個嵌入式微處理器,鼠標、硬盤、顯示卡、顯示器、Modem、網卡、聲卡、打印機、掃描儀、數字相機、USB 集成器等均 是由嵌入式處理器控制的。在制造工業、過程控制、通信、儀器、儀表、汽車、船舶、航空、航天、軍事裝備、消費類產品等方面均是嵌入式計算機的西南科技大學碩士研究生學位論文第 3 頁應用領域。隨著技術的進步與發展,很多傳統的儀器設備不但其功能日益強大,而且

15、人機界 面也日益友好豐富。其顯示系統由原來的簡單LED 到液晶 LCD 再到點陣式液晶LCM,目前很多儀器設備的顯示系統正向著彩色化、圖形化的方向發展。而且很多復雜的儀器其顯示設備只能使用彩色圖形方式,如化學檢測儀器、頻譜分析儀,大 型旋轉機器監測儀、以及很多的醫療儀器,它們都需要用不同的顏色顯示不同的圖 像“。,針對這一問題研究了一種使用小屏 幕彩色液晶為顯示單元,以嵌入式主板為 控制核心的高檔儀器方案,其具有功能強大,成本低,體積小巧,攜帶方便,彩色圖形顯 示的優點 m。液晶顯示器作為嵌入式系統開發應用的首選,還具有以下無可替代的優點 III!(1 低壓、徽功耗。(2平板型結構。(3 顯示

16、效果好.(4 長壽命。(5 無輻射,無污染。因此液晶成為了嵌入式系統開發中,高要求人機界面開發應用的首選。在應用 需求的驅使下,許多工作在 Linux 下的圖形界面軟件包的開發和移植工作中都涉及 到底層 LCD 驅動的開發問題。因此在嵌入式系統中開發 LCD 驅動得以廣泛運用“? JI。1.2.3 嵌入式數控系統應用前景由于現代機械加工業逐步向柔性化、集成化、智能化方向發展,評定數控機床 及系統效能的基本指標也由傳統的工作精度和切削能力改為用高效柔 性和高精化 的程度來衡量。數控機床不但是機電工業的重要基礎裝備,是汽車、石化、電子等支柱產業生產現代化的主要手段。數控機床也是世界第三次產業革命的

17、一個重要內容據統計,當前,僅在珠江三角洲,電子信息產 業領域所需機床的金額就有 60 億元 左右。在 九五”末期,國產數控機床的 國內市場占有率達 50%,配國產數控系統(普 及型也達到了 10%。90 年代以來,我國數控機床市場需求急劇增加,到 2003 年已成 為世界第一大機床 消費國和第四大機床生產國。2004 年,我國生產數控機床 5 萬臺, 我國數控機床進口達2 萬多臺,這表達了市場對高性能數控系統的迫切需求。西南科技大學碩士研究生學位論文 第 4 頁 1.3 本課題主要研究內容與意義本課題的主要研究內容如下:(1 通過深入廣泛的研究目前的開發資源和應用前景,并結合實際應用對象一一

18、開放性數控系統的特點,確定系統的軟硬件開發方案為:ARM+Linux 的組合。(2 完成硬件系統的選型和電路板的搭建,實現的硬件平臺成本和功能 都褥到很 好的滿足。研究并移植了針對性的 Linux 內核,實現了健壯靈活的雙文件系統 Flash 存儲管理,使整個系統有極好的性能和擴展性。(3 分析 LCD 控制器的硬件特性,解決了 Linux 下所缺乏高分辨率液晶屏驅動開 發;并為數控平臺針對性地開發了圖形中間件系統,為刀具控制和 軌跡仿真開發提供 了平臺支持和圖形算法支持,具有良好的便利性。.最后應用該系統于實際的數控平臺,證明其性能的達標,功能的完善穩定,并指 明了下一步的研究方向。本項目進

19、行的研究,其最終的意義還在于:目前國內的嵌入式領域開發,在人機界面的開發上,已經越來越多的開 始使用 SNT/TFT類型的 LCD 來替代傳統的 LED 顯示。根據市場調查和文獻查 詢顯示,目 前項目大多在使用 640 x480,支持 256 色或更高顏色數的 LCD。然而隨著嵌入式應 用的越來越廣泛,嵌入式系統的復雜度相應的越來越高,在人機交互時需要同時進行 輸入和輸出的信息越來越多,這必然對人機界面也提出了更高的要求。可以預見在 不就的將來,很多應用如果繼續采取傳統的 640 x480,低于 16 位色的顯示,就將會不能 滿足需要;因此非常有必要針對 日漸成熟和便宜的大尺寸高分辨率液晶進行

20、開發,以 應付市場的需求。本系 統也正是基于一個先進車床工控系統項目而開發,將為之實 現一個高分辨率的高彩色數的液晶驅動以實現人機交互時更加豐富直觀的顯示效 果和更加多樣的控制設置。另外,在我國嵌入式領域中,傳統的從掌握硬件處理器開始,由一個人 或一個團隊 獨立完成全部硬件底層驅動程序和上層應用程序的軟件開發方法已經遇到了嚴峻的挑戰,并且逐步成為嵌入式應用系統性能繼續提升的瓶頸。嵌入式軟件開發方法的變革勢在必行,而采用中間件的方法就是變革的一個 很好途徑。基于中間件的設計思想,使得應用軟件的開發變得更加簡單。首先,當系統硬件/操作系統平臺改變時,只需改變中間適配層的幾個參數,只要保持西南科技大

21、學碩士研究生學位論文第 5 頁中間件層對應用層的接口定義不變,就可以直接將應用程序移植過去運行。 所 有代碼只需編寫一次就可在任何系統上運行,大大縮短了系統研制的周期,提高了開 發效率,同時還保證了系統的高伸縮性、易升級性和穩定性 在嵌入式系統中,中間件 可以是組成一個獨立的結構;也可成為嵌入式操作系統的組成部分被嵌入;也可以完 全無縫的嵌入到最終應用程序中。本系統實現的嵌入式應用中間件要解決以下問題:中間件的接口設計問題;實現可移植性及易用性是中間件追求的目標,而中間件 的接口設計正是直接影響著兩方面的關鍵所在。資源受限問題:一是要有對有限資源的完全控制權限,二是要設計優化的算法,嚴格控制資

22、源的使用。以內存為例,在考慮內存受限問題的時候,除了考慮內存的分 配算法能否最大限度地使用內存,減少碎片等問題之外,還要考慮內存泄漏的問題。功耗問題:嵌入式中問件是和硬件緊密聯系的軟件模塊,優化嵌入式中 間件的功 耗,是嵌入式中問件設計時所需考慮的重要方面之一。設計低功耗的系統涉及到系統的每個組成部分和設計流程中的每一個環節,對功率問題進行了優化的編譯器,動 態的功率控制|j6 動態的關閉某些設備或者降低設備供 電電壓以達到降低功耗的效 果、 策略、總線上的數據編碼(減少傳遞數據源的次數、技術、硬件設計工具以及 軟件的算法,等等。對這幾個問題,本文的研究作出了良好的嘗試,所提出的解決,在今后的

23、嵌入式系 統和數控系統開發中,也具有實際的指導意義和借鑒價值。西南科技大學碩士研究生學位論文 第 6 頁 2ARM 應用系統硬件方案2.1ARM 處理器簡介ARM 最初是 Acorn RISC Machine 的簡稱,后改名為 Advaneed RISC Machineo 是由 Acorn 公司研發的。ARM 公司自 1990 年正式成立以來,在 32 位 RISC(ReducedInstruction Set ComputerCPU 開發領域不斷取得突破,其結構己經從 V3 發展到 V6。由于 A 蹦公司自成立以來,一直以 IP (In tellige nee Pate nt 提供者的身份向

24、各大半導體 制造商出售知識產權,而自己從不介入芯片的生產銷售,加上其設計的芯核具有功耗 低,成本低等 顯著優點。因此獲得眾多的半導體廠家和整機廠商的大力支持,在 32位嵌入式應用領域.獲得了巨大的成功,目前已經占有 70%以上的 32 位嵌入式 產品 市場。在低功耗,低成本的嵌入式應用領域確立了市場領導地位。現在設計、生產ARM 芯片的國際大公司已經超過 50 多家。到目前為止,ARM 微處理器及技術的應用幾乎已經深入到各個領域(1 工業控制領域:作為 32 的 RISC 架構,基于 ARM 核的微控制器芯片不但占據了高端微 控制器市場的大部分市場份額,同時也逐漸向低端微控制 器應用領域擴展,

25、ARM 微 控制器的低功耗、高性價比,向傳統的 8 位/16 位微控制器提出了挑戰。(2 無線通訊領域:目前已有超過 85%的無線通訊設備采用了 ARM 技術,ARM以其高性能和低成本,在該領域的地位日益鞏固(3 網絡應用:隨著寬帶技術的推廣,采用 ARM 技術的 ADSL 芯片正逐步獲得競 爭優勢。此外,ARM 在語音及視頻處理上行了優化,并獲得廣泛支持也對 DSP 的應 用領域提出了挑戰。(4 消費類電子產品:ARM 技術在目前流行的數字音頻播放器、數字機頂盒和游戲機中得到廣泛采用。(5 成像和安全產品:現在流行的數碼相機和打印機中絕大部分采用ARM 技術。手機中的 32 位 SIM 智能

26、卡也采用了 ARM 技術。ARM 處理器是基于 RISC 指令系統的一款處理器。ARM 處理器一般使用 3 級到 6 級左右的流水線結構,不同版本的 ARM 內核,其 流水線結構也不盡然相同 n “如圖所示:西南科技大學碩士研究生學位論文第 7 頁璜取譯碼執行AlutfrroMi 溉米線瑗取譯瑪執行存儲囂寫圉八晌孵 D 啦囂承繾臻般譯爵執行存儲曩AR 酗曜一 S t 永縫圖 2-1ARIi 流水線結構圖Fig.2 1Pipel ine of/tRill 際司 1.一 J 寫回為兼容數據總線寬度為 16 位的應用系統,ARM 體系結構除了支持執行效 率很 高的32 位 ARM 指令集以外,同時支

27、持 16 位的 Thumb 指令集.Thumb 指令集是ARM 指令集的一個子集,允許指令編碼為 16 位的長度。與等價的 32 位代碼相比較,Thumb 指令集在保留 32 代碼優勢的同時,大大的節省了系統 的存儲空間。ARit 指令集和 Thumb 指令集各有其優點,若對系統的性能有較高要求,應使用 32位的存儲系統和 ARM 指令集,若對系統的成本及功耗有較高要求,則應使用 16 位的存儲系統和 Thumb 指令集。當然,若兩者結合使用,充分發揮其各自的優點,會 取得更好的效果。在寄存器分配上,ARM 處理器共有 37 個寄存器,被分為若干個組(BANK,這些 寄存器包括:31 令通用寄

28、存器,包括程序計數器(PC 指針,均為 32 位的寄存器;6 個狀 態寄存器,用以標識 CPU 的工作狀態及程序的運行狀態,均為 32 位,目前只使用了其 中的一部分。同時,ARM 處理器又有 7 種不同的處理器模式,在每一種處理器模式下 均有組 相應的寄存器與之對應。即在任意一種處理器模式下,可訪問的寄存器包括 15 個通用寄存器(R0ARI4、一至二個狀態寄存器和程序計數器。在所有的寄存器中,有些 是在 7 種處理器模式下共用的同一個物理寄存器,而有些寄存器則是在不同的處理 器模式下有不同的物理寄存器。西南科技大學碩士研究生學位論文第 8 頁此外 ARM 體系結構還支持異常處理。ARM 體

29、系結構中的異常,與 8 位/10 位體 系結構的中斷有很大的相似之處,但異常與中斷的概念并不完全等同。 ARM 微處理 器支持 7 種運行模式,分別為:(1 用戶模式(usr:A 跚處理器正常的程序執行狀態(2 快速中斷模式(fiq:用于高速數據傳輸或通道處理(3 外部中斷模式(irq:用于通用的中斷處理(4 管理模式(SvC:操作系統使用的保護模式(5 數據訪問終止模式(abt:當數據或指令預取終止時進入該模式,可用于虛擬存 儲及存儲保護。(6 系統模式(sys:運行具有特權的操作系統任務.(7 未定義指令中止模式(und:當未定義的指令執行時進入該模式,可用于支持硬 件協處理器的軟件仿真。

30、ARII 微處理器的運行模式可以通過軟件改變,也可以通過外部中斷或異 常處理 改變。大多數的應用程序運行在用戶模式下,當處理器運行在用戶模 式下時,某些被 保護的系統資源是不能被訪目的。除用戶模式以外,其余的所有 6 種模式稱之為非用戶模式,或特權模式 (PrivilegedModes;其中除去用戶模式和系統模式以外的5 種又稱為異常模式(Exception Ilodes 常用于處理中斷或異常,以及需要訪問受保護的 系統資源等情況“玎“.2.2 系統硬件整體架構本系統將基于三星公司的 S3C2410B A 明處理器進行開發,開發平臺的具 體硬 件架構如圖 2-2 所示,圍繞處理器核心,還有很多

31、以外圍電路實現的功 能模塊,下面將 一一介紹.此外硬件結構還采用核心板與用戶板分開設計,兩者以標準接口連接(比如筆記 本DDR 內存的 200PIN 卡座,有利于用戶的升級或二次開發。用戶在不需要更改核心部分的情況下只需修改用戶板就能開發出自己的產品;或不改變用戶板而換一塊更高性能的核心板,以升級系統硬件.下圖能良好的說 明系統的具體結構:西南科技大學碩士研究生學位論文第 9 頁圖 2-2 系統的硬件模塊結構Fig.22Structure of Hardware ModuIes匭圈一巨圈圖 2-3 系統硬件結構F;g.2-3Systemat i c Hardware Structure核心板是

32、 ARM9 處理器的最小系統,主要包含主處理器、RAM 和 ROtA 存儲囂,通過外部總線結構與用戶板連接。從核心板的配置可以反映出控制器的性能。用戶板充分利用了 AR 鹋處理器的功能。包含有 LCD 接口,支持各種 TFT西南科技大學碩士研究生學位論文 第 10 頁LcD;觸摸屏接口,可接四線電阻式觸摸屏,可使用虛擬按鈕或開關,以盡量減少硬件開銷,降低成本;USB HOST/DEVICE 和 SD/MMc 接口,可以用 U 盤和 SD 卡這兩 種都是比較便宜的存儲介質來擴展代碼的存儲空間,并且 USB 接口可以作為視頻接 口,方便遠程監控;UART 提供標準的 232 電平、ADC 模數轉換

33、接口、SPI 接口、外 部總線接口和外部中斷接口,方便用戶二次開發;網絡接口必不可少,用以實現網絡 化管理和加工。2.3S3C2410B 處理器本系統的實現,采用了基于 ARM920T 核心的來自 Samsung 三星公司的 2410B 處理器。該處理器在嵌入式設計領域非常流行,有眾多的應用范例和資源。 3C2410B 處理器的最高頻率高達 203Mhz,性能卓越,能有效地支持各 類應用。同 時因為是 SOC 設計,片內集成了眾多的控制邏輯和資源,能夠大幅度縮減外圍硬件 的數量,并且工藝十分先進,因此功耗控制的很好,能廣泛的用于 PDA,工業控制系統, 手機,家電,小型終端等場合AMBAAM

34、酗m dm圖 2-453C2410H 處理器系統結構Fig.24 3G24108Processor Hardware Hierarchy西南科技大學碩士研究生學位論文第頁 3C2410B 處理器核心具有以下的特點:(1 ARM902T 核心片內集成 16k/16k 的指令/數據緩存.(24 通道 DMA 支持,3 個 UART 控制器。(32 個 USB host、1 個 USB Device。(4 24 個外部中斷,117bit 的 GPIO 口.(5 SD/MMC 控制器,NAND Flash SM 卡接口。(6 片上時鐘發生器,MPLL 和 UPLL。(78 通道復用型 ADC 集成,觸

35、摸屏接日。(8 功耗控制:正常,慢速,空閑以及關閉模式。(98 個內存 Bank 支持,支持從 NOR 和 NAND Flash 啟動。(10LCD 控制器(最大 4K 色 STN 和 256K 色 TFT 屏幕和一個專用 DMA 在上述 特點里,和本系統關系最為密切的就是最后所提的LCD 控制器。3C2410B 所集成的 LCD 控制器包含的控制邏輯,能夠完成系統顯存到外部 LCD 驅動的顯示數據傳 輸。此片內LCD控制器支持在單色的LCD顯示器上的模式有:單色,2-bit色(4級灰 度,4-bit色(16 級灰度。 在 STN 技術的 LCD 顯示器上,片內的 LCD 控制器還能支持 8

36、一 bit 色(256級彩色和 12-bit 色(4096 級彩色,采用的是時基抖動算法和幀率控制 方法來實現。當采用 TFT 類型的彩色液晶面板,并在調色板模式下時。內置的 LCD 控制器 還能支持卜 bit 色,2-bit 色,4-bit 色和 8-bit 色。在非調色板真彩模 式下,還支持更高 的 16 一 bit色和 24-bit 色.而Y3C2410B 的內置 LCD 控制器完全是可編程的,可以通過設置來支持不 同分 辨率的 LCD 顯示屏,數據位寬,接口時序,刷新頻率等等。可以說可控 性、可擴展性 和適應性都非常的出色.2.4 系統 FLASH 存儲模塊首先是用于系統軟件存儲的非易

37、失性存儲器的選擇,這里Y3C2410B 可以支持EEPROM,Flash 等選擇,考慮到靈活性和存儲成本,最終選取較為流行的 NAND Flash 存儲方案。后文將要介紹的重要的軟件,如 bootloader,Linux 操作系統以及其他需要 永久保存的應用軟件,就將存放在 Flash 內。Flash 存儲器是一種可在系統(In-System 進行電擦寫,掉電后信息不丟失的存儲 器。它具有低功耗、大容量、擦寫速度快、可整片或分扇區在系西南科技大學碩士研究生學位論文 第 12 頁統編程(燒寫、擦除等特點,并且可由內部嵌入的算法完成對芯片的操作,因而 在各種嵌入式系統中得到了廣泛的應用。作為一種非

38、易失性存儲器,Flash 在系統中通常用于存放程序代碼、常量表以及一些在系統掉電后需要保存的用戶數據等。常用的 Flash 為 8 位或 16 位的數據寬度,編程電壓 為單 3.3V。 主要的生產廠商為 ATMEL、AMD、HYUNDAI、Samsung 等,他們生產的同型器件一般具有相同的電 氣特性和封裝形式,可通用 m,。本系統的硬件平臺搭建時,芯片選型定位在 Samsung 三星公司的 5129 bitNAND Flash,折合 64M 容量,型號是 K9Ft208UOM YCBO。該芯片 NAND Flash 內 部還有 2048K x 8bit 的富裕容量。 該芯片功耗低,速度快,能

39、在 200us 的時間完成對 528byte的一個頁進行的編程(寫入操作,針對一個 16k byte 的塊進行一次刪除操作的 典型時間為2ms。頁內的數據能以 lbyte/5Ons 的速度進行讀取操作。該芯片的具體 特色如下;(1 2.73.6 伏的工作電壓。片上共(64M+2,048Kx 8hit 容量(2 頁編程操作:(512+16Byte,塊擦除操作:(16K+512Byte(3 頁面內隨機訪問時間:12us(最壞,線性訪問時間:50ns(最優(4 指令/地址/數據 10 口的復用,縮減了引腳數(5 硬件的數據保護功能(6 有指令寄存器操作(7 能同時支持 4 路的頁/塊編程/擦除操作(

40、8 智能 Copy Back 操作支持芯片的引腳定義如下圖所示:引腳定義5 咿 1 名動能苗洼l,00F07數糊cLE 指鎖存使能臟數據鎖存使轆CE片選使稚諛取使能WE 與八使髓wP 鼽倪護舳讀職/忙犄出M電源V 鼬地HC 來連接圖 2-5K9F1208UOIg Flash 芯片引腳定義 “Fig.2-5KgFI208UON Flash Chip Pin Oeser lotiOII西南科技大學碩士研究生學位論文 第 13 頁 2.5 系統 SDRAM 存儲模塊其次是系統運行時必要的存儲支持,即 SDRAM 子存儲系統。SDRAM 在系統 中主要用作程序的運行空問,數據及堆棧區。當系統啟動時,C

41、PU 首先從復位地址 OxO 處讀取啟動代碼,在完成系統的初始化后,程序代碼一般應調 入 SDRAM 中運行, 以提高系統的運行速度,同時,系統及用戶堆棧、運行數 據也都放在 SDRAM 中。與 Flash 不同韻是,SDRAM 不具有掉電保持數據的特性,但其存取速度 大大高于 Flash 存儲器,因此采用 SDRAM 作為運行時的存儲,能最大限度的提高系統性 能。而SDRAM 的存儲單元可以理解為一個電容,總是傾向于放電,因此為避免數據 丟失必、須定時刷新(充電。所以要在系統中使用 SDRAM,就要求微處理器具有刷新 控制邏輯,或是在系統中另外加入刷新控制邏輯電 路。目前常用的 SDRAW

42、為 8 位/16 位的數據寬度,工作電壓一般為 3.3V。主要的 生產廠商為 Hynix、Winbond 等。他們生產的同型器件一般具有相同的電氣特性和 封裝形式,可通用。a 3C4510B 及其他一些 ARM 芯片在片內具有獨立的 SDRAM 刷新控制邏 輯, 可方便的與 SDRAM 接口 .因此系統針對 3C2410B 的特點,針對高分辨 率 LCD 驅 動要占用較多顯存的特點,采用的是 Hynix 韓國現代的 256lllbit 容量,型號為HY57V561620CT-H 類型的芯片。選用一共 2 片,組成共計 64M x 8bit 的動態存儲系 統。該 SDRAM 芯片采用 54 針腳

43、的 TSOP II 封裝,典型的工作頻率為 133Mhz,具有 如下特點:(13.3 3 伏的工作電壓(2 所有的針腳都是 LVTTL 界面兼容的(3 輸入輸出都是在系統時鐘的上升沿觸發(4 內部由 4 個 bank 組成,每個 bank 是 4M x 16bit,自動刷新(5 每 64ms 內有 8192 個刷新周期(6 可編程的突發長度和突發類型:1/21418/頁線性突發或 1/2/4/8 交錯突發(7 可編程的 CAS 延遲周期,可為 2 或者 3 時鐘周期該芯片的引腳定義和系統的存儲模塊電路原理圖與連接圖如下。西南科技大學碩士研究生學位論文第 14 頁 3e.4rmTSOPII 舡5

44、O 洲 pmpl 時 l4a引腳定義時竹時忡使麓礴片連BIA地址戡蛾鏨群秘/牲凸 M 數據箱,胄A翱數據娃電溽/地1據犄出電薄,建未稀圖 2-6HY57V561620CT H SDRAM 芯片引腳定義 Fig.2-6HY57Y561620CT-H SDRAII Chip Pin Description圍 2 7 存儲系統的電路原理圖Fig.2-7Storage System Ci rGuit西南科技大學碩士研究生學位論文 第 15 頁根據硬件連線設計,本開發平臺的地址映射采取如下的設計NAND:0 x000000000 x04000000,共計 64Mb。SDRAM:0 x300000000

45、x34000000,共計 64Mb。2.6 系統串口通訊接口模塊本系統所要實現的完整硬件開發平臺,串行通訊 RS-232 接口必不可少。在系 統的軟件安裝和調試階段,RS 232 接口是非常重要的上位機(PC開發版(ARM 嵌入式系統通訊接口。RS=232 被定義為一種低速率串行通信中增加通信距離的單 端標準。RS-232 遵循 RS 一 232 一 C 標準,美國電子工業協 會(Electronic IndustriesAssociaten,EIA 把 RS 一 232 一 C 定義為:在數據終端設備和數據通訊設備之間使 用串行二進制數據交換的接口 ” RS32-C 標準是一種硬件協議,用于

46、連接 DTE(DataTerminal Equipment,數據終端設備和 DCE(Data Communications Equipment 數據通 信設備兩種設備。RS-232 一 C 標準采用的接口是 9 芯或 25 芯的 D 型插頭,要完成最基 本的串行 通信功能,實際上只需要 RXD、TXD 和 GND 即可,但由于 Rs 一 232 一 C 標準所定 義的高、低電平信號與Y3C4510B 系統的 LVTTL 電路所定義的高、 低電平信號完 全不同丄 VTTL 的標準邏輯“ 1 對應 2V3,3V 電平,標準邏輯“0 對應 0V0.4V 電平, 而 RS 一232-C 標準采用負邏輯

47、方式,標準邏輯“I 對應一 5V一 15v 電平,標準邏輯“O 寸應+5y、+15V 電平,顯然兩者間要進行通信必須經過信號電平的轉換,目前 常使用的電平轉換電路為 MAX232EW。系統設計了一個 9 芯的 D 型插頭,選擇Y3E3410B 的 UARTO。西南科技大學碩士研究生學位論文 第 16 頁帥圖 2-8 串行通訊模塊Fig.28SeriaI Communi cati on Iodule2.7 系統網絡通訊模塊另外就是網絡通訊的模塊,網絡部分選用的是 Circus Logic 公司的一塊 支持全 雙工 IOM Ethernet 的 CS8900A 芯片。該芯片全面支持 IEEE 80

48、2.3 標準,內含片上 內存,收發過濾器,完整的標準 ISA 接口,為 100 針 TQFP 封裝。該芯片對電源的要求 是 3v,最大工作電流也不過 55mA,能工作在 DMA,I/O, Memory 方式,傳輸和接收的 很多特性都是可編程改變的。該芯片對于 lOBaseT 規格的接口,能自動識別端口極性,自動校正.同時還支 持lOBase 2,lOBase5 以及 10Base- P。芯片獨有的 Packet Page 體系結構和 4Kb 的RAM 能夠提升其性能,主要是能良好的適應網絡的傳輸模式,最大限度的利用有 用的資源。該芯片的結構 一以及網絡通訊模塊的原理圖如 下:西南科技大學碩士研

49、究生學位論文 第 17 頁圖 2-90S8900A 芯片結構圖Fig.2-90S8900A OhiP Architeoture圖 2-10 網絡通訊模塊Fjg.2-10Network Commu nication ModuIe西南科技大學碩士研究生學位論文 第 18 頁 2.8 本章小結本章詳細介紹了本應用系統的硬件系統。包括分析目前流行的硬件器件特性,完成了硬件選型和外圍電路搭配;并介紹了各個功能模塊的具體組成 和電路原理,完 成了硬件系統的組建。西南科技大學碩士研究生學位論文 第 19 頁 3ARM 應用系統軟件方案3.1 基于 LintlX 的 ARM 應用系統嵌入式 LilltlX 系

50、統從軟件的角度看通常可以分為四個層次:引導加載程 序、 Linux內核、文件系統、用戶應用程序。從當前流行的開發形式來看,ARM 和 LiFlUX 相結合的開發占據了主流。考慮到數控系統的開放性問題,從軟件開發的角度來看,應該能夠根據需要綜合 利用開發商提供的程序包軟件和軟件單元,方便地構筑相應的系統。 數控系統的開 放程度可分為三個層次:(1 應用層次上的開放:用戶可以直接或通過網絡聯接運行各種應用軟 件,包括各 種編程軟件、工廠管理軟件、通信軟件、多媒體軟件等;(2用戶操作界面的開放:使用戶接口有其自己的操作特點,更加友好,并具備特 殊的系統診斷功能等;一(3 內核的開放:這是最深層次的開

51、放。內核提供已定義的接口,用戶把自己用高級程序設計語言(C,C+開發的程序連接到這些接口。這種內核的開放,不會使系統受到干預。這樣,最終用戶就可以把屬于他們自己的知 識經驗、專用工藝集成到應 用系統中,形成他們定制的、完全適合獨特應用的特定系統。為實現系統的開放性,在對系統作功能層次結構分析的基礎上,選用 Linux 構建 系統軟件平臺,開發 Linux 下的 LCD 高清驅動程序和圖形中間件 接口 API,使系統具 有可重組性,可移植性和可擴展性,便于高效優質地滿足用戶和廠商的多樣化、多層 次的要求,實現可定制的數控應用支撐系統。滿足上層控制軟件的開發需求。3.1.1LiflUX 操作系統簡

52、介Linux 是一個類似于 Unix 的操作系統。它起源于芬蘭一個名為Linus Torvalds的業余愛好,但是現在已經是最為流行的一款開放源代碼的操作系統。Linux 系統不僅能夠運行于 PC 平臺,還在嵌入式系統方面大放光芒,在各種嵌入式 Linux OS 迅 速發展的狀況下 丄 inux OS 逐漸形成了可與 Windows CE 等 EOS 進行抗衡的局面。 目前正在開發的嵌入式系統中,49%的項目選擇 Linux 作為嵌入式操作系統。Linux 現已成為嵌入式操作的理想選擇。典型的嵌入式 Linux 有如下幾種:西南科技大學碩士研究生學位論文第 20 頁(I RT Li nuxRT

53、Linux 是在新墨西哥礦業及科技學院計算機系由Victor Yodaiken 和Michael Barabanov 開發出來的。RT Linux 就是 Real Time Linux 的縮寫,RTLinux 建立在 Linux 內核基礎上,主要用于對實時要求比較嚴的場合。(2 uCI inuxI”?uCLinux 是一個完全符合 GNU/GPL 公約的操作系統,完全開放代碼,現在由Lineo 公司支持維護。uCLinux 主要是針對目標處理器沒有存儲管理單 元 MMU(MemoryManagement Unit 的嵌入式系統而設計的。(3 Embedix”1Embedix 是一種由 Lu n

54、eo 公司推出的嵌入式 Lin ux 軟件解決方案。在網 站http:/ 上可以免費獲得源碼。Embedix 是基于 PowerPC 和 x86 平臺 開發的,它提供了 Linux 的強大功能,還可以對需要功能進行剪裁,對嵌入式設備進行 支持。概括說來,將 Linux 應用于嵌入式系統的開發有如下一些優點:(1 精簡的內核,性能高、穩定 多任務.(2 適用于不同的 CPU 支持多種體系結構,如 X86、ARM、MIPS、ALPHA、 SPARC等。(3 能夠提供完善的嵌入式 GUI 以及嵌入式 X-Windows。內核的完全開放,使得可以自己設計和開發出真正的硬實時系統;對于軟實時 系統,在

55、Linux 中也容易得到實現。(5Linux 自身具備一整套工具鏈,容易自行建立嵌入式系統的開發環 境和交叉運 行環境,并且可以跨越在嵌入式系統開發中仿真工具(ICE 的障礙。(6 用戶可定制,可提供圖形化的定制和配置工具。(7 常用嵌入式芯片的驅動集,支持大量的周邊硬件設備,驅動豐富(8 針對嵌入式的存儲方案,提供實時版本和完善的嵌入式解決方案。(9 完善的中文支持,強大的技術支持,完整的文檔。(iO 強大的網絡支持,使得可以利用 Linux 的網絡協議棧將其開發成 為嵌入式的 TCP/IP網絡協議棧。綜上所述,目前成熟的嵌入式開發環境,無論從成本上考慮,開發的難 易度上考慮, 還是從已有的

56、軟件資源、硬件廠商的支持程度上來看,可定制的 Linux 操作系統都是嵌入式開發的首選平臺并且隨著網上開發團隊的壯 大,基于 Linux 的開發將越來 越多越來越方便“,西南科技大學碩士研究生學位論文第 21 頁 3.2BootLoader 的修改與移植Boot Loader 是在操作系統內核運行之前運行的一段代碼 n”這段代碼主要需 要完成的工作包括:正確的初始化處理器運行模式(包括工作模式,MMU 和 Cache 的 狀態,設置中斷向量表,建立內存空問的映射圖等等。從而 將系統的軟硬件環境帶到 一個合適的狀態,以便最終從 ROM 空間或者 FLASH 空間甚至是網絡載入操作系統 的內核代碼

57、一般說來,Boot Loader 并沒有一個通用的版本可以適應所有的開發環境,BootLoader 本身的許多代碼都是具體硬件平臺相關的。盡管如此,Boot Loader 仍然還是有很多共性,對于特定的任何嵌入式硬件環境,都能夠抽象出這些通用概念,用以指導 特定開發平臺的 Boot Loader 的設計和實現。(1 每種不同的 CPU 體系結構都有不 同的 BootLoader。有些 Boot Loader 也支持多種體系結構 CPU。除了依賴于 CPU 的體系結構外,BootLoader 實際上也依賴于具體的嵌入式板級設備的配置。(2 系統加電或復位后,3C2410B 會從地址 0 x000

58、00000 讀取它的第一 條指 令。而嵌入式系統通常都有某種類型的固態存儲設備(比如:ROM,EEPROM 或LASH 等被映射到這個預先安排的地址上。因此在系統加電后,CPU 將首先執行Boot Loader 程序。下圖是常見的固態存儲映像分布圖,能夠詳細而清楚的說明 Boot Loader所在的位置:引導參數I .內核根文件系統引導加載程序圖 3-1 f郴 h 內存儲空問分配示意圉Fig.3-1Flash Storage locatjng Figute(3 控制 Boot Loader 的設備或機制:主機和目標機之間一般通過串口 建立連 接,BootLoader 軟件在執行時通常會通過串口

59、來進行 i/o,比如:輸出打印信息到串口,從串口讀取用戶控制字符等。BE nable loadable module support幸Ker nel module loader表示對模塊的支持:使能對模塊的支持,可以選擇需要的內容:讓內核在啟動時 有自己裝入必須模塊的能力。System Type 一 SMDK 2410Gen eral setup 一 降Network ing support*System v IPC豐Sysctl support(ELFKernel core(/proc/kcoreformatKemel support for ELF bin ariesDefault ker

60、nel comma nd stri ng:noinitrd root=/dev/mtdblock/3console=ttySO init=/1inuxrc這里將缺省的傳遞給內核的命令行設為以上格式,也便于同 bootloader 配合,后面將繼續詳細說明。Block devices-塊設備設置:這里設置不支持 initrdNetworking options 一Packet socketUnj x doma in socket西南科技大學碩士研究生學位論文第 31 頁幸TCP/IP networki ng毒IP:Kernel level autoc on figurati on【IP:BOOT

溫馨提示

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

評論

0/150

提交評論