CVSD算法分析及其在FPGA中的實現
在設計上,不僅僅是采用FPGA實現和驗證自己的CVSD編譯碼算法,還和專用芯片CMX639進行互相通信進行驗證。CMX639是一款CVSD全雙工音頻調制芯片,集成了編碼和譯碼功能,實現了單芯片語音處理能力,外圍設備簡單,用戶可以根據實際情況,自主選擇采樣速率。
圖8是通過ChipScope Pro采集的實時正弦信號。從圖中可以看出量階△的大小能夠很好地反映輸入信號斜率的大小,輸出端輸出信號能夠很好地重現輸入信號,說明CVSD編譯碼方式是有效的。本文引用地址:http://www.104case.com/article/192064.htm
3.4 CVSD算法的實現
采用原理圖和VHDL語言相結合的方式在FPGA中實現了CVSD電路。具體實現步驟如下:
(1)根據算法框圖設計頂層原理圖CVSD.SCH;
(2)利用IP Core產生底層所需要的乘法器;
(3)利用VHDL語言完成CVSD編譯碼模塊;
(4)I/O管腳定義,約束條件編寫;
(5)設計綜合、編譯;
(6)bit文件生成、下載,通過ChipScope Pro進行仿真測試;
(7)根據仿真測試結果返回修改設計,直到設計成功;
(8)mcs文件生成、加載,最終驗證。
驗證是FPGA設計中很重要的一環,只有通過驗證才能說明設計的正確與否。采用XILINX公司的Spartan一3系列中的XC3S1500來具體實現CVSD的編譯碼功能。通過自己設計的編譯碼算法和CMX639專用芯片的編譯碼模塊互相通信,輸入實際語音信號測試,能夠很好地從D/A輸出語音信號,從CMX639譯碼輸出也能聽到語音信號,達到了滿意的效果。
4 結 語
本文提出的FPGA設計方法很好地實現了CVSD編譯碼功能,充分利用了FPGA的優勢,可以同時實現多路CVSD編譯碼功能,彌補了采用專用芯片實現CVSD編譯碼的不足,設計靈活、簡單,成本低,具有很好的應用前景。
評論