那曲檬骨新材料有限公司

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

基于TMS320VC5402和TLC320AD50C實現實時語音處理系統的設計

電子設計 ? 來源:電子產品世界 ? 作者:宋軍 , 顧永建 ? 2020-08-24 09:17 ? 次閱讀

TMS320VC5402(以下簡稱C5402)是TI德州儀器公司1999年10月推出的性價比極高(目前批量價格約人民幣40元)的定點數字信號處理器DSP)。指令執行速率高達100MIPS,已經廣泛用于實時語音處理、個人數字助理(PDA)和數字無線通信嵌入式系統。TLC320AD50C(簡稱AD50)是TI公司生產的SIGMA-DELTA型單片音頻接口芯片AIC)。而DSK板是TI公司的一種DSP仿真/開發板,本文著重介紹了利用CCS在DSK板上進行實時語音處理的軟件設計過程。

1.C5402及其多通道緩沖串口

C5402硬件優點。改進的哈佛結構解決了馮諾伊曼(Von-Neumann)結構中高速數據傳輸時的傳輸通道上的瓶頸現象;內部多總線結構保證在一個機器周期內可以多次訪問程序空間和數據空間;指令執行時的多重流水線結構將指令周期降低到了最小值;多處理單元可以在一個指令周期內同時進行運算,而這種結構恰好滿足了數字信號處理中的一些特殊要求如FIR、IIR、FFT等運算。尤為值得一提的是C5402的軟件特點,7種有效靈活的尋址方式,僅為10ns的指令執行周期,還有一些特殊的運算指令更好地滿足了數字信號處理中特有的運算需要。

C5402具有高速的,全雙工串行口,可用來與系統中的其他C54x器件,編碼解碼器,串行A/D,D/A轉換器以及其他的串行器件直接接口。這兩個串行口均為多通道緩沖串行口McBSP(Multi-channel Buffered Serial Port)。它支持全雙工通信,雙緩沖數據寄存器,允許連續的數據流。可以與工業標準的編/解碼器,AICs接口。支持多種方式的傳輸接口如T1/E1幀協議、MVIP幀方式、H.100幀方式、SCSA幀方式、IIS兼容設備等。可與多達128個通道進行收發。支持傳輸的數據字長可以是8bit,12bit,16bit,20bit,24bit或32bit。內置μ-律和A-律壓擴硬件。

McBSP在結構上可以分為一個數據通道和一個控制通道。如圖1所示:

數據通道完成數據的發送和接收。控制通道完成的任務包括內部時鐘的產生,幀同步信號產生,對這些信號的控制以及多通道的選擇等。控制通道還負責產生終端信號送往CPU,產生同步事件通知DMA控制器

基于TMS320VC5402和TLC320AD50C實現實時語音處理系統的設計

圖1 McBSP的結構

象51/96系列單片機一樣,對C5402串行口的操作也是通過設置各控制寄存器來進行的。這些控制寄存器有串行口控制寄存器SPCR1/2;接收控制寄存器RCR1/2;發送控制寄存器XCR1/2;多通道寄存器MCR1/2等。需要注意的是,要對某一控制寄存器尋址,只能采用加子地址尋址方式。

2. AD50的一般說明

AD50是一款SIGMA-DELTA型單片音頻接口芯片(AIC)。它內部集成了16位的D/A和A/D轉換器,采樣速率最高可達22.05kb/s,其采樣速率可通過DSP編程來設置。在DAC之前有一個插值濾波器以保證輸出信號平滑和ADC之后有一個抽取濾波器以提高輸入信號的信噪比。

AD50內部有7個數據和控制寄存器,用于編程控制它們的工作狀態。

寄存器0:空操作寄存器。

寄存器1: 軟件復位

軟件掉電

選擇16位或15位工作方式

硬件或軟件二次通信請求方式的選擇

寄存器2:使能ALTDATA輸入端

為ADC選擇16/15位方式

寄存器3:選擇FS與FSD之間延遲SCLK的個數

告訴主機有幾個從機被聯上

寄存器4:為輸入和輸出放大器選擇放大器增益

選擇N來設置采樣頻率,fs=MCLK/(128*N)或MCLK/(512*N)

在MCLK輸入端使能外部時鐘輸入并旁通內部的PLL

