四虎成人免费视频,国产一级a作爱视频免费观9看,色五月丁香亚洲,亚洲欧美性爱在线视频,1000部黄片免费观看一区,国产亚洲性生活视频播放,三级黄色在线视频网站

現(xiàn)在位置:范文先生網(wǎng)>理工論文>電子通信論文>采用PCI9052及GP實現(xiàn)GPS信號采集

采用PCI9052及GP實現(xiàn)GPS信號采集

時間:2023-02-21 00:06:02 電子通信論文 我要投稿
  • 相關(guān)推薦

采用PCI9052及GP2010實現(xiàn)GPS信號采集

摘要:PCI9052是PLX公司推出的一種PCI總線從屬接口芯片(不具有DMA功能)。它提供了方便的本地總線與PCI總線的接口,避免用戶直接面對復(fù)雜的PCI總線協(xié)議。GP2010是通用電器公司Plessey半導(dǎo)體機構(gòu)為全球定位系統(tǒng)(GPS)接收機設(shè)計的第二代射頻高頻端器件。它將GPS射頻信號下變頻到4.309MHz的中頻(IF)后進行5.714MHz的2bit(A/D)量化。文中主要介紹如何利用PCI9052和GP2010實現(xiàn)GPS信號的量化存儲。

    關(guān)鍵詞:PCI總線 GPS DMA

引言

全球定位系統(tǒng)GPS(Global Position System),可以給用戶提供實時的定位、速度和時間信息,F(xiàn)在的GPS接收機大多采用硬件電路進行碼相關(guān)運算,結(jié)構(gòu)復(fù)雜,更新升級比較困難;而基于軟件無線電的GPS接收機受電路限制較少,更新?lián)Q代只需調(diào)整相應(yīng)軟件,十分靈活。該數(shù)據(jù)采集卡就是基于以上考慮設(shè)計的。

1 PCI9052的特點與功能

PCI9052(以下簡稱9052)提供高性能的從目標(biāo)PCI接口板卡與PCI總線的連接,支持寬范圍速率的本地總線,最高可達132 (范文先生網(wǎng)www.htc668.com收集整理)MB/s的傳輸速率。對9052編程可實現(xiàn)復(fù)用/非復(fù)用的8位、16位、32位的本地總線接口。9052還有內(nèi)部FIFO可以加速本地總線的操作,此外它還有以下功能:

①支持PCI r2.1版本,可以方便地將ISA卡轉(zhuǎn)換為PCI卡;

②支持從目標(biāo)傳輸模式,可以對存儲器空間進行突發(fā)讀/寫,對I/O空間單次訪問;

③2個本地中斷總線配置;

④可編程的本地總線配置;

⑤串行E2PROM配置;

⑥4個本地片選引腳,5個本地空間;

⑦多種本地讀/寫操作模式,方便地實現(xiàn)PCI與本地的接口。

圖1給出了9052內(nèi)部結(jié)構(gòu)。

2 GP2010射頻前端器件

GP2010(以下簡稱2010)是為GPS接收機設(shè)計的射頻前端器件,它接收GPS(L1)調(diào)制信號。L1是50位/Hz的信息碼速率經(jīng)過1.023MHz的偽隨機碼擴頻后以BPSK方式調(diào)制在1575.42MHz的載波上形成的擴頻信號。信號電平在進入天線之前大約只有-130dB,帶寬為2.046MHz,所以L1基本上被噪聲所掩蓋。2010經(jīng)過內(nèi)部鎖相環(huán)頻率綜合器產(chǎn)生1.4GHz、140MHz、與31.11MHz的三級時鐘分別與射頻輸入的L1信號進行混頻,其中還經(jīng)過3級濾波抑制帶外干擾,最后將其變換到4.309MHz的中頻,然后進行5.714MHz的采樣實現(xiàn)A/D變換(2位量化,符號位SIGN和數(shù)據(jù)位MAG)。根據(jù)奈奎斯特定律對帶通信號要以高于兩倍的信號帶寬進行采樣才可無失真的恢復(fù),用5.714MHz的速率采樣也要考慮到信號傳播過程中由于相對運動而產(chǎn)生的多普勒效應(yīng)使信號帶寬變寬的緣故。量化數(shù)據(jù)在每個時鐘的上升沿輸出。圖2給出2010的內(nèi)部結(jié)構(gòu)圖。

圖2 GP2010內(nèi)部結(jié)構(gòu)圖

3 數(shù)據(jù)采集卡系統(tǒng)結(jié)構(gòu)

