国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

高速圖像模擬源的研究與實現(xiàn)

2017-08-30 18:28姚遠程秦明偉
自動化儀表 2017年8期
關鍵詞:時鐘控制器傳輸

唐 瑞,姚遠程,秦明偉

(1.西南科技大學信息工程學院,四川 綿陽 621010;2.特殊環(huán)境機器人技術四川省重點實驗室,四川 綿陽 621010)

高速圖像模擬源的研究與實現(xiàn)

唐 瑞1,2,姚遠程1,2,秦明偉1,2

(1.西南科技大學信息工程學院,四川 綿陽 621010;2.特殊環(huán)境機器人技術四川省重點實驗室,四川 綿陽 621010)

針對視覺測量系統(tǒng)的研發(fā)與驗證問題,設計了一種具有高穩(wěn)定性、高傳輸能力、高抗干擾能力的圖像模擬源。設計的新型圖像模擬源可以根據不同的應用場景輸出符合相應要求的圖像數(shù)據,且用戶可以自主選擇不同的分辨率與幀率進行圖像格式輸出。采用PCI Express 3.0總線標準協(xié)議,實現(xiàn)了圖像數(shù)據源從上位機PC到FPGA板間的高速傳輸。其中,配置參數(shù)信息通過直接內存訪問(DMA)從模式的寄存器通道下發(fā),大容量圖像數(shù)據源通過DMA主模式的高速數(shù)據通道下發(fā);設計了多個控制器,完成了SDRAM DDR3緩存圖像數(shù)據的工作,最終輸出了符合Camera Link標準協(xié)議的圖像數(shù)據。板級測試表明,上位機與FPGA板間圖像數(shù)據傳輸?shù)耐綍r鐘達250 MHz,位寬達256 bit;最終模擬源輸出圖像數(shù)據的同步時鐘為80 MHz,幀率達60 fps,且還有很大的提升潛力。圖像數(shù)據輸出滿足Camera Link標準,驗證了所設計模擬源的正確性,其有助于各種不同的視覺測量系統(tǒng)研發(fā)工作,具有廣泛的應用價值。

視覺測量; 圖像模擬源; FPGA; 上位機; 直接內存訪問; 控制器; 相機標準鏈路

0 引言

隨著視覺測量技術在理論與實際應用中的飛速發(fā)展,其應用范圍已擴展到測量與檢驗、自動識別、機器人研究與控制等領域[1]。通常情況下,正在研發(fā)階段的視覺測量系統(tǒng)是不會直接連到真實高速圖像源進行測試的。這是因為一般高速圖像源的分辨率以及幀率是不變的,在圖像傳輸速度上也有固定標準,且高速圖像源不能實現(xiàn)每次只傳輸一幀圖像進行驗證。針對此問題,研發(fā)了一種新的高速圖像模擬源,用來模擬真實的圖像數(shù)據,以測試新的視覺測量系統(tǒng)。

1 高速圖像模擬源

基于高速圖像模擬源,用戶可自定義分辨率以及幀率,產生服從視覺測量系統(tǒng)要求的圖像數(shù)據源用于測試。用戶可以選擇已有的圖像數(shù)據(例如圖片)作為數(shù)據源發(fā)送。視覺測量系統(tǒng)可將最終采集到的圖像數(shù)據和圖像源進行對比,判斷是否正確,從而給整個視覺測量系統(tǒng)驗證帶來很大便利。

該圖像模擬源能模擬多種分辨率、幀率,并按照Camera Link標準協(xié)議高速輸出圖像數(shù)據,模擬測試多種情況下視覺測量系統(tǒng)的工作狀態(tài),從而保證新系統(tǒng)接入真實高速圖像源時能夠正常、有效、規(guī)范地運行。高速圖像模擬源可以應用于多個研究領域,其最大的特性就是可以根據不同視覺測量系統(tǒng)的要求來模擬數(shù)據源,且圖像數(shù)據源是確定的。這對整個系統(tǒng)的研制工作具有重大意義。

2 系統(tǒng)設計方案

