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

基于DSP/BIOS的多信號(hào)并行處理軟件架構(gòu)設(shè)計(jì)

2012-12-17 10:42:02
電子科技 2012年7期
關(guān)鍵詞:指令信號(hào)系統(tǒng)

王 敏

(廣州海格通信集團(tuán)股份有限公司網(wǎng)通分公司,廣東廣州 510663)

隨著信息技術(shù)和芯片技術(shù)的發(fā)展,DSP技術(shù)在航空、通信、醫(yī)療和消費(fèi)類(lèi)電子設(shè)備中得到廣泛應(yīng)用。伴隨主頻不斷提升及多核并行工作,DSP芯片的運(yùn)算能力快速增強(qiáng)。運(yùn)用DSP芯片快速設(shè)計(jì)多類(lèi)信號(hào)多路并行處理的軟件,變得更加重要。為滿(mǎn)足需求,文中提出一種基于DSP/BIOS的軟件架構(gòu),可提高軟件的可維護(hù)性和可重用性,方便算法的裁減添加及程序的跨平臺(tái)移植,實(shí)現(xiàn)多類(lèi)信號(hào)多路并行處理的軟件快速開(kāi)發(fā)設(shè)計(jì)。

1 DSP/BIOS簡(jiǎn)介

DSP/BIOS是TI公司推出的實(shí)時(shí)操作系統(tǒng),集成在CCS(Code Composer Studio)開(kāi)發(fā)環(huán)境中。DSP/BIOS采用靜態(tài)配置策略,通過(guò)去除運(yùn)行代碼能使目標(biāo)程序存儲(chǔ)空間最小化,優(yōu)化內(nèi)部數(shù)據(jù)結(jié)構(gòu),在程序執(zhí)行前夠通過(guò)確認(rèn)對(duì)象所有權(quán)較早地檢測(cè)出錯(cuò)誤,可滿(mǎn)足DSP運(yùn)行時(shí)的調(diào)試和性能分析,應(yīng)用DSP/BIOS可以快速編寫(xiě)高效程序,較大的簡(jiǎn)化DSP應(yīng)用程序的開(kāi)發(fā)和調(diào)試。DSP/BIOS是一組可重復(fù)調(diào)用的系統(tǒng)模塊應(yīng)用程序接口API集合,分為系統(tǒng)模塊System、協(xié)助模塊Instrumentation、調(diào)度模塊Scheduling、同步模塊Synchronization、通信模塊 Input/Output和配置模塊CSL[1]。系統(tǒng)模塊,主要完成芯片型號(hào)確認(rèn)、字節(jié)序Endian Mode配置、主頻配置、芯片Cashe空間劃分及內(nèi)存空間分配。協(xié)助模塊Instrumentation,主要負(fù)責(zé)消息打印、事件日志及信息追蹤工作。調(diào)度模塊,為DSP/BIOS核心功能,可細(xì)化為定時(shí)管理CLK、周期中斷管理PRD、硬中斷管理HWI、軟中斷管理SWI、任務(wù)管理TSK和空閑任務(wù)管理IDL。CLK控制片內(nèi)的32位實(shí)時(shí)邏輯時(shí)鐘,負(fù)責(zé)PRD周期的設(shè)置。PRD管理周期對(duì)象,觸發(fā)應(yīng)用程序周期執(zhí)行性,為一種特殊的SWI。HWI管理硬件中斷,主要負(fù)責(zé)DSP與外設(shè)的數(shù)據(jù)交互,中斷服務(wù)程序應(yīng)盡量短小精焊。SWI是不可阻塞搶斷式,SWI任務(wù)只能在程序編制時(shí)預(yù)先定義好。TSK是可阻塞搶斷式的,支持任務(wù)的動(dòng)態(tài)產(chǎn)生。IDL管理休眠函數(shù),休眠函數(shù)在目標(biāo)系統(tǒng)程序無(wú)更高優(yōu)先權(quán)的函數(shù)運(yùn)行時(shí)啟動(dòng),是一種特殊的TSK[1]。同步模塊,負(fù)責(zé)各個(gè)調(diào)度模塊之間信息的交換傳遞,保證調(diào)度模塊之間的同步和互斥。通信模塊,允許應(yīng)用程序在目標(biāo)系統(tǒng)和主機(jī)之間交流數(shù)據(jù)。配置模塊,負(fù)責(zé)芯片底層硬件的配置。另外DSP/BIOS還帶有插件,支持實(shí)時(shí)分析、程序跟蹤和性能監(jiān)視。

