專利名稱:Adpcm數字編碼轉換器的制作方法
技術領域:
本實用新型涉及一種ADPCM數字編碼轉換器,具體地說,涉及電信業(yè)務中針對E1鏈路的PCM編碼與IMA-ADPCM編碼間的轉換器。
背景技術:
IMA-ADPCM(Interactive Multimedia Association-Adaptive DifferentialPulse Code Modulation,交互多媒體協(xié)會-自適應差值脈沖編碼調制)是一種針對16比特(或者更高)聲音波形數據的一種有損壓縮算法,它將聲音流中每次采樣的16比特(bit)數據以4比特存儲。由于IMA-ADPCM編碼技術具有壓縮比高、失真較小、算法較簡單的特點,所以被越來越多地應用到包括計算機軟件、電信業(yè)務中。比如在WINDOWS操作系統(tǒng)中就直接支持32Kbps的IMA-ADPCM的編解碼功能。
在大部分的電信業(yè)務中仍然采用的是基于A率編碼的64k PCM信號,這樣在傳輸話音編碼信號時相對IMA-ADPCM編碼,會浪費一半的線路帶寬。目前,解決帶寬浪費的問題通常方法是使用專用的編解碼芯片,但是這樣產生的問題是,首先在電信業(yè)務中基于一條標準的2M傳輸通道,G.703標準E1接口的PCM信號最多會有31路語音鏈路,如果使用單路的IMA-ADPCM編解碼芯片最多需要31塊。其次在很多電信業(yè)務中往往是語音信號和數據信號時分復用在E1鏈路中進行傳輸的,而且很可能某個64KPCM通道在一段時間中傳輸的是語音信號,在另一段時間中傳輸的是數據信號,而數據信號是不能被壓縮的。這樣就使得使用專用芯片進行編解碼的處理具有很大的局限性。
新型內容本實用新型的目的在于,提供一種ADPCM數字編碼轉換器,克服目前電信業(yè)務中采用基于A率編碼的64kPCM信號,在傳輸話音編碼信號時浪費一半的線路帶寬的技術問題。
為了達到上述目的,本實用新型的技術方案如下一種ADPCM數字編碼轉換器,包括PCM端E1接口及第一成幀器芯片,提供標準的31路PCM編碼的2M鏈路;ADPCM端E1接口及第二成幀器芯片,提供標準的31路IMA-ADPCM編碼的2M鏈路;CPU處理器;以及FPGA(Field Programmable Gate Array現(xiàn)場可編程邏輯陣列),通過2M數據總線連接第一成幀器芯片、第二成幀器芯片;該FPGA包括時鐘信號接收端,與第一成幀器芯片、第二成幀器芯片連接,接收第一和第二成幀器芯片送到FPGA的時鐘信號;幀頭信號接收端,與第一成幀器芯片、第二成幀器芯片連接,接收第一和第二成幀器芯片送到FPGA的幀頭信號;PCM輸入端口,連接第一成幀器芯片,接收第一成幀器芯片輸出的PCM信號;PCM輸出端口,連接第一成幀器芯片,發(fā)送處理后的PCM信號到第一成幀器芯片;ADPCM輸入端口,連接第二成幀器芯片,接收第二成幀器芯片輸出的ADPCM信號;ADPCM輸出端口,連接第二成幀器芯片,發(fā)送處理后的ADPCM信號到第二成幀器芯片;地址端,通過CPU地址線連接CPU處理器;使能信號端,通過CPU使能信號線連接CPU處理器;數據端,通過CPU數據總線連接CPU處理器。
第一成幀器芯片提供標準的31路PCM編碼的2M鏈路,第二成幀器芯片提供標準的31路IMA-ADPCM編碼的2M鏈路,這樣經過該轉換器的處理我們就可以將原來需要占用31個64K時隙的PCM鏈路壓縮到15.5個64K時隙中,另外有15.5個64K時隙可以用來傳輸其他數據或者另外的IMA-ADPCM鏈路。CPU用來對FPGA內部RAM(random access memory隨機存儲器)區(qū)進行配置,以確定兩條E1鏈路中各個時隙的對應關系。FPGA是轉換器的核心模塊,完成PCM與IMA-ADPCM間編碼的轉換。本轉換器采用分時復用和硬件并行處理技術,僅采用較低的異步工作時鐘(10M-12M),處理31路64K的PCM信號,實現(xiàn)IMA-ADPCM數字編碼和G.703標準E1接口的PCM數字編碼之間的轉換。其主要功能是由FPGA完成,并且可以靈活地控制每個時隙通道是否進行編解碼操作。
所述第一和第二成幀器芯片送到FPGA的幀頭信號相同。
所述FPGA包括ADPCM時隙發(fā)送模塊、PCM時隙接收模塊、核心處理模塊、ADPCM時隙接收模塊和PCM時隙發(fā)送模塊;幀頭信號接收端分別連接上述五個模塊;時鐘信號接收端分別連接ADPCM時隙發(fā)送模塊、PCM時隙接收模塊、ADPCM時隙接收模塊和PCM時隙發(fā)送模塊;PCM時隙接收模塊連接PCM輸入端口;核心處理模塊連接地址端、使能信號端和數據端;ADPCM時隙接收模塊連接ADPCM輸入端口;核心處理模塊的輸入端分別連接PCM時隙接收模塊和ADPCM時隙接收模塊,輸出端分別連接ADPCM時隙發(fā)送模塊和PCM時隙發(fā)送模塊。核心處理模塊與其他四個模塊之間通過中斷進行數據交換,這樣可以使核心處理模塊的處理更加簡單,并且可以進行方便的RAM復用,減少對FPGA資源的占用。
所述ADPCM時隙發(fā)送模塊通過第一加法器連接ADPCM輸出端口;該加法器的一輸入端連接幀頭信號接收端,將待發(fā)送的ADPCM數據進行并/串轉換。
所述PCM時隙發(fā)送模塊通過第二加法器連接PCM輸出端口;該加法器的一輸入端連接幀頭信號接收端,將待發(fā)送的PCM數據進行并/串轉換。
所述核心處理模塊具有時鐘端口,與工作時鐘相連。
所述核心處理模塊包括A率反變換模塊、運算模塊、A率變換模塊、配置模塊和編解碼模塊;所述編解碼模塊分別連接A率反變換模塊、運算模塊、A率變換模塊和配置模塊。
圖1是本實用新型的ADPCM數字編碼轉換器原理框圖;圖2是本實用新型的ADPCM數字編碼轉換器的FPGA內部電路原理圖;圖3是本實用新型ADPCM數字編碼轉換器核心處理模塊的電路原理圖。
具體實施方式
為了便于更好地理解本實用新型的結構和功能,下面結合圖1至圖3進行詳細說明。
本實用新型的ADPCM數字編碼轉換器采用時分復用和硬件并行處理技術,僅采用較低的異步工作時鐘(10M-12M),處理31路64K的PCM信號,實現(xiàn)IMA-ADPCM編解碼。由于主要的處理模塊采用了FPGA實現(xiàn),可以靈活的控制每個時隙通道是否進行編解碼操作。
本實用新型的ADPCM數字編碼轉換器原理框圖如圖1所示,主要包括PCM端E1接口及成幀器芯片CHIP1、ADPCM端E1接口及成幀器芯片CHIP2、一FPGA和一塊CPU。
FPGA的幀頭信號接收端FL通過2M數據線分別連接CHIP1的CHIP11端口和CHIP2的CHIP21端口,接收CHIP1和CHIP2送到FPGA的幀頭信號。FPGA的時鐘信號接收端CLK通過2M數據線分別連接CHIP1的CHIP12端口和CHIP2的CHIP22端口,接收CHIP1和CHIP2送到FPGA的2M時鐘信號。FPGA的PCMI端口通過2M數據線連接CHIP1的CHIP13端口,接收CHIP1輸出的PCM信號。FPGA的ADPCMI端口通過2M數據線連接CHIP2的CHIP23端口,接收CHIP2輸出的ADPCM信號。FPGA的PCMO端口通過2M數據線連接CHIP1的CHIP14端口,發(fā)送PCM信號到CHIP1。FPGA的ADPCMO端口通過2M數據線連接CHIP2的CHIP24端口,發(fā)送ADPCM信號到CHIP2。FPGA的地址端AD通過CPU地址線與CPU的CPU1端口相連。FPGA的使能信號端SI通過CPU使能信號線與CPU2端口相連。FPGA的數據端DA通過CPU數據總線與CPU3端口相連。
CHIP1提供標準的31路PCM編碼的2M鏈路,CHIP2提供標準的31路IMA-ADPCM編碼的2M鏈路,這樣經過該轉換器的處理我們就可以將原來需要占用31個64K時隙的PCM鏈路壓縮到15.5個64K時隙中,另外有15.5個64K時隙可以用來傳輸其他數據或者另外的IMA-ADPCM鏈路。CPU用來對FPGA內部RAM區(qū)進行配置,以確定兩條E1鏈路中各個時隙的對應關系。FPGA是轉換器的核心模塊,完成PCM與IMA-ADPCM間編碼的轉換。
前面提到標準的IMA-ADPCM的算法是用來處理16bit的聲音波形數據的,而PCM信號經過A率反變換得到的是13bit的聲音波形數據,這樣就需要對IMA-ADPCM算法加以修改,使之能夠處理13bit的聲音波形數據,同時還要保證與標準算法的兼容性。
由于在本轉換器中的核心模塊為FPGA,E1接口及成幀器芯片CHIP1、CHIP2及CPU的提供的功能比較單一,所以在這里就FPGA內部的設計實現(xiàn)做詳細的說明。FPGA內部電路原理圖如圖2。
如圖2所示,F(xiàn)PGA包括ADPCM時隙發(fā)送模塊1、PCM時隙接收模塊2、核心處理模塊3、ADPCM時隙接收模塊4和PCM時隙發(fā)送模塊5。
時鐘信號接收端CLK分別連接ADPCM時隙發(fā)送模塊1的時鐘信號接收端11、PCM時隙接收模塊2的時鐘信號接收端21、ADPCM時隙接收模塊4的時鐘信號接收端41和PCM時隙發(fā)送模塊5的時鐘信號接收端51,從E1接口及成幀器芯片中接收2M時鐘信號,傳送到FPGA中。
幀頭信號接收端FL分別連接ADPCM時隙發(fā)送模塊1的幀頭信號接收端11、PCM時隙接收模塊2的幀頭信號接收端21、核心處理模塊3的幀頭信號接收端32、ADPCM時隙接收模塊4的幀頭信號接收端41和PCM時隙發(fā)送模塊5的幀頭信號接收端51,從E1接口及成幀器芯片中接收幀頭信號,傳送到FPGA中。兩塊E1接口及成幀器芯片的幀頭信號相同。
加法器A1的一個輸入端口A11連接ADPCM時隙發(fā)送模塊1的數據輸出端14,另一個輸入端口A12連接幀頭信號接收端FL。加法器A1將處理后的ADPCM數據和幀頭信號疊加后傳到端口ADPCMO,再發(fā)送到E1鏈路中各個時隙中,輸出給E1接口及成幀芯片。
加法器A2的一個輸入端口A21連接PCM時隙發(fā)送模塊的數據輸出端54,另一個輸入端口A22連接幀頭信號接收端FL。加法器A2將處理后的PCM數據和幀頭信號疊加后傳到端口PCMO,再發(fā)送到E1鏈路中各個時隙中,輸出給E1接口及成幀芯片。
核心處理模塊3的數據輸出端口38與ADPCM時隙發(fā)送模塊1的數據輸入端口13相連,數據輸出端口37與PCM時隙發(fā)送模塊5的數據輸入端口53相連。
PCM時隙接收模塊2的PCM信號接收端23與端口PCMI相連,數據輸出端口24與核心處理模塊3的數據輸入端口31相連。ADPCM時隙接收模塊4的ADPCM信號接收端43與端口ADPCMI相連,數據輸出端口44與核心處理模塊3的數據輸入端口33相連。核心處理模塊3還具有時鐘端口39,與端口CLK相連,F(xiàn)PGA采用10M時鐘作為工作時鐘。端口34與端口AD相連,端口35與端口SI相連,端口36與端口DA相連。
核心處理模塊3與其他四個模塊之間通過中斷進行數據交換,這樣可以使核心處理模塊3的處理更加簡單,并且可以進行方便的RAM復用,減少對FPGA資源的占用。PCM時隙接收模塊2完成從E1鏈路中各個時隙中接收PCM數據,并進行串/并,送核心處理模塊處理。PCM時隙發(fā)送模塊1完成將待發(fā)送的PCM數據進行并/串轉換,送到E1鏈路中各個時隙中,輸出給E1接口及成幀芯片CHIP1。ADPCM時隙接收模塊4完成從E1鏈路中各個時隙中接收ADPCM數據,并進行串/并,送核心處理模塊3處理。ADPCM時隙發(fā)送模塊1完成將待發(fā)送的ADPCM數據進行并/串轉換,送到E1鏈路中各個時隙中,輸出給E1接口及成幀芯片CHIP2。
核心處理模塊3的電路原理圖如圖3所示。參閱圖3,核心處理模塊3包括A率反變換模塊、編解碼模塊、運算模塊、A率變換模塊和TRABLE_ROM模塊。數據輸入端口31連接A率反變換模塊。幀頭信號接收端32、數據輸入端口33、數據輸出端口38和時鐘端口39連接編解碼模塊。A率變換模塊連接數據輸出端口37。TRABLE_ROM模塊連接端口34、35、36。編解碼模塊分別連接A率反變換模塊、運算模塊、A率變換模塊和配置模塊(TRABLE_ROM模塊)。
A率反變換模塊完成PCM數據的A率反變換,得到13bit的原始采樣值SIM_IN。編解碼模塊用來完成ADPCM的編解碼工作,并且根據TRABLE_ROM模塊中的配置數據完成對各個通道數據的存取操作。運算模塊完成帶符號運算的加減法操作,為編解碼模塊提供運算平臺。TRABLE_ROM模塊在FPGA內部實現(xiàn)一塊RAM空間,并可以由CPU配置,以確定兩條E1鏈路中各個時隙的對應關系。A率變換模塊將完成原始采樣值SIM_OUT進行A率變換后,傳送到數據輸出端口37。
雖然本實用新型的實施例已經舉例說明并被顯示和描述,但應當理解,熟知本領域的人員對本實用新型做出的各種修改或者替代,都不脫離本實用新型的保護范圍。
權利要求1.一種ADPCM數字編碼轉換器,其特征在于,包括PCM端E1接口及第一成幀器芯片,提供標準的31路PCM編碼的2M鏈路;IMA-ADPCM端E1接口及第二成幀器芯片,提供標準的31路IMA-ADPCM編碼的2M鏈路;CPU處理器;以及FPGA,通過2M數據總線連接第一成幀器芯片、第二成幀器芯片;該FPGA包括時鐘信號接收端,與第一成幀器芯片、第二成幀器芯片連接,接收第一成幀器芯片和第二成幀器芯片送到FPGA的時鐘信號;幀頭信號接收端,與第一成幀器芯片、第二成幀器芯片連接,接收第一成幀器芯片和第二成幀器芯片送到FPGA的幀頭信號;PCM輸入端口,連接第一成幀器芯片,接收第一成幀器芯片輸出的PCM信號;PCM輸出端口,連接第一成幀器芯片,發(fā)送處理后的PCM信號到第一成幀器芯片;ADPCM輸入端口,連接第二成幀器芯片,接收第二成幀器芯片輸出的ADPCM信號;ADPCM輸出端口,連接第二成幀器芯片,發(fā)送處理后的ADPCM信號到第二成幀器芯片;地址端,通過CPU地址線連接CPU處理器;使能信號端,通過CPU使能信號線連接CPU處理器;數據端,通過CPU數據總線連接CPU處理器。
2.如權利要求1所述的ADPCM數字編碼轉換器,其特征在于,所述現(xiàn)場可編程邏輯陣列包括ADPCM時隙發(fā)送模塊、PCM時隙接收模塊、核心處理模塊、ADPCM時隙接收模塊和PCM時隙發(fā)送模塊;幀頭信號接收端分別連接上述五個模塊;時鐘信號接收端分別連接ADPCM時隙發(fā)送模塊、PCM時隙接收模塊、ADPCM時隙接收模塊和PCM時隙發(fā)送模塊;PCM時隙接收模塊連接PCM輸入端口;核心處理模塊連接地址端、使能信號端和數據端;ADPCM時隙接收模塊連接ADPCM輸入端口;核心處理模塊的輸入端分別連接PCM時隙接收模塊和ADPCM時隙接收模塊,輸出端分別連接ADPCM時隙發(fā)送模塊和PCM時隙發(fā)送模塊。
3.如權利要求2所述的ADPCM數字編碼轉換器,其特征在于,所述ADPCM時隙發(fā)送模塊通過第一加法器連接ADPCM輸出端口;該加法器的一輸入端連接幀頭信號接收端。
4.如權利要求2或3所述的ADPCM數字編碼轉換器,其特征在于,所述PCM時隙發(fā)送模塊通過第二加法器連接PCM輸出端口;加法器的一輸入端連接幀頭信號接收端。
5.如權利要求4所述的ADPCM數字編碼轉換器,其特征在于,所述核心處理模塊具有時鐘端口,與工作時鐘相連。
6.如權利要求5所述的ADPCM數字編碼轉換器,其特征在于,所述核心處理模塊包括A率反變換模塊、運算模塊、A率變換模塊、配置模塊和編解碼模塊;所述編解碼模塊分別連接A率反變換模塊、運算模塊、A率變換模塊和配置模塊。
專利摘要本實用新型提供了一種ADPCM數字編碼轉換器,包括PCM端E1接口及第一成幀器芯片、IMA-ADPCM端E1接口及第二成幀器芯片、CPU處理器以及FPGA。FPGA包括時鐘信號接收端,接收第一和第二成幀器芯片的時鐘信號;幀頭信號接收端,接收第一和第二成幀器芯片的幀頭信號;PCM輸入端口,接收第一成幀器芯片輸出的PCM信號;PCM輸出端口,發(fā)送處理后的PCM信號到第一成幀器芯片;ADPCM輸入端口,接收第二成幀器芯片輸出的ADPCM信號;ADPCM輸出端口,發(fā)送處理后的ADPCM信號到第二成幀器芯片;地址端、使能信號端和數據端分別連接CPU處理器。本轉換器采用分時復用和硬件并行處理技術,采用較低的異步工作時鐘,處理31路64K的PCM信號,實現(xiàn)IMA-ADPCM編解碼。
文檔編號G10L19/00GK2807612SQ200520040899
公開日2006年8月16日 申請日期2005年4月15日 優(yōu)先權日2005年4月15日
發(fā)明者郭展鵬 申請人:上海欣泰通信技術有限公司