1 系統(tǒng)總體設(shè)計(jì)
本數(shù)據(jù)采集系統(tǒng)的設(shè)計(jì)主要分為硬件和軟件設(shè)計(jì)兩部分。其中硬件設(shè)計(jì)主要包括信號(hào)調(diào)理、A/D轉(zhuǎn)換、數(shù)據(jù)存儲(chǔ)、控制部分以及USB接口部分等實(shí)現(xiàn)內(nèi)容。
系統(tǒng)軟件設(shè)計(jì)分為USBN件(Firmware)、USB設(shè)備驅(qū)動(dòng)程序以及主機(jī)應(yīng)用程序三部分內(nèi)容。在Windows操作平臺(tái)下,主機(jī)應(yīng)用程序通過USB設(shè)備驅(qū)動(dòng)程序與系統(tǒng)硬件接口USBDI(USBDeviceInterface)進(jìn)行通信,然后由系統(tǒng)產(chǎn)生USB數(shù)據(jù)的傳送動(dòng)作。固件則是運(yùn)行在接口芯片中的代碼,用以響應(yīng)各種來自系統(tǒng)的USB標(biāo)準(zhǔn)請(qǐng)求,完成數(shù)據(jù)的交換工作和事務(wù)處理。系統(tǒng)結(jié)構(gòu)框架圖如圖1所示。
![](/uploads/allimg/120424/177094-120424103305B8.jpg)
?
2 系統(tǒng)硬件設(shè)計(jì)
USB數(shù)據(jù)采集板硬件電路設(shè)計(jì)實(shí)現(xiàn)共分為5大部分,它們分別是信號(hào)調(diào)理、A/D轉(zhuǎn)換、數(shù)據(jù)存儲(chǔ)、控制部分以及USB接口部分。
2.1 信號(hào)調(diào)理
信號(hào)調(diào)理部分由脈沖計(jì)數(shù)式鑒頻器完成。它由四部分組成(如圖2所示),即過零比較器、微分電路、脈沖形成電路和低通濾波器,輸入的調(diào)頻波Ui(t)經(jīng)過零比較器后變成調(diào)頻方波信號(hào)U1(t),調(diào)頻方波信號(hào)通過微分電路后變?yōu)槲⒎置}沖序列U2(t),微分脈沖序列經(jīng)過脈沖形成電路后變?yōu)榈让}寬的方波脈沖序列U3(t),等脈寬的方波脈沖序列通過低通濾波器后就輸出調(diào)制信號(hào)Uo(t)。鑒頻器各部分的波形如圖3所示。
![](/uploads/allimg/120424/177094-120424103314958.jpg)
?
2.2 主控芯片的工作方式
本設(shè)計(jì)采用的主控芯片是Cypress公司的USB2.0控制芯片CY7C68013,它與計(jì)算機(jī)通過USB接口相連,使設(shè)備能在PC機(jī)的控制下進(jìn)行操作。USB主控芯片通過邏輯控制電路連接到FIFO和A/D轉(zhuǎn)換后的數(shù)據(jù)傳送至FIFO芯片進(jìn)行緩沖,緩沖后的數(shù)據(jù)輸入主控芯片的從FIFO中,然后從FIFO以DMA(直接內(nèi)存存取)的方式經(jīng)由SIE(串行接口引擎)傳給PC機(jī)。
為了實(shí)現(xiàn)高速數(shù)據(jù)采集的功能,A/D芯片采用的ADl*,它是一款12位,最高轉(zhuǎn)換速度可達(dá)100kHz的A/D轉(zhuǎn)換芯片,考慮到對(duì)FIFO容量的需求,系統(tǒng)采用GPLD和FIFO來實(shí)現(xiàn)。選用IDT7205完成數(shù)據(jù)緩存。其最高工作頻率為133MHz,容量為8kB,能滿足設(shè)計(jì)要求。
CY7C68013與外設(shè)有兩種接口方式:通用可編程接口GPIF方式和從屬FIFO方式。GPIF的核心就是一個(gè)可編程狀態(tài)機(jī),可產(chǎn)生6個(gè)控制和9個(gè)地址輸入信號(hào),并能接收6個(gè)外部和2個(gè)內(nèi)部“ready”輸入信號(hào)。GPIF向外部接口產(chǎn)生正確的選通信號(hào)和握手信號(hào),外部接口用于對(duì)FIFO數(shù)據(jù)的傳進(jìn)和傳出。GPIF是主機(jī)的方式,而從屬FIFO方式是從機(jī)方式,它由外部控制器控制,可像對(duì)普通FIFO一樣對(duì)FX2的多層緩沖FIFO進(jìn)行讀寫。FX2的從屬FIFO工作方式可設(shè)為同步或異步,工作時(shí)鐘可選為內(nèi)部產(chǎn)生或外部輸入,其它控制信號(hào)也可根據(jù)需要設(shè)置為高有效或低有效。
2.3 FlF0的數(shù)據(jù)緩存作用
由于A/D最高采樣頻率可達(dá)100MHz,而主控芯片CY7C68013中的FIFO只有4kB,不能滿足A/D數(shù)據(jù)轉(zhuǎn)換器的要求,因此需要在A/D和CY7-C68013之間增加一個(gè)高速的FIFO來緩存數(shù)據(jù)。FIFO是先進(jìn)先出的數(shù)據(jù)緩存器,數(shù)據(jù)在其內(nèi)部順序?qū)懭?、順序讀出,其數(shù)據(jù)地址由內(nèi)部讀寫指針自動(dòng)加1完成。它具有雙口輸入輸出、采集傳送速度快等特點(diǎn),能滿足高速數(shù)據(jù)傳輸?shù)囊?。由FIFO構(gòu)成的數(shù)據(jù)緩沖電路主要部分的接口電路如圖4所示。
![](/uploads/allimg/120424/177094-1204241033213F.jpg)
?
IDT7205有兩種工作模式,即IDT標(biāo)準(zhǔn)模式和FWFT模式。本設(shè)計(jì)中采用IDT標(biāo)準(zhǔn)模式,這種模式通過FF、PAF、PAE、HF、EF五個(gè)標(biāo)志位來實(shí)現(xiàn)數(shù)據(jù)的傳輸。/WEN(寫使能端)置為有效時(shí),數(shù)據(jù)可以寫入FIFO。在WLCK(寫時(shí)鐘)的控制下,數(shù)據(jù)持續(xù)寫入FIFO,當(dāng)?shù)谝粋€(gè)數(shù)據(jù)被寫入時(shí),/EF(空標(biāo)志)無效,數(shù)據(jù)不斷地寫入FIFO,即將寫滿時(shí)/PAE(將空標(biāo)志)無效,/PAF(將滿標(biāo)志)有效,表示FIFO即將寫滿。當(dāng)FIF0寫滿時(shí),/FF(滿標(biāo)志)置為有效,控制A/D芯片停止寫數(shù)。開始讀數(shù)據(jù)時(shí)的第一個(gè)讀操作使/FF置為無效,此時(shí)開始持續(xù)地讀取數(shù)據(jù),當(dāng)FIFO中數(shù)據(jù)減少到一定程度,會(huì)使/PAF(將滿)和/HF(半滿)兩個(gè)標(biāo)志位置為無效,持續(xù)讀出數(shù)據(jù),而不寫入數(shù)據(jù);當(dāng)FIFO中只剩下N個(gè)字時(shí)(N為空狀態(tài)的缺省值),/PAF有效;當(dāng)FIFO中的數(shù)據(jù)被全部讀出時(shí),/EF置為有效,此時(shí)控制主控芯片停止讀取數(shù)據(jù),與此同時(shí)A/D也開始下一個(gè)讀取數(shù)據(jù)過程。
評(píng)論