丁傳勇 劉婧 翁鐵 張燕 天津博遠(yuǎn)華信科技有限公司
USB3.0采用了雙總線拓?fù)浣Y(jié)構(gòu),可以實(shí)現(xiàn)數(shù)據(jù)的串行通信,無須等待應(yīng)答包則可以同時(shí)同方向輸出多個(gè)數(shù)據(jù)包,還可以實(shí)現(xiàn)對其它版本USB的兼容,可以有效對數(shù)據(jù)傳送過程中的干擾進(jìn)行處理。該串行通信系統(tǒng)中的兩條總線采有通信電纜和連接器實(shí)現(xiàn)并連,采用星型的拓?fù)浣Y(jié)構(gòu),超速總線利用分層的數(shù)據(jù)信息通信架構(gòu),利用了8b/10b編碼和解碼方式,可以實(shí)現(xiàn)編碼過程中的DC平衡,數(shù)據(jù)信息傳送過程中的0、1數(shù)量基本一致,持續(xù)的0、1數(shù)量不會超過5個(gè)。編碼的原理是把持續(xù)的8位數(shù)據(jù)劃分成低5位數(shù)據(jù)、高3位數(shù)據(jù),兩組數(shù)據(jù)之間填加1個(gè)數(shù)據(jù)控制位,成為10位的數(shù)據(jù)組。在進(jìn)行解碼時(shí),把這10位數(shù)據(jù)轉(zhuǎn)變成contrl+8bi的數(shù)據(jù)信息,兩個(gè)控制位可以使USB3.0可以對以下版本進(jìn)行兼容??梢詫?shí)現(xiàn)同步的數(shù)據(jù)傳輸、中斷傳輸、控制傳輸以及塊傳輸,而塊傳輸方式具有超高速數(shù)據(jù)通信的功能。
高速數(shù)據(jù)采集系統(tǒng)需要等待開關(guān)控制信號接通,之后把信號接入到調(diào)理電路中濾波、去噪。再通過模數(shù)轉(zhuǎn)換之后傳輸?shù)経SB3.0端口,從而實(shí)現(xiàn)數(shù)據(jù)采集的全過程。在具體應(yīng)用過程中,需要利用USB端口把數(shù)據(jù)采集系統(tǒng)與PC機(jī)進(jìn)行數(shù)據(jù)連接,通過系統(tǒng)初始化之后,再經(jīng)過I2C電路和FX3控制芯片來接收到USB端口傳送過來的固件程序,對寄存器進(jìn)行初始化操作之后,再設(shè)置好外圍電路運(yùn)行狀態(tài),數(shù)據(jù)采集系統(tǒng)的上位機(jī)便可以數(shù)據(jù)接收。
高速數(shù)據(jù)采集系統(tǒng)是由軟、硬件兩部分構(gòu)成,硬件主要有電源模塊、信號調(diào)理模塊,數(shù)據(jù)采集處理模塊、高速數(shù)據(jù)傳輸模塊和其它的輔助模塊構(gòu)成??刂颇K的核心主要為FPGA,而數(shù)據(jù)采集的實(shí)現(xiàn)主要依據(jù)A/D轉(zhuǎn)換,高速數(shù)據(jù)傳輸?shù)募夹g(shù)核心在于USB。
為了有效的完成A/D轉(zhuǎn)換,采用3組16路模擬開關(guān),出于系統(tǒng)成本方面的考慮,由于PCB板所占的體積并不大,所以需要采用多路復(fù)用開關(guān),利用分時(shí)復(fù)用的方式來實(shí)現(xiàn)A/D芯片功能的共享。該采集電路可以實(shí)現(xiàn)48路頻率量數(shù)據(jù)輸入,需要采用多路開關(guān)來實(shí)現(xiàn)。ADG706芯片具備較有較低的功耗和較高的精度,具有16選1的多路選擇功能,每路開關(guān)切換時(shí)間最多只需50納秒。該數(shù)據(jù)采集系統(tǒng)共有48個(gè)通道,總需要三片ADG706芯片。
高速數(shù)據(jù)采集系統(tǒng)中前端電路,把A0-A3狀態(tài)信息輸送到地址總線當(dāng)中,使模塊開關(guān)使能端處理高電位,模擬信號通路打開之后,對該通路中的信號實(shí)現(xiàn)濾波、降噪、分壓和跟隨以后,輸送到模數(shù)轉(zhuǎn)換芯片進(jìn)行離散化處理。數(shù)據(jù)采集卡會對產(chǎn)生較小改變電平量、非電平量等進(jìn)行采集,如果前端電路沒有對其進(jìn)行很好的處理,就會直接影響到數(shù)據(jù)采集的準(zhǔn)確度。所以,數(shù)據(jù)采集模塊加入了信號調(diào)理功能,實(shí)現(xiàn)對48路信號的放大處理,并進(jìn)行濾波操作。通過處理操作之后,整個(gè)數(shù)據(jù)采集完成,可以在電腦上把數(shù)據(jù)通過工程量轉(zhuǎn)換為實(shí)際值,用戶則可以對數(shù)據(jù)進(jìn)行分析和判斷。采集之后的信號通過信號調(diào)理、穩(wěn)壓、濾波和降噪處理等多個(gè)環(huán)節(jié)之后,數(shù)據(jù)的精準(zhǔn)度得到了有效的提升。
高速數(shù)據(jù)采集系統(tǒng)設(shè)計(jì)的核心在于模數(shù)轉(zhuǎn)換器的選用,需要重點(diǎn)考慮通道數(shù)、轉(zhuǎn)換精度、接口、采樣速度和電壓等性能,轉(zhuǎn)換精度與信號采集區(qū)間、采集系統(tǒng)總精度有著直接的關(guān)系,由于采集系統(tǒng)精度達(dá)到了16位,所以,模數(shù)轉(zhuǎn)換器應(yīng)用16位的控制芯片就可以滿足要求。采樣速度可以根據(jù)采樣定理和最高采樣速度來確定,本采集系統(tǒng)最高采樣頻率達(dá)到120kHz。除此之外,為了實(shí)現(xiàn)對數(shù)據(jù)高速采集,應(yīng)該采用可以實(shí)現(xiàn)并行通信的模數(shù)接口芯片。為了滿足使用的要求和技術(shù)指標(biāo),采集系統(tǒng)中的核心元件為高速逼近型模數(shù)轉(zhuǎn)換器,可以實(shí)現(xiàn)多種的數(shù)據(jù)同步采集和輸入,在應(yīng)用時(shí)需要通過5路電源進(jìn)行供電,可支持雙極性輸入電壓,所用通道可以實(shí)現(xiàn)較高的速率傳輸。芯片內(nèi)部具有高輸入、低噪聲的信號調(diào)理功能。輸入端口集成濾波器,可以實(shí)現(xiàn)40dB抗混疊抑制作用,采集系統(tǒng)的輸入部分只需要采用低通濾波器,再設(shè)計(jì)出電壓跟隨電路可以實(shí)現(xiàn)對高頻干擾信號的濾除。
USB3.0數(shù)據(jù)接口具備電源功能,所以,數(shù)據(jù)采集系統(tǒng)硬件可通過UBS接口實(shí)現(xiàn)供電,可以提供5V的標(biāo)準(zhǔn)電壓,但無法滿足系統(tǒng)內(nèi)的所有模塊對電壓的需求,所以,在進(jìn)行供電電源選用時(shí),應(yīng)該全面分析內(nèi)部功能模塊電壓的要求,還需要關(guān)注芯片過壓保護(hù)和干擾等方面的問題。系統(tǒng)中的數(shù)據(jù)采集電路硬件接入了15V供電電源,可以滿足信號調(diào)理電路對電壓的需求,芯片供電也得到了解決,高速數(shù)據(jù)采集系統(tǒng)設(shè)計(jì)時(shí),采用了電源管理芯片,可以對系統(tǒng)電源進(jìn)行高效的管理。
高速信號采集系統(tǒng)的軟件主要有模塊控制、FPGA驅(qū)動(dòng)、FX3固件程序三個(gè)子程。FPGA內(nèi)部結(jié)構(gòu)的邏輯設(shè)計(jì)時(shí),應(yīng)該把其分成多個(gè)控制模塊,采用erilog HDL進(jìn)行程序的編寫,每個(gè)部分的功能調(diào)試完成之后,需要把他們連接起來。與軟件相關(guān)的硬件為USB接口控制器、模數(shù)轉(zhuǎn)換控制模塊、數(shù)據(jù)控制和PLL。模數(shù)控制采用模塊轉(zhuǎn)換芯片的功能引腳來進(jìn)行時(shí)鐘控制,時(shí)鐘頻率設(shè)置為50MHz。進(jìn)行模數(shù)采集過程中,需要先對模數(shù)芯片進(jìn)行初始化操作,啟用片選信號CS、控制信號CVB/CVA,之后把其都設(shè)定為高電平,再把控制信號CVA/ CVB在一段時(shí)間內(nèi)設(shè)置為低電平后轉(zhuǎn)變?yōu)楦唠娖?,?jīng)過轉(zhuǎn)換操作之后,芯片會把忙信號設(shè)置為高電平,大約需要3微秒時(shí)間,如果忙信號還保持低電平狀態(tài),表明已經(jīng)完成模擬信號的轉(zhuǎn)變,還處于高電平狀態(tài)則需要再等待。當(dāng)信號轉(zhuǎn)換之后,把讀信號、片選信號設(shè)置為低電平,經(jīng)過一段時(shí)間以后,把讀信號轉(zhuǎn)變?yōu)楦唠娖健_@時(shí),數(shù)據(jù)信號線上的0-15就是第一通道的數(shù)據(jù),之后把16個(gè)引腳中的數(shù)據(jù)信息讀入到FPGA當(dāng)中,完成了首個(gè)通道數(shù)據(jù)的采集。當(dāng)進(jìn)行第二通道信數(shù)據(jù)信號采集過程中,需要把讀信號設(shè)置成低電平狀態(tài),當(dāng)?shù)诙€(gè)通道中的數(shù)字量輸入到模數(shù)信號線路中的0-15位上之后,把讀信號設(shè)置為高電平狀態(tài),之后把芯片的16個(gè)功能腳中的數(shù)據(jù)讀入到FPGA當(dāng)中,這就實(shí)現(xiàn)了第二個(gè)數(shù)據(jù)通道的數(shù)據(jù)采集,之后的6個(gè)通道根據(jù)上述采集順序來實(shí)現(xiàn)。
在進(jìn)行USB接口控制程序開發(fā)過程中,USB設(shè)備的數(shù)據(jù)枚舉和重枚舉、上電初始化、供電電源管理、USB通信協(xié)議等功能需要通過固化程序來實(shí)現(xiàn)。普遍來講,固化程序可保存在擴(kuò)展的ROM當(dāng)中,或者存在于芯片內(nèi),高速數(shù)據(jù)采集系統(tǒng)把固化程序存儲于EEPROM當(dāng)中。當(dāng)完成對EZ-USB FX配置以后,當(dāng)芯片上電會接收上位機(jī)發(fā)出指令,來對數(shù)據(jù)信息實(shí)現(xiàn)高速的采集和傳輸。FX3固化程序可實(shí)現(xiàn)對所有應(yīng)用程序的初始化檢測和配置,應(yīng)用線程的建立和應(yīng)用、內(nèi)部錯(cuò)誤的處理、數(shù)據(jù)流方式的設(shè)置、外設(shè)接口的參數(shù)配置和DMA引擎參數(shù)配置。
綜上所述,本論文對USB3.0進(jìn)行簡要的論述,主要從高速數(shù)據(jù)采集系統(tǒng)的軟、硬件方面對采集系統(tǒng)的設(shè)計(jì)進(jìn)行分析和研究,主要實(shí)現(xiàn)了USB3.0和FPGA通信協(xié)議的高度結(jié)合,可以使采集到的數(shù)據(jù)具備更好的精度和速率,實(shí)現(xiàn)多通道的數(shù)據(jù)采集和傳輸。