国立中央大学资讯工程学系大学部专题报告_第1页
国立中央大学资讯工程学系大学部专题报告_第2页
国立中央大学资讯工程学系大学部专题报告_第3页
国立中央大学资讯工程学系大学部专题报告_第4页
国立中央大学资讯工程学系大学部专题报告_第5页
已阅读5页,还剩56页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、國立中央央大學資資訊工程程學系大學部專專題報告告Embeeddeed AAppllicaatioon MP3 Plaayerr onn Duual-Proocesssorr Plattforrm OOMAPP15110指導教授授 : 吳曉光光 老師師學生 : 資資工4AA 侯凱凱元 資工工4A 黃黃致遠中華民國國92年年10月月目錄序論61- 11 研研究動機機.71- 22 專專題目標標.81- 33 工工作流程程.91- 44 開開發環境境與設備備100德州儀器器OMAAP 開開發套件件1002- 11 OOMAPP介紹110 2-1.11 OOMAPP是什麼麼?.10 2-1.22 DD

2、SP的的優點.1112- 22 OOMAPP Arrchiiteccturre介紹紹.122-2-1 OOMAPP15110 硬硬體架構構.12 2-2.22 OMMAP115100軟體架架構.12 2-2.33 DSSP / BIIOS Briidgee簡述.1132- 33 TTI IInnoovattor套套件 - OMAAP15510.1442-2.1 Genneraal PPurpposee prroceessoor - AARM9925TT.114 2-2.22 DDSP proocesssorr - TMMS3220C555x 155 2-2.33 IIDE Toool CCCS

3、 15 2-2.44 PPeriipheerall.116在OMAAP15510上上建構EEmbeeddeed LLinuux SSysttem.1173- 11 嵌嵌入式工工具1773-1.1 嵌入式式程式開開發與一一般程式式開發之之不同.173-1.2 Crooss Commpillingg的GNNU工具具程式1883-1.3 建立AARM-Linnux Crooss-Commpillingg 工具具程式.1193-1.4 Serriall Coommuuniccatiion Proograam.2003- 22 PPorttingg keerneel.213-2.1 Settup CCS

4、S .2113-2.2 編譯及及上傳LLoadder.23 3-2.33 編編譯及上上傳Keerneel.243- 33 建建構Rooot Fille SSysttem.2263-3.1 Flaash ROMM.2263-3.2 NFSS moounttingg.273-3.3 支支援NFFS MMounntinng 的的kerrnell.273-3.4 提供NNFS Mouuntiing Serrvicce293-3.5 DHCCP SServver3113-3.6 Linnux rooot 檔檔案系統統.3323- 44 啟啟動及測測試Innnovvatoor音效效裝置.3333- 55

5、建建構支援援DSPP prroceessoor的環環境.3443-5.1 Sollutiion - DSSP GGateewayy簡介.3343-5.2 DSPP GGateewayy運作架架構.3553- 66 架架設DSSP Gattewaay.363-6.1 重編kkernnel.3663-6.2 DEVVFS driiverr.363-6.3 編譯DDSP toool和AAPI.3373-6.4 測試.337MP3 Plaayerr.3384- 11 MMP3 介紹.3384- 22 MMP3 壓縮原原理.3994- 33 LLinuux MMP3 plaayerr spplayy.4

6、414.3-1 ssplaay介紹紹.4414.3-2 ssplaay 編編譯.4414.3-3 ssplaay 的的使用說說明.411程式改寫寫.425-1 程式評評估與改改寫.425-1.1 Intter-Proocesssorr Coommuuniccatiion Schhemee.4225-1.2 ARMM paart proograammiing.425-1.3 DSPP paart proograammiing.425-2 程式碼碼.435-3 雙處理理器程式式開發注注意事項項.47第六章 效能能評估與與討論4886-1 速度度.4486-2 CPPU負載載.4496-3 討論論.

7、4496-3.1分工工處理的的經濟效效益.4996-3.2音質質v.ss 浮點點與定點點運算.4496-3.3 DDSP Gattewaay架構構的限制制.506-3.4減少少IO溝通通.5006-3.5網路路掛載FFilee Syysteem的Dellay.51第七章結結論心得得.552序論1- 11研究動動機近年來PPDA、手機等等無線裝裝置上發發展的趨趨勢、對對複雜的的多媒體體應用發發展越來來越多,最新的的2.55G和33G手機機就是一一個很好好的例子子,它們們整合了了MP33音訊和和MPEEG4視視訊等多多媒體功功能。也也因此在在20001年,德州儀儀器公司司推出開開放式多多媒體應應用

