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

        ?

        基于USB3.0高速圖像數(shù)據(jù)傳輸系統(tǒng)設(shè)計

        2019-04-10 09:39:58王國忠儲成群任勇峰焦新泉
        儀表技術(shù)與傳感器 2019年3期
        關(guān)鍵詞:傳輸速度緩沖區(qū)線程

        王國忠,劉 磊,儲成群,任勇峰,焦新泉

        (中北大學(xué),電子測試技術(shù)國家重點實驗室,山西太原 030051)

        0 引言

        隨著大數(shù)據(jù)智能化時代的到來,以及工業(yè)4.0的提出,智能化系統(tǒng)對圖像分辨率的要求越來越高,即圖像采集系統(tǒng)需要傳輸?shù)臄?shù)據(jù)量越來越大。數(shù)據(jù)傳輸?shù)乃俣群途彌_區(qū)的大小是圖像采集系統(tǒng)中非常重要的一部分,如果緩沖的速度與傳輸?shù)乃俣炔黄ヅ涞脑?,就會使?shù)據(jù)丟失或者堵塞,因此需要對整個系統(tǒng)進(jìn)行綜合設(shè)計。

        1 總體方案設(shè)計

        系統(tǒng)總體方案設(shè)計如圖1所示,由圖像采集模塊、數(shù)據(jù)處理模塊、數(shù)據(jù)傳輸模塊3部分組成。圖像采集模塊采集模擬數(shù)據(jù),并轉(zhuǎn)化為數(shù)字圖像數(shù)據(jù)傳輸給數(shù)據(jù)處理模塊;數(shù)據(jù)處理模塊接收圖像數(shù)據(jù),經(jīng)處理后轉(zhuǎn)存到緩沖芯片DDR2 SDRAM中,同時接收上位機(jī)下發(fā)命令,把數(shù)據(jù)實時上傳;數(shù)據(jù)傳輸模塊把數(shù)據(jù)上傳到上位機(jī)軟件進(jìn)行圖像顯示,并負(fù)責(zé)上位機(jī)與FPGA之間的通信。

        本系統(tǒng)采用MT9P031圖像傳感器作為本系統(tǒng)數(shù)據(jù)采集模塊,把高速圖像數(shù)據(jù)實時上傳給數(shù)據(jù)處理模塊[1]。數(shù)據(jù)處理模塊把數(shù)據(jù)重新編幀后轉(zhuǎn)存到DDR2 SDRAM中。數(shù)據(jù)傳輸模塊采用USB3.0傳輸,把圖像數(shù)據(jù)實時上傳到上位機(jī)軟件,在數(shù)據(jù)編碼方面,USB3.0采用了安全性更高的8b/10b編碼,使用這種編碼方式可以保持電路中的直流平衡,從而提高可靠性;在邏輯設(shè)計中,采用手動DMA模式,提高了傳輸速度,同時提高了數(shù)據(jù)傳輸?shù)恼_率以及可靠性[2]。

        2 系統(tǒng)硬件電路設(shè)計

        2.1 FPGA硬件設(shè)計

        FPGA作為整個系統(tǒng)的硬件控制核心,是整個系統(tǒng)數(shù)據(jù)傳輸?shù)闹修D(zhuǎn)站,其主要功能是實現(xiàn)各模塊之間的數(shù)據(jù)交換和接口時序等協(xié)調(diào)控制。同時FPGA既要實現(xiàn)與USB控制芯片CYUSB3014連接,也要與DDR2連接,因此本系統(tǒng)選擇I/O口豐富、內(nèi)部資源多、處理速度快的EP3C40F484C6N作為控制中心。該芯片內(nèi)部具有較多的RAM容量,利用IP核可以搭建邏輯控制模塊,如FIFO緩沖模塊,PLL鎖相環(huán)等。

        圖1 總體方案設(shè)計

        2.2 DDR2硬件電路設(shè)計

        圖2 DDR2與FPGA硬件連接圖

        本系統(tǒng)為了防止有效數(shù)據(jù)在FIFO中積累而丟失,設(shè)計了外置DDR2 SDRAM緩沖模塊,用來存儲海量的圖像數(shù)據(jù)。圖2為DDR2與FPGA的硬件連接圖。選用MT47H128M16RT-25EC作為DDR2 的芯片,其內(nèi)存為2 Gbit,數(shù)據(jù)位寬為16 bit,內(nèi)部有8個塊,能以內(nèi)部控制總線4倍的速度工作,還能以外部總線4倍的速度進(jìn)行讀寫操作。CK和CKN為時鐘差分線,在他們的相交處均有數(shù)據(jù)傳輸,即在CLK的上升沿和下降沿均有數(shù)據(jù)傳輸。A[13:0]為列地址,BA[2:0]為塊地址,對DDR2進(jìn)行數(shù)據(jù)讀寫時,首先發(fā)送要讀取或?qū)懭氲木唧w地址。D[15:0]為16位數(shù)據(jù)線。CKE,ODT,CS分別為DDR2的控制信號線,對DDR2進(jìn)行讀寫操作時,首先要激活時鐘使能信號線(CKE)和片選信號線(CS),ODT為一種新技術(shù)叫片內(nèi)終結(jié)電阻,通過控制該信號,來實現(xiàn)對匹配電阻的值及其開關(guān)狀態(tài)進(jìn)行控制,從而達(dá)到讀寫信號的完整性。RAS,WE,CAS為命令信號線,通過這3條命令FPGA控制DDR2的讀寫。采用UDQS和UDQSN、LDQS和LDQSN作為雙向差分信號線,寫數(shù)據(jù)時由FPGA發(fā)出,讀數(shù)據(jù)時由DDR2發(fā)出,可以減少信號間串?dāng)_的影響,同時減少信號輸出脈寬對工作電壓和溫度穩(wěn)定性的依賴。UDM,LDM在進(jìn)行突發(fā)傳輸時,可屏蔽掉不存儲的數(shù)據(jù)[3]。

        2.3 USB3.0的硬件電路設(shè)計

        本系統(tǒng)采用CYUSB3014作為USB3.0的控制芯片,該芯片具有高度集成的靈活特性,具有一個可進(jìn)行數(shù)據(jù)并行讀寫的通用可編程接口GPIFⅡ,其內(nèi)部同時集成了USB3.0和USB2.0物理層(PHY)以及32位ARM926EJ-S微處理器,具有強(qiáng)大的數(shù)據(jù)處理能力。GPIFⅡ接口可進(jìn)行8位、16位、32位數(shù)據(jù)傳輸,可實現(xiàn)與FPGA之間無縫連接;GPIFⅡ為一種可編程狀態(tài)機(jī),其接口即可作為主控制器也可作為從器件,并行和串行接口均可通過該接口實現(xiàn)。本系統(tǒng)將CYUSB3014配置為32位并行的SLAVE FIFO模式,實現(xiàn)與FPGA之間的高速圖像數(shù)據(jù)傳輸,F(xiàn)PGA通過GPIFⅡ接口可訪問其內(nèi)部32個緩沖區(qū)[4]。

        圖3為USB3.0周圍的硬件電路。如圖3所示,GPIFⅡ的32位數(shù)據(jù)總線直接與FPGA的I/0口相連,而在CYUSB3014內(nèi)部GPIFⅡ直接連接到了DMA通道上。SLCS為片選信號,系統(tǒng)開始工作時被激活。PKTEND為短包數(shù)據(jù)發(fā)送結(jié)束信號,當(dāng)一包數(shù)據(jù)結(jié)束時該信號有效。FLAGA和FLAGB為DMA通道對應(yīng)的緩沖區(qū)空滿狀態(tài)的標(biāo)志信號,由CYUSB3014芯片發(fā)出,F(xiàn)PGA接收。SLWR為寫使能信號,當(dāng)通過USB3.0讀取數(shù)據(jù)時,該信號使能有效,GPIFⅡ隨之將數(shù)據(jù)通過DMA通道存入到對應(yīng)的緩沖區(qū)中。SLOE為讀使能信號,即FPGA發(fā)出讀請求時,該信號使能有效同時驅(qū)動數(shù)據(jù)總線DQT翻轉(zhuǎn)。A(1∶0)為線程選擇信號,通過改變它的數(shù)值,對GPIFⅡ內(nèi)部的4個獨立進(jìn)程進(jìn)行選擇,從而實現(xiàn)選用那個DMA通道進(jìn)行數(shù)據(jù)傳輸。

        圖3 USB3.0硬件電路圖

        SLRD為讀請求信號,當(dāng)該信號有效時,F(xiàn)PGA讀取GPIFⅡ接口的數(shù)據(jù)。PCLK與FPGA的CLK相連,提供最高可達(dá)100 MHz的接口頻率。

        圖3中的24FC1025T-I/SN是容量為1 024KB的EEPROM,用于存儲USB3.0的固件程序,通過I2C總線與CYUSB3014相連。而I2C總線是由一條數(shù)據(jù)線和一條時鐘線構(gòu)成,根據(jù)I2C總線規(guī)范,總線空閑時必須為高電平,所以本設(shè)計通過2.21 kΩ電阻連接至3.3 V電源上拉。NCP361SN1G為過壓保護(hù)芯片,CYUSB3014的VBUS引腳的最大輸入電壓為6 V,而在USB接口上VBUS的供電電壓最大可達(dá)9 V,因此為了保護(hù)CYUSB3014的VBUS免受損壞,本設(shè)計增加了過壓保護(hù)芯片。同時為了使輸入電壓穩(wěn)定,在VBUS串聯(lián)一個2.2 μH的電感。使用2.2 μH的電感與105電容并聯(lián),同時將USB插座上的“屏蔽”引腳接地,實現(xiàn)隔離屏蔽的作用。本系統(tǒng)選用四通道的SP3010-04UTG作為SSRX+、SSRX-、SSTX+、SSTX-的外部ESD器件,它具有高性能、低電容的特性,其保護(hù)電平為±8 kV接觸放電和±15kV氣隙放電[5]。

        3 邏輯設(shè)計

        3.1 DDR2讀寫邏輯設(shè)計

        DDR2 SDRAM的讀寫控制是整個系統(tǒng)的關(guān)鍵。在系統(tǒng)上電后,DDR2 SDRAM內(nèi)部需要進(jìn)行一系列復(fù)雜的初始化操作,才能開始正常工作。具體操作為:預(yù)充電→空命令→配置外部寄存器→空命令→配置內(nèi)部寄存器→預(yù)充電→空命令→自動刷新→空命令→開始接收命令。在正常開始工作,每次讀寫切換和行、塊地址變化時,必須通過預(yù)充電來關(guān)閉當(dāng)前讀寫的存儲單元,同時在進(jìn)行新的操作時,需要先激活要讀寫的存儲單元所在的地址[6]。

        圖4 DDR2邏輯設(shè)計圖

        由于DDR2 SDRAM只有一套數(shù)據(jù)、地址和控制總線,在某一時刻只能讀或者寫,因此本文采用輸入FIFO和輸出FIFO對DDR2 SDRAM進(jìn)行分時復(fù)用讀寫控制[7]。DDR2 SDRAM的讀寫邏輯控制如圖4所示,通過判斷DDR2 SDRAM內(nèi)部的控制信號,來控制FIFO的讀寫。當(dāng)上位機(jī)發(fā)出采集命令時,圖像采集前端配置完寄存器之后開始采集圖像數(shù)據(jù),DDR2 SDRAM控制器通過監(jiān)測場同步信號的到來,把圖像數(shù)據(jù)不斷存入輸入FIFO中,當(dāng)FIFO中達(dá)到一次突發(fā)傳輸數(shù)據(jù)量2 KB時,DDR2 SDRAM控制器發(fā)出寫命令,并一次性讀完輸入FIFO中的所有數(shù)據(jù),DDR2 SDRAM控制器不斷監(jiān)測輸入FIFO的數(shù)據(jù)量并發(fā)出寫命令。因為圖像數(shù)據(jù)有場消隱和行消隱的時間,在此期間對DDR2 SDRAM進(jìn)行寫操作,且寫的速率比較快,因此在一定系統(tǒng)時鐘條件下,圖像采集前端不會出現(xiàn)數(shù)據(jù)堵塞。

        當(dāng)上位機(jī)發(fā)出讀取數(shù)據(jù)的命令時,DDR2 SDRAM控制器首先檢測輸入FIFO的狀態(tài),在空信號有效時DDR2 SDRAM一次性向輸出FIFO寫入2 KB數(shù)據(jù),此時用戶通過輸出FIFO進(jìn)行數(shù)據(jù)讀取。當(dāng)FIFO中的數(shù)據(jù)即將讀完時,DDR2 SDRAM一次性向輸出FIFO寫入2 KB數(shù)據(jù),然后通過USB3.0把圖像數(shù)據(jù)不斷上傳到上位機(jī),其實際傳輸速度達(dá)390 MB/s,因此不會出現(xiàn)丟數(shù)的情況。

        3.2 USB3.0數(shù)據(jù)傳輸?shù)倪壿嬙O(shè)計

        本系統(tǒng)采取手動DMA傳輸模式,用來將GPIFⅡ接口連接至內(nèi)部緩沖器和USB3.0數(shù)據(jù)傳輸接口,通過手動DMA模式可以控制圖像數(shù)據(jù)的傳輸速度,從而保證了數(shù)據(jù)的可靠傳輸。該模式可以把其中2個線程中共32個緩沖器分別分配到輸入和輸出DMA通道上,緩沖器的容量通過USB3.0的傳輸速度來設(shè)置。圖5為DMA通道的設(shè)計圖[8]。

        如圖5所示,設(shè)計中只用了GPIFⅡ 4個線程中的2個,線程0和線程1,并且采用了默認(rèn)的對應(yīng)關(guān)系,套接字0與線程0相對應(yīng);套接字1與線程1相對應(yīng)[9]。線程的切換是FPGA通過控制USB_A0和USB_A1信號來實現(xiàn),當(dāng)為00時,選擇線程0;當(dāng)為01時,選擇線程1。套接字是外部硬件與內(nèi)部緩沖區(qū)之間的橋梁,即套接字可以看作是外設(shè)的接口,每個硬件模塊有其固定的套接字。其中每個描述符存有緩沖區(qū)的地址和緩沖區(qū)的容量,以及指向下一個描述符的指針。

        圖5 DMA通道的設(shè)計圖

        在邏輯設(shè)計中,將USB_FLGA和USB_FLGB均設(shè)置為低電平有效,故當(dāng)其為低電平時,它們指示緩沖區(qū)進(jìn)入滿狀態(tài)[10]。本設(shè)計FPGA通過從設(shè)備FIFO控制USB3.0進(jìn)行突發(fā)傳輸,圖6為32位數(shù)據(jù)總線突發(fā)傳輸?shù)倪壿嫹治鰞x截圖,在突發(fā)傳輸過程中,為了保證數(shù)據(jù)連續(xù)輸出,USB_RD和USB_OE始終保持有效,只要一行圖像數(shù)據(jù)寫入完成,就對DDR2 SDRAM進(jìn)行讀操作。這樣一來DMA緩沖區(qū)就不會出現(xiàn)滿狀態(tài),即整個過程USB_FLGA和USB_FLGB一直為高電平,為了避免DMA通道的失鎖以及對上次數(shù)據(jù)的清空處理,本設(shè)計采用了每次重新寫入數(shù)據(jù)時,再次激活GPIFⅡ接口的思想,即USB_CS信號在USB_WR從低電平變?yōu)楦唠娖綍r,重新被激活。

        圖6 突發(fā)傳輸?shù)倪壿媹D

        4 結(jié)果分析及驗證

        本系統(tǒng)圖像采集模塊采集到的圖像分辨率為2 048×1 536,幀頻為21 fps,且顯示為256級8位灰度圖像,因此每秒采集的數(shù)據(jù)量為63 MB(2 048×1 536×21B)。DDR2工作在125 MHz時鐘下,其傳輸速度峰值高達(dá)500 MB/s(125 MHz×2B×2),通過邏輯分析儀發(fā)現(xiàn)突發(fā)傳輸1行圖像數(shù)據(jù)需要512個系統(tǒng)時鐘,而DDR2自動刷新、預(yù)充電、狀態(tài)信息等消耗50個系統(tǒng)時鐘,因此DDR2實際平均數(shù)據(jù)吞吐量為500 MB/s×512/(512+50)≈456 MB/s。USB3.0數(shù)據(jù)傳輸速度為390 MB/s,通過理論分析,本系統(tǒng)可以正常工作。而且經(jīng)過長時間重復(fù)測試,在沒有上位機(jī)引起其他開銷的情況下,采集的圖像如圖7所示。其畫面清晰、流暢,且實時性較好,證明了本系統(tǒng)能夠?qū)崟r進(jìn)行圖像數(shù)據(jù)上傳,且穩(wěn)定可靠。

        5 結(jié)束語

        本設(shè)計中,采用了占用資源少、支持熱插拔、可連接多個設(shè)備的USB3.0數(shù)據(jù)總線和緩沖速度快的DDR2緩沖器,設(shè)計了高速圖像傳輸系統(tǒng),大幅提高了圖像數(shù)據(jù)的傳輸速度和存儲空間,在邏輯設(shè)計中采用了手動DMA模式,實現(xiàn)了海量圖像數(shù)據(jù)的傳輸,確保了高清圖像的實時顯示。

        圖7 圖像截圖

        猜你喜歡
        傳輸速度緩沖區(qū)線程
        嵌入式系統(tǒng)環(huán)形緩沖區(qū)快速讀寫方法的設(shè)計與實現(xiàn)
        SSD移動硬盤大降價,可以考慮了
        電腦報(2019年11期)2019-09-10 07:22:44
        淺談linux多線程協(xié)作
        關(guān)鍵鏈技術(shù)緩沖區(qū)的確定方法研究
        電網(wǎng)中無線通信技術(shù)的應(yīng)用探析
        淺談提升互聯(lián)網(wǎng)信息傳輸速度技術(shù)分析
        Linux線程實現(xiàn)技術(shù)研究
        地理信息系統(tǒng)繪圖緩沖區(qū)技術(shù)設(shè)計與實現(xiàn)
        電視技術(shù)(2012年1期)2012-06-06 08:13:58
        么移動中間件線程池并發(fā)機(jī)制優(yōu)化改進(jìn)
        午夜精品一区二区三区的区别| 国产午夜精品视频观看| 一区二区三区人妻少妇| 天天综合网在线观看视频| 热の国产AV| 久久人妻av不卡中文字幕| 亚洲免费女女在线视频网站| 国产黄大片在线观看| 丁香五月缴情综合网| 久久亚洲精品成人综合| 国产三级精品三级在线专区2| 国产超碰人人做人人爽av大片 | 久久国产A√无码专区亚洲| 国产精品一区二区日韩精品| 看女人毛茸茸下面视频| 波多野42部无码喷潮| 国产精品99久久久久久98AV| 亚洲综合天堂一二三区| 黄色av一区二区在线观看| 无码午夜成人1000部免费视频| 亚洲乱码一区二区三区成人小说 | 国产午夜伦鲁鲁| 在线播放人成午夜免费视频| 日本在线中文字幕一区| 亚洲最大水蜜桃在线观看| 中文成人无码精品久久久不卡 | 亚洲精品久久久久中文字幕一福利| 999国产精品视频| 久久精品一区二区三区夜夜| 日本孕妇潮喷高潮视频| 亚洲欧洲无码av不卡在线| 欧美手机在线视频| 网站在线观看视频一区二区| 国产精品v片在线观看不卡| 99在线精品国产不卡在线观看| 中文字幕精品乱码一二三区| 人人超碰人人爱超碰国产| 精品人妻潮喷久久久又裸又黄| 久久久精品国产亚洲麻色欲| 日本免费一区二区在线视频播放| 精品9e精品视频在线观看|