專利名稱:大容量數(shù)字視頻廣播多節(jié)目傳輸流傳輸系統(tǒng)及其方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種數(shù)字視頻廣播DVB傳輸流TS的傳輸系統(tǒng)及方法。
背景技術(shù):
目前還沒有專門用于大容量數(shù)字視頻廣播傳輸流即DVB--TS流的傳輸技術(shù)和設(shè)備,在骨干網(wǎng)上的數(shù)字視頻廣播節(jié)目傳輸流長距離傳輸一般是通過SDH系統(tǒng)在光纖中傳輸,上載到SDH系統(tǒng)或下載都要通過網(wǎng)絡(luò)適配器進(jìn)行數(shù)字碼流格式的變換,由于SDH幀結(jié)構(gòu)中安排了大約占總信號5%的豐富的開銷比特,以加強(qiáng)網(wǎng)絡(luò)的運(yùn)行、管理和維護(hù)能力,因此網(wǎng)絡(luò)資源開銷大,傳輸效率不高,同時(shí)SDH每個(gè)通道不管所傳數(shù)字視頻廣播節(jié)目傳輸流的碼率如何變化,都必須占用固定量的網(wǎng)絡(luò)資源,所以造成大量的網(wǎng)絡(luò)資源浪費(fèi),使運(yùn)行費(fèi)用或租金高居不下。IP Over SDH目前尚不支持虛擬專用網(wǎng)VPN和電路仿真;對大規(guī)模的網(wǎng)絡(luò)須處理龐大、復(fù)雜的路由表,而且查找困難,路由信息占用較大的帶寬。
SDH傳輸技術(shù),廣泛應(yīng)用于傳輸領(lǐng)域,它的一系列優(yōu)點(diǎn)非常適合于廣播信號的傳輸。但由于SDH技術(shù)原主要是為傳輸話音和數(shù)據(jù)業(yè)務(wù)而制定的,對視頻而言它還有許多需完善的地方,如使用SDH技術(shù)傳輸廣播電視信號時(shí),要求有較好的時(shí)鐘同步性能和抖動(dòng)性能。網(wǎng)絡(luò)的同步性能差會引起指針調(diào)整,而指針調(diào)整會使彩色電視信號瞬時(shí)變色,網(wǎng)絡(luò)的抖動(dòng)性能不好,會引起解碼器輸出端產(chǎn)生抖動(dòng),引起信號色彩變化。
近年我國開始全面推進(jìn)有線電視從模擬向數(shù)字整體轉(zhuǎn)換,百姓將通過有線數(shù)字電視收聽收看更加豐富多彩的廣播電視節(jié)目,享受多樣化、對象化、個(gè)性化的綜合信息服務(wù)。據(jù)估計(jì),到2005年我國有線數(shù)字電視用戶將達(dá)3000萬,并將于2015年停止模擬電視的播出。
廣播電視數(shù)字化將帶來一場革命,有線電視分配網(wǎng)可傳送的節(jié)目容量,將從現(xiàn)在的50套左右,增加到500套左右,因此大容量的數(shù)字視頻廣播節(jié)目流的長距離傳輸在未來將有很大的需求,而業(yè)界尚無專門遠(yuǎn)距離高效傳輸大容量數(shù)字視頻廣播數(shù)字流的技術(shù)和設(shè)備。
發(fā)明內(nèi)容本發(fā)明的目的就是為了解決以上問題,提供一種大容量的數(shù)字視頻廣播傳輸流按照端口路由分組傳輸?shù)南到y(tǒng)和方法。
為實(shí)現(xiàn)上述目的,本發(fā)明提出一種大容量DVB多節(jié)目TS流傳輸系統(tǒng),包括一級或多級復(fù)接器、一級或多級解復(fù)接器,所述復(fù)接器將多路TS流插入路由信息,復(fù)接為復(fù)合TS流輸出,或轉(zhuǎn)換為光信號流由光路傳輸;所述解復(fù)接器接收所述復(fù)合TS流或光信號流,進(jìn)行解復(fù)接,并根據(jù)路由信息將還原后的源TS流分發(fā)到各個(gè)輸出端口輸出。
上述的大容量DVB多節(jié)目TS流傳輸系統(tǒng),所述復(fù)接器包括復(fù)接ASI輸入處理模塊、復(fù)接輪詢模塊、光口驅(qū)動(dòng)模塊和/或ASI輸出驅(qū)動(dòng)模塊、MCU控制模塊;所述MCU控制模塊用于對其他各模塊進(jìn)行控制;所述復(fù)接ASI輸入處理模塊用于接受ASI碼流的輸入,并將其轉(zhuǎn)換為標(biāo)準(zhǔn)的TS流,插入路由信息,經(jīng)所述復(fù)接輪詢模塊復(fù)用為一路復(fù)合TS流輸出,或經(jīng)所述光口驅(qū)動(dòng)模塊將復(fù)合TS流轉(zhuǎn)換為光信號流輸出到光路中。還包括碼率計(jì)數(shù)模塊,用于對所述ASI輸入模塊各路輸入端口的碼率計(jì)算,和對復(fù)接輸出的總碼率進(jìn)行監(jiān)控。
上述復(fù)接ASI輸入處理模塊包括ASI接口模塊、包同步恢復(fù)模塊、寫RAM控制模塊、雙端口RAM、讀RAM控制模塊;所述ASI接口模塊將ASI流轉(zhuǎn)換為標(biāo)準(zhǔn)TS流,完成物理層同步控制;所述包同步恢復(fù)模塊將前述TS流進(jìn)行包同步恢復(fù)和包長測定、包長的自適應(yīng)調(diào)節(jié);所述寫RAM控制模塊將所述TS流寫入所述RAM的同時(shí),對TS流寫入包括同步頭信息、時(shí)間標(biāo)簽、時(shí)間間隔、包長信息的臨時(shí)擴(kuò)展數(shù)據(jù);所述讀RAM控制模塊讀出所述帶臨時(shí)擴(kuò)展數(shù)據(jù)的TS流,修改路由信息,寫入路由級數(shù),再傳送出去。
上述解復(fù)接器包括解復(fù)接ASI輸入處理模塊或光端輸入處理模塊、輸入緩沖模塊、路由處理模塊、輸出處理模塊;所述解復(fù)接ASI輸入處理模塊接收復(fù)合TS流,并將其中的TS包與對應(yīng)的路由信息分別取出并輸出;所述光端輸入處理模塊接收由所述復(fù)接器發(fā)出的光信號流,轉(zhuǎn)換為復(fù)合TS流,并將其中的TS包與對應(yīng)的路由信息分別取出并輸出;所述路由處理模塊讀取前述路由信息進(jìn)行分析,并根據(jù)路由信息將TS包分發(fā)到各端口按FIFO輸出;所述輸出處理模塊將前述各端口按FIFO輸出的數(shù)據(jù)進(jìn)行輸出碼率分析,并恢復(fù)原始碼流形式進(jìn)行輸出。
上述解復(fù)接器的另一優(yōu)選例包括解復(fù)接ASI輸入處理模塊、光端輸入處理模塊、輸入選擇模塊、輸入緩沖模塊、路由處理模塊、輸出處理模塊;所述輸入選擇模塊用于選擇ASI輸入或光端輸入工作模式;所述解復(fù)接ASI輸入處理模塊接收復(fù)合TS流,并將其中的TS包與對應(yīng)的路由信息分別取出并輸出;所述光端輸入處理模塊接收由所述復(fù)接器發(fā)出的光信號流,轉(zhuǎn)換為復(fù)合TS流,并將其中的TS包與對應(yīng)的路由信息分別取出并輸出;所述路由處理模塊讀取前述路由信息進(jìn)行分析,并根據(jù)路由信息將TS包分發(fā)到各端口按FIFO輸出;所述輸出處理模塊將前述各端口按FIFO輸出的數(shù)據(jù)進(jìn)行輸出碼率分析,并恢復(fù)原始碼流形式進(jìn)行輸出。
上述輸入緩沖模塊包括輸入信號DPRAM寫模塊、輸入緩沖雙口RAM模塊依次連接,所述輸入信號DPRAM寫模塊用于將TS流輸入數(shù)據(jù)轉(zhuǎn)成寫DPRAM時(shí)序,輸入緩沖雙口RAM模塊用于完成對TS信息的存儲。所述輸出處理模塊包括FIFO讀取模塊、輸出TS雙口RAM緩存模塊、輸出恢復(fù)模塊、ASI輸出控制模塊,依次連接;所述FIFO讀取模塊完成數(shù)據(jù)的搬移工作,將數(shù)據(jù)從FIFO送至輸出DPRAM中;所述輸出TS雙口RAM模塊用于對前述輸出TS流進(jìn)行緩存;所述輸出恢復(fù)模塊將要輸出的TS流數(shù)據(jù)存放在DPRAM中,特殊信息存放在DFF中;所述ASI輸出控制模塊將前述內(nèi)部數(shù)據(jù)輸出轉(zhuǎn)換成驅(qū)動(dòng)ASI接口芯片的時(shí)序。
本發(fā)明提出的一種大容量DVB多節(jié)目TS流傳輸方法,其步驟是1)復(fù)接器對ASI碼流進(jìn)行包括TS包的路由信息插入的處理;2)實(shí)現(xiàn)多路TS流的以時(shí)分復(fù)用方式進(jìn)行復(fù)接;3)將經(jīng)復(fù)接輸出的TS流經(jīng)光口驅(qū)動(dòng)模塊轉(zhuǎn)換為光信號碼流輸出;4)經(jīng)解復(fù)接器進(jìn)行帶路由信息和時(shí)鐘信息的TS流解復(fù)接;5)根據(jù)路由信息將TS包分發(fā)到各個(gè)輸出端口處輸出。
上述ASI碼流處理的步驟如下1)接口邏輯完成將ASI碼流轉(zhuǎn)換成標(biāo)準(zhǔn)邏輯接口的TS流;2)包同步恢復(fù)邏輯從標(biāo)準(zhǔn)邏輯接口的TS流中恢復(fù)包同步,同時(shí)完成了包長識別、同步鎖定判別、碼流格式判別等信息識別,寫RAM控制邏輯將其寫入到特定的位置保留下來;3)寫RAM控制邏輯寫入TS包時(shí)間標(biāo)簽信息;4)RAM控制邏輯將雙端口RAM中的兩包TS流數(shù)據(jù)分別讀出,并判別自定義數(shù)據(jù),在此插入路由信息,將TS流和TS流生成的擴(kuò)展字段寫入FIFO。
上述步驟4)中插入路由信息的步驟為判斷輸入碼流的包結(jié)構(gòu),當(dāng)輸入碼流為標(biāo)準(zhǔn)的DVB-TS流時(shí),不需要判別自定義字段同步頭,直接使用臨時(shí)擴(kuò)展字段加入路由信息輸出到FIFO;
當(dāng)輸入碼流包含純粹TS數(shù)據(jù)流和自定義擴(kuò)展數(shù)據(jù)時(shí),則執(zhí)行以下步驟1)利用RAM讀出純粹TS數(shù)據(jù)和后續(xù)的自定義擴(kuò)展數(shù)據(jù);2)在中斷的同步下,分別讀出A塊和純粹TS包數(shù)據(jù),寫入FIFO;3)讀完TS包數(shù)據(jù)之后判別A塊或者B塊的同步頭,如果為有處理標(biāo)志,表示寫入RAM的TS流數(shù)據(jù)已經(jīng)被前面一級的復(fù)接過程處理過,讀RAM邏輯直接修改路由信息即可輸出到FIFO;如果不是自定義同步頭,表示寫入RAM的TS流數(shù)據(jù)沒有被前面一級復(fù)接過程處理過,讀RAM邏輯丟棄此擴(kuò)展數(shù)據(jù),采用臨時(shí)擴(kuò)展字段數(shù)據(jù)A塊或者B塊取代自定義字段,同時(shí)加入路由信息輸出到FIFO。
上述步驟3)TS包插入時(shí)間標(biāo)簽信息的步驟為1、寫RAM控制邏輯記錄每一包同步字到達(dá)時(shí)刻的時(shí)間標(biāo)簽以及兩包同步字之間的時(shí)間間隔;2、根據(jù)包同步恢復(fù)邏輯送來的Sync信號啟動(dòng)寫RAM操作;3、將前述時(shí)間標(biāo)簽信息寫入RAM的臨時(shí)擴(kuò)展數(shù)據(jù)的特定位置。
上述路由修改,由修改路由狀態(tài)機(jī)完成如下步驟1)將當(dāng)前地址的數(shù)據(jù)讀出加1,寫入FIFO,取代原始值,作為當(dāng)前路由級數(shù);2)當(dāng)前地址計(jì)數(shù)器自增1,讀取下一個(gè)路由內(nèi)容,寫入FIFO中;3)判斷當(dāng)前路由級數(shù)是否等于當(dāng)前地址計(jì)數(shù)器減去當(dāng)次復(fù)接的TS流數(shù),如果相等則表示已經(jīng)到了路由最后一級,需要加入該路的路由信息,取代原來讀出的內(nèi)容,寫入FIFO,該路的路由信息由前一級復(fù)接輸出的數(shù)據(jù)判決輸入;4)后面剩余的內(nèi)容填0,直到8個(gè)字節(jié)寫全為止。
傳輸方法過程中,在所述復(fù)合TS流經(jīng)光驅(qū)動(dòng)模塊轉(zhuǎn)換輸出光信號流時(shí),先將高速輸出的數(shù)據(jù)在讀寫單元IOE上加一級觸發(fā)器進(jìn)行鎖存,再輸出到光路,以保證數(shù)據(jù)的穩(wěn)定。
上述解復(fù)接過程包括路由分析,TS數(shù)據(jù)的恢復(fù)和輸出;所述路由分析的方法為1)在DPRAM寫模塊中,在進(jìn)行TS包寫入的同時(shí),將TS包中對應(yīng)的路由信息提取出來,放到路由信息緩沖器中;2)路由處理模塊首先將包的路由級數(shù)進(jìn)行鎖存,然后根據(jù)路由級數(shù)將對應(yīng)的路由輸出端口號鎖存在控制輸出的選擇器選擇端,保證整包數(shù)據(jù)準(zhǔn)確送到輸出端口FIFO中;
3)在輸出路由級數(shù)值時(shí)相應(yīng)(路由端口號或路由級數(shù)?)減1后輸出。
上述TS流的恢復(fù)和輸出過程首先按照輸入緩沖數(shù)據(jù)的形式將數(shù)據(jù)送入雙口RAM中,同時(shí)對應(yīng)的標(biāo)志信息(時(shí)間信息與碼流信息)被送到移位DFF中,對TS包的標(biāo)志信息做預(yù)處理;在輸出處理的模塊中,判斷碼流是否為最末級輸出,如果是,將根據(jù)碼流信息中的包長信息與時(shí)間信息恢復(fù)碼流;如果碼流并不是末級輸出,則以Burst模式進(jìn)行碼流的輸出,在此基礎(chǔ)上在完成碼流速率恢復(fù)的功能;數(shù)據(jù)通過ASI接口芯片的控制模塊送出,完成數(shù)據(jù)的所有處理輸出。
由于采用了以上的方案,在傳輸過程中復(fù)合TS流包含端口路由,采用單根光纖在單一光波長即可照端口路由的分組傳輸大容量DVB節(jié)目碼流。由于直接在時(shí)分復(fù)用的讀寫過程中插入路由信息,在解復(fù)用過程中同時(shí)進(jìn)行路由分析,無須采用復(fù)雜的路由表,占用大量的帶寬,傳輸效率高誤碼低,節(jié)省網(wǎng)絡(luò)資料,降低使用費(fèi)用,設(shè)備維護(hù)簡單,運(yùn)行費(fèi)用低。
在傳輸過程中,復(fù)合TS流還包含TS包到達(dá)的時(shí)間標(biāo)簽,傳輸過程中不改變DVB傳輸流的特性,實(shí)現(xiàn)多路TS流的復(fù)接,解復(fù)接過程,在輸出端再現(xiàn)原輸入端的數(shù)據(jù)流。
在傳輸中,采用多級緩存、鎖存,有效克服輸出數(shù)據(jù)的抖動(dòng),提高數(shù)據(jù)傳輸?shù)馁|(zhì)量。
圖1是本發(fā)明的傳輸系統(tǒng)構(gòu)成示意圖;圖2是本發(fā)明傳輸系統(tǒng)的實(shí)施例結(jié)構(gòu)示意圖;復(fù)接器部分的附圖圖3是復(fù)接器邏輯結(jié)構(gòu)示意圖;圖4復(fù)接ASI輸入處理模塊邏輯結(jié)構(gòu)示意圖;圖5-A是復(fù)接ASI輸入處理模塊的933接口邏輯框圖;圖5-B是933接口輸出的時(shí)序波形圖;圖5-C是雙時(shí)鐘同步時(shí)序示意圖;圖6是包同步恢復(fù)邏輯實(shí)現(xiàn)的框圖;圖7是同步狀態(tài)檢測的狀態(tài)跳轉(zhuǎn)圖8是RAM控制邏輯的內(nèi)部設(shè)計(jì)框圖;圖9讀RAM控制邏輯框圖;圖10讀RAM控制邏輯的狀態(tài)跳轉(zhuǎn)圖;圖11 FIFO的實(shí)現(xiàn)框圖;圖12復(fù)用輪詢模塊的邏輯實(shí)現(xiàn)框圖;圖13 MuxCtrl邏輯的狀態(tài)跳轉(zhuǎn)圖;圖14復(fù)用ASI輸出驅(qū)動(dòng)部分的邏輯實(shí)現(xiàn)框圖;圖15光口驅(qū)動(dòng)輸出數(shù)據(jù)的鎖存示意圖;圖16總體碼率計(jì)數(shù)模塊框圖;圖17端口碼率計(jì)數(shù)框圖;圖18復(fù)接總輸出的碼率計(jì)數(shù)框圖;圖41是雙端口RAM的內(nèi)部地址分配圖;解復(fù)接器部分的附19所示解復(fù)接數(shù)據(jù)流程框圖;圖20解復(fù)接ASI輸入部分設(shè)計(jì)框圖;圖21解復(fù)接輸入緩沖部分結(jié)構(gòu)框圖;圖22路由處理部分框圖;圖23解復(fù)接輸入部分結(jié)構(gòu)框圖;圖24是光口輸入模塊邏輯結(jié)構(gòu)示意圖;圖25輸入數(shù)據(jù)緩沖部分的框圖;圖27輸入信號DPRAM寫模塊結(jié)構(gòu)框圖;圖26路由控制狀態(tài)機(jī)跳轉(zhuǎn)圖;圖28其他一些信號控制邏輯結(jié)構(gòu)示意圖;圖29輸出路由部分框圖;圖30是FIFO狀態(tài)跳轉(zhuǎn)圖;圖31輸出傳輸雙口RAM緩存模塊邏輯結(jié)構(gòu)示意圖;圖32是輸出恢復(fù)模塊的狀態(tài)跳轉(zhuǎn)示意圖;圖33 ASI輸出時(shí)序轉(zhuǎn)換仿真波形圖;圖34 ASI輸入模塊原理框圖;圖35 ASI輸入的8bit包同步恢復(fù)模塊原理圖;圖36 ASI輸入的8bit包同步恢復(fù)模塊仿真波形圖;圖37光纖輸入的包同步恢復(fù)模塊原理圖38輸入選擇模塊邏輯實(shí)現(xiàn)圖;圖39輸入緩沖雙口RAM模塊原理圖;圖40 ASI輸出923控制模塊原理圖;具體實(shí)施方式下面通過具體的實(shí)施例并結(jié)合附圖對本發(fā)明作進(jìn)一步詳細(xì)的描述。
如圖1所示,整個(gè)系統(tǒng)由一級或多級復(fù)接器、一級或多級解復(fù)接器兩大部分構(gòu)成;如圖2所示為本發(fā)明的具體實(shí)施例,本實(shí)施例由二級復(fù)接器、二級解復(fù)接器構(gòu)成,第一級復(fù)接器共有八個(gè),每一個(gè)復(fù)接器8個(gè)ASI高速復(fù)合TS流輸入端口和1個(gè)高速碼流光輸出端口。
第二級復(fù)接器每路ASI碼流口輸入端口可聯(lián)接1個(gè)第一級復(fù)接器,一個(gè)第二級復(fù)接器共可聯(lián)接8個(gè)第一級復(fù)接器,每個(gè)復(fù)接器共有8個(gè)ASI或DS3復(fù)合碼流輸入端口和1個(gè)ASI復(fù)合碼流輸出端口,第一級復(fù)接器的每個(gè)ASI或DS3復(fù)合碼流輸入端口可聯(lián)接1臺常用節(jié)目流TDM復(fù)用器或SDH系統(tǒng)上的一個(gè)DS3端口,每個(gè)端口可輸入6-8套DVB節(jié)目TS流,一臺第一級復(fù)接器一般可輸入64套DVB節(jié)目流,一個(gè)二級復(fù)接器滿配置聯(lián)接8個(gè)一級復(fù)接器后一般可輸入64×8=512套DVB節(jié)目流。
當(dāng)系統(tǒng)所要傳輸?shù)腄VB節(jié)目數(shù)量超過512套時(shí),可將最后一級復(fù)接器輸出的光信號流按照波分復(fù)接的要求配置成不同的波長,則每個(gè)波長最多可傳輸512套DVB節(jié)目,系統(tǒng)總?cè)萘靠缮壍絺鬏擠VB節(jié)目流達(dá)數(shù)千套以上。
反之,一級解復(fù)接器有一個(gè)高速碼流的光接收端口、8個(gè)ASI的高速碼流輸出端口;每臺二級解復(fù)接器的輸入端口與一級復(fù)接器的一個(gè)輸出端口連接,而其8個(gè)輸出端口分別可連接8臺QAM調(diào)制器將信號送入HFC接入網(wǎng)。
復(fù)接器主要完成以下功能實(shí)現(xiàn)8路TS流的時(shí)分復(fù)用方式進(jìn)行復(fù)接;進(jìn)行TS包的時(shí)間信息插入,用于解復(fù)接器恢復(fù)碼流;進(jìn)行TS包的路由信息插入,用于解復(fù)接器的分流操作;將各路復(fù)接狀態(tài)反饋到MCU接口,同時(shí)通過MCU接口控制復(fù)接器的內(nèi)部狀態(tài)。其輸入?yún)?shù)指標(biāo)輸入接口DVB-ASI標(biāo)準(zhǔn)輸入流8路,兼容突發(fā)和恒定時(shí)鐘模式,BNC75歐姆物理接口;輸入包結(jié)構(gòu)204或者188字節(jié)/包自適應(yīng);輸入節(jié)目流MPEG-2標(biāo)準(zhǔn)的TS流,SCTS或者M(jìn)CTS格式;輸入流的碼率0~216Mbps。
輸出參數(shù)指標(biāo)輸出接口DVB-ASI標(biāo)準(zhǔn)輸出流1路,突發(fā)時(shí)鐘模式,BNC75歐姆物理接口。光纖接口輸出一路,由甲方提供方案;輸出包結(jié)構(gòu)204字節(jié)/包,后16字節(jié)為自定義擴(kuò)展;輸出節(jié)目流MPEG-2標(biāo)準(zhǔn)的TS流,SCTS或者M(jìn)CTS格式;輸出流的碼率ASI216Mbps;光纖1.5Gbps。
功能指標(biāo)實(shí)現(xiàn)多路TS流的復(fù)接,包括TS包到達(dá)的時(shí)間標(biāo)簽插入,端口路由插入等;將多路TS流復(fù)接到一路TS流輸出;PCR域抖動(dòng)不超過Base域的1字段;通過面板可以設(shè)置相關(guān)出入輸出參數(shù)等等。
以下對復(fù)接器的結(jié)構(gòu)構(gòu)架進(jìn)行詳述1、邏輯部分分為復(fù)接ASI輸入處理、復(fù)用輪詢、光口驅(qū)動(dòng)邏輯、ASI輸出邏輯、碼率統(tǒng)計(jì)、MCU控制以及各種數(shù)據(jù)緩存FIFO等10個(gè)部分。復(fù)接器整體邏輯框圖如圖3所示1.1復(fù)接ASI輸入部分處理(InputASI)模塊功能ASI輸入處理部分主要完成對接口芯片時(shí)序轉(zhuǎn)換、包同步恢復(fù)與包長識別、時(shí)間間隔標(biāo)簽的插入、路由信息的插入、雙端口RAM的寫入以及讀出控制。
ASI輸入處理部分結(jié)構(gòu)比較龐大,主要完成復(fù)接系統(tǒng)在復(fù)接前的所有處理工作。這個(gè)部分對ASI碼流處理的順序如下第一步933接口邏輯完成將ASI碼流轉(zhuǎn)換成標(biāo)準(zhǔn)邏輯接口的TS流,此邏輯含有雙時(shí)鐘FIFO,用于將不同的CY933芯片的27MHz時(shí)鐘轉(zhuǎn)換為內(nèi)部統(tǒng)一的54MHz時(shí)鐘操作。
第二步包同步恢復(fù)邏輯從標(biāo)準(zhǔn)邏輯接口的TS流中恢復(fù)包同步,同時(shí)完成了包長識別、同步鎖定判別、碼流是否為Burst方式等判別,用于解復(fù)接器恢復(fù)TS碼流。這些信息會在寫RAM控制邏輯步驟里面被寫入到特定的位置保留下來。
第三步寫RAM控制邏輯繼續(xù)計(jì)算每個(gè)TS包到達(dá)的時(shí)間和相鄰兩個(gè)TS包的間隔記錄下來,寫入特定的位置保留下來。
第四步讀RAM控制邏輯將雙端口RAM中的兩包TS流數(shù)據(jù)分別讀出,同時(shí)判別16個(gè)擴(kuò)展字段是否為自定義數(shù)據(jù),加入路由信息,將TS流和16字節(jié)的擴(kuò)展字段寫入后面的復(fù)接前的FIFO。
設(shè)計(jì)中的注意事項(xiàng)第一雙端口RAM留有兩包TS包的空間,分別為256字節(jié)。前204或者188用來緩存TS包(最大到0xCC),后面從208(0xD0)開始的16個(gè)字節(jié)為臨時(shí)擴(kuò)展字段。
第二不管TS流為標(biāo)準(zhǔn)的TS流還是非標(biāo)(由于復(fù)接級聯(lián)產(chǎn)生的)TS流,也不管包長是188或者204,都寫入前204空間的緩沖區(qū)。寫RAM控制邏輯不修改原碼流中的任何信息。
第三寫RAM控制邏輯將前面包同步恢復(fù)邏輯模塊產(chǎn)生各種標(biāo)準(zhǔn)以及自己計(jì)算的包時(shí)間間隔信息寫入后面從208(0xD0)開始的16字節(jié)臨時(shí)擴(kuò)展字段,格式與自定義擴(kuò)展字段協(xié)議一樣。
第四讀RAM控制邏輯通過寫RAM控制邏輯的中斷申請,以乒乓方式從雙端口RAM中讀出TS包數(shù)據(jù),如果是188字節(jié)每包的結(jié)構(gòu),直接采用208后的臨時(shí)擴(kuò)展字段的16個(gè)字節(jié)將包長擴(kuò)展到204字節(jié)每包的結(jié)構(gòu)寫入后續(xù)的FIFO中;如果是204字節(jié)每包的結(jié)構(gòu),則需要判別188后的16字節(jié)是否為自定義協(xié)議的擴(kuò)展字段,如果不是的話,也采用208后的臨時(shí)擴(kuò)展字段取代原碼流的16字節(jié)RS校驗(yàn)字段輸出到后續(xù)FIFO中,如果188后的16字節(jié)是自定義協(xié)議的擴(kuò)展字段的話,表示這個(gè)端口進(jìn)來的碼流為級聯(lián)過的碼流,只需要將路由信息修改了寫入RAM即可,丟棄208后的臨時(shí)擴(kuò)展字段。
1.1.1復(fù)接ASI輸入處理部分的內(nèi)部模塊1.1.1.1,933接口邏輯此模塊完成將接口時(shí)序轉(zhuǎn)換為標(biāo)準(zhǔn)的TS流邏輯接口,同時(shí)完成芯片的物理層同步(RF)控制。
接口邏輯部分為了能夠適應(yīng)接口的時(shí)鐘的Burst輸出需要,碼流數(shù)據(jù)的獲取采用接口芯片提供的時(shí)鐘輸入進(jìn)行采樣,得到的碼流數(shù)據(jù)寫入雙時(shí)鐘FIFO中,在讀出端口使用高倍率系統(tǒng)時(shí)鐘進(jìn)行同步,從而解決了輸入時(shí)鐘與系統(tǒng)異頻異相的問題,933邏輯圖如圖5-A所示。設(shè)計(jì)中要求在CKR上升沿時(shí)候進(jìn)行采用,而且同時(shí)對nRDY、SC/D和RVS狀態(tài)進(jìn)行判別,決定數(shù)據(jù)Q0~Q7的取舍。當(dāng)nRDY=0、SC/D=0、RVS=0時(shí),通過CKR采集進(jìn)來的數(shù)據(jù)才是有效數(shù)據(jù)。
在ASI鎖定(Latch)設(shè)計(jì)中采用局部時(shí)鐘方法設(shè)計(jì)數(shù)據(jù)采集邏輯,以及CY933芯片物理層同步邏輯。通過雙時(shí)鐘FIFO轉(zhuǎn)換成為內(nèi)部統(tǒng)一的54MHz時(shí)鐘同步的邏輯信號。CY7B933輸出的時(shí)序波形圖如圖5-B所示。
設(shè)計(jì)中使用雙時(shí)鐘FIFO解決CKR和內(nèi)部統(tǒng)一的54MHz時(shí)鐘的同步問題,設(shè)計(jì)時(shí)序示意圖如圖5-C所示;54MHz時(shí)鐘驅(qū)動(dòng)的DataEna和Data[7..0]可能延時(shí)了多個(gè)時(shí)鐘周期才出現(xiàn),這是由于FIFO的延時(shí)造成的。
1.1.1.2,包同步恢復(fù)(SyncRecover)此模塊主要負(fù)責(zé)TS流的包同步恢復(fù)和包長測定,同時(shí)給出包長測定的狀態(tài)ModCnt[3..0]用于測量包長自適應(yīng)狀態(tài)。為保證TS流的數(shù)據(jù)層同步,系統(tǒng)實(shí)現(xiàn)了能夠?qū)斎氲腡S流的包長(188字節(jié)/包或者204字節(jié)/包)進(jìn)行自適應(yīng)操作。
包同步恢復(fù)是使用計(jì)數(shù)器來對收到的TS流同步字0x47進(jìn)行計(jì)數(shù),這兩個(gè)計(jì)數(shù)器只有188模和204模,通過計(jì)數(shù)器的最高位進(jìn)行自動(dòng)切換,同時(shí)同步字受同步狀態(tài)機(jī)的鎖定條件約束,當(dāng)以下三種情況同時(shí)成立的時(shí)候表示包同步鎖定并且當(dāng)前位置就是包同步位置188或者204模計(jì)數(shù)器滿模標(biāo)志出現(xiàn)、同步字0x47出現(xiàn)、同步狀態(tài)機(jī)鎖定。
包同步恢復(fù)邏輯實(shí)現(xiàn)的框圖如圖6所示,包同步恢復(fù)邏輯中的同步狀態(tài)檢測模塊實(shí)現(xiàn)整個(gè)同步恢復(fù)的狀態(tài)監(jiān)控和鎖定判別控制。同步狀態(tài)檢測的狀態(tài)跳轉(zhuǎn)通過判別計(jì)數(shù)器模進(jìn)位CntFlag標(biāo)志為和同步字判別SyncByte標(biāo)志位,不同的狀態(tài)下控制不同的跳轉(zhuǎn)來實(shí)現(xiàn)同步狀態(tài)的鎖定檢測。同步狀態(tài)檢測的狀態(tài)跳轉(zhuǎn)如圖7所示。
1.1.1.3,寫RAM控制邏輯(含時(shí)間標(biāo)簽產(chǎn)生)(WriteRam)寫RAM控制邏輯主要完成以下幾個(gè)功能操作1、記錄每一包同步字到達(dá)時(shí)刻的時(shí)間標(biāo)簽以及兩包同步字之間的時(shí)間間隔。
2、根據(jù)包同步恢復(fù)邏輯送來的Sync信號啟動(dòng)寫RAM操作,其中寫RAM操作包括以下兩個(gè)內(nèi)容TS流的數(shù)據(jù)(188或者204字節(jié)每包)、臨時(shí)擴(kuò)展數(shù)據(jù)。
3、將前面模塊送來的格式標(biāo)志和碼流形式標(biāo)志寫入RAM的臨時(shí)擴(kuò)展數(shù)據(jù)的特定位置。
利用同步啟動(dòng)來同步所有寫RAM操作。將當(dāng)時(shí)的接口時(shí)鐘計(jì)數(shù)器的值記錄下來,并將16比特的計(jì)數(shù)器的值記錄下來然后對其清零。如果16比特計(jì)數(shù)器計(jì)數(shù)溢出,則以0xFFFF表示,輸出溢出狀態(tài)。利用同步對RAM的地址計(jì)數(shù)器清零,聯(lián)合數(shù)據(jù)使能DataEna一起控制雙端口RAM的地址發(fā)生和復(fù)位。
使用前16字節(jié)寫入RAM的同時(shí),對臨時(shí)擴(kuò)展數(shù)據(jù)寫入。并將同步頭信息、時(shí)間標(biāo)簽、時(shí)間間隔、包長信息寫入到RAM中。RAM控制邏輯的內(nèi)部設(shè)計(jì)框圖如圖8所示。
1.1.1.4雙端口RAM的地址分配設(shè)計(jì)(DpRam)雙端口RAM的作用是實(shí)現(xiàn)讀寫速度的匹配,同時(shí)實(shí)現(xiàn)寫入讀出不連續(xù),避免FIFO結(jié)構(gòu)的先進(jìn)先出造成數(shù)據(jù)結(jié)構(gòu)不好處理。
雙端口RAM為9比特?cái)?shù)據(jù)寬度,工作在乒乓方式,分為高256字節(jié)和低256字節(jié)。利用Wen和Ren來控制寫入,讀寫的數(shù)據(jù)端口和地址端口均獨(dú)立。
雙端口RAM的內(nèi)部地址分配如圖41所示其中臨時(shí)擴(kuò)展字段的數(shù)據(jù)協(xié)議跟自定義擴(kuò)展字段的數(shù)據(jù)協(xié)議相似,只是不需要加入路由信息。請見下表。
1.1.1.5讀RAM控制邏輯(含路由信息產(chǎn)生)(ReadRam)讀RAM控制邏輯主要完成以下幾個(gè)功能操作第一通過寫RAM模塊的INT和CS信號來讀取雙端口RAM的數(shù)據(jù),以連續(xù)的系統(tǒng)時(shí)鐘速度寫入FIFO中。
第二根據(jù)188后面的16字節(jié)數(shù)據(jù)判別是否需要置換臨時(shí)擴(kuò)展字段的數(shù)據(jù)。
第三加入固定路由信息,寫入DataMux前的FIFO。
利用RAM可以隨意讀出任何地址的數(shù)據(jù)的特定,讀出純粹TS數(shù)據(jù)(188字節(jié))和后續(xù)的16字節(jié)數(shù)據(jù)(自定義擴(kuò)展字段)。
在INT的同步下,讀出0x00~0xBB(A塊)或者0x100~0x1BB(B塊)的純粹TS包數(shù)據(jù),寫入FIFO。
讀完TS包數(shù)據(jù)之后判別0xBC~0xBE(A塊)或者0x1BC~0x1BE(B塊)的同步頭,如果為0x55AA55的話,表示寫入RAM的TS流數(shù)據(jù)已經(jīng)被前面一級的復(fù)接器處理過,后面的16字節(jié)數(shù)據(jù)為自定義擴(kuò)展字段,讀RAM邏輯直接修改路由信息即可輸出到FIFO;如果不是自定義同步頭的話,表示寫入RAM的TS流數(shù)據(jù)沒有被前面一級復(fù)接器處理過,讀RAM邏輯丟棄這16字節(jié)數(shù)據(jù),采用臨時(shí)擴(kuò)展字段數(shù)據(jù)0xD0~0xDF(A塊)或者0x1D0~0x1DF(B塊)取代自定義字段,同時(shí)加入路由信息輸出到FIFO;如果輸入碼流為188字節(jié)每包結(jié)構(gòu)的話,不需要判別自定義字段同步頭,直接使用臨時(shí)擴(kuò)展字段加入路由信息輸出到FIFO。具體狀態(tài)跳轉(zhuǎn)參見3.1.4.5.4的時(shí)序說明。
路由信息格式參見雙端口RAM地址分配的自定義擴(kuò)展字段的數(shù)據(jù)協(xié)議。
讀RAM控制邏輯框圖如圖9所示,地址發(fā)生器可以跟讀RAM控制合成。
讀RAM控制邏輯的狀態(tài)跳轉(zhuǎn)圖如圖10所示,其中修改路由狀態(tài)機(jī)主要完成的工作如下1、將當(dāng)前地址(相對擴(kuò)展字段或者臨時(shí)擴(kuò)展字段偏移地址為8)的數(shù)據(jù)讀出+1,寫入FIFO,取代原始值,這個(gè)值我們稱之為當(dāng)前路由級數(shù)。
2、當(dāng)前地址計(jì)數(shù)器自增1,讀取下一個(gè)路由內(nèi)容,寫入FIFO中。
3、如果當(dāng)前路由級數(shù)等于當(dāng)前地址計(jì)數(shù)器-8的話,表示已經(jīng)到了路由最后一級,需要加入該路的路由信息,取代原來讀出的內(nèi)容,寫入FIFO。該路的路由信息由頂層參數(shù)輸入。
4、剩余的內(nèi)容填0,直到8個(gè)字節(jié)寫全為止。
1.1.1.6,路由設(shè)定邏輯(適用于最后一級光口輸出)(RouteSet)這個(gè)邏輯設(shè)計(jì)用于光口驅(qū)動(dòng)輸出中,主要完成將輸入的204字節(jié)包長的TS數(shù)據(jù)的路由信息修改。將路由級數(shù)進(jìn)行增量,并且加入相應(yīng)的端口號信息。
使用計(jì)數(shù)器對進(jìn)來的TS流計(jì)數(shù),當(dāng)遇到Address=188+8時(shí)候,修改路由級數(shù)增量;當(dāng)遇到Address=188+8+2,加入相應(yīng)的路由端口號。
1.2緩沖FIFO(FIFO18*256)緩沖FIFO作用是將8路經(jīng)過ASI輸入處理的TS流數(shù)據(jù),將數(shù)據(jù)進(jìn)行輪詢復(fù)用操作。FIFO不對包同步進(jìn)行修正和檢測,并作輸出輸入的奇偶校驗(yàn)操作。
利用FPGA內(nèi)嵌的ESB宏塊實(shí)現(xiàn)18比特寬度的FIFO接口。設(shè)定中斷標(biāo)志位為寫滿一包為觸發(fā)復(fù)用條件。
FIFO的每深度的內(nèi)容的比特使用如下表所示
FIFO的實(shí)現(xiàn)框圖如圖11所示。
1.3復(fù)用輪詢部分(DataMux)此模塊主要完成將8路TS流按照最高復(fù)用速度均等機(jī)會輪詢輸出,中間不插入空包操作。
復(fù)用輪詢部分采用16bit寬度進(jìn)行數(shù)據(jù)輪詢操作,以增加復(fù)用總碼率速度。
輪詢策略采用均等中斷相應(yīng)策略,對8路中斷信號進(jìn)行順序輪詢,每輪詢到一個(gè)中斷信號發(fā)出一包,每包數(shù)據(jù)204字節(jié)。
從FIFO口端讀數(shù)據(jù)的時(shí)候同時(shí)判別包同步標(biāo)志位,如果沒有正確同步的話,輪詢模塊進(jìn)入自調(diào)整包同步空讀操作,以保證輸出的每一包數(shù)據(jù)都是嚴(yán)格同步的。
采用多路切換器切換8路中斷信號和輸入碼流,通過輪詢邏輯來集中控制,并且發(fā)出讀取Ren信號。
復(fù)用輪詢模塊的邏輯實(shí)現(xiàn)框圖如圖12所示。MuxCtrl邏輯的狀態(tài)跳轉(zhuǎn)圖如圖13所示。
1.4復(fù)用ASI輸出驅(qū)動(dòng)(含F(xiàn)IFO18X512緩沖)(OutputASI)
ASI輸出驅(qū)動(dòng)部分主要完成將復(fù)用輪詢模塊輸出的16比特TS流數(shù)據(jù)緩存進(jìn)FIFO,從FIFO另外一端以27MByte的速度讀取一包完整數(shù)據(jù),直接到輸出接口芯片中。
將復(fù)用輪詢部分的16比特TS流數(shù)據(jù)寫入輸出FIF0中,當(dāng)FIFO內(nèi)部不為空時(shí)候輸出中斷信號,后面的輸出控制模塊收到中斷信號之后,讀出102個(gè)深度的TS數(shù)據(jù),轉(zhuǎn)換成8比特的27MHz速度的ASI數(shù)據(jù)輸出。
ASI輸出驅(qū)動(dòng)部分的邏輯實(shí)現(xiàn)框圖如圖14所示,1.5光輸出驅(qū)動(dòng)(OpticalOutput)光纖輸出部分主要完成對光纖傳輸驅(qū)動(dòng)芯片的數(shù)據(jù)傳輸控制。同時(shí)帶有驅(qū)動(dòng)芯片和信道檢測功能。
根據(jù)光纖傳輸驅(qū)動(dòng)芯片要求的寫時(shí)序把輸出緩存里的數(shù)據(jù)送到接口芯片完成數(shù)據(jù)傳輸控制;利用光纖傳輸驅(qū)動(dòng)芯片的環(huán)路測試功能(LOOPEN)來檢測1501的外圍電路和可編程邏輯器件FPGA對1501的驅(qū)動(dòng)時(shí)序是否正確;利用光纖傳輸驅(qū)動(dòng)芯片的偽隨機(jī)碼流測試功能(PRBSEN)來發(fā)送偽隨機(jī)碼流供接受端來檢測信道特性。
由于光口的數(shù)據(jù)輸出是54MHz,速度比較高,如果直接用內(nèi)部LE驅(qū)動(dòng)IO,可能會造成數(shù)據(jù)的抖動(dòng),所以要在高速輸出的數(shù)據(jù)上在IOE上加一級觸發(fā)器進(jìn)行鎖存,如圖15所示,以保證數(shù)據(jù)的穩(wěn)定。
1.6碼流統(tǒng)計(jì)(BitratePortCnt、BitrateMuxCnt)該模塊完成對各路輸入端口的碼率計(jì)算(端口選擇通過寄存器來選擇),和對復(fù)接輸出的總碼率進(jìn)行監(jiān)控。
通過InputASI模塊輸出的寫允許信號來進(jìn)行計(jì)數(shù)驅(qū)動(dòng),端口選擇通過串口寄存器設(shè)置??傮w碼率計(jì)數(shù)模塊框圖如圖16所示,端口碼率計(jì)數(shù)框圖如圖17所示,復(fù)接總輸出的碼率計(jì)數(shù)框圖如圖18所示。
1.7 MCU控制(UART)本發(fā)明的系統(tǒng)可以采用MCU對其進(jìn)行控制MCU可以通過串口對復(fù)接器的控制寄存器進(jìn)行寫操作,對狀態(tài)寄存器進(jìn)行讀操作。也就是說,所有的MCU要發(fā)給復(fù)接器的信息都通過控制寄存器寫入,MCU所有的要從復(fù)接器讀取的信息都通過狀態(tài)寄存器來讀取。本模塊就是用來完成與MCU的串口通信。
MCU作為主控器件,而本模塊作為受控器件。MCU可以選擇是寫控制寄存器還是讀狀態(tài)寄存器。但無論是寫控制寄存器還是讀狀態(tài)寄存器,都應(yīng)由主控器件MCU先發(fā)控制信息,再由本模塊作相應(yīng)處理,MCU若是想寫控制寄存器,只要按照約定數(shù)據(jù)格式從串口發(fā)送數(shù)據(jù)即可。
以下是具體的讀寫過程和數(shù)據(jù)格式(寄存器都是4Bit的)定義。
MCU若是想寫控制寄存器,只要按照下列數(shù)據(jù)格式從串口發(fā)送數(shù)據(jù)即可
目的控制寄存器地址(D7....D4)目的控制寄存器數(shù)據(jù)(D3....D0)MCU若是想讀狀態(tài)寄存器,按照以上數(shù)據(jù)格式,在目的控制寄存器地址一欄填入0xf,在目的控制寄存器數(shù)據(jù)一欄填入想讀的狀態(tài)寄存器的地址(見下圖)。
(D7....D4) (D3....D0)而本模塊將會把MCU想讀的狀態(tài)寄存器的數(shù)據(jù)按照下面的格式送回到MCU的串口。
要讀的寄存器的地址(D7....D4) 要讀的寄存器的數(shù)據(jù)(D3.....D0)本串口是采用54MHz的時(shí)鐘設(shè)計(jì)的異步串口,而且波特率、奇偶校驗(yàn)位等均可以由編譯參數(shù)設(shè)定。54MHz的時(shí)鐘經(jīng)過一個(gè)參數(shù)可以設(shè)定的分頻器就可以使串口得到合適的波特率(即BaudRate模塊),詳細(xì)的波特率設(shè)置方法見內(nèi)部模塊中的BaudRate模塊。本串口的校驗(yàn)位一律采用偶校驗(yàn)位,串口的接收模塊和發(fā)送模塊都應(yīng)該可以通過參數(shù)設(shè)定是否需要偶校驗(yàn)位。
解復(fù)接器解復(fù)接完成的主要功能1、光端數(shù)據(jù)接口的糾錯(cuò),路由分析,輸出時(shí)鐘的恢復(fù),TS數(shù)據(jù)的輸出;實(shí)現(xiàn)自定義格式的TS流(帶路由信息和時(shí)鐘信息)使用FPGA進(jìn)行設(shè)計(jì),F(xiàn)PGA實(shí)現(xiàn)數(shù)據(jù)碼流的硬件解復(fù)用。
2、根據(jù)路由信息將TS包分發(fā)到各個(gè)輸出端口處。
3、如果TS包已處于最后一級解復(fù)接器中,則需要將TS包根據(jù)時(shí)鐘信息恢復(fù)源TS流的輸出格式(包括碼率及包長短格式)進(jìn)行輸出。如果TS包不是處于最后一級解復(fù)接狀態(tài),則以Burst格式進(jìn)行輸出到后級解復(fù)接器中。
輸入?yún)?shù)指標(biāo)1、輸入接口單端DVB-ASI標(biāo)準(zhǔn)輸入流1路,數(shù)據(jù)格式為自定義標(biāo)準(zhǔn)格式,兼容Burst和恒定時(shí)鐘模式,BNC75歐姆物理接口。
2、輸入包結(jié)構(gòu)自定義,過光接收與糾錯(cuò)模塊后204或者188字節(jié)/包自適應(yīng)。
3、輸入節(jié)目流MPEG-2標(biāo)準(zhǔn)的TS流,SCTS或者M(jìn)CTS格式。
4、輸入流的碼率0~600Mbps。
輸出參數(shù)指標(biāo)1、輸出接口DVB-ASI標(biāo)準(zhǔn)輸出流8路,兼容Burst和“恢復(fù)”時(shí)鐘模式,BNC75歐姆物理接口。
2、輸出包結(jié)構(gòu)如果已是完全解路由的TS流,根據(jù)源端對應(yīng)端口的輸入包進(jìn)行輸出,否則按照自定義的204數(shù)據(jù)包格式進(jìn)行輸出。
3、輸出流的碼率5~150Mbps。
模塊劃分和功能描述解復(fù)用數(shù)據(jù)流程框圖,如圖19所示。
2.1解復(fù)接ASI接口輸入和光端接口輸入輸入部分完成TS流接入和緩存功能。其中包括ASI接口輸入和光端接口輸入,兩個(gè)接口都要進(jìn)行TS同步信號的恢復(fù)。缺省輸入為ASI,如果ASI輸入不能同步(沒有碼流輸入或碼流輸入不正確)才轉(zhuǎn)為光端輸入。TS信號同步后必須形成17bit(16bit數(shù)據(jù)+1bit同步)的“全TS數(shù)據(jù)寬度”給后級的DPRAM寫模塊。
在DPRAM寫模塊中,首先區(qū)分輸入數(shù)據(jù)是使用ASI輸入抑或光端輸入。同時(shí)產(chǎn)生DPRAM的寫時(shí)序(地址信號與寫信號),另外還要根據(jù)后級對DPRAM讀取的情況判斷是否有溢出的情況,以此控制寫信號,并產(chǎn)生溢出報(bào)警信號。在進(jìn)行TS包寫入的同時(shí),要將TS包中對應(yīng)的路由信息提取出來,放到對應(yīng)的移位緩沖器中,則后級路由處理部分可以直接對路由信息分析,提高處理速度。
解復(fù)接ASI輸入部分設(shè)計(jì)框圖如圖20所示。
2.2輸入數(shù)據(jù)緩沖輸入的TS數(shù)據(jù)經(jīng)過DPRAM模塊后,將會存放在此處。這部分包括兩個(gè)緩存器TS包緩存器和路由信息緩存器,另外有相應(yīng)的標(biāo)志位以表明那些存儲區(qū)中的TS包處理完成或未進(jìn)行處理。TS包緩存器采用DPRAM的完成,路由信息緩存器使用移位寄存器完成。解復(fù)接輸入緩沖部分如圖21所示。
2.3路由處理路由處理是此設(shè)備的關(guān)鍵模塊之一,它主要負(fù)責(zé)對TS包的路由信息進(jìn)行分析,并根據(jù)路由信息將TS包分發(fā)到各條輸出FIFO中,每條FIFO采用一個(gè)M4K ESB,為兩個(gè)TS包的緩存空間。
這個(gè)路由部分是以一個(gè)狀態(tài)機(jī)完成,此模塊的框圖如圖22。
2.4輸出處理輸出處理模塊負(fù)責(zé)將FIFO中的數(shù)據(jù)進(jìn)行輸出碼率分析,并恢復(fù)原始碼流形式進(jìn)行輸出。一個(gè)輸出處理部分分別對應(yīng)一個(gè)輸出。
在碼流恢復(fù)的時(shí)候,首先按照輸入緩沖數(shù)據(jù)的形式將數(shù)據(jù)送入雙口RAM中,同時(shí)對應(yīng)的標(biāo)志信息(時(shí)間信息與碼流信息)被送到移位DFF中,這樣可以將TS包的標(biāo)志信息做預(yù)處理。
在輸出處理模塊中采用與路由分析同樣的策略,用一個(gè)狀態(tài)機(jī)完成碼流恢復(fù),首先判斷碼流是否為最末級輸出,如果是的話,將根據(jù)碼流信息中的包長信息與時(shí)間信息恢復(fù)碼流;如果碼流并不是末級輸出,則以Burst模式進(jìn)行碼流的輸出。
在第一階段,先實(shí)現(xiàn)Burst方式進(jìn)行碼流輸出,在此基礎(chǔ)上在完成碼流速率恢復(fù)的功能。
最后數(shù)據(jù)通過ASI接口芯片923控制模塊送出,完成數(shù)據(jù)的所有處理輸出。
模塊接口3.1輸入部分3.1.1輸入部分如圖23包括ASI輸入模塊和光口輸入模塊。
ASI輸入模塊是負(fù)責(zé)ASI并行信號的接入,并可以將信號做成符合內(nèi)部同步總線規(guī)則的8位位寬的TS數(shù)據(jù)總線時(shí)序。如果有流的話應(yīng)該是一個(gè)204格式的TS包,這里能完成數(shù)據(jù)流的同步,能夠恢復(fù)出包同步信號本模塊使用了原復(fù)用器的設(shè)計(jì)思路。模塊中有兩個(gè)子模塊,分別是ASI物理層及鏈路層上的同步恢復(fù)控制,TS包同步檢測與恢復(fù)。其模塊框圖如圖34所示。
ASI物理層及鏈路層上的同步恢復(fù)控制是根據(jù)同步狀態(tài)標(biāo)志決定是否重鎖923,并對923的輸入作一層轉(zhuǎn)換,將數(shù)據(jù)變成內(nèi)部總線形式。
TS同步恢復(fù)主要是用0x47來同步,準(zhǔn)確地恢復(fù)出包同步信號。
光口輸入模塊是用于將光纖接收芯片輸入的數(shù)據(jù)進(jìn)行解析恢復(fù),產(chǎn)生相應(yīng)的內(nèi)部信號時(shí)序。模塊實(shí)際就是將系統(tǒng)時(shí)鐘和外部時(shí)鐘利用FIFO進(jìn)行數(shù)據(jù)的傳輸。接收的數(shù)據(jù)實(shí)際上是與內(nèi)部總線數(shù)據(jù)一樣的時(shí)序,但是由于芯片的數(shù)據(jù)時(shí)鐘是根據(jù)發(fā)送端的54M恢復(fù),與本地的54M肯定有頻差和相差,因此不能直接用這個(gè)54M直接驅(qū)動(dòng)內(nèi)部大邏輯,必須使用雙時(shí)鐘的FIFO,以外部的54M作為FIFO寫入時(shí)鐘,而本地54M作為FIFO的讀入時(shí)鐘,這樣可以做到數(shù)據(jù)的平滑輸入。
在這里對FIFO數(shù)據(jù)的讀入采用“有就讀”的策略,當(dāng)發(fā)現(xiàn)FIFO中發(fā)現(xiàn)有數(shù)據(jù),則產(chǎn)生Dv信號,并把數(shù)據(jù)讀取后送到后端邏輯中。具體的實(shí)現(xiàn)如下圖24。
在這個(gè)模塊中由于使用外部信號,因此使用外部的接口芯片讀取信號FRxClk作為內(nèi)部的全局時(shí)鐘,并以此對所有與光纖接口芯片相關(guān)的信號進(jìn)行數(shù)據(jù)同步。在實(shí)際調(diào)試中可以消除偶然出現(xiàn)的馬賽克。
ASI輸入的8bit包同步恢復(fù)模塊(InputSyncAsiTs)此模塊的功能做了修改,由于包的同步與933的重鎖有關(guān)系,因此將包的同步放置在ASI輸入模塊中,此模塊只完成8bit->16bit的轉(zhuǎn)換。
在轉(zhuǎn)換過程中,包同步的0x47必須在數(shù)據(jù)的高位,如0x4701。此模塊中將包同步信號引出來。
此模塊相對比較簡單,因?yàn)榇四K只需要使用兩個(gè)8位DFF可以完成,關(guān)鍵是必須ENA和包同步信號的產(chǎn)生。
其原理圖如圖35所示。
其波形仿真圖如圖36所示。
光纖輸入的包同步恢復(fù)模塊(InputSyncOptiTs)此模塊用于對光線輸入數(shù)據(jù)進(jìn)行包同步,產(chǎn)生相應(yīng)的包同步信號。由于此處輸入的數(shù)據(jù)肯定是204長度的數(shù)據(jù),因此這里主要以204作為包長進(jìn)行同步。具體采用的是與ASI輸入同步一樣的邏輯,只不過是做了一定簡化。
對ASI輸入同步模塊進(jìn)行簡化,具體框圖如圖37所示。
輸入選擇模塊輸入選擇模塊是將輸入數(shù)據(jù)進(jìn)行解散復(fù)用、輸出,它有兩個(gè)輸入ASI輸入和光纖輸入。缺省是ASI輸入,在配置后可以使用光纖輸入。此模塊完成ASI輸入和光纖輸入進(jìn)行選擇輸入。此模塊比較簡單,直接采用一個(gè)MUX模塊就可以了。此模塊針對三組信號進(jìn)行數(shù)據(jù)復(fù)用,非別對應(yīng)有復(fù)用模塊。其邏輯實(shí)現(xiàn)圖如圖38。
3.2輸入數(shù)據(jù)緩沖輸入數(shù)據(jù)緩沖部分的框圖如圖25數(shù)據(jù)緩沖部分接口內(nèi)部模塊包括3.2.1輸入信號DPRAM寫模塊(InputDpramWrite),如圖27,此模塊是將TS流輸入數(shù)據(jù)轉(zhuǎn)成寫DPRAM時(shí)序的模塊,除了有對應(yīng)多的數(shù)據(jù)線外,還有專門的地址線,同時(shí)要產(chǎn)生后端DPRAM的數(shù)據(jù)情況。因?yàn)楹蠖说腄PRAM采用乒乓模式,兩塊DPRAM空間輪換使用。
模塊保證碰到幀同步信號,必須將同步對應(yīng)的同步寫入到RAM的對應(yīng)地址空間中,也就是說一個(gè)包(204Bytes=102words)將放在0x00-0x66或0x80-0xE6中。
在數(shù)據(jù)進(jìn)行傳遞的同時(shí),此模塊將會進(jìn)行DPRAM存取標(biāo)志的更新,這里將有兩個(gè)全局標(biāo)志,它的置1端接在此模塊中,清0端接在后端讀取DPRAM模塊(路由處理模塊)中。在這個(gè)模塊中,它不保證數(shù)據(jù)過快產(chǎn)生的沖突,如果需要檢測的話,還要做另外一個(gè)模塊進(jìn)行判斷。
此模塊關(guān)鍵點(diǎn)就是速度問題,一定要在數(shù)據(jù)輸入的時(shí)候產(chǎn)生正確地址寫入,另外當(dāng)數(shù)據(jù)寫入是但是RAM中對應(yīng)的模塊仍然有未處理的數(shù)據(jù),則數(shù)據(jù)采用相應(yīng)的策略處理,針對以上的速度問題,必須認(rèn)真考慮此模塊與路由處理模塊(將數(shù)據(jù)緩沖DPRAM中數(shù)據(jù)讀走的模塊)的設(shè)計(jì)。此模塊中使用一個(gè)狀態(tài)機(jī)進(jìn)行處理,此狀態(tài)機(jī)保證每個(gè)系統(tǒng)時(shí)鐘周期處理一個(gè)數(shù)據(jù)。
在寫完路由數(shù)據(jù)的時(shí)候?qū)pRam標(biāo)志置1,表示此DpRam塊已使用。路由處理將此塊數(shù)據(jù)送完后,將此標(biāo)志清0。
3.2.2輸入緩沖雙口RAM模塊(InputTsBuf)此模塊完成對TS信息的存儲,主要使用FPGA內(nèi)部的DPRAM庫。由于考慮到路由數(shù)據(jù)是放在包的末尾,因此采用乒乓模式,將DPRAM分成兩個(gè)塊,進(jìn)行時(shí)分復(fù)用。對于數(shù)據(jù),采用類FIFO模式。
由于用于Ts存儲的DPRAM模塊(InputTsBuf)與用于存儲路由信息的路由信息移位存儲器模塊(InputTsRouterBuf)用途上非常相近,而且兩者的耦合性(與前后模塊)非常強(qiáng),另外兩個(gè)模塊也相對比較簡單。綜合以上原因,現(xiàn)將兩個(gè)模塊合并,因此這個(gè)部分只有一個(gè)子模塊,統(tǒng)稱為輸入數(shù)據(jù)緩沖模塊(InputBufModule)。
此模塊中分兩個(gè)部分①數(shù)據(jù)存儲DPRAM模塊(InputTsBuf);②路由信息移位存儲器模塊(InputTsRouterBuf)。
模塊設(shè)計(jì)主要采用Altera公司提供的LPM庫,包括移位寄存器DFF和DPRAM。
DPRAM模塊使用標(biāo)志采用兩個(gè)DFF完成,分別描述兩個(gè)DPRAM和路由信息的使用情況,輸入信號DPRAM寫模塊可以將此DFF置1,路由處理模塊將此DFF標(biāo)志清0。
TS數(shù)據(jù)存儲采用DPRAM實(shí)現(xiàn),由于考慮到幀同步標(biāo)志,因此采用17bit寬的DPRAM模塊。設(shè)計(jì)圖如圖39。
3.3路由處理部分(RouterDealModule)路由部分的框圖如圖22,路由信息處理模塊(RouterDeal)路由處理模塊是本系統(tǒng)關(guān)鍵模塊之一。此模塊通過對路由信息的分析,將TS包發(fā)送至對應(yīng)的輸出模塊中(FIFO)。
在前一模塊中,TS整包數(shù)據(jù)放置在DPRAM中,使用乒乓模式使用DPRAM,類似的方式,使用兩組DFF用于存取包中的路由信息,這樣可以保證路由信息提前分析。減少包的等待。
此模塊首先將包的路由級數(shù)進(jìn)行鎖存,然后根據(jù)路由級數(shù)將對應(yīng)的路由輸出端口號鎖存在控制輸出的選擇器選擇端,這樣可以保證整包數(shù)據(jù)準(zhǔn)確送到輸出端口FIFO中。最后,在輸出路由級數(shù)值時(shí)減1后輸出。
此模塊主要由一個(gè)狀態(tài)機(jī)完成控制路由信息的處理,包括讀RAM和寫FIFO的控制。其狀態(tài)機(jī)跳轉(zhuǎn)圖如圖26,在Idle和WaitingReady兩個(gè)狀態(tài)不寫FIFO,在其他狀態(tài)中寫FIFO,在狀態(tài)中海產(chǎn)生其他控制信號,如對路由信息的鎖存,高位地址的變換等。
其他一些信號控制如圖28所示。
3.4輸出處理部分(OutputModule)
輸出處理路由部分的框圖如圖29FIFO讀取模塊(OutputTsFifoRead)此模塊完成數(shù)據(jù)的搬移工作,將數(shù)據(jù)從FIFO送至輸出DPRAM中。首先檢測輸出DPRAM中是否有可用空間(整個(gè)Block),如果有空余空間,則開始判斷FIFO中是否有數(shù)據(jù),如果有數(shù)據(jù)的話就將FIFO中的數(shù)據(jù)搬到DPRAM空閑的Block中。
本模塊大體結(jié)構(gòu)與輸入寫DPRAM模塊的功能類似,例外加上對FIFO數(shù)據(jù)的判斷和讀取的控制狀態(tài)機(jī),將FIFO中的數(shù)據(jù)送到輸出DPRAM中,另外將碼流信息、時(shí)間信息和路由信息都放到另外的寄存器中,這樣可以保證數(shù)據(jù)可以提前得到分析。
此模塊由一個(gè)狀態(tài)機(jī)完成控制,狀態(tài)跳轉(zhuǎn)圖如圖30這個(gè)狀態(tài)機(jī)主要控制FifoReadEna信號、RamWriteEna信號和SpecialDataWriteEna信號,分別是對FIFO的讀取、DPRAM的寫和特殊信息的寫信號。
輸出TS雙口RAM緩存模塊(OutputTsBuf)如圖31,此模塊用于對輸出TS流進(jìn)行緩存,由于TS包中特殊信息(路由信息、包信息、時(shí)間信息)都是后置的,因此必須將TS包整包進(jìn)行緩存,同時(shí)將特殊信息存放在可以直接讀取的寄存器中,這樣可以保證特殊信息的提前分析。這里采用乒乓方式的DPRAM進(jìn)行處理。具體方式與輸入TS緩沖模塊類似,不過,這里有更多的數(shù)據(jù)進(jìn)行分析,采用64bit的數(shù)據(jù)進(jìn)行特殊信息的存儲。
模塊框圖如下圖29此模塊的設(shè)計(jì)思路與輸入緩沖模塊是一樣的,對于普通的TS數(shù)據(jù)使用DPRAM存儲,對于特殊信息,采用DFF進(jìn)行存儲。DPRAM和DFF都采用乒乓模式。
輸出恢復(fù)模塊(OutputTsRecover)將要輸出的TS流數(shù)據(jù)存放在DPRAM中,特殊信息存放在DFF中。此模塊就是根據(jù)DFF中的特殊信息對TS流數(shù)據(jù)進(jìn)行恢復(fù),如果TS流不是最末級輸出則直接采用Burst模式輸出,不管時(shí)間信息;如果TS流輸出已經(jīng)最末級輸出,則根據(jù)TS特殊信息恢復(fù)TS包,如204/188包格式、是否Burst模式、TS包的時(shí)間長度。
這里要使用光復(fù)接器對TS包進(jìn)行的打包數(shù)據(jù),其具體數(shù)據(jù)格式如下表。
此模塊的設(shè)計(jì)模式如前面的讀DPRAM模塊類似,讀取一個(gè)Word然后分兩次發(fā)送,每次發(fā)送一個(gè)Byte。在輸出的時(shí)候有三種模式選擇1、末級Burst輸出;2、末級非Burst輸出,根據(jù)TS時(shí)間標(biāo)簽和包信息恢復(fù)TS流;3、中間級Burst輸出。
每一個(gè)輸出模式對應(yīng)有一個(gè)輸出狀態(tài)流程控制。具體狀態(tài)跳轉(zhuǎn)圖如圖32。在進(jìn)行輸出判斷的時(shí)候,有幾個(gè)計(jì)數(shù)器進(jìn)行控制輸出包字節(jié)計(jì)數(shù)器、輸出碼率調(diào)整計(jì)數(shù)器。
ASI輸出923控制模塊(Output923Control)由于系統(tǒng)時(shí)鐘使用的是倍頻時(shí)鐘(相對于接口),而在輸出接口芯片923使用27M時(shí)鐘,因此必須設(shè)計(jì)一個(gè)模塊完成時(shí)序轉(zhuǎn)換,將內(nèi)部數(shù)據(jù)輸出轉(zhuǎn)換成驅(qū)動(dòng)ASI接口芯片的時(shí)序。
此模塊技術(shù)關(guān)鍵點(diǎn)在時(shí)鐘的轉(zhuǎn)換,由于內(nèi)部是54MHz,而輸出給923的是54MHz做了分頻的27MHz,這兩部分必須采用很好的策略進(jìn)行數(shù)據(jù)的同步采集。
模塊中,仍然使用54MHz作為系統(tǒng)時(shí)鐘,在輸出的時(shí)候?qū)ataValid信號進(jìn)行延長,從輸入的1個(gè)54M長度變成2個(gè)54MHz的長度,然后再用27MHz信號作為采數(shù)允許信號,這樣可以保證數(shù)據(jù)與27M時(shí)鐘同步。具體設(shè)計(jì)圖如下圖40。
權(quán)利要求
1.一種大容量DVB多節(jié)目TS流傳輸系統(tǒng),其特征是包括一級或多級復(fù)接器、一級或多級解復(fù)接器,所述復(fù)接器將多路TS流插入路由信息,復(fù)接為復(fù)合TS流輸出,或轉(zhuǎn)換為光信號流由光路傳輸;所述解復(fù)接器接收所述復(fù)合TS流或光信號流,進(jìn)行解復(fù)接,并根據(jù)路由信息將還原后的源TS流分發(fā)到各個(gè)輸出端口輸出。
2.根據(jù)權(quán)利要求1所述的大容量DVB多節(jié)目TS流傳輸系統(tǒng),其特征是所述復(fù)接器包括復(fù)接ASI輸入處理模塊、復(fù)接輪詢模塊、光口驅(qū)動(dòng)模塊和/或ASI輸出驅(qū)動(dòng)模塊、MCU控制模塊;所述MCU控制模塊用于對其他各模塊進(jìn)行控制;所述復(fù)接ASI輸入處理模塊用于接受ASI碼流的輸入,并將其轉(zhuǎn)換為標(biāo)準(zhǔn)的TS流,插入路由信息,經(jīng)所述復(fù)接輪詢模塊復(fù)用為一路復(fù)合TS流輸出,或經(jīng)所述光口驅(qū)動(dòng)模塊將復(fù)合TS流轉(zhuǎn)換為光信號流輸出到光路中。
3.如權(quán)利要求2所述的大容量DVB多節(jié)目TS流傳輸系統(tǒng),其特征是所述復(fù)接ASI輸入處理模塊包括ASI接口模塊、包同步恢復(fù)模塊、寫RAM控制模塊、雙端口RAM、讀RAM控制模塊;所述ASI接口模塊將ASI流轉(zhuǎn)換為標(biāo)準(zhǔn)TS流,完成物理層同步控制;所述包同步恢復(fù)模塊將前述TS流進(jìn)行包同步恢復(fù)和包長測定、包長的自適應(yīng)調(diào)節(jié);所述寫RAM控制模塊將所述TS流寫入所述RAM的同時(shí),對TS流寫入包括同步頭信息、時(shí)間標(biāo)簽、時(shí)間間隔、包長信息的臨時(shí)擴(kuò)展數(shù)據(jù);所述讀RAM控制模塊讀出所述帶臨時(shí)擴(kuò)展數(shù)據(jù)的TS流,修改路由信息,寫入路由級數(shù),再傳送出去。
4.如權(quán)利要求1-3中任一項(xiàng)所述的大容量DVB多節(jié)目TS流傳輸系統(tǒng),其特征是所述解復(fù)接器包括解復(fù)接ASI輸入處理模塊或光端輸入處理模塊、輸入緩沖模塊、路由處理模塊、輸出處理模塊;所述解復(fù)接ASI輸入處理模塊接收復(fù)合TS流,并將其中的TS包與對應(yīng)的路由信息分別取出并輸出;所述光端輸入處理模塊接收由所述復(fù)接器發(fā)出的光信號流,轉(zhuǎn)換為復(fù)合TS流,并將其中的TS包與對應(yīng)的路由信息分別取出并輸出;所述路由處理模塊讀取前述路由信息進(jìn)行分析,并根據(jù)路由信息將TS包分發(fā)到各端口按FIFO輸出;所述輸出處理模塊將前述各端口按FIFO輸出的數(shù)據(jù)進(jìn)行輸出碼率分析,并恢復(fù)原始碼流形式進(jìn)行輸出。
5.如權(quán)利要求1-3中任一項(xiàng)所述的大容量DVB多節(jié)目TS流傳輸系統(tǒng),其特征是所述解復(fù)接器包括解復(fù)接ASI輸入處理模塊、光端輸入處理模塊、輸入選擇模塊、輸入緩沖模塊、路由處理模塊、輸出處理模塊;所述輸入選擇模塊用于選擇ASI輸入或光端輸入工作模式;所述解復(fù)接ASI輸入處理模塊接收復(fù)合TS流,并將其中的TS包與對應(yīng)的路由信息分別取出并輸出;所述光端輸入處理模塊接收由所述復(fù)接器發(fā)出的光信號流,轉(zhuǎn)換為復(fù)合TS流,并將其中的TS包與對應(yīng)的路由信息分別取出并輸出;所述路由處理模塊讀取前述路由信息進(jìn)行分析,并根據(jù)路由信息將TS包分發(fā)到各端口按FIFO輸出;所述輸出處理模塊將前述各端口按FIFO輸出的數(shù)據(jù)進(jìn)行輸出碼率分析,并恢復(fù)原始碼流形式進(jìn)行輸出。
6.一種大容量DVB多節(jié)目TS流傳輸方法,其步驟是1)復(fù)接器對ASI碼流進(jìn)行包括TS包的路由信息插入的處理;2)實(shí)現(xiàn)多路TS流的以時(shí)分復(fù)用方式進(jìn)行復(fù)接;3)將經(jīng)復(fù)接輸出的TS流經(jīng)光口驅(qū)動(dòng)模塊轉(zhuǎn)換為光信號碼流輸出;4)經(jīng)解復(fù)接器進(jìn)行帶路由信息和時(shí)鐘信息的TS流解復(fù)接;5)根據(jù)路由信息將TS包分發(fā)到各個(gè)輸出端口處輸出。
7.如權(quán)利要求6所述的傳輸方法,其特征是,所述ASI碼流處理的步驟如下1)接口邏輯完成將ASI碼流轉(zhuǎn)換成標(biāo)準(zhǔn)邏輯接口的TS流;2)包同步恢復(fù)邏輯從標(biāo)準(zhǔn)邏輯接口的TS流中恢復(fù)包同步,同時(shí)完成了包長識別、同步鎖定判別、碼流格式判別等信息識別,寫RAM控制邏輯將其寫入到特定的位置保留下來;3)寫RAM控制邏輯寫入TS包時(shí)間標(biāo)簽信息;4)RAM控制邏輯將雙端口RAM中的兩包TS流數(shù)據(jù)分別讀出,并判別自定義數(shù)據(jù),在此插入路由信息,將TS流和TS流生成的擴(kuò)展字段寫入FIFO。
8.如權(quán)利要求7所述的傳輸方法,其特征是,所述步驟4)插入路由信息的步驟為判斷輸入碼流的包結(jié)構(gòu),當(dāng)輸入碼流為標(biāo)準(zhǔn)的TS數(shù)據(jù)流時(shí),不需要判別自定義字段同步頭,直接使用臨時(shí)擴(kuò)展字段加入路由信息輸出到FIFO;當(dāng)輸入碼流包含純粹TS數(shù)據(jù)流和自定義擴(kuò)展數(shù)據(jù)時(shí),則執(zhí)行以下步驟1)利用RAM讀出純粹TS數(shù)據(jù)和后續(xù)的自定義擴(kuò)展數(shù)據(jù);2)在中斷的同步下,分別讀出雙端口RAM的A塊和純粹TS包數(shù)據(jù),寫入FIFO;3)讀完TS包數(shù)據(jù)之后判別A塊或者B塊的同步頭;如果為有處理標(biāo)志,表示寫入RAM的TS流數(shù)據(jù)已經(jīng)被前面一級的復(fù)接過程處理過,讀RAM邏輯直接修改路由信息即可輸出到FIFO;如果不是自定義同步頭,表示寫入RAM的TS流數(shù)據(jù)沒有被前面一級復(fù)接過程處理過,讀RAM邏輯丟棄此擴(kuò)展數(shù)據(jù),采用臨時(shí)擴(kuò)展字段數(shù)據(jù)A塊或者B塊取代自定義字段,同時(shí)加入路由信息輸出到FIFO。
9.如權(quán)利要求8所述的傳輸方法,其特征是,所述步驟3)TS包插入時(shí)間標(biāo)簽信息的步驟為1、寫RAM控制邏輯記錄每一包同步字到達(dá)時(shí)刻的時(shí)間標(biāo)簽以及兩包同步字之間的時(shí)間間隔;2、根據(jù)包同步恢復(fù)邏輯送來的Sync信號啟動(dòng)寫RAM操作;3、將前述時(shí)間標(biāo)簽信息寫入RAM的臨時(shí)擴(kuò)展數(shù)據(jù)的特定位置。
10.如權(quán)利要求8所述的傳輸方法,其特征是,所述路由修改,由修改路由狀態(tài)機(jī)完成如下步驟1)將當(dāng)前地址的數(shù)據(jù)讀出加1,寫入FIFO,取代原始值,作為當(dāng)前路由級數(shù);2)當(dāng)前地址計(jì)數(shù)器自增1,讀取下一個(gè)路由內(nèi)容,寫入FIFO中;3)判斷當(dāng)前路由級數(shù)是否等于當(dāng)前地址計(jì)數(shù)器減去當(dāng)次復(fù)接的TS流數(shù),如果相等則表示已經(jīng)到了路由最后一級,需要加入該路的路由信息,取代原來讀出的內(nèi)容,寫入FIFO,該路的路由信息由前一級復(fù)接輸出的數(shù)據(jù)判決輸入;4)后面剩余的內(nèi)容填0,直到8個(gè)字節(jié)寫全為止。
11.根據(jù)權(quán)利要求6-10中任一項(xiàng)所述的傳輸方法,其特征是,所述解復(fù)接過程包括路由分析,TS數(shù)據(jù)的恢復(fù)和輸出;所述路由分析的方法為1)在DPRAM寫模塊中,在進(jìn)行TS包寫入的同時(shí),將TS包中對應(yīng)的路由信息提取出來,放到路由信息緩沖器中;2)路由處理模塊首先將包的路由級數(shù)進(jìn)行鎖存,然后根據(jù)路由級數(shù)將對應(yīng)的路由輸出端口號鎖存在控制輸出的選擇器選擇端,保證整包數(shù)據(jù)準(zhǔn)確送到輸出端口FIFO中;3)在輸出路由級數(shù)值時(shí)相應(yīng)路由端口號或路由級數(shù)減1后輸出。
12.根據(jù)權(quán)利要求11所述的傳輸方法,其特征是,所述TS流的恢復(fù)和輸出過程首先按照輸入緩沖數(shù)據(jù)的形式將數(shù)據(jù)送入雙口RAM中,同時(shí)對應(yīng)的標(biāo)志信息(時(shí)間信息與碼流信息)被送到移位DFF中,對TS包的標(biāo)志信息做預(yù)處理;在輸出處理的模塊中,判斷碼流是否為最末級輸出,如果是,將根據(jù)碼流信息中的包長信息與時(shí)間信息恢復(fù)碼流;如果碼流并不是末級輸出,則以Burst模式進(jìn)行碼流的輸出,在此基礎(chǔ)上在完成碼流速率恢復(fù)的功能;數(shù)據(jù)通過ASI接口芯片的控制模塊送出,完成數(shù)據(jù)的所有處理輸出。
全文摘要
本發(fā)明公開一種大容量DVB多節(jié)目TS流傳輸系統(tǒng)及其方法,在傳輸過程中復(fù)合TS流包含TS包到達(dá)的時(shí)間標(biāo)簽、端口路由,僅利用單根光纖在單一光波長即可按照端口路由分組傳輸大容量DVB節(jié)目碼流,傳輸過程中不改變DVB傳輸流的特性,實(shí)現(xiàn)多路TS流的復(fù)接,解復(fù)接過程。
文檔編號H04J14/00GK1617589SQ20041002260
公開日2005年5月18日 申請日期2004年5月19日 優(yōu)先權(quán)日2004年5月19日
發(fā)明者丁澤湘, 周海濱 申請人:深圳市富來科技有限公司