資料介紹
引言
實時操作系統(RTOS),在整個嵌入式系統中扮演著十分重要的角色,它就像人的大腦支配人的行為一樣,控制著整個系統的工作與運轉,一個RTOS性能的優劣將對整個系統的性能產生直接的影響。衡量一個RTOS的好壞有多種標準,實時性則為一個關鍵指標,并且隨著實時操作系統實際運用的加深及拓廣,對RTOS提出了更加嚴格的要求。在系統限定時間內響應處理外部事件已經成為了對RTOS的一個基本要求。
任務調度,是RTOS的核心所在,任務間的通信、外部事件的處理以及中斷處理等都離不開任務調度的參與。而且隨著系統功能的完善與增強,任務間的關系變得更加復雜,需要與更多的外圍設備打交道,這就需要任務調度不斷地參與其中,從而導致系統性能的急劇下降、對事件實時響應能力的降低。任務調度則成為了RTOS性能的瓶頸,提高RTOS的整體性能則首先應當從提高任務調度的性能著手。將任務調度硬件化,無疑可以提升任務調度的性能,從而提高整個RTOS的性能。本文討論了三種任務調度的實現方法,分別為:軟件調度器模型、協處理器調度模型、硬件調度器模型,并在文章最后對其性能進行了測試。測試結果表明,硬件調度器模型具有良好的性能,相對協處理器方式需要更少的硬件實現邏輯單元。
系統功能的增強,使得任務間的調度以及任務之間的通信變得更加復雜,必將導致系統性能急劇降低。而且,隨著系統不斷完善,在實時嵌入式系統中,計算結果的正確性已經不再是整個系統追求的目標,而實時性則成為整個系統面對的首要難題。如果將RTOS的調度功能由原來的純軟件實現轉變為硬件實現,將極大的提高實時系統的實時性以及處理能力。
設計與實現
邏輯時序關系
圖1是操作系統以及應用程序都由單CPU運行的邏輯時序圖。由時序圖可以看出,在單CPU運行RTOS以及應用程序條件下,CPU不斷地在RTOS內核以及應用程序之間切換。即使在沒有外部中斷的情況下,CPU的運行都將在確定的時刻執行任務調度程序(由系統時鐘觸發),例如t2、t4、t6等時刻。每次的任務調度都至少執行以下四步操作:(1) 當前任務上下文內容的保存;(2) 操作系統內核態的恢復;(3) 操作系統內核態信息保存;(4) 新任務上下文內容恢復。即便調度前后,例如t1與t3時刻,CPU執行相同的任務,也同樣要執行上述的四步操作。很明顯,這樣的操作浪費了大量的CPU處理時間,執行了大量的無謂的內容保存工作。
Ti為第i個任務運行時間; CS+OS為任務上下文轉換時間以及RTOS所占用時間;INT中斷服務程序時間;C ST 為當前任務上下文內容保存時間; CR RTOS 為操作系統上下文恢復時間;RTOS為操作系統運行內核程序以及調度時間; CS RTOS 操作系統上下文保存時間; CR T 調度后新任務上下文恢復時間。
圖2為協處理器運行調度程序,而應用程序由主CPU運行,這樣調度程序和應用程序在時間上為并行執行。當主CPU需要進行任務調度時,將會引發中斷,通知協處理器。在完成中斷處理以及任務上下文保存與恢復之后,主CPU 繼續執行新的任務,這樣去除了RTOS進出內核態的上下文保存時間,無疑可以提升RTOS的整體性能。
設計實現
在上文中,已經提到,將RTOS的調度以三種方式進行實現,分別為純軟件實現、協處理器實現以及純硬件實現。
為了實現這三種調度方法,采用了Xilinx公司的Virtex-II Pro系列的 XC2VP30 芯片,軟件平臺為EDK(embeded development kit)功能以及時序仿真采用Modelsim軟件。CPU采用EDK提供的MicroBlaze處理器模型,并集成64K的SRAM以及1M的FLASH建立一個最小的核心系統,作為該調度算法的核心硬件平臺。MicroBlaze為32位的哈佛結構的處理器,采用RISC指令集,為便于計算,設置其工作頻率為50MHz。
實時操作系統(RTOS),在整個嵌入式系統中扮演著十分重要的角色,它就像人的大腦支配人的行為一樣,控制著整個系統的工作與運轉,一個RTOS性能的優劣將對整個系統的性能產生直接的影響。衡量一個RTOS的好壞有多種標準,實時性則為一個關鍵指標,并且隨著實時操作系統實際運用的加深及拓廣,對RTOS提出了更加嚴格的要求。在系統限定時間內響應處理外部事件已經成為了對RTOS的一個基本要求。
任務調度,是RTOS的核心所在,任務間的通信、外部事件的處理以及中斷處理等都離不開任務調度的參與。而且隨著系統功能的完善與增強,任務間的關系變得更加復雜,需要與更多的外圍設備打交道,這就需要任務調度不斷地參與其中,從而導致系統性能的急劇下降、對事件實時響應能力的降低。任務調度則成為了RTOS性能的瓶頸,提高RTOS的整體性能則首先應當從提高任務調度的性能著手。將任務調度硬件化,無疑可以提升任務調度的性能,從而提高整個RTOS的性能。本文討論了三種任務調度的實現方法,分別為:軟件調度器模型、協處理器調度模型、硬件調度器模型,并在文章最后對其性能進行了測試。測試結果表明,硬件調度器模型具有良好的性能,相對協處理器方式需要更少的硬件實現邏輯單元。
系統功能的增強,使得任務間的調度以及任務之間的通信變得更加復雜,必將導致系統性能急劇降低。而且,隨著系統不斷完善,在實時嵌入式系統中,計算結果的正確性已經不再是整個系統追求的目標,而實時性則成為整個系統面對的首要難題。如果將RTOS的調度功能由原來的純軟件實現轉變為硬件實現,將極大的提高實時系統的實時性以及處理能力。
設計與實現
邏輯時序關系
圖1是操作系統以及應用程序都由單CPU運行的邏輯時序圖。由時序圖可以看出,在單CPU運行RTOS以及應用程序條件下,CPU不斷地在RTOS內核以及應用程序之間切換。即使在沒有外部中斷的情況下,CPU的運行都將在確定的時刻執行任務調度程序(由系統時鐘觸發),例如t2、t4、t6等時刻。每次的任務調度都至少執行以下四步操作:(1) 當前任務上下文內容的保存;(2) 操作系統內核態的恢復;(3) 操作系統內核態信息保存;(4) 新任務上下文內容恢復。即便調度前后,例如t1與t3時刻,CPU執行相同的任務,也同樣要執行上述的四步操作。很明顯,這樣的操作浪費了大量的CPU處理時間,執行了大量的無謂的內容保存工作。
Ti為第i個任務運行時間; CS+OS為任務上下文轉換時間以及RTOS所占用時間;INT中斷服務程序時間;C ST 為當前任務上下文內容保存時間; CR RTOS 為操作系統上下文恢復時間;RTOS為操作系統運行內核程序以及調度時間; CS RTOS 操作系統上下文保存時間; CR T 調度后新任務上下文恢復時間。
圖2為協處理器運行調度程序,而應用程序由主CPU運行,這樣調度程序和應用程序在時間上為并行執行。當主CPU需要進行任務調度時,將會引發中斷,通知協處理器。在完成中斷處理以及任務上下文保存與恢復之后,主CPU 繼續執行新的任務,這樣去除了RTOS進出內核態的上下文保存時間,無疑可以提升RTOS的整體性能。
設計實現
在上文中,已經提到,將RTOS的調度以三種方式進行實現,分別為純軟件實現、協處理器實現以及純硬件實現。
為了實現這三種調度方法,采用了Xilinx公司的Virtex-II Pro系列的 XC2VP30 芯片,軟件平臺為EDK(embeded development kit)功能以及時序仿真采用Modelsim軟件。CPU采用EDK提供的MicroBlaze處理器模型,并集成64K的SRAM以及1M的FLASH建立一個最小的核心系統,作為該調度算法的核心硬件平臺。MicroBlaze為32位的哈佛結構的處理器,采用RISC指令集,為便于計算,設置其工作頻率為50MHz。
下載該資料的人也在下載
下載該資料的人還在閱讀
更多 >
- Type-c設計及PD相關軟硬件實現詳解 41次下載
- 基于FPGA芯片的軟硬件平臺的使用 20次下載
- 安全關鍵的嵌入式實時操作系統內核 5次下載
- RTThread操作系統的調度設計原理是怎樣的
- 如何構造一個51單片機的實時操作系統
- 智能家居系統的軟硬件設計 19次下載
- 硬件實時操作系統的設計 1次下載
- 實時操作系統總體軟硬件方案設計 2次下載
- 基于FPGA的軟硬件協同實時紙病圖像處理系統_齊璐 0次下載
- 9款變頻器設計方案,包含完整軟硬件設計-深圳市伊瑞軟件技術有限公 31次下載
- 基于DSP的OLED顯示器軟硬件設計及實現 86次下載
- 基于軟硬件協同的AFDX協議片上系統設計
- 基于EDA 的嵌入式系統軟硬件劃分方法
- 實時操作系統任務調度策略的研究與設計
- 嵌入式實時操作系統VxWorks內核調度機制研究
- 詳解實時操作系統和非實時操作系統 4957次閱讀
- 什么是實時操作系統(RTOS) 6149次閱讀
- 軟硬件融合的概念和內涵 1613次閱讀
- 基于優先級調度的嵌入式實時操作系統內核詳解(下) 936次閱讀
- FreeRTOS:一個迷你的實時操作系統內核 1015次閱讀
- Linux是實時系統還是分時操作系統? 1572次閱讀
- 基于Linux操作系統和S3C2410微處理器實現GPS實時導航系統的設計 1097次閱讀
- 基于嵌入式實時系統的提高構件化嵌入式操作系統性能的方案設計 850次閱讀
- 對實時操作系統特性的討論 5189次閱讀
- 基于Linux上進行改進的具有實時應用能力的現代嵌入式操作系統解決方案詳解 914次閱讀
- 如何安裝實時操作系統RTOS 6275次閱讀
- 基于FreeRTOS的嵌入式實時操作系統的原理和實現 6714次閱讀
- uC/OS和uClinux操作系統的區別 4534次閱讀
- 基于CAN總線的電梯主控系統軟硬件設計 5576次閱讀
- 基于嵌入式Linux流媒體播放器系統軟硬件解決方案 2838次閱讀
下載排行
本周
- 1TC358743XBG評估板參考手冊
- 1.36 MB | 330次下載 | 免費
- 2開關電源基礎知識
- 5.73 MB | 6次下載 | 免費
- 3100W短波放大電路圖
- 0.05 MB | 4次下載 | 3 積分
- 4嵌入式linux-聊天程序設計
- 0.60 MB | 3次下載 | 免費
- 5基于FPGA的光纖通信系統的設計與實現
- 0.61 MB | 2次下載 | 免費
- 6基于FPGA的C8051F單片機開發板設計
- 0.70 MB | 2次下載 | 免費
- 751單片機窗簾控制器仿真程序
- 1.93 MB | 2次下載 | 免費
- 8基于51單片機的RGB調色燈程序仿真
- 0.86 MB | 2次下載 | 免費
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 2555集成電路應用800例(新編版)
- 0.00 MB | 33564次下載 | 免費
- 3接口電路圖大全
- 未知 | 30323次下載 | 免費
- 4開關電源設計實例指南
- 未知 | 21548次下載 | 免費
- 5電氣工程師手冊免費下載(新編第二版pdf電子書)
- 0.00 MB | 15349次下載 | 免費
- 6數字電路基礎pdf(下載)
- 未知 | 13750次下載 | 免費
- 7電子制作實例集錦 下載
- 未知 | 8113次下載 | 免費
- 8《LED驅動電路設計》 溫德爾著
- 0.00 MB | 6653次下載 | 免費
總榜
- 1matlab軟件下載入口
- 未知 | 935054次下載 | 免費
- 2protel99se軟件下載(可英文版轉中文版)
- 78.1 MB | 537796次下載 | 免費
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420026次下載 | 免費
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費
- 6電路仿真軟件multisim 10.0免費下載
- 340992 | 191185次下載 | 免費
- 7十天學會AVR單片機與C語言視頻教程 下載
- 158M | 183278次下載 | 免費
- 8proe5.0野火版下載(中文版免費下載)
- 未知 | 138040次下載 | 免費
評論
查看更多