《電子技術(shù)應用》
您所在的位置:首頁 > 可編程邏輯 > 設計應用 > 基于Fusion模數(shù)混合FPGA芯片的心電儀片上系統(tǒng)開發(fā)
基于Fusion模數(shù)混合FPGA芯片的心電儀片上系統(tǒng)開發(fā)
曹 虎,王 敏,,董漢彬,,徐安明
(西南交通大學 電氣工程學院,,四川 成都610031)
摘要: 利用Actel公司的基于Flash構(gòu)架的模數(shù)混合型Fusion系列FPGA芯片,設計了一款低功耗片上的心電監(jiān)護儀采集顯示系統(tǒng)。結(jié)合Fusion系列的FPGA芯片的各種資源,實現(xiàn)了心電采集預處理模塊,、數(shù)據(jù)的處理和顯示模塊的系統(tǒng)集成,完整地形成了片上系統(tǒng),。
Abstract:
Key words :

摘  要: 利用Actel公司的基于Flash構(gòu)架的模數(shù)混合型Fusion系列FPGA芯片,,設計了一款低功耗片上的心電監(jiān)護儀采集顯示系統(tǒng)。結(jié)合Fusion系列的FPGA芯片的各種資源,,實現(xiàn)了心電采集預處理模塊,、數(shù)據(jù)的處理和顯示模塊的系統(tǒng)集成,完整地形成了片上系統(tǒng),。
關(guān)鍵詞: 心電監(jiān)護,;FPGA,;片上系統(tǒng)

    心電監(jiān)護儀器的研制起源于國外,,目前由于我國醫(yī)院用的心電監(jiān)護儀體積大、價格昂貴,、維護費用高,,使用起來極其不便,因此儀器無法滿足家庭與鄉(xiāng)鎮(zhèn)醫(yī)院的使用要求,。針對這種狀況,,一種小型、價格低廉,、便于維護的多功能心電監(jiān)護儀具有相當?shù)氖袌龈偁幜1],。
    Fusion系列的FPGA是世界上首個基于Flash構(gòu)架的模數(shù)混合的FPGA,即在數(shù)字FPGA的基礎(chǔ)上加入了模擬電路部分,,解決了傳統(tǒng)模擬電路和FPGA分離給設計帶來的諸多問題,,降低了PCB板的制作難度,縮小了產(chǎn)品的體積,。FPGA的可編程性使得系統(tǒng)易于升級,。同時在數(shù)字系統(tǒng)中引入模擬電路,簡化了系統(tǒng)電路設計,。
1 Fusion FPGA介紹
    Fusion FPGA的主要特點主要體現(xiàn)在:
    (1)單芯片:無需配置芯片,;
    (2)高安全性:晶體管受7層金屬保護,,具有AES和Flash Lock加密技術(shù);
    (3)高可靠性:對高能量粒子轟擊具有免疫作用,,具有很強的固件錯誤免疫功能,;
    (4)上電即行:上電時間非常短,一般只有幾十個微秒左右,;
    (5)低功耗:無論是動態(tài)功耗還是靜功耗都低于競爭對手,,IGLOO最低可達5 ?滋W;
    (6)低系統(tǒng)成本:無需配置芯片,小功率電源芯片,,無需加密芯片,,PCB面積更小。
    Fusion系列FPGA內(nèi)部框架如圖1所示,。

2 片上系統(tǒng)的實現(xiàn)原理
    具體片上系統(tǒng)框圖如圖2所示,。經(jīng)過心電信號采集傳感器采集的心電信號接入12位ADC,ADC將心電模擬信號轉(zhuǎn)換成數(shù)字信號被BUF鎖存,,然后送給Core8051供其采集處理,。Core8051中設計算法,將ADC傳來的數(shù)據(jù)轉(zhuǎn)換成VGA可以顯示的數(shù)據(jù),,然后送給VGA驅(qū)動模塊,。

2.1 ADC模塊設計
    Fusion FPGA內(nèi)含采樣精度和轉(zhuǎn)換時間可以靈活配置的AD轉(zhuǎn)換器,為靈活的AD轉(zhuǎn)換方案提供了可能性,。作為一種逐次逼近型ADC,,這種轉(zhuǎn)換器具有高達600 Ks/s采樣率,器件內(nèi)部具有2.56 V的參考源,,誤差在12位模式下為±6 LSB,,具有自動校準功能。
    利用FPGA內(nèi)部邏輯單元對ADC進行配置:設置ADC精度為12位,,參考電壓采用幅值為2.56 V精度為1%片內(nèi)電壓源供電,,同時FPGA內(nèi)部的ADC具有Prescaler(預處理器),所以可以靈活地設置采樣電壓的范圍,,更進一步保證了AD轉(zhuǎn)換的精確度,。ADC初始化工作過程如下:
    (1)等待ADCRESET管腳釋放無效;
    (2)ADCRESET管腳釋放無效后,,ADC上電自校準,;
    (3)上電校準后(CALIBRATE=1),對ACM 進行配置;
    (4)配置完成后,,通過ADC_START來使ADC工作,。
    FPGA內(nèi)部邏輯單元進行ADC的配置和初始化工作,從而控制ADC采樣,,具體過程如圖3所示,。

