亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        光譜儀CCD數(shù)據(jù)采集中SoPC系統(tǒng)設(shè)計及USB2.0 IP核的實現(xiàn)*

        2011-12-22 08:12:54席忠紅李海翼
        電子器件 2011年6期
        關(guān)鍵詞:枚舉端點調(diào)用

        席忠紅,李海翼

        (甘肅民族師范學(xué)院物理與水電工程系,甘肅合作747000)

        XI Zhonghong,LI Haiyi*

        (Department of Physics and Hydranlic Engineering,Gansu Normal University for Nationalities,Hezuo Gansu 747000,China)

        近年來,CCD(Charge Coupled Device)以其光譜響應(yīng)寬、動態(tài)范圍大、靈敏度高、噪聲低、體積小、像素多等優(yōu)點[1-2],在光譜儀器中,常使用它作為光電轉(zhuǎn)換元件。特別是在出現(xiàn)了背照式CCD后[3],它的光譜范圍可以延伸到深紫外區(qū),可以成為全譜式光譜儀的檢測器件。FPGA作為可編程門陣列,可以產(chǎn)生時鐘嚴格同步的多路信號,是驅(qū)動CCD數(shù)據(jù)采集的首選器件之一,特別是基于FPGA[4]的SoPC技術(shù)的應(yīng)用[5-6],使數(shù)據(jù)采集控制、數(shù)據(jù)同步處理和轉(zhuǎn)換傳輸融合為一體,同時通過調(diào)用IP核(Intellectual Property),使設(shè)計過程變得更為簡捷和可靠。通用串行總線USB2.0接口具有最高480Mb/s的傳輸速度,可以把高速采集到的光譜數(shù)據(jù)及時送給上位機軟件,本文將調(diào)用SLS公司的USB20HR IP軟核實現(xiàn)USB2.0接口,從而代替了專用USB芯片,不但節(jié)約了成本,而且使整個系統(tǒng)更緊湊。

        1 系統(tǒng)組成及功能

        本文要實現(xiàn)的系統(tǒng)的結(jié)構(gòu)及功能如圖1所示?;贔PGA的SoPC系統(tǒng)通過可編程硬件來實現(xiàn)。

        圖1 系統(tǒng)功能及結(jié)構(gòu)框圖

        1.1 驅(qū)動模塊

        驅(qū)動模塊用Verilog HDL語言編寫,為了保證時序的同步性,所有控制信號都在同一個基準脈沖下產(chǎn)生,這個基準脈沖是片上鎖相環(huán)PLL輸出的12 MHz時鐘脈沖。考慮成本和滿足使用的要求,CCD器件選擇線陣CCDILX554B;A/D轉(zhuǎn)換器件選擇并行12位輸出的 ADS803E,最高并行轉(zhuǎn)換時鐘2 MHz。

        所實現(xiàn)驅(qū)動模塊的邏輯功能時序仿真如圖2所示。為了頂層設(shè)計的方便,在驗證此模塊后,把此邏輯功能生成一個具有輸入輸出的獨立模塊,以供調(diào)用。

        圖2 驅(qū)動模塊邏輯功能時序仿真圖

        1.2 異步 FIFO

        為了提高采集效率和降低誤碼率,采用異步時鐘FIFO(First In First Out)緩沖數(shù)據(jù),調(diào)用片上FIFO IP核,入口端設(shè)為Avalon-ST Sink接口,時鐘和控制信號也由驅(qū)動模塊按一定的時序提供,這個接口的優(yōu)點是把A/D轉(zhuǎn)換完的數(shù)據(jù)源源不斷地送給FIFO,不需要CPU的參與,提高了效率;出口端設(shè)為Avalon-MM slave,時鐘取自系統(tǒng)時鐘,當(dāng)FIFO達到半滿標志時,F(xiàn)IFO核向片上CPU發(fā)出中斷請求,CPU響應(yīng)中斷后,控制DMA,把FIFO里的數(shù)據(jù)高速取走,經(jīng)過處理后,通過USB接口送給上位機。另外,為了把A/D轉(zhuǎn)換完的數(shù)據(jù)送給Avalon-ST Sink入口的FIFO,必須在SoPC builder設(shè)計時例化一個新Avalon Streaming Source接口部件,部件的輸出直接接到FIFO,輸入接外部數(shù)據(jù)端。同時,這個新部件為FIFO補齊32位數(shù)據(jù)位寬,方便對接。

        1.3 USB2.0 接口

        為了把采集到的大量數(shù)據(jù)即時地傳送給上位機,采用USB2.0通用串行總線協(xié)議接口。它具有高傳輸速度、即插即用、可以總線供電、與主流上位機兼容等優(yōu)點。本文采用SLS公司USB20HR軟核,把 USB2.0接口集成到 SoPC系統(tǒng)。USB20HR是基于片上RAM的USB從設(shè)備軟核,支持32位Avalon總線接口,可以設(shè)置批量傳輸、中斷傳輸和同步傳輸,最多可支持15個 USB輸入輸出端點[7]。該IP核代替了傳統(tǒng)USB芯片的功能,可以節(jié)約成本,也使圖3 USB20HR與Avalon總線及外部連接整個系統(tǒng)融合為一體,更大程度上體現(xiàn)了SoPC技術(shù)的優(yōu)勢。USB20HR IP核與SoPC系統(tǒng)Avalon總線的連接及外部接口,通過外部串行解碼芯片ISP1504,就可以實現(xiàn)和上位機通信的功能。

        圖3 USB20HR與Avalon總線及外部連接

        2 SoPC系統(tǒng)實現(xiàn)

        在例化NIOSⅡ處理器的基礎(chǔ)上,調(diào)用相應(yīng)模塊和IP核,構(gòu)建整個SoPC系統(tǒng),其頂層邏輯連接和結(jié)構(gòu)設(shè)計如圖4所示。

        圖4 SoPC系統(tǒng)頂層邏輯連接和結(jié)構(gòu)框圖

        圖4中,driver模塊即為CCD、A/D控制驅(qū)動模塊,轉(zhuǎn)換后的數(shù)據(jù)由data_in引腳端口送給Avalon-ST source接口部件,經(jīng)位寬調(diào)整后送入FIFO;圖中NIOSⅡ模塊是由SOPC Builder而自定義生成的包含NIOSⅡ處理器、片上RAM、DMA控制器、異步FIFO、USB20HR、FIR、SDRAM 控制器、EPCS控制器、鎖相環(huán)PLL等單元的綜合模塊,每個單元擁有獨立的基地址和IRQ優(yōu)先級值,NIOSⅡ處理器作為Avalon Master,可以通過Avalon總線訪問任何一個Avalon Slave單元。系統(tǒng)時鐘的布置,以40MHz外部時鐘,作為兩個鎖相環(huán)PLL的時鐘輸入。PLL0的輸出CO設(shè)為12MHz,給驅(qū)動模塊提供基準時鐘,C1為50MHz,給NIOSⅡ處理器和其它模塊提供時鐘,C2為50MHz,從PLL的專用管腳輸出,提供給外部SDRAM;PLL1的C2設(shè)為26MHz,從專用管腳輸出為ISP1504提供時鐘,以進一步產(chǎn)生60MHz脈沖,為ULPI提供同步時鐘信號。其次,雖然硬件配置文件和軟件程序可以下載在配置芯片EPCS等上,但程序運行時在RAM中運行,為了滿足后續(xù)一定容量的程序運行的需要,在片外擴展一片8MB SDRAM MT48LC8M8A2,設(shè)置PLL1 C2時鐘相移-60°,接到SDRAM時鐘輸入端。在頂層框圖中為各模塊分配輸入輸出引腳,執(zhí)行分析綜合,利用Time-Quest

        Analyzer對各時序進行約束,以滿足Fmax、tco、tsu等要求,編寫SDC約束文件,用create_clock命令對輸入時鐘約束,定義它的周期、上下沿;用derive_pll_clocks命令為鎖相環(huán)定義輸入時鐘,用set_clock_groups約束時鐘組是否同時有效。約束后的全編譯結(jié)果如圖5所示。時序分析和仿真后,編譯結(jié)果滿足設(shè)計要求。執(zhí)行全編譯,生成SOF和POF硬件配置文件。

        圖5 TimeQuest Analyzer時序分析報告

        3 SoPC系統(tǒng)軟件設(shè)計

        基于FPGA的SoPC系統(tǒng)既要實現(xiàn)可編程硬件描述的目的,也要有軟件來控制片上NIOSⅡ處理器實現(xiàn)相應(yīng)功能。軟件開發(fā)是在集成開發(fā)環(huán)境NIOSⅡIDE下編寫C程序及調(diào)用HAL系統(tǒng)庫,以及編譯和調(diào)試程序。產(chǎn)生基于前述硬件的System.h文件,它提供了所有SoPC硬件系統(tǒng)完整的描述,包括每個調(diào)用硬件的名稱、基地址、中斷優(yōu)先級等,為NIOSHAL系統(tǒng)庫及其驅(qū)動提供了基礎(chǔ)。NIOS系統(tǒng)庫定義了各數(shù)據(jù)類型,輸入輸出函數(shù),設(shè)備分類等。調(diào)用NIOSⅡHAL,會在驅(qū)動的配合下,映射到硬件,實現(xiàn)相應(yīng)功能[8]。

        本文主程序流程如圖6所示。上位機發(fā)送CCD數(shù)據(jù)采集的開始、停止等命令,通過USB中斷通知NIOSⅡ系統(tǒng),控制驅(qū)動模塊輸出有效驅(qū)動信號或停止輸出有效信號,來實現(xiàn)數(shù)據(jù)采集的開始、停止等過程。

        圖6 NIOSⅡ主程序流程圖

        系統(tǒng)上電并自動完成硬件配置后,NIOSⅡ系統(tǒng)從EPCS4中開始BOOT,并完成各模塊的初始化及USB設(shè)備的枚舉,然后用while()命令開始輪詢各中斷源。當(dāng)要開始采集時,由上位機通過USB接口發(fā)送中斷指令,使接有上拉電阻的I/O變?yōu)榈碗娖?,也即把接在一起的start信號拉低,驅(qū)動模塊開始工作。CCD輸出信號不斷送入FIFO,F(xiàn)IFO半滿時向NIOSⅡ產(chǎn)生中斷,中斷服務(wù)程序立即啟動DMA,高速讀取FIFO半滿深度字節(jié)數(shù)的數(shù)據(jù),做數(shù)據(jù)處理后,送入USB20HR的輸入端點RAM,等待上位機及時取走數(shù)據(jù)。為了采集的完整性,在設(shè)計中,設(shè)置FIFO中斷優(yōu)先級高于USB中斷。

        4 應(yīng)用測試和結(jié)果

        4.1 PCB 設(shè)計

        設(shè)計在自制PCB板上完成,考慮成本和滿足使用的因素,采用Altera EP2C8 FPGA芯片。板上采用JTAG+AS聯(lián)合配置模式,方便調(diào)試及調(diào)試成功后的上電自動配置,串行配置芯片選擇EPCS4。

        4.2 USB枚舉及數(shù)據(jù)讀寫

        USB通信是主-從式的通信方式,由主機發(fā)起通信,設(shè)備做出響應(yīng)。USB上位機枚舉是USB設(shè)備連接到上位機系統(tǒng),由系統(tǒng)指定唯一地址碼,獲取設(shè)備相關(guān)信息和描述符,并為設(shè)備加載驅(qū)動程序的過程。在此過程中,默認在設(shè)備的端點0用控制傳輸方式通信。枚舉是每個USB設(shè)備能夠正常通信的必須過程。本文在主程序中調(diào)用NIOSⅡ HAL,控制USB20HR核開始枚舉。用USB調(diào)試工具捕捉到枚舉過程如圖7所示。

        圖7 USB20HR枚舉過程數(shù)據(jù)捕捉

        枚舉過程中系統(tǒng)為USB20HR分配唯一設(shè)備號,枚舉完成后,USB20HR在NIOSⅡ軟件中設(shè)置的端點信息為上位機掌握,如圖8所示。端點0為控制端點,端點1和2分別為輸入和輸出端點,所能傳輸?shù)臄?shù)據(jù)包的最大值為40字節(jié)。

        圖8 系統(tǒng)讀取到的USB20HR設(shè)備端點信息

        枚舉完成后,手動為USB設(shè)備加載相應(yīng)驅(qū)動程序,之后,USB就可以和上位機實現(xiàn)通信。編寫簡單上位機程序,驗證USB讀寫批量數(shù)據(jù)成功,平均速度超過90 Mbit/s,能很好滿足CCD數(shù)據(jù)采集任務(wù)。

        4.3 CCD數(shù)據(jù)采集程序Debug

        為了驗證采集系統(tǒng)的功能,在NIOSⅡIDE環(huán)境下,利用NIOSⅡHardware Debug進行在線測試,在Debug之前,設(shè)置 NIOSⅡ處理器支持 Level 3級Debug。連接CCD及各電路模塊,下載.sof硬件配置文件到FPGA,手動控制CCD模塊使能,在程序中設(shè)置斷點,讀出FIFO的幾個字節(jié)數(shù)據(jù),Debug結(jié)果如圖9所示。圖中顯示的是32位數(shù)據(jù)的十進制值。送給USB輸入端點的數(shù)據(jù)如圖10所示,USB20HR輸出時默認最小輸出4個字節(jié),即32位無符號數(shù)據(jù)。在在線硬件測試時,從FIFO讀出的數(shù)據(jù),經(jīng)過一定處理后,以每次4個字節(jié)的寫操作,送到USB20HR的輸入端點,等待上位機及時取走這些數(shù)據(jù)。從圖10中可以看出,處理完的FIFO數(shù)據(jù)經(jīng)過中間的讀寫操作送到USB輸入端點緩存后,數(shù)據(jù)順序操作前一致。因此,上位機可以讀到正確的數(shù)據(jù)行。

        圖9 FIFO讀出數(shù)據(jù)

        圖10 USB20HR輸入端點數(shù)據(jù)

        5 結(jié)論及展望

        本文提出了可應(yīng)用在光譜儀器中的CCD數(shù)據(jù)采集系統(tǒng),提供了完整的下位機方案。通過仿真和實際測試,本文所設(shè)計的CCD數(shù)據(jù)采集驅(qū)動模塊能滿足驅(qū)動CCD信號積分及數(shù)據(jù)輸出及使能控制的目的,能為A/D轉(zhuǎn)換及Avalon-ST接口提供正確時序的驅(qū)動信號;調(diào)用USB20HR軟核實現(xiàn)了USB2.0接口,通過加載驅(qū)動程序和實驗驗證,實現(xiàn)了USB2.0接口的全部功能;通過在線硬件Debug測試,F(xiàn)PGA硬件工程和NIOSⅡ軟件實現(xiàn)了預(yù)期功能。本文設(shè)計的CCD數(shù)據(jù)采集系統(tǒng)方案結(jié)構(gòu)簡單有效,集成度高,系統(tǒng)緊湊可靠。在光譜儀器中具有很好的實用價值和應(yīng)用前景。本文下一步將研究基于本文系統(tǒng)的應(yīng)用于光譜儀器的上位機應(yīng)用軟件。

        [1] 米本和也,陳榕庭,彭美桂.CCD/CMOS圖像傳感器基礎(chǔ)與應(yīng)用[M].北京:北京科學(xué)出版社,2006.

        [2] 宋敏,鄶新凱,鄭亞茹.CCD與CMOS圖像傳感器探測性能比較[J].半導(dǎo)體光電,2005,26(1):5-9.

        [3] 戴麗英,劉德林.背照式電荷耦合器件的研制[J].光電子技術(shù),2005,9:25-30.

        [4] 范鐵道,田雁,曹劍中,等.基于FPGA的CMOS圖像感器IA_G3 驅(qū)動電路的研究[J].電子器件,2009,32(2):269-276.

        [5] 陳東明,葉玉堂,蒲亮,等.基于SOPC可重構(gòu)的圖像采集與處理系統(tǒng)設(shè)計[J].電子器件,2011,34(2):232-236.

        [6] 高文韜,李偉明,丁曉明.基于SOPC技術(shù)的圖像采集模塊設(shè)計[J].信息科技,2007,6:126-127.

        [7] SLS,USB2.0(USB20HR)document.2009,(2.2)6.

        [8] 俞一鳴.Altera可編程邏輯器件的應(yīng)用與設(shè)計[M].北京:北京機械工業(yè)出版社,2007.

        猜你喜歡
        枚舉端點調(diào)用
        非特征端點條件下PM函數(shù)的迭代根
        基于理解性教學(xué)的信息技術(shù)教學(xué)案例研究
        速讀·上旬(2022年2期)2022-04-10 16:42:14
        一種高效的概率圖上Top-K極大團枚舉算法
        核電項目物項調(diào)用管理的應(yīng)用研究
        不等式求解過程中端點的確定
        LabWindows/CVI下基于ActiveX技術(shù)的Excel調(diào)用
        參數(shù)型Marcinkiewicz積分算子及其交換子的加權(quán)端點估計
        基于系統(tǒng)調(diào)用的惡意軟件檢測技術(shù)研究
        基于太陽影子定位枚舉法模型的研究
        基丁能雖匹配延拓法LMD端點效應(yīng)處理
        国产成人精品亚洲日本在线观看| 狠狠亚洲婷婷综合久久久| 亚洲精品国偷拍自产在线麻豆| 日韩好片一区二区在线看| 91久久国产综合精品| 久久久久久久久久免免费精品| 富婆叫鸭一区二区三区| 国产三级精品三级男人的天堂 | 欧美疯狂性受xxxxx喷水| 免费操逼视频| 7878成人国产在线观看| 日韩极品视频在线观看免费| 亚洲日本人妻中文字幕| 日本国产一区在线观看| 国产小视频在线看不卡| 熟妇激情内射com| 国产成人免费a在线视频| 国产免费的视频一区二区| 国产精品自拍午夜伦理福利| 一本无码中文字幕在线观| 毛多水多www偷窥小便| 国产精品无码无片在线观看3D | 台湾佬综合网| 亚洲AV秘 无套一区二区三区 | av在线高清观看亚洲| 亚洲av国产av综合av卡| 在教室伦流澡到高潮hgl视频| 亚欧乱色束缚一区二区三区| 高潮av一区二区三区| 亚洲av高清一区二区三| 亚洲中文久久精品无码| 乱中年女人伦av三区| 蜜桃av一区二区三区| 91在线视频在线视频| 亚洲无亚洲人成网站77777| 国产精品爆乳在线播放| 国产美女高潮流的白浆久久| 精品视频在线观看日韩| 欧美真人性野外做爰| 久久精品国产亚洲AV成人公司| 亚洲春色视频在线观看|