• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    基于VxWorks的CPCI多通道卡驅(qū)動設(shè)計與實現(xiàn)

    2022-06-01 13:17:34胡廣浩阮福明趙希昉黃德友井中武
    計算機測量與控制 2022年5期
    關(guān)鍵詞:拖纜驅(qū)動程序寄存器

    胡廣浩,阮福明,趙希昉,黃德友,井中武

    (中海油田服務股份有限公司 物探事業(yè)部,天津 300450)

    0 引言

    中國海油開展自主海上高精度地震勘探裝備研發(fā),成功研制出具有自主知識產(chǎn)權(quán)的“海亮”高精度拖纜地震采集系統(tǒng)、“海燕”拖纜定位與控制系統(tǒng)(控制系統(tǒng))、“海途”綜合導航系統(tǒng)、“海源”氣槍震源控制系統(tǒng),通過多次試驗和生產(chǎn)作業(yè),實現(xiàn)了海洋地震拖纜采集裝備產(chǎn)業(yè)化應用,關(guān)鍵技術(shù)躋身國際先進行列,為實現(xiàn)我國海上油氣增產(chǎn)、保障國家能源安全、建設(shè)科技強國做出積極努力。

    控制系統(tǒng)是成套地震勘探裝備的重要組成部分,它由船載控制系統(tǒng)和水下控制器組成。它通過控制掛載在拖纜上的羅經(jīng)鳥的翼板垂直方向移動實現(xiàn)拖纜拖纜沉放深度控制,通過控制水平鳥翼板水平方向移動實現(xiàn)拖纜間距控制,通過控制聲學鳥和水平鳥發(fā)射聲學信號進行聲學網(wǎng)絡測距,最后通過實時采集深度數(shù)據(jù)、航向數(shù)據(jù)、相對位置數(shù)據(jù)等,給綜合導航系統(tǒng)提供原始測量數(shù)據(jù)用于坐標實時解算,最終給地震數(shù)據(jù)提供位置信息。隨著勘探船拖帶能力提升和拖纜地震勘探向深海發(fā)展需要,當前我國勘探船拖帶的拖纜規(guī)模達到12(纜)*12 km,每種拖纜上掛載的控制器按照300米間隔布放,控制系統(tǒng)需要在特定的工作周期內(nèi)完成12(拖纜)*120(控制器)規(guī)模的實時控制和數(shù)據(jù)采集,對數(shù)據(jù)傳輸?shù)膶崟r性和處理效率要求極高。

    1 系統(tǒng)結(jié)構(gòu)及原理

    VxWorks是一款嵌入式強實時操作系統(tǒng)(RTOS,real-time operating system),以其高可靠、高性能、可剪裁和卓越的實時性被廣泛地應用于通信、軍事、工業(yè)控制、航空航天、地震勘探等高精尖技術(shù)及實時性要求極高的領(lǐng)域中。緊湊型外設(shè)部件互連標準(CPCI,compact peripheral component interconnect)總線具有高開放性、高可靠性、可熱插拔、帶寬高等特點,使其可以廣泛應用在通訊、網(wǎng)絡、實時系統(tǒng)控制(RTMC,real time machine control)、實時數(shù)據(jù)采集(RTDA,real-time data acquisition)等需要高速運算、高速數(shù)據(jù)通信、高可靠度、高擴展性的應用領(lǐng)域。本文控制系統(tǒng)的設(shè)計既要考慮到實時性和處理效率問題,又要具備一定的擴展性要求,因此采用緊湊CPCI工控機箱作為硬件平臺。CPCI工控機箱的系統(tǒng)槽位運行系統(tǒng)主控板,采用單板計算機和VxWorks實時操作系統(tǒng)軟件平臺,非系統(tǒng)槽位運行定制開發(fā)的多通道拖纜控制器接口卡(多通道卡),系統(tǒng)主控板與多通道卡基于CPCI背板總線連接,系統(tǒng)結(jié)構(gòu)如圖1所示。

    圖1 控制系統(tǒng)結(jié)構(gòu)框圖

    多通道卡由CPCI總線接口芯片和多通道處理電路模塊組成,CPCI總線接口芯片采用BROADCOM公司的PCI9054芯片,多通道處理電路模塊與掛載在拖纜上的水下拖纜控制器通訊,每個多通道處理電路模塊拖帶6個通道??刂葡到y(tǒng)應用程序運行于系統(tǒng)主控板,多通道卡驅(qū)動程序是系統(tǒng)主控板應用程序和多通道卡之間通訊的“橋梁”,它通過對PCI9054接口芯片的控制實現(xiàn)應用程序與多通道處理電路6個通道的數(shù)據(jù)通訊,從而實現(xiàn)控制系統(tǒng)應用程序?qū)λ峦侠|控制器的控制。運行于系統(tǒng)主控板的多通道卡驅(qū)動程序和應用程序均運行于VxWorks實時操作系統(tǒng)環(huán)境中,多通道卡驅(qū)動程序的設(shè)計支持多個多通道卡的并發(fā)控制,從而為應用程序提供了靈活的擴展能力。

    2 VxWorks下驅(qū)動程序結(jié)構(gòu)和CPCI總線設(shè)備

    VxWorks采用分層設(shè)計和結(jié)構(gòu)化設(shè)計,由性能高效的微內(nèi)核Wind、VxWorks庫、網(wǎng)絡協(xié)議棧、I/O系統(tǒng)、文件系統(tǒng)、板級支持包(BSP,board support package)、各類驅(qū)動程序等組成。BSP和PCI驅(qū)動程序位于硬件與操作系統(tǒng)和應用程序之間,它們在系統(tǒng)中的位置如圖2所示。BSP是一個軟件抽象層,它的主要功能是系統(tǒng)加電以后初始化目標機硬件、初始化操作系統(tǒng)及提供部分硬件的驅(qū)動程序,PCI驅(qū)動程序是操作系統(tǒng)和應用程序與具體硬件之間的“橋梁”,對上為VxWorks提供標準操作接口和應用程序提供專用接口,對下直接控制硬件設(shè)備。對于BSP和PCI驅(qū)動程序共同構(gòu)成了應用程序和具體物理設(shè)備的中間層,這種設(shè)計思想可以實現(xiàn)應用層軟件與具體物理設(shè)備的隔離,提高應用程序的可移植性。本文中系統(tǒng)主控板采用成熟的商用單板計算機,提供了基本的BSP開發(fā)包,因此只需要對其進行功能擴展,即可滿足定制的設(shè)備。

    圖2 板級支持包和驅(qū)動程序

    外設(shè)部件互連標準(PCI,peripheral component interconnect)是由外圍部件互連專業(yè)組(PCI-SIG,peripheral component interconnect special interest group)推出的一種局部并行總線標準,PCI總線能夠根據(jù)設(shè)備上的配置信息自動為設(shè)備分配物理地址空間、輸入輸出(I/O,input/output)端口號、中斷號,并且支持多種外部設(shè)備。本文CPCI工控機箱采用的背板通信協(xié)議是一種基于標準PCI總線的緊湊堅固的高性能總線技術(shù),它定義了更加堅固耐用的PCI版本,在電氣、邏輯和軟件方面,它與PCI標準完全兼容,因此CPCI多通道卡驅(qū)動程序的設(shè)計完全兼容PCI標準協(xié)議。

    根據(jù)控制系統(tǒng)功能需求,結(jié)合VxWorks驅(qū)動程序結(jié)構(gòu)和PCI總線特點,將多通道卡驅(qū)動程序開發(fā)分為內(nèi)存映射模塊、中斷注冊初始化模塊和中斷處理模塊的設(shè)計和實現(xiàn)。

    3 多通道卡驅(qū)動程序設(shè)計

    3.1 PCI配置空間

    根據(jù)PCI規(guī)范,每一個PCI總線設(shè)備有3種相互獨立的物理地址空間:配置寄存器空間、存儲器空間和I/O空間。其中配置寄存器空間是其容量為256個字節(jié),其中前64個字節(jié)為配置頭標區(qū),該區(qū)域是固定結(jié)構(gòu),后192個字節(jié)為本地配置空間(設(shè)備關(guān)聯(lián)區(qū)),主要定義卡上局部總線的特性、本地空間基地址及范圍等,寄存器布局因設(shè)備而異。

    配置寄存器空間是PCI設(shè)備所特有的一個物理空間,支持設(shè)備即插即用,因此PCI設(shè)備不占用固定的內(nèi)存地址空間或I/O地址空間,而是由操作系統(tǒng)決定其映射的基址。配置寄存器空間里最重要的包括廠商標識(Vendor ID)、設(shè)備標識(Device ID)、基地址寄存器(BAR,base address register)、中斷號(IRQ Line)、中斷引腳(IRQ Pin)等。配置寄存器空間里基地址寄存器PCIBAR[0-5]反映了該PCI設(shè)備的地址空間映射到系統(tǒng)內(nèi)存空間或I/O空間的起始物理地址。基地址寄存器的最低位bit0是只讀的,其值為1表示該寄存器關(guān)聯(lián)的地址空間是要映射到I/O空間,否則映射到系統(tǒng)存內(nèi)存空間的。本文PCIBAR0用于配置本地寄存器、運行時寄存器和DMA寄存器到系統(tǒng)內(nèi)存空間映射,PCIBAR2用于本地地址空間到系統(tǒng)內(nèi)存空間映射?;赑CIBAR0的運行時狀態(tài)控制寄存器INTCSR用于多通道卡中斷狀態(tài)獲取和控制,基于PCIBAR2的寄存器用于多通道數(shù)據(jù)接口和本地中斷源管理。中斷號的分配由系統(tǒng)在硬件上電階段自動分配,驅(qū)動程序只需要獲取到中斷號,通過掛接中斷服務程序即可處理多通道卡觸發(fā)的數(shù)據(jù)請求。主要寄存器設(shè)計如表1所示。

    表1 主要寄存器定義

    基于基地址寄存器PCIBAR2,分別定義6個通道讀寄存器和6個通道寫寄存器用于數(shù)據(jù)讀取和發(fā)送,定義1個中斷源寄存器和1個中斷屏蔽寄存器,分別用于6個通道的中斷標志和屏蔽控制。對于PCI總線設(shè)備的配置和控制,VxWorks提供了pciFindDevice()、pciConfigOutLong()、pciIntConnect()等專用應用程序編程接口(API,application programming interface)用于驅(qū)動程序開發(fā),下面在具體的實現(xiàn)過程中介紹其使用方法。

    3.2 內(nèi)存映射模塊

    VxWorks在BSP的支持下,自動為PCI設(shè)備分配4k*16字節(jié)大小內(nèi)存映射空間。VxWorks的內(nèi)存管理單元(MMU,memory management unit)僅具備基本的內(nèi)存管理功能,只有將PCI設(shè)備的存儲空間加入到MMU中,應用程序才能像操作內(nèi)存空間一樣操作設(shè)備存儲空間。VxWorks中頁大小在的BSP的VM_PAGE_SIZE定義,默認為4k字節(jié),如果需要改變這個值,需要重新重定義config.h中的VM_PAGE_SIZE的值。vmLib.h中的數(shù)據(jù)結(jié)構(gòu)PHYS_MEM_DESC用于定義映射物理內(nèi)存的參數(shù),內(nèi)存映射用sysPhysMemDesc(被聲明為一個PHYS_MEM_DESC的數(shù)組)在sysLib.c中定義。在 sysPhysMemDesc中定義的內(nèi)存區(qū),必須是頁對齊的,并且必須跨越完整的頁,因此PHYS_MEM_DESC 的最初3個域都必須是VM_PAGE_SIZE 的倍數(shù)。如果在初始化過程中提供的sysPhysMemDesc的元素不是頁對齊的,則在VxWorks初始化期間將導致系統(tǒng)崩潰。有手動配置和自動配置兩種方式實現(xiàn)MMU對PCI存儲空間的映射,前者在BSP的sysLib.c文件中將設(shè)備存儲空間手動添加到內(nèi)存管理表sysPhysMemDesc中,后者通過sysMmuMapAdd()函數(shù)動態(tài)將設(shè)備的存儲空間地址加入到MMU中。本文基于后者實現(xiàn)方式,通過擴展板級支持包實現(xiàn)內(nèi)存映射,以獲得更好的靈活性和擴展性,實現(xiàn)過程如圖3所示。

    圖3 內(nèi)存映射模塊流程圖

    1)系統(tǒng)硬件初始化入口:在BSP的支持下,VxWorks操作系統(tǒng)初始化過程中,通過調(diào)用sysPciAutoConfig()完成系統(tǒng)硬件設(shè)備的初始化,主要通過中斷號分配、內(nèi)存映射空間分配、I/O地址等完成硬件所需資源分配;

    2)查找多通道卡:根據(jù)設(shè)備vendorID(0x10B5)和deviceID(0x9054)采用pciFindDevice()找到對應的設(shè)備,獲取到的總線號busNo、設(shè)備號deviceNo、功能號FuncNo,總線號busNo、設(shè)備號deviceNo、功能號FuncNo組合在一起可以作為該設(shè)備的唯一標識;

    3)獲取基地址:采用pciConfigInLong()函數(shù)獲取設(shè)備的寄存器基地址PCIBAR2,獲得的寄存器基地址與存儲器屏蔽位PCI_MEMBASE_MASK邏輯與,得到內(nèi)存映射基地址;

    4)獲取映射空間大小:根據(jù)PCI規(guī)范,采用pciConfigoutLong()、pciConfigInLong()行數(shù)將基地址寄存器全部寫入1再讀回,得到映射空間大小,然后對映射空間進行MMU頁面對齊,確定空間長度;

    5)基地址寄存器復位:將mapBaseCsr回寫到基地址寄存器復位,用于后續(xù)其他應用需要。

    在BSP的sysLib.c中的sysHwInit()函數(shù)中擴展內(nèi)存映射功能,關(guān)鍵代碼為:

    /* 獲取多通道卡設(shè)備的總線號、設(shè)備號、功能號 */

    if(OK==pciFindDevice(VENDERID,DEVICEID,num,&busNo,&deviceNo,&funcNo)){

    /* 獲取PCIBAR2內(nèi)容 */

    pciConfigInLong(busNo,deviceNo,funcNo,PCI_CFG_BASE_ADDRESS_2,&PCIBAR2));

    /* 將PCIBAR2全部寫入1 */

    pciConfigOutLong(busNo,deviceNo,funcNo,PCI_CFG_BASE_ADDRESS_2,0xffffffff));

    /* 再讀回PCIBAR2內(nèi)容,得到分配內(nèi)存空間大小 */

    pciConfigInLong(busNo,deviceNo,funcNo,PCI_CFG_BASE_ADDRESS_2,&mapSize))

    /* 將分配內(nèi)存空間大小進行4k頁面對齊 */

    mapSize=(~(mapSize&PCI_MEMBASE_MASK))+1;

    mapSize=ROUND_UP(mapSize,VM_PAGE_SIZE);

    pciConfigOutLong(busNo,deviceNo,funcNo,PCI_CFG_BASE_ADDRESS_2,PCIBAR2));

    PCIBAR2&=PCI_MEMBASE_MASK;

    /* 動態(tài)將映射關(guān)系加入到MMU */

    sysMmuMapAdd((void*)(PCIBAR2),mapSize,VM_STATE_MASK_FOR_ALL,VM_STATE_FOR_PCI);

    }

    3.3 中斷注冊初始化模塊

    VxWorks啟動過程中,通過板級支持包完成多通道卡存儲空間的MMU管理后,應用程序就可以像操作內(nèi)存空間一樣操作多通道卡的存儲空間。本文為了提高模塊的獨立性和移植性,將內(nèi)存映射模塊和中斷注冊初始化模塊進行分離,在中斷注冊初始化過程中,需要再次獲取內(nèi)存映射基地址,之后中斷服務處理模塊和應用層軟件可以通過操作內(nèi)存空間的方式對多通道卡的存儲空間進行存取。

    VxWorks采用中斷服務表對中斷進行管理,中斷服務表維護了中斷向量和中斷服務程序(ISR,interrupt service routines)的入口地址對應關(guān)系。多通道卡有數(shù)據(jù)到來時采用中斷的方式通知VxWorks系統(tǒng),以保證數(shù)據(jù)能得到及時處理,達到實時性要求。為了處理多通道卡產(chǎn)生的中斷,必須獲取其在系統(tǒng)中的中斷號,這個中斷號是VxWorks系統(tǒng)啟動時通過PCI庫進行自動分配。根據(jù)PCI9054配置空間定義,我們首先得到的是一個8位的中斷號,這種中斷號需要通過INT_NUM_GET轉(zhuǎn)換才能得到該設(shè)備在VxWorks系統(tǒng)中的中斷號。

    獲取到中斷號之后,通過INUM_TO_IVEC轉(zhuǎn)換成中斷向量,最后將中斷向量和ISR的地址在操作系統(tǒng)的中斷管理模塊中注冊。VxWorks提供intConnect()和pciIntConnect()兩種注冊ISR的方式,intConnect()使用的中斷向量是獨占的,而pciIntConnect()是共享的,即同類型的多個外部設(shè)備可以共享同一個中斷向量,它在內(nèi)部使用一個鏈表管理多個ISR,發(fā)生中斷時,鏈接在一個鏈表上的各個ISR被依次調(diào)用,pciIntConnect()要求每個ISR被調(diào)用時,應該首先查詢是否為自己的設(shè)備產(chǎn)生的中斷,不是則應立即返回,以繼續(xù)調(diào)用其它ISR??刂葡到y(tǒng)在設(shè)計上支持多個多通道卡,因此采用共享中斷向量的方式對多通道卡ISR進行注冊,可獲得更高的擴展性和復用性。完成ISR在VxWorks的中斷系統(tǒng)中注冊后,使能PCI中斷和本地中斷,此后系統(tǒng)就可以處理多通道卡的數(shù)據(jù)請求。

    多通道卡初始化的關(guān)鍵代碼為:

    /* 獲取多通道卡設(shè)備的總線號、設(shè)備號、功能號 */

    if(OK==pciFindDevice(VENDERID,DEVICEID,num,&busNo,&deviceNo,&funcNo)){

    /* 獲取PCIBAR2[num] 內(nèi)容,用于應用程序訪問 */

    pciConfigInLong(busNo,deviceNo,funcNo,PCI_CFG_BASE_ADDRESS_2,&PCIBAR2[num] ));

    /* 獲取中斷號 */

    pciConfigInByte(busNo,deviceNo,funcNo,PCI_CFG_DEV_INT_LINE,&irqNo))

    PCI_DEV[num].irqNo = irqNo;

    /* x86架構(gòu)采用8259A中斷控制器,物理中斷號轉(zhuǎn)換為系統(tǒng)中斷號 */

    intNum = INT_NUM_GET(irqNo);

    sysIntDisablePIC(irqNo);

    /* 注冊中斷服務程序 */

    pciIntConnect(INUM_TO_IVEC(intNum),(VOIDFUNCPTR)pciFastISR,num);

    sysIntEnablePIC(irqNo);

    /* 獲取中斷控制狀態(tài)寄存器 */

    PCI9054_Read_PCIBAR0(num,INTCSR,&intCSR); intCSR|= INTCSR_Bit8|INTCSR_Bit11;

    /* 使能PCI中斷和本地中斷 */

    PCI9054_Write_PCIBAR0(num,INTCSR,intCSR)。

    3.4 中斷處理服務模塊

    標準的PCI設(shè)備驅(qū)動程序是VxWorks體系結(jié)構(gòu)中的I/O系統(tǒng)重要組成部分,它通過BSP訪問PCI設(shè)備,往上為應用程序提供系統(tǒng)調(diào)用入口,從而實現(xiàn)應用層程序與PCI設(shè)備的交互。本文采用自定義實現(xiàn)方式,通過跨過I/O系統(tǒng),采用中斷服務程序和應用層任務的直接通訊,獲得更高的運行效率和實時性。

    VxWorks系統(tǒng)的強實時性得益于其獨特的中斷處理模型,快速的硬件中斷處理是其核心的組成部分。為了盡可能快速響應外部中斷,VxWorks的中斷服務程序運行在一個不同于任何任務的獨立的上下文中,中斷處理過程不涉及到任務的上下文切換。操作系統(tǒng)捕獲到中斷后,對注冊到同一個中斷向量的中斷服務程序進行遍歷,通過回調(diào)函數(shù)完成對相應中斷服務程序的調(diào)用。在執(zhí)行中斷過程中可能會有新的設(shè)備中斷到來,為了保證新的更緊急的中斷能得到及時處理,這就要求我們設(shè)計的中斷服務程序盡可能的簡短而高效。本文設(shè)計如圖4所示處理模型,采用中斷快速處理和中斷處理任務組合的方式完成一次多通道卡數(shù)據(jù)傳輸請求,中斷快速處理進行數(shù)據(jù)傳輸請求的中斷快速響應,中斷處理任務進行實際數(shù)據(jù)傳輸任務。

    圖4 中斷處理模塊結(jié)構(gòu)框圖

    多通道卡有數(shù)據(jù)傳輸請求時,產(chǎn)生系統(tǒng)中斷,中斷快速處理由操作系統(tǒng)中斷服務程序自動調(diào)用。中斷快速處理運行在操作系統(tǒng)中斷服務的上下文中,是實現(xiàn)整個中斷服務過程的“前半部分”,僅完成必須的工作,包括清除通道中斷標記,給中斷處理任務發(fā)出信號量通知,使能通道中斷等,運行極其高效?!扒鞍氩糠帧敝袛嗫焖偬幚黻P(guān)鍵代碼如下:

    void pciFastISR(intnum){

    UINT32 intCSR;

    /* 獲取中斷控制狀態(tài)寄存器 */

    PCI9054_Read_PCIBAR0(num,INTCSR,&intCSR); if(INTCSR_Bit15 & intCSR){

    /* 禁用PCI中斷和本地中斷設(shè)備中斷 */

    PCI9054_Write_PCIBAR0(num,INTCSR,intCSR&(~(INTCSR_Bit8|INTCSR_Bit11));

    /* 釋放信號量,通知上層任務 */

    semGive(PCI_DEV[num].semBID);

    } }

    中斷處理任務實現(xiàn)中斷服務的“后半部分”功能,以高優(yōu)先級任務的形式由VxWorks進行任務調(diào)度,處理相對比較耗時操作,結(jié)束后使能下一輪數(shù)據(jù)傳輸。中斷處理任務啟動后,循環(huán)等待中斷快速處理的信號量通知,讀取中斷源寄存器INTMAP,依次遍歷6個標志位判斷中斷源,獲取中斷源后,通過讀取對應的通道接口獲取數(shù)據(jù)長度和內(nèi)容,然后將數(shù)據(jù)放入消息隊列通知應用層軟件,最后使能PCI中斷和本地中斷,通知多通道卡可進行下一輪數(shù)據(jù)傳輸?!昂蟀氩糠帧敝袛嗵幚砣蝿盏年P(guān)鍵代碼如下:

    void pciDealTask(int num){

    while(1){

    /* 等待中斷快速處理的信號量通知 */

    semTake(PCI_DEV[num].semBID,WAIT_FOREVER));

    UINT32 intMap;

    /* 獲取中斷源 */

    PCI9054_Read_PCIBAR2(num,INTMAP,&intMap); /* 依次遍歷中斷源標志位 */

    for(int chl= 0; chl< 6; ++chl){

    if(intMap & (0x01 << channel)){

    /*通過 PCI9054_Read_PCIBAR2(num,CHN1R_R + chl*4,&data);執(zhí)行獲取數(shù)據(jù)過程,放入消息隊列給上層應用軟件使用,不再詳述 */

    } }

    /* 使能PCI中斷和本地中斷,使能下一輪數(shù)據(jù)傳輸 */

    PCI9054_Write_PCIBAR0(num,INTCSR,(PCI_INT_BIT|LOCAL_INT_BIT));

    } }

    4 實驗與應用結(jié)果

    驗證文中多通道卡驅(qū)動程序,采用模擬測試和實際應用測試相結(jié)合的方式。模擬測試通過在主控板軟件編寫模擬程序和多通道卡內(nèi)部編寫回環(huán)程序,驗證2個多通道卡共計12個通道的數(shù)據(jù)并發(fā)讀寫功能正確性和數(shù)據(jù)處理實時性;實際應用測試通過將驅(qū)動程序與主控板應用層軟件進行功能集成,應用到控制系統(tǒng)的生產(chǎn)應用中,驗證驅(qū)動程序的可用性。

    4.1 模擬測試

    模擬程序首先完成測試任務初始化,通過pciFindDevice()查找多通道卡,找到后針對每個通道創(chuàng)建測試任務,創(chuàng)建測試任務代碼如下:

    taskId_simu[slotNo][channelNo]= taskSpawn(strcat(“simu_”,slotNo<<8|channelNo),200,VX_FP_TASK,0x4000,(FUNCPTR)tSimuTask,slotNo,channelNo,0,0,0,0,0,0,0,0)。

    由于每個通道對應一個測試任務,測試任務采用隨機休眠10~20 ms(控制系統(tǒng)與水下羅經(jīng)鳥、水平鳥、聲學鳥的通訊間隔為約80 ms)的形式模擬多個通道的并發(fā)訪問。測試任務通過隨機產(chǎn)生數(shù)據(jù),下發(fā)至多通道卡所對應通道,接著阻塞在中斷處理服務的消息隊列中,直到有數(shù)據(jù)返回,將獲得數(shù)據(jù)后與下發(fā)的數(shù)據(jù)進行比較,實現(xiàn)流程如圖5所示。

    圖5 測試程序流程圖

    通過對12個通道連續(xù)并發(fā)測試10萬次,數(shù)據(jù)傳輸穩(wěn)定、正確,驗證了驅(qū)動程序的正確性和數(shù)據(jù)處理實時性滿足設(shè)計預期。

    4.2 應用效果

    通過將多通道卡驅(qū)動程序與應用層軟件進行功能集成,形成了“海燕”拖纜定位與控制系統(tǒng)。作為中國海油自主海上高精度地震勘探裝備的重要組成部分,控制系統(tǒng)在裝配2個多通道卡情況下,形成了12通道并發(fā)處理能力,完成多次實際作業(yè)應用,驗證其在拖纜深度控制、間距控制、聲學測距控制等方面均能滿足12條拖纜大規(guī)模海上拖纜地震勘探作業(yè)對數(shù)據(jù)傳輸實時性和處理效率的要求。集成多通道卡驅(qū)動程序的控制系統(tǒng)在實際生產(chǎn)作業(yè)中的成功應用表明,本文設(shè)計和實現(xiàn)的多通道卡驅(qū)動程序結(jié)構(gòu)合理、功能正確、性能高效,滿足實際野外生產(chǎn)需求,達到了設(shè)計的預期。

    5 結(jié)束語

    本文從分析VxWorks實時操作系統(tǒng)驅(qū)動程序結(jié)構(gòu)和CPCI總線設(shè)備特點入手,依次從VxWorks下內(nèi)存映射模型、中斷注冊初始化過程和中斷處理過程等方面闡述了VxWorks下CPCI設(shè)備驅(qū)動程序開發(fā)的通用方法,并結(jié)合“海燕”拖纜定位與控制系統(tǒng)CPCI多通道卡實例給出了具體過程和關(guān)鍵程序代碼。本文實現(xiàn)的CPCI多通道卡驅(qū)動程序集成到控制系統(tǒng)中并成功應用于生產(chǎn)作業(yè)中,作業(yè)效果表明該驅(qū)動程序的設(shè)計和實現(xiàn)能滿足海上拖纜地震勘探對控制系統(tǒng)的實時性和處理效率要求,達到了設(shè)計預期。該驅(qū)動程序的設(shè)計在不失實時性的前提下,采用了模塊塊化設(shè)計、通用性設(shè)計,使之能夠靈活的應用到其他具有類似多通道、多任務、實時性要求高的嵌入式系統(tǒng)中。

    猜你喜歡
    拖纜驅(qū)動程序寄存器
    拖纜引繩的設(shè)計改進
    世界海運(2021年9期)2021-10-08 06:49:30
    Lite寄存器模型的設(shè)計與實現(xiàn)
    計算機應用(2020年5期)2020-06-07 07:06:44
    拖纜對水下航行器的操縱性能影響
    兵工學報(2019年7期)2019-08-28 01:34:34
    潛水器水下拖帶航行運動響應數(shù)值計算與性能分析
    船海工程(2018年5期)2018-11-01 09:15:16
    分簇結(jié)構(gòu)向量寄存器分配策略研究*
    海洋平臺工作船深水大型拖纜機選型分析
    船海工程(2014年4期)2014-06-27 01:02:50
    高速數(shù)模轉(zhuǎn)換器AD9779/AD9788的應用
    一種可重構(gòu)線性反饋移位寄存器設(shè)計
    驅(qū)動程序更新與推薦
    驅(qū)動程序更新與推薦
    国产麻豆69| 久久久国产成人精品二区 | 每晚都被弄得嗷嗷叫到高潮| 免费在线观看亚洲国产| avwww免费| 国产精品一区二区免费欧美| av福利片在线| 又大又爽又粗| 亚洲aⅴ乱码一区二区在线播放 | 热99国产精品久久久久久7| 色播在线永久视频| 国产精品电影一区二区三区 | av中文乱码字幕在线| 18禁观看日本| 人人澡人人妻人| 精品久久久久久电影网| 成年人黄色毛片网站| 亚洲一码二码三码区别大吗| 一二三四社区在线视频社区8| 18禁国产床啪视频网站| 国产野战对白在线观看| 在线观看一区二区三区激情| 国产男靠女视频免费网站| 国产xxxxx性猛交| 天天躁夜夜躁狠狠躁躁| 亚洲av成人一区二区三| 欧美久久黑人一区二区| 国产亚洲精品久久久久5区| 午夜福利欧美成人| 在线观看免费视频日本深夜| 午夜成年电影在线免费观看| 午夜精品在线福利| 啦啦啦 在线观看视频| 精品电影一区二区在线| 18禁裸乳无遮挡动漫免费视频| 一级片免费观看大全| 99re6热这里在线精品视频| 日本五十路高清| 人妻一区二区av| 精品福利永久在线观看| 亚洲午夜理论影院| 国产精品久久久久久人妻精品电影| 多毛熟女@视频| 久久久国产精品麻豆| 精品人妻1区二区| 国产精品免费视频内射| 看免费av毛片| www.精华液| 9191精品国产免费久久| 丝瓜视频免费看黄片| 99re6热这里在线精品视频| 男人的好看免费观看在线视频 | 777米奇影视久久| 9191精品国产免费久久| 亚洲国产精品sss在线观看 | 黄片大片在线免费观看| 成人18禁高潮啪啪吃奶动态图| 欧美性长视频在线观看| 国产精品久久久av美女十八| 久久99一区二区三区| 免费不卡黄色视频| 国产亚洲精品一区二区www | 91老司机精品| 亚洲精品中文字幕在线视频| 啦啦啦 在线观看视频| 国产精品成人在线| 看免费av毛片| 欧美 日韩 精品 国产| 色在线成人网| 欧美日韩av久久| 天天添夜夜摸| 日韩免费av在线播放| 亚洲中文日韩欧美视频| 男男h啪啪无遮挡| 国产激情久久老熟女| 亚洲熟妇熟女久久| 一区福利在线观看| 久久婷婷成人综合色麻豆| 99国产精品99久久久久| 久久久久国产精品人妻aⅴ院 | 国产成人一区二区三区免费视频网站| 99久久99久久久精品蜜桃| 悠悠久久av| 一本一本久久a久久精品综合妖精| 欧美亚洲 丝袜 人妻 在线| 黑人猛操日本美女一级片| 国产精品久久久久成人av| 国产男靠女视频免费网站| 91成年电影在线观看| 日本一区二区免费在线视频| 女人爽到高潮嗷嗷叫在线视频| av线在线观看网站| 免费观看人在逋| 国产精品亚洲av一区麻豆| 91在线观看av| 精品国产一区二区三区四区第35| 日韩人妻精品一区2区三区| 亚洲精品国产一区二区精华液| 亚洲一区二区三区不卡视频| 99re在线观看精品视频| 最近最新免费中文字幕在线| 人妻丰满熟妇av一区二区三区 | 日韩人妻精品一区2区三区| 国产成人啪精品午夜网站| 激情在线观看视频在线高清 | 亚洲在线自拍视频| 大型黄色视频在线免费观看| 99精国产麻豆久久婷婷| 一级片'在线观看视频| 欧美 亚洲 国产 日韩一| 天天躁狠狠躁夜夜躁狠狠躁| 免费人成视频x8x8入口观看| 中文字幕最新亚洲高清| av电影中文网址| 日韩欧美国产一区二区入口| 久久99一区二区三区| 亚洲精品国产一区二区精华液| a级毛片黄视频| 国产淫语在线视频| 超色免费av| 国产成人av激情在线播放| 久久久久久免费高清国产稀缺| 久久中文看片网| 欧美乱妇无乱码| 久久人人爽av亚洲精品天堂| 日韩免费av在线播放| 国产成人精品在线电影| 老司机福利观看| 国产精品国产高清国产av | 看免费av毛片| 午夜影院日韩av| 91成年电影在线观看| 女人精品久久久久毛片| 欧美精品亚洲一区二区| 日韩三级视频一区二区三区| aaaaa片日本免费| 久久精品国产综合久久久| 极品少妇高潮喷水抽搐| 欧美精品人与动牲交sv欧美| 欧美久久黑人一区二区| 日本五十路高清| 精品国产一区二区三区久久久樱花| 首页视频小说图片口味搜索| 亚洲精品一卡2卡三卡4卡5卡| 精品人妻在线不人妻| 久久精品成人免费网站| 亚洲 欧美一区二区三区| www.自偷自拍.com| cao死你这个sao货| 亚洲精品av麻豆狂野| 91成人精品电影| 免费人成视频x8x8入口观看| 国产激情欧美一区二区| 亚洲少妇的诱惑av| 国产成人精品无人区| 亚洲精品国产色婷婷电影| 亚洲精品中文字幕在线视频| av有码第一页| 精品熟女少妇八av免费久了| 免费在线观看亚洲国产| 成年动漫av网址| 十八禁网站免费在线| 成人亚洲精品一区在线观看| 久久久国产精品麻豆| 日韩高清综合在线| 日本黄色片子视频| 国产色爽女视频免费观看| 中文资源天堂在线| 老熟妇仑乱视频hdxx| 欧美在线黄色| 老司机深夜福利视频在线观看| 日本五十路高清| 国产欧美日韩一区二区三| 精品国产美女av久久久久小说| 91麻豆精品激情在线观看国产| 天天躁日日操中文字幕| 女人被狂操c到高潮| 1024手机看黄色片| 国产69精品久久久久777片| 午夜精品一区二区三区免费看| 国产精品98久久久久久宅男小说| 久久精品国产自在天天线| 麻豆国产97在线/欧美| 久久久色成人| 成人亚洲精品av一区二区| 黄色日韩在线| 午夜a级毛片| 一个人观看的视频www高清免费观看| 一级作爱视频免费观看| 狂野欧美激情性xxxx| 蜜桃久久精品国产亚洲av| h日本视频在线播放| 午夜福利高清视频| 母亲3免费完整高清在线观看| 国产精品一区二区免费欧美| 亚洲国产精品999在线| 欧美xxxx黑人xx丫x性爽| 怎么达到女性高潮| avwww免费| 欧美日韩一级在线毛片| 黄色成人免费大全| 成人特级av手机在线观看| 亚洲第一欧美日韩一区二区三区| 老熟妇仑乱视频hdxx| 女人十人毛片免费观看3o分钟| 日韩大尺度精品在线看网址| 一区福利在线观看| 国产97色在线日韩免费| 全区人妻精品视频| 亚洲av第一区精品v没综合| 99热这里只有是精品50| 五月伊人婷婷丁香| 黄色片一级片一级黄色片| 99久久九九国产精品国产免费| 床上黄色一级片| 嫩草影视91久久| 国产一区在线观看成人免费| 观看免费一级毛片| 99精品在免费线老司机午夜| 成年女人看的毛片在线观看| 日韩欧美三级三区| 亚洲精品影视一区二区三区av| 国产亚洲欧美98| 亚洲狠狠婷婷综合久久图片| a级毛片a级免费在线| 少妇人妻精品综合一区二区 | 日本黄色视频三级网站网址| 国产主播在线观看一区二区| 免费高清视频大片| 午夜福利在线观看吧| 亚洲人成网站在线播| 手机成人av网站| 免费观看精品视频网站| 免费人成在线观看视频色| 757午夜福利合集在线观看| 99热只有精品国产| 国内揄拍国产精品人妻在线| 亚洲av电影在线进入| 十八禁人妻一区二区| 成年女人毛片免费观看观看9| 亚洲av不卡在线观看| 在线观看舔阴道视频| ponron亚洲| 深夜精品福利| 一个人免费在线观看电影| 又爽又黄无遮挡网站| 欧美绝顶高潮抽搐喷水| 午夜免费成人在线视频| 欧美乱妇无乱码| 亚洲va日本ⅴa欧美va伊人久久| 亚洲av美国av| 91麻豆av在线| 此物有八面人人有两片| 男人和女人高潮做爰伦理| 成人永久免费在线观看视频| 99在线人妻在线中文字幕| 亚洲欧美精品综合久久99| 日本黄大片高清| 日本免费a在线| 成人一区二区视频在线观看| 久久中文看片网| 国产97色在线日韩免费| 成人国产一区最新在线观看| 国产真实乱freesex| 亚洲色图av天堂| 亚洲av日韩精品久久久久久密| 一本精品99久久精品77| 一a级毛片在线观看| 可以在线观看的亚洲视频| 一级黄色大片毛片| 老鸭窝网址在线观看| 丁香六月欧美| 高清日韩中文字幕在线| 亚洲第一电影网av| 亚洲精品成人久久久久久| 亚洲人成电影免费在线| 身体一侧抽搐| a在线观看视频网站| 国产精品99久久久久久久久| 国产一区二区在线av高清观看| 日韩欧美在线二视频| 免费看a级黄色片| 午夜精品久久久久久毛片777| 老司机在亚洲福利影院| 欧美成人性av电影在线观看| 两个人看的免费小视频| 亚洲成人免费电影在线观看| 99久久精品国产亚洲精品| 中文在线观看免费www的网站| 亚洲 欧美 日韩 在线 免费| av欧美777| 色播亚洲综合网| 午夜福利成人在线免费观看| 国产黄片美女视频| 国产免费av片在线观看野外av| 精品久久久久久久末码| av黄色大香蕉| 精华霜和精华液先用哪个| 熟女人妻精品中文字幕| 人妻夜夜爽99麻豆av| 成人午夜高清在线视频| 最新美女视频免费是黄的| 老鸭窝网址在线观看| 免费看日本二区| 国语自产精品视频在线第100页| av天堂在线播放| 97超视频在线观看视频| 日韩亚洲欧美综合| 欧美最黄视频在线播放免费| 午夜免费成人在线视频| 免费高清视频大片| 欧美乱妇无乱码| 亚洲人成网站高清观看| 亚洲色图av天堂| 久久精品国产亚洲av香蕉五月| 亚洲欧美日韩卡通动漫| 性欧美人与动物交配| 婷婷亚洲欧美| 99精品欧美一区二区三区四区| 少妇的丰满在线观看| 又粗又爽又猛毛片免费看| 国产亚洲精品久久久com| 国产伦在线观看视频一区| a级毛片a级免费在线| 国内精品久久久久精免费| 国产精品免费一区二区三区在线| 欧美成人免费av一区二区三区| 国产三级中文精品| 狂野欧美白嫩少妇大欣赏| 国产极品精品免费视频能看的| 99久久无色码亚洲精品果冻| 韩国av一区二区三区四区| 长腿黑丝高跟| 久久久精品大字幕| 免费高清视频大片| 啦啦啦观看免费观看视频高清| 美女黄网站色视频| 99热这里只有是精品50| 88av欧美| 老师上课跳d突然被开到最大视频 久久午夜综合久久蜜桃 | 男人舔奶头视频| 久久午夜亚洲精品久久| 欧美区成人在线视频| 18禁在线播放成人免费| 亚洲成av人片在线播放无| 久久久久久久午夜电影| 国产伦精品一区二区三区四那| 国产高清视频在线观看网站| 中文字幕久久专区| 99在线人妻在线中文字幕| 国产在线精品亚洲第一网站| 十八禁网站免费在线| 观看免费一级毛片| 精品乱码久久久久久99久播| 高潮久久久久久久久久久不卡| 国产精品,欧美在线| 久久伊人香网站| 亚洲美女视频黄频| 亚洲不卡免费看| 亚洲自拍偷在线| 国产视频内射| 女人高潮潮喷娇喘18禁视频| 夜夜夜夜夜久久久久| 国产三级在线视频| 免费在线观看成人毛片| ponron亚洲| 在线观看免费午夜福利视频| 三级国产精品欧美在线观看| 男人和女人高潮做爰伦理| 国产一级毛片七仙女欲春2| 高清毛片免费观看视频网站| 色哟哟哟哟哟哟| 午夜福利视频1000在线观看| 国产99白浆流出| 亚洲av免费高清在线观看| 久久香蕉精品热| 亚洲精华国产精华精| 白带黄色成豆腐渣| 99久久无色码亚洲精品果冻| 国产精品99久久99久久久不卡| 男女视频在线观看网站免费| 波野结衣二区三区在线 | 国产亚洲精品av在线| 欧美性猛交黑人性爽| 国产伦精品一区二区三区四那| 变态另类丝袜制服| 一区二区三区国产精品乱码| 久久精品综合一区二区三区| 在线国产一区二区在线| 偷拍熟女少妇极品色| 一区二区三区国产精品乱码| 亚洲性夜色夜夜综合| 欧美日本视频| 噜噜噜噜噜久久久久久91| 脱女人内裤的视频| 有码 亚洲区| 两个人看的免费小视频| 国产精品久久久人人做人人爽| 亚洲熟妇中文字幕五十中出| 国产aⅴ精品一区二区三区波| 午夜福利欧美成人| 99久国产av精品| 人人妻,人人澡人人爽秒播| 国产麻豆成人av免费视频| 国产亚洲精品久久久久久毛片| 久久精品国产清高在天天线| 在线观看免费午夜福利视频| 国产精品一区二区免费欧美| 日本五十路高清| 久久天躁狠狠躁夜夜2o2o| 国产精品亚洲美女久久久| 成年女人永久免费观看视频| 国产伦精品一区二区三区四那| 亚洲国产欧美人成| 成人永久免费在线观看视频| 69人妻影院| 日韩精品中文字幕看吧| 久久久久国内视频| 色哟哟哟哟哟哟| 99精品久久久久人妻精品| 伊人久久大香线蕉亚洲五| 麻豆国产av国片精品| 国产爱豆传媒在线观看| 两人在一起打扑克的视频| 日本与韩国留学比较| 国产成人欧美在线观看| 99久久精品热视频| av黄色大香蕉| 亚洲av成人av| 日韩欧美在线乱码| 亚洲av第一区精品v没综合| 国产精品国产高清国产av| 国产精品久久视频播放| 亚洲中文字幕一区二区三区有码在线看| 一级作爱视频免费观看| 女人高潮潮喷娇喘18禁视频| 人妻久久中文字幕网| 草草在线视频免费看| 丰满人妻熟妇乱又伦精品不卡| 久久久成人免费电影| 国产 一区 欧美 日韩| 少妇的逼好多水| 亚洲av中文字字幕乱码综合| 国产精品女同一区二区软件 | 国产精品野战在线观看| 天天添夜夜摸| 国产精品乱码一区二三区的特点| 高清毛片免费观看视频网站| h日本视频在线播放| 99热只有精品国产| 成人亚洲精品av一区二区| 国内精品美女久久久久久| 丝袜美腿在线中文| 亚洲成av人片在线播放无| 午夜免费观看网址| 一卡2卡三卡四卡精品乱码亚洲| 久久欧美精品欧美久久欧美| 美女cb高潮喷水在线观看| 一个人看视频在线观看www免费 | 亚洲成a人片在线一区二区| 亚洲第一电影网av| 午夜福利在线观看免费完整高清在 | 亚洲狠狠婷婷综合久久图片| 夜夜躁狠狠躁天天躁| avwww免费| 美女高潮的动态| 日韩人妻高清精品专区| 成人性生交大片免费视频hd| 国产99白浆流出| 欧美xxxx黑人xx丫x性爽| 成人高潮视频无遮挡免费网站| 午夜福利免费观看在线| 男女那种视频在线观看| 一区福利在线观看| 三级毛片av免费| 动漫黄色视频在线观看| 亚洲黑人精品在线| 亚洲成av人片在线播放无| 哪里可以看免费的av片| 国产精品一区二区免费欧美| 老汉色av国产亚洲站长工具| 波多野结衣巨乳人妻| 搡老妇女老女人老熟妇| 国产视频一区二区在线看| 性色avwww在线观看| 成人av一区二区三区在线看| 狂野欧美激情性xxxx| 国产免费av片在线观看野外av| 国产色婷婷99| 偷拍熟女少妇极品色| 国语自产精品视频在线第100页| 国产亚洲精品久久久com| 97碰自拍视频| svipshipincom国产片| 国产欧美日韩精品亚洲av| 91在线观看av| 日韩欧美精品免费久久 | 国产国拍精品亚洲av在线观看 | 哪里可以看免费的av片| 成人永久免费在线观看视频| 一边摸一边抽搐一进一小说| 久久久久久人人人人人| 成人亚洲精品av一区二区| 97超视频在线观看视频| 国产色爽女视频免费观看| 国产精品,欧美在线| 国产精品嫩草影院av在线观看 | 免费看光身美女| 99国产综合亚洲精品| 啦啦啦观看免费观看视频高清| 丰满人妻一区二区三区视频av | 白带黄色成豆腐渣| 国产黄色小视频在线观看| 色综合婷婷激情| 综合色av麻豆| 日日摸夜夜添夜夜添小说| 天堂√8在线中文| 亚洲人成网站高清观看| 高清日韩中文字幕在线| 久久伊人香网站| 国产伦精品一区二区三区视频9 | 色综合亚洲欧美另类图片| 可以在线观看毛片的网站| 亚洲狠狠婷婷综合久久图片| 国产精品1区2区在线观看.| 国产美女午夜福利| 2021天堂中文幕一二区在线观| 欧美国产日韩亚洲一区| a级毛片a级免费在线| 白带黄色成豆腐渣| 麻豆成人午夜福利视频| 在线观看一区二区三区| 99热精品在线国产| 性色av乱码一区二区三区2| 午夜福利在线观看免费完整高清在 | 精品无人区乱码1区二区| 一区福利在线观看| 可以在线观看毛片的网站| 丝袜美腿在线中文| 久久久久久人人人人人| 一卡2卡三卡四卡精品乱码亚洲| 国产成人福利小说| 亚洲最大成人中文| 免费看日本二区| 国产精品免费一区二区三区在线| 在线播放无遮挡| 国产成人影院久久av| 人人妻,人人澡人人爽秒播| 国产精品永久免费网站| 淫秽高清视频在线观看| 三级男女做爰猛烈吃奶摸视频| 操出白浆在线播放| 99久久精品热视频| 看黄色毛片网站| 国产黄色小视频在线观看| 久久精品91蜜桃| 又爽又黄无遮挡网站| 欧美黄色片欧美黄色片| 国产精品乱码一区二三区的特点| 日韩亚洲欧美综合| 欧美在线黄色| 午夜视频国产福利| 色播亚洲综合网| 亚洲专区中文字幕在线| 亚洲国产精品久久男人天堂| 久久久国产精品麻豆| 国产精品亚洲一级av第二区| 欧美色欧美亚洲另类二区| www.色视频.com| 国产亚洲精品av在线| 99久久久亚洲精品蜜臀av| 又爽又黄无遮挡网站| 欧美黑人欧美精品刺激| 欧美日韩瑟瑟在线播放| 亚洲人成电影免费在线| 一区福利在线观看| 免费av观看视频| 久久久久国内视频| 国产成人系列免费观看| 国产成人av激情在线播放| 日本a在线网址| 在线观看av片永久免费下载| 国产精品永久免费网站| 乱人视频在线观看| 久久精品91蜜桃| 又爽又黄无遮挡网站| 国产成人福利小说| h日本视频在线播放| 国产中年淑女户外野战色| 日韩欧美三级三区| 国产探花极品一区二区| 别揉我奶头~嗯~啊~动态视频| 男人舔女人下体高潮全视频| 波多野结衣巨乳人妻| 桃红色精品国产亚洲av| 亚洲自拍偷在线| 精品久久久久久久久久免费视频| 两个人视频免费观看高清| 午夜福利高清视频| svipshipincom国产片| 香蕉丝袜av| 每晚都被弄得嗷嗷叫到高潮| 久久伊人香网站| 一二三四社区在线视频社区8| 激情在线观看视频在线高清| 欧美色欧美亚洲另类二区| 美女高潮喷水抽搐中文字幕| 亚洲欧美日韩东京热| 亚洲人成电影免费在线| 国产私拍福利视频在线观看| 内射极品少妇av片p| 亚洲国产色片| 一进一出好大好爽视频| 熟妇人妻久久中文字幕3abv| 别揉我奶头~嗯~啊~动态视频|