作者:包莉娜,周立豐,王匡,張明
數(shù)字衛(wèi)星接收芯片(DVB_s)是準(zhǔn)基帶采樣變換到MPEG-2碼流的完全解決方案的集成芯片?主要用于衛(wèi)星傳輸?shù)臄?shù)字電視?數(shù)字語音的壓縮編碼的數(shù)字解調(diào)與信道解碼?此傳輸系統(tǒng)基于前向糾錯(cuò)編碼(FEC)技術(shù)和QPSK調(diào)制技術(shù),可保證傳輸業(yè)務(wù)的可靠性?
DVB-S系統(tǒng)功能模塊如圖1所示?包括物理接口?QPSK解調(diào)?Viterbi譯碼?同步頭尋找?去交織?RS解碼?解擾以及幀格式轉(zhuǎn)換?經(jīng)過幀格式轉(zhuǎn)換后的數(shù)據(jù)稱為TS流,輸出的時(shí)鐘為占空比近似為1:1的均勻時(shí)鐘?TS數(shù)據(jù)和時(shí)鐘送給解碼芯片進(jìn)行信源解碼?
1 幀格式轉(zhuǎn)換
幀格式轉(zhuǎn)換位于信道傳輸?shù)淖钋岸耍ɑ蜃钅┒耍瓿尚诺纻鬏斉c信源MPEG-2編(解)碼的相應(yīng)數(shù)據(jù)格式的轉(zhuǎn)換以及產(chǎn)生相應(yīng)的時(shí)鐘?在發(fā)送端,該部分將信源MPEG-2的數(shù)據(jù)包格式轉(zhuǎn)換成信道傳輸?shù)臄?shù)據(jù)包格式,并產(chǎn)生信道傳輸編碼部分的時(shí)鐘?相應(yīng)地,接收端部分將信道傳輸?shù)臄?shù)據(jù)包格式轉(zhuǎn)換成信源MPEG-2的包格式,同時(shí)也產(chǎn)生信源MPEG-2的時(shí)鐘?
1.1 進(jìn)行數(shù)據(jù)格式轉(zhuǎn)換的原因
進(jìn)行數(shù)據(jù)格式轉(zhuǎn)換是由于DVB-S信道幀格式與MPEG-2的信源幀格式不同?信源MPEG-2編(解)碼數(shù)據(jù)包格式是按段組織的,每一個(gè)數(shù)據(jù)段包括1個(gè)字節(jié)的段同步和187個(gè)字節(jié)的數(shù)據(jù),這種幀結(jié)構(gòu)稱為信源數(shù)據(jù)包格式?而本方案信道傳輸?shù)腞S編(解)碼是按每個(gè)段進(jìn)行的,即(204,188,16)碼,也就是每段187個(gè)字節(jié)信息數(shù)據(jù)外又增加16個(gè)糾錯(cuò)校驗(yàn)位? MPEG-2數(shù)據(jù)包格式和DVB信道數(shù)據(jù)包格式及時(shí)序如圖2所示?
這里主要討論接收端的格式轉(zhuǎn)換,即將DVB_S信道格式轉(zhuǎn)換為MPEG-2信源格式?接收端數(shù)據(jù)格式轉(zhuǎn)換主要包括兩部分:(1)去掉校驗(yàn)字節(jié);(2)將時(shí)鐘變?yōu)檎伎毡??1?去除校驗(yàn)字節(jié)子部分將由RS編譯碼引入的冗余校驗(yàn)字節(jié)去掉,使每包的數(shù)據(jù)恢復(fù)為188字節(jié)?為防止信號(hào)畸變,保證數(shù)據(jù)正確地采樣,時(shí)鐘占空比應(yīng)展寬為1:1?目前市場上的解碼芯片支持并行和串行兩種模式?以上討論的并行模式輸出(以字節(jié)形式輸出)?串行模式輸出以比特形式輸出?
1.2 幀格式轉(zhuǎn)換設(shè)計(jì)
1.2.1 并行模式
該部分將去除由DVB-S的RS編碼引入的冗余校驗(yàn)字節(jié),使每包的數(shù)據(jù)恢復(fù)為MPEG-2格式的188字節(jié)?其結(jié)構(gòu)框圖如圖3所示?其核心部分為數(shù)據(jù)緩沖區(qū)的設(shè)計(jì)和讀時(shí)鐘的產(chǎn)生?
(1)數(shù)據(jù)緩沖區(qū)
從信道數(shù)據(jù)包格式和信源包格式可以看出,相對信源包而言,信道包每包多出了16個(gè)RS碼校驗(yàn)字節(jié)?信道數(shù)據(jù)按如下規(guī)則寫入緩沖區(qū),讀端也按照一定規(guī)則讀出數(shù)據(jù):16個(gè)字節(jié)的RS校驗(yàn)碼不寫入緩沖區(qū),其他數(shù)據(jù)按地址順序?qū)懭刖彌_區(qū);在讀出時(shí),按照順序讀出緩沖區(qū)的內(nèi)容,每幀為188字節(jié)的數(shù)據(jù)?其中數(shù)據(jù)寫入緩沖區(qū)時(shí),使用信道的時(shí)鐘,而從緩沖區(qū)讀出數(shù)據(jù)時(shí),使用信源時(shí)鐘? 為了保證讀出數(shù)據(jù)的正確性,只能讀已經(jīng)寫入的數(shù)據(jù),也就是讀操作滯后于寫操作?這里一個(gè)存儲(chǔ)單元為1個(gè)字節(jié) ?設(shè)計(jì)時(shí)采用SRAM作為數(shù)據(jù)緩沖區(qū)?
(2)讀時(shí)鐘以及信源時(shí)鐘的產(chǎn)生
參考時(shí)鐘的產(chǎn)生
為了減少整個(gè)系統(tǒng)的復(fù)雜度(主要為減少芯片外圍電路),前級(jí)時(shí)鐘恢復(fù)(Clock Recovery)模塊采用了內(nèi)插算法,引起了符號(hào)時(shí)鐘周期的不確定性,進(jìn)一步導(dǎo)致了字節(jié)時(shí)鐘周期的不確定性,即傳輸給幀格式轉(zhuǎn)換模塊的字節(jié)時(shí)鐘是很不均勻的?
為了得到近似均勻的字節(jié)時(shí)鐘,幀格式轉(zhuǎn)換模塊采用數(shù)字鎖相法產(chǎn)生一個(gè)近似均勻的參考時(shí)鐘,如圖4所示?
圖4中,本地產(chǎn)生的近似均勻的字節(jié)時(shí)鐘頻率與輸入的不均勻字節(jié)時(shí)鐘的頻率保持一致,而輸出的參考時(shí)鐘頻率是輸入字節(jié)時(shí)鐘的8倍,且近似均勻?之所以要8分頻而不是2分頻或是4分頻,主要考慮到在DVB_S系統(tǒng)中符號(hào)頻率是2MHz-45MHz,折算到字節(jié)頻率為0.25MHz-5.5125MHz(如果Viterbi譯碼的刪節(jié)模式是1/2,字節(jié)頻率=符號(hào)頻率×1/4×Viterbi譯碼的刪節(jié)模式),當(dāng)符號(hào)頻率很低時(shí),如采用2分頻或4分頻數(shù)字鎖相器穩(wěn)定較慢,而8分頻符合設(shè)計(jì)要求?
讀時(shí)鐘產(chǎn)生以及信源時(shí)鐘的生成
由于信源格式的每個(gè)包只有188字節(jié),因此首先把信道格式的每包204字節(jié)使能去掉16個(gè),采用丟時(shí)鐘的方法,在204中丟掉16次使能,即51中丟掉4次?故采用一個(gè)51計(jì)數(shù)器?當(dāng)計(jì)數(shù)到11?24?37?49時(shí)丟掉輸入的字節(jié)時(shí)鐘,得到丟掉后的每包只有188個(gè)字節(jié)時(shí)鐘(如圖5)?把丟掉后的字節(jié)時(shí)鐘傳輸給上面的參考時(shí)鐘產(chǎn)生模塊,得到較均勻的參考時(shí)鐘? 由新的較均勻的參考時(shí)鐘8分頻即可得到較均勻的讀時(shí)鐘(每包188個(gè)),以及信源時(shí)鐘(占空比約為1:1)?在設(shè)計(jì)時(shí)用一個(gè)模8計(jì)數(shù)器即可?如圖6,讀時(shí)鐘和信源時(shí)鐘是對齊的?
1.2.2 串行模式
根據(jù)解碼芯片的要求,串行模式的輸出工作在60MHz系統(tǒng)時(shí)鐘上,而本設(shè)計(jì)中的數(shù)字衛(wèi)星信道接收芯片工作在90MHz系統(tǒng)時(shí)鐘上?因此首先需要系統(tǒng)時(shí)鐘的變換,然后進(jìn)行并行模式的處理,最后再并/串變換?
系統(tǒng)時(shí)鐘的變換是關(guān)鍵,其設(shè)計(jì)可分為三步,如圖7所示?
(1)把工作在90MHz上的字節(jié)時(shí)鐘展寬,這時(shí)可用一個(gè)3bit的計(jì)數(shù)器實(shí)現(xiàn),Verilog代碼如下:
always @ (posedge sys_clk)
begin
if(rst | byt_clk)
sys_cnt 《= 3'd0;?
else if(~sys_cnt[2])?
sys_cnt 《= sys_cnt + 3'd1;?
end
assign 展寬的字節(jié)時(shí)鐘 = sys_cnt[2]??
(2)用60MHz的系統(tǒng)時(shí)鐘采樣展寬的字節(jié)時(shí)鐘的上跳沿,產(chǎn)生工作在60MHz上的字節(jié)時(shí)鐘? (3)以60MHz的系統(tǒng)時(shí)鐘為采樣時(shí)鐘,工作在60MHz上的字節(jié)時(shí)鐘為使能信號(hào),采樣輸入的數(shù)據(jù),得到工作在60MHz上的數(shù)據(jù)?這樣,就不會(huì)出現(xiàn)多采或者漏采現(xiàn)象?
然后把60MHz的系統(tǒng)時(shí)鐘?工作在60MHz上的字節(jié)時(shí)鐘及數(shù)據(jù)送給并行模塊?從并行模塊出來的是信源的字節(jié)時(shí)鐘,其每一個(gè)字節(jié)時(shí)鐘周期中均有8個(gè)參考時(shí)鐘,因此可以把這8個(gè)參考時(shí)鐘作為串行輸出的比特時(shí)鐘,每一個(gè)字節(jié)數(shù)據(jù)在一個(gè)字節(jié)時(shí)鐘周期內(nèi)變?yōu)?個(gè)比特的數(shù)據(jù),按照比特時(shí)鐘輸出?
2 ASIC實(shí)現(xiàn)
選擇的硬件描述語言是Verilog HDL綜合庫,synthesis library 選用UMC 0.18μm工藝?綜合之后此模塊的總面積為6000門左右?此方案已經(jīng)應(yīng)用到DVB-S芯片的設(shè)計(jì)中,并且在FPGA上已經(jīng)調(diào)試成功?
本文所講述的幀格式轉(zhuǎn)換處于DVB-S芯片中的最后一個(gè)模塊,其主要功能是將數(shù)據(jù)和時(shí)鐘從信道格式轉(zhuǎn)變?yōu)樾旁锤袷?其輸出連到解碼芯片,解碼芯片能否正常工作此模塊起著非常關(guān)鍵的作用?
責(zé)任編輯:gt
-
芯片
+關(guān)注
關(guān)注
452文章
50206瀏覽量
420865 -
電視
+關(guān)注
關(guān)注
15文章
2460瀏覽量
75361 -
衛(wèi)星
+關(guān)注
關(guān)注
18文章
1693瀏覽量
66828
發(fā)布評論請先 登錄
相關(guān)推薦
評論