DSP與AD轉(zhuǎn)換器的接口電路設(shè)計(jì)
掃描二維碼
隨時(shí)隨地手機(jī)看文章
摘要:在以DSP為核心的數(shù)字信號(hào)處理系統(tǒng)中,模數(shù)轉(zhuǎn)換是系統(tǒng)重要的組成部分。作者以德州儀器公司的TMS320C6203B與ADS5422為例,詳細(xì)說明了DSP與AD轉(zhuǎn)換器的接口電路設(shè)計(jì)方法。最后還介紹了DSP控制數(shù)據(jù)采集的軟件流程。
關(guān)鍵詞:DSP;AD轉(zhuǎn)換器;接幾電路
0 引言
在以DSP為核心的數(shù)字信號(hào)處理系統(tǒng)中,AD轉(zhuǎn)換是系統(tǒng)重要的組成部分。因?yàn)橥枰M(jìn)行信號(hào)分析、處理的對(duì)象是模擬量,例如語(yǔ)音信號(hào)、各種傳感器輸出的模擬信號(hào)。這些信號(hào)經(jīng)過放大、濾波及A/D轉(zhuǎn)換后,從模擬信號(hào)轉(zhuǎn)換為數(shù)字信號(hào),再由DSP芯片對(duì)這些數(shù)字信號(hào)按照某種算法進(jìn)行處理。
德州儀器公司(TI)的TMS320C6000系列DSP是目前廣泛使用的數(shù)字信號(hào)處理芯片,相應(yīng)地,TI公司提供了一系列與其DSP相配套的A/D、D/A轉(zhuǎn)換器。本文以TI公司的TMS320C6203B型DSP與高速ADC—ADS5422為例,詳細(xì)說明了DSP與AD轉(zhuǎn)換器的接口電路設(shè)計(jì)方法以及DSP控制數(shù)據(jù)采集的軟件程序流程。
1 TMS320C6203B型DSP簡(jiǎn)介
TMS320C6203B片內(nèi)有8個(gè)并行的處理單元,分別為相同的兩組。DSP的體系結(jié)構(gòu)采用甚長(zhǎng)指令字(VLIW)結(jié)構(gòu),單指令字長(zhǎng)為32bit,8個(gè)指令組成一個(gè)指令包,總字長(zhǎng)為256bit。芯片內(nèi)部設(shè)置了專門的指令分配模塊,可以將每個(gè)256bit的指令包同時(shí)分配到8個(gè)處理單元,并由8個(gè)單元同時(shí)運(yùn)行。
該型DSP的最高時(shí)鐘頻率為300MHz,考慮到本系統(tǒng)高頻電路的實(shí)際情況,設(shè)置時(shí)鐘頻率為250MHz,由于TMS320C6203B內(nèi)部采用8條指令并行處理技術(shù),這樣使得DSP內(nèi)部指令周期達(dá)到2GHz,可以滿足ADS5422的采樣速度要求。此外,DSP內(nèi)部具有4Mbit的數(shù)據(jù)空間和3Mbit的程序空間,也滿足數(shù)據(jù)采集系統(tǒng)數(shù)據(jù)存儲(chǔ)的需要。
2 ADS5422型模數(shù)轉(zhuǎn)換器簡(jiǎn)介
ADS5422的內(nèi)部結(jié)構(gòu)如圖1所示,ADS5422的時(shí)鐘信號(hào)由CLK從外部引入,由于ADS5422的內(nèi)置時(shí)鐘電路,使得ADS5422對(duì)各種時(shí)鐘都兼容,包括正弦波或者方波、TTL電平或者CMOS電平、單端時(shí)鐘信號(hào)或者差分時(shí)鐘信號(hào)。外部模擬信號(hào)從IN和IN(-)引腳輸入,首先經(jīng)過一個(gè)高帶寬的線性跟隨器(T/H)單元,確保AD具有很高的無寄生動(dòng)態(tài)響應(yīng),經(jīng)過跟隨器后的信號(hào)到達(dá)14位的直通型AD,將模擬信號(hào)轉(zhuǎn)換為數(shù)字信號(hào),同時(shí)ADS5422內(nèi)部的梯度選擇單元以及模式選擇單元控制信號(hào)轉(zhuǎn)變的方式,數(shù)字信號(hào)經(jīng)過邏輯校驗(yàn)單元,到達(dá)三態(tài)數(shù)據(jù)輸出寄存器輸出。
ADS5422的最高采樣頻率為62Msample/s,具有14位并行接口,最高信噪比為72dB??梢圆捎貌罘只蛘邌味四M信號(hào)輸入方式,輸入電壓峰峰值從2V到4V可選。該芯片采用單5V電源供電,數(shù)字量輸出可以直接和5V或者3.3V的CMOS芯片連接,并且有單獨(dú)的滿量程標(biāo)志引腳和有效信號(hào)輸出引腳。
3 模擬信號(hào)輸入電路
ADS5422的最高采樣頻率達(dá)到62MHz,模擬信號(hào)輸入可以采取單端輸入方式或者差分輸入方式兩種。本系統(tǒng)采取差分輸入方式,可以盡量減少信號(hào)噪聲以及電磁的干擾,尤其是采用差分輸入方式可以將所有的偶次諧波通過正反兩個(gè)輸入信號(hào)基本上互相抵消。
[!--empirenews.page--]
ADS5422的模擬信號(hào)差分輸入方式需要同時(shí)使用IN和引腳,其硬件連接如圖2所示。首先使用放大器OPA687以及RF變壓器將單端信號(hào)轉(zhuǎn)換成差分信號(hào),然后輸入ADS5422,其中ADS5422的公共端CM和RF變壓器的公共端連接。為了增強(qiáng)信號(hào)的穩(wěn)定性,在ADS5422的每個(gè)信號(hào)的輸入前加上RC元件組成的低通濾波電路,圖2中Rt為50 Ω,Rin為22 Ω,Cin為10pF。
4 時(shí)鐘輸入電路
ADS5422的時(shí)鐘輸入也有單端和差分兩種輸入方式,對(duì)于單端輸入方式,只需要將時(shí)鐘信號(hào)連接到ADS5422的CLK引腳,CLK引腳通過電容接地就可以了。差分輸入方式與模擬信號(hào)的差分輸入方式基本上相同,同時(shí)還需要為一些必要的RC電路以及RF變壓器去除噪聲干擾。本系統(tǒng)采用單端輸入方式,由DSP的定時(shí)器輸出功能為ADS5422提供穩(wěn)定的時(shí)鐘信號(hào),從而避免差分時(shí)鐘輸入所需要的一些外圍電路。圖3為單端時(shí)鐘輸入的連接圖。
5 參考信號(hào)輸入電路
ADS5422有3種可選擇的內(nèi)部參考電壓信號(hào),分別為1V、1.5V和2V,對(duì)應(yīng)模擬輸入信號(hào)的峰-峰值為2V、3V和4V。內(nèi)部參考電壓的選擇由SEL1和SEL2引腳確定,SEL1和SEL2引腳的狀態(tài)決定參考電壓引腳REFT、REFB以及VREF引腳的電壓。表1為不同參考電壓下各個(gè)引腳的狀態(tài)。
[!--empirenews.page--]
6 模數(shù)轉(zhuǎn)換器的采樣和數(shù)據(jù)輸出
6.1 采樣
只需要提供給ADS5422時(shí)鐘信號(hào),ADS5422就會(huì)根據(jù)這個(gè)時(shí)鐘信號(hào)開始采樣。但由于ADS5422是高速AD,一般其輸出的數(shù)據(jù)信號(hào)和模擬信號(hào)有10個(gè)時(shí)鐘周期的延遲。還有一個(gè)需要注意的地方,就是該芯片啟動(dòng)的時(shí)間相當(dāng)長(zhǎng),這也是高速AD轉(zhuǎn)換器的普遍缺點(diǎn)。如果將一個(gè)60MHz的時(shí)鐘輸出到ADS5422,ADS5422就會(huì)馬上開始采樣,但此時(shí)的采樣頻率低于60MHz,然后緩慢地上升到60MHz,直至穩(wěn)定。這是ADS5422的時(shí)鐘建立時(shí)間,一般需要5ms。如果時(shí)鐘為60MHz,則前500個(gè)采樣數(shù)據(jù)的采樣頻率為未知,不能使用。ADS5422的采樣時(shí)序如圖5所示。圖中所示各個(gè)時(shí)間如表2所示。
ADS5422有兩種數(shù)據(jù)輸出格式,一種是直接二進(jìn)制編碼方式,另一種是二進(jìn)制補(bǔ)碼方式。直接二進(jìn)制方式的最高位仍然是數(shù)據(jù)位,而二進(jìn)制補(bǔ)碼方式的最高位為符號(hào)位。兩種編碼方式通過BTC引腳來設(shè)置,如果該引腳為高,則為二進(jìn)制補(bǔ)碼方式,否則為直接二進(jìn)制方式。根據(jù)模擬信號(hào)輸入方式的不同,編碼所代表的電壓值也不相同。
6.2 數(shù)據(jù)輸出
ADS5422的數(shù)據(jù)輸出可以輸出使能引腳屏蔽。一旦啟動(dòng)了AD采樣,AD將持續(xù)采樣,如果需要禁止數(shù)據(jù)輸出,則將引腳置高,這樣處理器將不會(huì)讀取AD的數(shù)據(jù)。此外,ADS5422還提供一個(gè)數(shù)據(jù)溢出引腳OVR,如果模擬信號(hào)輸入超過AD的范圍,AD的數(shù)據(jù)輸出將一直為正的或者負(fù)的最大值,在這種情況下,OVR引腳將持續(xù)輸出高電平通知處理器數(shù)據(jù)溢出。
7 ADS5422和DSP的硬件連接
ADS5422采集數(shù)據(jù)后,由TMS320C6203B讀入數(shù)據(jù)進(jìn)行算法處理,并將處理后的結(jié)果送到PC存儲(chǔ)并顯示。ADS5422和DSP的硬件連接如圖6所示。
使用DSP的32位外部擴(kuò)展總線接口XBUS連接ADS5422,實(shí)現(xiàn)XBUS從ADS5422讀取數(shù)據(jù)并存儲(chǔ)在DSP的內(nèi)部RAM中,由于ADS5422只有14位數(shù)據(jù),實(shí)際上只需要使用外部擴(kuò)展總線的低14位。使用DSP的定時(shí)器輸出信號(hào)TOUT0提供精確穩(wěn)定的時(shí)鐘給ADS5422,控制AD的采樣頻率,并且該時(shí)鐘可根據(jù)定時(shí)器參數(shù)由軟件設(shè)置,增加AD采樣頻率的靈活性。在DSP內(nèi)部寄存器中,將多通道緩沖串口MBSP的引腳配置成通用的I/O引腳,使用其中的DR0、DR1以及DX0引腳讀入或者寫入ADS5422的控制信號(hào)OVR、DV以及。
[!--empirenews.page--]
8 軟件設(shè)計(jì)
DSP控制數(shù)據(jù)采集的軟件程序流程如圖7所示。設(shè)置定時(shí)器參數(shù)提供TOUT0信號(hào)到ADS5422,ADS5422收到時(shí)鐘信號(hào)后開始采樣。由于高速AD特有的延遲特性,在收到采樣信號(hào)后,ADS5422至少需要在10個(gè)信號(hào)周期后才可以提供采樣數(shù)據(jù),所以設(shè)置好AD的時(shí)鐘后,讓ADS5422一直工作于采樣狀態(tài),通過控制ADS5422的引腳控制數(shù)據(jù)的輸出,當(dāng)DSP檢測(cè)到DV信號(hào)為高后,打開DSP的DMA控制器讀入數(shù)據(jù),讀入一批數(shù)據(jù)后設(shè)置引腳為高,禁止數(shù)據(jù)輸出,DSP開始算法處理,并將處理后的結(jié)果輸出或者保存,然后設(shè)置引腳為低,ADS5422數(shù)據(jù)輸出,開始下一次數(shù)據(jù)處理。
詳細(xì)的程序編寫流程如圖8所示。