中文字幕一区二区三区四区五区-亚洲综合视频在线-欧美精品免费在线观看-日本精品视频一区-777奇米视频-91九色视频在线观看-欧美激情免费在线观看-欧美国产视频一区-99精品视频在线看-日韩欧三级-亚洲一区www

寧波市鄞州首南恒宇激光雕刻廠

嵌入式微處理器的嵌入式操作系統(tǒng)-uClinux
分享到:


序言

在過去的兩年中,隨著嵌入式設備的發(fā)展改進,Linux操作系統(tǒng)受到了越來越多的青睞,尤其是用于消費產品、電訊路由器和交換機、網(wǎng)絡產品、工業(yè)和汽車等應用。

最近,一些大的消費電子公司達成協(xié)作,建立消費者電子Linux論壇(CELF),以進一步開發(fā)家庭數(shù)字電子設備的Linux平臺。CELF的發(fā)起者(Matsushita Electric、Sony、Hitachi、NEC、Royal Philips Electronics、Samsung、Sharp和Toshiba)將重點放在Linux的改進上,使之成為消費電子設備的開放源代碼平臺。同樣,他們對開放源代碼協(xié)會的精神也給予了積極的支持和發(fā)揚 。

嵌入式Linux的優(yōu)點在于它的版權免費、源碼開放、結構緊湊,這為日益增長的應用軟件基礎提供了堅實的后盾。Linux是一個全功能的操作系統(tǒng),支持各種網(wǎng)絡和文件處理協(xié)議,這對嵌入式系統(tǒng)來說是很重要的,因為它必須在任何時間任何地點進行計算。Linux采用模塊化結構,通過去除嵌入式系統(tǒng)中不必要的實用程序、工具和其它系統(tǒng)服務,它可以很方便地實現(xiàn)結構精簡。在嵌入式設備市場中,采用Linux的公司可以更迅速地將產品推向市場,更快地增強產品的可靠性。對開發(fā)者來說,AD的Blackfin?處理器和uClinux的結合也許很有吸引力。Blackfin?處理器集合了DSP的計算能力和微控制器的功能,滿足了數(shù)字音頻、視頻和通信方面的應用需求。

我們在單塊芯片上結合一流的DSP內核和傳統(tǒng)微控制器的體系結構,避免了其它傳統(tǒng)復合處理器系統(tǒng)的限制性、復雜性和高成本的問題。在已有的外部設備(SPI、帶IrDa 功能的UART、定時器、實時時鐘(RTC)、看門狗(watchdog)和事件控制器(event controller))的基礎上,所有Blackfin處理器家族提供雙通道串行接口(SPORTs)---每個串行接口支持4個立體聲I2S通道,數(shù)據(jù)速率達100 MBits/s。而且Blackfin處理器家族的最新成員(ADSP-BF531、ADSP-BF532、ADSP-BF533和ADSP-BF561) 提供并行外部接口(PPI),實現(xiàn)TFT平板顯示器和視頻轉換器(CCIR-656, 27 MHz)的無縫連接,或者作為AD/DA轉換器的并行接口,速率達65MSPS。

其它封裝也是可選的

所有的Blackfin處理器都藝術地將最先進的信號處理引擎和清晰正交的類RISC微處理器指令集以及支持SIMD單指令多數(shù)據(jù)的多媒體功能復合成一套單指令集的結構,稱之為微信號結構(MSA)。該內核是調整的雙-MAC Harvard 結構,這種結構旨在實現(xiàn)音頻和視頻算法的非并行計算,以及實現(xiàn)操作系統(tǒng)中標準的程序流和常用的仲裁操作。

Blackfin 的ADSP-BF531/BF532/BF533處理器有兩個大的片內存儲器塊,提供通往內核的高速通道。這些內存塊可以適應處理器內核的最高速度。它們位于內核的旁邊,稱為L1存儲器,可以配置為數(shù)據(jù)或指令靜態(tài)處理器(SRAM)或高速緩沖存儲器。當配置為高速緩存時,處理外部SDRAM的代碼的速度非常接近內部存儲器直接處理的速度。這個特征特別適用于uClinux內核的運行,因為它沒辦法被全部裝入內部存儲器。而且,當使用c語言編程時,可以通過使用高速緩存來最大優(yōu)化外部存儲器到內核之間的存取。

Blackfin處理器采用低電壓,低功耗的設計,具備動態(tài)電源管理功能。完全滿足目前的移動和電池供電需求,其它的處理器都無法做到這一點。Blackfin處理器配有多重的、高度靈活和獨立的直接存取控制器(DMA),用來支持自動數(shù)據(jù)傳輸,并使處理器內核受到的間接影響達到最小。