2.2 控制核心Core8051模塊設計
    FPGA內(nèi)部可以嵌入高速的Core8051處理器內(nèi)核,,它是整個系統(tǒng)的核心,負責有序地調(diào)用其余各功能模塊,,同時又兼有數(shù)據(jù)處理任務,,負責將ADC傳來的數(shù)據(jù)轉(zhuǎn)換成VGA可以顯示的數(shù)據(jù)。Core8051的硬件配置非常靈活,,時鐘速度可以達到33 MHz,,ROM的大小可以根據(jù)需要靈活地設置,該設計配置為64 KB,。片內(nèi)DATA RAM僅需256 B即可完成驅(qū)動VGA的功能,,也可以擴展外部64 KB RAM,從而完成更強大的軟件功能,。系統(tǒng)中設置單片機的片內(nèi)DATA RAM為256 B,,并通過系統(tǒng)總線擴展了外部64 KB的SRAM,系統(tǒng)框圖如圖4所示,。

2.3 彩色顯示驅(qū)動模塊
    比較成熟的TFT_LCD顯示驅(qū)動的開發(fā)大多數(shù)基于ARM[2-3],、DSP[4]的平臺。然而本系統(tǒng)使用的處理器是Coer8051,,所以沒有辦法移植原有的驅(qū)動模塊,。又因為圖像數(shù)據(jù)比較大,對處理器運算能力的要求比較高,,所以結(jié)合Core8051和FPGA的特點重新設計了一種算法,,降低需要處理的數(shù)據(jù)量,從而在Core8051的能力范圍內(nèi)來完成心電圖像信息的顯示,。
    為了顯示一幅完整的圖像,,按照液晶掃描的時鐘順序?qū)⑹孪葴蕚浜玫囊粠瑘D像數(shù)據(jù)逐次地輸入到數(shù)據(jù)端口,,從而完成一幀圖像的顯示,。由于要顯示的圖像只有心電信號是動態(tài)變化的,而其他的都是相對靜止不動的,,也就是每一次掃描時數(shù)據(jù)信息是不變化的,,整幅的圖像被分成動態(tài)的(心電圖像)和靜態(tài)的(背景、標度)兩部分,。動態(tài)的由Core8051產(chǎn)生,,并在特定時刻輸入到TFT_LCD;靜態(tài)的圖像信息事先存儲到FPGA中的存儲器中,,每掃描一次都按照特定的順序輸入到LCD,。通過這種方法,Core805就只需處理心電信號的信息,,從而大大地減少了圖像數(shù)據(jù)的處理量,,并完成圖像的顯示,。該模塊的設計完成了低端處理器很難完成的實時彩色界面的驅(qū)動,即僅使用帶有256 B RAM的Core8051就可以顯示256色界面,。
    根據(jù)上述設想,,可將液晶屏分成動態(tài)部分和靜態(tài)部分,如圖5所示,。

    圖5中除了“心電信號動態(tài)顯示區(qū)”中顯示出動態(tài)的心電圖像,,其他部分包括“動態(tài)顯示區(qū)”中的背景圖像信息全部事先存儲在FPGA內(nèi)部的Flash存儲器中。
    動態(tài)顯示區(qū)可以用兩組數(shù)據(jù)來標注,,設為:x0,,y0,x1,,y1,,則這個動態(tài)顯示區(qū)每個定點的坐標就可以表示為(x0,y0)(x0,,y1)(x1,,y0)(x1,y1),。如圖5所示,, 橫坐標表示時間t/s,縱坐標表示心電信號的幅值大小U/v,,(x0,,y0)處為(0,0)坐標點,。在Core8051的基礎(chǔ)上設計編碼算法,,對采集到的心電信號進行編碼,然后將心電信號轉(zhuǎn)換成顯示屏的坐標信號,,然后根據(jù)坐標信號計算出心電圖像的數(shù)據(jù),,并在掃描時鐘的控制下逐次將數(shù)據(jù)按照順序輸入到LCD中, 這樣即可實現(xiàn)動態(tài)的心電圖像的顯示,。
    心電信號動態(tài)顯示區(qū)的設計采用了3種方法,,分別為:
    (1)移位寄存器法。在FPGA內(nèi)部構(gòu)建一個240位移位寄存器作為心電圖像的緩存,,Core8051實時地采集數(shù)據(jù)然后發(fā)送到移位寄存器內(nèi)部,,同時CRT驅(qū)動模塊按照自己的時序來不斷地掃描移位寄存器,從而顯示出心電圖像,。這種方法的缺點是動態(tài)曲線顯示的連續(xù)性不好,。
    (2)雙RAM緩存法[5]。利用Core8051外部擴展的64 KB
