基于DMA方式的實(shí)時(shí)數(shù)據(jù)采集處理系統(tǒng)設(shè)計(jì)
1 引言
本文引用地址:http://m.butianyuan.cn/article/152155.htm當(dāng)前,越來越多的設(shè)計(jì)應(yīng)用領(lǐng)域要求具有高精度的A/D轉(zhuǎn)換和實(shí)時(shí)處理功能。在實(shí)時(shí)數(shù)據(jù)采集處理系統(tǒng)設(shè)計(jì)中,一般需要考慮數(shù)據(jù)采集以及對(duì)采集數(shù)據(jù)的處理。而對(duì)于大數(shù)據(jù)量的實(shí)時(shí)數(shù)據(jù)采集處理系統(tǒng)來說,保持?jǐn)?shù)據(jù)高速傳輸也是該系統(tǒng)性能的關(guān)鍵因素。
采用TMS320VC5402和轉(zhuǎn)換器ADuC841構(gòu)成雙CPU處理器平臺(tái),充分利用TMS320VC5402的對(duì)大容量數(shù)據(jù)和復(fù)雜算法的處理能力,ADuC841接口的控制能力以及各自擁有的DMA控制器構(gòu)建實(shí)時(shí)數(shù)據(jù)采集處理系統(tǒng)。雙CPU通過DMA方式實(shí)現(xiàn)數(shù)據(jù)交換,將數(shù)據(jù)傳輸和系統(tǒng)控制分開,提高了數(shù)據(jù)傳輸速度,降低了處理器負(fù)擔(dān),提高系統(tǒng)運(yùn)行效率。采用此解決方案。大大提高了系統(tǒng)的信號(hào)采集和處理能力。
2系統(tǒng)硬件設(shè)計(jì)
2.1 ADuC841簡(jiǎn)介
ADuC841是ADI公司ADuC84X系列中性能最完善的一款微轉(zhuǎn)換器,它具有單周期指令,20 MI/s的8052內(nèi)核;內(nèi)置一個(gè)8通道、高速420 Ks/s、高精度自校正、12位逐次逼近的ADC,具有DMA控制:2通道12位DAC;2通道PWM方式∑-△型DAC;片上15 ppm/℃高穩(wěn)定電壓基準(zhǔn);片上溫度傳感器;62 KB片內(nèi)Flash/EE程序存儲(chǔ)器;4 KB的片內(nèi)Flash/EE數(shù)據(jù)存儲(chǔ)器。還包括看門狗定時(shí)器和電源監(jiān)控器、ADC與數(shù)據(jù)存儲(chǔ)器之間的DMA方式、存儲(chǔ)保護(hù)功能、通用異步串行收發(fā)器(UART)、SPI和I2C總線接口等功能模塊。
ADuC841片內(nèi)的ADC的轉(zhuǎn)換速率為2.38μs/次(420 kHz的采樣率)。當(dāng)A/D轉(zhuǎn)換時(shí),ADuC841必須在2μs內(nèi)讀取A/D轉(zhuǎn)換結(jié)果并將其傳輸且存儲(chǔ)到外部存儲(chǔ)器中以便后續(xù)處理,否則將導(dǎo)致下一個(gè)轉(zhuǎn)換結(jié)果出現(xiàn)后丟失前一個(gè)轉(zhuǎn)換結(jié)果。由于中斷服務(wù)子程序中存儲(chǔ)轉(zhuǎn)換結(jié)果和微轉(zhuǎn)換器跳轉(zhuǎn)到ADC的中斷服務(wù)子程序都需要時(shí)間,因此很多應(yīng)用無法響應(yīng)高的中斷速率。采用ADC的DMA方式傳輸數(shù)據(jù)能夠解決上述問題,通過設(shè)置特殊功能寄存器ADCCON2中的中斷響應(yīng)位即可使能ADC的DMA方式。這種方式下,無需CPU的軟件中斷響應(yīng)干預(yù),可通過硬件直接檢測(cè)相應(yīng)控制位就能將ADC的轉(zhuǎn)換結(jié)果直接輸出并存儲(chǔ)到片外的靜態(tài)RAM中,并提供了一個(gè)高速數(shù)據(jù)傳輸通道,從而保證了ADC能以最高速率(420 kHz)完成數(shù)據(jù)采樣和轉(zhuǎn)換,并進(jìn)行高速信號(hào)傳輸。
2.2數(shù)字信號(hào)處理器TMS320VC5402簡(jiǎn)介
TMS320VC5402 是 TI 公 司 的TMS320C5000系列之一,它采用改進(jìn)的哈佛結(jié)構(gòu),具有分離的程序總線和數(shù)據(jù)總線,采用4級(jí)流水線作業(yè),其運(yùn)行速度可達(dá)100 MI/S,具有高速運(yùn)行的特點(diǎn)。同時(shí)提供豐富的指令集,增強(qiáng)的模塊化結(jié)構(gòu)設(shè)計(jì),具有通用性,拓展了應(yīng)用領(lǐng)域。TMS320VC5402可尋址3個(gè)獨(dú)立的存儲(chǔ)空間,包括1 MB×16的程序空間,64 KB×16的數(shù)據(jù)空間以及64 KB×16位的I/O端口空間。片內(nèi)提供16 KB×16的雙存取RAM和4 KB×16的ROM,并具有直接存儲(chǔ)器訪問(DMA)功能,通過HOLD允許對(duì)外部程序、數(shù)據(jù)以及I/O空間進(jìn)行直接存儲(chǔ)器訪問。TMS320VC5402存儲(chǔ)器直接存儲(chǔ)控制DMA可在不占用CPU資源的情況下,實(shí)現(xiàn)DSP存儲(chǔ)器間數(shù)據(jù)的自由傳輸。TMS320VC5402有6個(gè)可獨(dú)立編程的DMA通道,每個(gè)DMA通道由各自的寄存器控制。
2.3系統(tǒng)的硬件結(jié)構(gòu)
設(shè)計(jì)DMA共享存儲(chǔ)器實(shí)現(xiàn)雙機(jī)通訊需要考慮以下幾點(diǎn):(1)設(shè)計(jì)ADuC841和TMS320VC5402之間數(shù)據(jù)總線和地址總線的隔離電路。隔離電路在雙CPU不通信時(shí)隔離地址總線和數(shù)據(jù)總線,而在DMA通信時(shí)則選通。(2)設(shè)計(jì)ADuC841和TMS320VC5402都能對(duì)存儲(chǔ)器讀寫的選通信號(hào)和讀寫信號(hào)。(3)設(shè)計(jì)控制TMS320VC5402信號(hào)及其響應(yīng)信號(hào)。
考慮上述問題,采用ADuC841與TMS320VC5402的雙CPU系統(tǒng)結(jié)構(gòu)如圖1所示。存儲(chǔ)器HM62256既是TMS320VC5402的全局?jǐn)?shù)據(jù)存儲(chǔ)器,又是ADuC841的外部存儲(chǔ)器。A15為片選信號(hào),地址范圍為8000H~FFFFH。兩個(gè)CPU分別通過總線和數(shù)據(jù)存儲(chǔ)器HM62256相連,實(shí)現(xiàn)存儲(chǔ)器共享。
關(guān)鍵詞:
處理
理系
設(shè)計(jì)
數(shù)據(jù)采集
實(shí)時(shí)
DMA
方式
基于
相關(guān)推薦技術(shù)專區(qū)
|
評(píng)論