《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 模擬設(shè)計(jì) > 設(shè)計(jì)應(yīng)用 > 基于PCI總線的高速CCD圖像存儲(chǔ)系統(tǒng)設(shè)
基于PCI總線的高速CCD圖像存儲(chǔ)系統(tǒng)設(shè)
摘要: 基于PCI總線的高速CCD圖像存儲(chǔ)系統(tǒng)設(shè),1 引言偵察與監(jiān)視在軍事斗爭(zhēng)中的地位舉足輕重。在各種偵察/監(jiān)視技術(shù)中,航空偵察占有重要的地位,可見光偵察是一種重要的偵察形式,無人偵察機(jī)顯示出了廣闊的發(fā)展前景,現(xiàn)代科學(xué)技術(shù)的發(fā)展為現(xiàn)代航空偵察與監(jiān)視技術(shù)帶
Abstract:
Key words :

1 引言

偵察與監(jiān)視在軍事斗爭(zhēng)中的地位舉足輕重。在各種偵察/監(jiān)視技術(shù)中,航空偵察占有重要的地位,可見光偵察是一種重要的偵察形式,無人偵察機(jī)顯示出了廣闊的發(fā)展前景,現(xiàn)代科學(xué)技術(shù)的發(fā)展為現(xiàn)代航空偵察與監(jiān)視技術(shù)帶來了新的發(fā)展契機(jī)。

航空偵察一個(gè)主要的途徑就是利用高性能高速攝像機(jī)進(jìn)行航空拍照,采集各種圖像信息。然而,數(shù)字化的偵察圖像分辨率高、信息量大,使后續(xù)的處理、傳輸、存儲(chǔ)等過程的實(shí)現(xiàn)變得極為困難,從而給機(jī)載圖像/視頻系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)帶來了巨大的挑戰(zhàn)。為了解決這些問題,本文基于某型高速相機(jī),利用低成本FPGA,構(gòu)建了一個(gè)高性能的圖像采集存儲(chǔ)系統(tǒng),完成對(duì)高分辨率、高幀率偵察圖像的采集和存儲(chǔ)。

2 某型高速相機(jī)簡(jiǎn)介[1]

系統(tǒng)選擇的高速相機(jī)是一款高分辨率、高速度線掃數(shù)字相機(jī),其圖像傳感器采用先進(jìn)的CCD(Charge-Coupled Device)圖像傳感器,采用了世界尖端水平的高靈敏度掃描成像技術(shù)——高速率的TDI(Time Delay and Integration)技術(shù)、多重曝光技術(shù)并加強(qiáng)藍(lán)色響應(yīng),從而使該型相機(jī)可提供比單輸出線掃相機(jī)更好的靈敏度特性,總的數(shù)據(jù)傳輸率可高達(dá)200MB/s。

