基于DaVinci?平臺的網(wǎng)絡(luò )視頻解碼系統分析與設計
整個(gè)視頻平臺工作上電后,816X首先從Flash中加載相關(guān)程序,并將Linux文件系統解壓出來(lái)在DDR中運行。IP視頻信號經(jīng)過(guò)解碼后形成6路并行YCbCr信號(每3路共用一個(gè)輸出通道),加上像素時(shí)鐘(DCLK)、數據有效位(DE)、行同步信號(HS)、場(chǎng)同步信號(VS)輸給后端FPGA進(jìn)行處理。邏輯芯片接收到并行視頻信號后,先根據預定好的分時(shí)傳輸協(xié)議中解出6路單獨的視頻信號,分別放置在DDR的不同區域中;完成6路視頻的緩存和仲裁后,根據系統的需求對視頻數據進(jìn)行DMA操縱,通過(guò)PCI-E設備把視頻數據送入系統進(jìn)行顯示。
本文引用地址:http://dyxdggzs.com/article/264525.htm3 硬件設計
DM816X模塊的硬件電路主要由主芯片816X、4片DDR3、Fash、網(wǎng)絡(luò )PHY片和電源模塊組成組成。網(wǎng)絡(luò )PHY芯片采用Mirel的KSZ9031,該芯片體積小、功能全、支持速率自適應、雙絞/直連線(xiàn)調節功能。該芯片和DM816X的EMAC(Ethernet Media Access Controller)口直接連接,把網(wǎng)絡(luò )數據接入到DM816X。主芯片外部掛有4片DDR3,主要用做816X的內存映射空間和視頻處理的緩沖區域,可以在軟件小系統中進(jìn)行自由配置。同時(shí),主芯片外部還帶一個(gè)Nand Flash,用于存儲引用程序和系統文件。在芯片外圍,根據應用需要放置硬件配置電路,把系統配置成網(wǎng)絡(luò )啟動(dòng)。因為芯片對電源的精度和上電時(shí)序均有嚴格要求,因此專(zhuān)門(mén)針對該芯片設計了上電時(shí)序電路和AVS可調電源。芯片的上電時(shí)序要求為3.3V>1V AVS>1V Constant>1.8V>1.5V>0.9V,為此,采用了專(zhuān)用時(shí)序控制芯片LM3881MM對上電時(shí)序進(jìn)行了控制。主芯片因為采用了先進(jìn)的制造工藝,其核心電壓1V AVS對應每個(gè)芯片均有一個(gè)精準值,在芯片運行過(guò)程中,也會(huì )因為工作狀態(tài)而調整核心電壓,所以針對該電壓也設計了專(zhuān)門(mén)的可調電源供電電路[4],具體電路模塊見(jiàn)圖2。圖2中,電源芯片采用TPS40400,其輸出端通過(guò)反饋電路送回反饋管腳,芯片帶有IIC的Slave模塊,連接到816x主芯片。在上電開(kāi)始后,主芯片會(huì )讀取相關(guān)寄存器,反饋給電源芯片具體的電源調整精準值;在系統運行過(guò)程中,如果同時(shí)開(kāi)啟了3個(gè)解碼核,會(huì )使得芯片功耗需求增加,主芯片也可以通過(guò)IIC通訊通知電源芯片調整電源輸出。
FPGA硬件電路模塊實(shí)現相對簡(jiǎn)單,主要包括了PCI-E接口的FPGA芯片、DDR2、存儲Flash、JTAG接口和電源模塊。邏輯芯片采用ALTER的A7系統芯片,采用SPI加載邏輯的方式進(jìn)行加載,外掛4片DDR2使用兩個(gè)控制器對視頻數據進(jìn)行緩存。JTAG接口主要用于邏輯程序調試。操作系統端連接采用PCI-E接口,由邏輯芯片內存自帶的PCI-E硬核實(shí)現。
4 DM816X軟件設計
為了便于軟件功能的移植、替換、添加和刪除,整個(gè)軟件采用層次式和模塊化的軟件結構??v向分布由5個(gè)層次組成,從下向上,分別是硬件層、OS層、平臺層、業(yè)務(wù)層、接口層。橫向分布由3個(gè)子系統構成,從左至右,依次是A8核子系統、HDVPSS M3核子系統、Video M3核子系統,具體結構見(jiàn)圖3。
硬件層是軟件系統運行的硬件平臺,其核心是TMS320數字多媒體處理器,由A8、HDVPSS M3、Video M3、DSP 4個(gè)核構成,其中HDVPSS M3、Video M3核是M3核。本軟件沒(méi)有使用到DSP核,所以硬件層由A8、HDVPSS M3、Video M3 3個(gè)核構成。
linux操作系統文章專(zhuān)題:linux操作系統詳解(linux不再難懂)
linux操作系統文章專(zhuān)題:linux操作系統詳解(linux不再難懂)linux相關(guān)文章:linux教程
評論