版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、<p> 《DSP技術與應用》課程設計報告</p><p> 選題名稱: 語音壓縮與回放 </p><p> 系(院): 計算機工程學院</p><p> 專 業(yè):計算機科學與技術(嵌入式系統(tǒng)軟件設計)</p><p> 班 級: 計算
2、機1073 </p><p> 姓 名: 學 號: </p><p> 指導教師: </p><p> 學年學期: 2009 ~ 2010 學年 第 2 學期</p><p>
3、2010年 6 月 11 日</p><p><b> 摘要:</b></p><p> 如何在實際系統(tǒng)中實現語音壓縮, 這是一個重要的研究領域。目前, PC上的實時語音壓縮技術已經較為成熟,而嵌入式系統(tǒng)領域的語音壓縮技術還有待發(fā)展和完善。由于大多數高質量、低碼 率的語音壓縮算法有較為復雜的數據運算, 所以傳統(tǒng)的單片機已經不能勝任, 必須采用
4、更高性能的處理器, 而專門為數字信號處理設計的數字信號處理器 (DSP)為語音壓縮的實現提供了一個很好的平臺。隨著超大規(guī)模集成電路 (VL S I)工藝的進步 ,高速數字信號處理器 (DSP)技術的飛速發(fā)展以及先進開發(fā)工具的完備 ,使得復雜的語音編解碼算法在以高性 能微處理器為核心的硬件系統(tǒng)上實時實現成為可 能 。本文介紹了一種基于目前性能價格比較高的16位定點 DSP芯片 TMS320VC54X的語音壓縮處理系統(tǒng) , 可以直接作為會議
5、電視 、PSTN 可視電話、IP 網絡多媒體通信、遠程醫(yī)療系統(tǒng)終端設備中聲音信源編碼解碼器系統(tǒng)。</p><p> 關鍵詞:語音壓縮;語音編碼;DSP</p><p><b> 目錄</b></p><p><b> 1課題綜述1</b></p><p> 1.1 課題來源1</p
6、><p> 1.2 預期目標1</p><p> 1.3 面對的問題1</p><p> 2 系統(tǒng)設計及分析2</p><p> 2.1 涉及的基礎知識2</p><p> 2.2 實驗方案4</p><p> 2.3 程序流程圖5</p><p>&
7、lt;b> 3 程序代碼6</b></p><p> 3.1 頭文件定義6</p><p><b> 3.2 主函數7</b></p><p> 3.3 a律壓縮子函數12</p><p> 3.4 a律解壓縮子函數13</p><p> 3.5 延時子函數
8、14</p><p> 3.6 5402.cmd文件14</p><p> 4 程序運行與調試17</p><p> 4.1 實驗結果17</p><p><b> 總 結19</b></p><p><b> 參考文獻20</b></p>
9、<p><b> 1課題綜述</b></p><p><b> 1.1 課題來源</b></p><p> 數字化語音存儲與回放系統(tǒng),以微處理芯片為核心,具有語音可控、 回放靈活、無磨損、可靠簡單等特點。因而在各類公共設施、智能儀表、家用電子產品等領域有著廣泛的應用。該系統(tǒng)目前有多種方案可以實現,其中采集成語音芯片是一種較簡單通
10、用的方案,但該方案智能性較差,如音量不能放大、錄音時間固定等。在通信應用領域中, 壓縮語音信號的傳輸帶寬或降低電話信道的傳輸碼率, 一直是設計人員追求的目標。語音編碼在實現這一目標的過程中擔當著重要的角色, 語音編碼是壓縮語音信號的數字表示, 而且是這些信號所需比特數最小的算法??梢哉f, 語音壓縮技術的發(fā)展和人類信息技術的發(fā)展息息相關。因此, 對語音壓縮技術的研究具有重要的現實意義。</p><p><b&
11、gt; 1.2 預期目標</b></p><p> (1)使用DSP實現語音壓縮和解壓縮的基本算法,算法類型自定,例如可以采用G.711、G.729等語音壓縮算法。</p><p> (2)采用A/D轉換器從MIC輸入口實時采集語音信號,進行壓縮后存儲到DSP的片內和片外RAM存儲器中,存儲時間不小于10秒。</p><p> ?。?)存儲器存滿之
12、后,使用DSP進行實時解壓縮,并從SPEAKER輸出口進行回放輸出。</p><p> ?。?)使用指示燈對語音存儲和回放過程進行指示。</p><p> 發(fā)揮部分:使用多種算法進行語音的壓縮、存儲和解壓縮,比較它們之間的優(yōu)缺點。</p><p><b> 1.3 面對的問題</b></p><p> 基于TMS3
13、20C54X為核心的語音壓縮與回放需要掌握和了解如下幾個知識:語音編碼原理、量化、DPCM&ADPCM、語音采集與輸出模塊、a律壓縮、A/D、D/A及存儲芯片的選擇、數據存儲器的選擇等等。</p><p><b> 2 系統(tǒng)設計及分析</b></p><p> 2.1 涉及的基礎知識</p><p> 2.1.1 語音編碼<
14、/p><p> 語音編碼一般分為兩類:一類是波形編碼,一類是被稱為“聲碼器技術”的編碼。</p><p> PCM編碼即脈沖編碼調制。</p><p> 波形編碼的最簡單形式就是脈沖編碼調制(Pulse code modulation),這種方式將語音變換成與其幅度成正比的二進制序列,而二進制數值往往采用脈沖表示,并用脈沖對采樣幅 度進行編碼,所以叫做脈沖編碼調制
15、。</p><p> 脈沖編碼調制沒有考慮語音的性質,所以信號沒有得到壓縮。</p><p><b> 2.1.2 量化</b></p><p> 脈沖編碼調制用同等的量化級數進行量化,即采用均勻量化,而均勻量化是基本的量化方 式。但是均勻量化有缺點,在信號動態(tài)范圍較大而方差較小的時候,其信噪比會下降 。 </p><
16、p> 國際上有兩種非均勻量化的方法:A律和u律,u律是最常用的一種。在美國,7位u律是長途電話質量的標準。 而我國采用的是A律壓縮,而且有標準的A律PCM編碼芯片。 </p><p> 2.1.3 DPCM&ADPCM</p><p> 降低傳輸比特率的方法之一是減少編碼的信息量,這要消除語音信號中的冗余度。相鄰的語音樣本之間存在明顯的相關性,因此對相鄰樣本間的差信號進
17、行編碼,便可使信息量得到壓縮。因為差分信號比原語音信號的動態(tài)范圍和平均能量都小。這種編碼叫Differential PCM,簡稱DPCM,即差分脈沖編碼調制。 </p><p> ADPCM即自適應差分脈沖編碼調制,是包括短時預測的編碼系統(tǒng)。CCITT(國際電報電話咨詢委員會)在1984年提出的32 kbit/s的編碼器建議就是采用ADPCM作為長途傳輸中的國際通用語音編碼方案。這種ADPCM編碼方案達到64
18、kbit/s PCM的語音傳輸質量,并具有很好的抗誤碼性能。</p><p> 2.1.4 a律壓縮</p><p> A律編碼(A-law )是ITU-T(國際電聯電信標準局)CCITT G.712定義的關于脈沖編碼的一種壓縮/解壓縮算法。 </p><p> 世界上大部分國家采用A律壓縮算法。美國采用mu律算法進行脈沖編碼。 </p><
19、;p> 令量化器過載電壓為1,相當于把輸入信號進行歸一化,那么A律對數壓縮定義為: </p><p> 當0 <= x <= 1/A時,f(x)=(Ax)/(1+lnA) </p><p> 當1/A <= x <= 1時,f(x)=(1+lnAx)/(1+lnA)</p><p> 在現行的國際標準中A=87.6,此時信號很小
20、時(即小信號時),從上式可以看到信號被放大了16倍,這相當于與無壓縮特性比較,對于小信號的情況,量化間隔比均勻量化時減小了16倍,因此,量化誤差大大降低;而對于大信號的情況例如x=1,量化間隔比均勻量化時增大了5.47倍,量化誤差增大了。這樣實際上就實現了“壓大補小”的效果。按上式得到的A律壓擴特性是連續(xù)曲線,A的取值不同其壓擴特性亦不相同,而在電路上實現這樣的函數規(guī)律是相當復雜的。為此,人們提出了數字壓擴技術,其基本思想是這樣的:利用
21、大量數字電路形成若干根折線,并用這些折線來近似對數的壓擴特性,從而達到壓擴的目的。下圖2-1為a律壓縮的示意圖</p><p> 圖2-1 a律壓縮示意圖</p><p> 從圖2-1中可以看到,先把軸的0~1分為8個不均勻段,其分法是:將0~1之間一分為二,其中點為1/2,取1/2~1之間作為第八段;剩余的0~1/2再一分為二,中點為1/4,取1/4~1/2之間作為第七段,再把剩余的
22、0~1/4一分為二,中點為1/8,取1/8~1/4之間作為第六段,依此分下去,直至剩余的最小一段為0~1/128作為第一段。而軸的0~1均勻地分為八段,它們與軸的八段一一對應。從第一段到第八段分別為,0~1/8,1/8~2/8,…,7/8~1。這樣,便可以作出由八段直線構成的一條折線。該折線與式(6-22)表示的壓縮特性近似。</p><p> 壓縮后的碼字組成:比特0-3表矢量化值,比特4-6表示段值,壓縮后
23、的碼字符號放在比特7,為了簡化未寫出。</p><p> 表2-1 a律壓縮表</p><p> 從A律到線性擴展的轉換如下表:</p><p> 表2-2 a律解壓縮轉換表</p><p><b> 2.2 實驗方案</b></p><p> 用板內的AD/DA轉換器AD50將由MIC
24、輸入的模擬信號轉換為16位數字信號送入DSP板中進行壓縮處理,壓縮處理后的數據經過解壓后再送至DA轉換器轉換為模擬信號,由SPEAKER口輸出,壓縮和解壓縮用A律格式,從而實現語音信號的采集壓縮與回放。</p><p> 圖2-2 總體框架圖</p><p><b> 2.3 程序流程圖</b></p><p> 基于TMS320C54X
25、的語音壓縮與回放程序流程圖如下所示。</p><p> 圖2-4 程序流程圖</p><p><b> 3 程序代碼</b></p><p> 我主要完成a律解壓縮的代碼編寫,因此對主程序和a律壓縮不做詳細的解釋。</p><p><b> 3.1 頭文件定義</b></p>
26、<p> /**************************************************************************/</p><p> #include <type.h></p><p> #include <board.h></p><p> #include <code
27、c.h></p><p> #include <mcbsp54.h></p><p> /**************************************************************************/</p><p> /* Function Prototypes
28、 */</p><p> /**************************************************************************/</p><p> void delay(s16 period);</p><p> unsigned char d
29、ata2alaw(int pcm_val);</p><p> int alaw2data(unsigned chara_val);
30、 </p><p> /***********
31、***************************************************************/</p><p> /* Global Variables */</p><p> /******************************
32、********************************************/</p><p> HANDLE hHandset; /*句柄變量*/</p><p><b> int data;</b></p><p> int data1;</p><p> long i,
33、j=0;</p><p> long k,l=0;</p><p> unsigned int temp1;</p><p> unsigned char temp2;</p><p> unsigned int m;</p><p> unsigned int buffer[36000];</p>
34、;<p><b> 3.2 主函數</b></p><p> /**************************************************************************/</p><p> /* MAIN
35、 */</p><p> /**************************************************************************/</p><p> void main()</p><p><b> {</b></p><p> if
36、(brd_init(100))//初始化DSK板,失敗退出</p><p><b> return;</b></p><p> /* blink the leds a couple times */</p><p> for(m=6;m>0;m--)</p><p><b> {&
37、lt;/b></p><p> brd_led_toggle(BRD_LED0);</p><p> /* brd_delay_msec(1000); */</p><p> delay(1000);</p><p> brd_led_toggle(BRD_LED1);</p><p> /* brd_
38、delay_msec(1000); */</p><p> delay(1000);</p><p> brd_led_toggle(BRD_LED2);</p><p> /* brd_delay_msec(1000); */</p><p> delay(1000);</p><p><b>
39、}</b></p><p> /* Open Handset Codec */</p><p> hHandset = codec_open(HANDSET_CODEC); /* Acquire handle to codec */</p><p> /* Set codec parameters */</p><
40、;p> codec_dac_mode(hHandset, CODEC_DAC_15BIT); /* DAC in 15-bit mode */</p><p> codec_adc_mode(hHandset, CODEC_ADC_15BIT); /* ADC in 15-bit mode */</p><p> codec_ain_gain(hHa
41、ndset, CODEC_AIN_6dB); </p><p> /* 6dB gain on analog input to ADC */</p><p> codec_aout_gain(hHandset, CODEC_AOUT_MINUS_12dB); </p><p> /* -12dB gain on analog output from D
42、AC */</p><p> codec_sample_rate(hHandset,SR_16000); /* 16KHz sampling rate */</p><p> /* Polling and digital loopback */</p><p><b> while (1)</b></p&
43、gt;<p><b> {</b></p><p> brd_led_disable(BRD_LED1);//關閉led1</p><p> brd_led_disable(BRD_LED2);//關閉led2</p><p> brd_led_toggle(BRD_LED0);//開啟led0</p>&l
44、t;p> /* Wait for sample from handset */</p><p> while (!MCBSP_RRDY(HANDSET_CODEC)) </p><p> { data = *(volatile u16*)DRR1_ADDR(HANDSET_CODEC);}; //采集語音信號 </p><p> temp1=data
45、2alaw(data); //temp1=data2ulaw(data); </p><p> //保存壓縮后的數據 把低地址數據放在高八位 高地址數據放在第八位 </p><p> i=i+1; </p><p> if(i%2==1)</p><p&
46、gt;<b> {</b></p><p> buffer[j]=(temp1<<=8); /*奇數數據左移8位 temp1=abcdefgh00000000</p><p> buffer[j]=temp1*/ </p><p><b> }</b></p><p&g
47、t;<b> else</b></p><p><b> {</b></p><p> buffer[j]=(buffer[j]|temp1);/*偶數數據與temp1取或 組成新的數據</p><p> buffer[j]=abcdefghiabcdefghi*/ </p><p>
48、j++; //j加1</p><p> } </p><p> if(i>=72000) </p><p><b> {</b></p><p><b> i=0;</b></p><p><b
49、> } </b></p><p> if(j>=36000)</p><p><b> {</b></p><p><b> j=0;</b></p><p> brd_led_disable(BRD_LED0); //放音</p><
50、p> brd_led_disable(BRD_LED2);</p><p> brd_led_toggle(BRD_LED1); </p><p> for(k=0;k<72000;k++)</p><p><b> {</b></p><p> if(k%2==0)</p
51、><p> temp2=(buffer[l]>>8)&0x0ff;</p><p><b> else</b></p><p><b> {</b></p><p> temp2=buffer[l]&0x0ff;</p><p><b&g
52、t; l++;</b></p><p><b> }</b></p><p> if(l>=36000)</p><p><b> l=0;</b></p><p> data1=alaw2data(temp2); </p><p> whil
53、e (!MCBSP_XRDY(HANDSET_CODEC)) {}; </p><p> *(volatile u16*)DXR1_ADDR(HANDSET_CODEC) = data1*4;</p><p> } </p><p> brd_led_disable(BRD_LED0);</p><p> br
54、d_led_disable(BRD_LED1);</p><p> brd_led_toggle(BRD_LED2); //放音結束</p><p> for (m=0;m<3;m++) delay(1000); </p><p> for (m=0;m<36000;m++) buffer[m]=0;</p><
55、;p><b> }</b></p><p><b> } </b></p><p> } </p><p><b> 1)初始化DSK:</b></p><p> if (brd
56、_init(100))</p><p><b> return;</b></p><p> 2)初始化A/D50C程序:</p><p> /*獲取設置DAC的句柄 */</p><p> hHandset = codec_open(HANDSET_CODEC); // Acquire handle to
57、 codec /*設置DAC的工作參數*/</p><p> codec_dac_mode(hHandset, CODEC_DAC_15BIT); // DAC in 15-bit mode </p><p> codec_adc_mode(hHandset, CODEC_ADC_15BIT); // ADC in 15-bit mode </p><p
58、> codec_ain_gain(hHandset, CODEC_AIN_12dB); // 6dB gain on analog input to ADC </p><p> codec_aout_gain(hHandset, CODEC_AOUT_MINUS_6dB); </p><p> // -6dB gain on analog output from DAC
59、 </p><p> codec_sample_rate(hHandset,SR_16000); // 16KHz sampling rate </p><p><b> }</b></p><p><b> 3)閃燈程序:</b></p><p> for(m=
60、6;m>0;m--)</p><p><b> {</b></p><p> brd_led_toggle(BRD_LED0);</p><p> /* brd_delay_msec(1000); */</p><p> delay(1000);</p><p> brd_
61、led_toggle(BRD_LED1);</p><p> /* brd_delay_msec(1000); */</p><p> delay(1000);</p><p> brd_led_toggle(BRD_LED2);</p><p> /* brd_delay_msec(1000); */</p><
62、p> delay(1000);</p><p><b> }</b></p><p> 4)語音信號采集與回放程序</p><p> //判斷MCBSP是否做好接收準備</p><p> while (!MCBSP_RRDY(HANDSET_CODEC) ) {}; </p><p&
63、gt; //從A/D讀取轉換數據</p><p> data = *(volatile u16*)DRR1_ADDR(HANDSET_CODEC);</p><p> temp1=data2alaw(data); //temp1=data2ulaw(data);</p><p> // 將數據寫入D/A轉換器</p><p>
64、; data1=alaw2data(temp2); </p><p> while (!MCBSP_XRDY(HANDSET_CODEC)) {}; </p><p> *(volatile u16*)DXR1_ADDR(HANDSET_CODEC) = data1*4;</p><p> 5) 數據存儲與處理</p><p>
65、 i=i+1; </p><p> if(i%2==1)</p><p><b> { </b></p><p> buffer[j]=(temp1<<=8); /*奇數數據左移8位 temp1=abcdefgh00000000</p><p> buffer[j]=temp
66、1*/ </p><p><b> }</b></p><p><b> else</b></p><p><b> {</b></p><p> buffer[j]=(buffer[j]|temp1);/*偶數數據與temp1取或 組成新的數據</p&
67、gt;<p> buffer[j]=abcdefghiabcdefghi*/ </p><p> j++; //j加1</p><p><b> } </b></p><p> I if(k%2==0)</p><p> temp2=(b
68、uffer[l]>>8)&0x0ff;</p><p><b> else</b></p><p><b> {</b></p><p> temp2=buffer[l]&0x0ff;</p><p><b> l++;</b></p&
69、gt;<p><b> }</b></p><p> 3.3 a律壓縮子函數</p><p> /*************************************************************************/</p><p> /*a率壓縮
70、 */</p><p> /*************************************************************************/</p><p> unsigned char data2alaw(int data) </p><p&g
71、t;<b> {</b></p><p> unsigned char i,sign,achord,astep; </p><p> unsigned int output,absol,temp; </p><p> temp=absol=abs(data); </p><p> sign
72、=(data>=0)?1:0; //判定符號:正數 =1,負數 =0</p><p> for (i=0;i<16;i++) //確定temp中出現1的最高位</p><p><b> { </b></p><p> output=temp&0x8000; </p><p>
73、 if(output) break; //temp 左移i位后最高位為1</p><p><b> temp<<=1;</b></p><p><b> } </b></p><p> achord=11-i; //段值 </p><p> if (achor
74、d<=0) </p><p><b> {</b></p><p><b> achord=0;</b></p><p> astep=(absol>>1)&0x0F;//段值為0,將absol左移1位得到量化值</p><p><b>
75、}</b></p><p><b> else</b></p><p> astep=(absol>>achord)&0x0F; //段值不為0,將absol左移</p><p> achord<<=4; //achord位得量化值</p>
76、;<p> output=achord+astep; //輸出值的絕對值</p><p> if(absol>4095) </p><p> //超過最大值4095,輸出最大值0x7f</p><p> output=0x7F;</p><p><b> if(sign) </b>&l
77、t;/p><p> return output^=0xFF; //返回含有符號信息的輸出值</p><p><b> else </b></p><p> return output^=0x7F;</p><p><b> }</b></p><p> 3.4 a律解壓
78、縮子函數</p><p> /**************************************************************************/</p><p> /*a率解壓 */</p><p&g
79、t; /**************************************************************************/ </p><p> int alaw2data(unsigned char input) </p><p><b> { </b></p><p> unsigned cha
80、r sign,achord,astep;</p><p> unsigned int temp;</p><p><b> int data;</b></p><p> temp = input^0xFF; //得到含有符號信息的壓縮值</p><p> sign = (temp&0x80)&
81、gt;>7; //符號位</p><p> achord = (temp&0x70)>>4; //段值</p><p> astep = temp&0x0F; //量化值</p><p> astep <<= 1;</p><p> if(!achord) //段值
82、為0,輸出值為量化值左移1位后加1</p><p> data=astep+1;</p><p><b> else </b></p><p><b> {</b></p><p> data=astep+33; //擴展后數值中的6位非零值</p><
83、;p> data<<=achord-1;</p><p><b> }</b></p><p><b> if(sign)</b></p><p> return -data; //有符號的擴展值 </p><p><b> else<
84、;/b></p><p> return data;</p><p><b> }</b></p><p><b> 3.5 延時子函數</b></p><p><b> //延時</b></p><p> void delay(int
85、period)</p><p><b> {</b></p><p><b> int i, j;</b></p><p> for(i=0; i<period; i++)</p><p><b> {</b></p><p> for(
86、j=0; j<period>>1; j++);</p><p><b> }</b></p><p><b> }</b></p><p> 3.6 5402.cmd文件</p><p> 實驗中還需要添加5402.cmd文件,5402.cmd文件及其解釋:</p&g
87、t;<p><b> MEMORY</b></p><p><b> {</b></p><p> PAGE 0: VECS: origin = 0080h, length = 0080h /*內部程序RAM */</p><p> PRAM: origin = 0100h, len
88、gth = 0FFFh /* 內部程序 RAM */</p><p> PAGE 1: SCRATCH: origin = 1000h, length = 0020h /* Scratch Pad Data RAM */</p><p> DMARAM: origin = 1020h, length = 0300h /* DMA緩存*/</p><p&g
89、t; DATA: origin = 1320h, length = 0080h /*內部數據RAM */</p><p> STACK: origin = 1400h, length = 0500h /* 堆棧內存空間 */</p><p> INRAM: origin = 1900h, length = 0100h /*內部數據 RAM */</p&
90、gt;<p> HPRAM0: origin = 1A00h, length = 0002h /* HPI */</p><p> HPRAM1: origin = 1A02h, length = 0280h /* HPI */</p><p> HPRAM2: origin = 1C82h, length = 0280h /* HPI */</
91、p><p> EXRAM: origin = 1F10h, length = 0EA00h /* 外部內存*/</p><p><b> }</b></p><p><b> SECTIONS</b></p><p><b> {</b></p>&l
92、t;p> .cinit > PRAM PAGE 0</p><p> .text > PRAM PAGE 0</p><p> .vectors > VECS PAGE 0</p><p> init_var > PRAM PAGE 0</p><p> detect &
93、gt; PRAM PAGE 0</p><p> vrcprg > PRAM PAGE 0</p><p> matprg > PRAM PAGE 0</p><p> .stack > STACK PAGE 1</p><p> .trap > SCRATCH PAGE 1</p
94、><p> .const > EXRAM PAGE 1</p><p> .data > EXRAM PAGE 1</p><p> .bss > EXRAM PAGE 1</p><p> .cio > EXRAM PAGE 1</p><p> .sw
95、itch > EXRAM PAGE 1</p><p> tables > EXRAM PAGE 1</p><p> var > EXRAM PAGE 1</p><p> svctab > EXRAM PAGE 1 /* SS_V LSP table */</p><p
96、> vctab > EXRAM PAGE 1 /* V LSP table */</p><p> uvctab > EXRAM PAGE 1 /* UV LSP table */</p><p> cuvtab > EXRAM PAGE 1 /* Stochastic codebook */
97、</p><p> cdbktab > EXRAM PAGE 1 /* various codebook tables*/</p><p> logtab > EXRAM PAGE 1 /* table for log2 */</p><p> powtab > EXRAM PAGE 1
98、 /* table for pow2 */</p><p> hamtab > EXRAM PAGE 1 /* table for hamming */</p><p> lgwtab > EXRAM PAGE 1 /* table for lag window */</p><p> a
99、costab > EXRAM PAGE 1 /* table for arccos */</p><p> sqrtab > EXRAM PAGE 1 /* table for square root */</p><p> acbtab > EXRAM PAGE 1 /* table for th
100、resholds in acb */</p><p> pm03tab > EXRAM PAGE 1 /* table for x^(-0.3) computation */</p><p> costab > EXRAM PAGE 1 /* table for cosine */</p><p> V
101、23 > INRAM PAGE 1</p><p> FSK > INRAM PAGE 1</p><p> hpibuff0 > HPRAM0 PAGE 1</p><p> hpibuff1 > HPRAM1 PAGE 1</p><p> hpibuff2 > HPRA
102、M2 PAGE 1</p><p> dma_buff > DMARAM PAGE 1</p><p><b> } </b></p><p><b> 4 程序運行與調試</b></p><p><b> 4.1 實驗結果</b></p><
103、;p> 圖4-1 輸入波形(data)</p><p> 圖4-2 壓縮后波形(temp1)</p><p> 圖4-3 解壓后輸出波形(data1)</p><p> 圖4-4 watch window中的值</p><p><b> 總 結</b></p><p> 在這一周
104、中,我學到了很多,對DSP這門課的認識也進一步加深了。從一個剛入門的學習者,漸漸的愛上了這門技術,雖然說對于DSP技術方面的知識還有很多要學習和提高,但是在這一周中我還是感受到這門課程的魅力所在。經過一周的努力,順利的完成了DSP課程設計。這是一個磨練意志的過程。從課題的選擇開始,到硬件和軟件系統(tǒng)的設計,這其中經歷了很多困難,但是更重要的是在這個過程中我得到了很大的鍛煉。在用Protel 99 SE軟件畫電路圖,這個過程中讓我掌握了計算
105、機輔助的設計技術。當然,這是一個需要不斷的嘗試,不斷的校核,不斷的修改,最后完成一個合理的設計的過程。需要的是細心和耐心。在很大程度上培養(yǎng)了我拼搏的工作精神。使我受益匪淺,更加明確了自己專業(yè)的方向。這一周的時間是短暫的,但這我想我們學到的應該不僅僅是專業(yè)技術等表面上的東西,更深一層的是對人生的感悟,對未來的想法,年輕人的桀驁不馴在此時已經不在有意義,取而代之的是理性的思維。我們應該具備什么樣的能力,我們適合什么樣的人生,我們應該在怎樣的
106、崗位上實現自己的人生價值,我們又應該怎么做才能對得起父母,對得起自己,對得起朋友,對得起辛勤培育我們的老師??傊?lt;/p><p><b> 參考文獻</b></p><p> 1 張雄偉 ,曹鐵勇. DSP芯片的原理與開發(fā)應用.北京:電子工業(yè)出版社,2003</p><p> 2 易克初 ,田斌 ,付強.語音信號處理.北京:國防工業(yè)出版社
107、,2000</p><p> 3 吳樂南 ,徐孟俠.數據壓縮.北京:電子工業(yè)出版社,2000</p><p> 4 陳顯冶.現代通信技術.北京:電子工業(yè)出版社,2000</p><p> 5 李穎,李文海.現代通信技術.北京:人民郵電出版社,2002</p><p> 6 趙勇,甘泉.DSP應用系統(tǒng)設計.北京:電子工業(yè)出版社,2002
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- dsp課程設計報告----語音壓縮、存儲與回放
- 數字信號處理(dsp)課程設計報告
- dsp數字信號處理課程設計報告8
- dsp數字信號處理課程設計報告-- 步進電機
- dsp數字信號處理課程設計報告-- ad接口設計
- 數字信號課程設計--語音數字信號處理與分析及matlab實現
- dsp課程設計-語音采集壓縮存儲與回放
- dsp語音錄放課程設計--數字信號處理的最小系統(tǒng)
- 數字信號處理課程設計--語音信號的處理與濾波
- 數字信號課程設計--數字信號處理
- 數字信號處理課程設計報告
- 數字信號處理課程設計報告
- 數字信號處理課程設計---語音信號的處理與濾波
- 數字信號處理課程設計---語音信號的處理與濾波
- 數字信號處理課程設計--語音信號的處理與濾波
- dsp課程設計---語音的壓縮、存儲和回放
- 數字信號處理課程設計報告
- 數字信號課程設計---語音信號的處理與濾波
- 基于dsp_builder數字信號處理課程設計
- 數字信號課程設計語音信號的采集、分析與處理
評論
0/150
提交評論