當(dāng)前位置:首頁 > EDA > 電子設(shè)計(jì)自動(dòng)化
[導(dǎo)讀]摘要:以XC2V1500-FPGA為硬件架構(gòu),設(shè)計(jì)了一種圖像信號(hào)發(fā)生器,作為自適應(yīng)光學(xué)系統(tǒng)波前處理機(jī)的信號(hào)源,為波前處理機(jī)的調(diào)試和算法驗(yàn)證提供支持。系統(tǒng)采用大容量的NAND型FLASH存儲(chǔ)數(shù)據(jù),存儲(chǔ)容量為1 GB。圖像數(shù)據(jù)通過

摘要:以XC2V1500-FPGA為硬件架構(gòu),設(shè)計(jì)了一種圖像信號(hào)發(fā)生器,作為自適應(yīng)光學(xué)系統(tǒng)波前處理機(jī)的信號(hào)源,為波前處理機(jī)的調(diào)試和算法驗(yàn)證提供支持。系統(tǒng)采用大容量的NAND型FLASH存儲(chǔ)數(shù)據(jù),存儲(chǔ)容量為1 GB。圖像數(shù)據(jù)通過USB總線預(yù)存入FLASH ROM,在FPGA控制邏輯作用下循環(huán)讀出,并通過Camera Link接口輸出。該Camera Link接口支持base,medium,full三種模式,輸出像素時(shí)鐘頻率可以達(dá)到70 MHz。
關(guān)鍵詞:FPGA;FLASH ROM;圖像信號(hào)發(fā)生器;USB;Camera Link

0 引言
    在自適應(yīng)光學(xué)系統(tǒng)中,哈特曼波前傳感器檢測到的波前信息通過高速CCD相機(jī)采集輸出,然后由波前處理機(jī)完成斜率計(jì)算、波前復(fù)原運(yùn)算和控制運(yùn)算。自適應(yīng)光學(xué)系統(tǒng)研制時(shí),為了縮短研制周期,哈特曼傳感器和波前處理機(jī)需要同步進(jìn)行設(shè)計(jì)和研制,以便同步完成后進(jìn)行系統(tǒng)集成調(diào)試。
    然而,通常都要等到哈特曼傳感器研制完成,并且配合必要的光學(xué)系統(tǒng)之后,才能輸出子光斑圖像給波前處理機(jī)進(jìn)行調(diào)試。這樣給波前處理機(jī)的研制周期帶來了很大壓力。因此,如果可以建立一個(gè)模擬前端系統(tǒng)哈特曼傳感器作為子光斑圖像輸出的信號(hào)源,則可以簡化波前處理機(jī)對(duì)調(diào)試環(huán)境的要求、縮短其研制周期。本文以XC2V1500-FPGA和K9F1G16UOM-FLASH ROM為載體,設(shè)計(jì)了一種模擬哈特曼傳感器中CCD相機(jī)圖像輸出的信號(hào)發(fā)生器。該系統(tǒng)不僅能為波前處理機(jī)的調(diào)試提供信號(hào)源,而且還可以為已經(jīng)研制完成的波前處理機(jī)提供算法驗(yàn)證的支持。

1 系統(tǒng)原理及組成
    該圖像信號(hào)發(fā)生器的基本原理如下:通過模擬產(chǎn)生CCD相機(jī)輸出控制時(shí)序,將特定圖像進(jìn)行循環(huán)播放輸出。目標(biāo)圖像數(shù)據(jù)可通過PC機(jī)進(jìn)行加載,并且需要進(jìn)行非易失性存儲(chǔ)。這樣在完成圖像加載之后,系統(tǒng)一經(jīng)啟動(dòng)就能夠?qū)D像數(shù)據(jù)按照要求進(jìn)行輸出。目標(biāo)圖像按要求均是灰度圖像,可以是單幀、也可以是多幀,可以是從相機(jī)采集而來,也可以是通過Matlab仿真模擬得到的。選擇載入不同的目標(biāo)圖像序列,則系統(tǒng)可以完成不同的需求任務(wù)。
    系統(tǒng)組成如圖1所示,主要由主控模塊、USB接口模塊、數(shù)據(jù)存儲(chǔ)模塊和Camera Link接口模塊組成。


    主控模塊由一片XC2V1500-FPGA來實(shí)現(xiàn)。CY7C68013A芯片組成USB接口模塊,實(shí)現(xiàn)PC機(jī)與系統(tǒng)的通信功能。8片并行K9F1G16UOM-FLASHROM芯片組成數(shù)據(jù)存儲(chǔ)模塊,可提供1 GB的存儲(chǔ)空間、良好的讀寫速度。對(duì)于Camera Link接口模塊,采用3片DS90CR287、1片DS90LV019和1片DS90LV048A來實(shí)現(xiàn),可以支持Carnera Link接口的初級(jí)配置(Base)、中級(jí)配置(Medium)和高級(jí)配置(Full)。Camera Link接口是一種應(yīng)用最廣泛的高幀頻相機(jī)接口,具有差分傳輸、傳輸速率高的特點(diǎn)。
    系統(tǒng)的任務(wù)可以分為兩個(gè)過程:首先PC機(jī)通過USB總線和FPGA將目標(biāo)圖像序列寫入FLASH;然后由于FLASH是一種非易失存儲(chǔ)器,接下來系統(tǒng)一旦啟動(dòng)后FPGA就能夠模擬產(chǎn)生CCD相機(jī)時(shí)序、將FLASH中的數(shù)據(jù)進(jìn)行循環(huán)輸出。這兩個(gè)過程的實(shí)現(xiàn)可加載不同的FPGA程序來完成。