8、平台台(Oppen Mulltimmediia AAppllicaatioon PPlattforrm;簡簡稱OMMAP)之設計計。OMAAP 是是一套先先進的架架構 ;它最大大的特色色是整合合了一顆顆 ARRMRIISC 處理器器 、 一顆低低功率消消耗的高高效能TTMS3320CC55xx 數位位信號處處理器 ( DDSP )。把把運算工工作平均均分配給給 RIISC 以 及及 DSSP處理理器,使使系統發發揮最大大的運算算能 , 而不不會浪費費電池的的電力。無疑的的,這個個新架構構OMAAP的推推出,在在多媒體體功能等等傳統處處理器不不易實現現的應用用開發上上,有很很大的潛潛力且值值得嘗

9、試試。我們可以以發現到到,目前前網路上上有很多多可以跑跑在RIISC處處理器的的應用程程式可下下載,但但是卻沒沒有RIISC與與DSPP整合的的程式-我我們在此此先稱之之DSPP ennhanncedd apppliicattionns。畢畢竟,OOMAPP這個架架構算近近兩年才才推出,發展的的時間不不算長,有很多多值得嘗嘗試的地地方,因因此我們們才會想想在德州州儀器的的OMAAP15510 硬體平平台上發發展嵌入入式系統統應用,並嘗試試開發DDSP enhhancced apppliccatiionss。1-2 專題題目標我們手邊邊有的硬硬體是:德州儀儀器的OOMAPP15110硬體體平台,

10、它最大大的特色色是雙雙處理器器,它它整合一一顆Geenerral purrposse 處處理器AARM與與一顆DDSP處處理器。我們的的專題就就是針對對這硬體體平台,來建構構嵌入式式系統環環境,並並期望能能嘗試開開發運用用到兩顆顆處理器器的應用用程式。我們這次次專題的的目標為為:移植(PPorttingg) LLinuux到新新的硬體體平台OOMAPP15110建構完整整的嵌入入式Liinuxx環境使ARMM與DSSP兩個個處理器器能夠順順利溝通通。撰寫雙處處理器間間溝通的的程式。嘗試將將apppliccatiionLinnux MP33 Pllayeer,改改寫成 DSPP-ennhannc

11、edd apppliicattionn,使兩兩個處理理器分工工運算執執行。1-3 工作作流程認識OMAP Architecture熟悉我們的硬體OMAP Innovator建立嵌入式系統工具熟悉DSP程式開發工具CCS使用、評估CCS提供的DSP函式庫移植OMAP Linux Kernel閱讀MP3 ISO標準文件學習寫DSP程式(使用C語言)建立並掛載Root檔案系統Trace MP3 player splay程式碼建立嵌入式系統環境瞭解MP3 decode,trace解碼部分的程式碼啟動OMAP音效並測試決定邀由DSP分擔MP3解碼的程式部分架設ARM與DSP 溝通環境訂好Inter-pr

12、ocessor communication scheme練習雙處理器間的溝通程式寫MP3 player的DSP端程式改寫MP3 player的ARM端程式測試與debugDSP enhancedMP3 player效能評估分析1-4 開發發環境與與設備硬體:(1) TI OMAAP15510 Innnovaatorr (2) ACEE USSB eemullatoor (3) 2台PPC軟體:(1) Linnux與與Winndowws20000(2) CCSS 2.0(CCodee Coompooserr Sttudiio),在Winndowws端 (3) 嵌入式式系統工工具組(如:crros

13、ss coompiilerr等),在Linnux端端第二章德德州儀器器OMAAP開發發套件2-1 OMMAP介介紹為何OMMAP能能夠因應應時代的的需求,以下我我們將簡簡單說明明OMAAP的優優勢,與傳統統的單核核心的差差異。2-1.1 OOMAPP是什麼麼?OMAPP是一套套先進的的架構,為無線線市場提提供了一一套系統統解決方方案,OMAAP可以以在一顆顆晶片上上,將許多多軟硬體體組件完完美整合合在一起起,包括:一套軟軟體基礎礎架構、一顆AARM RIISC處處理器、一顆低低功率消消耗的高高效能TTMS3320CC55xx數位信信號處理理器(DDSP)以及一一套分享享式的記記憶體架架構。透透

14、過一組組標準的的應用程程式界面面,OMMAP 軟體架架構也可可支援先先進的作作業系統統和應用用軟體;此外,TI還發展展出一套套獨特的的DSPP/BIIOS Brridgge架構構(2.22.3會會介紹),讓設設計人員員利用最最好的方方式,把把運算工工作平均均分配給給RISSC以及及DSPP處理器器,使系系統發揮揮最大的的運算效效能,而而不會浪浪費電池池的電力力。OMAPP是一種種開放式式的架構構,並提提供了一一套標準準界面,因此可可幫助協協力廠商商發展新新的應用用軟體或或是增加加新的功功能。OOMAPP架構可可移植到到任何一一種無線線裝置作作業系統統,而它它的應用用軟體也也相容於於絕大多多數的

