



下載本文檔
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、 時間觸發模式下的ProtothreadS設計應用摘要:實現了一種全集成可變帶寬中頻寬帶低通濾波器,討論分析了跨導放大器-電容(OTAC)連續時間型濾波器的結構、設計和具體實現,使用外部可編程電路對所設計濾波器帶寬進行控制,并利用ADS軟件進行電路設計和仿真驗證。仿真結果表明,該濾波器帶寬的可調范圍為126 MHz,阻帶抑制率大于35 dB,帶內波紋小于05 dB,采用18 V電源,TSMC 018m CMOS工藝庫仿真,功耗小于21 mW,頻響曲線接近理想狀態。關鍵詞:Butte1 概 述 嵌入式行業的飛速發展使
2、得嵌入式芯片的容量和功能都在不斷地提升。以工業應用最為常見的8位微控制器為例,其ROM和RAM的容量都在不斷擴大,甚至一些高端的8位處理器可以使用簡單的操作系統(OS)來進行開發。同時,32位處理器的廣泛普及也使得其價格逐漸逼近8位處理器。所以對很多應用來說,開發的簡化和迅速成為最主要的目標。尤其是當使用一款新的處理器或者硬件電路時,快速的搭建其開發的框架變得尤其重要。在嵌入式系統中,通常會采用兩種不同的任務管理和調度方式:事件觸發和時間觸發。事件觸發方式以事件的發生為核心,往往會采用多級中斷的方法來實現,其發生的時間具有隨機性。所以事件觸發方式具有較好的實時性,但是這樣也意味著該系統具有較高
3、的復雜度。而且,事件觸發方式的開銷往往是很大的。Alexander Metzner的研究指出:一個包含27個任務、采用RM(Rate Monotonic)調度算法的事件觸發系統,CPU的實際利用率僅為18。 而時間觸發方式開發的系統,保證了在同一時刻只處理一個事件,雖然犧牲了并發處理的實時性,但是保證了系統的可靠性,并且使得程序員能很好地預測程序的流程。Kopetz就指出:使用基于時間觸發的合作式調度器會使得系統有非常好的可預測性。在本項目中,嵌入式系統的功能主要集中在控制一些具有一定時隙間隔的外圍設備上面。鍵盤的掃描、顯示的刷新、數據緩沖的存儲等都是需要定
4、期完成的任務,而這些任務的實時要求也并不高,所以選用時間觸發方式的合作式調度器成為系統設計的首選。 Protothrcads利用隱式的return提供了阻塞的功能,經過Protothrcads封裝的任務,其程序的邏輯更加接近處理事件的上層邏輯,大大簡化了編程。而且使用簡單的宏就可以實現Protothrcads,其開銷也是很小的。本文就對使用Protothrcads應用于時間觸發模式的合作式調度器做一些討論。2 Protothreads簡介 Protothrcads是由瑞典計算機科學研究所的科學家Adam Dunkels所創
5、的一種新的線程編程方法。按AdamDunkels所說,Protothreads是專為資源緊張的系統設計的一種耗費資源少,且不使用堆棧的線程模型,它可以不使用復雜的狀態機機制來實現順序流的控制。Protothrcads也可以用于操作系統當中。 簡單地說,Protothrcads借鑒了用c語言實現協同(coroutine)的原理,它應用switchcase語句的直接跳轉功能,實現了有條件阻塞(conditional block),最終實現了虛擬的并行處理功能(concurrent)。實際上,Protothrcads并不是真正的線程,在多任務的切換中并不會真正涉及
6、上下文的切換,其線程的調度也僅僅是依靠隱式的return,進而退出函數體來完成的。但是Protothreads的優點卻是實實在在的。首先它不需要堆棧空間,而正如筆者用宏實現的那樣,Protothrcads也實現了很多只有線程編程方法才能實現的機制,比如阻塞。而用宏進行了封裝之后,使用者完全可以像使用線程一樣使用它們,而且其邏輯更加簡化,這大大增加了程序的清晰度,并降低了開發維護的難度。 在對實時性要求比較高或者說要求并行處理的場合,往往需要在任務A執行到一定程度、等待事件C發生時,退出當前任務A并轉而執行任務B;當事件C發生之后,系統繼續回到任務A,繼續方才
7、的執行。所以必須將任務A上次執行到地方的環境存儲起來,以便重回任務A后可以接著打斷的地方繼續運行。線程的上下文切換可以達到這個目的,Simon Tatham用C語言實現的coroutine也可以。Protothreads正是借鑒了這一原理,如以下任務函數所示: 可以看出,在進行了宏擴展之后,下面的程序段和上面的程序段是完全相同的,但是宏封裝很好地構建了一個上層的邏輯體系。這正是Protothreads的核心所在。同時,這也決定了Protothreads具有一定的局限: Protothreads中使用的必須是靜態變量或者全局
8、變量; 避免與switch語句的合用(Protothreads的實現已經用了switch語句); 因為編譯器會將_LINE_解釋為當前所在的行號,所以不能將多個“返回”置于同一行。3 調度器設計 時間觸發方式的嵌入式系統是根據定時器產生的恒定間隔的中斷來觸發和管理任務的。系統依靠一個基準的時間中斷,以此中斷為任務處理的節奏和“節拍”,任務的調度發生在“節拍”規定的時刻。中斷服務子程序也同樣占用這個時間間隔,為了系統的穩定性,一方面要使中斷服務子程序盡可能短,以節省任務的執行時間;另一方面,執行的任務也應該盡可能短,一些比較耗時的任務可以細分為若干個子任務加以調度。同時,這也要求調度器的設計盡可能簡單。本文的設計思想就是對于系統僅僅定義一個任務控制塊(TCB)隊列,
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 運輸路線安排方案范本
- 重慶工商大學《醫學影像設備學實驗》2023-2024學年第一學期期末試卷
- 浚縣民豐渠施工方案
- 蘇州衛生職業技術學院《畫法幾何學》2023-2024學年第二學期期末試卷
- 江西中醫藥大學《工程管理專業英語》2023-2024學年第二學期期末試卷
- 襄陽職業技術學院《人體發育與形態結構學2》2023-2024學年第二學期期末試卷
- 南京大學金陵學院《中藥生物技術》2023-2024學年第二學期期末試卷
- 南京師范大學《工程項目管理實驗》2023-2024學年第二學期期末試卷
- 重慶工商職業學院《臨床綜合技能訓練》2023-2024學年第一學期期末試卷
- 蘇州城市學院《智能工廠系統》2023-2024學年第二學期期末試卷
- (四調)武漢市2025屆高中畢業生四月調研考試 數學試卷(含答案詳解)
- 2024年中國礦產資源集團大數據有限公司招聘筆試真題
- 鼠疫防控知識宣傳課件
- 公路工程資料管理辦法
- 記者證考試心理素質試題及答案
- 3.1重組DNA技術的基本工具第1課時課件高二下學期生物人教版選擇性必修3
- 防雷安全風險分級管控要求 油庫、氣庫建設工程和場所
- ISO 37001-2025 反賄賂管理體系要求及使用指南(中文版-雷澤佳譯-2025)
- 導學案:5.5 跨學科實踐:制作望遠鏡(學生版)
- 《第2課 體驗開源硬件與編程工具應用 主題2 認識microbit加速度傳感器及其應用》參考課件
- 2025年河南機電職業學院單招職業技能測試題庫及參考答案
評論
0/150
提交評論