2 系統(tǒng)實(shí)現(xiàn)
2.1 USB接口模塊
    USB接口具有傳輸速度快、即插即用等優(yōu)點(diǎn),所以使用USB來實(shí)現(xiàn)PC機(jī)與系統(tǒng)的通信。CY7C68013A作為USB 2.0控制器,有3種接口工作模式:Ports,Slave FIFO和GPIF。根據(jù)系統(tǒng)構(gòu)成和實(shí)際要求,選用Slave FIFO模式的數(shù)據(jù)傳輸方案。具體的硬件連接如圖2所示。


    CY7C68013A通過固件編程來配置具體的功能。應(yīng)用程序通過USB驅(qū)動(dòng)程序建立與USB外部設(shè)備的聯(lián)系。本文采用了Cypress公司提供的通用驅(qū)動(dòng)CyUsb.sys,該驅(qū)動(dòng)程序完全滿足本系統(tǒng)設(shè)計(jì)的要求。應(yīng)用程序可以通過兩種方式來訪問CyUsb.sys:
    (1)使用Windows API如SetupDiXxxx和Deviceio Control;
    (2)使用Cypress公司提供的CyAPI.lib。
    本文采用CyAPI.lib來訪問USB驅(qū)動(dòng),CyAPI.lib提供了簡單高效的與Cyusb.sys通信的方法,方便掌握、可有效縮短USB設(shè)備的開發(fā)周期。
    在完成圖像數(shù)據(jù)寫入功能時(shí),F(xiàn)PGA接收到圖像數(shù)據(jù)寫入的命令后,使faddr地址指向用于下傳數(shù)據(jù)的端點(diǎn)FIFO,然后開始獲取來自USB控制器的數(shù)據(jù),F(xiàn)PGA內(nèi)部USB通信模塊工作情況如圖3所示。IFCLK是由FPGA提供的40MHz時(shí)鐘,CY7C68013A的端點(diǎn)FIFO被配置為同步工作。


2.2 FLASH ROM無效塊管理
    選取 SAMSUNG 公司的 NAND 型的K9F1G16UOM-FLASH作為存儲(chǔ)芯片,單片容量為1 Gb、數(shù)據(jù)寬度為16 b。大容量的FLASH器件一般都是按塊(block)管理其存儲(chǔ)空間。FLASH芯片可能有包含一個(gè)或多個(gè)無效位的無效塊,這在NAND型FLASH中是不可避免的。無效塊出現(xiàn)的幾率很小,但影響很大。如果對(duì)FLASH中的無效塊進(jìn)行操作,無效塊會(huì)在數(shù)據(jù)記錄的過程中造成數(shù)據(jù)的丟失和誤碼,影響數(shù)據(jù)的有效性和完整性。由于無效塊和有效塊相互隔離,無效塊并不會(huì)影響有效塊的操作,因此只要在數(shù)據(jù)存儲(chǔ)前將FLASH中的無效塊剔除,就可有效避免數(shù)據(jù)的丟失和誤碼。
    FLASH在出廠時(shí)會(huì)對(duì)無效塊進(jìn)行檢查,并將信息標(biāo)注在FLASH每一塊的第一頁和第二頁的第1 024個(gè)字,0xFFFF表示塊有效。非0xFFFF則表示無效塊。為避免破壞這些標(biāo)注信息,在對(duì)FLASH進(jìn)行任何擦除或?qū)懭氩僮髑?,要首先建立無效塊信息表。SAMSUNG公司保證其FLASH的第一塊一定是有效塊,并且在對(duì)其擦寫1 000次以內(nèi)不會(huì)出任何錯(cuò)。所以本文使用該塊來保存整片F(xiàn)LASH的無效塊信息。FPGA遍歷訪問FLASH中的每個(gè)塊的第一頁和第二頁,判斷該塊是否滿足有效塊的要求,若不滿足則將其塊地址緩存到FPGA的RAM中;接下來,將FLASH的無效塊數(shù)量和無效塊地址存入該片F(xiàn)LASH的第一塊的第一頁內(nèi)。在FLASH的使用過程中,仍然有可能產(chǎn)生新的無效塊,當(dāng)出現(xiàn)這種情況時(shí),則需要更新無效塊信息表。無效塊信息表用來供讀寫地址產(chǎn)生器查詢時(shí)使用,這樣就可以避開壞塊的影響。