DMA 的傳輸操作可以發(fā)生在ADSP-BF531/BF532/BF533處理器的內部存儲器到與有DMA能力的外部設備之間。而且,DMA傳輸也能夠在DMA外部設備和連接到外部存儲器接口的外部設備(包括SDRAM控制器和異步存儲控制器)之間進行。

Linux和uClinux的區(qū)別

由于Linux和UNIX相似,是多用戶、多任務的操作系統(tǒng),內核必須采取特殊的防范措施,以保證同一系統(tǒng)內來自不同用戶的上千個操作正確安全地運行。UNIX的安全模型(即Linux之前的設計)能夠保護每個用戶操作的自身環(huán)境和地址空間。每個用戶操作都受到保護,防止被其它用戶喚醒,而且,虛擬內存(VM)系統(tǒng)對現(xiàn)代CPU還有另外的要求,比如在個人處理內存中實現(xiàn)動態(tài)內存分配和隨機內存區(qū)域規(guī)劃。有一些設備,如Blackfin 處理器,沒有提供全功能的MMU內存管理單元,因為開發(fā)者的應用程序并不使用操作系統(tǒng),通常也不需要MMU,而且,Blackfin的弱MMU的處理器往往具有更高的效率,其價格也明顯低于其它產品。

為使Linux與這些設備相適應,必須進行一些改動:
1. 沒有實際的存儲器保護(一個錯誤的環(huán)節(jié)可以讓整個系統(tǒng)停機)
2. 沒有交叉(fork)系統(tǒng)調用
3. 只有簡單的內存分配
4. 其它一些較小的區(qū)別

存儲器保護對大多數(shù)嵌入式系統(tǒng)來說不是很大的問題。Linux是一個很穩(wěn)定的平臺,尤其是在嵌入式系統(tǒng)中,軟件崩潰的情況很少發(fā)生。第二點的問題要大一些。在為UNIX和Linux編寫的軟件中,開發(fā)者常常使用fork系統(tǒng)調用來實現(xiàn)并行處理,fork調用可以準確拷貝原始程序并同時予以執(zhí)行。為了提高效率,它使用MMU將父程序映射到子程序,并只拷貝寫入子程序的內存區(qū)。因此uClinux不能提供fork系統(tǒng)調用。它提供vfork,一種特殊版本的fork,在vfork程序中當子程序執(zhí)行時父程序即會終止。

因此,使用fork系統(tǒng)的軟件在使用uClinux支持的vfork或線程時必須重寫,因為他們使用相同的內存空間,包括堆棧。就第三點來說,一般情況下支持uClinux的malloc系統(tǒng)不會有問題,但是,有些時候必須進行小的調整。大部分適用于UNIX和uClinux的軟件(可在http://freshmeat.net上找到此類軟件)能夠直接在uClinux上編譯,其它的則可使用微小的移植或調整(tweaking)。只有很少的應用軟件不能在uClinux上運行,其中大部分不能作為嵌入式應用軟件。

在uClinux上開發(fā)

在選擇開發(fā)硬件時,開發(fā)者不應只考慮價格和可用性方面,同時也應考慮源代碼驅動和文檔的易獲取性。 一個uClinux Blackfin處理器開發(fā)環(huán)境包括GNU編譯器、(gcc交叉編譯器 cross Compiler) 和 binutils (鏈接器linker、匯編器assembler等)。一些GNU工具諸如awk、sed、make、bash ... 還有plus tcl/tk是必須的,盡管他們通常在桌面linux的安裝套件中。 安裝好uClinux安裝包的桌面環(huán)境和解壓后,開發(fā)工作就可以進行了。

第一步,開發(fā)者利用圖形配置軟件,為目標硬件選擇合適的板極支持包。開發(fā)者要利用自己的硬件,以便在EZ-KIT Lite 評估板或STAMP硬件板上進行開發(fā)(訪問www.blackfin.uclinux.org獲取原理圖和產品文件)。然后他們可以開始編寫驅動程序,通過拷貝已有的BSP并調整一些參數(shù)來制作BSP。

聯(lián)系我們

地址: 浙江省.寧波市鄞州區(qū)寧姜公路(九曲小區(qū)二期旁)

郵編: 315040

聯(lián)系人: 盛立峰

電話: 0574-87139378

傳真: 0574-87139378

手機: 13867861670

郵箱: 85400329@qq.com

聯(lián)系我們