郭 嘉,盧啟鵬,高洪智,丁海泉
1.中國(guó)科學(xué)院長(zhǎng)春光學(xué)精密機(jī)械與物理研究所應(yīng)用光學(xué)國(guó)家重點(diǎn)實(shí)驗(yàn)室,吉林 長(zhǎng)春 130033 2.中國(guó)科學(xué)院大學(xué),北京 100049
基于FPGA的無(wú)創(chuàng)傷血液成分光譜采集系統(tǒng)設(shè)計(jì)
郭 嘉1, 2,盧啟鵬1*,高洪智1,丁海泉1
1.中國(guó)科學(xué)院長(zhǎng)春光學(xué)精密機(jī)械與物理研究所應(yīng)用光學(xué)國(guó)家重點(diǎn)實(shí)驗(yàn)室,吉林 長(zhǎng)春 130033 2.中國(guó)科學(xué)院大學(xué),北京 100049
血液成分檢測(cè)是健康診斷的重要手段,常規(guī)的血液成分檢測(cè)采用抽血的方法,不僅給病人帶來(lái)痛苦,還存在交叉感染的風(fēng)險(xiǎn)。近紅外光譜技術(shù)是無(wú)創(chuàng)傷血液成分檢測(cè)中的研究熱點(diǎn)。為滿足近紅外無(wú)創(chuàng)傷血液成分檢測(cè)儀器對(duì)其光譜數(shù)據(jù)采集系統(tǒng)提出的高速、多通道和高信噪比的要求,設(shè)計(jì)了一種基于現(xiàn)場(chǎng)可編程門(mén)陣列(FPGA)的高速、多通道光譜數(shù)據(jù)采集系統(tǒng)。該系統(tǒng)采用Altera公司Cyclone IV系列的FPGA芯片作為其微控制器,控制兩片8通道的A/D芯片并行采集16通道的人體血液脈搏波光譜信號(hào),采集到的數(shù)據(jù)在FPGA的控制下首先緩存在FPGA內(nèi)部建立的乒乓RAM中,然后轉(zhuǎn)存至外部SRAM芯片中,最后經(jīng)USB總線傳輸至計(jì)算機(jī)。實(shí)驗(yàn)結(jié)果表明,在19 531 Hz的采樣頻率下,該系統(tǒng)能夠高速并行采集16個(gè)通道的信號(hào),重復(fù)性信噪比可達(dá)40 000∶1。此外,在該采樣率下,系統(tǒng)可以采集到高信噪比的人體血液脈搏波信號(hào),采集速度能夠達(dá)到每秒305幅光譜圖。該系統(tǒng)滿足近紅外無(wú)創(chuàng)傷血液成分檢測(cè)儀器對(duì)于光譜數(shù)據(jù)采集系統(tǒng)的基本要求。該研究的主要?jiǎng)?chuàng)新點(diǎn)為將FPGA應(yīng)用于近紅外無(wú)創(chuàng)傷血液成分檢測(cè)儀器的數(shù)據(jù)采集系統(tǒng)中,F(xiàn)PGA能夠同時(shí)控制兩片AD芯片進(jìn)行16路人體血液脈搏波數(shù)據(jù)的高速并行采集,解決了單片機(jī)作為微控制器時(shí)無(wú)法實(shí)現(xiàn)多通道大量數(shù)據(jù)高速采集和儲(chǔ)存的問(wèn)題,使儀器的采集速度大大加快;同時(shí)使用FPGA內(nèi)部資源建立乒乓RAM進(jìn)行數(shù)據(jù)的緩沖,實(shí)現(xiàn)了不同位數(shù)數(shù)據(jù)從AD芯片到SRAM芯片的無(wú)縫連續(xù)傳輸。
近紅外光譜;無(wú)創(chuàng)傷血液成分檢測(cè);FPGA;數(shù)據(jù)采集;乒乓RAM
血液成分檢測(cè)是健康診斷的重要手段。常規(guī)的血液成分檢測(cè)需要抽血檢驗(yàn),不但增加病人的痛感和交叉感染的風(fēng)險(xiǎn),而且不能立即獲得檢測(cè)結(jié)果,無(wú)法實(shí)現(xiàn)某些疾病所必需的實(shí)時(shí)連續(xù)監(jiān)測(cè)[1]。因此,人體血液成分的“無(wú)創(chuàng)、連續(xù)監(jiān)測(cè)”無(wú)疑成為當(dāng)前血液成分分析領(lǐng)域的研究熱點(diǎn)。近紅外光譜分析技術(shù)具有無(wú)創(chuàng)傷、無(wú)試劑、無(wú)污染、可實(shí)時(shí)監(jiān)測(cè)等優(yōu)點(diǎn),在無(wú)創(chuàng)傷血液成分分析中具有很高的研究?jī)r(jià)值和廣闊的前景[2]。然而,盡管?chē)?guó)內(nèi)外學(xué)者在此領(lǐng)域耗費(fèi)了大量的時(shí)間和精力,卻依然未能取得滿足臨床應(yīng)用的成果[3-7]。
對(duì)于無(wú)創(chuàng)傷血液成分分析,近紅外光譜技術(shù)面臨的主要問(wèn)題是:(1)有效信號(hào)如血液中的葡萄糖、膽固醇、甘油三酯等有效信號(hào)十分微弱;(2)組織背景如皮膚、骨骼、肌肉等對(duì)近紅外血液光譜的干擾嚴(yán)重[8]。為了克服人體組織產(chǎn)生的背景干擾,陳星旦[9]提出了“血流容積差光譜相減法”,利用短時(shí)間內(nèi)不同血流容積下測(cè)得的人體光譜相減,從而得到血液的光譜。為有效實(shí)現(xiàn)該方法,光譜測(cè)量系統(tǒng)需達(dá)到以下條件:(1)光譜系統(tǒng)必須同時(shí)采集光譜中所有波長(zhǎng)處的信號(hào);(2)光譜儀每秒鐘采集光譜圖數(shù)量不少于50幅;(3)光譜儀的信噪比要顯著高于10 000∶1[10]。實(shí)驗(yàn)室前期研究成果表明,采用16元陣列式探測(cè)器同時(shí)采集16個(gè)獨(dú)立像元,既保證所有波長(zhǎng)點(diǎn)的光強(qiáng)信號(hào)采集自同一時(shí)刻,又能使儀器具有較高的采集速度和信噪比[11]。這就要求儀器的數(shù)據(jù)采集系統(tǒng)能夠同時(shí)對(duì)16個(gè)通道的血液脈搏波數(shù)據(jù)進(jìn)行高速、高信噪比的采集。
傳統(tǒng)的數(shù)據(jù)采集系統(tǒng)通常采用單片機(jī)作為微控制器,控制多路信號(hào)的采集及處理。但是單片機(jī)本身存在一些不足:(1)難以達(dá)到較高的采集速度;(2)難以完成大量數(shù)據(jù)的快速儲(chǔ)存;(3)容易出現(xiàn)“程序跑飛”和“復(fù)位”現(xiàn)象[12]。相比之下,F(xiàn)PGA具有時(shí)鐘頻率高,內(nèi)部延時(shí)小,運(yùn)行速度快,內(nèi)部RAM資源豐富,易于控制較為復(fù)雜的外圍電路等諸多優(yōu)勢(shì),適合作為近紅外無(wú)創(chuàng)傷血液成分分析中高速多通道數(shù)據(jù)采集系統(tǒng)的微控制器。為了滿足無(wú)創(chuàng)傷血液成分檢測(cè)儀器對(duì)其光譜數(shù)據(jù)采集系統(tǒng)提出的高速、多通道和高信噪比的要求,本文提出了一種基于FPGA的高速多通道光譜數(shù)據(jù)采集系統(tǒng)設(shè)計(jì)方案。該系統(tǒng)使用Altera公司的cyclone IV系列的FPGA作為微控制器,結(jié)合高速A/D芯片、SRAM儲(chǔ)存芯片和USB芯片實(shí)現(xiàn)了16個(gè)通道人體血液脈搏波信號(hào)的高速采集、儲(chǔ)存和傳輸。系統(tǒng)的采集速度和信噪比均滿足近紅外無(wú)創(chuàng)傷血液成分檢測(cè)儀器的基本要求。
1.1 系統(tǒng)的組成和工作原理
系統(tǒng)的原理圖如圖1所示,其中,信號(hào)調(diào)理和A/D轉(zhuǎn)換部分實(shí)現(xiàn)數(shù)據(jù)采集;SRAM芯片用于數(shù)據(jù)儲(chǔ)存;USB芯片CY7C68013用于數(shù)據(jù)通信;FPGA是整個(gè)系統(tǒng)的微控制器,實(shí)現(xiàn)對(duì)系統(tǒng)各個(gè)部分的控制。
圖1 數(shù)據(jù)采集系統(tǒng)原理圖
系統(tǒng)設(shè)計(jì)主要為實(shí)現(xiàn)近紅外無(wú)創(chuàng)傷血液成分檢測(cè)中16個(gè)通道血液脈搏波數(shù)據(jù)的高速的采集、儲(chǔ)存和傳輸。系統(tǒng)上電后,計(jì)算機(jī)向數(shù)據(jù)采集系統(tǒng)發(fā)出采集指令,隨后FPGA控制A/D芯片進(jìn)行16個(gè)通道血液脈搏波數(shù)據(jù)的并行采集,F(xiàn)PGA接收數(shù)據(jù)并將其存入內(nèi)部建立的乒乓RAM中。當(dāng)乒乓RAM被寫(xiě)滿時(shí),F(xiàn)PGA將數(shù)據(jù)轉(zhuǎn)存至SRAM中,當(dāng)SRAM被寫(xiě)滿時(shí),F(xiàn)PGA控制A/D芯片停止采集,并控制SRAM將其中的數(shù)據(jù)通過(guò)USB接口傳輸至計(jì)算機(jī)。
1.2 系統(tǒng)的模塊化
系統(tǒng)分為數(shù)據(jù)采集模塊、FPGA模塊和SRAM數(shù)據(jù)儲(chǔ)存模塊和USB通信模塊。其中FPGA模塊是系統(tǒng)的核心,控制數(shù)據(jù)采集、儲(chǔ)存和傳輸。各個(gè)模塊既具有相對(duì)的獨(dú)立性,又通過(guò)FPGA聯(lián)系到一起。采用模塊化設(shè)計(jì)的方法,有助于系統(tǒng)的設(shè)計(jì)、調(diào)試和維護(hù),同時(shí)易于功能的擴(kuò)展。
1.2.1 數(shù)據(jù)采集模塊
近紅外無(wú)創(chuàng)傷血液成分檢測(cè)儀器需要實(shí)現(xiàn)16通道高速、高信噪比數(shù)據(jù)采集。為提升系統(tǒng)信噪比,采用全差動(dòng)放大器,通過(guò)差分輸入去除共模噪聲干擾;為保證采集速度,選用TI公司的一款8通道、24位的A/D芯片,其采樣速率最高為128 kSPS,信噪比最高為111 dB,最高支持37 MHz的時(shí)鐘輸入;為實(shí)現(xiàn)16通道數(shù)據(jù)的并行采集,系統(tǒng)采用兩片A/D同時(shí)工作。
數(shù)據(jù)采集模塊的任務(wù)是將探測(cè)器采集到的模擬信號(hào)通過(guò)A/D芯片轉(zhuǎn)換成24位的數(shù)字信號(hào)傳輸至FPGA,A/D芯片和FPGA的接口如圖2所示,圖中CLK,SCLK,F(xiàn)SYNC為時(shí)鐘接口,是FPGA提供給A/D芯片的時(shí)鐘信號(hào);DOUT1~8為數(shù)據(jù)接口,是FPGA接收A/D芯片采集到的1~8通道24位串行數(shù)據(jù)。
圖2 FPGA和A/D芯片接口
1.2.2 FPGA模塊
系統(tǒng)選用Altera公司Cyclone IV系列的FPGA作為系統(tǒng)的微控制器。該系列FPGA時(shí)鐘可達(dá)50 MHz,可用I/O管腳為179個(gè),具有2個(gè)鎖相環(huán)(PLL)和10個(gè)全局時(shí)鐘網(wǎng)絡(luò),還擁有6 272個(gè)邏輯單元(LE)和270KB的RAM等。此外,Altera公司的Quartus II 11.0軟件還提供了很多IP核,可以完成如建立RAM,實(shí)現(xiàn)固定算法等操作。
1.2.3 SRAM模塊
系統(tǒng)高速并行采集16個(gè)通道的血液脈搏波數(shù)據(jù),處理的數(shù)據(jù)量較大,需要外擴(kuò)儲(chǔ)存芯片來(lái)緩存FPGA接收的數(shù)據(jù),選用CYPRESS公司的一款128K×16bit的SARM芯片,該芯片可以存儲(chǔ)至多2 Mbit數(shù)據(jù),具有傳輸速度快,控制方便的優(yōu)點(diǎn)。SRAM芯片和FPGA的接口如圖3所示。圖中CE為片選信號(hào),低電平有效;OE為讀使能信號(hào),低電平有效;WE為寫(xiě)使能信號(hào),低電平有效;ADDR[16∶0]為17位地址總線,DATA[15∶0]為16位雙向數(shù)據(jù)總線。
圖3 FPGA和SRAM芯片接口
1.2.4 USB通信模塊
目前廣泛應(yīng)用的通信方式主要有USB通信和串口通信。相比而言,USB通信的傳輸速度更快,同時(shí)穩(wěn)定性和準(zhǔn)確性也能得到保證,更適合脈搏波數(shù)據(jù)的傳輸,因此系統(tǒng)采用USB通信方式。USB通信模塊的任務(wù)是將SRAM中儲(chǔ)存的數(shù)據(jù)通過(guò)USB接口傳輸至計(jì)算機(jī)。USB接口電路采用Cypress公司的CY7C68013芯片,該芯片集USB2.0收發(fā)器、智能串行接口引擎(SIE)、增強(qiáng)的8051內(nèi)核、I2C總線接口以及通用可編程接口(GPIF)于一體,可用做USB外設(shè)的主控制芯片。CY7C68013提供三種接口方式,分別是SLAVE FIFO、端口模式和可編程GPIF模式。系統(tǒng)選用SLAVE FIFO模式,其接口如圖4所示,其中IFCLK為接口時(shí)鐘引腳;FLAG A/B/C為FIFO標(biāo)志引腳,用來(lái)映射FIFO當(dāng)前狀態(tài);SLCS為從屬FIFO的片選信號(hào)引腳;SLOE為輸出時(shí)能引腳;SLRD為讀信號(hào)引腳;SLWR為寫(xiě)信號(hào)引腳;FD[15∶0]為16位雙向數(shù)據(jù)總線;FIFOADR[1∶0]用于選用和FD連接端點(diǎn)緩沖區(qū);FPGA通過(guò)PKTEND引腳對(duì)USB發(fā)送一個(gè)非標(biāo)準(zhǔn)長(zhǎng)度IN數(shù)據(jù)包[13]。
圖4 FPGA與CY7C68013芯片接口
FPGA邏輯設(shè)計(jì)采用自頂向下(top_down)的設(shè)計(jì)方法,使用Verilog HDL語(yǔ)言分別進(jìn)行A/D控制模塊、乒乓RAM控制模塊、SRAM控制模塊和USB數(shù)據(jù)通信模塊的設(shè)計(jì),然后將其綜合成一個(gè)完整的模塊,實(shí)現(xiàn)整個(gè)數(shù)據(jù)采集系統(tǒng)的功能。
2.1 A/D控制模塊
A/D芯片的時(shí)鐘輸入與數(shù)據(jù)輸出的時(shí)序關(guān)系如圖5所示,其中CLK是A/D芯片的主時(shí)鐘,其時(shí)鐘頻率是位移時(shí)鐘SCLK頻率的次冪(n=0, 1, 2, …),同時(shí)CLK的頻率是幀同步時(shí)鐘FSYNC頻率的256倍。
圖5 A/D芯片工作時(shí)序
系統(tǒng)采用16個(gè)通道并行輸出的方式保證脈搏波數(shù)據(jù)的高速傳輸,F(xiàn)PGA時(shí)鐘選用50MHz的外接晶振,使用鎖相環(huán)(PLL)對(duì)FPGA的時(shí)鐘進(jìn)行分頻,提供A/D芯片所需時(shí)鐘CLK和SCLK。PLL使用Quartus Ⅱ 11.0內(nèi)置IP核實(shí)現(xiàn),通過(guò)參數(shù)設(shè)置輸出不同頻率的時(shí)鐘,用來(lái)測(cè)試不同采樣率下系統(tǒng)的信噪比。
2.2 乒乓RAM控制模塊
為保證脈搏波數(shù)據(jù)的精度,系統(tǒng)選用24位的A/D芯片,但是儲(chǔ)存數(shù)據(jù)的SRAM芯片只有16位數(shù)據(jù)總線,因此數(shù)據(jù)需要在FPGA內(nèi)部進(jìn)行重新組合。同時(shí),為保證系統(tǒng)能夠連續(xù)采集,重組后的數(shù)據(jù)需要不間斷的發(fā)送至SRAM。為解決這一問(wèn)題,可以利用FPGA片內(nèi)的Block RAM設(shè)計(jì)一個(gè)讀寫(xiě)位數(shù)不同的乒乓RAM進(jìn)行數(shù)據(jù)的緩沖,采用乒乓傳輸結(jié)構(gòu)可以保證數(shù)據(jù)的無(wú)縫傳輸。整個(gè)模塊使用Verilog HDL硬件描述語(yǔ)言編寫(xiě),在Quartus Ⅱ 11.0中完成編譯和綜合, 并在Modelsim SE 10.0c進(jìn)行波形仿真,仿真波形如圖7所示,從圖中可以看出數(shù)據(jù)依次連續(xù)從兩個(gè)RAM中讀出。
圖6 乒乓RAM模塊仿真波形
2.3 SRAM控制模塊設(shè)計(jì)
SRAM用于儲(chǔ)存大量的脈搏波數(shù)據(jù),為提高系統(tǒng)信噪比,將乒乓RAM中各個(gè)通道的數(shù)據(jù)做平均后再寫(xiě)入到SRAM中。SRAM控制模塊分為寫(xiě)控制模塊和讀控制模塊兩部分:寫(xiě)控制是將乒乓RAM中的數(shù)據(jù)做平均后寫(xiě)入到SRAM中;讀控制是將SRAM的數(shù)據(jù)通過(guò)USB接口傳輸至計(jì)算機(jī)。根據(jù)系統(tǒng)要求,SRAM控制模塊需要首先將SRAM寫(xiě)滿,然后再將其中數(shù)據(jù)按照需要讀出,完成一次讀寫(xiě)操作。根據(jù)所選SRAM芯片的讀寫(xiě)時(shí)序要求,采用有限狀態(tài)機(jī)的方法進(jìn)行SRAM控制模塊的設(shè)計(jì)。狀態(tài)轉(zhuǎn)移圖如圖8所示。狀態(tài)轉(zhuǎn)移進(jìn)程如下:
IDLE:當(dāng)乒乓RAM寫(xiě)滿時(shí),轉(zhuǎn)到狀態(tài)WRITE1,否則維持IDLE;
WRITE1:將乒乓RAM中數(shù)據(jù)做平均,同時(shí)拉低片選信號(hào)CE和寫(xiě)使能信號(hào)WE,轉(zhuǎn)到狀態(tài)WRITE2;
WRITE2:下一個(gè)時(shí)鐘上升沿到來(lái),轉(zhuǎn)到狀態(tài)WRITE3;
WRITE3:將乒乓RAM中數(shù)據(jù)發(fā)送至SRAM雙向數(shù)據(jù)總線DATA[15∶0],如果SRAM被寫(xiě)滿,轉(zhuǎn)到狀態(tài)READ1,否則轉(zhuǎn)回狀態(tài)WRITE1繼續(xù)寫(xiě)入數(shù)據(jù);
READ1:拉低片選信號(hào)CE和讀使能信號(hào)OE,拉高寫(xiě)使能信號(hào)WE,轉(zhuǎn)到狀態(tài)READ2;
READ2:下一個(gè)時(shí)鐘上升沿到來(lái),轉(zhuǎn)到狀態(tài)READ3;
READ3:讀取SRAM雙向數(shù)據(jù)總線DATA[15∶0]上的數(shù)據(jù),如果SRAM被讀空,轉(zhuǎn)到狀態(tài)IDLE,否則轉(zhuǎn)回狀態(tài)READ1繼續(xù)讀取數(shù)據(jù)。
圖7 SRAM控制模塊狀態(tài)轉(zhuǎn)移圖
2.4 數(shù)據(jù)通信模塊
利用CY7C68013的USB接口功能實(shí)現(xiàn)FPGA和計(jì)算機(jī)之間的數(shù)據(jù)傳輸。數(shù)據(jù)通信模塊設(shè)計(jì)由三部分組成:FPGA中的Verilog HDL程序、USB固件(Firmware)和USB設(shè)備驅(qū)動(dòng)程序。
在Slave FIFO模式下,F(xiàn)PGA可以像對(duì)普通FIFO一樣對(duì)CY7C68013的多層緩沖FIFO進(jìn)行讀寫(xiě)。該芯片為每個(gè)端口提供了“空”標(biāo)志、“滿”標(biāo)志和“可編程級(jí)”標(biāo)志,F(xiàn)PGA可以監(jiān)測(cè)這些信號(hào),用于讀寫(xiě)過(guò)程的控制[14]。數(shù)據(jù)通信模塊包括FIFO讀模塊和FIFO寫(xiě)模塊,F(xiàn)IFO讀模塊用于FPGA讀取計(jì)算機(jī)發(fā)送的采集指令,F(xiàn)IFO寫(xiě)模塊用于將SRAM儲(chǔ)存的數(shù)據(jù)通過(guò)USB接口發(fā)送至計(jì)算機(jī)上。整個(gè)模塊使用Verilog HDL硬件描述語(yǔ)言編寫(xiě),在Quartus Ⅱ 11.0中完成編譯和綜合,并映射到FPGA中運(yùn)行。
對(duì)于固件程序和驅(qū)動(dòng)程序的編寫(xiě),本設(shè)計(jì)采用Cypress公司為CY7C68013系列芯片提供的固件框架和驅(qū)動(dòng)程序。固件框架可以實(shí)現(xiàn)初始化芯片,處理標(biāo)準(zhǔn) USB設(shè)備請(qǐng)求以及 USB 掛起時(shí)的電源管理等,只需將自行開(kāi)發(fā)的代碼填入到固件框架中就可以實(shí)現(xiàn)所需功能。
3.1 信噪比測(cè)試實(shí)驗(yàn)
(1)
結(jié)果如表1所示。從表中可以看出,采樣率在3 096和19 531Hz之間時(shí)(時(shí)鐘頻率為1~5MHz),系統(tǒng)信噪比可以維持在40 000∶1左右;當(dāng)系統(tǒng)采樣率逐漸高于19 531Hz時(shí),系統(tǒng)信噪比開(kāi)始顯著降低,當(dāng)采樣率提高到97 655Hz(時(shí)鐘頻率為25MHz),系統(tǒng)的信噪比只有10 000∶1。由于近紅外無(wú)創(chuàng)傷血液成分分析要求系統(tǒng)信噪比要顯著高于10 000∶1,選擇19 531Hz作為系統(tǒng)的采樣率。在該采樣率下,由于數(shù)據(jù)是每64做平均,經(jīng)計(jì)算可得出每秒采集305幅光譜圖,滿足每秒至少采集50幅的要求。
3.2 血液脈搏波數(shù)據(jù)采集實(shí)驗(yàn)
在信噪比測(cè)試完成且達(dá)到要求后,將系統(tǒng)應(yīng)用到近紅外無(wú)創(chuàng)傷血液成分分析儀中進(jìn)行血液脈搏波數(shù)據(jù)采集實(shí)驗(yàn)。實(shí)驗(yàn)采集一名25歲男性志愿者右手食指的脈搏波信號(hào),采樣率為19 531Hz,采集時(shí)間為10s,采集點(diǎn)數(shù)為3 050個(gè)。以信噪比最高的第8通道為例,其脈搏波信號(hào)如圖8所示,由圖中可以看出,該系統(tǒng)可以采集到高信噪比的人體血液脈搏波信號(hào),且在同一時(shí)刻,可采集16個(gè)波長(zhǎng)點(diǎn)的信號(hào),得到高信噪比的近紅外光譜。
圖8 第8通道食指血液脈搏波信號(hào)
為滿足無(wú)創(chuàng)傷血液成分檢測(cè)儀器對(duì)其光譜數(shù)據(jù)采集系統(tǒng)的要求:系統(tǒng)同時(shí)采集16通道信號(hào),每秒至少采集50幅光譜圖,而且信噪比要顯著高于10 000∶1。本文設(shè)計(jì)了一種新型高速多通道光譜數(shù)據(jù)采集系統(tǒng),該系統(tǒng)選用Cyclone Ⅳ系列FPGA作為微控制器,控制兩片8通道的A/D芯片并行采集16通道人體血液脈搏波信號(hào);使用FPGA內(nèi)部乒乓RAM進(jìn)行數(shù)據(jù)的重組和緩沖,使用外部SRAM進(jìn)行數(shù)據(jù)的儲(chǔ)存;通過(guò)USB總線進(jìn)行FPGA與計(jì)算機(jī)之間的高速通信。該設(shè)計(jì)有效解決了以單片機(jī)為微控制器的數(shù)據(jù)采集系統(tǒng)采集速度低,儲(chǔ)存數(shù)據(jù)量少等問(wèn)題。通過(guò)實(shí)驗(yàn)驗(yàn)證,在19 531 Hz的采樣率下,系統(tǒng)的重復(fù)性信噪比可達(dá)40 000∶1,采集速度可達(dá)每秒305幅光譜圖。在該條件下,系統(tǒng)可以同時(shí)采集16個(gè)波長(zhǎng)點(diǎn)的人體近紅外血液脈搏波信號(hào),得到高信噪比的近紅外光譜。實(shí)驗(yàn)結(jié)果表明:該系統(tǒng)能夠滿足無(wú)創(chuàng)傷血液成分檢測(cè)儀器對(duì)于其光譜數(shù)據(jù)采集系統(tǒng)的基本要求,可以實(shí)現(xiàn)16個(gè)通道的人體血液脈搏波數(shù)據(jù)的高速采集、儲(chǔ)存和傳輸。
[1] GAO Hong-zhi,LU Qi-peng,DING Hai-quan,et al(高洪智,盧啟鵬,丁海泉,等).Optics and Precision Engineering(光學(xué)精密工程),2013,21(8):1974.
[2] YU Xin-yang,LU Qi-peng,GAO Hong-zhi,et al(于新洋,盧啟鵬,高洪智,等).Spectroscopy and Spectral Analysis(光譜學(xué)與光譜分析),2013,33(11):2983.
[3] Chen J, Arnold M A, Small G W.Analytical Chemistry, 2004, 76(18): 5405.
[4] Maruo K, Tsurugi M, Tamura M, et al.Applied Spectroscopy, 2005, 59(12): 1480.
[5] Saptari V, Youcef-Toumi K.Applied Optics, 2004, 43(13): 2680.
[6] Olesberg J T, Arnold M A, Mermelstein C, et al.Applied Spectroscopy, 2005, 59(12): 1480.
[7] Arnold M A, Small G W.Analytical Chenistry, 2005, 77(17): 5429.
[8] LU Qi-peng,CHEN Cong,PENG Zhong-qi(盧啟鵬,陳 叢,彭忠琦).Optics and Precision Engineering(光學(xué)精密工程),2012,20(4):873.
[9] CHEN Xing-dan(陳星旦).Optics and Precision Engineering(光學(xué)精密工程),2008,16(5):759.
[10] YANG Hao-wen(楊皓旻).Research on Influence of Instrument Parameters to Noninvasive Biomedical Measurement by Near-Infrared Spectroscopy(儀器條件對(duì)近紅外光譜無(wú)創(chuàng)傷血液成分檢測(cè)影響的研究) .Changchun:Changchun Institute of Optics,F(xiàn)ine Mechanics and Physics,Chinese Academy of Sciences(長(zhǎng)春:中國(guó)科學(xué)院長(zhǎng)春光學(xué)精密機(jī)械與物理研究所),2011.
[11] CHEN Cong(陳 叢).Study on Fast and High Signal-to-noise Ratio Spectrum Signal Detection Technique of Noninvasive Biochemical Monitoring by NIRS(近紅外無(wú)創(chuàng)傷血液成分分析中快速高信噪比光譜信號(hào)檢測(cè)技術(shù)研究).Changchun:Changchun Institute of Optics,F(xiàn)ine Mechanics and Physics,Chinese Academy of Sciences(長(zhǎng)春:中國(guó)科學(xué)院長(zhǎng)春光學(xué)精密機(jī)械與物理研究所),2013.
[12] GUAN Shou-ping, YOU Fu-qiang, Dong Guo-wei(關(guān)守平,尤富強(qiáng),董國(guó)偉).Control Engineering of China(控制工程),2013, 20(5):970.
[13] QIAN Feng(錢(qián) 峰).EZ-USB FX2 MCU Principle, Programming and Application(EZ-USB FX2單片機(jī)原理、編程及應(yīng)用).Beijing:Beijing University of Aeronautics and Astronautics Press(北京: 北京航空航天大學(xué)出版社),2006.148.
[14] HUANG Tu-chen,GONG Hui,SHAO Bei-bei(黃土琛,宮 輝,邵貝貝).Atomic Energy Science and Technology(原子能科學(xué)技術(shù)),2013,47(11): 2172.
(Received Jun.10, 2015; accepted Oct.25, 2015)
*Corresponding author
Design of Noninvasive Blood Constituent Spectrum Data Acquisition System Based on FPGA
GUO Jia1, 2,LU Qi-peng1*,GAO Hong-zhi1,DING Hai-quan1
1.State Key Laboratory of Applied Optics, Changchun Institute of Optics, Fine Mechanics and Physics, Chinese Academy of Sciences, Changchun 130033, China 2.University of Chinese Academy of Sciences, Beijing 100049, China
Blood constituent examination is an important means of health diagnosis.For blood constituent examination, we usually adopt the method of drawing blood, which bring pain and the risk of cross infection to the patient.Near infrared spectrum spectroscopy (NIRS) is a research hotspot in noninvasive blood constituent examination.The spectral data acquisition system of existing instruments is using a Single Chip Microcomputer (SCM) as its microcontroller.The spectral data acquisition system cannot realize the high speed multi-channel acquisition and storage of large amounts of data because of the SCM itself has certain deficiency.So a high speed multi-channel spectral data acquisition system based on Field Programmable Gate Array (FPGA) was designed in this paper in order to realize the system of high speed, multi-channel and high signal-to-noise ratio (SNR) in the area of noninvasive blood constituent examination by near infrared spectroscopy.An Altera Cyclone IV series FPGA was used as the microcontroller in this spectral data acquisition system, which simultaneously controlled two pieces of eight channels AD conversion chip acquiring 16 channels blood pulse wave signal parallel.Under the control of FPGA, the data was cached in FPGA internal ping-pong RAM first, after that it was transferred to an SRAM chip, finally it was sent to the computer via the USB port.Experiment result shows that the spectral data acquisition system can collect 16 channels signal parallel and fast under the sampling frequency of 19 531 Hz and the repetitive signal-to-noise ratio is over 40 000∶1.The system can collect 305 spectrograms per second, more over it can get high SNR human body blood pulse wave signal under the same circumstances.The spectral data acquisition system satisfies the basic requirements of the noninvasive blood constituent examination instrument by NIRS and it can make the instrument collect the human body blood pulse wave data at a high speed.The main innovation point of this article is applying FPGA to the spectral data acquisition system of near infrared noninvasive blood constituent examination instrument.FPGA is able to simultaneously control two pieces of eight channels AD conversion chip acquiring 16 channels blood pulse wave signal parallel.By using FPGA as the microcontroller of the spectral data acquisition system, we solve the problem that SCM as the microcontroller can’t realize multi-channel high speed data acquisition and storage of large amounts of data.The acquisition speed is greatly faster than the system before.The second innovation point of this article is we use FPGA internal resources establish a ping-pong RAM buffer.The spectral data from the AD chip is 24 bit, however, the SRAM chip has only 16 bit data bus.Via the ping-pang RAM buffer, the spectral data can transfer from AD chip to SRAM chip.The ping-pong RAM can realize different digits data seamless transfer from AD chip to SRAM chip.
Near infrared spectroscopy; Noninvasive blood constituent examination; FPGA; Data acquisition; Ping-pong RAM
2015-06-10,
2015-10-25
國(guó)家高技術(shù)研究發(fā)展計(jì)劃(863計(jì)劃)項(xiàng)目(2012AA022602),國(guó)家自然科學(xué)基金青年基金項(xiàng)目(61308067,61475155),吉林省科技發(fā)展計(jì)劃項(xiàng)目(20140204078GX)和應(yīng)用光學(xué)國(guó)家重點(diǎn)實(shí)驗(yàn)室自主基金項(xiàng)目(Y2Q03FQZ01)資助
郭 嘉,1990年生,中國(guó)科學(xué)院長(zhǎng)春光學(xué)精密機(jī)械與物理研究所碩士研究生 e-mail:guojia486542@126.com *通訊聯(lián)系人 e-mail:luqipeng@126.com
O657.3
A
10.3964/j.issn.1000-0593(2016)09-2991-06