基于DSP和USB的高速數(shù)據(jù)采集與處理系統(tǒng)設(shè)計(jì)
發(fā)布時(shí)間:2008/6/5 0:00:00 訪問次數(shù):542
在圖像數(shù)據(jù)處理系統(tǒng)中,常常需要對(duì)高速信號(hào)進(jìn)行采集與處理。例如,在光傳感技術(shù)中對(duì)光脈沖散射信號(hào)的測(cè)量,在雷達(dá)工程中對(duì)電磁脈沖信號(hào)的測(cè)量等,都需要對(duì)高速信號(hào)進(jìn)行采集與運(yùn)算,而且此類高速信號(hào)的測(cè)量,往往對(duì)數(shù)據(jù)采集與處理系統(tǒng)提出嚴(yán)格的要求。本文設(shè)計(jì)并實(shí)現(xiàn)一種基于dsp和usb的高速數(shù)據(jù)采集與處理系統(tǒng)。該系統(tǒng)電路簡單,可靠性好,具有一定的通用性,并且可以進(jìn)行多通道擴(kuò)展。
1 原理概述
基于dsp和usb的高速數(shù)據(jù)采集與處理系統(tǒng)的原理框圖如圖1所示。系統(tǒng)上電后,dsp、fpga分別由各自的flash加載程序,采集與處理系統(tǒng)開始運(yùn)行。在a/d變換器完成轉(zhuǎn)換后由fpga向dsp發(fā)送中斷0申請(qǐng)信號(hào),dsp從a/d fifo ram中讀取數(shù)據(jù),并進(jìn)行小波變換去噪處理,處理結(jié)束后dsp向usb控制器發(fā)送中斷申請(qǐng)信號(hào),usb控制器將處理后的數(shù)據(jù)發(fā)送至pc機(jī),由主機(jī)應(yīng)用程序顯示數(shù)據(jù)。主機(jī)應(yīng)用程序還可以對(duì)整個(gè)采集、處理系統(tǒng)進(jìn)行控制,主要設(shè)定三個(gè)功能:接收處理后的數(shù)據(jù),接收處理前的數(shù)據(jù),設(shè)定a/d的采樣頻率和采樣點(diǎn)數(shù)。
2 系統(tǒng)硬件設(shè)計(jì)
系統(tǒng)硬件設(shè)計(jì)主要分為三大部分:dsp部分、fpga部分、usb部分。
2.1 dsp部分設(shè)計(jì)
本系統(tǒng)使用的dsp芯片為ti(德州儀器)公司的tms320vc33,它是ti公司推出的性價(jià)比極高的32位浮點(diǎn)型數(shù)字信號(hào)處理芯片,是目前在國內(nèi)外使用最為廣泛的浮點(diǎn)dsp之一。
tms320vc33具有以下特點(diǎn):哈佛結(jié)構(gòu);流水線操作;專用的硬件乘法器;特殊的dsp指令;快速的指令周期。另外,tms320vc33還具有強(qiáng)大的浮點(diǎn)運(yùn)算能力,運(yùn)算速度可達(dá) 150mflops(每秒百萬次浮點(diǎn)運(yùn)算),處理能力達(dá)到75mips(每秒百萬次指令周期)。而且,它還采用3.3v i/o電壓和1.8v處理器核電壓使功耗降低到200mw。
dsp部分的電路設(shè)計(jì)主要是為tms320vc33的外圍電路設(shè)計(jì)。tms320vc33的strb0和引腳分別連接存儲(chǔ)器的片選和使能引腳,實(shí)現(xiàn)程序/數(shù)據(jù)存儲(chǔ)器的擴(kuò)展;引腳接到高電平,int2引腳接到低電平,實(shí)現(xiàn)上電后程序自加載;由tms、tdi、tdo、tck、、emu0、emu1等引腳組成程序下載口,以方便dsp程序調(diào)試。
2.2 fpga部分設(shè)計(jì)
因?yàn)楸鞠到y(tǒng)的邏輯比較復(fù)雜,為了有效地減少硬件的體積、提高硬件系統(tǒng)的可靠性,這里把所有的邏輯控制電路、各種存儲(chǔ)器/寄存器的地址譯碼電路都用一塊超大規(guī),F(xiàn)場(chǎng)可編程邏輯門陣列(fpga)xc3090來實(shí)現(xiàn)。邏輯控制電路包括:命令寄存器、采樣點(diǎn)數(shù)/采樣頻率設(shè)定寄存器、中斷申請(qǐng)信號(hào)發(fā)生器、將a/d結(jié)果寫入fifo ram的控制電路、usb及其fifo和a/d fifo狀態(tài)檢測(cè)電路。
2.3 usb部分設(shè)計(jì)
tms320vc33與usb控制器an2136sc之間通過雙向fifo 交換數(shù)據(jù),握手信號(hào)使用an2136sc的pc口。當(dāng)usb為接收緩沖器時(shí),dsp讀,an2136sc寫;當(dāng)usb為發(fā)送緩沖器時(shí),dsp寫,an2136sc讀。pc(0)~(3)用作二者的讀寫通道,方向可編程確定; pc(4)用于tms320vc33向an2136sc申請(qǐng)中斷;pc(5)用于an2136sc復(fù)位usb接收緩沖器;pc(6)用于usb接收器滿標(biāo)志,若接收器已滿則禁止an2136進(jìn)一步對(duì)usb接收緩沖器寫入;pc(7)用于usb發(fā)送緩沖器空標(biāo)志,若緩沖器已空則禁止an2136sc進(jìn)一步對(duì)usb發(fā)送緩沖器讀出。
3 系統(tǒng)軟件設(shè)計(jì)
系統(tǒng)軟件主要包括五大部分:dsp程序(用于a/d采樣控制、數(shù)據(jù)處理、dsp與usb總線之間的信息交換)、usb總線驅(qū)動(dòng)程序、usb固件程序(用于pc機(jī)與dsp之間的數(shù)據(jù)交換與處理)、主機(jī)應(yīng)用程序、fpga中對(duì)地址的譯碼程序和各個(gè)寄存器的實(shí)現(xiàn)程序。
3.1 dsp程序
dsp程序首先對(duì)dsp進(jìn)行初始化(中斷初始化、片外選通信號(hào)初始化、設(shè)定系統(tǒng)默認(rèn)的采樣點(diǎn)數(shù)/采樣頻率等),然后等待中斷(中斷0的程序主要用于對(duì)a/d數(shù)據(jù)的讀取和處理,并向主機(jī)發(fā)送處理后的數(shù)據(jù);中斷1的程序主要用于分析主機(jī)的命令,針對(duì)主機(jī)的命令設(shè)定系統(tǒng)的采樣點(diǎn)數(shù)/采樣頻率,并發(fā)送主機(jī)需要的數(shù)據(jù))。程序框圖如圖2所示。
3.2 usb固件程序
固件程序代碼由usb芯片集成的加強(qiáng)型8051單片機(jī)處理。當(dāng)ez-usb設(shè)備連接到usb口時(shí),主機(jī)進(jìn)行總線枚舉,首先根據(jù)設(shè)備id使用系統(tǒng)程序?qū)⒐碳螺d到芯片內(nèi)部,然后進(jìn)行重枚舉,固件作為用戶的功能設(shè)備開始執(zhí)行。cypress公司提供的固件程序框架,用來完成控制傳輸工作和大部分的數(shù)據(jù)傳輸工作。本接口電路的固件程序就是基于此固件框架開發(fā)的,并使用keil c進(jìn)行編譯。usb接收的dsp中斷程序如下:
void isr_idt(void) interrupt int0_vect
{fastxfr = 0x40; 使能快速傳模式
autoptrl=lsb((word)&in4buf); 將自動(dòng)指針指向端點(diǎn)4緩沖
在圖像數(shù)據(jù)處理系統(tǒng)中,常常需要對(duì)高速信號(hào)進(jìn)行采集與處理。例如,在光傳感技術(shù)中對(duì)光脈沖散射信號(hào)的測(cè)量,在雷達(dá)工程中對(duì)電磁脈沖信號(hào)的測(cè)量等,都需要對(duì)高速信號(hào)進(jìn)行采集與運(yùn)算,而且此類高速信號(hào)的測(cè)量,往往對(duì)數(shù)據(jù)采集與處理系統(tǒng)提出嚴(yán)格的要求。本文設(shè)計(jì)并實(shí)現(xiàn)一種基于dsp和usb的高速數(shù)據(jù)采集與處理系統(tǒng)。該系統(tǒng)電路簡單,可靠性好,具有一定的通用性,并且可以進(jìn)行多通道擴(kuò)展。
1 原理概述
基于dsp和usb的高速數(shù)據(jù)采集與處理系統(tǒng)的原理框圖如圖1所示。系統(tǒng)上電后,dsp、fpga分別由各自的flash加載程序,采集與處理系統(tǒng)開始運(yùn)行。在a/d變換器完成轉(zhuǎn)換后由fpga向dsp發(fā)送中斷0申請(qǐng)信號(hào),dsp從a/d fifo ram中讀取數(shù)據(jù),并進(jìn)行小波變換去噪處理,處理結(jié)束后dsp向usb控制器發(fā)送中斷申請(qǐng)信號(hào),usb控制器將處理后的數(shù)據(jù)發(fā)送至pc機(jī),由主機(jī)應(yīng)用程序顯示數(shù)據(jù)。主機(jī)應(yīng)用程序還可以對(duì)整個(gè)采集、處理系統(tǒng)進(jìn)行控制,主要設(shè)定三個(gè)功能:接收處理后的數(shù)據(jù),接收處理前的數(shù)據(jù),設(shè)定a/d的采樣頻率和采樣點(diǎn)數(shù)。
2 系統(tǒng)硬件設(shè)計(jì)
系統(tǒng)硬件設(shè)計(jì)主要分為三大部分:dsp部分、fpga部分、usb部分。
2.1 dsp部分設(shè)計(jì)
本系統(tǒng)使用的dsp芯片為ti(德州儀器)公司的tms320vc33,它是ti公司推出的性價(jià)比極高的32位浮點(diǎn)型數(shù)字信號(hào)處理芯片,是目前在國內(nèi)外使用最為廣泛的浮點(diǎn)dsp之一。
tms320vc33具有以下特點(diǎn):哈佛結(jié)構(gòu);流水線操作;專用的硬件乘法器;特殊的dsp指令;快速的指令周期。另外,tms320vc33還具有強(qiáng)大的浮點(diǎn)運(yùn)算能力,運(yùn)算速度可達(dá) 150mflops(每秒百萬次浮點(diǎn)運(yùn)算),處理能力達(dá)到75mips(每秒百萬次指令周期)。而且,它還采用3.3v i/o電壓和1.8v處理器核電壓使功耗降低到200mw。
dsp部分的電路設(shè)計(jì)主要是為tms320vc33的外圍電路設(shè)計(jì)。tms320vc33的strb0和引腳分別連接存儲(chǔ)器的片選和使能引腳,實(shí)現(xiàn)程序/數(shù)據(jù)存儲(chǔ)器的擴(kuò)展;引腳接到高電平,int2引腳接到低電平,實(shí)現(xiàn)上電后程序自加載;由tms、tdi、tdo、tck、、emu0、emu1等引腳組成程序下載口,以方便dsp程序調(diào)試。
2.2 fpga部分設(shè)計(jì)
因?yàn)楸鞠到y(tǒng)的邏輯比較復(fù)雜,為了有效地減少硬件的體積、提高硬件系統(tǒng)的可靠性,這里把所有的邏輯控制電路、各種存儲(chǔ)器/寄存器的地址譯碼電路都用一塊超大規(guī)模現(xiàn)場(chǎng)可編程邏輯門陣列(fpga)xc3090來實(shí)現(xiàn)。邏輯控制電路包括:命令寄存器、采樣點(diǎn)數(shù)/采樣頻率設(shè)定寄存器、中斷申請(qǐng)信號(hào)發(fā)生器、將a/d結(jié)果寫入fifo ram的控制電路、usb及其fifo和a/d fifo狀態(tài)檢測(cè)電路。
2.3 usb部分設(shè)計(jì)
tms320vc33與usb控制器an2136sc之間通過雙向fifo 交換數(shù)據(jù),握手信號(hào)使用an2136sc的pc口。當(dāng)usb為接收緩沖器時(shí),dsp讀,an2136sc寫;當(dāng)usb為發(fā)送緩沖器時(shí),dsp寫,an2136sc讀。pc(0)~(3)用作二者的讀寫通道,方向可編程確定; pc(4)用于tms320vc33向an2136sc申請(qǐng)中斷;pc(5)用于an2136sc復(fù)位usb接收緩沖器;pc(6)用于usb接收器滿標(biāo)志,若接收器已滿則禁止an2136進(jìn)一步對(duì)usb接收緩沖器寫入;pc(7)用于usb發(fā)送緩沖器空標(biāo)志,若緩沖器已空則禁止an2136sc進(jìn)一步對(duì)usb發(fā)送緩沖器讀出。
3 系統(tǒng)軟件設(shè)計(jì)
系統(tǒng)軟件主要包括五大部分:dsp程序(用于a/d采樣控制、數(shù)據(jù)處理、dsp與usb總線之間的信息交換)、usb總線驅(qū)動(dòng)程序、usb固件程序(用于pc機(jī)與dsp之間的數(shù)據(jù)交換與處理)、主機(jī)應(yīng)用程序、fpga中對(duì)地址的譯碼程序和各個(gè)寄存器的實(shí)現(xiàn)程序。
3.1 dsp程序
dsp程序首先對(duì)dsp進(jìn)行初始化(中斷初始化、片外選通信號(hào)初始化、設(shè)定系統(tǒng)默認(rèn)的采樣點(diǎn)數(shù)/采樣頻率等),然后等待中斷(中斷0的程序主要用于對(duì)a/d數(shù)據(jù)的讀取和處理,并向主機(jī)發(fā)送處理后的數(shù)據(jù);中斷1的程序主要用于分析主機(jī)的命令,針對(duì)主機(jī)的命令設(shè)定系統(tǒng)的采樣點(diǎn)數(shù)/采樣頻率,并發(fā)送主機(jī)需要的數(shù)據(jù))。程序框圖如圖2所示。
3.2 usb固件程序
固件程序代碼由usb芯片集成的加強(qiáng)型8051單片機(jī)處理。當(dāng)ez-usb設(shè)備連接到usb口時(shí),主機(jī)進(jìn)行總線枚舉,首先根據(jù)設(shè)備id使用系統(tǒng)程序?qū)⒐碳螺d到芯片內(nèi)部,然后進(jìn)行重枚舉,固件作為用戶的功能設(shè)備開始執(zhí)行。cypress公司提供的固件程序框架,用來完成控制傳輸工作和大部分的數(shù)據(jù)傳輸工作。本接口電路的固件程序就是基于此固件框架開發(fā)的,并使用keil c進(jìn)行編譯。usb接收的dsp中斷程序如下:
void isr_idt(void) interrupt int0_vect
{fastxfr = 0x40; 使能快速傳模式
autoptrl=lsb((word)&in4buf); 將自動(dòng)指針指向端點(diǎn)4緩沖
熱門點(diǎn)擊
- 基于DSP和USB的高速數(shù)據(jù)采集與處理系統(tǒng)設(shè)
- 賽靈思推出Virtex-5 SXT240T高
- 基于DSP的音頻會(huì)議信號(hào)合成算法研究
- Xilinx推出全球性能最高的可配置DSP解
- TI推出業(yè)界最低功耗可編程DSP
推薦技術(shù)資料
- 業(yè)余條件下PCM2702
- PGM2702采用SSOP28封裝,引腳小而密,EP3... [詳細(xì)]
- 電源管理 IC (PMIC)&
- I2C 接口和 PmBUS 以及 OTP/M
- MOSFET 和柵極驅(qū)動(dòng)器單
- 數(shù)字恒定導(dǎo)通時(shí)間控制模式(CO
- Power Management Buck/
- 反激變換器傳導(dǎo)和輻射電磁干擾分析和抑制技術(shù)
- 多媒體協(xié)處理器SM501在嵌入式系統(tǒng)中的應(yīng)用
- 基于IEEE802.11b的EPA溫度變送器
- QUICCEngine新引擎推動(dòng)IP網(wǎng)絡(luò)革新
- SoC面世八年后的產(chǎn)業(yè)機(jī)遇
- MPC8xx系列處理器的嵌入式系統(tǒng)電源設(shè)計(jì)
- dsPIC及其在交流變頻調(diào)速中的應(yīng)用研究