• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      視頻傳輸不等差錯保護(hù)方案設(shè)計(jì)*

      2010-08-10 07:47:54陳孫陽陳穎琪
      電視技術(shù) 2010年6期
      關(guān)鍵詞:視頻流交織編碼器

      陳孫陽 ,陳穎琪 ,王 慈

      (1.上海交通大學(xué) 電子工程系 圖像通信與信息處理研究所,上海 200240;2.上海市數(shù)字媒體處理與傳輸重點(diǎn)實(shí)驗(yàn)室,上海 200240)

      1 概述

      視頻監(jiān)控系統(tǒng)在工業(yè)控制、保密通信、公共安全、道路交通等領(lǐng)域得到越來越廣泛的應(yīng)用。監(jiān)控視頻的傳輸主要有兩種方式:有線傳輸和無線傳輸。無線信道固有的隨機(jī)性以及宇宙射線、工業(yè)火花、雷電等對無線信道的干擾,無線信道中同時存在隨機(jī)錯誤與突發(fā)錯誤。不等差錯保護(hù)機(jī)制根據(jù)視頻流分層的重要性以及信道狀況,對不同的數(shù)據(jù)提供不同的保護(hù)級別,提高糾錯性能的同時更為有效地利用了信道帶寬。

      文獻(xiàn)[1]提出了基于分層編碼和OFDM的不等差錯保護(hù)方案,文獻(xiàn)[2]提出了基于Reed-Solomon編碼的不等差錯保護(hù)方案。然而,前者僅僅考慮了視頻流不同分層的權(quán)重因子而未考慮實(shí)際信道狀況,因此不能用于要求自適應(yīng)能力的信道編碼;后者能夠糾正大部分的隨機(jī)錯誤和一定程度的突發(fā)錯誤,但是當(dāng)信道連續(xù)惡化造成大面積的突發(fā)錯誤時,該方案的糾錯容限就無能為力了。為了同時糾正信道中的隨機(jī)錯誤和突發(fā)錯誤,筆者提出了多級RS編碼器(Multi-level RS Encoder)與信道交織器級聯(lián)的方案。為了有效地利用信道帶寬傳輸碼流數(shù)據(jù)或者實(shí)現(xiàn)雙方的保密通信,本系統(tǒng)能在MCU的控制下實(shí)時地改變信道糾錯編碼保護(hù)級別和傳輸碼率。

      2 多級RS編碼與交織器級聯(lián)方案

      2.1 多級Reed-Solomon編碼器

      現(xiàn)有的差錯控制編碼分為兩大類:分組編碼和卷積編碼。Reed-Solomon編碼是一種分組碼、系統(tǒng)碼和線性、循環(huán)碼,能夠高效地糾正信道中出現(xiàn)的突發(fā)錯誤。RS碼憑借其優(yōu)異的性能和折中的實(shí)現(xiàn)復(fù)雜度,在電視廣播中得到了廣泛應(yīng)用,如 DVB-T 中的 RS(204,188)。

      為了實(shí)現(xiàn)不等差錯保護(hù)機(jī)制,設(shè)計(jì)了4個糾錯級別的 RS 碼,分別是 RS(255,239),RS(255,223),RS(255,191)和RS(255,255)。系統(tǒng)控制端根據(jù)信道狀況指定每一個數(shù)據(jù)包的編碼保護(hù)級別[4],在信道情況較好時選擇RS(255,239)或 RS(255,255),在信道情況較差時選擇最高編碼保護(hù)級別的RS(255,191)。為了通信雙方的保密性,控制器可以隨機(jī)選擇編碼保護(hù)級別,這種隨機(jī)選擇算法大大增加了潛在竊聽者識別信息包的難度,即使截獲了某個信息包,在不知道包頭信息含義的情況下也毫無意義。

      根據(jù)重要性、信道狀況或者是保密通信的需要,將原始碼流分割為191,223,239和255這4種不同長度的數(shù)據(jù)包,如圖1中標(biāo)號①所示。每個數(shù)據(jù)包的包頭指示當(dāng)前數(shù)據(jù)包的編碼保護(hù)級別,MRSE模塊根據(jù)該信息確定當(dāng)前包采用何種級別的RS編碼。

      2.2 數(shù)據(jù)交織

      各個RS編碼器的輸出端都是255 byte的數(shù)據(jù)包。當(dāng)采用RS(255,191)時,在一個數(shù)據(jù)包里最多允許有64個錯誤符號。當(dāng)錯誤超過64個符號時,整個信息包無效。無線信道里因?yàn)榇嬖诶纂姟⒐I(yè)火花等干擾而引起的突發(fā)錯誤,很有可能使得差錯符號超出上述基于RS編碼的UEP系統(tǒng)的糾錯容限。為了進(jìn)一步提高系統(tǒng)的整體容錯性能,增加了一級數(shù)據(jù)交織模塊,將突發(fā)錯誤離散化。

      數(shù)據(jù)交織時,將184個255 byte的數(shù)據(jù)包組成一個內(nèi)部數(shù)據(jù)幀(frame)。交織器按照行的順序?qū)S數(shù)據(jù)包寫入內(nèi)部Buffer,當(dāng)Buffer中填滿一幀的數(shù)據(jù)后,控制邏輯按照列的順序讀出Buffer中數(shù)據(jù),并在每列數(shù)據(jù)的前面加入包頭信息。數(shù)據(jù)幀定義和數(shù)據(jù)交織過程如圖1中標(biāo)號②所示。

      2.3 包頭信息位保護(hù)

      上述的數(shù)據(jù)交織模塊根據(jù)交織算法的要求,輸入端的數(shù)據(jù)包按照行的順序?qū)懭霂彺?,輸出端按照列的順序輸出?shù)據(jù)包,并加入包頭信息,形成長度為188 byte的新數(shù)據(jù)包。因?yàn)榈谝患墧?shù)據(jù)包(255 byte)的前4個字節(jié)為包頭信息,因此,在按照列的順序輸出數(shù)據(jù)時,前4列的數(shù)據(jù)對應(yīng)于交織器Buffer中數(shù)據(jù)的所有包頭信息。如果這4個包發(fā)生錯誤的話,幀緩存中的信息包就不能正確地得到譯碼。為了進(jìn)一步保護(hù)這些包頭信息,再級聯(lián)一個 RS(204,188)編碼器,將交織后的 188 byte的數(shù)據(jù)包編碼為204 byte的數(shù)據(jù)包。本級RS編碼后的碼流如圖1中標(biāo)號③所示。實(shí)際上,RS(204,188)編碼器的實(shí)現(xiàn)和RS(255,239)完全一樣,并沒有增加系統(tǒng)的設(shè)計(jì)復(fù)雜度。

      3 實(shí)現(xiàn)架構(gòu)設(shè)計(jì)

      MCU對Host IF模塊中的寄存器進(jìn)行配置,并將編碼后的視頻流分成含分割指示信息的原始數(shù)據(jù)包,原始數(shù)據(jù)包的長度可以為 4 種模式 191,223,239,255,MCU可以根據(jù)當(dāng)前的信道情況或者保密通信的要求將視頻流分割成上述的長度后發(fā)送到Host IF模塊。

      Host IF模塊作為FPGA端接口模塊,緩存來自MCU的32 bit的數(shù)據(jù)流,提取包頭信息,加入負(fù)荷符號位后組成待編碼信息包發(fā)送到MRSE模塊進(jìn)行不同保護(hù)級別的RS編碼。HOST IF中包括了一個深度為256 byte的異步FIFO用于緩存MCU模塊發(fā)送的異步數(shù)據(jù)。

      圖2 系統(tǒng)整體設(shè)計(jì)框圖

      MRSE模塊為本系統(tǒng)的核心算法模塊,提供4個級別的差錯保護(hù)編碼。其內(nèi)部包含了4個并行的RS編碼器,同時給上一級模塊提供了選通邏輯。

      Data Interleave模塊對經(jīng)過不同保護(hù)級別RS編碼后的數(shù)據(jù)進(jìn)行交織處理,將184個長度為255 byte的數(shù)據(jù)包變換255個長度為188 byte的數(shù)據(jù)包,其中188 byte的前4 byte為交織器加入的包頭信息。

      RS(204,188)模塊對交織后的 188 byte的數(shù)據(jù)包進(jìn)行第2級的RS編碼,進(jìn)一步保護(hù)了原始數(shù)據(jù)包的包頭信息和信息符號位。

      Channel Adapter模塊緩存來自前端的數(shù)據(jù)包,在信道工作時鐘下發(fā)送數(shù)據(jù)包(204 byte)給調(diào)制模塊,同時將當(dāng)前的信道情況反饋給數(shù)據(jù)交織模塊。

      4 子模塊設(shè)計(jì)

      4.1 基于專用乘法器的RS編碼器

      RS編碼器實(shí)現(xiàn)的關(guān)鍵在于乘法器的實(shí)現(xiàn)方式,RS編碼器的數(shù)學(xué)運(yùn)算基于Galois域,傳統(tǒng)的Galois全乘器有著實(shí)現(xiàn)方式過于復(fù)雜、面積占用多等缺點(diǎn),因此有必要設(shè)計(jì)高效的Galois乘法器。

      當(dāng)本原多項(xiàng)式確定了之后,生成多項(xiàng)式的系數(shù)就確定了,亦即編碼過程中用到的乘法系數(shù)就固定了。根據(jù)Galois域上運(yùn)算的定義,Galois域上的乘運(yùn)算可以轉(zhuǎn)化為位異或運(yùn)算[3],這個轉(zhuǎn)換過程可以通過高級編程語言將乘系數(shù)所對應(yīng)的參與位異或運(yùn)算的位找出來。

      本系統(tǒng)采用GF(28)上的RS編碼器,它的本原特征多項(xiàng)式為

      生成多項(xiàng)式為

      4.2 多級RS編碼器

      由于RS編碼器采用了專用乘法器實(shí)現(xiàn),單個RS編碼器的資源占用已經(jīng)大為降低,本方案采用了3個并行的RS編碼器和一個直通通路構(gòu)成的RS(255,255)編碼器,實(shí)現(xiàn)4個不同等級的差錯保護(hù)。采用3個并行RS編碼器構(gòu)建多級RS編碼器的優(yōu)點(diǎn)是前面模塊能夠快速選通相應(yīng)級別的編碼器,而不需要等待很多時鐘周期的配置時間。

      4.3 數(shù)據(jù)交織器

      為了處理連續(xù)的數(shù)據(jù)流,交織器模塊包含了2塊RAM,實(shí)現(xiàn)數(shù)據(jù)流的乒乓操作。當(dāng)?shù)谝粔KRAM填滿數(shù)據(jù)后,交織器的輸入端將新進(jìn)的數(shù)據(jù)包填入第二塊RAM,同時交織器中的輸出控制模塊開始逐列讀出第一塊RAM中的有效數(shù)據(jù),同時加入包頭信息后形成188 byte的數(shù)據(jù)包。當(dāng)?shù)诙KRAM 中填滿數(shù)據(jù)后,新進(jìn)的數(shù)據(jù)包又開始填入第一塊中,同時,輸出控制模塊開始逐列讀出第二塊中的有效數(shù)據(jù),加入包頭信息形成188 byte的數(shù)據(jù)包??傊豢椘骺刂颇K按照這種乒乓操作的方式處理進(jìn)來的每個數(shù)據(jù)包。

      4.4 Host IF接口模塊

      CPU的數(shù)據(jù)寬度為32 bit,工作頻率為60 MHz;后續(xù)基于FPGA實(shí)現(xiàn)的編碼器、交織器的數(shù)據(jù)寬度為8 bit,工作頻率要求根據(jù)不同的應(yīng)用配置為不同的值。因此需要設(shè)計(jì)一個接口模塊對它們之間的數(shù)據(jù)流進(jìn)行變換。Host IF模塊中含有若干個寄存器,可以對系統(tǒng)的工作環(huán)境進(jìn)行配置,如對復(fù)位寄存器進(jìn)行一次寫操作能實(shí)現(xiàn)系統(tǒng)的軟復(fù)位。接口模塊中還包括了一個寬度為32 bit、深度為256 byte的異步FIFO用于緩存數(shù)據(jù)包。當(dāng)FIFO達(dá)到半滿狀態(tài)時,啟動讀控制模塊,按照輸出端時序的要求讀出FIFO中的數(shù)據(jù),具體是在FPGA主工作時鐘下,每4個周期讀出FIFO中的一個數(shù)據(jù)(32 bit),讀控制模塊將其拆分4個8 bit的數(shù)據(jù),然后發(fā)送到MRSE模塊。

      4.5 信道適配模塊

      信道的工作時鐘比系統(tǒng)處理時鐘低,為了將處理后的數(shù)據(jù)包(長度為204 byte)發(fā)送給后續(xù)的調(diào)制模塊(圖中未畫出),采用一塊寬度為8 bit、深度為256 byte的FIFO緩存數(shù)據(jù)[5]。FIFO近空時向前級數(shù)據(jù)交織模塊發(fā)送讀請求,將新的一個數(shù)據(jù)包讀入本模塊FIFO中。信道適配模塊的讀控制邏輯在信道時鐘要求的速率下連續(xù)輸出最終的數(shù)據(jù)。

      5 硬件實(shí)現(xiàn)

      整體系統(tǒng)采用Verilog HDL編寫RTL代碼,通過了功能仿真與時序仿真。整體設(shè)計(jì)在Xilinx ISE 10.1綜合后的頻率是158.03 MHz,布局布線后的頻率為104.5 MHz,在 Virtex-4 XC4VLX100 里僅占用 1 378 個 Slice,即僅占用2.8%的Slice(1 378/49 152)。在基于Virtex-4 XC4VLX100的FPGA自主開發(fā)版上實(shí)現(xiàn)了D1規(guī)格的視頻流的信道編碼。

      假設(shè)FPGA的工作時鐘為10 MHz,系統(tǒng)能達(dá)到的碼率可以這樣計(jì)算

      由以上計(jì)算可知,當(dāng)FPGA工作在10 MHz時,本系統(tǒng)提供了54 Mbit/s的碼率,能夠較好地支持現(xiàn)有的全高清(Full-HD)編碼視頻流。表1給出了CIF與D1兩種視頻監(jiān)控采用的主流規(guī)格對應(yīng)的碼率和信道編碼工作頻率,可與Full-HD進(jìn)行對比。

      表1 視頻規(guī)格與信道編碼工作頻率

      6 結(jié)論

      提出了一種將多級RS編碼與交織器級聯(lián)的不等差錯保護(hù)方案用于傳輸編碼后的視頻流。多級RS編碼器較好地糾正信道中的隨機(jī)錯誤。同時,級聯(lián)的交織器將信道中的突發(fā)錯誤離散化,進(jìn)一步提高了該系統(tǒng)的整體糾錯能力。理論分析及實(shí)驗(yàn)結(jié)果表明,本實(shí)現(xiàn)方案能夠?qū)σ曨l監(jiān)控的D1碼流進(jìn)行信道編碼,同時能夠支持Full-HD視頻流的信道編碼。

      [1]郭東亮,吳樂南.基于分層編碼和OFDM的不等差錯保護(hù)[J].電路與系統(tǒng)學(xué)報(bào),2003,8(2):18-22.

      [2]楊海明,趙明生.多媒體會議中圖像通信的不等差錯保護(hù)技術(shù)實(shí)現(xiàn)[J].電視技術(shù),2004,28(6):80-82.

      [3]SHU L,COSTELLO D J.差錯控制編碼[M].晏堅(jiān),何元智,等譯.北京:機(jī)械工業(yè)出版社,2007.

      [4]FANG T,CHAU L P.A novel unequal error protection approach for error resilient video transmission[J].IEEE International Symposium on Circuits and Systems,2005,4:4022-4025.

      [5]HUANG C,LIANG S.Unequal error protection for MPEG-2 video transmission over wireless channels[J].IEEE Trans. Signal Processing Image Communication,2004,19:67-69.

      猜你喜歡
      視頻流交織編碼器
      邊緣實(shí)時視頻流分析系統(tǒng)配置動態(tài)調(diào)整算法研究
      美食(2022年2期)2022-04-19 12:56:22
      基于視頻流傳輸中的擁塞控制研究
      交織冷暖
      女報(bào)(2019年3期)2019-09-10 07:22:44
      基于FPGA的同步機(jī)軸角編碼器
      一種改進(jìn)的塊交織方法及FPGA實(shí)現(xiàn)
      基于PRBS檢測的8B/IOB編碼器設(shè)計(jì)
      美國視頻流市場首現(xiàn)飽和征兆
      奧運(yùn)夢與中國夢交織延展
      華人時刊(2016年17期)2016-04-05 05:50:32
      JESD204B接口協(xié)議中的8B10B編碼器設(shè)計(jì)
      電子器件(2015年5期)2015-12-29 08:42:24
      通辽市| 城市| 民乐县| 宽甸| 珲春市| 东宁县| 黔东| 介休市| 汨罗市| 阜宁县| 卢龙县| 青河县| 都兰县| 三原县| 绥棱县| 嘉祥县| 金乡县| 澎湖县| 昭觉县| 西昌市| SHOW| 阿拉尔市| 尚义县| 景泰县| 湘潭县| 莲花县| 宝兴县| 天台县| 鄂温| 宣恩县| 忻州市| 肇东市| 陇西县| 北流市| 庆安县| 天峨县| 铁岭县| 张家界市| 容城县| 苍溪县| 昌邑市|