GPS信號數(shù)據(jù)采集卡實現(xiàn)基本的一路GPS衛(wèi)星信號的采集工作。由于2010為2位、5.714MHz的采樣速率,我們在FPGA中首先將2位數(shù)據(jù)進行串并變換,使其每滿32位后進行一次傳輸存儲,這樣存儲速率就變?yōu)?57.12kHz。緩存選用4片18k×16位的FIFO,這樣就可以省略地址產(chǎn)生邏輯。在程序設(shè)計中,采樣數(shù)據(jù)首先存入FIFO(A),待滿后會產(chǎn)生相應(yīng)的中斷,中斷服務(wù)程序?qū)⒆x取其中的數(shù)據(jù)。在讀過程中,采樣數(shù)據(jù)會繼續(xù)寫入FIFO(B),如此反復(fù)可將數(shù)據(jù)采入計算機內(nèi)存。選用緩存時,建議在可行的情況下,容量越大越好。因為PCI總線上,除了設(shè)計的采集卡在不斷地申請占用總線外,還會有其余的設(shè)備占用,如果緩存不夠大將會丟失采樣數(shù)據(jù)。FPGA的主要功能是實現(xiàn)數(shù)據(jù)串行變換、控制采樣過程和與FIFO的接口邏輯。圖3是該數(shù)據(jù)采集卡的系統(tǒng)框圖。

4 9052使用中應(yīng)該注意的問題

9052內(nèi)部的配置寄存器是通過外部串行E2PROM上電加載的。9052會自動根據(jù)該E2PROM的狀態(tài)來決定其內(nèi)部寄存器的值。如果E2PROM不存在(此時E2PROM和9052連接的數(shù)據(jù)引腳應(yīng)加上拉電阻)或其內(nèi)部無有效值,9052會將其內(nèi)部寄存器配置為缺省值。值得一提的是,如果E2PROM內(nèi)部沒有燒寫為有效值時,應(yīng)保證其開始48位為全“1”;否則,系統(tǒng)上電時可能會產(chǎn)生錯誤。

9052有5個本地空間,用戶可根據(jù)實際需要進行相應(yīng)的配置。當(dāng)將本地空間配置成I/O時,對該空間的讀/寫操作只能單次進行。利用PLXMon來開發(fā)驅(qū)動程序(調(diào)用其提供的API函數(shù))進行I/O讀/寫,速度會十分慢(一般不會超過500kHz);而如配置成存儲器空間,用戶會

有多種接入模式,可大大提高接入速度。突發(fā)模式是為提高本地總線操作速度而設(shè)計的。在該模式期間,9052只提供一次傳輸開始和終止信號。開始信號有效后,地址將以本地時鐘的頻率(最高可達40MHz)遞增,可以利用Bterm#引腳是否有效來終止突發(fā)操作。由于FIFO只需要一個口地址,在設(shè)計中為了利用其快速的存儲器訪問(突發(fā)訪問)特性,我們還是為其分配了36KB的地址空間,以保證在該范圍內(nèi)FIFO的片選始終有效。圖4是一次突發(fā)讀時序。其中LCLK是本地時鐘,ADS有效表示一次傳輸?shù)拈_始,BLAST有效表示本次傳輸?shù)慕K止。

在此須澄清一個概念:Pentium系列計算機(指CPU),不支持突發(fā)讀操作,只可能產(chǎn)生單次讀操作。用戶若想在PCI總線上實現(xiàn)突發(fā)操作(FRAME信號有效,多余一個PCI時鐘周期),應(yīng)使用支持DMA傳輸?shù)男酒,如PLX9054。但9052會將PCI總線上的多次單次讀操作轉(zhuǎn)化為本地空間上的突發(fā)操作。

5 PLXMon及PLX器件驅(qū)動程序的開發(fā)

PLXMon是PLX公司專為其產(chǎn)品開發(fā)的測試軟件。在用戶的板卡插入PCI槽,并安裝了PLXMon提供的驅(qū)動程序后,啟動該軟件就可以觀察和修改芯片內(nèi)部寄存器的值,并可以對存儲器空間進行測試。

