999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

DSP /BIOS實時多任務操作系統內核的研究

2010-09-23 03:43:38
科技傳播 2010年24期

周 杰

揚州工業職業技術學院,江蘇揚州 225127

DSP /BIOS實時多任務操作系統內核的研究

周 杰

揚州工業職業技術學院,江蘇揚州 225127

本文介紹了TI公司TMS320C6713的DSP/BIOS實時多任務操作系統內核,通過研究分析 DSP/BIOS的啟動順序,線程指令流在DSP中存在的方式以及調度的優先級,線程間的讓出與搶中,總結出多任務的執行狀態和調度的規律。最后將該多任務操作系統應于某伺服控制系統,取得了良好的效果。

BIOS;DSP; 線程搶占;任務

0 引言

DSP/BIOS是TI公司特別為其TMS320C6000TM、TMS320 C28XTM系統DSP平臺所設計開發的一個尺寸可裁剪的實時多任務操作系統內核,是TI公司的Code Composer StudioTM開發工具的組成部分之一。

1 DSP/BIOS啟動序列

當一個應用程序啟動時,boot.s54(C54x 平臺)或autoinit.c和boot.snn(C600g 平臺)文件中的代碼決定了其啟動序列,這些文件的編譯版本由 biosi.ann 庫提供。一般BIOS啟動順序如下:

1)初始化DSP:DSP/BIOS程序從C或C++環境入口點c_ int00開始運行,而復位中斷向量被設置為復位后跳轉到c_int00,對C600來說,系統堆棧指針(B15)和全局頁指針(B14)被初始化分別指向.stack段的末尾和.bss段的開始。

2)當堆棧建立好后,初始化程序用.cinit段中的記錄初始化全局變量。

3)調用BIOS_init初始化程序中用到的DSP/BIOS 模塊,BIOS_init由配置生成并位于programcfg.snn文件中。主要完成三個子模塊的初始化。

HWI_init:硬件中斷,設置ISTP和中斷選擇寄存器。

HST_init:初始化主機I/O通道接口,該程序決定主機與目標DSP的連接方式;

IDL_init:空閑循環的指令計數。該程序用于校準CPU負荷里實時顯示的CPU負載值。

4)處理.pinit表:.pinit表包含了指向初始化函數的指針,這里主要初始化各種全局變量。

5)調用用戶應用程序的 mian函數:在所有DSP/BIOS模塊初始化完成之后,用戶mian 函數才會被調用。

6)調用BIOS_start啟動DSP/BIOS:該函數在programcfg.snn文件中,在用戶mian函數返回調用BIOS_start 。

7)執行空循環:有兩種方式可以調用該函數:第一種是任務管理器被使能,任務管理器在運行TSK_idle時會調用IDL_loop;第二種是任務管理器被禁用,則當BIOS start返回時緊接著調用TDL loop。

3線程調度

在DSP/BIOS中線程被定義為由DSP執行的任何獨立的指令流,一個線程可以是一段程序,一個函數或一個ISR調用。DSP/ BIOS支持多種不同優先級的線程,每種線程類型都有不同的執行和搶占特性。

硬件中斷(HWI),包括CKL函數,用于響應外部異步事件。

軟件中斷(HWI),包括PRD函數,軟件中斷通過在程序中調用SWI函數而觸發的。

4 線程的搶占與讓出

DSP/BIOS調度器會運行處于就緒狀態的優先級最高線程,除非發生下列情況:

1)運行中的線程暫時禁止了部分或全部的硬件中斷(HWI disable),阻止了相應硬件 ISR運行;

2)運行中的線程暫時禁止了軟件中斷(SWI disable),阻止了任何更高優先級的軟件中斷搶占當前線程,但并不阻止硬件中斷搶占當前線程;

3)運行中的線程暫時禁止了任務調度(TSK disable),阻止了任務更高優先級的任務搶占當前線程,但并不阻止硬件中斷或軟件中斷搶占當前線程;

4)最高優先級的線程是一個被阻塞的任務線程,當任務調用了TSK sleep、LCK pend、MBX pend、或SEM pend時會發生阻塞。

5 任務的執行狀態和調度

任務有16個優先級,最低為0,最高為15。且優先級0保留給系統空閑任務。每個TSK對象總是處于如下四種可能的執行狀態之一:

1)運行狀態(Running):代表該任務當前正在系統處理器上執行。

