在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,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首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 介紹一種實(shí)時(shí)操作系統(tǒng)DSP/BIOS

            介紹一種實(shí)時(shí)操作系統(tǒng)DSP/BIOS

            作者: 時(shí)間:2009-04-09 來(lái)源:網(wǎng)絡(luò) 收藏

            3  STS
              對(duì)一個(gè)軟件進(jìn)行分析優(yōu)化時(shí),通常會(huì)用到profile的功能。但是在運(yùn)行的的環(huán)境中使用profile等效于加入了多個(gè)程序斷點(diǎn)。  由于現(xiàn)在的通常具有很深的流水線結(jié)構(gòu)來(lái)保證的高運(yùn)算能力,如的C6000系列的流水線長(zhǎng)度為12級(jí),程序斷點(diǎn)需要排空所有已經(jīng)進(jìn)入流水線的指令。這樣也就破壞了真正的運(yùn)行環(huán)境。同時(shí)profile還必須調(diào)用輸出模塊向主機(jī)傳遞時(shí)間信息。因此在profile的情況下真正的運(yùn)行環(huán)境是沒有辦法得到保護(hù)的。針對(duì)這種情況引入了一個(gè)統(tǒng)計(jì)模塊STS。STS對(duì)象只有4個(gè)數(shù)據(jù)Previous、Count、Total和Max。調(diào)用的方法(API)也只有4個(gè),即STS_add()、  STS_set()、  STS_delta()和STS_reset()。這些API對(duì)數(shù)據(jù)的操作功能如表1所示。

            本文引用地址:http://www.biyoush.com/article/152540.htm

            如果要對(duì)某一段程序進(jìn)行分析時(shí),只需在其前后調(diào)用STS_set和STS_delta就可以了。如例2使用STS測(cè)試程序段執(zhí)行周期如下:
              /*  Header  files  needed  for  DSP    */
              #include ?。約ts.h>
              #include  <clk.h>

              /*  functions  */
              void  func_load();

              /*  Objects  created  by  the  Configuration  Tool  */
              extern  STS_Obj  stsLoad;

              /*
              * ?。剑剑剑剑剑剑剑健 ain ?。剑剑剑剑剑剑剑?br />  */
              void  main()
              {

              /*  fall  into    idle  loop  */
               return;
              }

              void  func_load()
              {
              STS_set(stsPrintf、  CLK_gethtime());

              /*  測(cè)試程序段    */
              ...
              STS_delta(stsPrintf、  CLK_gethtime());
              }
              func_load()為一個(gè)中斷服務(wù)程序(ISR)。在C6211,150MHz的情況下,僅插入33個(gè)周期,約0.22μs。
            4  任務(wù)調(diào)度(HWI/SWI/TSK)
              一個(gè)的核心永遠(yuǎn)都是任務(wù)的調(diào)度。在中任務(wù)的調(diào)度是通過(guò)HWI、SWI和  TSK  三個(gè)模塊來(lái)實(shí)現(xiàn)的。這三個(gè)模塊分別對(duì)應(yīng)于不同的調(diào)度方法。HWI即硬件中斷。在  DSP/BIOS中硬件中斷主要負(fù)責(zé)從外部設(shè)備中讀寫數(shù)據(jù)。由于硬件中斷直接與硬件打交道,所以對(duì)應(yīng)的中斷服務(wù)程序ISR應(yīng)該盡可能地短小精悍。需要注意的是HWI并不引起任務(wù)調(diào)度,因此在ISR的入口和出口成對(duì)地調(diào)用_HWI_enter()和_HWI_exit()這兩個(gè)宏是必須的。HWI在處理完數(shù)據(jù)的輸入輸出后調(diào)用SWI_post()來(lái)調(diào)度相應(yīng)的軟件中斷,SWI來(lái)完成數(shù)據(jù)處理工作。SWI是  DSP/BIOS任務(wù)調(diào)度的核心,共有14個(gè)優(yōu)先級(jí),每個(gè)優(yōu)先級(jí)可以有多個(gè)任務(wù)。SWI任務(wù)是搶斷式的,即高優(yōu)先級(jí)的任務(wù)可以搶斷低優(yōu)先級(jí)的任務(wù)。但是SWI任務(wù)是不可阻塞的。它的運(yùn)行狀態(tài)如圖1所示。

            linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)


            評(píng)論


            相關(guān)推薦

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

            關(guān)閉