摘要:為了適應(yīng)機(jī)載液晶顯示器向低功耗、高集成度發(fā)展的趨勢,提出了一種基于Zynq可擴(kuò)展處理平臺的圖形生成電路實現(xiàn)方法.該方法以Zynq為核心搭建硬件平臺,使用Zynq集成的ARM 處理器執(zhí)行圖形生成算法運(yùn)算,配合可編程邏輯資源,按照一種三緩沖機(jī)制對DDR3SDRAM 幀存數(shù)據(jù)進(jìn)行緩沖處理,實現(xiàn)圖形的實時生成.采用本設(shè)計可以生成多種分辨率的機(jī)載圖形畫面.實驗結(jié)果表明,當(dāng)生成分辨率為1024×768的EFIS電子飛行顯示系統(tǒng)畫面時,幀率可達(dá)74fps,能夠滿足機(jī)載液晶顯示器高性能實時顯示需求。
?
1 引言
在飛機(jī)座艙顯示系統(tǒng)中圖形顯示占據(jù)重要地位[1].主顯示器尺寸不斷加大,分辨率不斷提高,并日益朝著大屏幕化、綜合化、信息化和智能化方向發(fā)展[2].隨著分辨率的提高,要顯示的信息量也大幅增加,座艙圖形綜合顯示系統(tǒng)是一個對實時性要求很高的系統(tǒng)[3],軍用飛機(jī)在做戰(zhàn)術(shù)動作時,畫面變換速度快,要求圖形的更新速度也必須很快,至少要比幀或場的刷新速度快,才可以避免畫面的斷續(xù)[4G5].采用DSP+FPGA 的圖形硬件加速架構(gòu),或者使用專用GPU 圖形生成芯片,都可以生成高分辨的機(jī)載顯示器圖形,但隨之而來的是產(chǎn)品成本的急劇增加以及功耗的不斷上升[6].為機(jī)載圖形顯示系統(tǒng)配置更合理的硬件設(shè)計和軟件架構(gòu)變得尤為迫切。
Xilinx最新平臺Zynq將處理器的軟件可編程能力與FPGA 的硬件可編程能力實現(xiàn)完美結(jié)合,以低功耗和低成本等系統(tǒng)優(yōu)勢實現(xiàn)良好的系統(tǒng)性能、靈活性和可擴(kuò)展性[7].本文提出一種基于Zynq可擴(kuò)展處理平臺的實時圖形生成電路,利用Zynq內(nèi)部集成的ARM 處理器以及可編程邏輯資源,實現(xiàn)了機(jī)載顯示器圖形畫面的實時生成與顯示。
2 Zynq簡介
2.1 Zynq構(gòu)成
Zynq構(gòu)架將內(nèi)部結(jié)構(gòu)分為處理器系統(tǒng)(ProcessingSystem,PS)與可編程邏輯(ProgrammableLogic,PL)兩部分[8].PS部分包括雙ARM CortexGA9內(nèi)核、存儲器接口以及通用外設(shè)接口等資源.PL部分也即常規(guī)的FPGA,通過PL生成的IP核可以作為ARM 內(nèi)核的擴(kuò)展外圍設(shè)備或者ARM 內(nèi)核的加速部件.Zynq器件內(nèi)部結(jié)構(gòu)圖如圖1所示。
圖1 Zynq內(nèi)部結(jié)構(gòu)圖
Zynq架構(gòu)可以對PL和PS中運(yùn)行的自定義邏輯和軟件方便地進(jìn)行管理和規(guī)劃,PS和PL的單芯片綜合使其在I/O 數(shù)據(jù)帶寬、功能耦合、功耗預(yù)算等方面的性能表現(xiàn)大大超越了以往ASSP和FPGA 雙芯片解決方案。
PS和PL可以通過多種途徑實現(xiàn)互聯(lián),包括GPIO端口、AXI總線端口、EMIO 端口、中斷、DMA 等等.其中AXI總線是ARM 系統(tǒng)中連接各個模塊的主要通道,各個功能部件通過AXI總線實現(xiàn)互聯(lián).在PL中可以通過工具自動生成帶有AXI接口的IP 核,和PS 端進(jìn)行高速數(shù)據(jù)交互。
2.2 DDR Memory控制器
Zynq內(nèi)部集成的DDR memory控制器支持DDR2、DDR3、LPDDR2等多種存儲器類型,包含了3個主要模塊:AXI存儲器端接口DDRI、帶有傳輸調(diào)度機(jī)制的中央控制器DDRC 和物理層控制器DDRP[9].DDRmemory控制器框圖如圖2所示。
圖2 DDR Memory控制器框圖
DDRI端口符合AXI總線標(biāo)準(zhǔn),包含4個64位的同步AXI接口,分別為S0、S1、S2、S3,用于接收多個AXI主端的訪問請求,其中S0和S1端口接收PS部分CPU 的訪問請求;S2和S3端口接收PL部分邏輯端的訪問請求.DDRC對來自多個AXI主端的訪問請求按照其調(diào)度策略進(jìn)行裁決,裁決實施的依據(jù)是主控端訪問的優(yōu)先級、等待時長計數(shù)器和緊急信號.DDRP 處理來自于DDRC的讀寫請求,并將其轉(zhuǎn)換成符合DDR 存儲器時序要求的特定信號。
2.3 AXI VDMA
AXI VDMA 是Xilinx公司開發(fā)的一個軟核IP,用于在系統(tǒng)存儲器和支持AXI4-Stream 視頻類型的目標(biāo)IP之間提供一個高速的數(shù)據(jù)存取通道[10].AXI4-Stream 格式數(shù)據(jù)流不能直接用于驅(qū)動顯示,還需要將數(shù)據(jù)流以視頻使能信號為界進(jìn)行分割,配合行場同步信號驅(qū)動視頻終端顯示。
該IP 有兩路AXI4-Stream 接口,分別為AXI Memory Map to Stream (MM2S)Stream Master 和AXI4-Stream to Memory Map(S2MM)Stream Slave,其中MM2S為主端口,用于輸出轉(zhuǎn)換成AXI4-Stream 格式視頻流的系統(tǒng)存儲器中數(shù)據(jù).S2MM 為從端口,用于接收AXI4-Stream 格式視頻流轉(zhuǎn)換成存儲器數(shù)據(jù).MM2S和S2MM 彼此相互獨立,可以并行同時工作.PS端的處理器可通過AXI4-Lite總線對其內(nèi)部的寄存器進(jìn)行訪問以控制VDMA 工作模式、獲取VDMA 工作狀態(tài)。
評論