999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

采用DSP實(shí)現(xiàn)信號(hào)高速采集與實(shí)時(shí)FFT運(yùn)算

2021-04-12 01:44:08湖南工業(yè)職業(yè)技術(shù)學(xué)院電氣工程學(xué)院賀力克
電子世界 2021年5期
關(guān)鍵詞:信號(hào)

湖南工業(yè)職業(yè)技術(shù)學(xué)院電氣工程學(xué)院 賀力克

湖南工業(yè)大學(xué)交通工程學(xué)院 易吉良

快速傅里葉變換(FFT)采用時(shí)間抽取或頻率抽取方式大大提高了傅里葉變換的運(yùn)算效率。但在旋轉(zhuǎn)變壓器解碼和電能質(zhì)量分析等應(yīng)用領(lǐng)域,由于信號(hào)采樣率很高,同時(shí)這些應(yīng)用中FFT算法的運(yùn)算量很大,在DSP芯片中很難實(shí)現(xiàn)實(shí)時(shí)處理。本文介紹一種采用TMS320F28335DSP實(shí)現(xiàn)高速信號(hào)采集并實(shí)時(shí)進(jìn)行FFT運(yùn)算的方法,為基于FFT的大運(yùn)算量算法的實(shí)時(shí)應(yīng)用提供一種解決方案。

1 系統(tǒng)構(gòu)成

以采用DSP解碼的旋轉(zhuǎn)變壓器解碼系統(tǒng)為例,其系統(tǒng)結(jié)構(gòu)框圖如圖1所示。從圖1可以看出,旋轉(zhuǎn)變壓器的三路信號(hào)Vc、Vs和Ve通過信號(hào)調(diào)理電路轉(zhuǎn)換為滿足DSP內(nèi)置AD端口需要的電壓信號(hào)V1~V3。

圖1 旋轉(zhuǎn)變壓器解碼系統(tǒng)框圖

一般上述三路信號(hào)的頻率為5KHz~10KHz,需要AD的采樣頻率為50KHz~200KHz。以10KHz信號(hào)頻率和100KHz采樣頻率為例,若在分析數(shù)據(jù)過程中截取10周期數(shù)據(jù),則待分析信號(hào)的時(shí)長(zhǎng)為0.1ms。在上述條件下,若要做到實(shí)時(shí)運(yùn)算,則芯片要在0.1ms內(nèi)要處理完數(shù)據(jù)采樣、算法運(yùn)算和其他數(shù)據(jù)通信等事務(wù)。如果每次數(shù)據(jù)采樣都需要CPU參與,而FFT沒有高效算法的情況下,一般的DSP芯片很難做到實(shí)時(shí)性。TI公司的TMS320F28335DSP芯片設(shè)計(jì)了直接存儲(chǔ)器訪問技術(shù)(DMA),AD采樣的數(shù)據(jù)直接傳送到指定的數(shù)據(jù)緩沖區(qū),不需要CPU在每個(gè)采樣周期都參與數(shù)據(jù)傳輸,只需在完成一定量的數(shù)據(jù)采集后,才通過中斷通知CPU執(zhí)行相關(guān)操作。另外,該芯片的軟件開發(fā)資源非常豐富,包括開發(fā)環(huán)境CCS和資源包c(diǎn)ontrolSUITE,為高數(shù)據(jù)采樣率和大運(yùn)算量的實(shí)時(shí)應(yīng)用提供了支持。

2 TMS320F28335的DMA技術(shù)

2.1 DMA工作原理

DMA提供了外設(shè)和存儲(chǔ)器之間的一種直接硬件傳輸數(shù)據(jù)的方式,可以大大減少CPU的開銷。為了簡(jiǎn)要描述DMA的工作原理,以ADC采樣結(jié)果傳輸?shù)絉AM的過程為例,描述TMS320F28335的DMA如何直接將AD采樣的數(shù)據(jù)傳輸?shù)街付ǖ腞AM中。

圖2中DMA的工作首先要分配好源地址和目的地址,在本例中,源地址就是AD采樣結(jié)果寄存器,而目的地址就是存放采樣結(jié)果的數(shù)據(jù)緩沖區(qū)RAM。DSP傳輸數(shù)據(jù)要用到數(shù)據(jù)總線,而這些總線都是共享的,也就是說只有在傳輸數(shù)據(jù)時(shí)才能占用。而DMA的傳輸觸發(fā)是通過中斷實(shí)現(xiàn)的,即AD一旦完成了采樣就發(fā)出中斷信號(hào),通知DMA將結(jié)果寄存器的數(shù)據(jù)取走,這時(shí)DMA就要占用數(shù)據(jù)總線,傳完數(shù)據(jù)就會(huì)自動(dòng)釋放總線。而當(dāng)數(shù)據(jù)緩沖區(qū)填滿的新的數(shù)據(jù)后,可以設(shè)置DMA發(fā)出中斷,通知CPU對(duì)緩沖區(qū)的數(shù)據(jù)進(jìn)行處理,這樣,CPU只需在DMA中斷時(shí)才提取數(shù)據(jù),節(jié)省了大量的CPU時(shí)間。