2 DSP軟件架構(gòu)

圖1 DSP軟件架構(gòu)

軟件架構(gòu)采用分層設(shè)計(jì)思想,共分5層:驅(qū)動(dòng)層、系統(tǒng)層、算法層、控制層和應(yīng)用層。驅(qū)動(dòng)層完成芯片硬件接口及外圍芯片驅(qū)動(dòng)。系統(tǒng)層運(yùn)行DSP/BIOS操作系統(tǒng),完成硬件中斷、周期控制和任務(wù)調(diào)度功能。算法層提供各類(lèi)業(yè)務(wù)需求的算法API。控制層負(fù)責(zé)軟件的指令解析、內(nèi)存管理、中斷服務(wù)和交換控制。應(yīng)用層為CPU調(diào)用控制DSP提供指令交互和數(shù)據(jù)交互接口。

3 子層設(shè)計(jì)

3.1 驅(qū)動(dòng)層

使用DSP/BIOS圖形化的界面,調(diào)用芯片支持庫(kù)模塊CSL[2],快速設(shè)置DSP底層硬件接口,完成芯片的MCBSP驅(qū)動(dòng)、EMIF驅(qū)動(dòng)和EDMA驅(qū)動(dòng)的開(kāi)發(fā)。對(duì)于外圍芯片的驅(qū)動(dòng),如A/D芯片驅(qū)動(dòng),首先硬件上完成DSP芯片與A/D芯片的接線,然后按照配置指令的幀格式完成對(duì)A/D芯片的配置。

3.2 系統(tǒng)層

系統(tǒng)層設(shè)計(jì)為軟件架構(gòu)設(shè)計(jì)的關(guān)鍵點(diǎn),充分利用DSP/BIOS提供的調(diào)度模塊和同步模塊。將控制層中的指令解析、交換控制和交換表更新模塊與PRD綁定,周期檢查有無(wú)新指令,并根據(jù)指令解析更新交換表,調(diào)度周期由32位實(shí)時(shí)邏輯時(shí)鐘控制。將控制層中的交換控制和數(shù)據(jù)交換模塊與TSK綁定,根據(jù)從其他模塊收到的信號(hào)量SEM或者郵箱信息MBX,進(jìn)行數(shù)據(jù)格式轉(zhuǎn)換,完成不同格式的數(shù)據(jù)在不同信道間的透明傳輸。將中斷服務(wù)與HWI進(jìn)行綁定,完成數(shù)據(jù)實(shí)時(shí)收發(fā)。運(yùn)用同步模塊Synchronization中的郵箱機(jī)制MBX與信號(hào)量SEM機(jī)制完成HWI、PRD和TSK之間的消息傳遞。運(yùn)用操作系統(tǒng)的調(diào)度算法,完成多個(gè)任務(wù)之間的調(diào)度,控制數(shù)據(jù)收發(fā)及數(shù)據(jù)處理。

3.3 算法層

把各類(lèi)算法單獨(dú)列為一層,匯聚多類(lèi)信號(hào)算法,采用松散耦合和可重入設(shè)計(jì)方法,方便算法的移植、維護(hù)及多路并行工作設(shè)計(jì),并根據(jù)應(yīng)用需求,方便算法的裁減和擴(kuò)充。各類(lèi)算法嚴(yán)格獨(dú)立,都以單獨(dú)庫(kù)和頭文件的形式提供。算法層的結(jié)構(gòu)如圖2所示。

