一.系統(tǒng)的硬件設計。
視頻服務器最主要的功能是完成圖像和聲音的采集、壓縮及傳輸?shù)墓δ?。視頻服務器用到的核心技術一般包括視頻壓縮算法,音頻壓縮算法,網(wǎng)絡傳輸協(xié)議。目前市場上的主流技術主要是MPEG4或H26x視頻壓縮算法、AAC音頻壓縮算法、G.72x語音壓縮算法(或AAC音頻壓縮算法),TCP/IP協(xié)議等。DM642是TI公司推出的一款針對多媒體處理領域應用的DSP,它是在C64x的基礎上,增加了很多外圍設備和接口。該DSP為548腳BGA封裝,高度集成化。主要外圍設備包括:三個可配置的視頻接口,可以和視頻輸入,輸出或傳輸流輸入無縫連接。VCXO內(nèi)插控制端口(VIC)10/100Mbps以太網(wǎng)口(EMAC)。數(shù)據(jù)管理輸入輸出模塊(MDI0)。多通道音頻串行端口(McASP)。I2C總線模塊。兩個多通道有緩存的串口(McBSPs)。三個32-bit通用定時器。用戶可配置的16-bit或32-bit的主端口接口(HPI16/HPI32)。6Mhz32-bit的PCI接口。通用I/0端口((GPIO)。64-bit的外部存儲單元接口,支持和同步或異步存儲單元的連接。
本系統(tǒng)設計3路視頻端口,2路板上解碼器和1路板上編碼器,32Mbytes同步DRAM通過FPGA的OSD4MbytesFlashmemory,10/100以太網(wǎng)端口通過FPGA內(nèi)寄存器執(zhí)行的板卡軟件配置導入加載選項配置。DSP芯片通過64bit的EMIF接口或8/16bit的3路視頻接口連接板上外圍設備。SDRAM、Flash、FPGA和UART每一個設備占用其中的一個接口。EMIF接口也連接擴展背板接口,擴展背板接口用來連接背板。板上的視頻解碼器和編碼器連接到視頻端口和擴展連接器上。母板上的2個編碼器和1個解碼器都符合標準規(guī)范。McASP可以通過軟件重新設定成為一個擴展接口??删幊踢壿嬮T陣列又被稱為FPGA,用來執(zhí)行板上組合在一起的邏輯程序。FPGA有基于軟件用戶端口的寄存器,用戶可以通過讀寫這個寄存器來配置板卡。
系統(tǒng)的硬件設計主要有以下幾個部分。
(1)存儲器映射。C64xx系列DSP有大量的字節(jié)可設定的地址空間。程序代碼和數(shù)據(jù)可被存儲在統(tǒng)一標準的32bit地址空間的任何位置。默認狀態(tài)下,內(nèi)部的寄存器從0x00000000地址空間開始存儲。一小部分存儲器可由軟件重新映射為L2高速緩存,而不是固定的RAM。
EMIF(外部寄存器端口)有4個獨立的可設定地址的區(qū)域,稱為芯片使能空間(CE0-CE3)。當Flash、UART和FPGA映射到CE1時,SDRAM占據(jù)CE0。背板使用CE2和CE3。CE3的一部分被配置給OSD功能的同步操作和擴展的FPGA中的其他同步寄存器操作。
(2)EMIF端口。本系統(tǒng)設計一個64bit長的外部存儲器端口。將地址空間分割成了四個芯片使能區(qū),允許對地址空間進行8bit、16bit、32bit和64bit的同步或不同步的存取。DM642板使用芯片使能區(qū)CE0、CE1和CE3。CE0被發(fā)送給64bit的SDRAM總線。CE1被8bit的Flash、UART和FPGA功能使用。CE3被設置成同步功能。CE2和CE3都被發(fā)送給背板接口連接器。[nextpage]
(3)SDRAM寄存器端口。本系統(tǒng)設計在CE0空間連接了64bit的SDRAM總線。這32兆的SDRAM空間用來存儲程序、數(shù)據(jù)和視頻信息??偩€由外部PLL驅(qū)動設備控制,運行在133MHz的最佳運行狀態(tài)。SDRAM的刷新由DM642自動控制。EMIF使用的PLL被稱為ICS512,PLL的輸入時鐘是25MHz。DM642可以配置EMIF時鐘的原始值。ECLKIN針腳一般為默認值,但其也可通過分頻CPU時鐘,來控制EMIF的時鐘頻率。在復位時,通過對ECLKINSEL0和ECLKINSEL1針腳的操作進行設置,其與EA19和EA20針腳共同分享EMIF的地址空間。
(4)Flash寄存器接口本系統(tǒng)設計4M的Flash,映射在CE1空間的低位。Flash寄存器主要被用來導入裝載和存儲FPGA的配置信息。DM642評估板的CE1空間被配置成8bit,F(xiàn)lash寄存器也是8bit。由于CE1的可利用地址空間小于Flash的空間,所以利用FPGA來產(chǎn)生3個擴展頁。這些擴展的線形地址通過FPGA的Flash的基礎寄存器進行定義地址,復位后默認是000。
(5)UATR接口。雙重的UART寄存器被映射在DM642的CE1空間的高位,隨同F(xiàn)PGA異步寄存器一起。每一個UART,A和B產(chǎn)生8位的地址。本系統(tǒng)設計將CE1空間配置成8位存取。
(6)FPGA異步寄存器端口。FPGA有10個定位在CE1空間高位的異步存儲寄存器。這些寄存器實現(xiàn)的各種功能由于篇幅所限不再詳敘。FPGA同步寄存器端口FPGA在CE3地址空間開設同步寄存器。這些寄存器主要實現(xiàn)OSD功能和一些評估板連接。
(7)EMIF緩沖器/解碼器控制。EMIF緩沖器和解碼器的功能通過GAL16LV8D普通邏輯數(shù)組驅(qū)動器實現(xiàn),U15。驅(qū)動器可以對Flash進行簡單的解碼處理,UART與緩沖器共同控制CE1、CE2和CE3。
(8)視頻端口/McASP端口。本系統(tǒng)設計有3個板上視頻端口,這些端口可以根據(jù)可選擇性功能,進行再分類,例如端口0和端口1的McASP和SPDIF功能。DM642使用所有的三個視頻端口,視頻端口0和視頻端口1被用作輸入端口,視頻端口2用作顯示端口。在標準配置中,視頻端口0和視頻端口1根據(jù)使用在McASP功能下進行再分類,連接到TLV320AIC23立體聲編解碼器或連接到SPDIF輸出接口J9。
(9)視頻解碼器端口。本系統(tǒng)設計可再分的視頻端口0和視頻端口1被用作捕獲輸入端口,命名為捕獲端口1和捕獲端口2。這些端口連接到SAA7115H解碼器。視頻端口貫穿CBT開關,所以他們?yōu)榱吮嘲宓氖褂每梢员贿x擇性的禁止。另一半的端口被連接到板上的McASP端口。捕獲端口1通過一個RCA類型的視頻插座J15和一個4針的低噪聲S-Video接口J16,連接到視頻源。輸入的必須是合成的視頻源,例如DVDPlayer或視頻相機。SAA7115H是可通過DM642的I2C總線進行編程的,并且可以連接所有的主要合成視頻標準,例如NTSC,PAL和SECAM,這些都可以通過解碼器的內(nèi)部寄存器進行適當?shù)木幊獭?/P>
(10)視頻編碼器端口。本系統(tǒng)設計視頻端口2被用來驅(qū)動視頻編碼器。它通過FPGAU8發(fā)送,以實現(xiàn)高級功能,例如OSD。但它在默認方式下是直接通過視頻,連接到SAA7105視頻編碼器。這個編碼器可以進行RGB、HD合成視頻,NTSC/PAL復合視頻的編碼,也可對依靠SAA7105內(nèi)部寄存器進行編程的S-Video進行編碼。SAA7105的內(nèi)部編程寄存器通過DM642的I2C總線進行配置。編碼器連接到合成的或RGB顯示單元。通過標準的RCA插座J2、J3和J4提供RGB圖像。J3的綠色輸出也可以被用于接口到合成顯示單元。4針的低噪聲S-VideoJ1也可用。15針的高密度DB接口允許系統(tǒng)驅(qū)動VGA種類的監(jiān)視器。本系統(tǒng)設計高清晰TV輸出,但要求更換一些支持HDTV的特殊過濾器。
(11)FPGA視頻功能。本系統(tǒng)設計使用XilinxXC2S300E系列FPGA來實現(xiàn)增強視頻功能和其他的一些連帶功能。默認模式下,F(xiàn)PGA通過DM642的視頻端口2輸出視頻到PhillipsSAA7105視頻編碼器。對于HDTV,F(xiàn)PGA提供增強的時鐘;對于OSD功能,F(xiàn)PGA提供了FIFOs,將視頻端口2的數(shù)據(jù)與FIFOs端口的數(shù)據(jù)進行混合。FPGA的FIFOs在通過CE3空間的同步模式下,通過DM642的EMIF進行存取。
(12)以太網(wǎng)端口。在獨立的模式下,DM642的以太網(wǎng)MAC被自動選擇,并通過CBT發(fā)送給PHY。本系統(tǒng)設計使用的是IntelLXT971PHY。10/100Mbit的端口被隔離,輸出至RJ-45標準的以太網(wǎng)接口,J8。PHY直接連接到DM642。在制作過程中,以太網(wǎng)的地址存儲在I2C的連續(xù)ROM中。RJ-45接口具有2個指示燈,使它成為一個完整的端口。2個指示燈分別是綠燈和黃燈,用來指示以太網(wǎng)的連接狀態(tài)。綠燈亮,指示已連接,綠燈一閃一閃,指示連接正在活動;黃燈亮,指示滿雙方模式。