相機(jī)接口主要包括后面板上的六個(gè)接口:其中四個(gè)為數(shù)據(jù)輸出接口,每個(gè)接口包括16位數(shù)據(jù)信號(hào),1位數(shù)據(jù)同步信號(hào),1位同步時(shí)鐘信號(hào),信號(hào)的電平輸出格式為L(zhǎng)VDS電平格式;另外兩個(gè)接口分別為控制信號(hào)接口和電源接口。在控制信號(hào)的作用下,相機(jī)同步輸出包含同步時(shí)鐘信號(hào)(STROBE)和水平同步信號(hào)(LVAL)在內(nèi)的 8×8bit標(biāo)準(zhǔn)的灰度圖像數(shù)據(jù),圖像分辨率可選擇為4096×30`72(本系統(tǒng)采用分辨率)和2048×3072。

相機(jī)控制接口信號(hào)中,行觸發(fā)信號(hào)(EXSYNC)至關(guān)重要。它負(fù)責(zé)圖像數(shù)據(jù)的觸發(fā)輸出,行觸發(fā)信號(hào)的上升沿觸發(fā)數(shù)據(jù)并指示數(shù)據(jù)有效。相機(jī)觸發(fā)要求此信號(hào)存在下降沿,最小觸發(fā)頻率為300HZ。

3  系統(tǒng)硬件設(shè)計(jì)及工作原理

本設(shè)計(jì)硬件系統(tǒng)主要包括電平轉(zhuǎn)換,數(shù)據(jù)接收預(yù)處理和數(shù)據(jù)采集存儲(chǔ)三個(gè)部分。圖1為系統(tǒng)硬件原理框圖。在總線結(jié)構(gòu)上,系統(tǒng)采用了滿足高速數(shù)據(jù)傳輸?shù)腜CI總線結(jié)構(gòu),PCI9054是PLX公司推出的一種32位33MHz的PCI總線主控I/O加速器,它采用多種先進(jìn)技術(shù),使復(fù)雜的PCI接口應(yīng)用設(shè)計(jì)變得相對(duì)簡(jiǎn)單。

從資源和成本方面考慮,F(xiàn)PGA選用Altera公司的低成本Cyclone系列芯片-EP1C6Q240C8。存儲(chǔ)介質(zhì)則選用SCSI磁盤陣列,它能滿足高速、大數(shù)據(jù)量的存儲(chǔ)。

圖1 系統(tǒng)原理框圖
 


系統(tǒng)工作原理:

系統(tǒng)上電,首先完成一系列初始化工作:PC通過底層驅(qū)動(dòng)配置PCI9054的寄存器,使之處于正常工作模式(C模式)[2]; FPGA上電,配置用戶電路(此時(shí),F(xiàn)PGA內(nèi)部邏輯和PCI9054都處于等待狀態(tài))。

PC應(yīng)用程序啟動(dòng)后,向PCI9054發(fā)送數(shù)據(jù)傳輸指令,PCI9054收到數(shù)據(jù)傳輸指令,通過LOCAL BUS通知FPGA開始工作:FPGA產(chǎn)生行觸發(fā)信號(hào)(EXSYNC),觸發(fā)相機(jī)進(jìn)行拍照、傳輸數(shù)據(jù)。然后,PCI9054進(jìn)入工作狀態(tài),開始采集數(shù)據(jù),并將數(shù)據(jù)存儲(chǔ)到磁盤陣列。FPGA內(nèi)部邏輯和PC應(yīng)用程序通過行計(jì)數(shù)判斷一幀圖像傳輸完畢,相繼進(jìn)入等待狀態(tài)。但是,PC應(yīng)用程序在接收完一幀圖像,進(jìn)入等待狀態(tài)后,延續(xù)一定時(shí)間,會(huì)自動(dòng)觸發(fā)下一個(gè)數(shù)據(jù)傳輸指令通知FPGA開始下一幀圖像傳輸。

3.1   電平格式轉(zhuǎn)換

PCI9054芯片電平格式為3.3V LVTTL格式,相機(jī)輸出信號(hào)的電平格式為L(zhǎng)VDS格式,基于系統(tǒng)總體需要,有必要在進(jìn)行圖像預(yù)處理前將LVDS相機(jī)輸出信號(hào)轉(zhuǎn)換成LVTTL格式電平。

3.2   數(shù)據(jù)接收預(yù)處理

FPGA完成圖像預(yù)處理功能。FPGA是以并行運(yùn)算為主導(dǎo)的芯片,處理速度更快。數(shù)據(jù)預(yù)處理過程包括:數(shù)據(jù)緩沖、位并轉(zhuǎn)換。

數(shù)據(jù)緩沖[3]:相機(jī)利用4個(gè)通道輸出圖像數(shù)據(jù),每個(gè)端口的數(shù)據(jù)傳輸以本端口時(shí)鐘為參考,傳輸過程中由于各種差異如傳輸電纜的長(zhǎng)度不同,使得各個(gè)端口的時(shí)鐘信號(hào)產(chǎn)生相對(duì)的相位漂移,從而使四個(gè)端口數(shù)據(jù)輸出不完全同步,這不利于圖像數(shù)據(jù)的同步采集。為消除數(shù)據(jù)異步,F(xiàn)PGA內(nèi)部設(shè)計(jì)了由4個(gè)FIFO組成的數(shù)據(jù)緩沖器組。每個(gè)端口的有效數(shù)據(jù)寬度為16bit,傳送一行4096個(gè)數(shù)據(jù)需用512個(gè)時(shí)鐘周期,因此FIFO深度設(shè)為512個(gè)字。相機(jī)送來的4個(gè)LVAL信號(hào)為各對(duì)應(yīng)通道寫使能信號(hào), 4個(gè)STROBE信號(hào)作為對(duì)應(yīng)通道寫時(shí)鐘。FIFO輸出端采用系統(tǒng)時(shí)鐘(15MHz)作為統(tǒng)一的數(shù)據(jù)同步時(shí)鐘,并設(shè)計(jì)一個(gè)讀請(qǐng)求信號(hào),當(dāng)FIFO半滿時(shí)讀取數(shù)據(jù),經(jīng)過緩存的數(shù)據(jù)以與系統(tǒng)時(shí)鐘同步的64bit寬度格式輸出。

       位并轉(zhuǎn)換:PCI9054芯片LOCAL端的有效數(shù)據(jù)位數(shù)有兩種選擇:8bit和32bit(可更改9054寄存器設(shè)置,為了保證數(shù)據(jù)采集速度,本系統(tǒng)設(shè)置為32bit)。但是相機(jī)的輸出數(shù)據(jù)通過緩沖之后仍然為64bit,為了滿足PCI9054數(shù)據(jù)采集位數(shù)要求,必須將64bit數(shù)據(jù)進(jìn)行位并轉(zhuǎn)換,變成32bit傳輸。本系

統(tǒng)設(shè)計(jì)在FPGA內(nèi)部將數(shù)據(jù)的高32bit和低32bit分別送入二選一BUSMUX的輸入端,系統(tǒng)時(shí)鐘的電平選

擇數(shù)據(jù)輸出。64bit數(shù)據(jù)轉(zhuǎn)化成32bit數(shù)據(jù)傳輸,但數(shù)據(jù)率變成原來的兩倍(30M/s)。

3.3     數(shù)據(jù)采集存儲(chǔ)

對(duì)于整個(gè)系統(tǒng)來說,存儲(chǔ)系統(tǒng)的持續(xù)存儲(chǔ)速度是個(gè)至關(guān)重要的參數(shù)。數(shù)據(jù)的采集存儲(chǔ)采用微機(jī)為主體,在其PCI總線上掛載一塊SCSI的接口卡和9054接口卡,9054接口卡用于數(shù)據(jù)采集,SCSI接口卡上掛載兩個(gè)SCSI硬盤,組成RAID-0的硬盤陣列,這樣可以大大提高硬盤的持續(xù)存儲(chǔ)速度。利用PCI9054進(jìn)行數(shù)據(jù)采集時(shí),數(shù)據(jù)的傳輸路徑為:PCI總線-內(nèi)存-硬盤陣列。現(xiàn)有兩種傳輸方案可供選擇:第一種為單線采集存儲(chǔ),顯然,這種方案會(huì)降低數(shù)據(jù)的的采集速度。本系統(tǒng)選用第二種方案:流水線存儲(chǔ),如圖2所示。理論上,流水線方式的數(shù)據(jù)采集速度應(yīng)該是單線采集的兩倍。

圖2 流水線存儲(chǔ)時(shí)序示意圖
 


4 部分軟硬件程序設(shè)計(jì)

3.4   PCI9054 Local Bus 硬件驅(qū)動(dòng)

PCI9054局部總線是外設(shè)(FPGA)和9054之間通信的橋梁。9054圖像數(shù)據(jù)的采集需要使9054局部總線信號(hào)滿足一定的時(shí)序要求,保證數(shù)據(jù)傳輸?shù)耐剑葱枰狥PGA端硬件驅(qū)動(dòng)。驅(qū)動(dòng)是用Verilog HDL代碼編寫的一個(gè)狀態(tài)機(jī),代碼如下[2][4]:

always @ (posedge CLK)

begin

  casex (CurrentState)

   1'b0: begin

                      if (!LLADS_)

                      begin       LLREADY <= 1;    CurrentState <= 1;         end

                      else begin       LLREADY <= 0;    end

            end

   1'b1: begin

                      if (LLBLAST_)      //突發(fā)循環(huán)重復(fù)

                      begin       LLREADY <= 1;    CurrentState <= 1;         end

                      else                //最后一個(gè)循環(huán)

                      begin       LLREADY <= 0;    CurrentState <= 0;         end

              end

        default:

               CurrentState <= 0;

        Endcase         end

assign LLREADY_ = (LLREADY) ? 1'b0 : 1'b1;

4.2  PCI9054驅(qū)動(dòng)層和應(yīng)用層設(shè)計(jì)

系統(tǒng)所用PCI采集卡非windows標(biāo)準(zhǔn)硬件,驅(qū)動(dòng)程序需要自行開發(fā),這里使用WDM編程。為了提高速度采用雙線程操作。由于寫磁盤比較慢,如果等寫完磁盤再讀local bus顯然效率太低,所以啟動(dòng)雙線程雙buffer讀寫數(shù)據(jù)[5]。

部分程序代碼:

BOOL GetData()

{ ……

//創(chuàng)建等待驅(qū)動(dòng)中斷線程以及寫文件線程

hEvent_Disk=GreateEvent(NULL,TRUE,TRUE,NULL);  hEvent_Mem = CreateEvent(NULL,TRUE,FALSE,NULL);

_beginthread(WaitForDataThread,0,NULL);                   _beginthread(WriteDiskThread,0,NULL);

//啟動(dòng)DMA傳輸

SetDma();   BlockDmaLocalToPci(dmabuffer, BLOCK_ONE_DMA);

}

void WaitForDataThread(void * pParam)

{}

void WriteDiskThread(void * pParam)

{}

4.3 數(shù)據(jù)傳輸指令生成

PC應(yīng)用程序產(chǎn)生數(shù)據(jù)傳輸指令,觸發(fā)數(shù)據(jù)傳輸。指令的產(chǎn)生是通過9054在PC端的底層驅(qū)動(dòng),設(shè)置9054 LOCAL端USERO管腳電平,使FPGA進(jìn)入工作狀態(tài),并產(chǎn)生相機(jī)行觸發(fā)信號(hào)(EXSYNC),觸發(fā)相機(jī)拍照傳輸數(shù)據(jù)。USERO信號(hào)為高電平時(shí),F(xiàn)PGA和9054都處于等待狀態(tài);USERO下降沿觸發(fā)數(shù)據(jù)傳輸,使FPGA和9054進(jìn)入工作狀態(tài);數(shù)據(jù)傳輸完畢,USERO拉高。時(shí)序如圖3。

5         系統(tǒng)測(cè)試及工程考慮

本系統(tǒng)測(cè)試微機(jī)環(huán)境為:CPU,Pentium(R) 4. 2.40GHz;內(nèi)存,333MHz,512MB/s;北橋芯片,845PE;操作系統(tǒng),Windows Server 2003;SCSI硬盤空間,120G。

系統(tǒng)測(cè)試結(jié)果:圖像單線穩(wěn)定存儲(chǔ)速率為37.2 MB/s ,流水線穩(wěn)定存儲(chǔ)速率為71.2MB/s;持續(xù)記錄時(shí)間為25分鐘。

       工程考慮:系統(tǒng)速度主要限制于兩個(gè)瓶頸,一是硬盤本身,二是PCI總線。本系統(tǒng)雖然采用了高速硬盤,但還有一個(gè)操作效率的問題。數(shù)據(jù)從FPGA到PCI9054的傳輸介質(zhì)采用一般硬盤線,此類硬盤線的上限頻率為33M,限制數(shù)據(jù)采集速度;同時(shí)由于系統(tǒng)需要通過PCI總線轉(zhuǎn)移數(shù)據(jù),而計(jì)算機(jī)的PCI總線多為32位、33MHz的總線,這個(gè)總線的理論數(shù)據(jù)為132MB/s,當(dāng)總線上僅僅有一個(gè)設(shè)備時(shí),實(shí)測(cè)實(shí)際總線持續(xù)傳輸速率在100MB/s以下,當(dāng)總線上再掛載磁盤適配器時(shí),總線的數(shù)據(jù)傳輸速率會(huì)更低。系統(tǒng)穩(wěn)定性主要取決于FPGA內(nèi)部邏輯的容錯(cuò)性和微機(jī)的穩(wěn)定性。在高速存儲(chǔ)的環(huán)境下,微機(jī)系統(tǒng)容易死機(jī),因此微機(jī)選擇具有高穩(wěn)定性的Windows Server 2003操作系統(tǒng)作為圖像采集的存儲(chǔ)環(huán)境。

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
国产伦精品一区二区三区| 亚洲精品123区| 欧美人交a欧美精品| 噜噜噜91成人网| 久久久久久穴| 久久精品一区二区三区中文字幕 | 亚洲在线观看免费| 亚洲午夜国产成人av电影男同| 亚洲精品国产精品国自产观看浪潮| 亚洲电影第1页| 亚洲电影成人| 亚洲激情综合| 亚洲精选久久| 艳妇臀荡乳欲伦亚洲一区| 一本色道久久综合亚洲精品小说| 日韩一二三区视频| 一本色道久久综合狠狠躁篇的优点 | 亚洲精品乱码久久久久久久久 | 亚洲美女黄网| 一区二区av在线| 亚洲天堂男人| 午夜亚洲福利在线老司机| 欧美在线二区| 久久伊人免费视频| 欧美成人亚洲成人日韩成人| 欧美劲爆第一页| 欧美日韩一区二区在线观看视频| 国产精品成人免费精品自在线观看| 国产精品久久久久久久久久尿 | 好吊妞**欧美| 91久久精品国产91性色tv| 日韩视频国产视频| 亚洲香蕉网站| 久久精品亚洲一区二区| 亚洲精品在线观看免费| 亚洲特级毛片| 性娇小13――14欧美| 久久精品国产v日韩v亚洲| 噜噜噜久久亚洲精品国产品小说| 欧美精品日韩综合在线| 欧美色精品在线视频| 国产精品自拍在线| 激情综合在线| 99热这里只有精品8| 午夜久久久久久| 亚洲精品国产精品国自产观看 | 欧美va天堂| 欧美日韩视频在线一区二区| 国产精品视频福利| 精品福利免费观看| 亚洲理论在线观看| 午夜精品一区二区三区在线| 亚洲日本在线观看| 午夜国产欧美理论在线播放| 美女性感视频久久久| 国产精品护士白丝一区av| 韩国成人福利片在线播放| 91久久精品日日躁夜夜躁国产| 宅男精品视频| 亚洲激情自拍| 小黄鸭精品aⅴ导航网站入口| 蜜月aⅴ免费一区二区三区| 国产精品久久久久久久久| 在线观看欧美日韩国产| 亚洲天堂av高清| 亚洲欧洲在线播放| 欧美一区二区私人影院日本| 欧美大片91| 国产欧美视频一区二区| 亚洲伦理网站| 亚洲国产精品毛片| 校园激情久久| 欧美日韩国产欧| 狠狠入ady亚洲精品| 亚洲视频免费看| 亚洲精品欧洲精品| 久久九九免费视频| 国产精品大全| 亚洲片国产一区一级在线观看| 香蕉精品999视频一区二区| 亚洲少妇中出一区| 欧美91视频| 国产原创一区二区| 亚洲午夜视频在线| 99视频精品在线| 免费一级欧美片在线播放| 国产欧美日韩在线观看| 一本色道久久综合| 日韩亚洲成人av在线| 久久综合精品国产一区二区三区| 国产精品任我爽爆在线播放| 日韩小视频在线观看| 亚洲精品国偷自产在线99热| 久久久久久电影| 国产精品人人做人人爽| 99视频一区| 一区二区三区日韩精品视频| 欧美xx69| 在线播放亚洲| 久久精品国产成人| 久久九九99视频| 国产日产欧产精品推荐色 | 亚洲国产精品一区制服丝袜 | 久久蜜臀精品av| 国产伦精品一区二区三区| 中国日韩欧美久久久久久久久| 日韩写真视频在线观看| 欧美成人免费播放| 在线播放亚洲一区| 亚洲激情女人| 免费亚洲婷婷| 伊人久久大香线蕉综合热线| 欧美一区二区精品在线| 香蕉久久一区二区不卡无毒影院 | 国产免费观看久久| 亚洲与欧洲av电影| 亚洲女优在线| 国产精品无码永久免费888| 亚洲天堂av图片| 亚洲综合日韩在线| 国产精品久久久久久久免费软件| 一区二区三区成人精品| 亚洲一二三区在线| 国产精品久久久久99| 亚洲一卡久久| 欧美一区免费视频| 国产日韩一区二区三区在线播放| 亚洲欧美一区二区三区在线| 欧美一级久久| 国产视频在线一区二区| 性一交一乱一区二区洋洋av| 久久精品视频免费播放| 国内精品久久久久久久影视麻豆 | 一本色道久久综合亚洲精品高清| 亚洲一区在线直播| 国产精品女同互慰在线看| 午夜精品一区二区三区在线视| 久久国产一区| 伊人久久大香线蕉综合热线| 亚洲免费av观看| 国产精品久久国产愉拍| 亚洲欧美视频一区| 久久中文精品| 亚洲日本va午夜在线影院| 亚洲午夜久久久久久久久电影院| 国产精品久久久久久妇女6080| 亚洲女性喷水在线观看一区| 久久久五月天| 亚洲精品国久久99热| 亚洲一区二区三区视频| 国产农村妇女精品| 亚洲国产精品t66y| 欧美日韩成人在线观看| 亚洲天堂成人在线视频| 久久久999精品| 亚洲人午夜精品免费| 亚洲一区亚洲| 国产最新精品精品你懂的| 亚洲裸体俱乐部裸体舞表演av| 欧美四级在线观看| 欧美一区亚洲| 欧美经典一区二区三区| 亚洲影视在线| 嫩草伊人久久精品少妇av杨幂| 艳女tv在线观看国产一区| 欧美中文字幕第一页| 亚洲国产另类精品专区 | 国产美女搞久久| 亚洲激情六月丁香| 国产精品久久二区| 亚洲国产精品成人综合色在线婷婷| 欧美日韩成人免费| 欧美一区三区二区在线观看| 欧美激情精品久久久久久大尺度| 亚洲一区二区免费| 免费高清在线一区| 亚洲一区二区三区在线视频| 美女久久一区| 亚洲影院色在线观看免费| 欧美aaa级| 午夜精品成人在线视频| 欧美精品日日鲁夜夜添| 欧美在线亚洲综合一区| 欧美视频一区在线观看| 亚洲第一网站| 国产精品日韩欧美一区| 亚洲精品一区二区三区婷婷月 | 国产精品视频免费一区| 亚洲精品国产精品乱码不99按摩| 国产精品视频xxxx| 99re热这里只有精品视频 | 亚洲一区999| 欧美激情亚洲视频| 欧美一区二区三区啪啪| 国产精品播放| 99国产麻豆精品| 激情小说亚洲一区| 久久er精品视频| 一级成人国产| 欧美激情一级片一区二区|