15、作作業系統統。OMAPP架構擁擁有一種種獨特能能力,可可以在無無線網路路家電上上,同時時提供極極高的工工作效能能以及非非常省電電的特性性,因此此,OMMAP架架構已逐逐漸成為為產業的的實質標標準。 2-1.2 DDSP的的優點為了支援援多媒體體內容和和廣告、視訊會會議、語語音辨識識以及其其它的應應用,許許多無線線家電已已開始提提供全動動畫視訊訊的播放放功能,使DSSP技術術更顯得得重要。DSP確確實可提提供更好好的電力力消耗運算效效能特性性,因為為在基本本上,視視訊與音音訊的播播放都是是一種信信號處理理工作,而DSSP的主主要設計計目標,就是為為了支援援信號處處理運算算。相較較於RIISC處處

16、理器,DSPP元件在在每個時時脈週期期內只會會消耗更更少的電電力。而而且DSSP元件件只要用用更少的的指令,就可完完成一個個重複大大量數學學運算的的演算法法,並可可以在一一個時脈脈週期內內執行更更多的指指令。只憑一顆顆RISSC處理理器,那那麼第二二個應用用(例如如視訊)的執行行就會受受到影響響,由於於受限於於RISSC CCPU本本身信號號處理能能力的限限制,RRISCC處理器器必須中中斷目前前的工作作,以便便處理智智慧型電電話的要要求。相相較之下下,OMMAP架架構卻能能讓DSSP與RRISCC處理器器並行工工作,讓讓OEMM在使用用DSPP功能的的同時,讓RIISC執執行擅長長的命令令與

17、控制制功能。2- 22 OOMAPP15110 AArchhiteectuure介介紹我們所使使用的OOMAPP型號為為OMAAP15510,它包含含是一個個雙處理理器的架架構,其其中一顆顆是常用用在當行行動裝置置上的RRISCC PProccesssor - TII9255T AARM99TDMMI CCoree,另一一顆是用用來做訊訊號處理理的DSSP- TMMS3220C555x DSPP Coore。2-2-1 OOMAPP15110 硬硬體架構構OMAPP15110平台台由一個個微處理理器子系系統(AARM),一個個DSPP子系統統,一個個記憶體體介面流流量控制制器、一一些專用用的多

18、媒媒體應用用週邊設設備(MMWA)和一個個多工介介面構成成。流量控制制器(TTC)用用於控制制對外部部記憶體體的存取取,其最最高工作作頻率為為75MMHz,OMAAP內還還有1992K的的內部記記憶體,由ARRM和DDSP共共享。但但只有AARM才才能配置置DSPP中的MMMU(記憶體體映射單單元),因而決決定DSSP應以以怎樣的的方式存存取這些些資源。2-2.2 OOMAPP15110軟體體架構基於ARRM的用用戶並不不需要知知道元件件中還有有DSPP。他們們可能希希望開發發環境仍仍與單核核心處理理器時的的開發環環境相同同。換句句話說,他們希希望將DDSP完完全抽離離出來。於是,為了使使元件

19、中中DSPP的存在在變得透透明,TTI導入入了DSSP橋和和多媒體體引擎(多媒體體網路閘閘道)的的概念。DSPP橋為AARM和和DSPP設立連連接,可可將其看看作同時時存在於於兩個核核心中的的軟體層層,DSSP橋主主要用來來向ARRM上執執行的多多媒體引引擎導出出一組AAPI,以便其其存取DDSP資資源。而而多媒體體引擎則則向應用用軟體導導出一組組標準AAPI,這些AAPI正正是應用用軟體開開發商所所熟悉的的。以下為OOMAPP15110架構構圖: General-purpose processorGPP OSDSP managerOS adaptor DSPP/BIIOS Briidgee

20、DSP task and I/O controlDSP OSOS adaptorTMS320 DSP2-2.3 DDSP / BBIOSS Brridgge簡述述OMAPP架構擁擁有強大大的功能能以及易易於使用用的特性性,其中中關鍵就就在於DDSP/BIOOS BBriddge,它提供供了一個個整合完完美、易易於使用用的DSSP界面面給應用用軟體發發展人員員,讓廠廠商在發發展RIISC應應用程式式的時候候,可透透過一組組標準的的應用程程式界面面來使用用與控制制DSP的執執行環境境。使用了OOMAPP平台之之後RIISC,作業系系統核心心仍會負負擔相同同的職責責,就像像系統只只包含了了一顆RRI

21、SCC處理器器,但只只要透過過DSPP/BIIOSBBriddge的的協助,軟體發發展人員員就可以以把需要要大量運運算的功功能交給給DSPP元件,讓DSSP以非非同步的的方式來來執行這這些功能能,並且且不會佔佔用RIISC處處理器核核心的排排程資源源。2-3 TII Innnovvatoor套件件 - OMMAP115100TI IInnoovattor 套件提提供我們們能夠輕輕鬆的發發展應用用程式,套件包包含OMMAP115100開發平平台以及及CCSS(Coode Commposser Stuudioo),CCCS能能夠使我我們能夠夠更容易易、更迅迅速的去去發展DDSP程程式。OOMAPP

