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