Xilinx ZYNQ UltraScale+ MPSoC應用專(zhuān)欄系列連載[第三篇]寫(xiě)一篇簡(jiǎn)單需求
Xilinx ZYNQ UltraScale+系列連載[第三篇]寫(xiě)一篇簡(jiǎn)單需求
作者:hello,panda
離上篇博客發(fā)布已經(jīng)有很長(cháng)的時(shí)間了,請原諒樓主,一個(gè)是小Panda降臨需要照顧,另一個(gè)是確實(shí)這段時(shí)間的工作太忙,拖到今天才開(kāi)始動(dòng)筆寫(xiě)第三篇。
做事情講究個(gè)“謀定而后動(dòng)”,做研發(fā)尤其如此,準備工作一定要做得充分了,需求一定要理解明確了,方可開(kāi)始吭哧吭哧繼續往下干。
樓主先準備以ZCU104為平臺,實(shí)現一個(gè)視頻處理和傳輸系統,算是熟悉ZYNQ UltraScale+ MPSoC器件。
總體要求是:設計一個(gè)圖像采集、處理和傳輸系統,實(shí)時(shí)視頻分辨率不小于4000×3000,幀率不小于30fps,視頻可通過(guò)HDMI2.0(或DP)接口本地實(shí)時(shí)顯示。JPEG壓縮的圖片和H.265壓縮后的視頻存儲在本地SATA盤(pán)中,實(shí)時(shí)碼流可通過(guò)GigE Vision傳輸到主機。系統總體框架如下圖1所示。
圖1 系統總體框架
1 硬件平臺
本階段先使用ZCU104平臺進(jìn)行驗證,Camera和SFP接口通過(guò)FMC擴展板實(shí)現。
2 軟件需求
軟件包括PL和PS兩個(gè)部分,其中PL部分實(shí)現Camera IF、ISP、Encoder、GigE Vision和HDMI2.0接口;PL部分運行Linux操作系統,使用QT圖形界面,驅動(dòng)DP顯示和SSD存儲。
2.1 PL部分
PL部分主要實(shí)現接口和算法。
2.1.1 相機接口(Camera IF)
Camera IF硬件上通過(guò)FMC接口板接入,支持LVDS(LVDS通道數不大于15對)、MIPI D-PHY、MIPI C-PHY接入。Camera 分辨率不低于4000×3000,幀率不低于30fps,8bit、10bit或12bit Raw(Bayer)數據輸入。
2.1.2 圖像信號處理(ISP)
本階段ISP實(shí)現基本功能,主要包括:Demosaic、CCM、3A、Dpc、Gamma、Denoise、Enhance等基本內容,ISP需保證對輸入圖像實(shí)時(shí)處理。
2.1.3 Encoder
Encoder主要有兩部分,一個(gè)H.265視頻流壓縮,一個(gè)是JPEG靜態(tài)圖片壓縮。H.265使用芯片內置的硬核,JPEG壓縮通過(guò)邏輯實(shí)現。H.265至少保證4000×3000分辨率30fps實(shí)時(shí)壓縮。
2.1.4 GigE Vision網(wǎng)絡(luò )傳輸
GigE Vision采用10G光口傳輸,硬件在FMC擴展板上實(shí)現。GigE Vision可實(shí)時(shí)傳輸原始圖像、ISP處理后的圖像、H.265碼流和JPEG靜態(tài)圖片,通過(guò)xml配置文件指定支持的源和格式。
2.1.5 HDMI2.0接口
基于GTH,符合HDMI2.0標準,顯示原圖或ISP后的圖像,可疊加OSD。
2.2 PS部分
PS部分運行Linux操作系統,運行QT疊加生成OSD。
2.2.1 調度功能
PS需配置PL工作的各項參數,獲取系統狀態(tài),運行3A算法的C部分。PS部分還需處理PL的各中斷,以協(xié)同處理存儲、顯示等工作。
2.2.2 存儲和顯示
實(shí)現DP和SATA驅動(dòng),存儲和讀出PL生成的視頻流文件請求。運行QT,生成人機交互界面。
3總結
整個(gè)系統基于AXI4總線(xiàn)架構,SoC軟件硬件協(xié)同處理,需要保證良好的可擴展性,以便擴展下一步的圖像檢測和識別算法、AI算法等。
*博客內容為網(wǎng)友個(gè)人發(fā)布,僅代表博主個(gè)人觀(guān)點(diǎn),如有侵權請聯(lián)系工作人員刪除。