2)就緒狀態(Ready): 代表任務已經被調度并在等待處理器上執行。

3)阻塞態(Blocked):代表任務必須等到某個事件發生或某些資源呆用時才能執行。

4)終止態(Terminated):代表任務已經被終止,不會再執行。

最高的任務優先級是TSK MAXPRI(15),最低的任務優先級是TSK MINPRI(1)。圖1說明了任務的狀態是如何改變的。

圖1 任務狀態化

TSK、SEMT和SIO模塊的函數可以改變任務的狀態:阻塞或終止當前運行的任務,使之前被掛起(阻塞)的任務就緒,以及重新調度當前線程等。

6 結論

通過對DSP/BIOS實時搶占式內核的分析研究,將該操作系統用于某伺服系統。從復位狀態開始伺服系統需要實時向上位機發送一些系統的狀態信息。實踐證明該系統可以完成系統的功能要求取得很好的效果。

[1]Texas Instruments Incorporated.TI DSP/BIOS 用戶手冊與驅動開發[M].北京:清華大學出版社,2007.

[2]Texas Instruments Incorporated,TMS320C6000系列DSP的CPU與外設[M].北京:清華大學出版社,2007.

[3]汪安民,張松燦,常春藤,TMS320C6000 DSP實用技術與開發案例[M].北京:人民郵電出版社,2004,4.

[4]三恒星科技.TMS320C6712 DSP 原理與應用實例[M].北京:電子工業出版社,2009,4.

TP39

A

1674-6708(2010)33-0220-02

周杰,講師,主要從事計算機控制的研究

主站蜘蛛池模板: 国产精品专区第一页在线观看| 久久黄色一级视频| 99久久精品久久久久久婷婷| 国产美女丝袜高潮| 国产全黄a一级毛片| 婷婷开心中文字幕| 国产综合日韩另类一区二区| 国内精品自在自线视频香蕉| 国产午夜精品鲁丝片| 91精品人妻互换| 成人午夜网址| 99久久精品免费视频| 亚洲无码日韩一区| 国产97视频在线观看| 伊人丁香五月天久久综合 | 亚洲欧美精品一中文字幕| 人人看人人鲁狠狠高清| 国产精品视屏| 无码日韩人妻精品久久蜜桃| 欧美天堂久久| 香蕉精品在线| 国产日韩av在线播放| 久热中文字幕在线观看| 国产免费久久精品99re不卡| 国产在线观看91精品亚瑟| 国产第一页免费浮力影院| 亚洲,国产,日韩,综合一区| 四虎国产永久在线观看| 色妞www精品视频一级下载| 狼友视频一区二区三区| 自拍欧美亚洲| 毛片在线播放网址| 久热re国产手机在线观看| 国产超碰一区二区三区| 日本久久免费| 一区二区三区成人| 欧美精品1区2区| 欧美亚洲国产精品久久蜜芽| 精品少妇人妻无码久久| 超薄丝袜足j国产在线视频| 狠狠v日韩v欧美v| 全部免费毛片免费播放| 99国产精品免费观看视频| 蜜臀AV在线播放| 亚洲妓女综合网995久久| 欧美狠狠干| 97超级碰碰碰碰精品| 国产综合无码一区二区色蜜蜜| 欧美中文字幕在线播放| 国产亚洲成AⅤ人片在线观看| 欧洲极品无码一区二区三区| 四虎永久在线精品影院| 欧美色99| 欧洲免费精品视频在线| av免费在线观看美女叉开腿| 国产理论最新国产精品视频| 精品国产一区91在线| 国产亚洲现在一区二区中文| 国产丰满成熟女性性满足视频| 亚洲女人在线| 亚洲天堂自拍| 九九九精品成人免费视频7| 国产在线观看第二页| 在线毛片免费| 欧美日韩国产精品va| 国产在线观看第二页| 国产乱人视频免费观看| 精品久久777| 2018日日摸夜夜添狠狠躁| 99视频只有精品| 亚洲精品不卡午夜精品| 91福利在线观看视频| 午夜国产不卡在线观看视频| 波多野结衣在线一区二区| 专干老肥熟女视频网站| 色九九视频| 在线a网站| 夜夜爽免费视频| 亚洲成人一区二区| 国产自产视频一区二区三区| 久久国产毛片| 精品福利网|