22、中每個個核心的的最高執執行速度度都可達達到1550MHHz,並並且都可可以隨作作業頻率率的降低低而作出出相應變變動以節節約功耗耗。2-3.1 GGeneerall Puurpoose proocesssorr - ARRM9225 ARM既既支援332位元元也支援援16位位元(TThummb模式式)指令令集,ARMM9255用於執執行作業業系統(OS)。以下下為ARRM9225的介介紹:Up tto 1175 MHzz (mmaxiimumm frrequuenccy)Volttagee: 11.5vv noominnal 16KBB I-cacche; 8KKB DD-caachee 192

23、-KB of shaaredd innterrnall SRRAM - fframme bbufffer Suppportt foor 332-bbit andd 166-biit (Thuumb modde) insstruuctiion setts Dataa annd pproggramm MMMUs Two 64-enttry traansllatiion loook-aasidde bbuffferss (TTLBss) ffor MMUUs 2-3.2 DSPP prroceessoor - TTMS3320CC55xxC55xx DSSP內有有5組數數據匯流流排,在在一個周周期內

24、允允許三次次讀取作作業和兩兩次寫入入作業。C555x最獨獨特的一一點就是是它具備備雙MAAC結構構,並且且其內部部具有一一個硬體體圖形加加速器。綜上所所述,CC55xx DSSP是一一款高度度複雜但但功能強強大的,專為基基於多媒媒體的即即時應用用而設計計低功耗耗元件。DSPP用於處處理所有有多媒體體應用。以下為為TMSS3200C555x介紹紹:Up tto2200 MHzz (mmaxiimumm frrequuenccy)Volttagee: 11.5vv noominnal One/twoo innstrructtionns eexeccuteed pper cyccle 32K x 1

25、16-bbit on-chiip dduall-acccesss RRAM (DAARAMM) (64 KB) 48K x 116-bbit on-chiip ssinggle-acccesss RAAM (SARRAM) (996 KKB) 16 KKB II-caachee, 88 KBB D-cacche Videeo hharddwarre aacceelerratoors forr DCCT, iDCCT, pixxel intterppolaatioon, andd mootioon eestiimattionn foor vvideeo ccomppresssioon 2-3.3

26、 IDEE Toool CCCS CCS(Codde CCompposeer SStuddio)是由德德州儀器器所提供供用來開開發DSSP程式式的套裝裝軟體,它提供供一個完完整的IIDE(Inttegrrateed DDeveeloppmennt EEnviironnmennt) ,對於於多處理理器、多多使用者者的專案案,並且且是第一一個提供供DSPP(TMMS3220C220000、TMSS3200C50000、 TMMS3220C660000)與OMAAP應用用程式開開發的環環境。CCS以以一致的的環境來來整合所所有hoost與與tarrgett工具,包括TTI的DDSP/BIOOS ke

27、rrnell、codde-ggeneerattionn tooolss、fasst ssimuulattorss、debbuggger、與Reeal-Timme DDataa Exxchaangee (RRTDXX)技術術,簡化化應用程程式的開開發。2-4 PeerippherralOMAPP元件中中有品種種豐富的的片上週週邊設備備,這些些週邊設設備可分分為DSSP專用用週邊設設備、DDSP公公共週邊邊設備、MPUU/DSSP共享享週邊設設備、MMPU公公共週邊邊設備和和MPUU專用週週邊設備備,其中中有些週週邊設備備只能用用於DSSP或AARM,其他的的則可由由二者共共享。OMAAP中的的兩

28、個核核心透過過幾組週週邊設備備匯流排排存取周周邊元件件。下圖是OOMAPP15110的架架構圖OMAPP15110 SSysttem Diaagraam第三章 在OMMAP115100上建構構嵌入式式Linnux系系統一開始是是從無到到有,整整個嵌入入式系統統環境一一點一滴滴的建構構起來,從事前前工具的的準備,到Looadeer、KKernnel到到Rooot檔案案系統建建構等過過程,都都會在前前4節詳詳細介紹紹。而OMAAP15510包包含了一一個ARRM處理理器和一一個DSSP處理理器。AARM處處理器角角色定位位為Geenerral Purrposse PProccesssorss (G

29、GPP),Linnux作作業系統統就是跑跑在這上上面。DDSP處處理器相相較於GGPP,它適合合做複雜雜的運算算工作,執行起起來會比比GPPP快。若若要能同同時使用用ARMM和DSSP處理理器,我我們的LLinuux還要要能支援援這兩個個之間溝溝通的機機制。這這也會在在最後兩兩節介紹紹。3- 11 嵌嵌入式工工具3-1.1 嵌入式式程式開開發與一一般程式式開發之之不同我們先簡簡單瞭解解一下,在嵌入入式系統統中程式式的開發發與一般般PC下下最大的的不同是是程程式編譯譯與程式式執行是是在不同同的平台台。一般而言言,因為為嵌入式式的硬體體平台空空間資源源以及編編輯環境境等限制制。我們們會在桌桌上型電

