嵌入式系统架构.pdf
上传人:qw****27 上传时间:2024-09-12 格式:PDF 页数:25 大小:2MB 金币:15 举报 版权申诉
预览加载中,请您耐心等待几秒...

嵌入式系统架构.pdf

嵌入式系统架构.pdf

预览

免费试读已结束,剩余 15 页请下载文档后查看

15 金币

下载此文档

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

第一章嵌入式系統架構南台科大電子系2005/5/101-1前言S3C4510B是一高性能、低功耗的32位元進階RISC處理器(AdvancedRISCmachine,簡稱ARM)。以ARM為中央處理器所發展出來的低價位高效能Linux平台,可以充分利用Linux的豐富資源,在平台上發展各種應用,目前已支援乙太網路(Ethernet)。Linux提供多種系統功能供應用程式使用,加上Linux跨平台的特性,發展applications可以在一般桌上PC(x86)的LinuxC來發展,經編譯連結產生執行檔之後,再下載至本ARM開發平台上執行即可。圖1-1與圖1-2分別為S3C4510B的功能方塊圖及接腳圖。圖1-1S3C4510B的功能方塊圖1圖1-2S3C4510B的功能方塊圖S3C4510B能外接記憶體,並且安裝具有uCLinux作業系統的核心程式於bank0Flash記憶體內,所以稱之為嵌入式系統(EmbeddedSystem)。目前來說嵌入式作業系統中包含有VxWORKs、PalmOS、WindowsCE、Linux等,但成長最快的非微軟WindowsCE作業系統而首推Linux,其原因如下:開放原始碼、模組化設計Linux除了把原始碼公開以外,任何人都可以自由使用、修改、散佈,而Linux核心本身採模組化設計,讓人很容易增減功能,例如我的平台並不需要藍芽的功能,我只要不把這項功能加入,有需要就加入,不需要就刪除,由於這樣的高的彈性,我們可以調校出最適合我們硬體平台的核心出來。穩定性夠Linux不屬於任何一家公司,但是它的開發人員卻是全世界最多的,每天在全球都有無數的人參與LinuxKernel的改進、除錯、測試,這樣嚴苛的條件造就了穩定度高的Linux。2網路功能強大Linux的架構是參考UNIX系統而來,因此Linux也承襲了UNIX強大的網路功能。跨平台Linux一開始是基於Intel386機器而設計,但是隨著網路的散佈,各式各樣的需求湧現,因此就有許多工程師致力於各式平台的移植,造成了Linux可以在x86、MIPS、ARM/StrongARM、PowerPC、Motorola68k等平台上運作。ARMEmbeddedSystem是將Linux作業系統成功的移植在以ARM處理器為核心的機器上,而其所運作的核心為uCLinux,uCLinux是Linux2.0作業系統的衍生程式,uCLinux精簡了Linux並保留Linux作業系統的穩定度。1-2uCLinux介紹uCLinux是專爲無記憶體管理單元(MemoryManagementUnits;MMU)的微控制器打造的嵌入式Linux作業系統。在uCLinux這個英文單詞中u表示Micro,小的意思,C表示Control,控制的意思,所以uCLinux就是Micro-Control-Linux,字面上的理解就是“針對微控制領域而設計的Linux系統”。uCLinux的內核要比原Linux2.0內核小的多,但保留了Linux作業系統的主要優點--「穩定性」,優異的網路能力以及優秀的文件系統支援。以下幾點對uCLinux作介紹:記憶體管理這部分是uCLinux與傳統Linux區別最大的地方。標準Linux是針對有MMU的處理器設計的。對於uCLinux來說,其設計針對沒有MMU的處理器,即uCLinux不能使用處理器的虛擬記憶體管理技術。由於沒有MMU管理,所以uCLinux對於記憶體的存取是直接的,作業系統對記憶體空間沒有保護,各個進程實際上共用一個運行空間,用戶程式同內核以及其他用戶程式在一個位址空間,程式開發時要保證不侵犯其他程式的位址空間,以使得程式不至於破壞系統的正常工作,或導致其他程式的運行異常。uCLinux的核心程式載入方式uCLinux的核心程式有兩種可選的運行方式:可以在flash上直接運行,也可以載入到記憶體中運行。後者可以減少記憶體需要。1.Flash運行方式:把可執行文件燒到flash上,系統啓動時從flash的某個地址開始逐句執行。這種方法實際上是很多嵌入式系統採用的方法。2.直接載入到記憶體中運行:把壓縮文件存放在flash上,系統啓動時讀取壓縮文件在記憶體裏解壓,然後開始執行,這種方式相對複雜一些,但是運3行速度可能更快(RAM的存取速率要比Flash高)。同時這也是標準Linux系統採用的啓動方式。uCLinux的應用程式庫uCLinux小型化的另一個做法是重寫了應用程式庫,相對於越來越大且越來越全的glibc庫,uCLinux的應用程式庫uClibc