基于ST40GX1與STi5514的交互式數(shù)字電視機頂盒硬件設計
交互式、數(shù)字電視已經從分立器件結構發(fā)展到單芯片,這是數(shù)字大規(guī)模集成電路制造工藝技術進步的結果,也是最大限度降低系統(tǒng)成本的必然要求。單芯片的一般集成有CPU、解復用、音頻視頻解碼、二維圖形處理、編碼和外設端口等模塊。為節(jié)省芯片面積、這些獨立部分是通過總線方式連接在一起的。改進系統(tǒng)的性能,通常是提高CPU的速度、增強二維乃至三維圖形的處理能力、增加外設端口的接口數(shù)目和類別等方面著手,從而從總體上提高系統(tǒng)的交互處理能力。但由于視頻解復用器和音頻視頻解碼器對存取數(shù)據(jù)總線實時性要求嚴格,增加了CPU處理等待時間,形成了所謂的總線瓶頸。有關測試表明,總線瓶頸使得CPU的執(zhí)行指令等待時間達到了76%,這種單純依靠提高CPU性能來克服處理能力不足的方式,并不能提高性價比,而改善總線瓶頸可以通過改進或增加系統(tǒng)互聯(lián)總線來完成,但這必將增加芯片制造中互聯(lián)線的復雜度,從而增加成本。
除了總線瓶頸帶來的問題外,隨著用戶對接入方式多樣性以及圖形圖象處理要求的日益提高,通過電話線回傳的交互式、數(shù)字電視的窄帶接入方式以及有限的計算能力也越來越不能滿足人們的要求,隨著有線HFC網的雙向改造以及與電信網、互聯(lián)網三網合一進程的加速,為用戶加添 CM、等靈活可選的帶寬接入方式以及增加高級2D乃至3D高級圖形處理,便成為機頂盒應用的一個重要方面。
基于GX1與的雙CPU方案
為解決上面提出的問題,設計時可選擇ST公司推出的基于單芯片解碼器和GX1二維圖形處理器的雙處理器,該方案避免了外設模塊倍增帶來的總線擁擠以及解碼實時性要求帶來的等待延遲。STi5541和GX1內部都采用高速先進的STBus來實現(xiàn)互聯(lián),前者負責實時性要求較高的硬件解復用、視頻音頻解碼、與解碼相關聯(lián)的外圍I/O設備控制等。后者負責寬帶交互式應用以及高級圖形處理,兩者之間的高速數(shù)據(jù)通信通過MPX( Periheral Exchange)總線以及存儲映射的郵箱(Mailbox)來進行,通過主頻達赫茲的MPX總線,能直接存取ST40GX1上可高達的DDR 存儲資源。
◇ STi5514的功能特點及接口
STi5514主要用于完成視頻、音頻信號的解壓縮。其內部集成了一個MP@ML標準清晰度的視頻解碼模塊和一個杜比AC-3/AAC/DTS音頻解碼模塊以及 Encoder和 DAC模塊等。內部32位 CPU工作主頻為赫茲在外接V.90的硬件條件下,可以通過電話線進行窄帶交互式應用,如進行基于電話線回傳的視頻點播、低速瀏覽等。
與ST公司早期推出的單芯片解碼器相比,除一般功能接口相同外,其突出特點是:指令和數(shù)據(jù)緩沖都增加了一倍,同時并發(fā)處理三路TS(Transport Stream)流輸入、支持多種解擾模式(包括DVB、DES、ICM、Fast-I),直接支持杜比AC-3/AAC/DTS音頻解碼,提供硬盤電路接口,并直接支持Ultra-DMA66高速數(shù)據(jù)傳送模式的硬盤以實現(xiàn)數(shù)字電視節(jié)目的實時錄制,視頻解碼流可以以ITU-R601-656格式數(shù)據(jù)流輸出或者以復合視頻信號CVBS、分量信號RGB和YUV等不同模擬模式輸出,支持Teletext解碼輸出,同時提供對兩路SIM卡接口。利于擴展銀行卡等高級應用。由于STi5514去掉了1394接口,故需外接1394控制器(如STE422等)來擴展基于1394的視頻輸入。
◇ ST40GX1的功能結構
ST40GX1內部集成有型32位處理器內核, 2D圖象處理,混合模塊以及視頻電路接口邏輯,ST40GX1是交互式應用的處理核心,它包括系統(tǒng)設備和外設兩個方面:
(1)系統(tǒng)設備
ST40GX1的系統(tǒng)設備包括中央處理器(CPU)、用于DSP功能的浮點運算單元/加乘處理單元(FPU/Mac)、存儲管理單元(MMU)以及DMA控制模塊。其中,CPU為32位SuperH ,它采用2通道超標量體系結構,主頻166M赫茲,16位指令定長(Load-Store結構),8KB直接指令緩存,16KB直接操作數(shù)緩存,并帶有一個片上乘法器。而其存儲器則支持4GB的存儲空間,并支持單塊或多塊虛擬內存模式,頁面的大小可以是1KB、4KB、64KB或1MB,此外,它還支持4通道全相關指令ITLB(Instruction Translation Lookaside Buffer)、64通道全相關指令以及操作數(shù)UTLB,同時支持軟件控制的更新算法以及隨機計數(shù)的更新算法,這為32位保護模式下的操作系統(tǒng)提供了完備的硬件平臺,ST40GX1中的通用DMA控制器可支持5個通道的數(shù)據(jù)傳輸,其中4個通道可以用于存儲器到存儲器或存儲器到外設之間的數(shù)據(jù)傳送,另外一個通道為帶緩沖的多路復合通道,同時支持2D塊的搬動以及鏈表操作,片內兩個通道的DMA握手信號和EMI接口信號還可用于MPX總線操作。
(2)外設接口模塊
ST40GX1的外設接口模塊包括通用接口模塊和視頻專用接口模塊,其中通用接口模塊包括兩個與ST40系列處理器兼容的全雙工異步串行通信端口、中斷控制器、符合IEEE1149規(guī)范的調制控制器、實時時鐘、4個用戶可編程的PLL、24位輸入輸出方向可配置的并行I/O口,以及兩個符合V1.1規(guī)范的USB主控制器和收發(fā)器、模擬前端接口MAFE、兩個可配置為支持I2C或SPI總線接口標準的同步串行控制器(SSC0和SSC1)、Teletext輸入接口、兩個使用異步協(xié)議的接口、用于和外部微控制器通信的存儲映射郵箱(Mailbox)、符合PCI2.1規(guī)范的PCI接口控制器、兩路音頻PCM輸入接口和一路PCM輸出接口等;而視頻專用接口及處理模塊則包括字視頻輸入端口和2D圖象處理器,這兩個CCIR601-656視頻輸出端口(DVP0,DVP1)可以同時輸入VCbCr4:2:2格式的視頻數(shù)據(jù),并將其裝入局部存儲器。也可對沒有內嵌同步信號的視頻來根據(jù)SAV/EAV協(xié)議提供外同步信號支持,用戶可以從輸入的視頻圖像中設定視頻捕獲窗口以及活動窗口的子窗口。數(shù)字編碼其(DENC)將數(shù)字視頻流轉換為標準的模擬基帶PAL//信號以及RGB和YUV模擬分量信號,如果在LMI上使用32位的DRAM,則可以獲得RGB24位的數(shù)字視頻流,2D圖象處理器(或圖像塊傳送引擎)擁有兩個2D DMA圖像數(shù)據(jù)輸入源,可完成一整套強大的處理操作,除可完成普通2D圖形加速功能外,還可完成不同圖形格式(RGB/ YUV等)之間的轉換,其中包括塊填充、塊拷貝、異步復合、色彩變換以及2D縮放處理等功能。
基于STi5514和ST40GX1的系統(tǒng)構成
根據(jù)STi5514和ST40GX1的功能特點,圖1給出了本系統(tǒng)的總體結構方案。
◇ 前端解碼部分
由于STi5514內置三路TS流解擾通道,故采用雙路的Turner+STV0297QAM解調器同時解調兩個頻道的基于DVB-C的視頻數(shù)據(jù)傳輸流,充分利用STi5514的硬件解擾、控制處理以及解碼能力,可以實現(xiàn)畫中畫功能,其中Turner可以采用MicroTune的單芯片調諧器以節(jié)省空間和成本,此外,通過外接STE422,對接口輸入提供支持。
◇ 后端解碼部分
后端解碼由STi5541完成,STi5514通過外接8MB共享的完成在信道解調、解復用以及解碼過程中所需要的存儲資源,STi5514通過MPX總線共享位于ST40GX1 EMI接口上的 ,通過ATA接口外接硬盤存儲器以擴展VCR應用。STi5514解碼后的符合ITU-R601_656標準的視頻數(shù)據(jù)通過視頻輸出端口直接輸入到ST40GX1的兩路視頻輸入端口中的DVP0。STi5514向ST40GX1發(fā)送27M赫茲的像素時鐘以及同步信號,以確保STi5514視頻數(shù)據(jù)正確接收。
◇ 圖形處理
當用ST40GX1處理二維圖形時,可先用ST40GX1來接收來自STi5514的解碼視頻流,并經過插值、色彩空間坐標變換后,與網頁瀏覽等視頻進行透明度處理( blending)、飽和度處理( )等復合處理,從而形成統(tǒng)一的視頻幀緩存數(shù)據(jù),在通過內部的DENC將其編碼為模擬電視能接收處理的復合視頻信號CVBS、S或分量信號RGB、YUV等輸出。
由于ST40GX1只支持3.3V的PCI接口,故可通過的來擴展3.3V或5V的PCI插槽;在需要3D圖象處理的情況下,也可以通過外插PCI 3D圖形加速卡來實現(xiàn)。
◇ 交互式應用的網絡接口
交互式應用的硬件部分可由ST40GX1以及相應的網絡接口完成。考慮到網絡接口的帶寬接入方式要求,設計時可利用ST40GX1對外部提供的PCI總線接口,并集成 Modem、等高速接口。
(1) Modem
首先選擇符合Docsis1.1/Euro-docsis1.1規(guī)范的Cable Modem前端單芯片接口芯片 STV0396作為Cable Modem解決方案,這一部分既可以作為一個獨立的PCI卡來設計,也可以將其直接嵌入母板上,STV0396是一個高度集成的調制解調系統(tǒng),包括支持上行和下行符合DOCSIS1.1規(guī)范的物理層規(guī)范接口,媒體接入控制(MAC)以及功能強大的32位ST20 RISC處理器、PCI、EMI/MPX等與ST40GX1相兼容的外部接口。STV0396采用316管腳的GBA封裝,除需外接雙向調諧器外,還需要添加下行方向的聲表面波(SAW、上行方向的線路以及時鐘等,才能實現(xiàn)與頭端設備之間的通信連接,其典型如圖2所示。
(2)以太網接口
可選擇基于C的3.3V以太網芯片組作為接口芯片,這是因為芯片具有高度集成、在嵌入式系統(tǒng)中使用廣泛以及10/自適應特性、自帶PCI接口、在類操作系統(tǒng)下驅動程序容易找到等優(yōu)點。RTL8139采用128管腳的QPF/LQPF封裝,可通過PCI總線接口與ST40GX1相連。
(3)V.90軟件Modem的支持
對于V.90軟件Modem的支持,可直接利用ST40GX1的Modem前端接口MAFE來完成。不使用硬件Modem可以充分利用ST40GX1的運算處理能力來降低成本。
系統(tǒng)的啟動及通訊
ST40GX1與STi5514通過配置各自MPX總線接口的主/從(Initiator/target)方式來決定系統(tǒng)的啟動順序。在這里,由于系統(tǒng)啟動代碼位于ST40GX1局部中,故將ST40GX1配置為主(Initiator)將STi5514配置為從(target)。具體的啟動順序為:ST40GX1首先控制MPX總線并且先啟動,在啟動期間阻止STi5514使用MPX總線,直到其完全完成從里面讀取啟動代碼和初始化為止。接著ST40GX1利用MPX總線拷貝STi5514的啟動程序以及應用程序代碼到自己的LMI DDR內存中,拷貝完成后,ST40GX1釋放并允許STi5514控制MPX總線,STi5514從ST40GX1的DDR 中拷貝自己的啟動程序及應用程序代碼,借鑒這一點,通過MPX總線可以實現(xiàn)多CPU之間的存儲共享。
STi5514通過MPX總線可以訪問ST40GX1上的Mailbox寄存器。Mailbox被固定映射于ST40GX1存儲空間的基地址0x1B150000處,該寄存器對兩個CPU都能產生中斷信號。通過Malibox寄存器,ST40GX1與STi5514能實現(xiàn)進程同步、消息傳遞等進程間通信。