30、電腦這邊邊,也是是hosst端來來編譯開開發程式式,這樣樣會比較較方便;而taargeet端是是你的目目的平台台,是真真正執行行程式的的平台。Hostt端通常常和Taargeet端是是不同處處理器架架構的硬硬體。這裡需要要Crooss-Commpliing,Crooss-Commpillingg 就是是在某某個類型型的處理理器平台台中產產生其其他類型型處理器器可執執行檔的的編譯過過程。以以x866桌上型型電腦(hosst端)為例,他原本本編譯出出來的程程式,是是要給xx86 CPUU執行的的,我們們要在xx86這這邊編譯譯出能給給另外一一種CPPU架構構(如: ARRM、PPoweerPCC.

31、)執行的的程式,這就是是Crooss-Commpliing(跨平台台編譯)。這需需要在xx86電電腦上建建一套完完整的工工具程式式如:LLinkker、Loccatoor、CComppileer,還還有標準準C的函函式庫。3-1.2 Crooss Commpillingg的GNNU工具具程式在UNIIX下,有標準準的GNNU計劃劃,提供供很多標標準的程程式。當當然也包包括完整整的工具具程式和和C/CC+ 函式庫庫。主要要就是bbinuutills、ggcc、gliibc、gdbb等。以以下介紹紹一下這這些工具具:GCC ( GGNU Commpiller Colllecctioon)可以說是是

32、 GNNU 計計畫中最最重要的的作品之之一,它它提供了了自由軟軟體世界界高品質質的編譯譯器 (commpiller)。GCCC 一個個很大的的特色是是高度可可移植性性,目前前已知有有超過三三十種硬硬體平台台與作業業系統可可以執行行 GCCC。Binuutills( Binnaryy Uttiliitiees )GNU 計畫旗旗下的 binnutiils 套件中中,主要要提供了了這兩支支重要的的程式,分別為為組譯器器 ass 與連連結器 ld。在程式式的編譯譯過程中中,經過過編譯器器 (如如 GCCC) 的編譯譯與最佳佳化之後後,其輸輸出往往往就是程程式的組組合語言言碼。這這時還需需要經由由組譯

33、器器 (aasseembller) 的組組譯動作作,將組組合語言言碼翻譯譯成機器器語言,其輸出出通常稱稱之目的的檔 (objjectt fiile)。再經經由連結結器 (linnkerr) 將將此程式式所有的的日的檔檔與其所所需的系系統函式式庫與啟啟動模組組都連結結進來 (靜態態或動態態連結) 之後後,才能能產生個個可執行行程式。 GLIBBC (GNUU C Libbrarry)標準的 C 語語言中並並不包含含如資料料的輸出出入、記記憶體管管理、及及其他進進階的系系統服務務等元件件。C語語言將這這些元件件留給作作業系統統來實作作,當我我們的程程式需要要使用這這些元件件時,必必須經由由作業系系

34、統提供供的 CC 函式式庫 (libbc) 來取得得這些服服務。CC 函式式庫可說說是所有有應用程程式賴以以執行的的基底環環境。GGLIBBC裡頭頭主要是是C的分分享函式式庫( Shaaredd Liibraary )。3-1.3 建立AARM-Linnux Crooss-Commpillingg 工具具程式 在Linnux下下建立AARM架架構的CCrosss-CComppiliing 工具的的主要步步驟 :Stepp 1. 建立立binnutiilsStepp 2. 設定定kerrnell原始檔檔與標頭頭檔Crosss-ccomppiliing的的gccc與gllibcc需要kkernne

35、l的的標頭檔檔。kernnel的的souurcee coode要要先經過過 Moontiivissa 公公司(見見參考資資料)提提供的OOMAPP15110的ppatcch。再再修改MMakeefille的AARCHH和CROOSS_COMMPILLE。Stepp 3. 建立立temmporraryy gccc wwithhoutt gllibcc建立crrosss-coompiiledd版gccc的先先決條件件是:必必須先安安裝好ccrosss-ccomppileed版的的gliibc與與標頭檔檔。但一一開始我我們並還還沒產生生gliibc,因為產產生gllibcc也需要要gccc。所以以可

