OMAP5912雙核通信及數字音頻系統實(shí)現
RF6是專(zhuān)門(mén)針對雙核芯片OMAP中DSP端軟件設計提出的一種參考框架[5],不但包含了外圍器件驅動(dòng)模塊、線(xiàn)程模塊以及算法封裝模塊,還包含了用于同ARM端進(jìn)行通信的模塊。RF6中數據處理的4種基本元素為:?jiǎn)卧?、通道、任?wù)和TMS320DSP數字信號處理器標準算法(eXpressDSP Algol-ithm InteropeliabilityStandard,XDAIS)。其中,單元是算法的集合,為外界和算法提供標準接口;通道是單元的集合;任務(wù)是按時(shí)間順序執行的一系列通道,其目的是和設備驅動(dòng)程序及其他任務(wù)通信。圖2為基于RF6框架的數字音頻系統結構圖。本文引用地址:http://dyxdggzs.com/article/150186.htm
4.2 ARM端應用程序和DSP端算法
ARM端應用程序主要實(shí)現人機交互、系統控制(如傳送參數)等功能,由2個(gè)線(xiàn)程組成:主線(xiàn)程和數據處理線(xiàn)程。主線(xiàn)程提供用戶(hù)界面和調用DSIVBIOSLINK中:PROC模塊的API函數,引導和加載DsP端可執行文件。數據處理線(xiàn)程將從DsP端任務(wù)O傳輸過(guò)來(lái)的音頻數據幀回送給任務(wù)1,其通過(guò)調用CHNL模塊中的API函數來(lái)實(shí)現ARM和DSP間的數據傳輸。
DSP端有2個(gè)任務(wù):任務(wù)0和任務(wù)1。任務(wù)0將交又存取的音頻數據幀分開(kāi)成左、右2個(gè)聲道。任務(wù)0分別對2個(gè)聲道進(jìn)行FIR濾波器處理,濾波器參數(如低通、高通)通過(guò)ARM端程序調用MSGQ模塊中的API函數來(lái)設定。然后任務(wù)0將左右聲道數據幀重新合成一個(gè)音頻信號數據幀,通過(guò)DSP/BIOS LlNK發(fā)送給ARM端。任務(wù)1與任務(wù)0非常相似,其通過(guò)DSP/BIOSLlNK從ARM端接收數據,然后對其采用音量控制算法實(shí)現聲音大小控制。
DSP端程序通過(guò)CodeComposer Studio編譯后,生成out格式的可執行文件。ARM端程序交叉編譯后生成應用程序。運行應用程序,可執行文件以參數形式傳遞給ARM端應用程序。采樣率44.1 kHz,量化精度16 bit。經(jīng)測試,用戶(hù)可通過(guò)在超級終端輸入命令實(shí)現對FIR和音量的調節,其運行結果如圖3所示。
5 結束語(yǔ)
0MAP平臺因其特有的雙核結構,廣泛應用于實(shí)時(shí)多媒體影音數據處理、語(yǔ)音識別系統、網(wǎng)絡(luò )通信等領(lǐng)域。筆者以OMAP5912平臺的數字音頻系統為例介紹雙核通信的具體應用,希望能對使用OMAP的人員具有借鑒意義。
評論