寄存器5,6:保留

AD50與C5402之間的數據傳送采用串行方式,包括兩種傳輸模式:16位和15+1位傳輸模式。15+1位模式時,其中的D0位表示二次通信。它們各自的時序如下:

注:A,16位或15位工作方式是通過控制寄存器2來編程實現的。

B,M/S用來表明15位的數據是來自主機還是從機。

C,最高位MSB(D15)在SCLK第一個周期的下降沿穩定,最低位(D0,M/S)在SCLK第16個周期的下降沿穩定。

圖 2 僅有首次通信時的ADC通道時序

注:A,二次通信時的M/S位(DS15)用于表明在設置了讀位后寄存器數據(地址和內容)是來自主機還是從機。在寄存器讀期間,DS7-DS0位是指定寄存器的內容,在寄存器寫期間,DS7-DS0為0。

圖3 有首次通信和二次通信的ADC通道時序

AD50的數據傳輸模式和采樣速率都可以通過DSP對其控制寄存器的編程來實現,因此,在許多場合下,AD50都作為DSP的AIC來實現音頻處理。

3.CCS和DSK

CCS(Code Composer Studio)為TI公司的DSP集成開發環境。它提供了環境配置、源文件編輯、程序調試、跟蹤和分析等工具,可以幫助用戶在一個軟件環境下完成編輯、編譯鏈接、調試和數據分析等工作。與TI提供的早期軟件開發工具相比,利用CCS能夠加快軟件開發進程,提高工作效率。

CCS一般工作在兩種模式下:軟件仿真器和與硬件開發板相結合的在線編程。前者可以脫離DSP芯片,在PC機上模擬DSP的指令集與工作機制,主要用于前期算法實現和調試。后者實時運行在DSP芯片上,可以在線編制和調試應用程序。

DSK板是一塊需要外部提供+5VDC電源的獨立的開發板,在板線性電壓調整器提供1.8VDC的DSP內核電壓,3.3VDC數字和5VDC模擬電壓。它提供低功耗的、標準的、獨立的C54X系列開發平臺,允許用戶為C54X系列DSP評估和開發應用程序。DSK板上的核心當然就是100MHz的C5402 DSP,還有兩片AD50,它們占用了DSP的兩個McBSP,其中的一片是本文用到的即用于采集外部音頻信號(使用McBSP1),另一片則與標準電話線相接口(使用McBSP0)。

值得一提的是DSK板的在板接口十分豐富,有25針并行接口,9針串行接口,JTAG仿真口,電話 DAA接口,麥克風/揚聲器 接口,還有擴展接口用于擴展存儲器和外圍電路。這些接口極大地方便了DSP開發者的在板開發。本文所涉及的程序設計是通過25針的并行口將主機和DSK板連接起來的。

4.軟件設計

本文所設計的程序要完成的功能是通過麥克風接口進行語音信號的采集并實時地通過揚聲器接口回放出來。

4.1 通信格式的研究

AD50C有兩種通信格式:首次通信和二次通信。

首次通信格式的16位都用來傳輸數據。ADC的數據長度由寄存器2的D4位決定。啟動和復位后默認值為15+1位模式,最后一位用于請求二次通信(D0:0表示無操作,1表示請求二次通信)。當然,二次通信也可以由硬件的FC引腳產生,本文不作討論。下圖為首次通信的數據格式:

圖4 首次通信的數據格式

二次通信則用來初始化和設置AD50C的內部寄存器的值。二次通信時DSP可通過向DIN寫入寄存器的值,也可以從DIN讀出寄存器的值。二次通信的數據格式如下:

圖4 二次通信的數據格式

由圖可以看出,DS13位控制讀寫,DS12~8為寄存器的地址,DS7~0為寄存器的值。系統復位后,必須通過DSP的DX口向AD50C的DIN寫數據以初始化各控制寄存器,如AD轉換只用到寄存器1,寄存器2和寄存器4。

4.2 程序流程

圖5示出了CCS配置的主程序源文件(.c或.asm)的設計流程

圖5 主程序設計流程