36、說是是雞生蛋蛋、蛋生生雞的關關係,ggcc需需要gllibcc,而gglibbc本身身又需要要gccc。不用用gliibc產產生一個個暫時的的gccc ,可可以參考考Thee Dinnhibbit_libbc hhackk”這篇tooolcchaiin HHowTTO。Stepp 4. 建立立temmporraryy gllibcc 用之前建建立的ccrosss-ccomppileed 版版的teempoorarry ggcc來來編譯gglibbc,設設定./coonfiigurre -buuildd = i5886-llinuux -taargeet = arrm-llinuux -enna

37、blle-aadd-onssStepp 5. 重新新建立完完整的ggcc現在gllibcc和它的的標頭檔檔已經存存在了,重新在在編譯一一次即可可。Stepp6. 重新新建立完完整的gglibbc利用完整整的gccc來重重新編譯譯gliibc,成完整整的crrosss-coompiiledd C libbrarry3-1.4 Serriall Coommuuniccatiion Proograam要從hoost端端上看到到tarrgett 端LLinuux ttermminaal的畫畫面。我我們是透透過PCC上的序序列連接接埠(SSeriial Porrt) 透過RRS2332線與與Innnov

38、aatorr Booardd 的序序列埠相相連接。需要透透過miiniccom(Linnux下下) 或或 超級級終端機機(Wiindoows 內建的的序列埠埠通訊軟軟體) 。設定定如下:每秒傳輸輸位元: 11152000 bbaudd 資料位位元: 8 ddataa biits停止位元元: 11 biit 同位檢檢查: no parrityy3- 22 PPorttingg keerneel在Kerrnell之前則則要先安安裝適當當的Looadeer,來來負責lloadd keerneel以及及開機(boootinng),再將經經過paatchh成OMMAP Innnovaatorr版本的的k

39、errnell編譯好好並燒錄錄到Fllashh ROOM。3-2.1 Settup CCSS目的:我我們希望望能利用用CCSS把looadeer與kkernnel放放到OMMAP上上 (1)軟軟體:CCSS2(CCodee coompooserr sttudiio 22)為TI所提提供的軟軟體(2)硬硬體:利用ACCE模擬擬器連OOMAPP的JTAAG設定CCCS: 1.事先先要先安安裝ACCE eemullatoor的驅驅動程式式 2.啟動動Settup Codde CCompposeer SStuddio 3.Immporrt aa Coonfiigurratiion Fille,選選擇O

40、MMAP115100 ESS2 XXDS5510 emuulattor 4.設定定Prooperrtiees,如如下圖 Boarrd NNamee & Datta FFilee中,選擇”Autto-ggeneeratte bboarrd ddataa fiile withh exxtraa coonfiigurratiion fille”,然後選選擇ACCE光碟碟中所附附的acce.ccfg (2)BBoarrd PPropperiitiees中的的IO Porrt,vallue設為0 xx0 (3)SStarrtupp GEEL FFilee(s)選擇iiARMM.geel與iiDSPP.g

41、eel (iARRM.ggel與與iDSPP.geel為支支援ACCE的另另外的ggel)。5.設定定完之後後啟動CCCS,即結束束。3-2.2 編譯及及上傳LLoadder先編譯lloadder,以便之之後looad kerrnell用。而而loaaderr本身要要上傳到到Flaash ROMM這動作作是由CCCS 上傳,透過JJTAGG傳輸。編譯Looadeer: 我們利用用MonntaVVistta所提提供的LLoadder,編完之之後會產產生seetupp與rrrloaad 上傳Looadeer :開啟在33-1設設定好的的CCSS,並連連接好JJTAGG連線。選擇FFilee選項裡裡

42、頭的”Loaad PProggramm”,來上上傳rrrloaad。但但實際上上此時lloadder並並還沒真真正燒錄錄到room,此此時是在在ramm中,但但這時我我們已經經可以藉藉由seeriaal 傳傳看到lloadder的的畫面。接著,我我們選擇擇2.SStorre RRAM coomp too Fllashh ,才才是真的的把looadeer從RRAM燒燒錄到RROM上上面,下下次重新新開機,loaaderr仍然會會在ROOM上面面。3-2.3 編譯及及上傳KKernnel編譯keerneel的過過程 (1)kkernnel linnux-2.44.199,需ppatcch到llin

43、uux-22.4.19-rmkk7,這這是針對對ARMM的paatchh,再再利用MMonttaViistaa所提供供對OMMAP的的pattch,這是針針對對OMAAP的ppatcch,變變成liinuxx-2.4.119-rrmk77-ommap。(2)要要注意編編kerrnell時要指指定CRROSSS_COOMPIILE,不然會會編成XX86版版makee ARRCH=armm CRROSSS_COOMPIILE=armm-liinuxx- iinnoovattor_connfigg makee ARRCH=armm CRROSSS_COOMPIILE=armm-liinuxx- oo

