在便攜式數(shù)字衛(wèi)星通信系統(tǒng)中,,為了擴(kuò)大傳輸容量和提高傳輸效率,,滿足同時傳輸幾種業(yè)務(wù)的需求,通常采用時分復(fù)用的方法,,將若干個低速數(shù)字碼流按一定格式合并成一個高速數(shù)據(jù)碼流,,以便在一條信道中傳輸,使各個業(yè)務(wù)信號互相不產(chǎn)生干擾,,實(shí)現(xiàn)此功能的設(shè)備就是數(shù)字復(fù)接系統(tǒng),。
便攜式衛(wèi)星通信,要求實(shí)現(xiàn)平臺集成度高,、速度快,、功耗小、體積小和成本低?,F(xiàn)場可編程門陣列(FPGA) 在結(jié)構(gòu)上由邏輯功能塊排列為陣列,,并由可編程的內(nèi)部連線連接這些功能塊,來實(shí)現(xiàn)一定的邏輯功能,。特別適合上述要求的產(chǎn)品開發(fā)與小批量生產(chǎn),。
FPGA 的開發(fā)環(huán)境在電路設(shè)計(jì)階段,可實(shí)時地對設(shè)計(jì)電路進(jìn)行各種仿真分析,,提高電路設(shè)計(jì)的靈活性和可靠性,,特別是還可在成品上直接進(jìn)行二次開發(fā)和功能擴(kuò)展,靈活且可移植,。后期還可以在線對任意一邏輯信號進(jìn)行實(shí)時仿真,,該文利用軟件Quartus II 5. 1 和VHDL 硬件語言進(jìn)行設(shè)計(jì)和仿真,實(shí)現(xiàn)一個基于FPGA 的衛(wèi)星便攜站的同步數(shù)字復(fù)接系統(tǒng)的設(shè)計(jì),。
1 設(shè)計(jì)和實(shí)現(xiàn)
同步數(shù)字復(fù)分接器完成以下業(yè)務(wù)的復(fù)分接:3 路音頻合計(jì)48 kbps 數(shù)據(jù),; 1 路64 kbps 同步數(shù)據(jù);1 路9. 6 kbps 異步數(shù)據(jù),; 1 路128 kbps LAN 數(shù)據(jù),; 1 路517. 2 kbps 視頻數(shù)據(jù),。采用同步、固定時隙分配和按位復(fù)接方式的設(shè)計(jì)方法,。
1.1 準(zhǔn)同步時延
因?yàn)?a class="innerlink" href="http://forexkbc.com/tags/數(shù)字復(fù)接器" title="數(shù)字復(fù)接器" target="_blank">數(shù)字復(fù)接器與音頻的接口關(guān)系最為復(fù)雜,所以設(shè)計(jì)要點(diǎn)著重放到了與音頻接口的處理,。
1. 1. 1 音頻接口的乒乓操作
如圖1 所示,采用雙口RAM 完成音頻數(shù)據(jù)和復(fù)分接器的接口,。音頻數(shù)據(jù)接口是一種DSP 總線接口,,在第1 個緩沖周期,音頻數(shù)據(jù)緩存到雙口RAM的低端地址存儲區(qū),,同時數(shù)據(jù)復(fù)接單元讀取雙口RAM 的高端地址存儲區(qū)的音頻數(shù)據(jù),; 在第2 個緩沖周期,音頻數(shù)據(jù)緩存到雙口RAM 的高端地址存儲區(qū),,同時數(shù)據(jù)復(fù)接單元讀取雙口RAM 的低端地址存儲區(qū)的音頻數(shù)據(jù),。如此循環(huán),周而復(fù)始,。
圖1 乒乓操作示意圖
這樣經(jīng)過緩沖的數(shù)據(jù)流沒有時間停頓的送到復(fù)接器中,,屬于一種流水線式處理,完成數(shù)據(jù)的無縫緩沖和處理,,節(jié)約緩沖區(qū)的空間,,達(dá)到利用低速模塊處理高速數(shù)據(jù)流的結(jié)果,實(shí)現(xiàn)了數(shù)據(jù)流的并串轉(zhuǎn)換,。
如果音頻數(shù)據(jù)和復(fù)分接器的接口采用傳統(tǒng)的緩存方式,,很容易造成復(fù)接器讀數(shù)據(jù)的時候音頻數(shù)據(jù)還沒有寫到緩存中,很容易造成聲音的“咔咔聲”,,采用音頻接口的乒乓操作避免了此問題的產(chǎn)生,。
1. 1. 2 提供唇音同步機(jī)制
在數(shù)字衛(wèi)星傳輸系統(tǒng)中,有一個獨(dú)特的音視頻同步問題,,即通常說的唇音同步,。由于圖像壓縮編碼所需之信號處理時間一般慢于聲音壓縮編碼所需之信號處理時間,那么在收端將視頻及音頻信號解碼出來后,,就會發(fā)現(xiàn)音頻比視頻快半拍,。通常見到的情況是,或者口動時聽不到聲音,,或者口不動時卻有聲音出來,,即唇音不同步,給觀眾較差的主觀感覺,。為了避免出現(xiàn)這一問題,,分接器中提供了唇音同步單元,把音頻數(shù)據(jù)程序上進(jìn)行延時,通過調(diào)整就可保證接收端的音和視頻同步,。
1. 1. 3 解決FPGA 電路設(shè)計(jì)中的毛刺問題
在FPGA 中當(dāng)多路信號同時發(fā)生跳變的瞬間,往往會出現(xiàn)一些不正確的尖峰信號,,這些尖峰信號就是“毛刺”。組合邏輯電路中競爭冒險(xiǎn)現(xiàn)象的出現(xiàn)也會出現(xiàn)“毛刺”,。它的出現(xiàn)會影響電路工作的穩(wěn)定性和可靠性,,導(dǎo)致數(shù)字系統(tǒng)的誤操作和邏輯紊亂。
設(shè)計(jì)中利用D 觸發(fā)器對輸入信號的毛刺不敏感的特點(diǎn),,去除信號中的毛刺,,但是只是對信號中發(fā)生在非時鐘跳變沿的毛刺信號去除明顯,并且有一定延時,。因此設(shè)計(jì)中盡量采用同步時序電路來實(shí)現(xiàn)各個進(jìn)程模塊的功能,,同時對輸入輸出的數(shù)據(jù)進(jìn)行高倍時鐘的采樣,達(dá)到去除電路中毛刺的目的,。
1.2 設(shè)計(jì)方案
1.2.1 幀結(jié)構(gòu)
該單元不要求與其他復(fù)分接設(shè)備互聯(lián)互通,,所以采用自定義的幀結(jié)構(gòu)。幀頭采用集中幀碼,,幀頭固定為12 bits,。幀結(jié)構(gòu)如表1 所示。
根據(jù)表1 可以計(jì)算出每幀的幀長L 為7 680 bit,,線路速率R 為768 kbps 時,,幀周期T 為:
幀頻F s 為:
表1 幀結(jié)構(gòu)
1. 2. 2 復(fù)接器
復(fù)接器部分負(fù)責(zé)將各支路信息數(shù)據(jù)和幀頭合成一路數(shù)據(jù)流。它由時鐘發(fā)送電路,、數(shù)據(jù)接收存貯器,、數(shù)據(jù)緩沖單元和數(shù)據(jù)復(fù)接電路組成。時鐘發(fā)送電路產(chǎn)生復(fù)接各支路信息數(shù)據(jù)所需的時隙,,時鐘通過使用內(nèi)部時鐘源或由接收時鐘鎖相得到,; 數(shù)據(jù)接收存貯器為一雙口RAM,用來接收數(shù)字音頻數(shù)據(jù),; 數(shù)據(jù)緩沖單元用來把同步數(shù)據(jù)等數(shù)據(jù)的相位調(diào)整到滿足可以進(jìn)行復(fù)接的相位,; 數(shù)據(jù)復(fù)接電路將上述數(shù)據(jù)合成一路線路數(shù)據(jù); 復(fù)接器的組成框圖如圖2 所示,。
圖2 復(fù)接器組成框圖
1. 2. 3 分接器
分接器負(fù)責(zé)將一路數(shù)據(jù)流分解成各個支路信息數(shù)據(jù),。它包括數(shù)據(jù)分接電路、時鐘恢復(fù)電路,、數(shù)據(jù)接收存貯器和數(shù)據(jù)緩沖單元等部分,。時鐘恢復(fù)電路產(chǎn)生解幀所需的各種時鐘和相應(yīng)的支路時隙,這些時鐘和接口接收的數(shù)據(jù)一起送入數(shù)據(jù)分接電路,,搜索幀同步字,,當(dāng)滿足同步規(guī)則后判為同步,,同時強(qiáng)迫時序與數(shù)據(jù)幀同步對應(yīng),將各支路信息數(shù)據(jù)分接,,并送相應(yīng)的解碼單元,,不同步給出同步/ 失步告警信號,;數(shù)據(jù)接收存貯器為一雙口RAM,,用來發(fā)送數(shù)字音頻數(shù)據(jù); 數(shù)據(jù)緩沖單元用來把分接的同步數(shù)據(jù)的相位調(diào)整到滿足數(shù)據(jù)接口的相位,。復(fù)接器的組成框圖如圖3 所示,。
圖3 分接器組成框圖
1. 2. 4 幀同步字檢測
對于集中幀同步字方式,幀同步字在數(shù)據(jù)流中是若干個連續(xù)的碼元,,占據(jù)相鄰的時隙,,因此幀碼檢測電路比較簡單,可由位數(shù)等于幀碼個數(shù)的D 觸發(fā)器和與門構(gòu)成,。數(shù)據(jù)由時鐘逐位打入D 觸發(fā)器中,一旦12 位幀碼都移入D 觸發(fā)器中,,即12 個D 觸發(fā)器輸出為幀同步字,則與門輸出一個脈沖,,否則與門沒有輸出,。為防止假同步,連續(xù)3 次搜索到幀同步字才認(rèn)為設(shè)備同步,,否則重新搜索,。當(dāng)信道誤碼率較高時,為避免設(shè)備頻繁失步,,當(dāng)連續(xù)3 次失步才認(rèn)為設(shè)備失步,。
采用上述方法既可以防止假鎖,又可以避免啟動不必要的同步搜索,,使設(shè)備工作更加穩(wěn)定可靠,。
所有以上功能除接口轉(zhuǎn)換及時鐘鎖相外,全部使用FPGA 器件,,采用硬件設(shè)計(jì)語言實(shí)現(xiàn),。并按功能模塊化設(shè)計(jì),具有很好的重用性,,可以方便地進(jìn)行移植,。
1. 2. 5 仿真與實(shí)現(xiàn)
該復(fù)接器是在Altera 公司的QuartusII5. 1 作為硬件開發(fā)平臺,完全采用VHDL 硬件描述語言編寫,并在QuartusII5. 1 的開發(fā)環(huán)境下進(jìn)行時序仿真,,系統(tǒng)仿真波形良好,,除了允許范圍內(nèi)的信號延遲外,能準(zhǔn)確實(shí)現(xiàn)數(shù)字信號的復(fù)接和分接,,經(jīng)過編譯下載到可編程器件中,,程序已通過了綜合實(shí)驗(yàn),獲得很好的效果,滿足了工程的需要,。
2 系統(tǒng)同步性能分析
在傳輸過程中,,由于信道噪聲的影響,不可避免地將在傳輸碼流中引入誤碼,,從而導(dǎo)致系統(tǒng)同步的丟失,。同步丟失是一個非常嚴(yán)重的問題,它將導(dǎo)致主觀質(zhì)量的嚴(yán)重下降,,甚至使得整個系統(tǒng)不能正常工作,。因此,復(fù)分接系統(tǒng)同步性能的好壞,,是影響整個系統(tǒng)性能的關(guān)鍵環(huán)節(jié),。
在發(fā)送端,復(fù)分接系統(tǒng)輸出數(shù)據(jù)流幀長為L =7 680 bit,。在每幀的起始,,是固定數(shù)值的同步幀頭,碼長為N = 12 bit,根據(jù)文獻(xiàn)[ 3] ,,有平均搜捕時間:
式( 3) 中,,P 1 為同步字上的虛漏概率; Py 為非同步字上的虛警概率,; T 為數(shù)據(jù)幀周期,。如果信道的平均比特誤碼率,傳送流的速率R =768 kbit / s,,那么P1 = NP = 0. 001 2,,P y = 2-12=0. 000 2, T = L / R ,, 于是Ta = 12. 68 ms,。
如果不考慮虛警概率的影響,平均確認(rèn)失幀時間為:
式( 4) 中,,β為后向保護(hù)參數(shù),,即在連續(xù)β次發(fā)現(xiàn)同步字丟失后才進(jìn)入失步狀態(tài)。取β = 3,,那么Td= 25 ms,。另外,平均失幀時間為:
式( 5) 中,,a為前向保護(hù)參數(shù),,即在連續(xù)a次找到同步字后才進(jìn)入同步狀態(tài)。a= 3,,那么Tr = 50 ms,。而平均同步持續(xù)時間為:
所以T1= 1 607 h,。從上面的分析中可以看出復(fù)分接系統(tǒng)即使在不進(jìn)行誤碼保護(hù)的情況下,也能在較短的時間內(nèi)確認(rèn)失幀,,并很快搜捕到同步,; 同時在同步狀態(tài)保持很長的時間。因此,,該復(fù)分接系統(tǒng)具有較好的同步性能,,在一定的誤碼保護(hù)措施下能夠滿足實(shí)際要求。
3 結(jié)束語
設(shè)計(jì)的數(shù)字復(fù)接系統(tǒng)的各個部分,,都可以在FPGA 芯片上用VHDL 編程實(shí)現(xiàn),。整個復(fù)分接系統(tǒng)功能就可以集成在一塊芯片上,,既節(jié)省了硬件資源,減少外部走線,,簡化了系統(tǒng),而且該設(shè)計(jì)便于擴(kuò)展,方便反復(fù)編寫和修改程序,,只需修改FPGA 中相應(yīng)控制參數(shù)和外接的監(jiān)控信息就可以實(shí)現(xiàn)速率可變和幀結(jié)構(gòu)可變的復(fù)接與分接,。實(shí)驗(yàn)表明,該系統(tǒng)在FDMA 便攜式衛(wèi)星傳輸平臺中起到了重要作用,,可提高信道的利用率和傳輸容量,。