摘? 要: 提出了一種基于DSP的高速數(shù)據(jù)采集系統(tǒng)的設(shè)計(jì)方案,對(duì)其中高速A/D,、高速緩存,、DSP控制以及數(shù)據(jù)通訊接口等內(nèi)容進(jìn)行了討論,提出了更為有效的同步控制方式,。該設(shè)計(jì)方案電路簡(jiǎn)單,、可進(jìn)行多通道擴(kuò)展,、具有一定的通用性,。
關(guān)鍵詞: DSP? 高速A/D? FIFO? 異步串行通訊
?
在電子測(cè)量中,常常需要對(duì)高速信號(hào)進(jìn)行采集與處理,。例如,在光傳感技術(shù)中,對(duì)光脈沖散射信號(hào)的測(cè)量;在雷達(dá)工程中,對(duì)電磁脈沖信號(hào)的測(cè)量等,就需要對(duì)高速信號(hào)進(jìn)行采集與處理,而且對(duì)此類高速信號(hào)的測(cè)量,往往對(duì)數(shù)據(jù)采集與處理系統(tǒng)提出嚴(yán)格的要求,。
本文設(shè)計(jì)并實(shí)現(xiàn)了一種基于DSP的高速數(shù)據(jù)采集與處理系統(tǒng),。該設(shè)計(jì)方案電路簡(jiǎn)單,、可靠性好、具有一定的通用性,、可以進(jìn)行多通道擴(kuò)展,。系統(tǒng)主要包括高速A/D、高速緩存,、DSP處理器,、通訊接口四個(gè)部分,其結(jié)構(gòu)示意圖如圖1所示。
?
?
1? 同步與過程控制
在通常的數(shù)據(jù)采集系統(tǒng)中,測(cè)量過程是通過對(duì)A/D變換器的控制來實(shí)現(xiàn)的,。但對(duì)于一個(gè)高速采集系統(tǒng)而言,這種方法有局限性,。因?yàn)楦咚貯/D建立穩(wěn)定的工作狀態(tài)需要相當(dāng)長(zhǎng)時(shí)間,頻繁的改變A/D的工作狀態(tài)會(huì)影響測(cè)量的精度,嚴(yán)重時(shí)會(huì)造成信號(hào)的失真。
在本設(shè)計(jì)方案中,同步命令并不直接作用于高速A/D,。自通電時(shí)起,A/D和時(shí)鐘電路始終處于工作狀態(tài),同步命令通過對(duì)高速FIFO的寫入端的控制,即允許或禁止對(duì)FIFO寫入,實(shí)現(xiàn)對(duì)采樣數(shù)據(jù)的取舍,。與A/D相比,高速FIFO的寫有效時(shí)間為3ns,對(duì)同步和過程控制更為有利。
一次完整的測(cè)量過程是從DSP發(fā)出同步命令開始的,。同步命令一方面觸發(fā)發(fā)射機(jī)工作,另一方面允許對(duì)FIFO寫入,對(duì)采樣的數(shù)據(jù)進(jìn)行存儲(chǔ),。當(dāng)存儲(chǔ)的數(shù)據(jù)到達(dá)預(yù)定的數(shù)量時(shí),FIFO的特定狀態(tài)位置位,引發(fā)DSP外部中斷。在中斷服務(wù)程序中,DSP禁止對(duì)FIFO寫入,、中斷數(shù)據(jù)的存儲(chǔ),同時(shí)復(fù)位該狀態(tài)位,。然后讀取數(shù)據(jù),待完成數(shù)據(jù)處理過程之后,DSP對(duì)FIFO復(fù)位清零。此即完成一次測(cè)量,。
2 高速A/D轉(zhuǎn)換器
高速A/D轉(zhuǎn)換器選用AD9432,采樣位數(shù)12位,最高采樣速率105MHz,模擬帶寬500MHz,差分信號(hào)輸入,差分外部時(shí)鐘,片內(nèi)帶有輸入緩存和采樣/保持器,12位并行數(shù)據(jù)輸出,52引腳LQFP封裝,。
由于AD9432要求差分輸入形式,因此對(duì)于單端輸入信號(hào)必須經(jīng)過圖2所示的信號(hào)調(diào)理電路變換為差分形式。圖中,AD8138為差分輸出的高精度運(yùn)算放大器。
?
時(shí)鐘對(duì)于一個(gè)高速數(shù)據(jù)采集系統(tǒng)而言是十分重要的,。在最高采樣頻率下,為了保證測(cè)量的精度,AD9432要求時(shí)鐘波形的上升沿和下降沿小于2ns,這樣的標(biāo)準(zhǔn)在TTL邏輯下難以實(shí)現(xiàn),但利用ECL器件可以有效地解決此問題,圖3為差分時(shí)鐘電路,。
?
需要說明的是:ECL器件的驅(qū)動(dòng)能力有限,一路差分時(shí)鐘輸出一般只供一個(gè)器件使用。
3 高速緩存FIFO
高速緩存是系統(tǒng)中的一個(gè)關(guān)鍵環(huán)節(jié),根據(jù)系統(tǒng)的需求我們選用CY7C4245,。
CY7C4245是高速,、低功耗4K×18 FIFO存儲(chǔ)器,讀寫周期為10ns,具有獨(dú)立的18位輸入、輸出接口和讀,、寫時(shí)鐘信號(hào),可以實(shí)現(xiàn)同步讀寫操作,。CY7C4245提供五種狀態(tài)指示:Empty、Almost Empty,、Half Full,、Almost Full、Full,分別代表當(dāng)前數(shù)據(jù)存儲(chǔ)的深度,。其中Almost Empty 和Almost Full 為可編程空滿狀態(tài)位,可根據(jù)系統(tǒng)的需求對(duì)存儲(chǔ)進(jìn)行設(shè)定,。FIFO的狀態(tài)信息代表了已采樣的點(diǎn)數(shù),當(dāng)采樣點(diǎn)數(shù)達(dá)到預(yù)期的數(shù)量時(shí),相應(yīng)的狀態(tài)位置位,觸發(fā)DSP的外部中斷,中止測(cè)量過程,由 DSP讀取數(shù)據(jù)進(jìn)行處理。
4 DSP處理器
4.1 TMS320F206的特點(diǎn)
DSP是整個(gè)采集系統(tǒng)的核心,本文中選用 TMS320F206,。該產(chǎn)品屬于TI公司采用CMOS集成電路技術(shù)生產(chǎn)的TMS320C2XX系列,設(shè)計(jì)結(jié)構(gòu)及其匯編指令集與TMS320C5X相兼容,其主要特點(diǎn)如下:
(1)運(yùn)算速度可以達(dá)到40MIPS;
(2)4.5K片內(nèi)RAM和32K片內(nèi)FLASH存儲(chǔ)器;
(3)32位算術(shù)邏輯單元和32位累加器;
(4)16位地址總線和16位數(shù)據(jù)總線;
(5)具有一個(gè)異步串行通訊接口和一個(gè)同步串行通訊接口,異步串行口具有波特率自動(dòng)檢測(cè)功能;
(6)價(jià)格低廉,。
4.2 數(shù)字信號(hào)處理
數(shù)字信號(hào)處理是DSP應(yīng)用的主要方面。DSP所提供的數(shù)學(xué)運(yùn)算能力和運(yùn)算速度遠(yuǎn)遠(yuǎn)高于單片機(jī),具有更為豐富的指令集和更大的內(nèi)存空間,可以實(shí)現(xiàn)較為復(fù)雜的數(shù)學(xué)算法,。
DSP首先要完成數(shù)制轉(zhuǎn)換,AD9432的量程為-500mV~+500mV,。對(duì)于負(fù)電平,采樣數(shù)據(jù)以二進(jìn)制補(bǔ)碼的形式輸出,需將12位補(bǔ)碼轉(zhuǎn)換為16位二進(jìn)制整數(shù);更為重要的是DSP要實(shí)現(xiàn)系統(tǒng)所要求的數(shù)字信號(hào)處理算法,如快速維納濾波、FFT等,。
5 數(shù)據(jù)通訊
5.1? 異步串行通訊
數(shù)據(jù)采集系統(tǒng)與主控計(jì)算機(jī)之間的數(shù)據(jù)交換采用異步串行通訊方式,。TMS320F206帶有一個(gè)異步串行通訊端口,在40MHz外頻條件下,最高傳輸速率達(dá)到2.5Mbit/s。發(fā)送和接收使用獨(dú)立的緩沖區(qū),可以實(shí)現(xiàn)全雙工工作方式,異步串行口的工作框圖如圖4所示,。
?
其中,AXSR為異步串行發(fā)送移位寄存器;ARSR為異步串行接收移位寄存器;ADTR為異步數(shù)據(jù)發(fā)送接收寄存器,TXRXINT為發(fā)送接收中斷(硬件中斷),。
此外,TMS320F206有一個(gè)同步串行口,用于多機(jī)并行工作方式下DSP之間的數(shù)據(jù)交換。在40MHz外頻時(shí),其最高傳輸速率為20Mbit/s,。
5.2 波特率設(shè)置
TMS320F206有一個(gè)16位寄存器BRD用于設(shè)定異步串行通訊所使用的波特率,其數(shù)值計(jì)算公式如下:
表1列出了不同外部時(shí)鐘頻率下常用波特率對(duì)應(yīng)的BRD數(shù)值。
?
5.3?串行通信軟件設(shè)計(jì)
為了提高效率,數(shù)據(jù)的發(fā)送和接收均采用中斷方式,串行通訊波特率為57600,匯編程序代碼如下:
串行口初始化:
setc INTM????????????????????????? ;禁止所有中斷
splk #0ffffh,, ifr???????????????? ;清中斷
splk #0000h,, 60h??????
out 60h, wsgr????????????????? ?? ;清等待狀態(tài)
splk #0c180h,, 61h
out 61h,, aspcr???????????????? ?? ;復(fù)位異步串口,設(shè)發(fā)送、接收
?????????????????????????????????? ????? 中斷,一個(gè)停止位
splk #0e180h,, 61h
out 61h,, aspcr?????????????????? ?;配置異步串口
splk #4fffh,62h
out 62h,iosr????????????????????? ;復(fù)位異步串口各狀態(tài)標(biāo)志
splk #002Bh,, 63h
out 63h,, brd????????????????????? ;設(shè)波特率為57600
splk #020h, imr ????????????????? ;允許異步串行中斷
mar *,, ar1
lar ar1,, #rxbuf?????????? ??????? ;設(shè)緩沖區(qū)指針
mar *,ar0
lar ar0,, #size????????????? ?? ?? ;設(shè)緩沖區(qū)大小
發(fā)送中斷服務(wù)程序:
?????? ..........
splk #0ffffh,, ifr???????????????? ;關(guān)中斷
out *+, adtr????????????????????? ;發(fā)送數(shù)據(jù)
mar *,,ar0?????????????????????????;發(fā)送計(jì)數(shù)
banz skip,, ar1???????? ?????????? ;若仍有數(shù)據(jù),發(fā)送
???????????????????????????????????????緩沖區(qū)指針加1
skip:???? splk #0020h, ifr???????;允許中斷
clrc INTM??????????????????????????;清中斷
ret??
???????????????????????????
接收中斷服務(wù)子程序:
?????? ............
splk #0ffffh,, ifr???????????????? ;關(guān)中斷
in 68h,,iosr????????????????????????
bit 68h,7?????????????????????????????????
bcnd skip,,ntc?????????????????????;檢測(cè)接收標(biāo)志位
in *,, adtr????????????????????????;讀數(shù)據(jù)
mar *,ar0
banz skip,, ar1?????????????????? ?;接收數(shù)據(jù)計(jì)數(shù)?????
............
skip:???? splk #0020h,,ifr??????? ;開中斷
clrc INTM
ret
其中ifr為中斷標(biāo)志寄存器;aspcr為異步串行口控制寄存器;imr為中斷屏蔽寄存器;iosr為I/O狀態(tài)寄存器;wsgr為等待狀態(tài)寄存器。
6 RS232接口電路
該系統(tǒng)中DSP與主控計(jì)算機(jī)的數(shù)據(jù)通訊采用RS232標(biāo)準(zhǔn),驅(qū)動(dòng)電路選用MAX232A芯片,。MAX232A功耗低,、集成度高、片內(nèi)集成電荷泵,只需外接+5V電源,具有兩個(gè)發(fā)送接收通道,接口電路簡(jiǎn)單,、可靠性好,。RS232驅(qū)動(dòng)電路如圖5所示。
?
?
7 系統(tǒng)的擴(kuò)展
本設(shè)計(jì)方案電路簡(jiǎn)單,、易于實(shí)現(xiàn),、具有一定的通用性,在此基礎(chǔ)上可以擴(kuò)展為同步采樣的多通道采集系統(tǒng),如圖6所示。圖中,主從DSP之間的數(shù)據(jù)通訊采用同步串行方式,。
?
?
需要注意的是:對(duì)于多通道同步采樣系統(tǒng),應(yīng)盡可能地保證各通道參數(shù)的一致性,。
根據(jù)本文內(nèi)容設(shè)計(jì)并實(shí)現(xiàn)的雙通道同步數(shù)據(jù)采集與處理系統(tǒng)已成功應(yīng)用于分布式光纖測(cè)量系統(tǒng),取得了很好的效果,實(shí)踐證明本文的設(shè)計(jì)是可行有效的。
?
參考文獻(xiàn)
1 DSP TMS320C2XX用戶手冊(cè).TI公司,1997
2 Specification for AD9432.Analog Device Inc.1998
3 邵鐘武,柴慶忠.數(shù)據(jù)采集系統(tǒng).石油大學(xué)出版社,1994