Windows下的驅(qū)動程序包括硬件物理設(shè)備的驅(qū)動程序和文件系統(tǒng)等非物理設(shè)備的虛擬設(shè)備驅(qū)動程序,我們所編寫的是硬件物理設(shè)備的驅(qū)動程序。Windows類操作系統(tǒng)(Windows 95、Windows 98、WindowsNT、Windows 2000)為了保證其安全性、穩(wěn)定性和可移植性,對應(yīng)用程序訪問硬件資源加以限制,用戶需要對系統(tǒng)硬件及操作系統(tǒng)軟件有詳細的了解才可開發(fā)出高效的驅(qū)動程序,因此開發(fā)周期較長。利用第三方提供的開發(fā)軟件,可以大大縮短開發(fā)時間,但效率不一定高,尤其對實時性要求嚴格的程序顯得有些無力。

①Device Developer Kit(DDK)。該軟件中包括了有關(guān)設(shè)備驅(qū)動開發(fā)的文檔、編譯需要的頭文件和庫文件、調(diào)試工具和程序范例;但是由于DDK主要是使用匯編語言進行描述,開發(fā)起來比較困難。

②VtoolsD。該軟件包是基于C/C++的,支持BorlandC++和VisualC++,使用和維護比較方便。

③WinDriver。允許用戶使用Visual C++、Borland或者其它Win32編程工具軟件在用戶模式(UserMode)上編寫設(shè)備驅(qū)動程序。

④PLXMon。PLX公司專為其芯片提供的驅(qū)動程序開發(fā)包和測試軟件,同樣可以在用戶模式上編寫。支持Visual C++環(huán)境。

圖4 突發(fā)讀時序

    在開發(fā)程序時,我們發(fā)現(xiàn)PLXMon和WinDriver不兼容,而且除非有正式版本的WinDriver;否則試用期過后,利用它開發(fā)的驅(qū)動程序?qū)o法使用。所以建立使用PLXMon,只需包括相應(yīng)的頭文件,用戶便可以方便地調(diào)用其提供的API函數(shù),對板卡上的資源進行訪問。以下的程序片段是在調(diào)試電路板時編寫的基本查詢中斷是否有效來讀取緩存的。所調(diào)用的函數(shù)均為PLXMon提供的API函數(shù)。其中:PlxPciBaseAddressesGet()是得到板卡上存儲空間的物理地址,而*(Data+i)=*(U32*)(va.Va3)是將該空間的值裝入計算機內(nèi)存。

圖5是驅(qū)動程序流程圖。

程序段如下:

Example:

rc_w=PlxPciBaseAddressesGet(hDevice,&va);

while(TRUE){

Int_Flag=*(U32*)(va.Va0+0x4c);

if(Int_Flag[0]&4) {

for(i=0;i<FIFO_Size;i++)

*(Sample_Data+i)=*(U32*)(va.Va3);

*(U32*)(va.Va0+0x4c)=Clear_Flag;

break;

}

}

結(jié)語

由于PCI總線的高速特性,使其被廣泛應(yīng)用于高速數(shù)據(jù)采集系統(tǒng)中,有效地解決了實時采集、實時傳輸和實時存儲等問題。而PCI總線控制器專用芯片的出現(xiàn)則

縮短了PCI總線硬件設(shè)備的開發(fā)周期,使得硬件設(shè)備的可靠性和穩(wěn)定性都有了較大的提高。在開過程中,我們發(fā)現(xiàn)要想有高效率的操作特性,使用第三方提供的驅(qū)動程序開發(fā)包總是不太理想,尤其對于高速采樣及實時嚴格的系統(tǒng)。用戶還是要利用DDK開發(fā)符合自己要求的驅(qū)動程序。該數(shù)據(jù)采集卡實現(xiàn)了一路GPS信號的采集工作,為今后利用通用PC機進行數(shù)字信號的捕獲、跟蹤及解調(diào),初步實現(xiàn)軟件無線電GPS接收機打下基礎(chǔ)。


【采用PCI9052及GP實現(xiàn)GPS信號采集】相關(guān)文章:

一種QCM信號在線采集系統(tǒng)的實現(xiàn)08-06

多DSP系統(tǒng)實現(xiàn)雷達極化信號兩對IQ的采集和處理08-06

采用VXD技術(shù)實現(xiàn)實的通信08-06

采用USBN9602的數(shù)據(jù)采集系統(tǒng)設(shè)計08-06

車載GPS智能終端的設(shè)計與實現(xiàn)08-06

GPS高精度的時鐘的設(shè)計和實現(xiàn)08-06

采用加密網(wǎng)卡實現(xiàn)內(nèi)部網(wǎng)的信息安全08-06

陣列超聲場的信號采集與處理系統(tǒng)08-06

利用ColdFire uClinux實現(xiàn)數(shù)據(jù)采集和傳輸08-06