圖2 算法層結(jié)構(gòu)

3.4 通信常用算法

DTMF:雙音多頻信號(hào),每個(gè)號(hào)碼由兩個(gè)音頻信號(hào)相加得到,廣泛用在電話(huà)撥號(hào)和來(lái)電顯示中,其生成和檢測(cè)算法[3]。

FSK:利用1 200 Hz和2 200 Hz的正弦信號(hào),采用2FSK調(diào)制解調(diào)方法,廣泛用于來(lái)電顯示中,其生成和檢測(cè)算法[4]。

TONE:三音生成和檢測(cè)算法,包含信號(hào)音、忙音、回鈴音生成和三音檢測(cè),廣泛用于電話(huà)交換系統(tǒng)中。

G.711:速率為64 kbit·s-1的語(yǔ)音編解碼標(biāo)準(zhǔn),廣泛用于電話(huà)交換系統(tǒng)中。

CVSD:連續(xù)可變斜率編碼的英文縮寫(xiě),速率為16 kbit·s-1的語(yǔ)音編解碼標(biāo)準(zhǔn),用于低速率通信系統(tǒng)中,其編解碼算法[5]。

3.5 控制層

控制層設(shè)計(jì)為軟件架構(gòu)設(shè)計(jì)第二個(gè)關(guān)鍵點(diǎn),在應(yīng)用層與系統(tǒng)層、算法層之間起到橋梁作用。由指令解析、內(nèi)存管理、中斷服務(wù)和交換控制4個(gè)模塊組成。指令解析由操作系統(tǒng)PRD調(diào)用,周期性的判斷是否具有新的指令到來(lái),如有新指令到來(lái),首先把新的指令放入到指令FIFO存儲(chǔ)器,然后清空指令空間,避免下次調(diào)用指令解析函數(shù)時(shí)做出誤判斷,最后指令解析模塊會(huì)對(duì)指令FIFO中的內(nèi)容進(jìn)行解析,根據(jù)解析結(jié)果更新交換控制模塊中的交換表。內(nèi)存管理為每個(gè)業(yè)務(wù)通道分配了發(fā)送緩存區(qū)Tx Buffer和接收緩存區(qū)RX Buffer,并為每個(gè)Tx Buffer和Rx Buffer配備了管理指針,用于指示Buffer中的數(shù)據(jù)的存儲(chǔ)位置及空閑位置,并由此計(jì)算出每個(gè)Buffer的數(shù)據(jù)個(gè)數(shù)及空閑空間大小,完成對(duì)異常操作如寫(xiě)操作過(guò)程中產(chǎn)生的Buffer溢出或讀操作過(guò)程產(chǎn)生的Buffer空的處理。在產(chǎn)生硬件中斷時(shí),中斷服務(wù)由BIOS系統(tǒng)HWI調(diào)用,完成實(shí)時(shí)數(shù)據(jù)收發(fā)。中斷服務(wù)需要保證實(shí)時(shí)性,不作過(guò)多控制和計(jì)算,盡可能減少執(zhí)行指令數(shù)目,以及使用短周期指令,必要情況下使用CCS提供的已經(jīng)優(yōu)化的Intrinsics函數(shù)進(jìn)行程序的優(yōu)化或運(yùn)用匯編指令編寫(xiě)。HWI不可阻塞,在中斷服務(wù)中,不可調(diào)用具有可能引起阻塞的函數(shù)。與系統(tǒng)中其他任務(wù)之間的信息交換可以通過(guò)協(xié)助模塊中的郵箱機(jī)制MBX或信號(hào)燈機(jī)制SEM進(jìn)行交互。交換控制模塊實(shí)現(xiàn)不同通道數(shù)據(jù)之間的交換,并伴隨不同數(shù)據(jù)格式相互轉(zhuǎn)換。交換控制包含交換表管理和數(shù)據(jù)交換,具備多種的交換能力。交換表管理具有交換表?xiàng)l目刪除和增加的功能。數(shù)據(jù)交換模塊根據(jù)交換表完成源通道數(shù)據(jù)到目的通道數(shù)據(jù)格式轉(zhuǎn)換,然后將轉(zhuǎn)換后的數(shù)據(jù)放置到目的通道的發(fā)送緩存中,等待數(shù)據(jù)發(fā)送,具有多路并行工作能力。控制層內(nèi)部模塊之間的數(shù)據(jù)交互如圖3所示。

