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

        ?

        高速大容量數(shù)據(jù)采集卡的研制

        2008-04-12 00:00:00李漢釗
        現(xiàn)代電子技術(shù) 2008年24期

        摘 要:提出一種高速大容量數(shù)據(jù)采集卡的硬件方案,并對系統(tǒng)的結(jié)構(gòu)及工作原理進行說明。方案選取高性能ADC AT84AS001 實現(xiàn)數(shù)/模轉(zhuǎn)換,使用DDR 內(nèi)存條進行數(shù)據(jù)存儲,并通過PCI接口與計算機互連,可通過軟件界面對采集卡的工作狀態(tài)進行控制。經(jīng)過調(diào)試,系統(tǒng)可穩(wěn)定運行,最高采樣速率達500 MHz,存儲容量為256 MB,對于雷達對抗及測量領(lǐng)域具有一定的工程應(yīng)用價值。

        關(guān)鍵詞:數(shù)據(jù)采集;DDR;PCI接口;WDM驅(qū)動

        中圖分類號:TP274文獻標(biāo)識碼:B

        文章編號:1004-373X(2008)24-014-03

        Research of High Speed and Mass Storage Data Acquisition Card

        LI Hanzhao,LI Qian

        (Naval University of Engineering,Wuhan,440033,China)

        Abstract:This paper proposes a hardware design plan of high speed and mass storage data acquisition card.The structure and work principle of the system are illustrated.high performance ADC AT84AS001 to realize digital-to-analog conversion and DDR memory-chip to complete data storage is chosen.Then PCI is usedto connect the card with the computer.In this way,the operation mode of the card is controlled by software graphical user interface.The system runs stable after debug,it can provide 500 MHz sampling rate and the storage capacities is 256 MB.In a word,this system can be applied in the field of radar and surver.

        Keywords:data acquisition;DDR;PCI interface;WDM driver

        1 引 言

        數(shù)據(jù)采集與存儲系統(tǒng)是信號與信息處理系統(tǒng)的重要組成部分。隨著雷達對抗技術(shù)和軟件無線電技術(shù)的發(fā)展,在一些應(yīng)用中需要對數(shù)據(jù)進行高速采集和大容量實時存儲,目前市場上同時具備上述兩種功能的采集系統(tǒng)還不多見,為此提出一種具備可擴展大容量存儲設(shè)備接口的基于PCI總線的數(shù)據(jù)采集系統(tǒng)。該系統(tǒng)的最高采樣速率可達500 MHz,使用256 MB的DDR內(nèi)存條實現(xiàn)數(shù)據(jù)存儲,計算機通過PCI總線和采集卡相連,可通過軟件界面實現(xiàn)對硬件設(shè)

        備的控制。

        2 系統(tǒng)結(jié)構(gòu)

        圖1是采集卡的硬件功能框圖,其中虛線框中的模塊都是在FPGA芯片內(nèi)部實現(xiàn)的,選用的是Altera公司Stratix2系列的EP2S60F1020芯片。該芯片具有24 176個ALM單元(等效6萬個LE單元),嵌入式RAM達到2.5 Mb,具有嵌入 DPA 電路,消除了信號偏移引發(fā)的相位對齊問題[1]。圖1中的主控模塊負(fù)責(zé)接收來自PCI接口的計算機信息,并向系統(tǒng)的其他部分發(fā)送相關(guān)的控制命令。在進行數(shù)據(jù)采集時,A/D轉(zhuǎn)換芯片的輸出在經(jīng)過信號處理后,在數(shù)據(jù)存儲模塊的控制下被存入DDR內(nèi)存條;在將數(shù)據(jù)讀出時,每次讀出的數(shù)據(jù)都先暫存在FPGA的RAM中,再通過PCI總線存入計算機的硬盤。

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

        3.1 A/D轉(zhuǎn)換部分的實現(xiàn)

        設(shè)計中選用AT84AS001作為A/D轉(zhuǎn)換芯片,它是Atmel公司的高性能12位、500 MSPS ADC,對于IF采樣應(yīng)用具有低功耗和真12位的特點。通過使用它的板載S/H電路和先進的高速處理技術(shù),它可在150 MHz 的中心頻率和±100 MHz 的IF帶寬時實現(xiàn)高達500 MSPS的采樣率[2]。

        AT84AS001為雙倍數(shù)據(jù)率時鐘輸出,即在它的輸出時鐘的上下邊緣都有數(shù)據(jù)輸出,其輸入/輸出時序如圖2所示。圖2中的VIN為模擬輸入;CLKI為外部時鐘輸入;CLKO為芯片的輸出時鐘,其速率是輸入時鐘的一半;D[0∶11]和DN[0∶11]為差分輸出對。方案中選用EP2S60F1020的LVDS專用接口來實現(xiàn)數(shù)據(jù)的接收。它是Stratix2系列FPGA高速差分I/O口,具有動態(tài)相位自動校準(zhǔn)功能以及數(shù)據(jù)重排電路,其參數(shù)可通過Quartus 2軟件進行設(shè)置。

        3.2 數(shù)據(jù)存儲部分的實現(xiàn)

        DDR內(nèi)存條在設(shè)計中選用三星公司的M470L3224FTO-CBC內(nèi)存條,內(nèi)嵌4片DDR存儲芯片,數(shù)據(jù)總線寬度64 b,存儲容量256 MB,采用200引腳的SO-DIMMM200的連接器,符合JEDEC標(biāo)準(zhǔn)。DDR SDRAM具有一個獨特的數(shù)據(jù)脈沖信號(DQS),內(nèi)存條就是根據(jù)DQS來分割1個時鐘周期內(nèi)的2次數(shù)據(jù),從而實現(xiàn)雙數(shù)據(jù)率的。EP2S60 FPGA 芯片支持和DDR存儲器的互連,在器件頂部和底部的I/O Bank中含有專用的DQS移相電路,可將輸入的DQS信號移相進行時延補償,用來驅(qū)動輸入寄存器,使輸入的DQ信號有最大的采樣窗口。片內(nèi)集成的PLL可對時鐘信號進行90°移相,用來驅(qū)動輸出寄存器,并產(chǎn)生DQS輸出信號[3]。

        圖3為數(shù)據(jù)存儲部分的接口圖, DDR控制模塊由命令控制部分和接口部分組成,它的接口部分直接與DDR內(nèi)存條的數(shù)據(jù)線相連,用于發(fā)送和接收雙數(shù)據(jù)率數(shù)據(jù),而命令控制部分則負(fù)責(zé)接收采集卡主控模塊的控制信號、協(xié)調(diào)整個數(shù)據(jù)傳輸過程以及產(chǎn)生內(nèi)存條的控制信號。控制模塊的主要信號說明如下:Order[1∶0]信號用于通知DDR控制模塊發(fā)起讀/寫操作;r_address用于給出每次讀操作的起始地址;Write_done,Read_done為讀/寫操作完成的指示信號;DQ_en和DQS_en為DDR接口的DQ,DQS使能信號[4]。

        數(shù)據(jù)處理模塊輸出的信號數(shù)據(jù)位寬32 b,由于內(nèi)存條的數(shù)據(jù)總線寬度為64 b且為雙時鐘沿輸出,每個時鐘周期需向DDR接口部分提供128 b的數(shù)據(jù),故要先對數(shù)據(jù)進行串并轉(zhuǎn)換,將其轉(zhuǎn)化為128 b的數(shù)據(jù)REG_128。在內(nèi)存條的工作過程中,要進行定時刷新、預(yù)充、激活等操作,所以使用1個雙時鐘FIFO作為數(shù)據(jù)緩沖,WEN為FIFO的寫使能信號,rdusedw指示FIFO中當(dāng)前剩余的數(shù)據(jù)個數(shù),在FIFO將被讀空時,DDR控制模塊會插入等待周期,等新數(shù)據(jù)存入其中后再繼續(xù)讀操作。

        在數(shù)據(jù)讀取過程中,每次讀操作先將DDR內(nèi)存中的數(shù)據(jù)讀入RAM,在RAM被存滿后READ_DONE信號有效,測試卡向計算機發(fā)出中斷,在計算機接收中斷后通過PCI接口將RAM中的數(shù)據(jù)讀走,然后再啟動下一次讀操作,如此循環(huán)直到數(shù)據(jù)全部讀完。圖3中的雙口RAM容量為128 b×4 096,其輸入信號W_AD數(shù)據(jù)寬度為128 b;輸出信號LOCAL_DATA數(shù)據(jù)寬度為32 b;W_EN為寫使能信號;W_DA為RAM的寫地址; Ram_data為讀地址,由PCI接口模塊提供。

        3.3 PCI接口部分的實現(xiàn)

        PCI總線是當(dāng)前計算機的一種主流標(biāo)準(zhǔn)總線[5],由于其協(xié)議十分復(fù)雜,在設(shè)計中使用PCI9054芯片作為總線的I/O加速器,PCI9054數(shù)據(jù)線為32 b,突發(fā)傳輸速率達到132 MB/s,具有可選的串行E2PROM接口,本地總線時鐘可和PCI時鐘異步。設(shè)計中選用它的C工作模式,從模式傳輸。

        PCI9054在本質(zhì)上是一個橋設(shè)備,它把PCI總線對某一段PCI總線地址空間的各種操作包括讀、寫等轉(zhuǎn)換為相應(yīng)的地址總線上的操作。因此要把某一段本地地址映射為PCI地址,即當(dāng)主機CPU要訪問本地地址空間時,要知道其對應(yīng)的PCI總線地址[6]。在本設(shè)計中,通過地址空間0將本地地址總線映射到PCI總線。首先要設(shè)置本地地址空間0的地址范圍寄存器,該寄存器的值反映了要把該地址空間映射到PCI的內(nèi)存地址空間還是I/O地址空間,以及該地址空間的大小。

        PCI9054的內(nèi)部寄存器要根據(jù)具體的硬件設(shè)備進行配置,設(shè)計中采用串行E2PROM來對 PCI9054 進行上電配置,選用的是Micorchip Technology公司的4 kB串行E2PROM 93LC66B。計算機啟動或復(fù)位時,PCI9054首先讀取E2PROM的值,寫入對應(yīng)的寄存器,然后BIOS枚舉出每類總線(當(dāng)然包括PCI)上的每一個設(shè)備 ,建立管理設(shè)備的數(shù)據(jù)結(jié)構(gòu),當(dāng)加載操作系統(tǒng)的時候 ,要把這個數(shù)據(jù)結(jié)構(gòu)的指針傳遞給操作系統(tǒng),當(dāng)操作系統(tǒng)啟動后將再次為包括PCI9054在內(nèi)的硬件設(shè)備分配資源,包括內(nèi)存空間、中斷請求、I/O空間等。

        3.4 PCI驅(qū)動程序的開發(fā)

        驅(qū)動程序是上層應(yīng)用程序和底層硬件之間進行數(shù)據(jù)交換的媒介。方案選用WDM驅(qū)動程序模式,開發(fā)工具是 DriverStudio工具包中的DriverWorks,它是以VC++為平臺,將編寫WDM驅(qū)動程序所需的對內(nèi)核及硬件的訪問封裝成類,使用其向?qū)Чδ芸梢宰詣由沈?qū)動程序框架,只需添加相應(yīng)代碼就可完成驅(qū)動的編寫[7]。

        驅(qū)動程序與硬件的通信為:

        (1) 對PCI本地空間的訪問。在系統(tǒng)中,計算機需要訪問FPGA的內(nèi)部寄存器。在驅(qū)動程序中使用KMemoryRange在OnStartDevice例程中實現(xiàn)PCI局部存儲空間到計算機內(nèi)存的映射;一旦映射成功,驅(qū)動程序就可以使用KMemoryRange成員函數(shù)對本地空間進行訪問;

        (2) 中斷響應(yīng)。在數(shù)據(jù)讀出的過程中,每次RAM讀滿時采集卡要通知計算機接收數(shù)據(jù);因此采用硬件中斷響應(yīng)的辦法,內(nèi)核會傳遞這個中斷給測試卡驅(qū)動程序的中斷服務(wù)例程,控制計算機發(fā)起下一次讀操作。硬件中斷的處理由類KInterrupt實現(xiàn)。

        3.5 應(yīng)用程序的實現(xiàn)

        應(yīng)用程序與WDM的通信過程是:

        (1) 首先用CreateFile打開設(shè)備;

        (2) 用DeviceIoControl和WDM驅(qū)動進行通信,包括對采集卡控制寄存器的訪問和對存儲空間的訪問;

        (3) 應(yīng)用程序退出時要用CloseHand關(guān)閉設(shè)備,釋放相關(guān)的系統(tǒng)資源。

        應(yīng)用程序?qū)χ袛嗟捻憫?yīng)是通過WIN32事件通知的方法實現(xiàn)的:先由應(yīng)用程序創(chuàng)建一個事件,直接將該事件句柄傳遞給驅(qū)動程序。接著驅(qū)動程序創(chuàng)建一個KEvent指針,接受這個句柄,并分配相關(guān)資源。當(dāng)中斷觸發(fā)了事件的發(fā)生時,驅(qū)動就會產(chǎn)生信息通知應(yīng)用程序,同時立即清中斷以便等待下一個中斷。

        4 結(jié) 語

        研制的基于PCI總線的數(shù)據(jù)采集卡的最高采樣速率可達500 MHz,存儲容量為256 MB,如果要擴展存儲容量,只需更換內(nèi)存條并修改程序參數(shù)即可。通過實際使用表明,該系統(tǒng)運行穩(wěn)定,操作方便,擴展性強,具有一定的工程應(yīng)用價值。

        參考文獻

        [1]Altera Coporation.Stratix Device Handbook.2005.

        [2]Atmel Inc.12 b 500 MSPS ADC AT84AS001 Datasheet.2007.

        [3]Altera Coporation.Interfacing DDR SDRAM with Stratix Ⅱ Devices.2004.

        [4]Jedec Standard.Double Data Rata(DDR) SDRAM Specification.2004.

        [5]李貴山,戚德虎.PCI局部總線開發(fā)者指南.西安:西安電子科技大學(xué)出版社,1997.

        [6]PLX Technology Inc.PCI9054 Data Book V2.1.2000.

        [7]武安河.Windows 2000/XP WDM設(shè)備驅(qū)動開發(fā).北京:電子工業(yè)出版社,2005.

        [8]Tom Shanley.PCI系統(tǒng)結(jié)構(gòu).4版.劉暉,冀然然,夏意軍,譯.北京:電子工業(yè)出版社,2000.

        [9]Micron Technology Inc.Initialization Sequence for DDR SRAM.TN-46-08.2003.

        [10]張凱.PowerLogic PowerPCB 高速電路設(shè)計.北京:國防工業(yè)出版,2004.

        国产精品久久久久久2021| 中文字幕一区二区三区四区五区| 东北少妇不戴套对白第一次| 我爱我色成人网| 国产一区二区三区美女| 亚洲AⅤ樱花无码| 在线观看一区二区三区视频| 日本精品女优一区二区三区| 日韩精品久久久肉伦网站| 欧美亚州乳在线观看| 日本一区二区不卡超清在线播放| 曰日本一级二级三级人人| 国产精品a免费一区久久电影| 国产女精品视频网站免费| 精品国产爱在线观看| 美女脱了内裤洗澡视频| 野外亲子乱子伦视频丶| 91av小视频| 有码中文字幕一区二区 | 国产综合精品久久99之一| 欧美粗大猛烈老熟妇| 中文字幕精品久久天堂一区| 亚洲国产综合精品一区| 琪琪色原网站在线观看| 韩国精品一区二区三区无码视频 | 四虎无码精品a∨在线观看| 国产自拍91精品视频| 国产精品v片在线观看不卡| 在线免费毛片| 国产三级三级精品久久| 国产日产精品_国产精品毛片| 亚洲乱码日产精品bd| 制服丝袜人妻中出第一页| 国产免费一区二区在线视频| 国产精品久久久久9999赢消| 日韩在线观看你懂的| 我也色自拍俺也色自拍| 国产色系视频在线观看| 日本高清www午色夜高清视频| 亚洲av伊人久久综合密臀性色| 欧美日本国产亚洲网站免费一区二区 |