freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于dsp與usb的語音采集處理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)-資料下載頁

2025-06-18 15:49本頁面
  

【正文】 態(tài)。并且復(fù)位是優(yōu)先級(jí)別最高的中斷,一般是在加電后芯片處于未知狀態(tài)時(shí)對(duì)其復(fù)位。因?yàn)閺?fù)位信號(hào)終止存儲(chǔ)器操作并初始化各硬件狀態(tài)位,所以每次復(fù)位后系統(tǒng)必須重新運(yùn)行初始化程序。圖 14 所示是由 MAX706T 組成的復(fù)位電路,該電路既可以通過按鍵 SW 對(duì)芯片進(jìn)行手動(dòng)復(fù)位,也通過 MAX706T 實(shí)現(xiàn)自動(dòng)復(fù)位。20KR2GNDWDO 5RESET 7WDI 6PFO 8MR1VCC2GND3PFI4MAX706TU710KR74R76GND12 34SW110uFRC12DSP_RESET圖 14 MAX706T 組成的復(fù)位電路4 DSP 的音頻采集與處理 語音信號(hào)的線性預(yù)測分析 語音線性編碼的原理線性預(yù)測分析(LPALinear Predictive Analysis)的基本思想是語音信號(hào)的每個(gè)取樣值能夠用過去若干個(gè)取樣值的線性組合(預(yù)測值)來逼近。通過使實(shí)際語音信號(hào)取樣值和線性預(yù)測樣值之間的均方誤差最小,來決定唯一的一組預(yù)測器系數(shù)。這里的預(yù)測器系數(shù)就是線性組合中所用的加權(quán)系數(shù)。LAP 是目前進(jìn)行語音信號(hào)分析最有效和最流行的技術(shù)之一因,它提供了一組簡潔的語音信號(hào)模型參數(shù)。這組參數(shù)比較準(zhǔn)確的表達(dá)了語音信號(hào)的頻譜幅值,而計(jì)算量并不大。當(dāng) LAP 技術(shù)應(yīng)用于語音編碼時(shí),利用模型參數(shù)可有效地降低編碼比特率,提高識(shí)別率和減少計(jì)算時(shí)間。另外,利用 LAP 技術(shù)還可以進(jìn)行語音合成。這里,先簡單介紹一下線性預(yù)測法的原理,再舉例說明如何在 DSP 上運(yùn)用語音線性編碼 LPC 實(shí)現(xiàn)語音數(shù)據(jù)的壓縮。假設(shè)語音波形以一定的時(shí)間間隔 T 采樣得到的信號(hào)為 x(n) (n =0,1…),語音信號(hào)當(dāng)前時(shí)刻的采樣值 x(n)與鄰近的 M 個(gè)過去時(shí)刻的采樣點(diǎn)上的值 x(n1),x(n2)……x(nM)相關(guān),也就是說:x(n)可以由 x(nk)(k=1,2,…M)的線性組合近似表示: ()() ()12M()[ +)Maxnanan??????…()1Mk??^這種線性組合所得到的值被稱為語音信號(hào) x(n)的線性預(yù)測,或稱為預(yù)測值。計(jì)算預(yù)測誤差: ()()()MMfn??^ ()1)kxaxnk???式中, (k=1,2…M)稱為線性預(yù)測系數(shù),語音波形的特征可以由系數(shù)()Mka來表示。該系數(shù)取分析區(qū)間內(nèi)的預(yù)測誤差的最小均方值。()k因?yàn)轭A(yù)測誤差 在分析區(qū)間內(nèi)的平方和為()Mfn12 ()20 1()[())]NMMknEfxnaxn?? ????上式的最小值取在該式對(duì)系數(shù) 構(gòu)的偏微分為 0 處。因此可以得到下面的 M 個(gè)()ka一次方程所構(gòu)成的聯(lián)立方程組:, k=1,2…,M()MkEa??由上面的方程組即可得到系數(shù) 的最優(yōu)解。即由()1()()011 ()001=2[()])()2)(NMlMnlk NlnnlExaxlnkakxl???????????其中 K=1,2…M??傻? K=1,2…M1 1()0 0)(())NMNlnl naxnklxk? ?? ????在本系統(tǒng)中,無損失數(shù)據(jù)壓縮算法擬采用線性預(yù)測編碼方案,預(yù)測編碼采用類似△M 的編碼方式,這里稱為改進(jìn)的△M 編碼,這種方法易于集成在 DSP 芯片中。改進(jìn)的△M 編碼數(shù)據(jù)存儲(chǔ)格式如圖 15 所示:編碼標(biāo)志位采樣點(diǎn)數(shù)編碼量占二進(jìn)制位數(shù)差值占二進(jìn)制位數(shù)基值 1 偏移量 基值 n 偏移量… 差值 1 差值 n…數(shù)據(jù)塊頭基值序列差值序列圖 15 改進(jìn)的△M 編碼數(shù)據(jù)存儲(chǔ)格式改進(jìn)的△M 編碼是利用各采樣點(diǎn)之間的相關(guān)性編碼一定長度采樣點(diǎn)數(shù)據(jù),從而起到壓縮數(shù)據(jù)作用。以十進(jìn)制的例子解釋此編碼方式對(duì)數(shù)據(jù)的壓縮作用:假設(shè)有 10 個(gè)數(shù)據(jù)位數(shù)是 2 位的十進(jìn)制采樣點(diǎn)數(shù)據(jù):11,12,19,18,20,16,21,25,30,28。如果不采用任何數(shù)據(jù)壓縮算法,其數(shù)據(jù)存儲(chǔ)應(yīng)該是 11121918202221253028,共占 20 個(gè)字符,如果采用去掉數(shù)據(jù)塊頭的存儲(chǔ)方式,數(shù)據(jù)可存儲(chǔ)為 1162140187950497,共占 16 個(gè)字符,顯然,數(shù)據(jù)得到了壓縮。這16 個(gè)字符的意義解釋如下:116214 表示基值為 11,與 n 的差值小于等于 9 的采樣點(diǎn)連續(xù)有 6 個(gè),基值為 21,與 21 的差值小于等于 9 的采樣點(diǎn)連續(xù)有 4 個(gè),由差值序列可得出各采樣點(diǎn)的值:11(11+0),12(11+l),19(11+8),18(11+7),20(11+9),16(11+5),21(21+0),25(21+4),30(21+9),28(21+7)。本系統(tǒng)中,采樣點(diǎn)數(shù)據(jù)有效位為 12 位二進(jìn)制,采樣點(diǎn)個(gè)數(shù)為 4K 字節(jié),而數(shù)據(jù)序列均是采用 16 位二進(jìn)制數(shù)據(jù)表示的,這本身就存在 4 位冗余。對(duì)于 12 位的采樣點(diǎn),基值必須是 12 位,差值理論上 1~11 位可選,都有可能起到壓縮數(shù)據(jù)的作用。選擇最佳的差值位數(shù)的方法是:1~ 11 位差值編碼都試一遍,選出壓縮率最高的差值位數(shù)。當(dāng)差值位數(shù)選定以后,基值以及偏移量序列就能確定下來,偏移量需要多少位二進(jìn)制表示也可以確定下來。把采樣點(diǎn)數(shù)、偏移量占二進(jìn)制位數(shù)、差值占二進(jìn)制位數(shù)寫入數(shù)據(jù)塊頭以便解碼時(shí)候用。用以上編碼方式編碼后的數(shù)據(jù)長度主要取決于基值序列和差值序列的長度。顯然,在采樣點(diǎn)間的相關(guān)性極差的情況下,用以上方法編碼起不到壓縮數(shù)據(jù)的作用,反而比直接存儲(chǔ)原始數(shù)據(jù)的數(shù)據(jù)長度還長,此時(shí)就不宜用以上方法編碼了,而采用直接存儲(chǔ)原始數(shù)據(jù)的方法編碼。其存儲(chǔ)格式如圖 16 所示:編碼標(biāo)志位 采樣點(diǎn)數(shù) 原始數(shù)據(jù) 1 原始數(shù)據(jù) 2 原始數(shù)據(jù) n…圖 16 原始數(shù)據(jù)直接存儲(chǔ)格式其中編碼標(biāo)志位為 1 時(shí)表示采用了改進(jìn)的△M 編碼方式,為 O 時(shí)表示采用了直接記錄原始數(shù)據(jù)方式。改進(jìn)的△M 編碼算法流程圖如圖 17 所示。開始找到最佳的基值二進(jìn)制位數(shù)是否找到 ?計(jì)算偏移量應(yīng)占二進(jìn)制位數(shù)填數(shù)據(jù)塊頭填基值序列填差值序列填數(shù)據(jù)塊頭填原始數(shù)據(jù)結(jié)束是否圖 17 改進(jìn)的△M 編碼算法流程圖 DSP程序的實(shí)現(xiàn)這里具體介紹用 DSP 編程實(shí)現(xiàn)預(yù)測線性編碼算法程序的核心代碼和程序組織結(jié)構(gòu)。預(yù)測編碼函數(shù)名和參數(shù)定義為:void DeltaM(WORD InBueffr[],WORD OutBueffr[]),其中 InBuffer[]為編碼數(shù)據(jù)。1. DSP 響應(yīng)中斷進(jìn)行數(shù)據(jù)壓縮的中斷服務(wù)函數(shù)為 void Compress(),其核心代碼如下:Void ComPress(){WORD IN[4096],OUT[4096],temP。//4k 數(shù)據(jù)緩存Int i。for(i=0。i4096。i++)//讀取數(shù)據(jù){asm(“PORIR 8000h,@_temP”)。IN[i]=temP。DeltaM(NI,OUT)。//預(yù)測編碼for(i=0。i4096。i++)//寫數(shù)據(jù){temP=IN[i]:asm(“PORTW @_temP,0000h”)。}}2. 中斷向量表 文件核心代碼如下:.seet”.vectors”.ref_c_int00 //C 中斷入口點(diǎn).align 0x80 //與頁邊界對(duì)齊.global_ComPress //申明數(shù)據(jù)壓縮中斷響應(yīng)函數(shù)標(biāo)志RESET:BD_c_int00 //跳轉(zhuǎn) c 入口點(diǎn)STM200,SP //堆棧大小為 200into: BD_Compress //跳轉(zhuǎn)到中斷服務(wù)程序PSHM STOPSHM ST!3. 主函數(shù)代碼如下,是一個(gè)死循環(huán),系統(tǒng)在此等待數(shù)據(jù)壓縮中斷請(qǐng)求到來。main(){for(。 。)}4. 鏈接命令文件*.cmd 核心代碼如下:MEMORY{ VECS : o=800h,l=800h IRAM : o=1000h,l=0x0002efff SDRAM : o=80000000h,l=0x00efffff}SECTIONS{ .vectors: VECS .text : SDRAM .data : SDRAM .bss : SDRAM .cinit : SDRAM .far : SDRAM .stack : SDRAM .sysmem : SDRAM .const : SDRAM .cio : SDRAM .switch : SDRAM} 本系統(tǒng)采用的 CCS 環(huán)境和 IETCE 開發(fā)板CCS(CodeComPoserStudio)是 Tl 公司的 DSP 集成開發(fā)環(huán)境,它提供了環(huán)境配置、源文件編輯、程序調(diào)試、跟蹤和分析等工具,可以幫助用戶在一個(gè)軟件環(huán)境下完成編輯、編譯鏈接、調(diào)試和數(shù)據(jù)分析等工作。與 TI 提供的早期軟件開發(fā)工具相比,利用CCS 能夠加快軟件開發(fā)進(jìn)程,提高工作效率。CCS 一般工作在兩種模式下:軟件仿真器和與硬件開發(fā)板相結(jié)合的在線編程。前者可以脫離 DSP 芯片,在 PC 機(jī)上模擬 DSP 的指令集與工作機(jī)制,主要用于前期算法實(shí)現(xiàn)和調(diào)試。后者實(shí)時(shí)運(yùn)行在 DSP 芯片上,可以在線編制和調(diào)試應(yīng)用程序。IECTE 板是一塊需要外部提供+5V 直流電源的獨(dú)立的開發(fā)板,在板線性穩(wěn)壓器提供 直流的 DSP 內(nèi)核電壓, 直流數(shù)字和 SV 直流模擬電壓。它提供低功耗的、標(biāo)準(zhǔn)的、獨(dú)立的 C67X 系列開發(fā)平臺(tái),允許用戶為 C67X 系列 DSP 評(píng)估和開發(fā)應(yīng)用程序。IECTE 板上的核心當(dāng)然就是 1OOMHz 的 C6713,還有兩片 AD 模塊,它們占用了 DSP 的兩個(gè) McBSP,其中的一片是本文提到的,即用于采集外部音頻信號(hào)(使用 McBSP1),另一片則與標(biāo)準(zhǔn)電話線相接口(使用 McBSP0)。值得一提的是 IECTE 板的在板接口十分豐富,有 25 針并行接口,9 針串行接口,JTAG 仿真口,電話 DAA 接口,麥克風(fēng),揚(yáng)聲器接口,還有擴(kuò)展接口用于擴(kuò)展存儲(chǔ)器和外圍電路。這些接口極大地方便了 DSP 開發(fā)者的在板開發(fā)。本文所涉及的程序設(shè)計(jì)是通過 25 針的并行口將主機(jī)和 IETCE 板連接起來的。 軟件程序設(shè)計(jì)和運(yùn)行結(jié)果本設(shè)計(jì)完成的主要的功能是通過麥克風(fēng)接口進(jìn)行語音信號(hào)的采集并且實(shí)時(shí)的通過揚(yáng)聲器接口回放出來。為了要使用 CCS 在 IECTE 目標(biāo)板上運(yùn)行,除了要有源文件的主程序(.c )之外,還需要配置中斷向量表(.asm)和命令鏈接文件(.cmd),在一些特殊的場合還需要配置其他的文件。主程序當(dāng)然是整個(gè)程序的核心,它的作用涉及數(shù)據(jù)的讀/寫和具體的處理過程以及中斷的設(shè)置、寄存器的配置等;中斷向量表主要作用是告知程序中斷跳轉(zhuǎn)的位置,顯而易見,如果在主程序中已經(jīng)設(shè)置,則不再需要配置中斷向量表;命令鏈接文件(.cmd)的主要作用是分配存儲(chǔ)空間,比如存儲(chǔ)器的第 O 頁分配作程序空間,第 1 頁分配作數(shù)據(jù)空間,以及各個(gè)段將要放在哪兒(如,text 段放在數(shù)據(jù)空間),這個(gè)文件對(duì)每個(gè)工程來說都是必須的。主流程圖設(shè)計(jì)如圖 18 所示。開始結(jié)束初始化 C 6 7 1 3及串行口初始化A D 5 0 C開中斷并設(shè)置接收數(shù)據(jù)緩存軟件等待數(shù)據(jù)傳送完畢 ?進(jìn)一步的處理或送出是否圖 18 主程序設(shè)計(jì)流程從上面的程序流程中,我們可以看到,要完成預(yù)定的功能,首先要初始化 DSP 的串行口,接下來就是開辟緩存區(qū)以便將輸入的數(shù)據(jù)存儲(chǔ)起來等待進(jìn)一步處理如濾波、DA 轉(zhuǎn)換等。程序設(shè)計(jì)好之后,將其添加到一個(gè)新建的工程里編輯、調(diào)試,直到編譯、構(gòu)建通過 文件, 文件。這樣就可以運(yùn)行了。為了驗(yàn)證程序是否已正常運(yùn)行,可以在麥克風(fēng)/揚(yáng)聲器接口分別接上話筒和小音箱,在對(duì)著話筒說話時(shí),將可以從小音箱中聽到。同時(shí),也可以在 CCS 中打開觀察窗口、寄存器窗口以及圖形顯示窗口。下圖 19 為音頻輸入時(shí)某一時(shí)刻的圖形顯示和寄存器的值。圖 20 為 Matlab 環(huán)境下,5kHz 采樣即 FFT 長度為 8000 點(diǎn)加漢明窗顯示的一段語音的時(shí)域波形。圖 19 音頻輸入圖形顯示及寄存器值圖 20 語音的時(shí)域波形5 工作總結(jié)由于傳統(tǒng)數(shù)據(jù)采集方案在使用配置方面存在一些不足,本文提出基于 USB、DSP 的數(shù)據(jù)采集設(shè)計(jì)方案,以語音信號(hào)作為實(shí)驗(yàn)對(duì)象,結(jié)果初步實(shí)現(xiàn)了 A/D、D/A 轉(zhuǎn)換,完成了預(yù)定的任務(wù),為 USB 外設(shè)的設(shè)計(jì)積累了寶貴的經(jīng)驗(yàn)。目前,計(jì)算機(jī)與外設(shè)的通訊任務(wù)大多數(shù)是通過 RS232 接口或并口完成的,RS232 接口的數(shù)據(jù)傳輸率太低,而并口的數(shù)據(jù)線過多而且傳輸距離太短,若在設(shè)計(jì)中采用 USB 接口,將大大提高數(shù)據(jù)傳輸速度,簡化接口和電纜,克服以上兩種接口的不足。本文論述了一種基于 DSP 和 USB 的高速數(shù)據(jù)采集傳輸系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)方法,詳細(xì)介紹了系統(tǒng)的理論基礎(chǔ)和設(shè)計(jì)思想,系統(tǒng)各功能模塊的作用以及硬件和軟件的設(shè)計(jì)原理和方法。用 C6713 做核心處理器完成對(duì)模擬信號(hào)的高速采集,再通過 接口電路上傳到 PC 機(jī)中做進(jìn)一步的分析處理,達(dá)到高速數(shù)據(jù)采集和傳輸?shù)脑O(shè)計(jì)目的。經(jīng)實(shí)際應(yīng)用測試,該系統(tǒng)對(duì)一次采集數(shù)據(jù)量小于 1M 字節(jié),采集速率不大于 的圖像等高速數(shù)據(jù)采集傳輸系統(tǒng)可以穩(wěn)定的運(yùn)行,具有很好的實(shí)用性,達(dá)到了系統(tǒng)設(shè)計(jì)要求,具有一定的通用性。該系統(tǒng)支持即插即用,能滿足高采樣率較大數(shù)據(jù)量的要求,具有較強(qiáng)的靈活性,使用非常方便,具有較好的應(yīng)用前景?,F(xiàn)對(duì)本文的主要工作總結(jié)如下:1
點(diǎn)擊復(fù)制文檔內(nèi)容
語文相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1