系統(tǒng)設計方案主要包括以下4個方面。

(1)基于PCI Express 3.0多層協(xié)議標準,實現(xiàn)上位機PC與FPGA板卡間的數(shù)據通信。圖像數(shù)據源從PC高速傳輸至FPGA板卡上緩存,內含直接內存訪問(direct memory access,DMA)雙通道通信:分辨率、幀率等參數(shù)的通過DMA從模式32 bit的寄存器通道下發(fā)給FPGA板卡;圖像數(shù)據通過主模式256 bit數(shù)據通道下發(fā),同步時鐘達到250 MHz。

(2)研究Camera Link標準,掌握其協(xié)議輸出數(shù)據特點及方式;實現(xiàn)Camera Link數(shù)據最終輸出標準,輸出4組信號,分別為幀有效信號(frame valid,FVAL)、行有效信號(line valid,LVAL)、圖像數(shù)據(image data,DATA)以及時鐘(clock,CLK)信號。其中,圖像數(shù)據分為Port_A、Port_B、Port_C、Port_D,共4路輸出。

(3)研發(fā)多個控制器,互相調度,配合使用,完成圖像源在FPGA板卡上的緩存并輸出符合視覺測量系統(tǒng)要求的圖像數(shù)據源。主要設計實現(xiàn)包含若干小控制器的兩大主控制器:①設計完成的圖像數(shù)據緩存主控制器,使用SDRAM DDR3高速緩存由上位機傳輸來的圖像數(shù)據;②研發(fā)的讀取數(shù)據主控制器,按照用戶初始化設置分辨率、幀率圖像源格式,以Camera Link標準協(xié)議輸出。

(4)設計用戶控制界面,完成上位機軟件部分的開發(fā)。系統(tǒng)提供圖像分辨率(包含1 728 ppi×2 352 ppi,5 120 ppi×5 120 ppi等格式)、幀率(包含60 fps和80 fps等大小)和圖片來源這3個參數(shù),由用戶自由配置,通道數(shù)固定設置為兩通道;同時,用戶可選擇單幅圖像循環(huán)或多幅的傳輸模式,并可選擇圖像來源。

2.1 PC與FPGA的高速通信

當前,PCI Express是最新一代的總線標準接口。它將全面取代現(xiàn)有的PCI和AGP總線標準,為今后總線技術的發(fā)展提供統(tǒng)一標準,PCI Express屬于高速串行點對點雙通道高帶寬傳輸[2]。每一代的PCI Express都有多種規(guī)格(1X、2X、4X、8X、16X),對應不同的通道數(shù)。PCI Express最新一代接口是PCI Express 3.0,在最高的16X版本中,其比特率可達到8 GB/s,提高了數(shù)據保護性能,改善了數(shù)據傳輸效率,能至少滿足將來一段時間內各種高速設備的要求。

2.1.1 PCI Express LogiCore的生成調用

Xilinx公司為其FPGA提供了一種可以生成PCI Express IP內嵌硬核的解決方案。Virtex-7系列FPGA的PCI Express IP核實現(xiàn)了PCI Express 3.0協(xié)議,并向下兼容。該IP核配置不同時,IP核與用戶接口位寬、所支持的通道寬度之間的關系如表1所示。其中,IP核速率均為2.5 Gb/s或5.0 Gb/s。

表1 IP核類型與用戶接口位寬、支持通道寬度的關系

PCI Express 3.0 IP核使用Packet(數(shù)據包)在各模塊間進行通信。數(shù)據發(fā)送要相應經過物理層、數(shù)據鏈路層、事務層,且通過每一層都要打包,并添加必要的數(shù)據信息(如驗證信息)[3]。在接收端,每一層的接收模塊都會對接收到的數(shù)據包進行解析,去除在對應層上添加的信息,然后發(fā)往下一層。這樣,設計者就可以在接收端的事務層看到發(fā)送端事務層的有效數(shù)據。此設計采用的軟件是Vivado 2016.3,芯片為Virtex7系列的XC7V690T,封裝型號為fft1761,速度等級選為-2。配置PCI Express IP Core完成后,生成Integrated Block for PCI-Express模塊。該模塊完全符合PCI Express的分層結構,分為物理層,鏈路層和事務層。