RAM作為心電波形信號的緩存,,同時在CRT驅(qū)動模塊中再設計一個心電波形顯示緩存,,這樣Core8051就可以先采集心電信號存儲在外部擴展的64 KB RAM中,,達到某一數(shù)量后,連續(xù)地發(fā)送給CRT驅(qū)動模塊中的緩存,,從而顯示出動態(tài)的心電信號圖像,。該設計的一個最大優(yōu)點是圖像顯示連續(xù)(沒有拋棄任何時刻的心電數(shù)據(jù)),同時又可以根據(jù)需要選擇觀察采集到的任何時刻的心電波形,。但由于要采集一定數(shù)量的心電波形數(shù)據(jù),,因此心電波形的顯示會有一定時間的延時。
    (3)單RAM緩存法,。在Core8051沒有擴展外部64 KB RAM的前提下設計的,,利用一個雙端口的RAM作為動態(tài)顯示區(qū)的圖像緩存,Core8051通過其中的一個寫端口向圖像緩存中寫入數(shù)據(jù),,VGA控制器通過另外一個端口從圖像緩存中讀出數(shù)據(jù),,兩者互不影響。同時設計算法使雙端口RAM具有位讀寫能力,,即利用Core8051來靈活地讀寫雙端口RAM中的任何一位,這樣對圖像數(shù)據(jù)的處理就非常靈活了,。這種設計的最大優(yōu)點是如方法(1)一樣可以實時地顯示。
    本文結(jié)合(2),、(3)兩種方法進行系統(tǒng)的設計,,彌補了各種方案的缺點,實現(xiàn)了動態(tài),、實時顯示的功能,,使得片上系統(tǒng)的功能變得完善。這種設計結(jié)合了FPGA的可編程性成功解決了低端8位處理器無法驅(qū)動彩色TFT_LCD動態(tài),、實時顯示的問題,。在此基礎(chǔ)上,還可以利用FPGA和Core8051的資源開發(fā)其他的功能模塊,,例如與PC機的通信,、SD卡大量心電數(shù)據(jù)存儲、心電分析與報警等,。
3 系統(tǒng)測試及結(jié)果
    心電信號能力集中在中低頻段,,隨著頻率的升高,響應的能量也逐漸降低[6],。利用信號發(fā)生器產(chǎn)生不同頻率和幅值的正弦信號來模擬心電信號,并將其加到心電信號輸入端口,,可以看到CRT顯示器上顯示出和輸入信號完全一致的正弦波形,,沒有任何失真。
    Fution模數(shù)混合信號芯片的誕生給小型化,、便攜式片上系統(tǒng)的設計帶來了可能,本文通過對FPGA各種資源的綜合應用完成了一種心電監(jiān)護儀的片上系統(tǒng)的設計,,通過實際的測試驗證了它的準確性,。系統(tǒng)的所有功能都是在FPGA上完成的,所以它的單芯片性和FPGA可編程性,,給產(chǎn)品的升級帶來了極大的便利,。
參考文獻
[1] 呂德剛,李軍.微型心電監(jiān)護儀的開發(fā)[J].電子世界,,2008,,30(12).
[2] 葉一初,胡方明.基于ARM7的心電采集與遠程傳輸系統(tǒng)設計[J].電子設計工程,,2009,,17(6):83-85.
[3] 侯立亞.基于ARM的心電采集系統(tǒng)的設計[J].醫(yī)療衛(wèi)生裝備,2006,,27(1).
[4] 李曉燕.基于DSP的便攜心電數(shù)據(jù)采集處理系統(tǒng)[J].工業(yè)控制計算機,,2006,19(9):54-55.
[5] 龔小年,,張興敢.雙口RAM的發(fā)展及在現(xiàn)代數(shù)字系統(tǒng)中的應用[J].微處理機,,2007(4):110-111.
[6] 何偉.心電信號及各組分的頻率分布和有效帶寬研究[J].生物醫(yī)學工程學,1996,,12(4):336-340.

此內(nèi)容為AET網(wǎng)站原創(chuàng),,未經(jīng)授權(quán)禁止轉(zhuǎn)載。