圖2 TMS320F28335DMA原理

2.2 DMA軟件實(shí)現(xiàn)

根據(jù)上述DMA原理,使用DMA需要對(duì)相關(guān)寄存器做設(shè)置,在初始化程序中,主要利用如下幾個(gè)C語言函數(shù):(1)DMACH1AddrConfig( ):該函數(shù)用來配置DMA的源地址和目的地址。(2)DMACH1BurstConfig( ):該函數(shù)用于配置每幀DMA傳輸?shù)臄?shù)據(jù)量,以及每次傳輸源地址和目標(biāo)地址改變的步長(zhǎng)。(3)DMACH1TransferConfig( ):該函數(shù)用于配置傳輸幀數(shù)量,以及幀地址步長(zhǎng)。(4)DMACH1Wrap-Config( ):該函數(shù)用于定義進(jìn)行循環(huán)傳輸,以及相應(yīng)的源地址和目的地址與步長(zhǎng)。(5)DMACH1ModeConfig( ):這個(gè)函數(shù)有10個(gè)參數(shù)需要配置,關(guān)系到DMA的中斷使能和工作模式等。每個(gè)參數(shù)的具體含義需結(jié)合數(shù)據(jù)手冊(cè)中的DMA工作流程加以理解,限于篇幅,不再贅述。

在DMA完成DMACH1TransferConfig( )函數(shù)定義的數(shù)據(jù)幀后,就需要產(chǎn)生中斷,執(zhí)行interrupt void local_DINTCH1_ISR( )中斷函數(shù),在該函數(shù)中執(zhí)行FFT等算法程序。

3 快速實(shí)現(xiàn)FFT

FFT是很多應(yīng)用中的算法。在DSP中實(shí)現(xiàn)FFT有兩種方案,一種是直接根據(jù)FFT的定義編寫程序;另一種是利用TI的FFT庫函數(shù)實(shí)現(xiàn)。作者對(duì)兩種方案進(jìn)行了測(cè)試,發(fā)現(xiàn)庫函數(shù)有更高的運(yùn)算效率,下面主要介紹庫函數(shù)的應(yīng)用方法。

3.1 庫函數(shù)的使用

庫函數(shù)利用壓縮算法實(shí)現(xiàn)FFT,使得計(jì)算效率得到了很大提高。其實(shí)整個(gè)庫函數(shù)除了FFT外,還有求IFFT和求幅值等函數(shù)。庫函數(shù)的源碼在controlSUITE目錄下可以找到,基本都是采用匯編語言編寫。庫函數(shù)的詳細(xì)的使用方法可以從TI公司官網(wǎng)下載文檔C28x-FPU-LIB-UG.pdf進(jìn)行了解。這里主要介紹在使用庫函數(shù)過程中需要注意一些細(xì)節(jié),如輸入數(shù)據(jù)是否對(duì)齊、處理結(jié)果存放在哪些緩沖區(qū)等。

使用庫函數(shù)只要在CCS工程中添加C28x_FPU_Lib.lib庫文件和FPU.h頭文件,然后就可以直接調(diào)用FFT相關(guān)函數(shù),包括:(1)CFFT_f32( ):該函數(shù)用于計(jì)算FFT,注意該函數(shù)的參數(shù)是復(fù)數(shù)格式,在DSP中需要用兩個(gè)單元分別存放實(shí)部和虛部,且實(shí)部在前,虛部在后。(2)ICFFT_f32( ):該函數(shù)用于計(jì)算IFFT,其參數(shù)要求與CFFT_f32( )一樣。(3)abs_SP_CV_2( ):該函數(shù)用于求復(fù)數(shù)的幅值,三個(gè)參數(shù)分別是存放幅值結(jié)果,輸入的復(fù)數(shù)和數(shù)據(jù)長(zhǎng)度。

圖3 CCS調(diào)試界面

3.2 cmd文件的處理

在使用庫函數(shù)求FFT時(shí)對(duì)數(shù)據(jù)存放的存儲(chǔ)單元有特殊要求,即對(duì)齊某個(gè)地址,這就需要在存儲(chǔ)器分配文件*.cmd中對(duì)相應(yīng)數(shù)據(jù)變量進(jìn)行說明。*.cmd文件中用到兩條分配存儲(chǔ)單元,即指令MEMORY和SECTIONS。其中MEMORY用于說明系統(tǒng)中有哪些可用的存儲(chǔ)器,而SECTIONS用于將定義的變量分配到可用的存儲(chǔ)器中。為了滿足FFT庫函數(shù)的要求,在SECTIONS指令中需要用到如下說明:

該語句的含義是將FFTRAML3s數(shù)據(jù)段定位到數(shù)據(jù)空間PAGE1的RAML3存儲(chǔ)器中,當(dāng)然PAGE1和RAML3是在MEMORY指令中定義好的。同時(shí)可以注意到,該指令后面還有ALIGN(512)的說明,它是保證FFTRAML3s對(duì)齊512個(gè)存儲(chǔ)單元,對(duì)齊的意思是該數(shù)據(jù)段的起始地址應(yīng)保證最低的N位為0,N要滿足:2N≥512。這樣CCS給FFTRAML3s分配的地址最低9位就是0。這樣做的目的是滿足DSP芯片的高效尋址方式,以使FFT算法快速執(zhí)行。

4 測(cè)試結(jié)果

采用TMS320F28335開發(fā)板進(jìn)行測(cè)試,系統(tǒng)時(shí)鐘頻率位150MHz,利用DMA技術(shù)高速采樣,采樣頻率100kHz。利用庫函數(shù)計(jì)算128點(diǎn)FFT,測(cè)得需要機(jī)器周期為5926,如圖3所示。可以算出做128點(diǎn)的FFT時(shí)間為:5926×6.67ns=0.039766ms,而128數(shù)據(jù)時(shí)間為0.128ms,因此,在上述條件下能夠?qū)崿F(xiàn)FFT的實(shí)時(shí)運(yùn)算。

綜上所述,利用TMS320F28335的DMA技術(shù)和FFT庫函數(shù),能夠?qū)崿F(xiàn)數(shù)據(jù)的高頻采集和FFT算法的快速運(yùn)算,滿足對(duì)信號(hào)采集和頻譜分析的實(shí)時(shí)性要求極高的應(yīng)用場(chǎng)合。

猜你喜歡
信號(hào)
信號(hào)
鴨綠江(2021年35期)2021-04-19 12:24:18
完形填空二則
7個(gè)信號(hào),警惕寶寶要感冒
媽媽寶寶(2019年10期)2019-10-26 02:45:34
孩子停止長(zhǎng)個(gè)的信號(hào)
《鐵道通信信號(hào)》訂閱單
基于FPGA的多功能信號(hào)發(fā)生器的設(shè)計(jì)
電子制作(2018年11期)2018-08-04 03:25:42
基于Arduino的聯(lián)鎖信號(hào)控制接口研究
《鐵道通信信號(hào)》訂閱單
基于LabVIEW的力加載信號(hào)采集與PID控制
Kisspeptin/GPR54信號(hào)通路促使性早熟形成的作用觀察
主站蜘蛛池模板: 日本国产精品一区久久久| 成年女人a毛片免费视频| 久久综合五月婷婷| 国产女人18毛片水真多1| 精品国产一区91在线| 亚洲无码视频喷水| AV老司机AV天堂| 国产性生大片免费观看性欧美| 免费人欧美成又黄又爽的视频| 一区二区三区四区在线| 欧美va亚洲va香蕉在线| 97成人在线视频| 亚洲国产成人久久精品软件| 高清亚洲欧美在线看| 亚洲欧美日本国产综合在线| 真实国产乱子伦视频| 人妻一区二区三区无码精品一区 | 91福利片| 亚洲中文字幕在线一区播放| 国产偷倩视频| 激情综合图区| 狠狠色丁香婷婷综合| 亚洲另类第一页| 老色鬼久久亚洲AV综合| 国产aⅴ无码专区亚洲av综合网| 亚洲毛片在线看| 亚洲av日韩综合一区尤物| 欧美一级大片在线观看| 国产sm重味一区二区三区| 国产精品永久不卡免费视频| 91无码网站| 黄色三级网站免费| 色偷偷一区| 偷拍久久网| 九色视频最新网址 | 丁香六月激情综合| 在线观看免费国产| 日韩午夜福利在线观看| 91精品国产无线乱码在线| 久久久黄色片| 中文无码影院| 中文字幕人妻无码系列第三区| 毛片在线播放网址| 草草影院国产第一页| 欧美性天天| 91亚洲国产视频| 亚洲综合九九| 婷婷综合亚洲| 欧美日在线观看| 91福利国产成人精品导航| 东京热av无码电影一区二区| 日本国产精品| 久久国产V一级毛多内射| 色欲色欲久久综合网| 国产成人无码播放| 2021国产在线视频| 欧美丝袜高跟鞋一区二区| 久久综合干| 精品夜恋影院亚洲欧洲| 美女国内精品自产拍在线播放| 女人天堂av免费| 五月婷婷精品| 亚洲精品午夜天堂网页| 国产日韩久久久久无码精品 | 日本在线免费网站| 无码国产伊人| 国产女主播一区| 亚洲精品免费网站| 色哟哟精品无码网站在线播放视频| 天天爽免费视频| www.亚洲一区二区三区| 国产va在线观看| 欧美综合成人| 国产裸舞福利在线视频合集| 欧美日韩国产综合视频在线观看| 国产精品尹人在线观看| 97狠狠操| 思思热精品在线8| 亚洲va精品中文字幕| 国产精品成人观看视频国产 | 欧美亚洲网| 伊人中文网|