當然,要使用CCS在DSK板上運行某個程序,光有源文件的主程序(.c或.asm)是不夠的,還需要配置中斷向量表(.asm)和命令鏈接文件(.cmd),在一些特殊的場合還需要配置其他的文件。主程序當然是整個程序的核心,它的作用涉及數據的讀/寫和具體的處理過程以及中斷的設置、寄存器的配置等;中斷向量表主要作用是告知程序中斷跳轉的位置,顯而易見,如果在主程序中已經設置,則不再需要配置中斷向量表;命令鏈接文件(.cmd)的主要作用是分配存儲空間,比如存儲器的第0頁分配作程序空間,第1頁分配作數據空間,以及各個段將要放在哪兒(如.text段放在數據空間),這個文件對每個工程來說都是必須的。

4.3 程序設計

從上面的程序流程中,我們可以看到,要完成預定的功能,首先要初始化DSP的串行口和AIC,然后的工作就是開辟緩存區以便將輸入的數據存儲起來等待進一步處理如濾波、DA轉換等。限于篇幅,下面只列出了本文要實現音頻回放功能的幾個關鍵程序段。

一.主程序:

在程序中要定義諸多的變量以及所需要包含的頭文件和庫文件在此略。

5.CCS運行結果

待程序設計好之后,將其添加到一個新建的工程里編輯、調試,直到編譯、構建通過并生成.out文件,然后裝載.out文件。這樣就可以運行了。為了驗證程序是否已正常運行,可以在麥克風/揚聲器接口分別接上話筒和小音箱,在對著話筒說話時,將可以從小音箱中聽到。同時,也可以在CCS中打開觀察窗口、寄存器窗口以及圖形顯示窗口。下圖為音頻輸入時某一時刻的圖形顯示和寄存器的值。

圖6. CCS運行窗口

事實上,在程序調試過程中經常會遇到這樣或那樣的問題,一般的方法是采用單步執行的方式來調試。而且,由于DSP本身的特點,從一開始就需要認識到開發過程的復雜性。

責任編輯:gt

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • dsp
    dsp
    +關注

    關注

    554

    文章

    8059

    瀏覽量

    350439
  • 芯片
    +關注

    關注

    456

    文章

    51183

    瀏覽量

    427281
  • 接口
    +關注

    關注

    33

    文章

    8691

    瀏覽量

    151920