該IP核模塊包括物理接口(PL)、事務接口(TRN)、配置接口(CFG)、外部傳輸接口(PCI EXP)和系統(tǒng)接口(SYS)。該模塊遵循PCI Express 3.0多層協(xié)議標準,完成了物理層、數(shù)據鏈路層和部分數(shù)據層的通信功能。用戶在使用時該IP核時主要的注意事項是:按照PCI Express協(xié)議,設計好各控制和狀態(tài)端口的電平。

PCI Express 3.0總線有2種總線讀寫方式,可編程的輸入/輸出(programmed input/output,PIO)方式讀寫由軟件對寄存器進行直接尋址來完成,這種操作消耗CPU資源。若使用PIO方式進行大容量的數(shù)據讀寫操作,需要CPU頻繁發(fā)起讀寫請求,使CPU的資源占有率非常高。因此,PIO操作不適用于大數(shù)據量的高速板間通信。通常采用PIO方式,對FPGA的寄存器進行讀寫控制以及參數(shù)配置。

DMA是一種高速的數(shù)據傳輸方式,主要用于大數(shù)據量、成批交換數(shù)據的高速場合。在該模式下,CPU只需向DMA授權,然后由DMA控制器負責發(fā)起數(shù)據傳輸。一般情況下,數(shù)據傳輸完成后,通過中斷信息反饋到CPU,這樣在整個數(shù)據傳輸?shù)倪^程中并不需要CPU參與。與PIO方式相比,DMA大大減輕了CPU資源占用率。

2.1.2 DMA Engine設計

DMA Engine設計需要解決2個關鍵問題:①完全、準確接收任何高速設備輸出的數(shù)據;②減少整個高速系統(tǒng)傳輸過程中對CPU的干擾。針對這2個問題,在接口處設計了FIFO作為緩存,以避免數(shù)據的丟失。在進行DMA傳輸時,應盡量使數(shù)據量大一些,減少中斷產生的次數(shù)[4]。在FPGA中,DMA引擎與PCIeIPCore、Tx Engine、RxEngine配合完成數(shù)據DMA模式的傳輸。

PCI Express系統(tǒng)邏輯整體設計框圖如圖1所示。下面將研究DMA Engine的實現(xiàn)過程。

圖1 PCI Express系統(tǒng)邏輯整體設計框圖

在PCI Express接口設計中,DMA Engine起到主控作用,在模塊中主要包含2個方面:①DMA控制的相關寄存器的定義;②DMA相關操作的控制中心。

DMA的相關寄存器,承擔著FPGA板卡和計算機之間的信息交互功能。本文將DMA寄存器映射到BAR1空間中。而BAR0空間用來定義PCI Express總線域地址,根復合體 Root Complex負責處理內存地址到PCI Express總線地址之間的轉換。計算機需要操作BAR0空間的數(shù)據時,可以通過操作BAR0空間對應內存地址中的數(shù)據;設計中涉及的調試模式識別結果也是通過寫B(tài)AR0空間的寄存器進行傳遞的。只要系統(tǒng)啟動,BIOS就會監(jiān)測設備所連的外設,而且按照配置空間頭中BAR空間的大小分配地址空間[5]。

本文中FPGA板卡使用Bus Master DMA的方式完成數(shù)據的交互[6]。DMA傳輸啟動前,需要對BAR1中的DMA相關寄存器進行配置,例如軟件復位、使能DMA中斷相關位、確定DMA傳輸?shù)牡刂泛蛿?shù)據量大小[7];然后可以啟動DMA,當要求的數(shù)據量發(fā)送完畢后,DMA中斷發(fā)生,進入中斷處理程序,轉存接收的數(shù)據,DMA傳輸任務完成。

2.1.3 上位機軟件研發(fā)

