嵌入式實時操作系統的RAM盤擴展
發布時間:2008/5/27 0:00:00 訪問次數:598
     摘要:介紹了一種在嵌入式實時操作系統內核(以下簡稱實時內核)上實現ram盤的方法,配合接受用戶命令的shell任務,可實現嵌入式系統的多任務動態加載和監控,擴展了實時內核的應用領域。實時內核采用目前十分流行的免費內核μc/os-ⅱ,硬件不臺為通用現場總線控制器系統。
    
    
     關鍵詞:μc/os-ⅱ內核
     嵌入式系統 通用現場總線控制器(gpfc) coldfire
     1 嵌入式rtos
     目前,嵌入式rtos的應用領域越來越廣泛。已經有80多個rtos廠商生產面向8位、16位、32位、甚至64位微處理器的rtos產品。商業的實時操作系統如vxworks,psos,vrtx,windowsce等功能完善,提供了完備的開發環境,但大多價格昂貴,不提供源代碼(即所謂的黑箱)。用戶不了解其工作機制,更不能進行修改和擴展。某些商業系統還要求用戶在產品投產后繼續支付軟件費用。這對于國內的用戶開發中小應用系統來說,是一項沉重的負擔。而采用開放源代碼的實時內核不失為一種選擇。開放源代碼的另一個好處是用戶可以根據具體需要刪改和擴展功能。本文將以μc/os-ⅱ在通用網絡控制器上的應用為例,說明開放源代碼的實時內核在可擴展性方面的優點,以及筆者在使用中的一些心得體會。
     2 通用現場總線控制器
     gpfc(general purpose field bus controller)——通用現場總線控制器是用于加速器數據采集系統中的網絡控制器,由德國國家同步輻射實驗室(desy)dr.clausen
     matthias領導的研究小組開發。用于不同種類的現場總線、以太網之間的通訊控制,功能相當于不同類型子網之間的網關(關于gpfc的技術細節,感興趣的讀者可以查詢desy的主頁http://www.desy.de)。系統微控制器采用motorola公司68k家庭的32位mcu
     coldfire 5206e。在33mhz總線頻率下能達到17mips的處理能力。由于coldfire將片選邏輯電路、總線控制器、dram控制模塊等全部集成在mcu內部,使得外轉帳電路室得十分簡單。系統配有32mb
     dram和1mb flash ram,并有兩個網絡接口a和b。該系統的硬件設計非常靈活,網絡接口配以不同的驅動電路,可支持以太網、can、profibus、mil1553等多種現場總線,實現網絡間的連接和控制。只要采用不同的網絡協議,就可以連接不同的子網,實現不同的控制。gpfc配以不同的網絡模塊可以替代目前廣泛使用的vme工控系統,由于舍棄了vme昂貴的機箱、總線板,大幅度減低了主機成本。gpfc系統結構示意如圖1所示。
     3 在gpfc上運行rtos
     gpfc的系統軟件基于嵌入式實時操作系統,國外是在vxworks上開發的,主要是兩個獨立的任務分別處理兩個網絡接口的通訊協議。為了擴展gpfc的應用范圍,系統軟件包中包含了各種可能用的網絡協議,都以獨立的任務形式存在。用不上的任務處于休眠狀態,如果需要連接某種類型的網絡,只要運行針對某種網絡協議的任務就行了。
     vxworks價格昂貴,在國內買一套要幾十萬元人民幣。為了滿足國內應用要求,筆者希望尋找一種廉價的實時內核,一方面可降低軟件方面的成本,同時可根據自己折需要定制軟件。經過調研,決定采用當前十分流行的μc/os-ⅱ作為實時內核。
     μc/os-ⅱ是基于優先級的搶占式實時多任務內核,其絕大部分代碼是由c寫成的。目前已經應用于包括motorola
     68000系列,以及intel 80x86等各種處理器上,在世界控制領域取得了一席之地。μc/os-ⅱ的可應用領域非常廣闊,涵蓋了幾乎所有的實時應用。μc/os-ⅱ是完全免費的,全部源代碼都可以從internet上獲得。
     μc/os-ⅱ是面向中小型嵌入式系統的。如果包含全部的功能模塊(信號量、消息郵箱、消息隊列及相關函數),編譯后的μc/os-ⅱ內核大約有6kb;如果只保留最核心的代碼,則可壓縮到3kb,這使得μc/os-ⅱ可以用于更小模塊的應用系統。同時,由于系統的可擴展性,稍加修改可以用于更大模塊的系統
     摘要:介紹了一種在嵌入式實時操作系統內核(以下簡稱實時內核)上實現ram盤的方法,配合接受用戶命令的shell任務,可實現嵌入式系統的多任務動態加載和監控,擴展了實時內核的應用領域。實時內核采用目前十分流行的免費內核μc/os-ⅱ,硬件不臺為通用現場總線控制器系統。
    
    
     關鍵詞:μc/os-ⅱ內核
     嵌入式系統 通用現場總線控制器(gpfc) coldfire
     1 嵌入式rtos
     目前,嵌入式rtos的應用領域越來越廣泛。已經有80多個rtos廠商生產面向8位、16位、32位、甚至64位微處理器的rtos產品。商業的實時操作系統如vxworks,psos,vrtx,windowsce等功能完善,提供了完備的開發環境,但大多價格昂貴,不提供源代碼(即所謂的黑箱)。用戶不了解其工作機制,更不能進行修改和擴展。某些商業系統還要求用戶在產品投產后繼續支付軟件費用。這對于國內的用戶開發中小應用系統來說,是一項沉重的負擔。而采用開放源代碼的實時內核不失為一種選擇。開放源代碼的另一個好處是用戶可以根據具體需要刪改和擴展功能。本文將以μc/os-ⅱ在通用網絡控制器上的應用為例,說明開放源代碼的實時內核在可擴展性方面的優點,以及筆者在使用中的一些心得體會。
     2 通用現場總線控制器
     gpfc(general purpose field bus controller)——通用現場總線控制器是用于加速器數據采集系統中的網絡控制器,由德國國家同步輻射實驗室(desy)dr.clausen
     matthias領導的研究小組開發。用于不同種類的現場總線、以太網之間的通訊控制,功能相當于不同類型子網之間的網關(關于gpfc的技術細節,感興趣的讀者可以查詢desy的主頁http://www.desy.de)。系統微控制器采用motorola公司68k家庭的32位mcu
     coldfire 5206e。在33mhz總線頻率下能達到17mips的處理能力。由于coldfire將片選邏輯電路、總線控制器、dram控制模塊等全部集成在mcu內部,使得外轉帳電路室得十分簡單。系統配有32mb
     dram和1mb flash ram,并有兩個網絡接口a和b。該系統的硬件設計非常靈活,網絡接口配以不同的驅動電路,可支持以太網、can、profibus、mil1553等多種現場總線,實現網絡間的連接和控制。只要采用不同的網絡協議,就可以連接不同的子網,實現不同的控制。gpfc配以不同的網絡模塊可以替代目前廣泛使用的vme工控系統,由于舍棄了vme昂貴的機箱、總線板,大幅度減低了主機成本。gpfc系統結構示意如圖1所示。
     3 在gpfc上運行rtos
     gpfc的系統軟件基于嵌入式實時操作系統,國外是在vxworks上開發的,主要是兩個獨立的任務分別處理兩個網絡接口的通訊協議。為了擴展gpfc的應用范圍,系統軟件包中包含了各種可能用的網絡協議,都以獨立的任務形式存在。用不上的任務處于休眠狀態,如果需要連接某種類型的網絡,只要運行針對某種網絡協議的任務就行了。
     vxworks價格昂貴,在國內買一套要幾十萬元人民幣。為了滿足國內應用要求,筆者希望尋找一種廉價的實時內核,一方面可降低軟件方面的成本,同時可根據自己折需要定制軟件。經過調研,決定采用當前十分流行的μc/os-ⅱ作為實時內核。
     μc/os-ⅱ是基于優先級的搶占式實時多任務內核,其絕大部分代碼是由c寫成的。目前已經應用于包括motorola
     68000系列,以及intel 80x86等各種處理器上,在世界控制領域取得了一席之地。μc/os-ⅱ的可應用領域非常廣闊,涵蓋了幾乎所有的實時應用。μc/os-ⅱ是完全免費的,全部源代碼都可以從internet上獲得。
     μc/os-ⅱ是面向中小型嵌入式系統的。如果包含全部的功能模塊(信號量、消息郵箱、消息隊列及相關函數),編譯后的μc/os-ⅱ內核大約有6kb;如果只保留最核心的代碼,則可壓縮到3kb,這使得μc/os-ⅱ可以用于更小模塊的應用系統。同時,由于系統的可擴展性,稍加修改可以用于更大模塊的系統
上一篇:基于DVB標準的寬帶數據接入