當(dāng)前位置:首頁 > 單片機(jī) > 單片機(jī)
[導(dǎo)讀]摘要:在SP061A單片機(jī)上實現(xiàn)對ECC信號的FFT、濾波和壓縮。合理組織SP061A的硬件資源,并采取數(shù)據(jù)分段長度可選、避開高頻分量的計算和簡易的數(shù)據(jù)壓縮算法,使存儲開銷、運算速度和精度滿足實用要求。 關(guān)鍵詞:ECC數(shù)據(jù)

摘要:在SP061A單片機(jī)上實現(xiàn)對ECC信號的FFT、濾波和壓縮。合理組織SP061A的硬件資源,并采取數(shù)據(jù)分段長度可選、避開高頻分量的計算和簡易的數(shù)據(jù)壓縮算法,使存儲開銷、運算速度和精度滿足實用要求。 關(guān)鍵詞:ECC數(shù)據(jù) SP061A FFT 濾波 壓縮 在遠(yuǎn)程心電監(jiān)護(hù)系統(tǒng)中,心電信號采集器是實現(xiàn)心電信號的現(xiàn)場采集、存儲和傳輸?shù)闹匾K端設(shè)備。對采集器的基本要求之一是:及時對采集到的心電信號進(jìn)行濾波和壓縮等預(yù)處理,以減少存儲器占用量和數(shù)據(jù)遠(yuǎn)程傳輸?shù)筋^端服務(wù)器的開銷。為降低成本,這些任務(wù)一般采用單片機(jī)完成。然而,限于單片機(jī)的資源、運算能力和運行速度,許多壓縮算法,如周期壓縮法、小波變換壓縮法和神經(jīng)網(wǎng)絡(luò)方法等無法使用,一些缺乏快速算法的頻域變換法也很難達(dá)到實用的程度[3]。高性價比的心電信號采集器的研制一直是一個熱點問題。


通過研究FFT(快速傅立葉變換)的算法結(jié)構(gòu)和心電信號的特點發(fā)現(xiàn),采用分段FFT,保留分析心電波形需要的諧波成分,巧妙地組織單片機(jī)的片內(nèi)RAM資源,可使數(shù)據(jù)運算量和RAM開銷大大減少,能實現(xiàn)數(shù)據(jù)濾波和壓縮,且能達(dá)到實時采集與處理所需的運算速度。 SP061A是凌陽科技公司研制的一款16位超低功耗單片機(jī)[1],片內(nèi)有2K字RAM、10位A/D轉(zhuǎn)換器,CPU時鐘高達(dá)49.152MHz,且價格低廉,還特別具有一套精簡、高效的指令系統(tǒng)和類似于DSP的硬件內(nèi)積運算功能。這些特點很適合心電信號的采集和處理。圖1是作者研發(fā)的心電信號采集器中有關(guān)硬件的組成框圖:多路ECG模擬信號送SP061A進(jìn)行A/D轉(zhuǎn)換,轉(zhuǎn)換數(shù)據(jù)送NVRAM DSl265W暫存;待采集完成后,由SP061A進(jìn)行FFT和濾波、壓縮;壓縮結(jié)果送回DSl265W,再適時通過電話線或計算機(jī)網(wǎng)絡(luò)送到監(jiān)護(hù)中心處理、診斷。 本文僅討論用SP061A實現(xiàn)FFT[2]、低通濾波與壓縮。設(shè)對心電信號的采樣率為500次/秒,數(shù)據(jù)精度為10位。

1 數(shù)據(jù)分段算法 設(shè)采集到的原始數(shù)據(jù)存于片外RAM中,將這些數(shù)據(jù)分為若干段,逐段讀入片內(nèi)進(jìn)行FFT。各段的變換結(jié)果及時送回片外RAM中保存。 按照FFT的要求,段中包含的數(shù)據(jù)個數(shù)必須為2N,N為FFT變換的層數(shù)??紤]到SP061A片內(nèi)RAM為2K字,此處取N=9或N=10,即段中數(shù)據(jù)為 512或1024,以保證RAM夠用。顯然,段頭和段尾的數(shù)據(jù)大小相等時,以該段作為一個周期而無限重復(fù)的波形將無跳躍點。經(jīng)過“FFT變換到頻域”→ “丟棄高頻成分”→“IFFT(快速傅立葉反變換,在頭端PC上進(jìn)行)”一系列操作而重建的時域波形,段與段之間的結(jié)合點將是連續(xù)的。但實際上,按上述分段幾乎不能做到段頭和段尾的數(shù)據(jù)大小相等。取兩種段長的目的就是提供兩種可能的選擇——選擇首尾數(shù)據(jù)之差較小的段作FFT。盡管如此,段首尾數(shù)據(jù)之差仍存在,經(jīng)處理、復(fù)原后的波形在段的結(jié)合部位仍將有間斷點。而采用加窗、延拓等辦法在單片機(jī)上又難以實現(xiàn)。解決問題的策略為:分段時,各段間的數(shù)據(jù)首、尾各覆蓋10個數(shù)據(jù)。頭端PC在完成重建后,應(yīng)將首、尾各5個數(shù)據(jù)丟棄。

