在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,91精品国产91免费

<abbr id="27omo"></abbr>

<menu id="27omo"><dl id="27omo"></dl></menu>
    • <label id="27omo"><tt id="27omo"></tt></label>

      新聞中心

      EEPW首頁(yè) > EDA/PCB > 設(shè)計(jì)應(yīng)用 > 基于Virtex 6的PCI Express高速采集卡設(shè)計(jì)

      基于Virtex 6的PCI Express高速采集卡設(shè)計(jì)

      作者: 時(shí)間:2013-02-22 來(lái)源:網(wǎng)絡(luò) 收藏

      在初始化階段,在無(wú)需固件或操作系統(tǒng)軟件的介入下,物理層建立狀況狀態(tài)機(jī)通過(guò)檢測(cè)、配置和輪詢(xún)來(lái)協(xié)商可用的通道數(shù)目和雙方的工作頻率。

      圖2集成硬核頂層模塊接口組成框圖

      圖2集成硬核頂層模塊接口組成框圖

      圖3PCIExpress分層傳輸過(guò)程

      圖3分層傳輸過(guò)程

      2.2高速傳輸實(shí)現(xiàn)

      作為采集卡數(shù)據(jù)傳輸主控,F(xiàn)PGA內(nèi)部實(shí)現(xiàn)了高速數(shù)據(jù)傳輸DMA控制操作。為了接收上位機(jī)發(fā)出的DMA控制命令,系統(tǒng)首先必須分配一定大小的FPGA內(nèi)部BlockRAM用作DMA控制寄存器,在驅(qū)動(dòng)程序的映射下,該BlockRAM在采集卡插入系統(tǒng)是會(huì)被映射到主機(jī)內(nèi)存空間,于是主機(jī)只需訪問(wèn)映射好的內(nèi)存空間即可實(shí)現(xiàn)對(duì)FPGA內(nèi)部控制寄存器的訪問(wèn)。

      當(dāng)系統(tǒng)啟動(dòng)傳輸時(shí),上位機(jī)首先將DMA傳輸?shù)哪康牡刂穼?xiě)入相應(yīng)的DMA控制寄存器。在接收到采集命令后,采集卡開(kāi)始接收外部數(shù)據(jù),并對(duì)數(shù)據(jù)進(jìn)行解碼、整形,按順序?qū)?shù)據(jù)依次通過(guò)高速FIFO送入外部SDRAM進(jìn)行緩存。當(dāng)SDRAM數(shù)據(jù)有效后,通過(guò)觸發(fā)信號(hào)啟動(dòng)DMA傳輸,DMA控制器將申請(qǐng)從SDRAM中將數(shù)據(jù)寫(xiě)入到數(shù)據(jù)發(fā)送FIFO,由發(fā)送模塊將發(fā)送數(shù)據(jù)FIFO中的數(shù)據(jù)按照EndpointBlockPlus核的事務(wù)(TRN)接口的格式提交給IP核,由IP核按照總線規(guī)范將數(shù)據(jù)傳至FPGA的GTP收發(fā)器,GTP收發(fā)器直接連接了-E的差分?jǐn)?shù)據(jù)傳輸對(duì),于是通過(guò)PCI-Ex8通道將數(shù)據(jù)以DMA方式直接存入主機(jī)物理內(nèi)存中[5,7-8]。當(dāng)存完一個(gè)數(shù)據(jù)包后發(fā)出中斷消息通知主機(jī)上層應(yīng)用程序處理數(shù)據(jù)以及將物理內(nèi)存中的數(shù)據(jù)轉(zhuǎn)存至硬盤(pán),之后即進(jìn)入下一個(gè)數(shù)據(jù)包的傳輸,如此反復(fù),直到收到主機(jī)的停止DMA傳輸命令,即完成當(dāng)前幀的采集和傳輸并停止下一幀的采集和傳輸。

      3PCI采集卡驅(qū)動(dòng)設(shè)計(jì)

      本系統(tǒng)驅(qū)動(dòng)程序在WindowsXP操作系統(tǒng)下,應(yīng)用微軟公司的DriverStudio平臺(tái)進(jìn)行開(kāi)發(fā)。DriverStudio平臺(tái)提供了驅(qū)動(dòng)程序開(kāi)發(fā)所需的WDM(Windows DriverMode,Windows驅(qū)動(dòng)程序模型),包括VtoolsD、DriverWorks、DriverNetWorks和SoftICE等開(kāi)發(fā)工具,應(yīng)用該平臺(tái)開(kāi)發(fā)降低了驅(qū)動(dòng)程序開(kāi)發(fā)的難度,同時(shí)了提高了代碼的可靠性[9]。

      3.1硬件驅(qū)動(dòng)驅(qū)動(dòng)程序

      對(duì)外部硬件的訪問(wèn)是通過(guò)DriverWorks提供的2個(gè)類(lèi)來(lái)實(shí)現(xiàn)的,其中,KioRang類(lèi)實(shí)現(xiàn)對(duì)I/O映射芯片的訪問(wèn),KMemoryRang類(lèi)實(shí)現(xiàn)對(duì)內(nèi)存映射芯片的訪問(wèn)。本系統(tǒng)選擇了KMemoryRang完成PCI Express硬件的訪問(wèn),主要調(diào)用函數(shù)如表1所示。

      表1

      KMemoryRang類(lèi)主要函數(shù)初始化KMemoryRang類(lèi)的操作是在驅(qū)動(dòng)程序啟動(dòng)例程中執(zhí)行的,主要執(zhí)行程序如下:NTSTATUSPCIeDevice(KIrpI)

      {…

      PCM_RESOURCE_LIST pResListRaw=I.AllocatedResources();PCM_RESOURCE_LIST pResListTranslated=I.TranslatedResources();m_MemoryRange.Initialize(pResListTranslated,pResListRaw,0);…

      }當(dāng)驅(qū)動(dòng)程序完成初始化時(shí),應(yīng)用端軟件將通過(guò)inb()和outb()等函數(shù)對(duì)外部硬件電路進(jìn)行訪問(wèn),讀寫(xiě)數(shù)據(jù)。



      關(guān)鍵詞: Express Virtex PCI 高速采集

      評(píng)論


      相關(guān)推薦

      技術(shù)專(zhuān)區(qū)

      關(guān)閉