關鍵詞:專用集成電路;數字視頻廣播;直接存儲器訪問
近年來,數字電視在全世界范圍內得到了推廣。計算機與電視是未來家庭中最主要的兩種信息獲取終端。隨著計算機網和廣播電視網的融合,兩種終端也有融合的趨勢,這樣就可以利用計算機接收數字視頻廣播的內容。
數字視頻廣播(DVB)傳輸流(TS)接收計算機插卡主要由兩塊芯片組成:一塊完成TS包的過濾和解擾;另一塊芯片是完成TS包到PCI總線的傳輸。文提出了在現場可編程門陣列(FPGA)上完成上述兩個功能的方案。
為了提高數據的傳輸速率和可靠性,降低產品的成本,在此基礎上,本文介紹的IP over DVB(簡稱IPoD)芯片就是利用單塊芯片來完成DVB傳輸流到計算機系統的過濾和傳輸。
1 軟硬件劃分策略
根據IP over DVB的標準和MPEG2標準系統層的數據規范,IPoD系統的處理層次由低到高分別為物理接口層、傳輸流處理層、數據流層和應用層。IPoD是一個軟硬件協同的復雜系統,軟硬件劃分策略是整個系統芯片設汁中很關鍵的一個步驟,對于系統的整體性能影響巨大。IPoD系統的處理層次和軟硬件劃分結果如圖1所示。
物理接口層完成總線互連,比如Tuner(調諧器)輸出的解調后數據與IPoD芯片的連接接口,PCI總線接口等。傳輸流處理層對DVB的TS包進行處理,包括同步、過濾、解擾等協議處理。以上兩層對實時性要求很高,由硬件實現。
數據流層分為兩個部分,一部分是基本流數據包的處理,對應MPEG2的音視頻數據;另一部分是用于傳輸信息的數據結構。由于這一層需要處理復雜的數據結構,需要大量的緩沖資源,因此需要軟件硬件同時參與處理;同時由于協議處理的速度要求,數據流層也需要芯片內部的處理,所以這一層是軟件和硬件接口的層次。最高層應用層完成MPEG2解碼和各種數據業務的應用,由軟件實現。
2 IPoD芯片硬件結構
IPoD系統硬件的基本結構是基于PCI的內置型計算機插卡,Tuner用來接收天線的數據同時輸出TS包,TS數據通過IPoD芯片傳送到PCI總線,最終傳送到主機。圖2是IPoD系統芯片結構。
由圖2可以看出,白色矩形區域代表IPoD芯片,寬箭頭表示數據通道,窄箭頭表示控制通道。數據流是從Tuner到主機的單向流,Tuner接收到天線的數據,經過解調,送入IPoD芯片的Tunet數據接口緩存;然后數據經過包標志(PID)過濾模塊,獲取需要的TS包;而后數據進入解擾模塊,對加擾的TS包進行解擾;經過解擾后的TS包傳送到DMA接口,通過DMA控制器的處理,TS包經過PCI核被送到PCI總線上,最終傳送到主機的內存中。控制流包括主機對各個硬件模塊的控制和各個硬件模塊對主機的反饋,因此是雙向流。控制流實現的核心是本地總線管理模塊,主機可以用發出命令的方式讀寫PCI總線上的任意地址,PCI核將這一命令傳送到芯片內部,再由從模式控制模塊把讀寫命令傳送到本地總線管理模塊。
2.1 IPoD芯片內部模塊
芯片的內部結構由相應的數據通道,控制通道和外圍接口構成。主要由以下部分組成:
1)Tuner接口和PID過濾模塊
接收并緩存從Tuner進入的數據,用PID過濾電路將輸入數據的PID值與過濾表中的數據相比較,保留符合要求的TS包。
2)通用解擾模塊
通用解擾模塊是按照DVB標準的通用解擾算法設計,輸入的加擾數據經過流解密和塊解密后從塊解密模塊輸出。
3)PCI核和主從模式控制模塊
在IPoD芯片中,集成了Fujitsu公司的PCI核,符合PCl2.2規范。
PCI設備有兩種工作模式:主模式和從模式。當IPoD系統工作在主模式下時,主模式控制模塊提供DMA控制器和PCI核之間的接口,協助DMA控制器完成DMA傳輸。PCI核通過主模式控制模塊完成PCl的寫過程,將數據從芯片送入主機內存。當IPoD系統在從模式下工作時,從模式控制模塊提供PCI核和本地邏輯的接口。PCI核通過從模式控制模塊可以配置DMA的寄存器,也可以讀寫本地總線上的各個模塊。
4)DMA控制器
DMA控制器與主模式控制器和片內FIFO相連接,提供DMA控制邏輯、寄存器和描述符隊列,完成DMA讀寫。針對高帶寬、低延時和大數據量的定長多媒體數據包,設計了基于PCI核的鏈式DMA控制器,由DMA寄存器,描述符FIFO,DMA狀態機和數據通道RAM這4個模塊構成。DMA控制器把系統緩存在FIFO中的一個DMA數據包轉移到數據通道RAM中,并在主模式下負責把數據通道RAM里的數據包通過PCI總線傳送到從設備。
5)本地總線
使用本地總線連接各個模塊,便于主機對各個模塊的讀寫。在主機讀寫芯片內模塊時,IPoD芯片作為一個PCI設備工作