<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 基于PCI總線和DSP技術(shù)的虛擬儀器系統(tǒng)設(shè)計

          基于PCI總線和DSP技術(shù)的虛擬儀器系統(tǒng)設(shè)計

          作者: 時間:2012-05-18 來源:網(wǎng)絡(luò) 收藏

          本文引用地址:http://www.ex-cimer.com/article/257499.htm

          2 系統(tǒng)控制邏輯的實現(xiàn)
          由于CPLD器件掉電后可保存芯片內(nèi)部程序,無須煩瑣的重復(fù)燒寫,因此本設(shè)計采用Altera公司的CPLD器件,作為接口芯片及存儲芯片的邏輯控制??紤]到需要使用局部地址/數(shù)據(jù)各16根線,控制信號線22根,還要為數(shù)據(jù)采集電路預(yù)留些I/O引腳,最后決定采用144腳TQFP封裝的EPM3128。

          在本系統(tǒng)中,EPM3128的主要功能是實現(xiàn) Local端的地址譯碼、Local端對各個DRAM控制的地址譯碼、對板上功能選擇開關(guān)的狀態(tài)進(jìn)行譯碼,從而實現(xiàn)對系統(tǒng)功能的配置以及對各芯片的控制信號進(jìn)行邏輯譯碼。所有的譯碼工作都通過VHDL編程語言來實現(xiàn)。綜合和編譯工作是在Altera公司的QuartusII集成編譯環(huán)境中完成的。

          3 數(shù)據(jù)采集電路的實現(xiàn)
          數(shù)據(jù)采集電路是本系統(tǒng)的關(guān)鍵,數(shù)據(jù)采集電路設(shè)計的好壞將直接影響到本系統(tǒng)的性能。為了實現(xiàn)系統(tǒng)功能的可配置和可擴(kuò)展性,數(shù)據(jù)采集模塊設(shè)計成可配置的模式插接在總線接口母板上,實現(xiàn)對外部信號的數(shù)據(jù)采集。數(shù)據(jù)采集模塊由高速16位adc(LTC1608)和高性能芯片(TMS320C6713)構(gòu)成,LTC1608的并行數(shù)字接口可方便地與包括TMS320C6713在內(nèi)的多種通信,并可連接3V或5V邏輯。

          由于對采集精度的高要求,在信號進(jìn)入ADC之前,需要對模擬信號進(jìn)行一系列的處理以保證信號的可靠性:模擬信號首先經(jīng)過電壓跟隨運算放大器增加輸入阻抗,再經(jīng)過電壓比例放大和一階RC低通濾波,最后輸入到ADC。


          圖4 輸入信號處理電路原理圖


          圖5 LTC1608 A/D芯片引腳連接電路圖

          具體的信號處理電路如圖4和圖5所示。
          系統(tǒng)軟件設(shè)計
          正如圖1所示,硬件設(shè)計完成后,要使整個系統(tǒng)工作還需要軟件的支持,這些軟件包括設(shè)備驅(qū)動程序、數(shù)據(jù)處理算法程序和系統(tǒng)控制軟件。

          1 設(shè)備驅(qū)動程序設(shè)計
          設(shè)備驅(qū)動程序不是單獨存在的,而是相關(guān)操作系統(tǒng)內(nèi)核的一部分,所以需要對操作系統(tǒng)有一定的了解。Windows2000操作系統(tǒng)是32位的多任務(wù)非實時操作系統(tǒng)。對整個系統(tǒng)底層的操作和用戶與硬件打交道的權(quán)力被屏蔽,必須通過操作系統(tǒng)統(tǒng)一管理設(shè)備驅(qū)動程序和其他內(nèi)核訪問來實現(xiàn)應(yīng)用軟件對硬件的訪問。在設(shè)計和使用PCI設(shè)備時,經(jīng)常要在軟件中對系統(tǒng)資源進(jìn)行訪問,因此只有編制設(shè)備驅(qū)動程序才能實現(xiàn)對PCI總線設(shè)備的完全訪問。

          應(yīng)用程序?qū)υO(shè)備I/O進(jìn)行Win32調(diào)用,這個調(diào)用由I/O系統(tǒng)服務(wù)接收。I/O管理器從這個請求構(gòu)造一個合適的I/O請求包(IRP)。在最簡單的情況下,I/O管理器只是把IRP傳遞給一個設(shè)備驅(qū)動程序,這個驅(qū)動程序與硬件打交道,并完成IRP的處理。I/O管理器把數(shù)據(jù)和結(jié)果返回給Win32和用戶應(yīng)用程序。而一個IRP由一個分層的設(shè)備驅(qū)動程序棧處理是很常見的。每個驅(qū)動程序把該請求劃分成更簡單的請求。最高層的驅(qū)動程序(如文件系統(tǒng)驅(qū)動程序)知道文件如何在磁盤上表示,但不知道如何得到數(shù)據(jù)的細(xì)節(jié);中間層次的驅(qū)動程序進(jìn)一步處理請求;最低層的驅(qū)動程序與硬件實際打交道。

          本設(shè)計選擇的硬件驅(qū)動程序開發(fā)工具是Compuware公司提供的一個驅(qū)動程序集成開發(fā)包(DriverStudio)。利用其中的DriverWorks工具可以生成一個PCI總線驅(qū)動框架,然后在WDM中實現(xiàn)輸入輸出處理,可以用KIoRange類來實現(xiàn)。

          在驅(qū)動程序框架生成的過程中,我們可以通過向?qū)暶黩?qū)動程序中將要使用的資源;通過調(diào)用KIoRange類的Initialize()函數(shù),可以對資源進(jìn)行初始化(映射PCI局部空間);應(yīng)用層通過DeviceIoControl函數(shù)向驅(qū)動程序發(fā)命令來調(diào)用KIoRange的成員函數(shù)實現(xiàn)應(yīng)用層對I/O空間的處理。開發(fā)PCI母板的windows驅(qū)動程序,就是使PC能正常識別該板卡并分配所需的系統(tǒng)資源。



          關(guān)鍵詞: 虛擬儀器 DSP PCI

          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();