龐 勛,姚 鐳
(上海大學微電子學院,上海 200444)
腦機接口系統(tǒng)是指人和動物與外界設(shè)備建立直接連接的系統(tǒng),通常用于監(jiān)測腦部的一些疾病,例如癲癇、自閉癥和成癮癥等[1]。在植入式腦機接口系統(tǒng)中,前端多通道神經(jīng)信號采集IC 受到電極阻抗、應用環(huán)境、系統(tǒng)功耗以及系統(tǒng)面積等因素影響,在信號采集過程中,將會引入更多的噪聲和干擾。而從低信噪比的原始采集信號中實時檢測出動作電位,對于神經(jīng)科學研究具有重要意義。與芯片外的后處理方式相比,片上實時檢測動作電位(Action Potential, AP)通過傳輸有效信息,可以將通信帶寬從每秒數(shù)十兆字節(jié)減少到幾千字節(jié)[2],以實現(xiàn)無線傳輸。
動作電位檢測算法可以分為閾值檢測算法和模板匹配算法[3-4],以及最近幾年流行的深度學習算法。首先,不管是早期人為設(shè)置閾值[5],還是后來出現(xiàn)的各種衍生算法,如計算輸入信號均方值、自動閾值計算的雙閾值A(chǔ)P 信號檢測方法[6]等算法,這些算法都只關(guān)注了單一的時域信息,當信號信噪比降低時,都會發(fā)生漏檢和誤檢。而深度學習算法[7]雖然可以取得不錯的檢測效果,但是資源消耗較大,例如,用于動作電位檢測的卷積神經(jīng)網(wǎng)絡(luò)[8]有近70 萬權(quán)重參數(shù)。而模板匹配算法[9]是通過原始采集信號與動作電位模板的相似程度來判定是否檢測到動作電位。另外,基于離散小波變換的模板匹配算法[6],對于原始采集信號的強度和信噪比要求苛刻,同時需要設(shè)置大量濾波器參數(shù),不利于實現(xiàn)片上檢測系統(tǒng)。
綜上所述,模板匹配算法在低信噪比環(huán)境下表現(xiàn)優(yōu)于閾值檢測算法,算法復雜度小于深度學習算法模型。然而,模板匹配算法依賴于模板質(zhì)量,本文在模板匹配的基礎(chǔ)上,引入信號歸一化,去除冗余信息,有效地解決模板之間差異過大的問題。同時,本文根據(jù)算法原理設(shè)計動作電位檢測系統(tǒng),在中芯國際180 nm 數(shù)字工藝下設(shè)計并流片,測試檢測IC 的檢測效果及功耗。
本文改進和擴展了單一的模板匹配算法,在模板匹配的基礎(chǔ)上,將輸入信號與閾值模板向量歸一化,提高檢測性能和抗噪能力。在VLSI 結(jié)構(gòu)設(shè)計中,優(yōu)化模長計算方式,并設(shè)置每幀輸入向量的篩選機制,減少檢測芯片的計算量與功耗。
模板匹配的核心是計算輸入信號與預置模板的卷積,得到兩者的相關(guān)性[10]。若將每次輸入的信號向量視作1 幀,則第m幀輸入信號與模板信號的相關(guān)程度的計算公式如下:
式中:Xm是第m幀輸入向量,采樣長度為N,即Xm=[x[m],x[m- 1] ,…,x[m-N+ 1]]T;t是預置的模板向量,有N個采樣點,即t=[t[ 1 ],t[ 2 ],…,t[N- 1]]T。通過式(1)計算相關(guān)性值,值越大,相關(guān)程度越接近。
在動作電位檢測中,神經(jīng)信號歸一化可以改善特征提取的效果,突出動作電位的特征,提高算法分類識別能力。引入信號歸一化后,可得:
神經(jīng)信號是由采集芯片不間斷地輸入,則輸入信號Xm和Xm-1之間重復出現(xiàn)了N- 1 個點,所以計算,不妨先計算,計算公式如下:
式中:x[m-N]為輸入向量Xm-1的第一個數(shù)據(jù),相比向量模長的定義,極大地減少了計算量。
當輸入信號與動作電位模板的相似程度超過特定閾值α時,則判定輸入信號為動作電位,判定條件為:
式中:α∈[0.5,0.6] 時,便可以取得不錯的檢測效果[11]。
為節(jié)省計算量,需將每幀輸入向量和動作電位的峰值對齊,并通過式(5)篩選輸入向量:
動作電位檢測IC 主要用于接收前端采集IC 中的數(shù)模轉(zhuǎn)換器輸出,可預先選擇是否更新算法中的模板數(shù)據(jù)和閾值,避免模板過于陳舊時,影響檢測芯片的識別準確度[12]。
動作電位檢測系統(tǒng)整體分為片外模板提取和片上檢測兩部分。片外模板提取可以在不受功耗和性能約束的情況下,選取精確、優(yōu)質(zhì)的模板,并通過SPI 接口隨時更新片上檢測IC 中的模板和閾值信息。動作電位檢測系統(tǒng)工作流程如圖1 所示。
圖1 動作電位檢測系統(tǒng)工作流程
根據(jù)算法原理,片上動作電位檢測芯片包含3 個步驟:
1)數(shù)據(jù)的預處理,將輸入信號和模板信號的極值對齊,并檢測局部峰值電位是否滿足式(5),篩選符合條件的輸入信號。
2)主要實現(xiàn)輸入信號和模板信號的卷積,并計算輸入向量模長平方,以計算歸一化后的輸入向量。
3)輸出比較,即根據(jù)式(4)判斷輸入是否為動作電位。
動作電位檢測系統(tǒng)主要分成數(shù)據(jù)預處理、卷積、歸一化和比較器四個模塊,如圖2 所示。
圖2 動作電位檢測系統(tǒng)結(jié)構(gòu)
數(shù)據(jù)預處理模塊主要根據(jù)極值幅度篩選神經(jīng)信號,在該模塊中,輸入信號和模板信號都是有符號的8 bit數(shù)據(jù),且模板動作電位長度為48 個采樣點。卷積模塊實現(xiàn)輸入信號與模板動作電位的卷積運算,計算兩者之間的相似程度。卷積模塊使用48 個乘法器組,在兩個時鐘周期內(nèi)可得到卷積結(jié)果。
歸一化模塊用于計算輸入信號的歸一化。根據(jù)式(3),先計算輸入向量模長的平方,然后開根號得到輸入向量模長。在開根號部分,采用逐次逼近方法,通過16 次迭代可以得到精確的16 位模長結(jié)果。最后,在比較器模塊中對所有數(shù)據(jù)幀截取相同長度的小數(shù)位,結(jié)合預先設(shè)置的閾值,根據(jù)式(4)來判定輸入的數(shù)據(jù)幀是否為動作電位。相比于直接輸出采集芯片的8 bit 數(shù)據(jù)流,經(jīng)過動作電位檢測芯片處理后,數(shù)據(jù)流變?yōu)? bit,有效地降低了傳輸帶寬。
動作電位檢測系統(tǒng)包含SPI 從機接口,用于配置更新動作電位模板和閾值。由于模塊并非同時工作,如SPI 接口只用于更新數(shù)據(jù),故插入門控時鐘和使能信號,可以有效降低檢測芯片功耗。
本節(jié)主要進行算法模型測試和流片后的測試與分析。算法測試主要在不同噪聲水平下,評估本文算法、模板匹配算法和閾值比較算法的性能表現(xiàn)。在硬件測試部分,結(jié)合FPGA 進行測試,評估檢測芯片在低信噪比環(huán)境下的性能表現(xiàn)。
2.1.1 真實采集數(shù)據(jù)集
實驗室真實數(shù)據(jù)來自真實動物實驗,將采集芯片植入小鼠腦部,收集真實數(shù)據(jù)。電極植入小鼠的聽覺皮層,通過打響指和不同風格的音樂來刺激老鼠聽覺皮層,并實時采集數(shù)據(jù)。其中,采集芯片MTXR32P 為實驗室自研的32 通道采集IC,原始神經(jīng)信號經(jīng)過SAR-ADC轉(zhuǎn)化后并行輸出。SAR-ADC 的采樣頻率為31.25 kHz,設(shè)定一個輸入神經(jīng)信號幀為48 個采樣點,則動作電位持續(xù)時間在1.5 ms 內(nèi)。
2.1.2 模擬數(shù)據(jù)集
在真實采集數(shù)據(jù)基礎(chǔ)上,模擬真實采集到的神經(jīng)信號,構(gòu)建不同噪聲水平的模擬數(shù)據(jù)。神經(jīng)信號的模擬數(shù)據(jù)生成示意圖如圖3 所示。
圖3 神經(jīng)信號的模擬數(shù)據(jù)生成示意圖
由于采集電極的阻抗與活躍神經(jīng)元的距離不同會導致信號強度存在差異,故提取典型的動作電位后,配上不同的權(quán)重W來調(diào)幅。為模擬神經(jīng)信號的稀疏性,將調(diào)幅后的神經(jīng)信號隨機散布在神經(jīng)信號中。最后,通過信噪比計算公式[13],構(gòu)建多個信噪比的神經(jīng)信號。單個模擬數(shù)據(jù)集的長度為24 萬個采樣點,其中,動作電位數(shù)量均為521 個。
由于動作電位在神經(jīng)信號中的稀疏性,動作電位樣本和非動作電位樣本比例失衡,故本文主要采用PRC(Precision Recall Curve)曲線[14]來評估算法模型的性能。PRC 曲線中,查準率(Precision)指正確檢測的動作電位樣本占檢測到的所有動作電位樣本的比例。召回率(Recall)指檢測正確的動作電位數(shù)量占實際動作電位數(shù)量的比例。最后,可以使用式(6)計算F1-Score 來評價算法模型的綜合性能。
當神經(jīng)信號動作電位已知且彼此不重疊時,根據(jù)圖3 構(gòu)造4 種不同噪聲水平(-8 dB、-10 dB、-12 dB 和-14 dB)的神經(jīng)信號。圖4 所示為本文算法模型和閾值比較算法的PRC 曲線。
圖4 PRC 曲線
比較圖4a)和圖4b)可知,本文算法和閾值比較算法在信噪比較高的環(huán)境下(-8 dB),都能取得非常好的檢測效果,查準率和召回率都達到90%以上。然而,在低信噪比環(huán)境下,閾值比較算法的性能大幅下降,如在信噪比為-12 dB 的數(shù)據(jù)集中,本文算法在保證90%的查準率下,召回率達到89.64%;而閾值比較算法模型的召回率僅為6.53%,意味在521 個動作電位樣本中,僅檢測出34 個動作電位樣本,漏檢了487 個數(shù)據(jù)樣本。
當動作電位未知,考慮動作電位之前互相疊加情況,在信噪比為-10 dB 情況下,將本文算法模型與其他動作電位檢測方法進行比較。此時,在片外用一維CNN 網(wǎng)絡(luò)對神經(jīng)信號做動作電位分類,從神經(jīng)信號中提取動作電位模板。多種算法模型的PRC曲線如圖5所示。
圖5 多種算法模型的PRC 曲線
由圖5 可知,本文算法和模板匹配算法的表現(xiàn)要遠遠好于閾值比較算法,在該信噪比下,閾值比較算法F1-Score 僅為74.3%。當以78%的查準率為基準時,本文算法的召回率為70.44%,而模板匹配算法的召回率僅為43.19%,兩者相差27.25%。在相同查準率下,本文算法總是好于未改進的模板匹配算法。
此外,統(tǒng)計三種算法模型在不同信噪比下的F1-Score,以衡量算法模型的綜合性能。本文算法和模板匹配算法模型均采用閾值α為0.5,而閾值比較算法使用輸入信號均方值的3 倍作為閾值。不同信噪比下模型綜合性能對比結(jié)果如表1 所示。
表1 不同信噪比下模型的F1-Score 指標
從表1 中可以看出,當輸入信號的信噪比較高時,三個算法模型的性能差不多,甚至在信噪比為-4 dB時,模板匹配算法取得了99.43%的評價指標。然而,隨著信噪比降低,閾值比較算法模型的綜合性能指標下降最快。模板匹配和閾值比較算法在-12 dB 環(huán)境下,相比于-10 dB 環(huán)境,綜合性能發(fā)生了突變,急劇惡化,此時,帶有歸一化的模板匹配算法模型仍有88.73%的良好表現(xiàn)。
在實驗室真實采集的數(shù)據(jù)中,32 通道并不是每個通道中都能檢測到動作電位。在截取的長為33 s 的32 通道信號中,每個通道100 萬個采樣點,動作電位較為集中的通道有6 個,共檢測到27 463 個動作電位。
該動作電位檢測芯片是在中芯國際的180 nm 數(shù)字工藝下設(shè)計完成的。其核心區(qū)域尺寸為1.10 mm×0.4 mm,因此面積為0.495 mm2。圖6 所示為檢測芯片的電子顯微圖片,包括了IO 環(huán),使得芯片的總面積增加至0.98 mm2。該芯片共有36 個I/O 引腳,采用QFN48封裝。其中,實際使用的I/O 引腳數(shù)量包括電源和地,共計有20 個I/O 引腳,其余的I/O 引腳則用于電源和地的連接。
圖6 數(shù)字IC 的電子顯微圖片
在VLSI 設(shè)計中,將所有的數(shù)據(jù)進行了定點量化,非符號參數(shù)和符號參數(shù)都統(tǒng)一量化成8 bit。對比量化前后的檢測結(jié)果,雖然查準率和召回率有不同程度下降,但最高降幅沒有超過0.1%,因此,該芯片在低信噪比環(huán)境下表現(xiàn)優(yōu)秀。如圖7 所示,在信噪比為-10 dB 情況下100 ms 的神經(jīng)信號中,有5 個動作電位。圖7a)顯示動作電位基本被噪聲淹沒,但是動作電位檢測芯片能夠準確區(qū)分出這5 個動作電位。檢測效果如圖7c)所示,輸出為1 bit數(shù)據(jù)流。
圖7 檢測結(jié)果示意圖
在硬件測試中,使用算法測試中的數(shù)據(jù)集,將其存儲在FPGA 中,通過FPGA 模擬前端采集芯片,將數(shù)據(jù)傳輸給動作檢測芯片。檢測芯片工作頻率為666 kHz,并且其電源由FPGA 的5 V 電壓經(jīng)過LDO 轉(zhuǎn)換為1.8 V 提供,整個系統(tǒng)的連接示意圖和實物圖如圖8 所示。最后,輸出結(jié)果通過FPGA 的UART 口轉(zhuǎn)USB 接口,上傳數(shù)據(jù)到計算機。
圖8 測試連接圖示意圖及實物圖
根據(jù)圖3 的檢測識別示意圖,使用真實實驗數(shù)據(jù),得到Vivado 邏輯分析儀成功捕獲的部分檢測圖,如圖9 所示。將輸入信號切換成模擬波形,明顯出現(xiàn)一個鋒電位信號,同時,檢測芯片成功輸出一個時鐘周期的高電平。
圖9 數(shù)字檢測芯片部分測試結(jié)果
最后,測量結(jié)果顯示該芯片在配置工作寄存器時的功耗為701 μW,在檢測神經(jīng)信號時的功耗為8.07 mW。與其他檢測方式相比,該檢測芯片完全適合集成在采集信號質(zhì)量不理想以及對實時性要求高的系統(tǒng)中。
本文主要實現(xiàn)了一個神經(jīng)信號識別檢測芯片及完整的檢測系統(tǒng)。不同于目前主流的離線檢測,該系統(tǒng)具有高準確性和高實時性的特點。同時,為解決模板匹配算法對模板質(zhì)量過度依賴問題,引入信號歸一化,通過縮小模板之間的差異性,在多模板檢測時取得更好的檢測性能,優(yōu)于傳統(tǒng)的模板匹配方法。目前,主流片上檢測系統(tǒng)為閾值檢測,而本文的數(shù)字檢測芯片在低信噪比環(huán)境下,表現(xiàn)遠遠好于閾值檢測系統(tǒng)。此外,通過前端多通道采集芯片,挑選動作電位集中的通道,聯(lián)合多個空閑通道檢測芯片,可以實現(xiàn)多模板動作電位檢測。
注:本文通訊作者為姚鐳。