在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,91精品国产91免费

<menu id="6qfwx"><li id="6qfwx"></li></menu>
    1. <menu id="6qfwx"><dl id="6qfwx"></dl></menu>

      <label id="6qfwx"><ol id="6qfwx"></ol></label><menu id="6qfwx"></menu><object id="6qfwx"><strike id="6qfwx"><noscript id="6qfwx"></noscript></strike></object>
        1. <center id="6qfwx"><dl id="6qfwx"></dl></center>

            新聞中心

            EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > TMS320C55x嵌入式實(shí)時多任務(wù)系統(tǒng)DSP/BIOS II

            TMS320C55x嵌入式實(shí)時多任務(wù)系統(tǒng)DSP/BIOS II

            作者:重慶移動通信工程研究中心 劉樹軍 時間:2004-07-23 來源: 收藏
            摘  要: DSP/BIOS 是運(yùn)行在數(shù)字信號處理器(DSP)中的一個小型軟件,它為開發(fā)者提供對程序的控制執(zhí)行和對變量的實(shí)時監(jiān)測。而且可以合理地對實(shí)時多線程系統(tǒng)進(jìn)行時間規(guī)劃。本文對DSP/BIOS II的基本特征與應(yīng)用作了介紹。
            關(guān)鍵詞: 嵌入式;實(shí)時多任務(wù)操作系統(tǒng);DSP/BIOS II;線程

            2002年5月B版

            引言
            現(xiàn)在,由于復(fù)雜的硬件功能已經(jīng)集成到標(biāo)準(zhǔn)集成電路中,系統(tǒng)開發(fā)人員首先應(yīng)該知道如何選擇合適的芯片,然后基于此硬件結(jié)構(gòu)設(shè)計軟件。系統(tǒng)設(shè)計者有兩種選擇:使用專用集成電路或可編程DSP實(shí)現(xiàn)信號處理。相比之下,可編程DSP有兩個優(yōu)點(diǎn):
            可擴(kuò)充性:設(shè)計者可以根據(jù)要求的處理效率,和需要的資源來量體選用DSP及所需的片數(shù)。
            可升級性:將硬件的升級轉(zhuǎn)化成比較容易升級的軟件改動。
            使用可編程DSP時,必須對芯片的各種資源(例如CPU,存儲區(qū),外設(shè)等)加以管理規(guī)劃,通過DSP/BIOS可以輕松的完成這些工作。
            TI公司TMS320C5000系列都帶有嵌入式DSP/BIOS,它有很強(qiáng)的實(shí)時分析和任務(wù)實(shí)時管理能力,可以有效的提高項目的開發(fā)效率,尤其表現(xiàn)在需要實(shí)時多任務(wù)的大型系統(tǒng)中。圖1為DSP/BIOS的部件結(jié)構(gòu)。

            DSP/BIOS II簡述
            TI公司的DSP/BIOS II 是在DSP/BIOS I 基礎(chǔ)上的擴(kuò)展。它支持更多的軟件模塊,通過修改內(nèi)核提供搶先式多任務(wù)服務(wù);它把傳統(tǒng)并行處理系統(tǒng)的內(nèi)核服務(wù)集成為可測試內(nèi)核;它增加了設(shè)備獨(dú)立的I/O數(shù)據(jù)流模型,繼續(xù)保留已有的數(shù)據(jù)管道;它增加了動態(tài)內(nèi)存分配與內(nèi)存管理。
            TI的開發(fā)平臺CCS IDE 2.0中集成了DSP/BIOS II,可以對程序進(jìn)行實(shí)時跟蹤與分析,提高應(yīng)用程序開發(fā)的可靠性??梢栽贑CS插件中實(shí)時觀察DSP/BIOS內(nèi)核中各線程的執(zhí)行狀態(tài)與對象的當(dāng)前屬性。通過設(shè)置工具,開發(fā)者可以對各個模塊實(shí)行配置。

            DSP/BIOS II 核心API技術(shù)
            目標(biāo)應(yīng)用程序通過調(diào)用DSP/BIOS II的API來獲得運(yùn)行時的服務(wù)。一個單個DSP/BIOS II 模塊可以管理多種類的內(nèi)核對象,并且依據(jù)全局參量的設(shè)定來控制整個行為。DSP/BIOS II 可以歸納為六大種類:
            內(nèi)核執(zhí)行線程


            圖1  DSP/BIOS 部件結(jié)構(gòu)圖


            圖2  線程優(yōu)先級示意圖


            圖3  數(shù)據(jù)流示意圖


            圖4 數(shù)據(jù)管道示意圖

            DSP/BIOS II提供四類不同的執(zhí)行線程。每一類線程又具有不同的執(zhí)行、搶先和懸掛特性。DSP/BIOS II 支持兩個高優(yōu)先級的中斷線程和事先備好的后臺空閑過程循環(huán)。內(nèi)核執(zhí)行線程通過HWI, SWI和IDL模塊進(jìn)行管理。另外,DSP/BIOS II新提供了多任務(wù)線程類,能較好的完成任務(wù)間的同步,它由TSK模塊管理,在任何執(zhí)行時刻為懸掛和恢復(fù)執(zhí)行同步,包括調(diào)整自身或其他任務(wù)的優(yōu)先級。這種同步化的任務(wù)給并發(fā)系統(tǒng)設(shè)計提供了良好的基礎(chǔ)。
            硬件抽象
            DSP/BIOS II 提供硬件的邏輯接口。它獨(dú)立于硬件實(shí)現(xiàn)。它對硬件部分的訪問、配置,內(nèi)存映射、片內(nèi)定時器和硬件中斷等進(jìn)行抽象,簡化了應(yīng)用的移植。它通過可視化的設(shè)置工具定義內(nèi)存映射、中斷向量表,對定時器編程,和完成動態(tài)的內(nèi)存分配與釋放。
            設(shè)備獨(dú)立I/O
            設(shè)備獨(dú)立I/O模塊執(zhí)行數(shù)據(jù)傳輸服務(wù),傳輸可以在DSP與外設(shè)之間和多線程之間進(jìn)行。DSP/BIOS II 支持?jǐn)?shù)據(jù)管道(pipe)和數(shù)據(jù)流(stream)兩種傳送方式。數(shù)據(jù)管道是在讀寫線程之間快速傳送數(shù)據(jù)的小型統(tǒng)一部件。數(shù)據(jù)流為緩沖方案增加了靈活性使之適應(yīng)更廣的需求。數(shù)據(jù)流依靠多個潛在的設(shè)備驅(qū)動器,這種設(shè)備驅(qū)動器封裝了設(shè)備獨(dú)立的屬性與方法。在數(shù)據(jù)通過堆疊(stacking)機(jī)制傳送時,設(shè)備驅(qū)動器能夠執(zhí)行數(shù)據(jù)處理操作,驅(qū)動器在數(shù)據(jù)通道中實(shí)行流水線處理。PIP和SIO模塊分別管理目標(biāo)應(yīng)用中的數(shù)據(jù)管道和流的傳送服務(wù)。SIO同DEV模塊結(jié)合,使DEV通過SIO發(fā)送和接收數(shù)據(jù)。
            線程間的通信和同步
            DSP/BIOS II 中的線程間通信和同步模塊支持多任務(wù)。信號量(semaphores)是最主要的同步方式。任務(wù)運(yùn)用信號量保持同步資源訪問的同步。訪問外設(shè)的數(shù)據(jù)緩沖區(qū),以及訪問共享存儲區(qū)都是資源同步的典型事例。信號量還控制著多任務(wù)執(zhí)行的同步。信號量由SEM模塊管理,而LCK模塊提供共享資源的判優(yōu)和互斥。數(shù)據(jù)隊列可用于線程間通信。郵箱(mailbox)類似于數(shù)據(jù)隊列,能夠理想的完成任務(wù)通信。數(shù)據(jù)隊列由QUE模塊管理,郵箱模塊由MBX管理。
            實(shí)時分析
            實(shí)時分析(TRA)模塊在應(yīng)用程序執(zhí)行期間與DSP項目實(shí)時交互和診斷。LOG,STS和TRC模塊對這些功能進(jìn)行管理。主機(jī)與目標(biāo)板之間的數(shù)據(jù)傳輸能力對實(shí)施分析是非常關(guān)鍵的。DSP/BIOS提供HST和RTDX模塊來管理這些功能。CCS IDE中提供了以下六種實(shí)時分析工具:
            —CPU負(fù)載圖
            負(fù)載圖提供的是目標(biāo)CPU的負(fù)載曲線。CPU負(fù)載的定義是除去執(zhí)行最低優(yōu)先級任務(wù)以外的時間量。最低優(yōu)先級任務(wù)是只在其他線程都不運(yùn)行時才執(zhí)行的任務(wù)。因此,CPU負(fù)載包括從目標(biāo)向主機(jī)傳送數(shù)據(jù)和執(zhí)行附加后臺任務(wù)所需的時間。
            ——執(zhí)行圖示
            在執(zhí)行圖示窗口中,我們可以看到各個線程的活動方式。執(zhí)行圖的刷新速率可以通過RTA控制版設(shè)定。圖形中還包括了信號量的活動,周期性函數(shù)標(biāo)記(tick),和時鐘模塊標(biāo)記。執(zhí)行圖示能從整體上看到項目所有線程的活動狀態(tài)。
            ——主機(jī)通道控制
            利用信道控制窗口可以把文件綁定在定義的主機(jī)通道上,啟動信道上的數(shù)據(jù)傳輸以及監(jiān)測數(shù)據(jù)傳輸流量。
            ——信息記錄
            選定某一記錄名,從此窗口可看到程序運(yùn)行的信息記錄。主機(jī)從目標(biāo)板獲取DSP/BIOS數(shù)據(jù)期間的記錄信息將顯示在此窗口中。開發(fā)者定義的記錄信息也顯示在窗口中。
            ——統(tǒng)計觀察
            統(tǒng)計觀察窗可以計算出事件、變量出現(xiàn)的次數(shù),給出其最大值,最小值和平均值,監(jiān)測定時時間和變量的增值的實(shí)際值和期望值差。
            ——實(shí)時控制面板
            它對運(yùn)行時間中不同類型進(jìn)行追蹤控制,在默認(rèn)情況下,所有類型的跟蹤都是允許的。為跟蹤任意一種類型,必須使能全局主機(jī)(GLOBAL HOST)。通過實(shí)時改變控制版的屬性,還可以設(shè)定實(shí)時分析工具的刷新頻率。
            ——內(nèi)核/對象觀察
            內(nèi)核/對象觀察窗可觀察當(dāng)前的配置,狀態(tài)和運(yùn)行在目標(biāo)板上的DSP/BIOS對象狀況,此工具對動態(tài)和靜態(tài)配置的對象都可以進(jìn)行觀測。
            其它系統(tǒng)服務(wù)
            DSP/BIOS II 仿照標(biāo)準(zhǔn)的C語言庫,把程序錯誤處理與終止,組裝到其它系統(tǒng)服務(wù)模塊。這些功能函數(shù)由SYS模塊管理。SYS中還包括各種printf()的變體形式。
            原子(atomic)函數(shù)是非搶先式操作,比如AND, OR, INC, DEC, SET 和 CLEAR,使用它們時不允許中斷。原子函數(shù)由ATM模塊管理。

            執(zhí)行線程規(guī)劃
            在DSP實(shí)時應(yīng)用中,由外部時間或控制信號驅(qū)動功能函數(shù),所以函數(shù)執(zhí)行方式和執(zhí)行時間對系統(tǒng)非常重要。DSP/BIOS支持多線程應(yīng)用,線程可以定義不同的優(yōu)先級,使高優(yōu)先級線程可以搶斷低優(yōu)先級的線程,而且不同的線程之間可以實(shí)現(xiàn)交互,比如阻塞,通信和同步。
            如圖2,DSP/BIOS II的線程分為以下四種類型(優(yōu)先級從高到低)
            硬件中斷(HWI):包括CLK功能。它的優(yōu)先級數(shù)目依賴于DSP,一般為32個,由外部同步信號觸發(fā)。屬于完全執(zhí)行方式(run-to-completion)。
            軟件中斷(SWI):可定義15個不同的優(yōu)先級,通過調(diào)用SWI函數(shù)觸發(fā)。屬于完全執(zhí)行方式,有執(zhí)行截止時間。PRD是一種特殊的軟件中斷,它的執(zhí)行基于多個設(shè)備定時器中斷或一些其它事件。
            任務(wù)(TSK):可定義15個不同的優(yōu)先級。不同于SWI和HWI,它們在執(zhí)行過程中為等待可用資源會被掛起。信號量,隊列和郵箱用于不同任務(wù)之間的通信與同步。任務(wù)具有四個狀態(tài),就緒(ready),執(zhí)行(running),阻塞(blocked),終止(terminated)。
            后臺線程(IDL):空閑循環(huán)線程具有最低優(yōu)先級,運(yùn)行期間可以被任何其它線程搶先。當(dāng)main()函數(shù)執(zhí)行完后,IDL便開始運(yùn)行。
            還有一類數(shù)據(jù)通知函數(shù),他們在有數(shù)據(jù)幀讀寫的時候被觸發(fā)用來通知讀寫器,并利用管道(PIP)或主機(jī)信道(HST)傳送數(shù)據(jù)。

            低層函數(shù)功能
            內(nèi)核的低層函數(shù)嵌入在三個軟件模塊中,這三個模塊分別為:
            MEM模塊:管理存儲區(qū)的分配。在DSP應(yīng)用項目中,連接命令文件用作內(nèi)存的分配,此文件通過配置工具生成,若要自己創(chuàng)建連接命令文件,則應(yīng)包含前者。實(shí)時DSP硬件平臺包括幾種不同的存儲區(qū):設(shè)備自身的RAM,零等待狀態(tài)外部SRAM和慢速DRAM等,以滿足不同的存儲需求。
            SYS模塊:提供多種系統(tǒng)服務(wù)。SYS提供一系列基本的類似于標(biāo)準(zhǔn)C運(yùn)行時間庫函數(shù)系統(tǒng)服務(wù),比如系統(tǒng)停止,系統(tǒng)錯誤等。
            QUE模塊:管理隊列。提供一類函數(shù)用于管理隊列列表。QUE模塊最常用于實(shí)現(xiàn)FIFO列表,其中的元素在尾部插入,頭部移出。

            輸入輸出功能
            DSP/BIOS應(yīng)用項目的輸入輸出提供流(stream),管道(pipe)和主機(jī)信道(host channel)三類處理對象。每一類對象有其自身的數(shù)據(jù)I/O管理模塊。
            流是一種在應(yīng)用程序I/O設(shè)備之間數(shù)據(jù)傳輸?shù)男诺?,這種信道在輸入時為只讀,在輸出時為只寫,如圖3,流對所有I/O設(shè)備提供一個簡單的統(tǒng)一接口,這時應(yīng)用項目可以不用關(guān)心每個獨(dú)立設(shè)備的操作細(xì)節(jié)。
            流的一個重要方面是它的異步屬性。輸入輸出并行使用數(shù)據(jù)緩沖區(qū)。當(dāng)處理當(dāng)前緩沖時,可將新的輸入緩沖區(qū)寫滿。因僅交換數(shù)據(jù)指針而不用進(jìn)行數(shù)據(jù)交換,流是高效的,使程序容易滿足實(shí)時的要求。SIO模塊對流實(shí)行管理,通過了DSP/BIOS編程接口的設(shè)備驅(qū)動器跟不同類型的設(shè)備進(jìn)行交互。設(shè)備驅(qū)動器是管理設(shè)備的軟件模塊,遵從DEV提供的公用接口,流提出請求,驅(qū)動器就按照適合于特定設(shè)備的方式執(zhí)行。
            數(shù)據(jù)管道用于輸入輸出數(shù)據(jù)的緩存,管道提供一致的數(shù)據(jù)結(jié)構(gòu),可以用于驅(qū)動DSP設(shè)備和所有外設(shè)間的I/O,見圖4。與流相比,數(shù)據(jù)管道的開銷較大,它的通知機(jī)制是由管道管理器自動處理的。管道I/O操作一次只能處理一幀,盡管每一幀需要固定長度,但應(yīng)用項目可以根據(jù)幀長度設(shè)置可變數(shù)目的數(shù)據(jù)。每一個數(shù)據(jù)傳送線程需要獨(dú)立的數(shù)據(jù)管道,每一個管道只有一對讀寫器提供點(diǎn)對點(diǎn)的通信。一般來講,管道的一端由HWI控制,另一端由SWI控制。管道也能在兩個應(yīng)用線程之間傳輸數(shù)據(jù)。
            主機(jī)信道對象允許應(yīng)用程序在主機(jī)和目標(biāo)板之間傳遞數(shù)據(jù),它的輸入輸出是靜態(tài)配置的,而且每一個主機(jī)信道的內(nèi)部實(shí)現(xiàn)都采用了管道對象方式。

            結(jié)語
            TI公司的TMS320系列DSP已被多家電子通信廠商作為信號處理的首選芯片,所以如何更好的使用,以實(shí)現(xiàn)整體項目的可靠性和最優(yōu)化成為我們關(guān)心的問題。基于TMS320系列的DSP/BIOS II 為開發(fā)人員提供了合理的解決方案。DSP/BIOS的優(yōu)越性主要體現(xiàn)在它的多任務(wù)規(guī)劃和實(shí)時分析上,而且CCS中提供的DSP/BIOS設(shè)置工具使開發(fā)人員可以可視化的進(jìn)行程序編排。DSP/BIOS II 的應(yīng)用可以有效的縮短項目開發(fā)周期。■

            參考文獻(xiàn)
            1 TI ,TMS320 DSP/BIOS User's Guide,SPRU423, February 2001.
            2 TI,TMS320C5000 DSP/BIOS Application Programming Interface (API) Ref Guide spru404c, April 2001.


            關(guān)鍵詞:

            評論


            相關(guān)推薦

            技術(shù)專區(qū)

            關(guān)閉