2.3 數(shù)據(jù)寫入管理
    圖像數(shù)據(jù)寫入時(shí),F(xiàn)PGA接收來自USB控制器的數(shù)據(jù),并產(chǎn)生控制時(shí)序?qū)?shù)據(jù)寫入FLASH。由于高幀頻相機(jī)一般是多通道輸出,所以在模擬這類相機(jī)的時(shí)候要注意這個(gè)因素。對(duì)于某一幅目標(biāo)圖像,圖像數(shù)據(jù)寫入首先是應(yīng)用程序獲取圖像數(shù)據(jù);然后將各個(gè)通道對(duì)應(yīng)位置的像素?cái)?shù)據(jù)按次序調(diào)整在一起;接著通過USB將數(shù)據(jù)傳輸至FPGA,F(xiàn)PGA將數(shù)據(jù)截?cái)喑? KB大小并依次將各分段數(shù)據(jù)塊寫入8片F(xiàn)LASH中,數(shù)據(jù)分流如圖4所示。圖像數(shù)據(jù)按通道進(jìn)行調(diào)整可以使得系統(tǒng)輕松地實(shí)現(xiàn)多通道輸出。對(duì)數(shù)據(jù)的分流處理,使得系統(tǒng)的8片F(xiàn)LASH在讀出時(shí)可以真正實(shí)現(xiàn)并行讀取數(shù)據(jù)。


    FLASH的一頁(page)的大小為2 KB,也是它的基本瀆寫單元。要想連續(xù)寫入2 KB的數(shù)據(jù),需要將訪問FLASH的頁地址都設(shè)為00H。當(dāng)FPGA需要向某一片F(xiàn)LASH寫入數(shù)據(jù)時(shí),首先要查看該片F(xiàn)LASH的FPGA寫入管理模塊是否處于ready狀態(tài);若處于busy狀態(tài),則應(yīng)用程序進(jìn)入傳輸?shù)却?,?dāng)寫入管理進(jìn)入ready狀態(tài)后,則應(yīng)用程序發(fā)送數(shù)據(jù),一共2 KB數(shù)據(jù)緩沖到FLASH在FPGA中對(duì)應(yīng)的RAM;數(shù)據(jù)緩沖完成之后,該FLASH的寫入管理模塊進(jìn)入busy狀態(tài)并開始將RAM中的數(shù)據(jù)寫入FLASH ROM的某一頁(page),同時(shí)FPGA轉(zhuǎn)向?qū)ο乱黄現(xiàn)LASH進(jìn)行傳輸訪問。
