向昱,白景峰
1 上海交通大學(xué)生物醫(yī)學(xué)工程學(xué)院生物醫(yī)學(xué)儀器研究所,上海市, 200030
2 上海交通大學(xué)Med-X研究院,上海市,200030
P-HIFU可以實現(xiàn)焦點的快速移動,多焦點聚焦,指定聲窗聚焦等功能[1]。P-HIFU系統(tǒng)主要由上位機(jī)、相位信號發(fā)生器、功率放大器、換能器陣列組成。上位機(jī)通過串口1發(fā)送相位控制指令,使相位信號發(fā)生器發(fā)出頻率、相位符合要求的多路方波信號;通過串口2發(fā)出功率指令,功率放大器接收指令并將相位信號發(fā)生器輸出的相位信號放大到所需功率,且頻率、相位相同的多路正弦波;由換能器陣列將多路正弦波轉(zhuǎn)換成相應(yīng)的超聲波束。P-HIFU系統(tǒng)結(jié)構(gòu)如圖1所示。
圖1 P-HIFU系統(tǒng)結(jié)構(gòu)框圖Fig.1 Block diagram of P-HIFU system structure
實現(xiàn)相控陣列的方式有主要有軟件移相、模擬移相、數(shù)字移相和雷達(dá)中的鐵氧體移相等。但是,模擬移相復(fù)雜且精度不高,軟件移相精度更低,鐵氧體移相成本過高,均不是實現(xiàn)P-HIFU相控陣列的理想方法。隨著可編程邏輯陣列(FPGA)的發(fā)展,數(shù)字移相實現(xiàn)P-HIFU相控陣列的技術(shù)越來越成熟,具有開發(fā)周期短、成本低、精度高、可靈活配置系統(tǒng)參數(shù)等優(yōu)勢。
本文根據(jù)文獻(xiàn)[2]中提出的一種數(shù)字采樣移相的方法實現(xiàn)相移,將方波波形存儲在ROM中。假設(shè)ROM的位寬為N,則ROM中存儲數(shù)列為:
當(dāng)基準(zhǔn)時間為t0(0 ≤t0≤N),偏移量為τ(0≤τ≤N),生成的相移波束為xN((t0+τ)%N。在FPGA中,我們用時鐘輸入的上升沿觸發(fā)Flip-Flop加法器,產(chǎn)生t0,然后用17路加法器分別實現(xiàn)相移波束合成。系統(tǒng)參數(shù)為:相位精度通過更改FPGA固件程序,可靈活配置。
本文使用Xilinx Spartan6 FPGA,外接Silicon Labs CP2102芯片,從上位機(jī)串口讀入相控指令;外接50MHz晶振和SW開關(guān),作為各固件模塊的異步復(fù)位觸發(fā)器;通過FPGA芯片內(nèi)置DCM模塊將時鐘倍頻為200MHz,實現(xiàn)位寬96位的ROM,相位精度達(dá)到3.75o;產(chǎn)生17路相移波束輸出, 頻率為200 MHz/96 =2.083 MHz。根據(jù)實際需要,我們可以很方便地應(yīng)用DCM模塊靈活配置主頻,并在固件程序中設(shè)置不同的ROM位寬,靈活地配置系統(tǒng)參數(shù)。相控指令包括偏移量和加法器地址選擇信息,最終為17個加法器配置不同的偏移量。FPGA固件如圖2所示。
圖2 FPGA相控陣列固件框圖Fig.2 Block diagram of FPGA phased-arrayfirmware
P-HIFU系統(tǒng)治療腫瘤所需時間很短,在100 ms~10s范圍內(nèi)。治療時間的控制往往由上位機(jī)HIFU系統(tǒng)控制軟件來完成。其步驟為:①串口發(fā)送FPGA相控指令和功率放大器工作指令;②軟件倒計時開始;③軟件計時結(jié)束時,上位機(jī)通過串口發(fā)送FPGA和功率放大器停止工作的指令。
由于上位機(jī)系統(tǒng)往往為windows,屬于多任務(wù)分時操作系統(tǒng),控制軟件通常為窗體應(yīng)用程序,其軟件計時的誤差往往為55 ms左右[3]。要達(dá)到1 ms左右高精度的軟件計時,往往需要使用一部分艱深的Windows API,還需要修改軟件計時器權(quán)限[4]。更糟的是,若串口通信使用9 600波特率,通過串口發(fā)送指令對FPGA相控陣列進(jìn)行調(diào)制所需時間為2.1 ms×調(diào)節(jié)路數(shù),最壞情況需耗時>100 ms。而且通過串口啟動功率放大器,需要數(shù)秒鐘穩(wěn)定放大器輸入電壓值。因此,傳統(tǒng)的由軟件控制HIFU系統(tǒng)腫瘤治療時間會帶來很大的誤差,在HIFU系統(tǒng)治療時間為0.1 s時,僅軟件計時誤差就導(dǎo)致50%定時誤差。
本文采取預(yù)配置的方式,規(guī)避FPGA相控陣列設(shè)定所需時間,其核心思路是FPGA內(nèi)配置計數(shù)器,使其具有高精度定時功能。具體實現(xiàn)思路為:不改變FPGA程序內(nèi)相控陣列模塊,另在FPGA內(nèi)配置計數(shù)器;通過計數(shù)器改變相控陣列輸出的相位信號的使能狀態(tài),當(dāng)使能狀態(tài)為‘1’時有相位信號輸出,使能狀態(tài)為‘0’的時候相位信號不輸出;計數(shù)器控制使能狀態(tài)的方法即為模式控制。
預(yù)配置包括功率放大器預(yù)配置、相位預(yù)配置和模式預(yù)配置,模式預(yù)配置是核心。軟件啟動功率放大器并待其穩(wěn)定,同時軟件計時器啟動,此即功率放大器預(yù)配置。然后完成相位控制,期間使能狀態(tài)為‘0’,此即相位預(yù)配置。配置計數(shù)器,未完成期間使能狀態(tài)為‘0’,配置結(jié)束后使能狀態(tài)按預(yù)設(shè)改變,此即模式預(yù)配置。軟件計時預(yù)留時間為FPGA輸出信號持續(xù)時間加從串口向FPGA和功率放大器發(fā)送指令所需時間,并再加一定的冗余時間,保證在FPGA輸出相位信號之前啟動并穩(wěn)定功率放大器,并在FPGA輸出方波結(jié)束后關(guān)閉功率放大器。通過預(yù)配置可完全規(guī)避發(fā)送相控指令、啟動FPGA、啟動功率放大器所需時間和軟件計時的誤差,F(xiàn)PGA控制的信號輸出能夠達(dá)到時鐘周期級的時間精度,使HIFU治療時間精度大大提高。
模式控制模塊以內(nèi)置兩個計數(shù)器的方式,產(chǎn)生精確到一個超聲波周期(480 ns)的使能信號enable,對已有相控陣列產(chǎn)生的相位信號進(jìn)行相與,得到最終輸出。
計數(shù)器由上位機(jī)輸入模式控制指令配置。模式控制指令配置pulse、period、repeat三個參數(shù)。取值范圍均為[0,2 147 483 647],并且必須保證period≥pulse。此表示每period個超聲波周期內(nèi),前pulse個周期相控陣輸出相位信號可輸出,后periodpulse個周期內(nèi)不可輸出。period個超聲波周期內(nèi)輸出的波形重復(fù)repeat次,repeat為0時,則無限重復(fù)。
FPGA內(nèi)兩計數(shù)器分別針對pulse和repeat??刂浦噶钶斎胪瓿珊?,pulse、repeat計數(shù)器清0,并且最大值分別設(shè)為period、repeat值,每一個超聲波周期pulse計數(shù)器+1。當(dāng)pulse計數(shù)器等于period時,若repeat>0,repeat計數(shù)器+1;若repeat等于0則repeat計數(shù)器不變。enable= (pulse計數(shù)器<period) && (repeat計數(shù)器<repeat||repeat ==0)。
圖3為增加模式控制模塊后的FPGA固件圖,虛線部分為模式控制模塊:
圖3 FPGA模式控制模塊固件框圖Fig.3 Block diagram of FPGA mode control module firmware
為了驗證模式控制模塊的有效性,本文分別使用仿真和示波器測試模式波輸出的方式進(jìn)行驗證。
圖4 FPGA模式控制仿真時序圖Fig.4 Time sequence diagram of FPGA mode control simulation
圖5 FPGA模式控制仿真關(guān)鍵時序部分Fig.5 Important time sequence section of mode control simulation
圖4為FPGA相位、模式控制輸入、相控陣列產(chǎn)生的連續(xù)波,經(jīng)模式調(diào)制后輸出的模式波仿真時序圖(pulse=3,period=6,repeat=3)。圖5可見:①enable出現(xiàn)3段高電平,高電平持續(xù)時間為3個方波周期,與pulse、period、repeat的設(shè)置完全相符;②enable處于高電平期間,模式波輸出相位、頻率與連續(xù)波完全一致,處于低電平時模式波均為低電平,證明了enable可有效對相控陣列輸出相位信號進(jìn)行調(diào)制。仿真結(jié)果證明了模式控制的可行性。
將固件下載到FPGA中,使用采樣率為2.00 GSa/s的 Agilent MSO-X 2012A示波器進(jìn)行測試。圖6為對設(shè)置為pulse=3、period=6和repeat=0的輸出模式波進(jìn)行測試的結(jié)果,實測period波段持續(xù)時間2.88 μs,pulse波段持續(xù)時間1.44 μs,剛好分別為6和3個超聲波周期,證明模式控制成功且定時精度達(dá)到單個超聲波周期,即0.48 μs。另外方波頻率2.083 MHz,占空比50%,峰峰值為5.39 V,滿足TTL電平標(biāo)準(zhǔn)。跳變沿持續(xù)時間為13ns。圖7為示波器數(shù)字通道測得并經(jīng)過相位調(diào)制和模式調(diào)制后的相位信號輸出,pulse=3,period=6,repeat=0,可見模式控制對相位控制完全沒有影響。
圖6 模式波信號測試結(jié)果,pulse=3,period=6,repeat=0Fig.6 Moded signal testing result, pulse=3, period=6, repeat=0
圖7 模式控制結(jié)合相位調(diào)制的多路輸出波形Fig.7 Multi-output with both phase control and mode control
t為超短連續(xù)波或脈沖波持續(xù)時間,超聲波周期為0.48 μs,預(yù)先發(fā)送相控指令調(diào)制好相位,然后發(fā)送模式控制指令,設(shè)置pulse = t/(0.48 μs),period ≥ pulse,repeat = 1,即可實現(xiàn)超短連續(xù)波或脈沖波。圖7即可視為持續(xù)時間為1.44 μs,每隔2.88 μs發(fā)送一次的超短脈沖波的波形。
傳統(tǒng)的P-HIFU治療方式為連續(xù)波聚焦于靶點,一次性加熱,非常容易造成熱量累積,對靶點周圍和焦前區(qū)造成損傷。有研究表明[5],采用間歇式治療方式,即多次發(fā)送持續(xù)時間很短的連續(xù)波,每次之間有較長的時間間隔,可以有效地避免熱量累積。模式控制可以很精確地做到間歇式治療。設(shè)治療總時間為T,單次治療時間為t,間隔時間為Цt,可計算出:pulse = t/(0.48 μs),period = (t + Цt)/(0.48μs),repeat = T/t。
實驗表明,在基于FPGA技術(shù)實現(xiàn)P-HIFU相控陣列的基礎(chǔ)上增加模式控制模塊,在相位信號輸出之前預(yù)配置相位、相位信號持續(xù)時間、連續(xù)信號間隔時間和重復(fù)次數(shù),從而實現(xiàn)相位信號輸出的高精度定時的方法是可行的。該方法定時精度高,而且不影響相位信號發(fā)生器的相控效果,是提高短時間尺度內(nèi)P-HIFU治療定時精度的一種較好的解決方案。
[1]Ji, X., Shen, G.-F.J Bai et al.Multi-element ultrasound phased array applicator for the ablation of deep-seated tissue[J].Journal of Shanghai Jiaotong University (Science), 2011, 16(1): 55-60.
[2]Tai K.Song, Song B.Parkl.A new digital phased array system for dynamic focusing and steering with reduced sampling rate[J].Ultrasonic Imaging, 1990, 12(1): 1-16.
[3]Feng-juan Cheng, Hui Yin, Qing-hui Zhang, et al.Research of Accurate Software Timing Based on Windows[C].2010 International Conference on Challenges in Environmental Science and Computer Engineering (CESCE), 2010: 104-106.
[4]CHRISTOPHER D, CHAMBERS, MEL BROWN, et al.Timing accuracy under Microsoft Windows revealed through external chronometry[J].Behavior Research Methods, Instruments, &Computers, 2003, 35 (1): 96-108.
[5]McDannold, N, Jolesz, F, Hynynen, K.Determination of the Optimal Delay between Sonications during Focused Ultrasound Surgery in Rabbits by Using MR Imaging to Monitor Thermal Buildup in Vivo[J].Radiology 1999, 211(2):419–426.