圖3 控制層各模塊數(shù)據(jù)流程圖

3.6 應(yīng)用層

應(yīng)用層設(shè)計(jì)采用內(nèi)存共享機(jī)制,實(shí)現(xiàn)DSP與CPU的指令交互和數(shù)據(jù)交互。為確保每次讀寫(xiě)數(shù)據(jù)的完整性和正確性,兩塊處理器間需要建立有效的通信機(jī)制,保證不會(huì)同時(shí)對(duì)同一地址進(jìn)行操作。指令交互負(fù)責(zé)接收CPU指令并向CPU返回結(jié)果。指令解析模塊周期性讀取指令,并進(jìn)行解析,控制DSP每個(gè)業(yè)務(wù)通道的操作,如果是DTMF檢測(cè)、FSK檢測(cè)或TONE檢測(cè)指令,DSP將解析出的結(jié)果反饋給CPU。如果是DTMF產(chǎn)生、FSK產(chǎn)生或TONE產(chǎn)生指令,DSP將向指定業(yè)務(wù)通道發(fā)送號(hào)碼對(duì)應(yīng)的DTMF信號(hào)、FSK信號(hào)或撥號(hào)音、忙音、回鈴音或催掛音等;如果是兩信道語(yǔ)音格式轉(zhuǎn)換指令,DSP將從源信道接收數(shù)據(jù),完成轉(zhuǎn)換格式后,發(fā)往目的通道。數(shù)據(jù)交互,DSP與CPU通過(guò)共享內(nèi)存還可進(jìn)行數(shù)據(jù)交互,數(shù)據(jù)的存儲(chǔ)狀態(tài)將由內(nèi)存管理模塊進(jìn)行控制。

4 結(jié)束語(yǔ)

文中介紹的軟件架構(gòu),已在實(shí)際應(yīng)用中得到驗(yàn)證,在TMS320VC5416可同時(shí)完成32路多種信號(hào)處理DTMF、FSK、TONE、CVSD、G.711任意配置,在TMS320C6418可同時(shí)完成128路多信號(hào)處理DTMF、FSK、TONE、CVSD、G.711 任意配置,并可加入多路G.729處理。該軟件架構(gòu)能夠保證不同算法的單獨(dú)開(kāi)發(fā)和重復(fù)利用,在跨平臺(tái)移植時(shí),根據(jù)硬件接口不同,僅需對(duì)驅(qū)動(dòng)層進(jìn)行重新配置,其余層的代碼可直接移植,加速了多信號(hào)并行處理軟件開(kāi)發(fā)設(shè)計(jì)。

[1]Texas Instruments.TMS320 DSP/BIOS user's guide[M].USA Dallas:Texas Instruments,2002.

[2]Texas Instruments.TMS320C6000 chip support library API user's guide[M].USA Dallas:TexasInstruments,2002.

[3]肖俊武,肖擎,陳國(guó)橋,等.DTMF信號(hào)的生成與檢測(cè)在DSP中的軟件實(shí)現(xiàn)[J].湖北工業(yè)大學(xué)學(xué)報(bào),2007,22(6):11-13.

