基于軟核CPU技術的IP電話接口設計
工作過程如下:
當撥號確認后,主控制器對編解碼器發(fā)送控制指令,開始語音A/D轉換,并進行編碼,送到片外存儲器內進行緩存;Nios CPU對撥號信息的解析確定。目的地址,通過Avalon總線對以太網接口發(fā)送數據傳輸指令;將符合以太網標準的數據從片外存儲器內讀出,送入Internet中,返回確認信息。系統處理流程圖如圖7所示。本文引用地址:http://cafeforensic.com/article/158140.htm
4.2 I2C語音模塊
由于語音編解碼器的處理延時是影響VoIP話音質量的因素之一,為了保證語音編解碼的實時性,軟件系統在控制WM8731編解碼器的編解碼同時,加入了I2C語音模塊,以實現語音數據的實時處理。它采用自頂向下設計方法利用QuartusⅡ進行設計。
I2C是一種雙向制串行總線協議,只有總線處于“非忙”狀態(tài)時,數據傳輸才能被初始化。數據傳輸期間,只要時鐘線為高電平,數據線都必須保持穩(wěn)定,否則數據線上的任何變化都被當作“啟動”或“停止”信號。它實現數據的實時傳輸。
首先在QuartusⅡ環(huán)境內創(chuàng)建一個名為I2C的原理圖文件,然后建立包括各個模塊的頂層圖(使用Altera提供的LPM功能模塊或者建立自己的功能模塊),在頂層圖中將各個功能模塊進行連接,如圖8所示。
調試通過以后必須對其引腳進行手動設置,以便程序的下載,如圖9所示。
將Wolfson WM8731音頻編解碼器被配置為控制模式,可以自動產生AD/DA的連續(xù)比特時鐘和左/右聲道時鐘(CLOCK_500.v)。編解碼系統采樣頻率設定為48 kHz。
I2C.v程序流程見圖10。
在QuartusⅡ中對本模塊進行測試,輸入頻率50 MHz,波形結果如圖11所示。
AUD_ADCDAT與AUD_DACDAT分別為I2C總線的輸入輸出,由圖11中可見其延遲為9.033 ns,實現了語音數據的實時處理。
5 結 語
本文研究并設計了一個基于SIP的IP電話終端,其結構比較完整。同時對系統進行了分塊測試和環(huán)境測試,實現了語音數據的A/D、D/A實時轉換,進行了數據報的收發(fā)。同時,本文提出的SIP與PSTN的互聯模型,使用戶(尤其是長途電話用戶)不必擔心SIP IP終端與PSTN用戶的連接,可以在運營商的支持下自由地同其他用戶進行通信,而不用擔心產生高昂的通話費用。
Altera公司的軟件開發(fā)工具QuflrtusⅡ和NiosⅡ因其功能強大、可移植性強、可擴展性高,作為CPU開發(fā),給大系統的升級與擴展提供了簡便的操作界面與操作方法。
從長遠來看,在VoIP技術發(fā)展過程中僅實現語音傳輸功能是遠遠不夠的。但利用Altera公司的軟核CPU技術,若在本文研究的基礎上添加短信平臺、VGA接口等,則IP電話終端就不僅能實現語音通信,還能實現短消息傳輸、視頻通訊等,或者與一些數據平臺服務商聯合,為用戶提供數字點播等服務,以成為一個功能強大的多媒體通信終端。
評論