系統(tǒng)軟件架構主要包括用戶交互界面、后臺存儲、后臺算法以及PCI Express驅動4個模塊內容。每個模塊具體完成的任務如下。

①用戶交互界面:為用戶提供一個可視化窗口和交互的平臺,可顯示戶參數(shù)配置及當前頻環(huán)境信息、歷史數(shù)據等信息。

②后臺算法:包括前文中改進的頻譜分配和頻譜決策算法,是優(yōu)化決策的核心部分。

③后臺存儲:包括通信數(shù)據存儲、決策案例存儲、用戶行為等各類數(shù)據存儲。決策成功的案例會存入歷史記錄表中,供后續(xù)決策過程參考[8]。

④PCI Express總線驅動:驅動PCI Express總線,使其PC端可使用,并按系統(tǒng)要求工作。

2.2 FPGA主板控制模塊設計

2.2.1 DDR3圖像數(shù)據緩存研究與實現(xiàn)

使用DDR3,將由上位機傳輸來的圖像數(shù)據全部緩存。由于DDR3的控制邏輯復雜,為了縮短工程人員的開發(fā)周期,開發(fā)人員只需要通過IP核選擇內存芯片,并設置控制器的相關參數(shù),便可自動生成設計所需的RTL文件、用戶約束文件以及網表文件[9]。用戶通過更改一些接口,即可生成測試工程,并進行DDR3讀寫測試,設計將控制器的系統(tǒng)時鐘設置為800 MHz。

控制器由系統(tǒng)時鐘和復位模塊、用戶接口模塊、MIG IP核生成的控制器接口模塊組成。用戶接口是用戶控制DDR3的直接操作端口,需由用戶根據工程的數(shù)據量大小、數(shù)據位寬、數(shù)據速率、緩存深度等參數(shù)自行設計。用戶接口設計包括寫數(shù)據、讀數(shù)據以及核控制模塊??紤]到DDR3只包含一套地址結構,因此讀、寫不能同時進行。用戶接口框圖如圖2所示。

圖2 用戶接口框圖

本設計采用讀寫數(shù)據通道分開的設計思想,對DDR3進行時分操作。根據工程中數(shù)據量的大小和DDR3的容量大小計算讀寫的時間,并按照這個時間產生外部切換信號,由外部切換信號來控制DDR3的讀寫;根據切換信號,分別將讀寫的命令、地址和數(shù)據發(fā)送給控制模塊;在控制模塊內部通過FIFO緩存的方式完成數(shù)據的跨時鐘域處理,確保數(shù)據的完整性,以避免亞穩(wěn)態(tài)的產生[10]。

2.2.2 圖像讀取控制器設計

數(shù)據由上位機傳輸?shù)紽PGA板卡中的DDR3緩存之后,由圖像讀取控制器按照用戶初始化設置以及Camera Link協(xié)議穩(wěn)定讀出,再按要求輸出,完成設計要求。

本課題中,圖像讀取控制器設計包含2個內核:分頻器與異步FIFO。分頻器產生模擬圖像源80 MHz同步時鐘,可以從PCI Express或者DDR3的用戶時鐘分頻得到。異步FIFO完成時鐘域的轉換,從FIFO輸入端的200 MHz時鐘域轉換至FIFO輸入端的80 MHz時鐘域,且異步FIFO還能起到臨時緩存圖像數(shù)據的作用。

例如模擬輸出分辨率為(1 728×2 352)ppi的圖像源,控制器最終輸出的是FVAL、LVAL、DATA以及CLK(80 MHz)這4組信號,這滿足Camera link接口協(xié)議;圖像幀率滿足60 fps,有嚴格的等待時間控制器,保證了相機幀率。

3 系統(tǒng)測試與分析

3.1 硬件測試

