新聞中心

EEPW首頁 > 汽車電子 > 設(shè)計(jì)應(yīng)用 > 用FPGA技術(shù)實(shí)現(xiàn)某新型通信設(shè)備中PCM碼流處理

用FPGA技術(shù)實(shí)現(xiàn)某新型通信設(shè)備中PCM碼流處理

作者:■ 北京跟蹤與通信技術(shù)研究所 韓樂 時(shí)間:2005-04-27 來源:eaw 收藏

摘    要:本文根據(jù)器件的特點(diǎn),介紹了應(yīng)用設(shè)計(jì)某通信設(shè)備中PCM碼流處理模塊的一種方案。并就設(shè)計(jì)中遇到的問題進(jìn)行了分析。
關(guān)鍵詞:

本文引用地址:http://2s4d.com/article/5370.htm

引言
由于FPGA器件可實(shí)現(xiàn)所有數(shù)字電路功能 ,具有結(jié)構(gòu)靈活、設(shè)計(jì)周期短、硬件密度高和性能好等優(yōu)點(diǎn),在高速信號處理領(lǐng)域顯示出愈來愈重要的作用。本文研究了基于FPGA技術(shù)對PCM碼流進(jìn)行處理的實(shí)現(xiàn)方法。變換后的數(shù)據(jù)寫入,與DSP配合可完成復(fù)雜的信號處理功能。

設(shè)計(jì)方案
某新型通信設(shè)備中,在完成調(diào)度功能的板子上,需要進(jìn)行PCM碼流處理,實(shí)現(xiàn)串/并轉(zhuǎn)換、m律編解碼以及產(chǎn)生地址等功能。
功能模塊的組成
模塊結(jié)構(gòu)如圖1所示。PCM碼流被送入FPGA,進(jìn)行并/串轉(zhuǎn)換、串/并轉(zhuǎn)換、地址碼產(chǎn)生和時(shí)序控制信號產(chǎn)生,由線性/m律、m律/線性轉(zhuǎn)換完成PCM碼流到中線性數(shù)據(jù)及RAM中線性數(shù)據(jù)到PCM碼流的轉(zhuǎn)換工作。標(biāo)準(zhǔn)JTAG接口供與PC機(jī)并行口相連 ,用于下載設(shè)計(jì)數(shù)據(jù)至FPGA中。
由于本設(shè)計(jì)的電路規(guī)模并不十分大,所以采用了原理圖和硬件描述語言相結(jié)合的混合方法來設(shè)計(jì)。

設(shè)計(jì)實(shí)現(xiàn)
設(shè)定FPGA接收到的PCM碼流為32路調(diào)度用戶數(shù)據(jù)。
1. 首先要完成串/并轉(zhuǎn)換使串行碼流變成8位并行輸出數(shù)據(jù),根據(jù)話音分布特性再將這8位線性數(shù)據(jù)以m律轉(zhuǎn)換成16位數(shù)據(jù)。同時(shí)產(chǎn)生地址并將變換后的數(shù)據(jù)寫入RAM送給DSP處理。FPGA的功能框圖如圖2所示。
計(jì)數(shù)器CB8CLE的時(shí)鐘及鎖存器X74-273的時(shí)鐘CS1等都通過FPGA實(shí)現(xiàn)。數(shù)據(jù)的線性與m律的相互轉(zhuǎn)換是運(yùn)用ABLE語言描述實(shí)現(xiàn)的。程序如下:
Declarations
INN7..INN0 PIN;
INN = [INN7..INN0];
OUU15..OUU0 PIN istype 'COM';
OUU = [OUU15..OUU0];
A = [INN6,INN5,INN4];
B = [INN7..INN4];
Equations
WHEN((A==0)&(B<8)) THEN      OUU=[0,0,0,0,0,0,0,0,0,0,0,INN3,INN2,INN1,INN0,0];
WHEN((A==0)&(B>=8)) THEN     OUU=[1,1,1,1,1,1,1,1,1,1,1,!INN3,!INN2,!INN1,!INN0,1];
……
test_vectors
  ([INN7..INN0]-> [OUU15..OUU0])
  ^B00001000->^B0000000000010000;
  ^B00010100->^B0000000001010000;
  ^B00101010->^B0000000011010000;