44、ldcconffig makee ARRCH=armm CRROSSS_COOMPIILE=armm-liinuxx- ddep zImmagee上傳 LLinuux kkernnel 利用rrrloaad lloadder所所提供的的介面來來loaad kkernnel stepp 1 用minnicoom透過過serriall poort 連上ommap boaard stepp 2 將 linnux imaage轉轉成 rrrlooad forrmatt mkimmagee -LAdddr 10CC080000 -EEAdddr 110C0080000 zzImaage vmllinuu

45、z.rrr mkimmagee : rrlloadd目錄裡裡頭的一一支toool, 用來來產生rrrlooad forrmatt immageezImaage : oriiginnal linnux kerrnell wiith ELFF foormaat vmliinuzz.rrr : linnux kerrnell wiith rrlloadd foormaat stepp 3 在rrlloadd meenu 中選擇擇dowwnlooad keerneel (參見上上圖)於另外一一個ttty下,打指令令 :ccat vmllinuuz.rrr /ddev/ttyyS03- 33 建建構Ro

46、oot Fille SSysttem OS可說說是由kkernnel和和Rooot檔案案系統(Rooot FFilee Syysteem)組組成的,這是指指一個OOS的使使用者環環境,包包括應用用程式、設定檔檔、Hoome目目錄等。通常嵌嵌入式系系統下的的Rooot檔案案系統,有兩種種掛載模模式,一一種是製製作成映映像檔燒燒錄到FFlassh RROM,另外一一種則是是NFSS 掛載載。3-3.1 Flaash ROMM將Rooot檔案案系統製製作程映映像檔,燒錄進進去Fllashh ROOM,由由kerrnell開機時時去掛載載。但每每修改一一次系統統,就得得重新製製作映像像檔和燒燒錄的動動

47、作,通通常在系系統完備備之後,才傾向向用這種種掛載方方式。我們利用用rrlloadd looadeer所提提供的介介面來上上傳Rooot檔檔案系統統imaage,同之前前上傳kkernnel,只是在在rrlloadd選單改改成doownlloadd fillesyysteem。我我們嘗試試的keerneel是由由dellphii公司(見參考考資料15 )所所提供的的,它會會mouunt 本機上上的fiile sysstemm 但是我我們開機機之後 , 一一開始初初始畫面面都還順順利,到到了moounttingg fiile sysstemm 便會會卡死。嘗試換換不同FFilee syystee

48、m ,指定不不同位址址等等, 還是是解決不不了問題題 。根據台灣灣代理商商智控公公司(見見參考資資料116 )的回回覆是,因為他他Booot RROM上上面有加加密,暫暫時無法法使用。因此我我們打算算先採用用NFSS Moounttingg。3-3.2 NFSS moounttingg另外一種種則是NNFS掛掛載(mmounntinng),這種網網路遠端端掛載可可解決,嵌入式式硬體本本身空間間不足的的問題,更重要要的是,在測試試系統的的階段,整個FFilee Syysteem常常常變動,為避免免每做一一次更改改就要重重新製作作映像檔檔和燒錄錄的動作作,NFFS MMounntinng提供供我們

49、很很方便的的模式,來發展展我們的的嵌入式式系統環環境。而而我們所所需要做做的工作作有:支援NFFS MMounntinng 的的kerrnell提供NFFS MMounntinng的SServver提供開機機初期網網路相關關設定的的DHCCP SServver要讓Innnovvatoor掛載載的Reemotte RRoott檔案系系統以上過程程在接下下來幾節節中,會會一一介介紹。3-3.3 支支援NFFS MMounntinng 的的kerrnell由於暫暫時無法法解決ffilee syysteem擺在在romm上,所所遇到開開機無法法mouunt的的問題,因此,打算嘗嘗試改採採用Moount

50、t reemotte ffileesysstemm foor tthe OMAAP 這這時就用用另外一一個keerneel wwithh NFFS mmounnt ssuppportt ,這這個用ppatcch過的的rmkk-ommap的的kerrenll soourcce即可可,它預預設即為為witth NNFS mouuntiing。kernnel connfigg要做的的修改(1) 支援DDHCPP和BOOOTPPNetwworkkingg opptioons * IPP: kkernnel levvel auttocoonfiigurratiion * IP: DHHCP supppo

51、rrt (NEWW) * IP: BOOOTPP suuppoort (NEEW) Boottp(bboottstrrap prootoccol):提供供無硬碟碟主機所所需之IIP位址址和開機機資訊 DHCPP:DHHCP是是從原有有的BoootPP協議發發展起來來的,原原來的目目的是為為無碟工工作站分分配IPP地址的的協議,目前更更多的用用於集中中管理IIP地址址。DHCPP可向前前對BOOOTPP ccomppatiiblee,因此此,可用用DHCCP SServver取取代BOOOTPP Seerveer(2) 支援NNFS Fille ssysttemFilee syysteem -