[4]錢(qián)俊,王芙蓉.一種新型FSK解調(diào)算法在來(lái)電顯示中的應(yīng)用[J].電子器件,2004,27(2):320 -323.

[5]郭秋平,項(xiàng)杰.基于嵌入式系統(tǒng)的CVSD語(yǔ)音編解碼器的實(shí)現(xiàn)[J].計(jì)算機(jī)工程,2006,32(16):213-214.

猜你喜歡
指令信號(hào)系統(tǒng)
聽(tīng)我指令:大催眠術(shù)
Smartflower POP 一體式光伏系統(tǒng)
信號(hào)
鴨綠江(2021年35期)2021-04-19 12:24:18
WJ-700無(wú)人機(jī)系統(tǒng)
ZC系列無(wú)人機(jī)遙感系統(tǒng)
完形填空二則
ARINC661顯控指令快速驗(yàn)證方法
LED照明產(chǎn)品歐盟ErP指令要求解讀
基于FPGA的多功能信號(hào)發(fā)生器的設(shè)計(jì)
電子制作(2018年11期)2018-08-04 03:25:42
連通與提升系統(tǒng)的最后一塊拼圖 Audiolab 傲立 M-DAC mini
主站蜘蛛池模板: 精品少妇人妻av无码久久| 99久久人妻精品免费二区| 无码高潮喷水在线观看| 国产精品无码影视久久久久久久| 无码精品一区二区久久久| 国产香蕉在线视频| 欧美一道本| 色妞www精品视频一级下载| 国产区福利小视频在线观看尤物| 国产精品刺激对白在线| 最新午夜男女福利片视频| 激情综合婷婷丁香五月尤物 | 99热最新网址| 92午夜福利影院一区二区三区| 美女国内精品自产拍在线播放| 欧洲欧美人成免费全部视频| 97人人做人人爽香蕉精品| 成人另类稀缺在线观看| 中文字幕在线看| 中文字幕在线观| 国产理论最新国产精品视频| 亚洲性色永久网址| 午夜国产大片免费观看| 免费高清a毛片| 国产综合色在线视频播放线视| 午夜福利免费视频| 国产精品入口麻豆| 久久人人97超碰人人澡爱香蕉| 88国产经典欧美一区二区三区| 高清无码不卡视频| 丁香五月激情图片| 2019年国产精品自拍不卡| 欧美一级高清视频在线播放| 91av成人日本不卡三区| 99精品视频九九精品| 青青草a国产免费观看| 美女免费黄网站| 国产成人喷潮在线观看| 无码一区二区波多野结衣播放搜索| 一区二区三区四区日韩| 日韩精品亚洲精品第一页| 精品久久久久久成人AV| 国产精品成人AⅤ在线一二三四| 黄色网站不卡无码| 欧美成人影院亚洲综合图| 中文天堂在线视频| 91在线精品免费免费播放| 国产网友愉拍精品视频| 波多野结衣二区| 亚洲中字无码AV电影在线观看| 亚洲国产在一区二区三区| 超碰免费91| 国产三区二区| 国产18在线播放| 国产91av在线| 国产门事件在线| AV在线天堂进入| 欧美成人怡春院在线激情| 91久久大香线蕉| 天天摸天天操免费播放小视频| 国产亚洲视频免费播放| 99久视频| 日韩精品久久久久久久电影蜜臀| 中文字幕在线看| 国产在线视频自拍| 国产成人精品一区二区| 9cao视频精品| 亚洲国产91人成在线| 最新痴汉在线无码AV| 国产精品hd在线播放| 国产三级国产精品国产普男人 | 在线欧美日韩| 国内精品自在欧美一区| 亚洲乱码在线播放| 四虎AV麻豆| 老司机久久99久久精品播放| 国产精品尤物在线| 婷婷综合亚洲| 欧美69视频在线| 日韩国产无码一区| 欧美黄网站免费观看| 第九色区aⅴ天堂久久香|