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

        ?

        超聲相控陣系統(tǒng)數(shù)據(jù)傳輸?shù)年P鍵技術

        2016-03-16 02:39:00施成龍師芳芳張碧星
        無損檢測 2016年2期
        關鍵詞:數(shù)據(jù)總線板卡傳輸速率

        施成龍,師芳芳,張碧星

        (中國科學院聲學研究所 聲場聲信息國家重點實驗室,北京 100190)

        ?

        超聲相控陣系統(tǒng)數(shù)據(jù)傳輸?shù)年P鍵技術

        施成龍,師芳芳,張碧星

        (中國科學院聲學研究所 聲場聲信息國家重點實驗室,北京 100190)

        摘要:超聲相控陣檢測技術有著較高的靈敏度、分辨率和信噪比,是目前無損檢測領域的熱點。為了提高超聲相控陣檢測速度,對于超聲相控陣系統(tǒng)數(shù)據(jù)傳輸?shù)年P鍵技術進行了探討。介紹了自行開發(fā)的超聲相控陣系統(tǒng)結構,對決定超聲相控陣系統(tǒng)數(shù)據(jù)傳輸速度的三個因素:數(shù)據(jù)總線、硬件驅(qū)動、數(shù)據(jù)讀取程序進行了說明與分析。選擇高速數(shù)據(jù)傳輸總線PCI總線為數(shù)據(jù)總線,使用DriverStudio開發(fā)高效的PCI總線驅(qū)動,并采用多核多線程技術提高數(shù)據(jù)讀取程序的效率。試驗表明,采用PCI總線技術和多核編程開發(fā)超聲相控陣系統(tǒng)數(shù)據(jù)傳輸模塊,能提高系統(tǒng)數(shù)據(jù)傳輸速度,從而提高檢測速度。

        關鍵詞:超聲相控陣;PCI總線;DriverStudio;多核編程

        超聲相控陣技術能夠動態(tài)地進行聚焦發(fā)射和聚焦接收,因此具有較高的靈敏度、分辨率和信噪比,是目前無損檢測領域的研究熱點。與傳統(tǒng)的超聲檢測技術相比,超聲相控陣技術在分辨率、信噪比、缺陷檢出率等方面的性能都得到了提高。因此,在無損檢測領域中,超聲相控陣系統(tǒng)有著極大的發(fā)展前景[1-2]。

        隨著對于超聲相控陣檢測速度與檢測精度要求的提高,超聲相控陣檢測系統(tǒng)的獨立通道數(shù)和數(shù)據(jù)傳輸率也隨之增加。因此,超聲相控陣系統(tǒng)數(shù)據(jù)傳輸部分性能在很大程度上決定超聲相控陣系統(tǒng)的性能。國內(nèi)市場較高端的相控陣系統(tǒng),如汕頭超聲儀器所的CTS-602超聲相控陣檢測儀和武漢中科創(chuàng)新公司開發(fā)的HS PA20相控陣超聲波檢測儀,它們的最大掃描重復頻率為5 kHz。國外市場較高端的相控陣系統(tǒng),如Olympus公司研發(fā)的TomoScan Ⅲ檢測儀器的最大數(shù)據(jù)傳輸速率為5 MB·s-1,Zetec公司研發(fā)的DYNARY檢測儀器的最大數(shù)據(jù)傳輸速率為20 MB·s-1,M2M公司研發(fā)的MultiX++檢測儀器的最大數(shù)據(jù)傳輸速率為30 MB·s-1。

        為了提高超聲相控陣系統(tǒng)的檢測速度,筆者基于自行開發(fā)的超聲相控陣系統(tǒng),詳細討論了超聲相控陣系統(tǒng)數(shù)據(jù)傳輸部分的實現(xiàn)方式和優(yōu)化方案。

        1超聲相控陣系統(tǒng)結構

        圖1所示為自行開發(fā)的超聲相控陣系統(tǒng)結構框圖,多個數(shù)據(jù)采集板將采集得到的超聲回波數(shù)據(jù)通過數(shù)據(jù)總線上傳給主機板,主機板顯控軟件對得到的數(shù)據(jù)進行成像顯示和分析。

        圖1 超聲相控陣系統(tǒng)結構框圖

        在這樣的結構中,若數(shù)據(jù)總線傳輸速率較慢,或數(shù)據(jù)總線接口硬件驅(qū)動效率不夠高,或主機板不能及時通過驅(qū)動程序取出數(shù)據(jù),都會導致超聲相控陣系統(tǒng)檢測速度的降低。因此,在這種結構的超聲相控陣系統(tǒng)中,數(shù)字板與主機板間的數(shù)據(jù)總線、軟硬件接口的硬件驅(qū)動、數(shù)據(jù)讀取部分程序結構至關重要。

        在眾多的高速實時數(shù)據(jù)傳輸解決方案中,USB 2.0傳輸速率可達60 MB·s-1,PCI- Express總線數(shù)據(jù)傳輸速率達16 GB·s-1,32位PCI總線數(shù)據(jù)傳輸速率達133 MB·s-1[3]。USB 2.0的CPU占用率較高,不適用于超聲相控陣系統(tǒng)。PCI及PCI-Express總線均滿足超聲相控陣系統(tǒng)數(shù)據(jù)傳輸速率的要求,但目前PCI-Express通用性沒有PCI好,而PCI總線接口則是超聲相控陣系統(tǒng)使用較為廣泛的數(shù)據(jù)接口[4-6],因此筆者選擇PCI總線做為上述超聲相控陣系統(tǒng)的數(shù)據(jù)總線。

        2PCI總線驅(qū)動開發(fā)

        PCI驅(qū)動程序開發(fā)工具主要有三種:DDK(Device Development Kit)、WinDriver與DriverStudio。DDK是微軟提供的一套用于開發(fā)Windows下設備驅(qū)動程序的工具包,雖然用其開發(fā)的程序執(zhí)行效率高,但開發(fā)難度大,開發(fā)周期長。WinDriver是Jungo公司開發(fā)的驅(qū)動程序開發(fā)組件,具有開發(fā)驅(qū)動難度較低,花費時間少的特點,開發(fā)者只需定制和調(diào)用它提供的通用驅(qū)動,但是程序的執(zhí)行效率不高。DriverStudio是一套NuMega公司為簡化Windows設備驅(qū)動程序和應用程序的開發(fā)而提供的軟件工具包,它的函數(shù)庫封裝了針對驅(qū)動程序的各種通用操作,大大減少了驅(qū)動程序的代碼長度;而由于它開發(fā)的驅(qū)動程序本質(zhì)上是在調(diào)用DDK庫函數(shù),所以執(zhí)行效率與DDK相當[7]。

        因此,筆者選擇DriverStudio來開發(fā)超聲相控陣數(shù)據(jù)總線驅(qū)動。

        2.1 PCI總線驅(qū)動開發(fā)步驟

        使用DriverStudio開發(fā)PCI驅(qū)動主要有三個步驟。

        2.1.1利用DriverWizard生成PCI總線設備硬件驅(qū)動框架

        DriverWizard是創(chuàng)建驅(qū)動程序框架的工具,能較簡單地對需要的功能設置框架,方便用戶添加功能代碼。關鍵步驟如下:

        (1) 第4步——選擇設備的總線類型并填寫硬件類型

        所要開發(fā)的是PCI接口芯片PLX9656的驅(qū)動,因此這里選擇PCI總線。PCI Vendor ID是廠商標識符,為10B5;PCI Device ID是設備標識符,為9656;PCI Subsystem ID為子系統(tǒng)ID號,為965610B5;PCI Revision ID是修訂號,為BA。

        (2) 第9步——選擇設備文件類名和接口

        在Resources項中,選擇需要被使用的硬件資源,如存儲空間,I/O空間,中斷和DMA等。在文章中需要用到的資源有:基地址為0的存儲空間、基地址為2的存儲空間、中斷和DMA。

        在Interface中,可以選擇應用程序打開設備的方式:用GUID接口或符號鏈接名。GUID是一種說明軟件訪問硬件過程的命名方案,一個128位GUID唯一標識一個設備接口。若使用GUID,接口方式必須是每一個數(shù)字板都對應一個唯一GUID標識的驅(qū)動,這意味著驅(qū)動無法復用。而符號鏈接名(Symbolic link name)的主要用途是把DOS(Disk Operating System, 磁盤操作系統(tǒng))形式的名稱鏈接到設備上。當多塊相同配置的PCI板卡插入PCI插槽時,可以使用同一個PCI驅(qū)動,因此選擇符號鏈接名的方式。

        (3) 第10步——定義驅(qū)動與應用程序之間通信的DeviceIoControl控制代碼

        需要使用驅(qū)動來完成對硬件設備寄存器與DMA讀寫的操作。最后一步選擇生成與驅(qū)動通信的應用程序,單擊Finish完成驅(qū)動程序框架。

        2.1.2在已完成的驅(qū)動框架中添加功能代碼

        (1) 內(nèi)存的訪問

        KMemoryRange類封裝了對于內(nèi)存的操作,實現(xiàn)對內(nèi)存映射芯片的訪問。在生成的驅(qū)動框架中已經(jīng)完成對于資源的定義、初始化及卸載,只需要在DeviceIoControl控制代碼函數(shù)中加入對于資源的讀寫即可。

        (2) 中斷處理

        KInterrupt類實現(xiàn)硬件中斷處理。其成員函數(shù)包括中斷的初始化,將一個中斷服務例程連接到中斷和解除其連接等操作。

        在中斷服務例程中,首先判斷該中斷是否為需要處理的中斷,若不是,返回False;若是,進行必要的處理,請求一個DPC(Deferred Procedure Call, 延遲過程調(diào)用),然后返回True。這里需要處理的是DMA中斷,因此Isr_Irq函數(shù)判斷的是中斷寄存器(PCI9656中為0x68)的某個特定位是否為1。

        在驅(qū)動程序停止前,需要調(diào)用KInterrupt成員函數(shù)來斷開中斷并釋放資源。

        (3) DMA傳輸

        DriverWorks提供了三個類:KDmaAdapter、KDmaTransfer和KCommonDmaBuffer類,用于實現(xiàn)DMA操作。KDmaAdapter類用于建立一個DMA適配器,它說明DMA通道的特性。KDmaTransfer類用于DMA傳輸控制。KCommonDmaBuffer類用于申請系統(tǒng)提供的公用緩沖區(qū)。具體參數(shù)的定義與初始化在驅(qū)動框架中提供。

        第一步在SerialRead/SerialWrite中啟動DMA讀寫傳輸;第二步,獲取要傳輸?shù)奈锢韮?nèi)存的地址和字節(jié)數(shù),調(diào)用StartDMA例程;第三步,DMA傳輸結束后,產(chǎn)生中斷,Isr_Irq例程處理并清除中斷后,請求DqcFor_Irq例程;第四步,DMA結束,完成IRP(I/O Request Package, 輸入輸出請求)。

        如此四步,完成DMA傳輸。

        2.1.3調(diào)用驅(qū)動程序完成所需功能

        需要對多塊超聲回波信號數(shù)據(jù)采集板進行寄存器讀寫和DMA讀寫,因此需要開發(fā)應用程序,其框架如圖2所示。

        圖2 調(diào)用驅(qū)動應用程序結構

        (1) 打開設備

        由于驅(qū)動框架生成過程中選擇的是通過符號鏈接名的方法打開設備,因此當所有數(shù)字板都裝上生成的驅(qū)動后,板卡命名規(guī)律是“PCI9656Device+數(shù)字位”,其中數(shù)字位根據(jù)板卡數(shù)目自動加1,如第1塊板卡的符號鏈接名是“PCI9656Device 0”,第2塊板卡就是“PCI9656Device 1”,依此類推,第N塊板卡是“PCI9656DeviceN-1”。通過CreateFile函數(shù)得到驅(qū)動句柄。

        (2) 訪問設備資源

        通過DeviceIoControl函數(shù)與WDM驅(qū)動進行通信,對其進行設置寄存器和DMA地址的操作。

        使用ReadFile和WriteFile函數(shù)進行讀寫DMA的操作,由于ReadFile/WriteFile有固定的輸入?yún)?shù),因此DMA地址如果不固定的話,需要由DeviceIoControl函數(shù)進行修改。

        (3) 關閉設備

        通過CloseHandle函數(shù)關閉設備。

        2.2 驅(qū)動測試

        采用DriverStudio開發(fā)的PCI9656驅(qū)動能夠正確地讀寫設備資源,并且DMA讀寫的最大傳輸速率為112 MB·s-1。

        3數(shù)據(jù)讀取部分程序結構及優(yōu)化方案

        數(shù)據(jù)讀取部分程序即為主機板通過調(diào)用PCI驅(qū)動讀取超聲回波數(shù)據(jù)的程序。這部分程序的效率十分重要,如果讀取不及時,會導致硬件緩存被采集數(shù)據(jù)占滿而造成溢出。通常該程序的結構為簡單易調(diào)試的串行結構,如圖3所示。

        圖3 串行結構流程圖

        這種結構的好處是DMA讀寫會自行阻塞,邏輯簡單,容易調(diào)試。但由于是依次串行讀取數(shù)據(jù),讀完任意一塊數(shù)據(jù)采集板的數(shù)據(jù)后,需要等待讀取n-1塊其他板卡所消耗的時間,才能再次讀取同一塊數(shù)字板上的數(shù)據(jù)。因此,當數(shù)據(jù)采集板個數(shù)變多時,等待的時間會過長,以至于不能及時讀取數(shù)據(jù)采集板上的數(shù)據(jù)。此時得到的數(shù)據(jù)將會發(fā)生錯位、解析錯誤等一系列問題,無法進行正確的成像處理。

        為了提高效率,采用多線程的并行結構來解決這個問題[8],如圖4所示。

        圖4 并行結構流程圖

        如圖4所示,每一個板卡對應一個數(shù)據(jù)獲取線程,如此則可以解決板卡過多而造成的等待時間過長的問題。但是這樣會產(chǎn)生另一個問題,即如果線程數(shù)大于系統(tǒng)處理器的運算核心數(shù)時,運算核心會在多個線程之間進行切換,而導致程序運行效率的降低。

        多核技術作為新世紀的前沿技術,它能夠在硬件資源不變的基礎上,最大程度地提高程序運行效率。采用多核技術,將多個線程分配到固定處理器核心中,能解決核心在線程中切換的問題,從而提高程序運行的極限參數(shù)。

        筆者采用的處理器運算核心數(shù)為2,總共有6個板卡,可以編程實現(xiàn)兩個線程,每個線程串行處理3個板卡的數(shù)據(jù),并利用多核技術將這兩個線程分配到其對應的運算核心中,測試結果如表1所示。

        從表1可看出,將讀取數(shù)據(jù)程序從串行結構修改為并行結構后,程序的極限參數(shù)反而降低了,這是由于雙核心在6個線程上切換從而降低了程序運行效率;而在使用多核技術編程后,程序的性能得到了比較大的提高。

        表1 不同程序結構的極限參數(shù)

        4結語

        介紹了自行開發(fā)的超聲相控陣系統(tǒng)結構,對決定超聲相控陣系統(tǒng)數(shù)據(jù)傳輸速度的三個因素:數(shù)據(jù)總線、硬件驅(qū)動、數(shù)據(jù)讀取程序進行了分析,選擇高速數(shù)據(jù)傳輸總線PCI總線為數(shù)據(jù)總線,使用DriverStudio開發(fā)高效的PCI總線驅(qū)動,并采用多核多線程技術提高數(shù)據(jù)讀取程序效率。結果表明,采用PCI總線技術和多核多線程技術開發(fā)超聲相控陣系統(tǒng)數(shù)據(jù)傳輸模塊,能提高系統(tǒng)數(shù)據(jù)傳輸速度從而提高檢測速度,對于超聲無損檢測有著較好的實用價值。

        參考文獻:

        [1]鐘志民,梅德松.超聲相控陣技術的發(fā)展及應用[J].無損檢測, 2002,24(2):69-71.

        [2]潘亮,董世運,徐濱士,等.相控陣超聲檢測技術研究與應用概況[J].無損檢測, 2013,35 (5):26-29.

        [3]尹勇,李宇.PCI 總線設備開發(fā)寶典[M].北京:北京航空航天大學出版社, 2005.

        [4]鮑曉宇,施克仁,陳以方,等.超聲相控陣系統(tǒng)中相控發(fā)射與同步的實現(xiàn)[J].無損檢測, 2003,25(10):507-510.

        [5]李勁松,葉琛,梅德松.超聲波檢測數(shù)據(jù)高速采集和傳輸技術的研究[J].無損檢測, 2003,25(8):395-398.

        [6]高松巍,黃紹博,楊理踐.鋼板應力集中區(qū)域的磁檢測[J].無損檢測, 2013,35(2):38-41.

        [7]楊波.基于PCI總線的WDM驅(qū)動程序開發(fā)研究[D].長沙:國防科學技術大學, 2007:10.

        [8]許藥林,朱晛,徐大專.超聲相控陣成像系統(tǒng)軟件設計[J].無損檢測, 2013,35(4):5-9.

        歡迎網(wǎng)上投稿歡迎訂閱歡迎刊登廣告

        The Key Technology of Data Transmission in an Ultrasonic Phased Array System

        SHI Cheng-long, SHI Fang-fang, ZHANG Bi-xing

        (State Key Laboratory of Acoustics, Institute of Acoustics, Chinese Academy of Sciences, Beijing 100190, China)

        Abstract:Ultrasonic phased array technology has a high sensitivity, resolution and signal to noise ratio, which makes it a hot research field of nondestructive testing. To improve the detection speed of ultrasonic phased array system, the key part of data transfer in ultrasonic phased array system is studied. The structure of self-developed ultrasonic phased array system is introduced. Three factors which include data bus, hardware driver and data reading program that determine the data transfer rate of system are described. To develop the system, PCI bus is chosen to be the data bus, DriverStudio is used to develop the PCI bus driver, and multi-core technology is applied to improve the efficiency of the data reading program. Experimental results show that using PCI bus technology and multi-core programming technology to develop the data transfer module of the ultrasonic phased array system can increase the data transfer rate speed of the system

        Key words:Ultrasonic phased array system; PCI bus; DriverStudio; Multi-core programming

        中圖分類號:O426.9;TG115.28

        文獻標志碼:A

        文章編號:1000-6656(2016)02-0036-04

        DOI:10.11973/wsjc201602009

        作者簡介:施成龍(1988-),男,博士研究生,研究方向為超聲傳播與成像。

        基金項目:國家自然科學基金資助項目(11374324,11174321)

        收稿日期:2015-04-30

        猜你喜歡
        數(shù)據(jù)總線板卡傳輸速率
        一汽-大眾速騰轎車行駛中為何偶發(fā)多個故障燈點亮
        2012年產(chǎn)上汽大眾斯柯達明銳轎車空調(diào)不制冷的故障排除
        基于PCI9054的多總線通信板卡的研制
        測控技術(2018年3期)2018-11-25 09:45:46
        基于FPGA的多通道模擬量采集/輸出PCI板卡的研制
        測控技術(2018年12期)2018-11-25 09:37:42
        智能電網(wǎng)調(diào)度控制系統(tǒng)中的數(shù)據(jù)總線技術研究
        科技資訊(2017年27期)2017-11-24 10:06:06
        跨山通信中頻段選擇與傳輸速率的分析
        黑龍江電力(2017年1期)2017-05-17 04:25:16
        數(shù)據(jù)傳輸速率
        CHIP新電腦(2016年9期)2016-09-21 10:31:09
        一種基于光纖數(shù)據(jù)傳輸?shù)亩喟蹇ㄜ浖绦驘龑懠夹g
        新一代全球衛(wèi)星通信網(wǎng)絡將百倍提升傳輸速率
        新一代全球衛(wèi)星通信網(wǎng)絡將百倍提升傳輸速率
        美女不带套日出白浆免费视频| 精品一区二区三区人妻久久| 91久久精品一区二区喷水喷白浆| 国产亚洲3p一区二区| 在线一区二区三区国产精品| 亚洲妇女自偷自偷图片| 亚洲精品无码久久久久sm| 国产国拍亚洲精品永久69| 一区二区三区日本美女视频| 国产午夜亚洲精品国产成人av| 国产乱子伦| 亚洲av无码成人黄网站在线观看 | 亚洲日韩久久综合中文字幕| 亚洲国产成人久久一区| 日韩在线不卡一区在线观看| 精品国产一区二区av麻豆不卡 | 三个男吃我奶头一边一个视频| 久久久久久好爽爽久久| 亚洲精品国产国语| 亚洲处破女av一区二区| 国产精品对白一区二区三区| 制服丝袜中文字幕在线| 亚洲av永久无码精品秋霞电影影院| 日本岛国大片不卡人妻| 午夜视频一区二区三区四区| 色偷偷888欧美精品久久久| 大肉大捧一进一出好爽视频mba| 北岛玲中文字幕人妻系列| 国产精品成年人毛片毛片| 亚洲av成人综合网成人| 男人激烈吮乳吃奶视频免费| 一本大道久久a久久综合| 手机在线中文字幕av| 亚洲视频在线一区二区| 亚洲av最新在线网址| 欧美色资源| 免费av一区男人的天堂 | 亚洲av无码乱观看明星换脸va| 国产精品自拍首页在线观看| 极品美女调教喷水网站| 欧美大屁股xxxx高跟欧美黑人 |