……
end WE00
2. DSP處理完16位數(shù)據(jù)后,以m律解碼成8位線性數(shù)據(jù),最后完成并/串轉(zhuǎn)換送回處理過的PCM碼流。同時(shí)送出地址。功能框圖如圖3所示。
3. 數(shù)據(jù)準(zhǔn)備好后,寫入RAM及從RAM中讀取數(shù)據(jù)所需要的讀/寫信號、片選信號也由FPGA產(chǎn)生。
4. 模塊提供了2MHz的時(shí)鐘晶振和FRAM幀同步信號。設(shè)計(jì)將2MHz作為FPGA的工作時(shí)鐘 ,經(jīng)分頻器X74-163進(jìn)行2分頻、4分頻和8分頻后產(chǎn)生作為并聯(lián)輸出的8位取數(shù)觸發(fā)時(shí)鐘CS1。同理可產(chǎn)生經(jīng)DSP處理后的、將并行8位數(shù)據(jù)轉(zhuǎn)換回8位串行數(shù)據(jù)的取數(shù)觸發(fā)時(shí)鐘CS2。邏輯圖及觸發(fā)時(shí)鐘波形圖如圖4、圖5所示。
5. 在FPGA內(nèi)部,F(xiàn)RAM幀同步到來后 ,打開計(jì)數(shù)器開始計(jì)數(shù) ,并將計(jì)數(shù)結(jié)果作為地址送入外接RAM等待DSP讀取。這樣,數(shù)據(jù)就可與相應(yīng)的地址一同被送入RAM中,而不會(huì)出現(xiàn)錯(cuò)位的現(xiàn)象。此處應(yīng)注意:FRAM到來后,來第一個(gè)用戶數(shù)據(jù),計(jì)數(shù)器要先置數(shù)產(chǎn)生地址,裝入相應(yīng)的數(shù)據(jù)。而這個(gè)數(shù)據(jù)并不是第一個(gè)用戶的數(shù)據(jù),而是此刻以前的數(shù)據(jù),即第32個(gè)用戶數(shù)據(jù)。所以地址置為31(共有32個(gè)地址,設(shè)為0~31)。CPU處理完16位數(shù)據(jù)后將其送回。地址置成1,因?yàn)镕RAM同步信號到來時(shí)經(jīng)過第一個(gè)用戶數(shù)據(jù),只好從第2用戶處開始讀取完整數(shù)據(jù)。所以置對應(yīng)地址為1。
6. 設(shè)計(jì)編譯和設(shè)計(jì)驗(yàn)證
進(jìn)行設(shè)計(jì)錯(cuò)誤檢查,綜合邏輯,將設(shè)計(jì)與FPGA器件匹配以及測試邏輯。實(shí)現(xiàn)線性與m律相互轉(zhuǎn)換設(shè)計(jì)的ABLE語言程序經(jīng)調(diào)試成功后,與編譯后的原理圖一起被載入基于 XC95108芯片設(shè)計(jì)的真實(shí)硬件系統(tǒng)中。經(jīng)實(shí)際檢測和驗(yàn)證表明同理論設(shè)計(jì)結(jié)果完全吻合。

遇到的問題與解決
在運(yùn)用FPGA技術(shù)的過程中,遇到一些應(yīng)用上的問題,并且在實(shí)踐摸索中找到了化解的方法。
毛刺問題
輸入某一器件的信號同時(shí)變化時(shí),產(chǎn)生功能冒險(xiǎn) ,即會(huì)出現(xiàn)毛刺。毛刺對數(shù)字通信是十分有害的。通常采用取樣的方法加以消除。但是簡單的與或取樣電路在加了取樣脈沖后的輸出將不是電平信號而是脈沖信號。在取樣期間,有輸出脈沖表示組合電路的輸出為“1”,無脈沖則表示輸出為“0”??梢酝ㄟ^加數(shù)據(jù)鎖存器的方法消除毛刺。某信碼穩(wěn)定后讀至鎖存器 ,鎖存器在下一個(gè)時(shí)鐘周期將信號輸出。輸出雖延遲一個(gè)時(shí)鐘周期 ,但是信碼序列與時(shí)鐘的相位關(guān)系沒有發(fā)生變化 ,并且毛刺完全消除 ,信碼質(zhì)量得到提高。如圖6所示,從圖中可以看出,波形2比波形1滯后一個(gè)時(shí)鐘周期,毛刺已消失。
資源利用問題
1. 使用一個(gè)反相器將信號反相后驅(qū)動(dòng)多個(gè)負(fù)載往往會(huì)多占資源,而且延遲也增加了。所以輸入信號需要反相 ,但應(yīng)盡可能地調(diào)用輸入帶反相功能的符號 ,而不是用分離的反相器對輸入信號進(jìn)行反相。
2. 由于FPGA芯片的引腳比較多,引腳處走線密度大,所以引腳超過 1 0 0時(shí),最好采用多層板,對于引腳數(shù)目較少的情況,可以盡量將用戶使用的引腳固定在外圍引腳上,減少走線密度。
其他
FPGA的每一對電源和地線引腳之間必須并聯(lián)一個(gè) 0 .1 mF的無感電容,用以進(jìn)行電源濾波和去耦。

結(jié)語
使用 FPGA進(jìn)行設(shè)計(jì),工作大都在計(jì)算機(jī)上完成 ,PCB板只是最后的驗(yàn)證。它采用設(shè)計(jì)輸入、功能仿真和設(shè)計(jì)修改等可以反復(fù)循環(huán)的流程 ,使設(shè)計(jì)過程具有較強(qiáng)的靈活性和高效性 ,硬件具有了一定的設(shè)計(jì)柔性 ,工作效率得到很大提高?!?/p>

參考文獻(xiàn)
1朱明程編. Xilinx數(shù)字系統(tǒng)現(xiàn)場集成技術(shù). 東南大學(xué)出版社,2001.10
2朱明程. FPGA原理及應(yīng)用設(shè)計(jì). 電子工業(yè)出版社,1994.5

分頻器相關(guān)文章:分頻器原理


關(guān)鍵詞: FPGA RAM 存儲(chǔ)器

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