薛繼霜 張敬坡
(1 天津職業(yè)大學電子信息工程學院 天津 300410)
(2 天津市德力電子儀器有限公司 天津 300113)
數(shù)字電視傳輸流(TS)數(shù)據(jù)信號的接口類型有3 種形式:同步并行接口(SPI)、異步串行接口(ASI)和同步串行接口(SSI)。其中,同步并行接口和異步串行接口形式較常用。這2種接口各有優(yōu)缺點:同步并行接口的優(yōu)點是:接口有11 位有效信號,信號的每一位都是采用差分對形式傳輸,這樣可以提高信號傳輸?shù)目煽啃院涂垢蓴_性,缺點是:連接形式一般采用DB25 接口傳輸,DB25 接口連線多而且復雜,并且傳輸距離短,還容易出現(xiàn)故障。由于同步并行接口是并行11 位信號,處理起來比較簡單且可擴展性強,因此目前數(shù)字電視常用的MPEG-2 解碼器的輸出都是標準的并行11 位信號。異步串行接口的優(yōu)點是:采用串行傳輸,只需要一根同軸電纜線傳輸,連線簡單而且傳輸距離長。缺點是:數(shù)據(jù)傳輸速率比較高,為270 Mb/s,在進行碼率調(diào)整之前,需要對信號進行處理,將ASI接口中的同步字節(jié)刪除,進行串并轉(zhuǎn)換,再做進一步處理,所以說對ASI 信號的處理稍微復雜一些。根據(jù)同步并行接口和異步串行接口的優(yōu)缺點,在實際應用中需要將傳輸信號的形式在SPI 和ASI 之間轉(zhuǎn)換。
同步并行接口(SPI)數(shù)據(jù)格式如圖1 所示,一般來說,同步并行接口數(shù)據(jù)包括一位時鐘信號、8 位數(shù)據(jù)信號、一位數(shù)據(jù)有效信號和一位幀同步信號,分別對應圖1 中的OCLK、DO[7:0]、DEN、PSYNC。有的解調(diào)芯片還附加輸出一個數(shù)據(jù)不可糾錯信號UNCOR,這個數(shù)據(jù)不可糾錯信號UNCOR 的功能和數(shù)據(jù)有效信號DEN 的功能是大同小異的,可以根據(jù)實際需要進行取舍。幀同步信號對應傳輸流數(shù)據(jù)包的同步字節(jié)47 H,數(shù)據(jù)有效信號用來區(qū)分數(shù)據(jù)包的長度為188 個字節(jié)還是204個字節(jié),如圖1 所示。當數(shù)據(jù)包長為188 字節(jié)時,數(shù)據(jù)有效信號一直為高,數(shù)據(jù)信號和幀同步信號都與時鐘信號的上升沿保持同步,在數(shù)據(jù)沒有出錯情況下,此時數(shù)據(jù)不可糾錯信號UNCOR 的功能和數(shù)據(jù)有效信號DEN 的功能是一樣的,當數(shù)據(jù)有錯誤發(fā)生時,數(shù)據(jù)不可糾錯信號UNCOR 輸出有效。
圖1 SPI 數(shù)據(jù)格式
在實際應用中,常用的數(shù)字電視解調(diào)芯片都支持圖1 的格式,方案中選用圖1 的數(shù)據(jù)格式。
異步串行接口的傳輸流(TS)可以有不同數(shù)據(jù)速率,但是傳輸速率是恒定的270 Mbps,因此異步串行接口可以發(fā)送和接收不同速率的MPEG-2 數(shù)據(jù)。方案是應用在數(shù)字電視信號分析儀中,作為儀器本身的一個功能模塊使用,接口選用適用于同軸電纜傳輸?shù)腂NC 接頭,模塊的輸入是SPI 數(shù)據(jù),首先是CPLD 芯片控制FIFO 的數(shù)據(jù)寫入,將SPI 數(shù)據(jù)臨時保存在FIFO 中,以便后期使用,當FIFO 快寫滿的時候,CPLD 控制CY7B923 開始讀取FIFO 中存儲的數(shù)據(jù),CY7B923 的主要作用就是將包同步的數(shù)據(jù)進行8b/10b 轉(zhuǎn)換,然后進行并/ 串轉(zhuǎn)換;在進行并轉(zhuǎn)串時,當要求輸入一個新字,而數(shù)據(jù)源還沒有準備好時,自動插入一個同步字,以達到ASI 的恒定的270M bps 傳輸速率。當CY7B923 讀取FIFO 的數(shù)據(jù)接近FIFO為空時,CPLD 控制CY7B923 停止對FIFO 的讀取操作,此時就是CY7B923 自動插入同步字的時間。最終CY7B923 所形成的串行比特流將通過緩沖/ 驅(qū)動電路,輸出到同軸電纜連接器上。這是DVB 標準中基于同軸電纜的ASI 傳輸系統(tǒng)的傳輸部分的工作原理概述,方案對傳輸部分做了實現(xiàn)。
在方案中,傳輸流由多片MPEG-2 解碼器提供,不同的解碼器分別對應不同的數(shù)字電視制式,主要包括DVB-C、DVB-T、DTMB、VSB 等4 種常用制式。它們均輸出符合SPI標準的并行11 位信號,傳輸流包長度為188 個字節(jié)。在同步并行到異步串行的轉(zhuǎn)換方案中,主要選用CYPRESS 公司CY7B923 芯片、異步FIFO 存儲芯片和ALTERA 公司的可編程邏輯器件實現(xiàn)。
CY7B923 的主要功能是實現(xiàn)數(shù)據(jù)的8 b/10 b 轉(zhuǎn)換、插入同步字和并/ 串變換。異步串行接口的傳輸速率恒定為270 Mbps,而輸入傳輸流的碼率是不同的,所以要用異步FIFO 存儲芯片實現(xiàn)速率匹配,需要對輸入的SPI 數(shù)據(jù)、異步FIFO 和CY7B923 之間的數(shù)據(jù)傳輸進行邏輯控制??紤]到性價比和編程的難易程度,方案采用ALTERA 公司的可編程邏輯器件EPM 240T100,用VHDL 編程實現(xiàn)對它們的邏輯控制。
在方案中,傳輸流格式為188 個字節(jié),因此數(shù)據(jù)有效信號DEN 一直為高,因此CPLD 可以忽略這個信號,只控制接收傳輸流數(shù)據(jù),而不用關(guān)心傳輸流的同步字節(jié),所以幀同步信號PSYNC 也是一樣可以忽略的。CPLD 將接收到的同步并行數(shù)據(jù)以傳輸流時鐘OCLK 寫入異步FIFO,當異步FIFO 達到半滿狀態(tài)時,CPLD 接收到異步FIFO 輸出的半滿信號HF,然后CPLD 給CY7B923 發(fā)出異步FIFO 可讀信號,此時CY7B923就以27 MHz 的速率讀取異步FIFO 中的數(shù)據(jù);當異步FIFO中的數(shù)據(jù)快要被讀空的時候,它會輸出一個PAE(幾乎空)信號,CPLD 接收到該信號后,向CY7B923 發(fā)送異步FIFO 不可讀信號,防止異步FIFO 被讀空。MPEG-2 傳輸碼率的并行最大速度為27/8=3.375 Mbps,而讀FIFO 速率為27 MHz,因此FIFO 不會發(fā)生溢出現(xiàn)象??紤]到有延時的存在,方案選用小容量的異步FIFO 芯片CY7C4285V。CY7B923 在異步FIFO 不可讀時,向ASI 傳輸流中填充同步字節(jié)以維持270 Mbps 的恒定傳輸速率,最后串行數(shù)據(jù)經(jīng)過緩沖/ 驅(qū)動就可以通過同軸電纜傳送出去。功能框圖如圖2 所示。
圖2 ASI 編碼功能框圖
在同步并行SPI 轉(zhuǎn)換成異步串行ASI 的設(shè)計中,直接對SPI 數(shù)據(jù)進行ASI 編碼處理,沒有考慮到誤碼問題的存在,主要是考慮到SPI 數(shù)據(jù)是直接從專用數(shù)字電視MPEG-2 解碼器輸出的,沒有經(jīng)過遠距離傳輸,認為沒有誤碼存在,因而降低了ASI 編碼邏輯控制的復雜度。
方案很好地實現(xiàn)了SPI 到ASI 的轉(zhuǎn)換,CPLD 軟件設(shè)計靈活,為軟件的升級和功能擴展提供了方便,產(chǎn)品模塊面積小,便于安裝,可直接應用于類似功能的需求,為相似應用提供了一個可實現(xiàn)的參考,并且已經(jīng)成功應用于天津市德力電子儀器有限公司的量產(chǎn)機型DS8853Q 中,得到了客戶的認可和好評。
[1]ISO/IEC 13818-1,CODING OF MOVING PICTURES AND ASSOCIATED AUDIO[S],1994.
[2]易 峰,何劍輝,全子一.DVB-C 視頻傳輸接口ASI 的實現(xiàn)[J].電子技術(shù)應用,2004(1):58-59.
[3]趙偉民,趙照,薛麗軍,吳 超,于 軍.基于FPGA 的ASI 信號接收與發(fā)送的實現(xiàn)[J].中國有線電視,2006(21):2069-2071
[4]王飛飛,張雅綺,王書娟.基于FPGA 的DVB-ASI 設(shè)計[J].電子測量技術(shù),2006,29(6):121-122.
[5]廖曉維,朱 紅.應用CPLD 實現(xiàn)ASI-SPI 接口轉(zhuǎn)換的方法[J].中國有線電視,2004(18):74-76.
[6]劉志勇,竇 衡,樊殊昱.基于FPGA 的視頻接口轉(zhuǎn)換實現(xiàn)[J].有線電視技術(shù),2007(6):36-38.