在整個系統(tǒng)設計完成之后,需要對系統(tǒng)進行下板實際測試,確保圖像模擬源能高速、穩(wěn)定、有效地工作。連接Xilinx’s Virtex-7 XC7V690T FPGA板卡,在Vivado 2016.3平臺進行實際測試。測試內容如下:①基于PCI Express 3.0多層協(xié)議標準,測試上位機與FPGA板間通信情況,包括下發(fā)的數(shù)據測試和數(shù)據有效信號測試;②測試DDR3是否正確緩存數(shù)據,以及讀出數(shù)據控制器是否正常讀出數(shù)據;③測試模擬源Camera Link最終輸出標準,是否有效輸出FVAL、LVAL、DATA以及CLK信號這4組信號。

3.2 結果分析

本設計采用PCI Express 3.0 支持8X通道,用戶下傳數(shù)據端口dma_rd_data位寬256 bit,同步時鐘250 MHz,下傳數(shù)據有效信號dma_rd_valid。為方便測試,模擬源測試數(shù)據發(fā)送為從0累加、位寬為32 bit的疊加數(shù)據。數(shù)據從上位機下發(fā)至FPGA板卡,經過多個控制器互相配合,使圖像數(shù)據緩存在DDR3中,然后進入異步FIFO,最終按照Camera Link標準協(xié)議輸出。運行系統(tǒng)后,由上位機軟件觸發(fā)開始模擬圖像源,Vivado提供了FPGA片上調試工具ILA,可以捕獲和顯示實時傳輸信號。

由實際測試結果可知,從上位機下傳的數(shù)據信號dma_ra_data確實是從0累加的位寬為32 bit的數(shù)據,dma_ra_data位寬是256 bit,一次時鐘包含8個測試數(shù)據;dma_rd_valid在dma_ra_data有數(shù)據下傳時是高位,其余時間為低位,為正確的下傳數(shù)據有效信號。數(shù)據經過DDR3緩存進入異步FIFO待控制器讀出,最終的模擬源標準輸出數(shù)據從起始位00 000 000依次累加,而32 bit的輸出數(shù)據data又按照4路輸出分為Port_A、Port_B、Port_C、Port_D。每個數(shù)據口輸出8 bit數(shù)據,Port_A為高8 bit,Port_D為低8 bit。從異步FIFO讀出的數(shù)據是64 bit位寬,按照邏輯控制器分為兩次輸出,從而完成圖像源單次32 bit輸出。

FVAL在一幀圖像數(shù)據傳輸中一直為高,LVAL對應每一行的圖像數(shù)據有效位。當輸出分辨率為(1 728×2 352)ppi時,圖像數(shù)據一共1 728行。進行每一行傳輸時,LVAL有效;在行與行的間隙時,LVAL無效,證明沒有傳輸有效圖像數(shù)據,但此時FVAL信號依舊有效,因為一直是在一幀圖像傳輸期間。只有在FVAL與LVAL同時有效時,數(shù)據信號才是有效的圖像數(shù)據。圖像源輸出同步時鐘80 MHz,幀率為60 fps。經分析,輸出信號完全滿足Camera Link標準協(xié)議,證明此高速模擬源功能測試正常。

4 結束語

基于PCI Express 3.0多層協(xié)議標準,完成了上位機PC與FPGA板間數(shù)據通信,設計了多個控制器,實現(xiàn)了圖像源在FPGA板卡上的緩存以及符合Camera Link標準協(xié)議的圖像數(shù)據輸出。通過Virtex-7 XC7V690T板級測試,證明了該圖像模擬源能高速、穩(wěn)定、有效地工作,能輸出滿足協(xié)議標準的圖像數(shù)據,數(shù)據同步時鐘為80 MHz,幀率達到60 fps。此高速圖像模擬源適用于視覺測量系統(tǒng)的研發(fā),輸出的是確定圖像源,降低了外界干擾,提高了成本效益,能更方便地測試采集到的圖像數(shù)據是否正確。

[1] 申春龍,余樂,張紅彬,等.基于PCI總線的瞬態(tài)延遲脈沖發(fā)生器[J].自動化儀表,2017,38(3):55-57.

[2] 嚴振杰,俞磊,周鵬成. AP1000無線通信系統(tǒng)電磁兼容性試驗設計[J].自動化儀表,2017,38(2):82-85.