2 時域數(shù)據(jù)的整序與加載 分段后,將該段加載到SP061A的RAM中,以實施FFT。原始數(shù)據(jù)以采集的時間先后順序存放,加載時則應(yīng)“整序”,即改變數(shù)據(jù)的先后順序,以保證變換后的頻域數(shù)據(jù)為正序。 設(shè)Rs為指向片外RAM的、待加載的段內(nèi)數(shù)據(jù)的偏移地址,Rs=O…2N-1;Rd為指向片內(nèi)RAM的、待寫入數(shù)據(jù)的偏移地址,如圖2。將Rs按N位二進(jìn)制逐位高低互換就得到只Rdo例如,當(dāng)N=9時,若Rs為011001011B,則Rd為110100110B。為加快計算速度,將N=9時及,的值制表存于FLASHROM,供整序時查詢。當(dāng)N=10時,取Rs的B0~B9位查表獲得Rd,再將Rs的B10位傳送到Rd,的B15位,最后將Rd循環(huán)左移 1位。 FFT變換是復(fù)數(shù)運算。在將原始數(shù)據(jù)加載到片內(nèi)RAM的同時,應(yīng)把實數(shù)轉(zhuǎn)換為復(fù)數(shù),即令虛部為0。于是,一個原始數(shù)據(jù)加載到RAM中要占用2個字。復(fù)數(shù)的存儲格式為:實部字存于低地址,虛部字存于相鄰的高地址?,F(xiàn)在考察RAM需要量。N=9時,段長為512個數(shù)據(jù),加載到RAM中要占用 512%26;#215;2=1024字;N=10時,段長為1024個數(shù)據(jù),全部加載將占用1024%26;#215;2=2048字,超過片內(nèi)RAM 的可用容量。此時,將數(shù)據(jù)分為兩部分,先將第一部分加載到RAM作FFT,得到中間結(jié)果,再將第二部分加載、變換,最后相加合成。 3 FFT變換及低通濾波 FFT將時域序列{χ[i],i∈0…2N}變換為頻域序列{F[i],i∈0…2N}。為了實現(xiàn)低通濾波,僅須保留{F[i]}中≤75Hz的頻率分量。當(dāng)N=9時,應(yīng)保留{F[i]}中的前77個低頻分量;當(dāng)N=10時,則應(yīng)保留{F[i]}中的前154個低頻分量。這也同時減少了計算量,加快了計算速度;存放周轉(zhuǎn)量所需的片內(nèi)RAM也能得到保證。 為敘述簡便,以N=3為例,研究FFT的計算結(jié)構(gòu),如圖3所示。 圖3中,W[k]是復(fù)因子,W[k]=COS[(2kπ)/N ]+jsin[(2kπ)/N],k=0…2N-1。將W[k]的實部和虛部都乘2 14,取整后制成表,存于FLASH ROM中,供程序查表獲得其值;而W[k]與某數(shù)相乘,將32位運算結(jié)果右移14位作為積。這就使全部運算為整數(shù)運算,適應(yīng)SP061A的硬件乘法功能。 由圖3知,第一層的計算僅涉及實部加減,虛部保持為0,可單獨進(jìn)行。從第二層開始有復(fù)數(shù)乘,但是,當(dāng)只需計算{F[i]}中的低頻分量時,許多中間結(jié)果可不計算。例如,如果需計算出F[0]和F[1](即保留原始信號的直流分量和1次諧波),則僅需計算χ[0]3、χ[4]3和χ[1]、χ[5]3。計算層數(shù)N越多,減少的運算也越多。 圖4 復(fù)數(shù)乘可利用SP061A的內(nèi)積功能實現(xiàn)。例如,要計算χ[i]%26;#215;W[j],設(shè)χ[i]%26;#215;W[j]= (a+jb)%26;#215;(c+jd)=ac+(-bd)+j(bc+ad)。顯然,結(jié)果的實部和虛部均為內(nèi)積形式,只是設(shè)置操作數(shù)時須注意符號和排列順序。 上述方法使計算量顯著減少。以512點FFT為例,計算出全部頻率分量需要512%26;#215;log2 512=4608次運算,其中含有2048次復(fù)數(shù)乘。若計算77個低頻分量,則只有3611次運算,其中含有1767次復(fù)數(shù)乘。 當(dāng)N=10時,計算點數(shù)達(dá)1024,片內(nèi)RAM不夠用。此時,應(yīng)按1024點的整序次序取數(shù),先對χ[0]1~χ[511]1,進(jìn)行FFT,算出 F1[0]~F1[153],暫存于片內(nèi)RAM中的一個緩沖區(qū);再對χ[512]1~χ[1023]1進(jìn)行FFT,算出F2[0]~F2[153];則最終結(jié)果為:F[i]=Fl[i]+F2[i],i=0…153。 為避免計算中產(chǎn)生數(shù)據(jù)溢出,從第三層開始,對χ[i]4~χ[i]9都算術(shù)右移1位。操作的累積結(jié)果使F[i]縮小了64倍,故在重建時應(yīng)擴(kuò)大64倍。如此操作實際上降低了運算精度,但實驗表明,重建的波形完全滿足醫(yī)學(xué)觀察要求。 4 數(shù)據(jù)壓縮 采取如下簡易格式實現(xiàn)數(shù)據(jù)壓縮: 對于F[0],因虛部為0,僅用一個字存放實部,重建時默認(rèn)虛部為0; 對于F[i],i>0,若實部在—64~63范圍內(nèi)且虛部在—128~127范圍內(nèi),則用2個字節(jié)存放,格式如下:

兩種格式由第1字節(jié)的最高位區(qū)分。 5 實驗結(jié)果與分析 用自行研發(fā)的心電信號采集器進(jìn)行實驗,對采集到的4個樣本進(jìn)行處理,實驗結(jié)果如表1。表1中,PRD為均方根誤差,CC為相關(guān)系數(shù),計算公式為:


式中m為樣本系列的數(shù)據(jù)個數(shù),x[n]、x分別為原始數(shù)據(jù)系列及其平均值,y[n]、y分別為重建后的系列及其平均值。CR為壓縮比,CR=1(m%26;#215;10)/(壓縮后的字節(jié)數(shù)%26;#215;8) 處理時間為SP061A完成FFT與壓縮花費的時間,CPU時鐘設(shè)置為49.152MHz。 表1 實驗結(jié)果數(shù)據(jù) 樣本編號代表波形 CR PRD(%) CC 原始數(shù)據(jù)個數(shù)壓縮后字節(jié)數(shù)處理時間(ms) 1 圖4(a) 3.93 23.132 0.97103 17926 5694 254 3 圖4(b) 3.88 14.058 0.98999 19290 6086 263 6 圖4(c) 4.08 3.0731 0.99953 65126 20884 857 9 圖4(d) 3.92 7.4203 0.99592 12804 3978 179 實驗表明,本方法用價格低廉的單片機(jī)實現(xiàn)了復(fù)雜的FFY與數(shù)據(jù)壓縮,計算耗時少,所得結(jié)果滿足實用要求。由圖4可見,重建后的波形在段間結(jié)合點無畸變。噪聲較弱時PRD和CC參數(shù)較為理想;而當(dāng)噪聲很強(qiáng)時,如圖4(a)、4(b),因濾除了高頻噪聲而使得重建波形與原始波形差距較大,PRD和CC參數(shù)已不能說明問題。壓縮算法簡便,CR約為4。順便說明,本方法未實現(xiàn)50Hz干擾濾波、肌電干擾濾波和基線漂移,這些處理可在頭端PC上進(jìn)行。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫毥谦F公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運行,同時企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險,如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點: 有效應(yīng)對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運營商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術(shù)學(xué)會聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(shù)(集團(tuán))股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