基于A/D和DSP的高速數(shù)據(jù)采集技術(shù)
2.3 FIFO存儲器IDT72V253
FIFO存儲器允許數(shù)據(jù)以不同的速率寫入和讀出,IDT72V253是一種高速的4 096字×18位的FIFO器件,如圖3所示。其最高頻率可達166 MHz,數(shù)據(jù)寫入數(shù)據(jù)讀出時間均為10 ns。當(dāng)鎖入的字數(shù)超過4 096時,存儲器進人滿狀態(tài)。FIFO的狀態(tài)可通過時間和狀態(tài)位——滿(FF/IR)、空(EF/OR)、半滿(HF)、PAE和PAF來獲得。當(dāng)存儲器滿時,FF/IR輸出為低電平;當(dāng)存儲器為空時,EF/OR輸出為低電平。當(dāng)FIFO存有不少于2 048字內(nèi)容時,HF輸出為高。PAE和PAF狀態(tài)位是可編程狀態(tài)位。當(dāng)寫使能端WEN電平變低時,待送入FIFO的數(shù)據(jù)在WCLK時鐘的同步下送人FIFO,當(dāng)?shù)谝粋€字被寫入時,EF/OR引腳的電平變?yōu)楦唠娖?當(dāng)送入的數(shù)據(jù)超過(n+1)(n為PAE的偏置值)個字時,可編程狀態(tài)位PAE變?yōu)楦唠娖?當(dāng)有(D/2)+1(2 049)個字寫入時,HF引腳電平變低;隨著數(shù)據(jù)的繼續(xù)寫入,會引起PAF引腳電平變低。如果沒有數(shù)據(jù)讀出,當(dāng)有(D—m)(4 096—m)個字寫入時,PAF引腳電平變低。當(dāng)FIFO數(shù)據(jù)寫滿時(對于IDT72V253,就是寫入4 096個字),FF/IR位變?yōu)榈碗娖?阻止數(shù)據(jù)的進一步寫入。當(dāng)FIFO寫滿時,第一個讀操作將會引起FF位電平變高,后來的讀操作將會引起HF和PAF引腳電平變高。當(dāng)FIFO里面只有n個字時,PAE引腳電平變低;當(dāng)最后一個字從FIFO讀出時,EF引腳電平變低,阻止進一步的讀操作。
3 高速A/D轉(zhuǎn)換器與DSP的接口設(shè)計
3.1 接口設(shè)計
AD6644是14位模數(shù)轉(zhuǎn)換器,IDT72V253是18位FIFO,TMS320C6713 DSP的數(shù)據(jù)總線是32位,所以IDT72V253和TMS320C6713只需接低14位的D0~D13。由于FIFO的先入先出特殊結(jié)構(gòu),系統(tǒng)中不需要任何地址線的參與,大大簡化了電路。A/D采樣所得數(shù)據(jù)要實時送入FIFO,因此兩者的寫時鐘頻率必須一樣,且AD6644和IDT72V253的最小時鐘輸入都是10 ns,操作起來統(tǒng)一方便。CPLD選用Xilinx公司的xc95144xl-tql44,用它實現(xiàn)四二輸入與門,把TMS320C6713的通用緩沖串口(Mcbsp)中的DX、FSX配置為通用輸出口(GPlO),對這個四二輸入與門的通斷進行控制,從而對A/D轉(zhuǎn)換器和FIFO的寫時鐘進行控制。由于外部FIFO占用著TMS320C6713的CE0空間,所以讀信號的邏輯關(guān)系為:R=CE0+ARE,TMS320C6713的CE0和ARE相“與”后與IDT72V253的RCLK相連,為FIFO提供讀時鐘(CE0和ARE相“與”由xc95144xl-tql44完成)。TMS320C6713的CLKX與IDT72V253的復(fù)位信號PRS相連用以復(fù)位FIFO。接口框圖如圖4所示。
3.2 時序設(shè)計
通過兩個“與”門分別對A/D轉(zhuǎn)換器和FIFO的寫時鐘進行控制,因為AD6644從模擬輸入開始到該次轉(zhuǎn)換的數(shù)據(jù)出現(xiàn)在輸出口上需要4個時鐘周期,并且在高速度采樣時導(dǎo)線的延時效果會非常明顯,若把A/D轉(zhuǎn)換器和FIFO的時鐘連在一起,很可能過多地采到無效數(shù)據(jù)。分開控制以后,通過軟件延時,可以方便地分別對A/D轉(zhuǎn)換器和FIFO的時鐘進行控制,調(diào)試起來相當(dāng)方便,力圖把采到無效數(shù)據(jù)的位數(shù)減至最低。AD6644的工作時序如圖5所示,IDT72V253寫時序如圖6所示。
評論