一、序言
隨著數字視頻廣播(DVB)技術的發展,國內開展了相關研究,其中真正研制數字視頻廣播流發射和接收系統的卻很少。為滿足DVB系統發射和接收的需要,基于DSP技術研制了可以進行0~8 Mbps的數字視頻廣播流(DVBS)發射/接收系統,誤碼率低于10-7。
二、系統框圖及流程
為滿足0~8 Mbps的數據處理能力,采用美國TI公司最新DSP處理芯片TMS320VC33-120(以下簡稱VC33)為系統控制及數據處理器,美國 Lucent公司E1/T1收發兩用芯片T7688作為發射/接收系統E1數據接口。E1接口即時分復用TDM方式PCM30/32傳輸,對系統發送端的時鐘同步有較高要求[1]。系統在硬件和軟件共同控制下,將輸入數據流分割為4個標準的E1接口數據。系統總體框圖如圖1所示。
1DVBS發射系統框圖及流程
首先介紹DVBS發射系統數據流形成過程,如圖2所示。發射系統接口電路中,為形成標準DVBS,系統將接口電路中接收到的6 Mbps視頻流、384 kbps音頻流、每188字節包含4字節的TS包頭以及用戶數據復合成傳送流TS。系統在
傳輸中每隔40 ms還插入一個程序參考時鐘PCR,相應TS包頭將增加8個字節,插入PCR后系統速率增加為
在實際中,PES分組包頭將會對視頻和音頻數據增加約1%,當數據送入系統信道之前,數據還需經過擾碼及糾錯編碼,被分成4路分別送入4個E1接口電路。在圖2中,糾錯編碼選用BCH(511,493)碼,經過模2運算可實現糾正2個誤碼。由于糾錯編碼的加入,最后數據率增加為
系統在VC33 的控制下將數據等分為4, 每路TDM輸出的信號為1.662 Mbps,隨后數據在E1接口電路中經加入幀同步頭,聯絡信號及特定的填充字比特后形成標準基群的2.048 Mbps比特流,經E1接口電路變換為HDB3碼后直接送出E1接口。發射系統的具體流程如下:并行DVB流(串行異步DVB數據先經過串并轉換成16位并行數據)送至發射緩存1(FIFO1為4 k×16 bit),VC33判斷緩存1處于半滿后,從緩存1讀取半滿數據量并按照E1格式劃分幀時隙、組幀、添加幀同步頭、復幀同步頭、添加信令等,寫入發射緩存 2(FIFO2為4k×16 bit)。緩存2數據經過16位并行—1路串行—4位并行變換電路,完成4路2.048 Mbps比特流E1分組,經E1接口電路變換為HDB3碼后直接送出E1接口。為避免出現緩存2數據被讀空而緩存1未處于半滿的數據紊亂情況,我們采用 VC33自動添加特定格式的添加字(在接收通道中必須將添加字檢測并剔除)方法處理。DVBS發射系統工作原理框圖如圖3所示,DVBS發射系統實現框圖如圖4所示。
2. DVBS接收系統流程
接收系統是發射系統的逆過程,其各框圖與發射系統框圖基本一致(本文略去)。接收系統流程是:接收變壓器接收4 路E1數據,通過4位并行—1路串行—16位并行電路轉換,送至接收緩存1(FIFO1)。當緩存1處于半滿狀態后,分別通過硬件電路及軟件檢測同步并執行接收主程序,完成去幀同步頭、復幀同步頭、信令及添加的特定比特的填充字工作,還原出并行DVB數據并送至緩存2(數據經過16位并行—1路串行轉換電路,經發驅動電路完成串行異步DVB流的合成),完成并行DVB數據的接收。
三、系統硬件實現
1DSP工作方式的選擇
VC33-120是C3X系列最新產品,指令周期為17 ns,具有32位浮點或24位整數精度,與其它C3X的DSP不同,其片載存取區容量明顯得到增加,有34 kbit×32存儲區,24 bit地址線可以訪問16 M存儲空間,功耗更小,集成了較大的片內存儲區,性價比高,完全可以滿足系統數據處理及控制要求[2~4]。
VC33有MCBL(Microcomputer Boot Loader)和MP(Microprocessor)2種工作方式[3]。MP 方式時,位于地址00H~03FH向量表中為中斷和陷阱服務程序入口地址;MCBL方式時,位于809FC1H~809FFFH向量表中為各自中斷和陷阱服務程序的跳轉指令。MCBL方式是VC33所特有的,可將用戶程序代碼從主處理器(尤其是EPROM或者別的標準存儲系統)引導加載到VC33的 SRAM區中并執行它[3,4]。本系統利用MCBL方式,將程序代碼利用BOOT1_LOADER方式加載到VC33的內部SRAM中而不是固化到外部高速EPROM,既實現了系統高速實時處理控制又降低了成本。為滿足運行程序與存儲數據的需要,我們擴展了外部存儲區,包括2片64 K×16bit SRAM組成64 K×32bit片外存儲區以及128 K×16bit的FLASH ROM。
2數據緩存的設計和控制
在系統設計中,數據緩存的設計無疑是重要的,為滿足VC33高速處理能力,采用IDT公司FIFO高速緩存器IDT7203-15,利用寬度擴展為4kbit×16的數據緩存器。對于發射及接收FIFO分別占用VC33的I/O地址FE0000H和FD0000H,輸入輸出數據利用VC33及ALTERA 公司的EPM7064LS84完成并-串-并轉換、數據緩存的讀、寫信號和復位信號[5,6]。
3.系統并行和串行接口
系統接收或發送TS 流時,要滿足一定的接口規范。接口共有3種:同步并行接口、同步串行接口和異步串行接口。在系統的設計中,為接收并行和串行DVB數據,根據DVB接口規范,我們設計了同步傳輸188byte包的并行和串行接收數據兩種接口。在發射通路中,數據處理控制部分先將差分信號變為不歸零(NRZ)碼,經過 VC33的處理后,完成數據的PCM30/32格式處理及4路E1分組,經過E1接口的發射。接收系統設計與發射系統基本類似,此處略去。
4E1接口設計
T7688是具有4路發射和接收功能的
E1接口芯片,主要特性有:具有接收、驅動、均衡、時鐘/數據恢復、抖動衰減功能;具有能提高靈敏度的片內發射均衡器;可供選擇的發射或接收抖動衰減器;自動發射監視系統[7]。
在實際電路設計中,我們根據微處理器接口特點采取了較為靈活的設計。根據系統設計要求,我們將T7688 的MPMODE和MPMUX管腳接地,T7688工作在模式1并且地址和數據總線非復用。在微處理器接口各控制寄存器的設置中,為允許每個信道響應警報并產生中斷,對寄存器2和3的各通道的信號損失警報屏蔽位無效;寄存器4的軟件復位被禁止,每個信道的發射驅動器的TTIP和TRING 在復位后有效;為利用接收通道的抖動衰減功能,設置T7688寄存器5工作在單路模式下,時鐘/數據恢復功能使能,在發射(接收)通道HDB3零替換編碼(解碼)使能;由于外圍電路采用數字傳輸變壓器T1010,初次級匝數比為1:1.36并使用75 Ω同軸電纜,所以寄存器6~9是設計方式選擇方式2,并將均衡器設置為101格式;寄存器10~15,在系統初始化時按要求置為零。
在設計中,我們還注意到:寄存器4 在初始化時必須第一個被初始化;由于T7688只有一個抖動衰減器,所以只能在發射或接收通道中使用,若同時選擇JAT和JAR,抖動衰減器將被禁止;從 T7688的讀寫時序可以看出有5個時鐘周期的延時,所以在VC33的初始化中必須對VC33的主總線初始化進行相應設置。
四、系統的軟件實現
本系統為收發兩用系統,整個系統必須在VC33的控制下,響應不同處理程序。
發射功能由系統控制處理電路VC33 的中斷0和中斷2程序完成,當前端數據緩存1達到半滿狀態時由硬件產生中斷2信號并響應中斷2程序,完成E1接口格式的幀同步頭、復幀同步頭、信令添加工作;為避免前端數據被讀空而出現數據紊亂的情況,在前端數據緩存2被讀空時產生中斷0信號,隨即系統立即響應中斷0程序(優先級僅次于系統復位信號),完成添加特定格式的填充字工作,在第0或第16時隙時就調用相應的添加幀同步頭、復幀同步頭、信令的子程序,如此反復。有關發射系統中斷0和中斷2以及添加同步頭、信令等軟件流程略。
接收功能則由系統主程序完成,流程如圖5所示。系統首先執行VC33 、T7688各狀態寄存器初始化,在系統硬件電路檢測到幀同步頭后,接收主程序必須在軟件上也保證檢測到四路E1接口的同一個幀同步頭,這樣在硬件和軟件雙重保證下,完成E1接口數據的接收并正確恢復DVB流數據。
最后,我們根據VC33內部結構,采用宏指令編程,添加幀同步頭等固定格式的子程序、根據數據量的大小執行塊循環等方法;為提高程序的執行速度,還在避免流水線沖突、減少判斷指令、解決數據處理速度瓶頸等方面進行了研究,完成軟件優化編程,既減少了規模,又提高了處理效率[8,9]。
五、結論與展望
數字視頻廣播發射/接收系統是數字視頻廣播系統重要組成部分,該系統能實時接收/發射0~8 Mbps的DVB流,充分證明設計思想的可行性。此外,為便于今后提高系統性能,我們在硬件電路中實際設計了8路E1接口,利用編程邏輯器件實現相應外圍數據轉換電路,擴展為0~16Mbps的發射/接收系統。