52、Nettworrk FFilee Syysteems NFSS fiile sysstemm suuppoort* Proovidde NNFSvv3 cclieent suppporrt* Rooot ffilee syysteem oon NNFS(3) 下給KKernnel 的命令令(Coommaand Linne)CONFFIG_CMDDLINNE=memm=322M cconssolee=tttyS00,11152000n88 nooiniitrdd rooot=/devv/nffs ffsrooot=1400.1115.550.443:/nfss_rooot ip=dhccp nf

53、s_rooot 代代表nffs sservver為為1400.1115.550.443 根根目錄為為/nffs_rroottconssolee為ttyyS0(Serriall poort 1) ip是用用DHCCP發給給的3-3.4 提供NNFS Mouuntiing Serrvicce架設NFFS sservver (1) 要讓rppc.nnfsdd 、 rppc.mmounntd、porrtmaap等daeemonn順利跑跑起來,詳細可可參考網網路上文文件還有有NFSS-HOOWTOO 等資資料。主主要是裝裝nfssutiils這這套件,再利用用 /eetc/iniit.dd/nffs這隻

54、隻scrriptt,利用用它來啟啟動或關關閉NFFS SServvicee。這裡提供供一個測測試NFFS 相相關的RRPC Serrvicce 運運作的指指令roootmmonkkey monnkeyy# rpccinffo -p pproggramm veers prooto poort 11000000 2 tccp 1111 poortmmappper 11000005 2 tccp 9954 moounttd 11000003 3 uddp 20049 nffs至少要看看到上面面這三項項,你的的NFSS Seerveer才能能正常運運作(2) 編輯/eetc/expportts NFS

55、 Serrverr設定檔檔很單純純,只有有這個/etcc/exxporrts,用來設設定你要要分享出出去的目目錄、可可acccesss的對象象、讀寫寫權限等等以下為我我們的/etcc/exxporrts之之內容:/nfss_rooot 1400.1115.550.00/2555.2255.2555.0(rw,no_rooot_ssquaash) /nfss_rooot/etcc 1440.1115.50.0/2255.2555.2555.00(rww,noo_rooot_squuashh) /nfss_rooot/binn 1440.1115.50.0/2255.2555.2555.00(rw

56、w,noo_rooot_squuashh) /nfss_rooot/sbiin 1140.1155.500.0/2555.2555.2255.0(rrw,nno_rroott_sqquassh) /nfss_rooot/prooc 1140.1155.500.0/2555.2555.2255.0(rrw,nno_rroott_sqquassh) /nfss_rooot/devv 1440.1115.50.0/2255.2555.2555.00(rww,noo_rooot_squuashh) /nfss_rooot/usrr 1440.1115.50.0/2255.2555.2555.00(rw

57、w,noo_rooot_squuashh) /nfss_rooot/libb 1440.1115.50.0/2255.2555.2555.00(rww,noo_rooot_squuashh)設定說明明 :/nfss_rooot/sbiin、 /nffs_rroott/ettc等這這些是我我們提供供給人分分享的目目錄可acccesss的對象象是1440.1115.50.0/2255.2555.2555.00 這個個網域的的IP讀寫權限限為reead/wriite皆皆可 . no_rroott_sqquassh是可可使用rroott 權限限列出自己己目前分分享出去去的目錄錄roootmmonkke

58、y iniit.dd# shoowmoountt -eeExpoort lisst ffor monnkeyy.liinuxx.cssie.ncuu.eddu.ttw:/nfss_rooot 1440.1115.0.00/2555.2255.0.00/nfss_rooot/libb 1440.1115.0.00/2555.2255.0.00/nfss_rooot/mntt 1440.1115.0.00/2555.2255.0.00/nfss_rooot/usrr 1440.1115.0.00/2555.2255.0.00/nfss_rooot/devv 1440.1115.0.00/2555.

59、2255.0.00/nfss_rooot/varr 1440.1115.0.00/2555.2255.0.00/nfss_rooot/binn 1440.1115.0.00/2555.2255.0.00/nfss_rooot/etcc 1440.1115.0.00/2555.2255.0.00修改/eetc/expportts檔案案之後並不需要要重新啟啟動NFFS SServver,可利用用expporttfs( 也在在nfssutiils套套件裡 )名稱 : eexpoortffs - maainttainn liist of NFSS exxporrtedd fiile sysstemms

60、用法 : #expporttfs ra-r Reeexpoort dirrecttoriies-a Expportt orr unnexpportt alll ddireectooriees.3-3.5 DHCCP SServver一開始kkernnel 在要準準備去掛掛載遠端端NFSS Seerveer上的的檔案系系統之前前,也需需要一個個IP和和相關的的網路設設定,才才能藉此此IP來來跟NFFS SServver要要求掛載載,但在在還沒掛掛載檔案案系統前前,他無無法讀取取自己的的網路設設定,因因此需要要DHCCP提供供。過程程就是kkernnel發發出BOOOTPP(boootsstraa

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论