2.4 數(shù)據(jù)讀出管理
    數(shù)據(jù)讀取輸出是指FPGA模擬CCD相機(jī)輸出時(shí)序,將FLASH中的數(shù)據(jù)通過Camera Link接口進(jìn)行循環(huán)輸出。所選的FLASH的單片最大讀出速率可達(dá)25 MB/s,由于8片F(xiàn)LASH可以并行讀出,所以整個(gè)系統(tǒng)的數(shù)據(jù)讀出率可以達(dá)到200 MB/s。這樣有利于模擬出較高幀頻的CCD相機(jī)輸出。當(dāng)系統(tǒng)進(jìn)行圖像數(shù)據(jù)瀆取輸出時(shí),F(xiàn)PGA中設(shè)置了FIFO來緩沖數(shù)據(jù)。Camera Link輸出管理模塊產(chǎn)生相機(jī)時(shí)序,將FIFO中的數(shù)據(jù)按要求送到Cam era Link接口。對(duì)于從FLASH向FIFO轉(zhuǎn)移數(shù)據(jù),首先將各FLASH中的2 KB數(shù)據(jù)被讀入其在FPGA中對(duì)應(yīng)的RAM中;然后控制各RAM中的數(shù)據(jù)被按順序轉(zhuǎn)移至FIFO中,控制器通過FIFO的數(shù)據(jù)深度來判斷是否需要繼續(xù)讀入數(shù)據(jù),當(dāng)判斷FIFO中的數(shù)據(jù)快滿時(shí)暫停讀取,這時(shí)由于數(shù)據(jù)繼續(xù)被讀出,隨著FIFO中的數(shù)據(jù)減少到一定程度時(shí),啟動(dòng)將RAM中的數(shù)據(jù)繼續(xù)讀入FIFO;一旦一個(gè)RAM中的數(shù)據(jù)被轉(zhuǎn)移,則FLASH讀取管理模塊繼續(xù)將該FLASH中的后續(xù)數(shù)據(jù)寫入該RAM。


    在加載某種8位數(shù)據(jù)寬度、雙通道輸出的目標(biāo)圖像時(shí),使用Chipscope得到的Camera Link信號(hào)如圖5所示。其中,strobe為時(shí)鐘信號(hào),dval,lval,fval分別是數(shù)據(jù)有效、行有效、幀有效信號(hào)。觀測結(jié)果說明輸出的數(shù)據(jù)與加載的數(shù)據(jù)保持一致,輸出控制時(shí)序也符合要求。
為了模擬出不同類型的CCD相機(jī),只需要修改FPGA程序中設(shè)定的strobe時(shí)鐘頻率、Line blanking時(shí)間、Frame blanking時(shí)間等必要參數(shù)即可。

3 實(shí)驗(yàn)結(jié)果與分析
    系統(tǒng)實(shí)物圖如圖6所示。


    為了檢測該信號(hào)發(fā)生器的性能,將其輸出接入圖像采集卡進(jìn)行驗(yàn)證。經(jīng)過試驗(yàn)驗(yàn)證,F(xiàn)LASH ROM中存儲(chǔ)的圖像數(shù)據(jù)與從PC機(jī)載入的數(shù)據(jù)完全一致、控制時(shí)序符合設(shè)計(jì)要求。通過改變Strobe的頻率大小,驗(yàn)證得到Camera Link輸出的像素時(shí)鐘頻率最大可以達(dá)到70 MHz。對(duì)于尺寸為128×128、位寬為8 b的目標(biāo)圖像,在采用40 MHz的Strobe時(shí)鐘進(jìn)行單通道輸出時(shí),幀頻可以達(dá)到1 876 f/s。對(duì)于尺寸為512×512、位寬為8 b的目標(biāo)圖像,當(dāng)Strobe時(shí)鐘為70 MHz,單通道輸出時(shí),幀頻可以達(dá)到252 f/s;雙通道輸出時(shí),幀頻可以達(dá)到476 f/s。該信號(hào)發(fā)生器可以模擬目前大部分波前處理機(jī)所需的信號(hào)源。在進(jìn)行單通道或雙通道輸出時(shí),系統(tǒng)可以充分利用Camera Link接口的輸出能力。但是當(dāng)進(jìn)行更多通道的輸出時(shí),由于受限于FLASH的讀出速率,該系統(tǒng)不能充分應(yīng)用Camera Link接口的輸出能力。對(duì)于這個(gè)缺陷,在對(duì)系統(tǒng)進(jìn)行改進(jìn)時(shí)可以通過使用FLASH ROM和高速大容量RAM共同組成數(shù)據(jù)存儲(chǔ)模塊來解決。

4 結(jié)論
    根據(jù)本文介紹的設(shè)計(jì)方案,采用FPGA技術(shù)設(shè)計(jì)的圖像信號(hào)發(fā)生器結(jié)構(gòu)簡單,實(shí)現(xiàn)方便,易于修改。FLASH ROM提供了較高的數(shù)據(jù)讀出速率,支持系統(tǒng)能夠模擬出較高幀頻的CCD相機(jī)輸出。經(jīng)過試驗(yàn)驗(yàn)證,系統(tǒng)工作穩(wěn)定,達(dá)到了設(shè)計(jì)要求。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對(duì)日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對(duì)環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運(yùn)營商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡稱"軟通動(dòng)力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