收藏 人收藏

    評論

    相關推薦

    TLC320AD50C在DSP系統中的應用與設計

    通信、控制、軍事等領域。在DSP的應用中,數據的采集、信號處理及重建是DSP應用系統的重要任務。本文介紹TMS320C54X與 - 型A/D、D/A轉換芯片TLC320AD50C的工作
    發表于 11-30 11:29

    怎樣去設計TMS320VC5402與模擬芯片TLC320AD50C的接口?

    TMS320VC5402的McBSP是什么?TLC320AD20C是什么?TMS320VC5402TLC320AD50C硬件連接及軟件怎樣去實現
    發表于 04-23 06:56

    如何去實現TMS320VC5402TLC320AD50C的接口設計?

    如何去實現TMS320VC5402TLC320AD50C的接口設計?
    發表于 06-04 06:01

    基于TMS320VC5402的汽車防撞信號處理系統設計與實現

    介紹了一種基于TMS320VC5402 DSP 芯片的汽車防撞信號處理系統的軟硬件設計方法。該系統對車載毫米波雷達的接收信號進行自適應噪聲消除,為報警提示做好了準備。關鍵詞:DSP
    發表于 08-28 10:02 ?32次下載

    基于TMS320VC5402 的DSP基本系統的設計

    基于TMS320VC5402 的DSP基本系統的設計 本文以美國Texas Instruments( TI) 公司C5000TM系列DSP 中TMS320VC5402 為例,介紹用F
    發表于 04-01 15:52 ?47次下載

    基于DSP的孤立詞語音識別系統的設計

    本文提出了基于TMS320VC5402語音識別系統方案。整個系統TMS320VC5402為核心電路進行設計,由
    發表于 07-27 17:36 ?25次下載

    MAX121與TMS320VC5402在高速數據采集中的接口

    MAX121與TMS320VC5402在高速數據采集中的接口設計 TMS320VC5402
    發表于 10-09 14:55 ?1010次閱讀
    MAX121與<b class='flag-5'>TMS320VC5402</b>在高速數據采集中的接口

    音頻接口芯片TLC320AD50CTMS320VC5402

      目前發展起來的高速數字信號處理器(DSP)在語音處理系統中得到了廣泛應用。TMS320VC5402的TI公司生產的一種性能價格比較高的16位定點DSP。它的指令周期為10ns,具有
    發表于 08-13 10:43 ?2231次閱讀
    音頻接口芯片<b class='flag-5'>TLC320AD50C</b>與<b class='flag-5'>TMS320VC5402</b>

    TLC320AD50C介紹及與TMS320VC5402連接分析

    TMS320VC5402是TI公司生產的TMS320VC54x系列中的一個操作靈活、高速、具有較高性價比、低功耗的16位定點通用DSP芯片
    發表于 09-08 11:25 ?2235次閱讀
    <b class='flag-5'>TLC320AD50C</b>介紹及與<b class='flag-5'>TMS320VC5402</b>連接分析

    語音采集及FSK調制的DSP實現

    本文設計了一個基于定點DSP芯片TMS320VC5402實時語音采集、FSK調制系統語音信號的采集通過
    發表于 09-27 17:29 ?74次下載
    <b class='flag-5'>語音</b>采集及FSK調制的DSP<b class='flag-5'>實現</b>

    TMS320VC5402實現語音識別算法

    TMS320VC5402實現語音識別算法
    發表于 12-30 15:38 ?9次下載

    基于TMS320VC5402的DSP基本系統的設計

    基于TMS320VC5402的DSP基本系統的設計
    發表于 10-20 15:14 ?18次下載
    基于<b class='flag-5'>TMS320VC5402</b>的DSP基本<b class='flag-5'>系統</b>的設計

    TMS320VC5402TMS320UC5402引導加載程序的特點和操作詳細概述

    本文描述了TMS320VC5402TMS320UC5402引導加載程序的特點和操作。還討論了處理器ROM的內容。
    發表于 04-26 16:26 ?10次下載
    <b class='flag-5'>TMS320VC5402</b>和<b class='flag-5'>TMS320UC5402</b>引導加載程序的特點和操作詳細概述

    TMS320VC5402 數字信號處理

    電子發燒友網為你提供TI(ti)TMS320VC5402相關產品參數、數據手冊,更有TMS320VC5402的引腳圖、接線圖、封裝手冊、中文資料、英文資料,TMS320VC5402真值表,TM
    發表于 10-09 10:54
    <b class='flag-5'>TMS320VC5402</b> 數字信號<b class='flag-5'>處理</b>器

    數字信號處理TMS320VC5402與音頻模擬芯片TLC320AD50C的接口設計

    關鍵詞:TLC320AD50C , TMS320VC5402 , 模擬芯片 , 信號處理器 , 音頻 目前發展起來的高速數字信號處理器(DSP)在
    發表于 02-09 22:40 ?793次閱讀
    线上百家乐平玩法| 百家乐机器出千| 金赞百家乐的玩法技巧和规则| 大发888娱乐代理| 全州县| 真人百家乐官网代理分成| 24山风水水口| 老虎百家乐的玩法技巧和规则| 壹贰博网址| 百家乐官网币| 澳门百家乐路子分析| 大发888官方 df888| 博E百百家乐官网现金网| 太阳百家乐官网破解| 3U百家乐的玩法技巧和规则 | 百家乐官网网址皇冠现金网| 百家乐赌博机原理| 大发888官网 平台| 赌百家乐官网怎样能赢| 在线百家乐博彩网| 六合彩官方网| 百家乐官网真人百家乐官网赌博| 如何打百家乐的玩法技巧和规则| 足球投注技巧| pc百家乐官网模拟游戏| 嘉年华百家乐的玩法技巧和规则 | 百家乐游戏开发软件| 娱乐城送白菜| 百家乐官网科学打| 百家乐网址官网| 真人百家乐官网软件博彩吧| 百家乐信息| 百家乐b28博你| 百家乐官网官网下载| 百家乐巴厘岛娱乐城| 百乐彩博彩| 百家乐机器昀程序| 十六浦娱乐| 百家乐官网筹码套装100片| 大发888注册步骤| 百家乐官网皇室百家乐官网的玩法技巧和规则 |