熱線電話:0755-23712116
郵(you)箱(xiang):contact@legoupos.cn
地(di)址:深圳(zhen)市寶(bao)安區沙(sha)井街(jie)道后亭茅洲山(shan)工(gong)業園(yuan)(yuan)工(gong)業大廈(sha)全至科技創(chuang)新園(yuan)(yuan)科創(chuang)大廈(sha)2層2A
Data Flow analysis (數據流分析)
評估一個基于PC的工業圖像采集系統運行速度(du)并不是簡單的任(ren)務。此(ci)篇文章的目的是使大家能夠(gou)正(zheng)確選擇出配合使用的相機和(he)圖像采集卡。
需要考慮的三個要素:(1) 相機 (2) 圖像采集卡 (3)PC
圖(tu)1所示,Front-end data flow(前端數(shu)據(ju)流)指的是相機傳送數(shu)據(ju)到圖(tu)像(xiang)采集卡內部幀緩沖存儲(chu)的視頻數(shu)據(ju)的速率。
Back-end data flow(后端數據流(liu))指的(de)(de)是從圖像采(cai)集卡的(de)(de)內部緩(huan)沖(chong)區(qu)中提取數據,最終儲存到PC的(de)(de)內存緩(huan)沖(chong)區(qu)。
數(shu)據流進入(ru)圖像采(cai)集卡和從采(cai)集卡到PC的(de)(de)內(nei)存緩沖區的(de)(de)速率(lv)不(bu)應超過圖像采(cai)集卡的(de)(de)吞(tun)吐量(liang)。后端(duan)數(shu)據流的(de)(de)吞(tun)吐量(liang)不(bu)應超過PCI總線的(de)(de)有(you)效帶(dai)寬。
一、關于Front-enddata flow(前端數據流(liu))
(1)前端數據的峰值數據流量
為了計(ji)算前端數據(ju)(ju)流的(de)峰值數據(ju)(ju)流量,使用相機的(de)像素時鐘(Data Clock Speed)乘以Tap(數據(ju)(ju)傳輸通道)來表(biao)示(shi),Tap 結構如下表(biao)所示(shi):
當(dang)相機的(de)像(xiang)素組成(cheng)部(bu)分的(de)編碼(ma)超過8bit(Single-W型),它們將(jiang)被保存(cun)到(dao)一個double byte的(de)幀(zhen)緩沖區中,相應相機的(de)傳送數據(ju)的(de)有效數據(ju)流量增(zeng)加一倍。
例如:
一個白攝像機(Dual-W),Data Clock Speed是40 MHz數據(ju)時鐘。從表1-1可以看出Tap structure 為Dual-W的(de)時候(hou),其Mulitplier為4,所(suo)以前端的(de)峰值數據(ju)流量為160MByte/S。
(2) Front-end average data flow(前端(duan)平均數據流(liu)量(liang))
在傳輸有效的視頻信號的過程中,數據傳輸率可達到峰值數據傳輸速率。
一個(ge)視(shi)頻(pin)信號不斷的以(yi)峰值數(shu)(shu)據(ju)(ju)(ju)(ju)傳(chuan)(chuan)輸速率將視(shi)頻(pin)數(shu)(shu)據(ju)(ju)(ju)(ju)傳(chuan)(chuan)送出去。在隔行掃描(miao)中(zhong),奇行的數(shu)(shu)據(ju)(ju)(ju)(ju)傳(chuan)(chuan)送出去,而偶(ou)行的數(shu)(shu)據(ju)(ju)(ju)(ju)要等(deng)下一次才(cai)傳(chuan)(chuan)送出去,所(suo)以(yi)在同一個(ge)周期內,偶(ou)行中(zhong)的數(shu)(shu)據(ju)(ju)(ju)(ju)不需(xu)要傳(chuan)(chuan)送,因此(ci),前端平均數(shu)(shu)據(ju)(ju)(ju)(ju)流(liu)量在一段相當長的時間內數(shu)(shu)據(ju)(ju)(ju)(ju)傳(chuan)(chuan)輸率比峰值數(shu)(shu)據(ju)(ju)(ju)(ju)流(liu)量低。
① 計算線掃(sao)描相機的前端平(ping)均數據流
圖像(xiang)(xiang)傳感器的尺(chi)寸為(wei)(wei)H (H為(wei)(wei)有效像(xiang)(xiang)素,單(dan)位(wei)(wei)為(wei)(wei)Pixel),B為(wei)(wei)所需的字節數來存儲一個像(xiang)(xiang)素(單(dan)位(wei)(wei)為(wei)(wei)Byte),F為(wei)(wei)線陣(zhen)相機的線率單(dan)位(wei)(wei)為(wei)(wei)Hz ,則前(qian)端平均數據流為(wei)(wei)H×B×F。
例如:
一個2048像素,Single-W型的(de)相機,其LineRate(線率)為15kHz,即
H = 2048, B = 2Byte/Pixel , F = 15,000Hz
所以,前端平均數據(ju)流 = 2048 × 2 × 15000 =61,440,000Byte/S = 61.44MByte/S。
② 計算面陣掃描(miao)相機的(de)前端平均數(shu)據流
圖(tu)像(xiang)(xiang)傳感器的尺(chi)寸(cun)為(wei)(wei)H × V(H為(wei)(wei)水平有(you)效像(xiang)(xiang)素,V為(wei)(wei)垂直有(you)效像(xiang)(xiang)素,單位為(wei)(wei)Pixel),B為(wei)(wei)所需(xu)的字節(jie)數(shu)來存儲一個(ge)像(xiang)(xiang)素(單位為(wei)(wei)Byte),FR為(wei)(wei)面陣相(xiang)機(ji)的幀率(lv)單位為(wei)(wei)fps,則(ze)前端平均數(shu)據流為(wei)(wei)H×V×B×FR。
例如:
一個2048×1024像(xiang)素,Single-W型的相機(ji),其幀率為25fps,即
H = 2048, V = 1024 ,B= 2 Byte/Pixel , FR = 25fps
所(suo)以,前(qian)端平均數據流 = 2048 ×1024 × 2 × 25 =104,857,600Byte/S =105MByte/S。
二(er)、PCI Data flow(PCI 數據流)
(1) PCI available bandwidth(PCI 有(you)效帶寬)
PCI的有效帶(dai)寬取決于所用(yong)電腦(nao)的PCI總(zong)線(xian),下表顯示的是(shi)實際帶(dai)寬,所有連接到總(zong)線(xian)上的設備的同步數據流量之和小(xiao)于有效帶(dai)寬。
(2) PCIdelivery bandwidth(PCI 傳輸帶寬)
三、Back-end data flow(后端數據流)
要實現平衡只需后端(duan)數據流率(lv)等(deng)于前端(duan)平均數據流量。這就保(bao)證(zheng)了圖像采(cai)集(ji)卡上(shang)的FIFO不會溢出(chu)。
若是板卡上(shang)有(you)幾個通道(dao)來接(jie)相(xiang)機,需(xu)要(yao)考慮當(dang)所有(you)通道(dao)都接(jie)相(xiang)機的時(shi)候(hou),能(neng)夠保證后端(duan)數(shu)據流的總和要(yao)小于PCI的有(you)效帶寬。
四、Frame buffer throughput(圖像(xiang)采集卡上的幀(zhen)緩存區的吞吐(tu)量)
數(shu)據(ju)流進入圖像采集(ji)卡(ka)和從采集(ji)卡(ka)到PC的(de)內存(cun)緩沖區的(de)速率不(bu)應(ying)超過圖像采集(ji)卡(ka)的(de)吞吐量。后端數(shu)據(ju)流的(de)吞吐量不(bu)應(ying)超過PCI總線的(de)有效帶寬。
幀緩沖區的(de)實際吞(tun)吐量為理論吞(tun)吐量的(de)85%。
Frame bufferperformance
Grablink Value incorporates an 8 Mbytes frame buffer implementedby a 2 M x 32 SDRAM (Synchronous DRAM) clocked at 80 MHz. This provides atheoretical memory throughput of 320 Mbytes/s.
例如:
一塊Grablink Expert2的板卡接兩款高端的CameraLink 相(xiang)機,并且同時(shi)對兩顆相(xiang)機進(jin)行操作。
這個應用需(xu)(xu)要相(xiang)機A的(de)前端(duan)平均數據(ju)(ju)流(liu)速率為(wei)62 Mbytes/s,相(xiang)機B的(de)前端(duan)平均數據(ju)(ju)流(liu)速率為(wei)105 Mbytes/s。此(ci)應用需(xu)(xu)要獲取和存儲到PC內存中時不會出(chu)現延遲(chi)現象,因此(ci)需(xu)(xu)要每個通(tong)道(dao)的(de)后端(duan)數據(ju)(ju)流(liu)等于平均前端(duan)數據(ju)(ju)流(liu)。
將(jiang)所(suo)(suo)有(you)流(liu)量統(tong)計如表(biao)1-4所(suo)(suo)示:
通過(guo)表(biao)1-5可知,在做采集圖(tu)像的(de)(de)同時將(jiang)采集到(dao)的(de)(de)圖(tu)像保存到(dao)PC內存中(zhong),總共的(de)(de)數據(ju)量為334MByte/S,而Grablink Expert2的(de)(de)幀緩存區實際吞吐(tu)量為680MByte/S,同時要(yao)保證后端(duan)(duan)數據(ju)流(liu)(liu)(liu)速度要(yao)比PCI有(you)效帶寬小,這(zhe)樣將(jiang)圖(tu)像存儲到(dao)內存中(zhong)才(cai)不(bu)會丟(diu)失(shi)。從表(biao)1-4我們可以知道后端(duan)(duan)數據(ju)流(liu)(liu)(liu)為167MByte/S,如果主機的(de)(de)PCI總線(xian)擁(yong)有(you)64bits 33Mhz或32bits 64Mhz(這(zhe)種情況下PCI的(de)(de)傳輸(shu)帶寬為 180MByte見(jian)表(biao)1-3所示),累計(ji)的(de)(de)后端(duan)(duan)數據(ju)流(liu)(liu)(liu)為167MByte/s,有(you)足(zu)夠(gou)的(de)(de)傳送帶寬來將(jiang)圖(tu)像存儲到(dao)內存中(zhong)。所以此卡,可滿(man)足(zu)上述的(de)(de)應(ying)用。
總結:
在根據相機來選擇相應板(ban)卡的時(shi)候,需(xu)要注意(yi)以下幾項:
1、 The data clock Frequency for Camera不(bu)能(neng)超過66MHz
2、 前(qian)端(duan)數據的峰值數據流量不能大于(yu)板卡的幀(zhen)緩存的實際吞吐(tu)量
3、 前端(duan)平均數(shu)據流(liu)和后端(duan)數(shu)據流(liu)的速率(lv)之和不能超(chao)過圖像采集卡幀緩存區(qu)的實際吞吐量。
4、 后端數據流速率(lv)和不能大(da)于(yu)PCI傳輸帶寬。
5、 計算機上所有板(ban)卡的后端數據流速率和(he)不能(neng)大于(yu)PCI的有效(xiao)帶寬。