[3] 董旭明,李志斌.計算機視覺在并聯(lián)機器人運動學標定中的應用[J].自動化儀表,2016,37(5):16-19.

[4] 王學東.基于PCI-E總線的高速數(shù)據傳輸與存儲的系統(tǒng)設計[D].北京:北京郵電大學,2015.

[5] 付慧琳,劉芳,鄧友燕.C++與Matlab混合編程模式的研究與實現(xiàn)[J].電子科技,2015,27(11):73-75.

[6] 王聰,王彬,薛潔,等.基于PCIe總線協(xié)議的設備驅動開發(fā)[J].信息技術,2015,22(3):32-35.

[7] 李晃.高速數(shù)據傳輸測試系統(tǒng)的設計與研究[D].西安:西安電子科技大學,2015.

[8] ORLIC V,DUKIC M.Algorithm for automatic modulation classificationin multipath channel based on sixth-order cumulants[J]. TELSIKS,2014,13(12):423-426.

[9] AVCI E,AVCI D.The performance comparison of discrete wavelet neura lnetwork and idscrete waveleta daptive net work based fuzzy inference system for digital modulation recognition[J].Expert Systems with Applications,2008,35(1-2):90-101.

[10]朱偉杰.基于FPGA的高速數(shù)據傳輸平臺構建——應用于WiGig芯片測試系統(tǒng)[D].成都:電子科技大學,2014.

Research and Implementation of High-Speed Image Simulation Resource

TANG Rui1,2,YAO Yuancheng1,2,QIN Mingwei1,2

(1.School of Information Engineering,Southwest University of Science and Technology,Mianyang 621010,China;2.Robot Technology Used for Special Environment Key Laboratory,Mianyang 621010,China)

Aming at the probelm of the development and verification of vision measurement system,an image simulation resource with high stability,high transmission capacity and high anti-interference capability has been designed. According to different application scenarios,the image simulation resource output simage data that meet the corresponding requirements,and the user can choose the image format such as resolution and frame rate for output.The PCI Express 3.0 bus standard protocol is used to realize the high-speed transmission of image source from PC to FPGA. The configuration parameters are transmitted through register channel of direct memory access(DMA) slave mode,and the large capacity image data source is transmitted through the high-speed data channel of DMA master mode. Multiple controllers are designed to complete the cache of image data in SDRAM DDR3,and output image data in accordance with Camera Link protocol standard. The result of FPGA board-level test shows that the synchronization clock for image data transmission between PC and FPGA reaches 250 MHz,the bit width is 256 bit,the synchronization clock for image simulation resource output is 80 MHz,the frame rate is up to 60 fps,and there is still potential for improvement as well.The data format meets the standard of Camera Link and this proves the correctness of this image simulation resource,which will contribute to the development of a variety of visual measurement systems with extensive applicationvalue.

Vision measurement; Image simulation resource; FPGA; Host computer; Direct memory access(DMA); Controller; Camera standard link

國家重大科學儀器設備開發(fā)項目(2016YFF0104003)

唐瑞(1994—),男,在讀碩士研究生,主要從事FPGA高速并行信號處理方向的研究。E-mail:tangrui_w@foxmail.com。 姚遠程(通信作者),男,學士,教授,主要從事雷達無線電方向的研究。E-mail:yaoyuancheng@swust.edu.cn。

TH7;TP332

A

10.16086/j.cnki.issn1000-0380.201708010

修改稿收到日期:2017-06-25

猜你喜歡
時鐘控制器傳輸
工商業(yè)IC卡控制器改造為物聯(lián)網控制器實踐
別樣的“時鐘”
牽引8K超高清傳輸時代 FIBBR Pure38K
古代的時鐘
PLC可編程控制器相關外置的選擇計算研究
基于同軸傳輸?shù)木W絡傳輸設備及應用
電子制作(2018年18期)2018-11-14
有趣的時鐘
支持長距離4K HDR傳輸 AudioQuest Pearl、 Forest、 Cinnamon HDMI線
時鐘會開“花”