摘 "要: 磁共振成像(MRI)是一種無(wú)創(chuàng)檢測(cè)人體內(nèi)部結(jié)構(gòu)的技術(shù),隨著接收通道數(shù)量增多,產(chǎn)生的采集數(shù)據(jù)量越來(lái)越大,給快速成像帶來(lái)了巨大的挑戰(zhàn)。文中設(shè)計(jì)一種基于SerialLite Ⅱ協(xié)議的磁共振采集數(shù)據(jù)傳輸系統(tǒng)。系統(tǒng)功能主要由FPGA實(shí)現(xiàn),分為數(shù)據(jù)緩存模塊和數(shù)據(jù)傳輸模塊兩類,數(shù)據(jù)緩存模塊基于雙緩存區(qū)和狀態(tài)機(jī)控制的乒乓操作,有效地解決了因數(shù)據(jù)量大而帶來(lái)的讀寫沖突問(wèn)題;數(shù)據(jù)傳輸模塊基于FPGA建立SerialLite Ⅱ數(shù)據(jù)傳輸鏈路,實(shí)現(xiàn)了采集數(shù)據(jù)的光纖傳輸。通過(guò)仿真和實(shí)驗(yàn)驗(yàn)證了系統(tǒng)功能的正確性,表明其能夠?qū)崿F(xiàn)磁共振采集數(shù)據(jù)的高速穩(wěn)定傳輸。
關(guān)鍵詞: 磁共振成像; SerialLite Ⅱ協(xié)議; 數(shù)據(jù)傳輸; "無(wú)創(chuàng)檢測(cè); FPGA; 數(shù)據(jù)緩存; 光纖傳輸
中圖分類號(hào): TN751.1+1?34 " " " " " " " " " " " "文獻(xiàn)標(biāo)識(shí)碼: A " " " " " " " " " " "文章編號(hào): 1004?373X(2024)06?0085?06
Design of magnetic resonance acquisition data transmission system based
on SerialLite Ⅱ protocol
XIAO Liang, YUAN Jiahui, XING Cangju
(College of Information Science and Technology, Beijing University of Chemical Technology, Beijing 100029, China)
Abstract: Magnetic resonance imaging (MRI) is a non?invasive technology for detecting the internal structure of human body. As the number of receiving channels increases, the amount of collected data generated increases, which brings huge challenges to rapid imaging. A magnetic resonance acquisition data transmission system based on the SerialLite Ⅱ protocol is designed. The system functions are mainly implemented by FPGA and are divided into data cache module and data transmission module. The data cache module is based on double buffer area and state machine controlled ping?pong operation, which effectively solves the problem of read and write conflicts caused by large data volume. The data transmission module is used to establish a SerialLite Ⅱ data transmission link based on FPGA, so as to realize optical fiber data transmission of collected data. The simulation and experiments verifies the correctness of the system functions, showing that it can achieve high?speed and stable transmission of magnetic resonance acquisition data.
Keywords: magnetic resonance imaging; SerialLite Ⅱ protocol; data transmission; non?invasive detection; FPGA; data caching; fiber optic transmission
0 "引 "言
磁共振成像(Magnetic Resonance Imaging, MRI)是一種利用磁場(chǎng)和射頻波對(duì)人體內(nèi)部結(jié)構(gòu)進(jìn)行無(wú)創(chuàng)檢測(cè)的技術(shù),具有高分辨率、高對(duì)比度、多參數(shù)和多維度等優(yōu)點(diǎn),被廣泛應(yīng)用于醫(yī)學(xué)診斷與神經(jīng)認(rèn)知研究等領(lǐng)域[1?2]。隨著磁共振成像技術(shù)的發(fā)展,其采集數(shù)據(jù)傳輸面臨著接收通道數(shù)量多與快速成像等挑戰(zhàn),傳統(tǒng)的基于同軸電纜的方案難以滿足這些需求,影響了磁共振成像的性能。因此,研究高速、穩(wěn)定的磁共振成像采集數(shù)據(jù)的傳輸系統(tǒng)具有重要的意義與價(jià)值。
MRI系統(tǒng)的控制核心是成像譜儀,傳統(tǒng)的方法是數(shù)據(jù)采集裝置與譜儀集成在一起,通過(guò)同軸電纜將回波信號(hào)從屏蔽間的接收線圈傳送到譜儀進(jìn)行采集,然而,同軸電纜的傳輸存在衰減、易受干擾等缺點(diǎn)。為克服這個(gè)缺點(diǎn),當(dāng)前的研究趨勢(shì)是將采集裝置與成像譜儀分離,置于接收線圈邊上,通過(guò)光纖傳輸數(shù)據(jù)。國(guó)內(nèi)外學(xué)者提出了多種基于光纖的磁共振信號(hào)傳輸方案。凱斯西儲(chǔ)大學(xué)的研究團(tuán)隊(duì)A. Simonsen等人提出了一種三角積分調(diào)制光纖傳輸方案[3],實(shí)現(xiàn)了回波數(shù)據(jù)的數(shù)字光纖傳輸,但其一路光纖只能傳輸一個(gè)通道信號(hào),每個(gè)光纖通道都要配置相應(yīng)的調(diào)制器和光纖收發(fā)模塊,實(shí)現(xiàn)起來(lái)比較復(fù)雜。國(guó)內(nèi)華中師范大學(xué)姚俊江等研究了基于自定義通信協(xié)議的磁共振數(shù)據(jù)光纖傳輸[4],降低了系統(tǒng)復(fù)雜度,但其方案缺少數(shù)據(jù)錯(cuò)誤檢測(cè)和流控制等鏈路穩(wěn)定功能。Tang Weinan等提出了基于FPGA與Aurora協(xié)議的數(shù)據(jù)傳輸方案[5],但該協(xié)議沒(méi)有差錯(cuò)控制機(jī)制,需要編寫額外的數(shù)據(jù)判斷模塊保證傳輸可靠性[6],導(dǎo)致FPGA編程較為復(fù)雜。
當(dāng)采集通道數(shù)量與一行采樣點(diǎn)數(shù)較多時(shí),對(duì)采集數(shù)據(jù)的存儲(chǔ)提出了很高的要求,例如通道數(shù)量為32,一行的采樣點(diǎn)數(shù)為1 024,則所需的存儲(chǔ)容量為32×1 024×4=128 KB(一個(gè)點(diǎn)包括16 bit的I與Q分量,需4 B),這占用了大量的存儲(chǔ)資源。
為了適應(yīng)磁共振成像系統(tǒng)多通道與快速成像的要求,實(shí)現(xiàn)磁共振采集數(shù)據(jù)的高速可靠傳輸,本文設(shè)計(jì)一種基于SerialLite Ⅱ協(xié)議的磁共振數(shù)據(jù)傳輸系統(tǒng),實(shí)現(xiàn)數(shù)據(jù)采集與成像譜儀分離,以及由光纖傳輸數(shù)據(jù)。SerialLite Ⅱ協(xié)議是一種高速串行通信協(xié)議,具有低延遲和高可靠性的特點(diǎn)。本系統(tǒng)基于FPGA構(gòu)建SerialLite Ⅱ協(xié)議數(shù)據(jù)傳輸鏈路,實(shí)現(xiàn)了采集數(shù)據(jù)的光纖傳輸;同時(shí),為了減少對(duì)存儲(chǔ)區(qū)的占用,還設(shè)計(jì)了一種基于雙緩存區(qū)和狀態(tài)機(jī)控制的乒乓操作數(shù)據(jù)緩存系統(tǒng),實(shí)現(xiàn)了采集數(shù)據(jù)的高效存儲(chǔ)。通過(guò)軟件仿真和實(shí)際測(cè)試,驗(yàn)證了系統(tǒng)的功能和傳輸性能。
1 "系統(tǒng)硬件平臺(tái)
磁共振成像采集數(shù)據(jù)傳輸系統(tǒng)的總體框圖如圖1所示。系統(tǒng)由數(shù)據(jù)采集模塊和數(shù)據(jù)傳輸模塊兩部分組成。系統(tǒng)與采集裝置通過(guò)局部總線連接,與成像譜儀之間通過(guò)光纖連接?;夭ㄐ盘?hào)經(jīng)過(guò)信號(hào)采集模塊的低噪聲放大、信號(hào)濾波、模數(shù)轉(zhuǎn)換和數(shù)字下變頻處理后,被存儲(chǔ)在數(shù)據(jù)緩存模塊的存儲(chǔ)單元中。數(shù)據(jù)傳輸模塊負(fù)責(zé)將存儲(chǔ)的數(shù)據(jù)通過(guò)SerialLite Ⅱ協(xié)議由光纖鏈路傳輸?shù)匠上褡V儀,再由譜儀傳送到上位機(jī)進(jìn)行圖像重建。
目前采集裝置配置4個(gè)接收通道,這個(gè)數(shù)量可以比較方便地?cái)U(kuò)展到32甚至更高,以適應(yīng)多通道成像的需求。
1.1 "FPGA
本文選用Intel公司ArriaIIGX系列的EP2AGX65芯片作為FPGA器件。該芯片擁有65 000個(gè)邏輯單元(LE),具有高密度的邏輯功能和存儲(chǔ)器資源,采用了獨(dú)特的自適應(yīng)邏輯模塊(ALMs)結(jié)構(gòu),可提高邏輯資源的利用率。此外,該芯片具有SerialLite Ⅱ協(xié)議IP核,支持600 Mb/s~6.375 Gb/s的數(shù)據(jù)傳輸速率,為實(shí)現(xiàn)數(shù)據(jù)的高速、穩(wěn)定和高可靠光纖傳輸提供了硬件基礎(chǔ)。FPGA通過(guò)PCML差分管腳與SFP光纖模塊直接連接,進(jìn)行數(shù)據(jù)的高速發(fā)送與接收。
1.2 "時(shí)鐘設(shè)計(jì)
為了保證磁共振射頻發(fā)射與接收的相干性,系統(tǒng)采用譜儀的時(shí)鐘作為時(shí)鐘源。譜儀的時(shí)鐘采用高精度高穩(wěn)定度的恒溫晶振,其頻率為60 MHz。時(shí)鐘信號(hào)通過(guò)光纖發(fā)送到系統(tǒng),由SFP光模塊將光信號(hào)轉(zhuǎn)換為L(zhǎng)VDS電平的電信號(hào),再通過(guò)專用差分管腳輸入FPGA。通過(guò)FPGA該時(shí)鐘信號(hào)被分配到三個(gè)不同的功能模塊:第一個(gè)功能模塊是信號(hào)采集模塊的控制模塊,它負(fù)責(zé)控制信號(hào)的采集和處理;第二個(gè)功能模塊是一分四時(shí)鐘驅(qū)動(dòng)芯片CY2304NZ,它將單路時(shí)鐘信號(hào)分成多路相位相同的時(shí)鐘信號(hào),作為信號(hào)采集模塊中模數(shù)轉(zhuǎn)換器件和數(shù)字下變頻器件的工作時(shí)鐘;第三個(gè)功能模塊是鎖相環(huán)模塊,它根據(jù)不同的功能需求,輸出多個(gè)不同頻率的時(shí)鐘信號(hào)。
2 "系統(tǒng)功能設(shè)計(jì)
2.1 "基于乒乓操作的數(shù)據(jù)緩存系統(tǒng)設(shè)計(jì)
乒乓操作是一種控制數(shù)據(jù)緩存單元的讀寫周期切換,從而實(shí)現(xiàn)數(shù)據(jù)連續(xù)傳輸?shù)挠行Р呗?,是常用的緩存?shù)據(jù)交換技術(shù)[7?9]。其基本原理是:將輸入的數(shù)據(jù)流通過(guò)輸入數(shù)據(jù)選擇單元,按照時(shí)間順序分配到兩個(gè)數(shù)據(jù)緩存區(qū)。如圖2所示,乒乓操作結(jié)構(gòu)包括兩個(gè)數(shù)據(jù)緩存模塊ram1和ram2,以及一個(gè)輸入數(shù)據(jù)選擇單元和一個(gè)輸出數(shù)據(jù)選擇單元。在每個(gè)緩存周期內(nèi),輸入數(shù)據(jù)選擇單元將輸入的數(shù)據(jù)流寫入到一個(gè)數(shù)據(jù)緩存模塊中,同時(shí)輸出數(shù)據(jù)選擇單元將另一個(gè)數(shù)據(jù)緩存模塊中的上一個(gè)周期的數(shù)據(jù)讀出,并傳送給下游信號(hào)處理模塊。例如,在第1個(gè)緩存周期,輸入的數(shù)據(jù)流被寫入到ram1中,而ram2中沒(méi)有數(shù)據(jù);在第2個(gè)緩存周期,輸入數(shù)據(jù)選擇單元切換到ram2,將輸入的數(shù)據(jù)流寫入到ram2中,同時(shí)輸出數(shù)據(jù)選擇單元從ram1中讀出第1個(gè)周期的數(shù)據(jù)并傳送出去;在第3個(gè)緩存周期,輸入數(shù)據(jù)選擇單元再次切換到ram1,將輸入的數(shù)據(jù)流寫入到ram1中,同時(shí)輸出數(shù)據(jù)選擇單元從ram2中讀出第2個(gè)周期的數(shù)據(jù)并傳送出去。這樣循環(huán)進(jìn)行,就可以實(shí)現(xiàn)無(wú)間斷的數(shù)據(jù)存儲(chǔ)傳輸,從而可以避免因?yàn)閷懭氩僮骱臅r(shí)而導(dǎo)致的數(shù)據(jù)丟失風(fēng)險(xiǎn),提高系統(tǒng)性能和數(shù)據(jù)可靠性。
在FPGA的實(shí)現(xiàn)中,數(shù)據(jù)緩存系統(tǒng)由兩個(gè)實(shí)例化的RAM組成,分別作為兩個(gè)數(shù)據(jù)存儲(chǔ)單元,命名為“data_ram1”和“data_ram2”。這兩個(gè)RAM通過(guò)端口連接其各自的信號(hào),實(shí)現(xiàn)了數(shù)據(jù)的輸入和輸出。其中,“rden1”與“rden2”為讀使能輸入,“wren1”與“wren2”為寫使能輸入,“address1”與“address2”為內(nèi)存地址,“data1”與“data2”為數(shù)據(jù),“txrdp_clk”與“txrdp_clk”表示時(shí)鐘輸入,“q1”與“q2”表示數(shù)據(jù)輸出。
如圖3所示,數(shù)據(jù)緩存系統(tǒng)的讀寫操作過(guò)程如下:首先,程序初始化,讀寫操作切換標(biāo)志信號(hào)pingpang_select置為低電平,此時(shí)數(shù)據(jù)存儲(chǔ)單元ram1處于寫狀態(tài),ram2處于空閑狀態(tài)。ram1的寫地址由采集數(shù)據(jù)計(jì)數(shù)器產(chǎn)生的連續(xù)地址決定,當(dāng)計(jì)數(shù)器的值達(dá)到設(shè)定的采集點(diǎn)數(shù)時(shí),讀寫操作切換標(biāo)志信號(hào)pingpang_select翻轉(zhuǎn)電平,進(jìn)入下一個(gè)讀寫操作周期。此時(shí),數(shù)據(jù)存儲(chǔ)單元ram1處于讀狀態(tài),ram2處于寫狀態(tài)。ram1的讀地址由發(fā)送數(shù)據(jù)計(jì)數(shù)器產(chǎn)生,將ram1輸出的數(shù)據(jù)傳輸至數(shù)據(jù)發(fā)送模塊;ram2的寫地址由采集數(shù)據(jù)計(jì)數(shù)器產(chǎn)生,將新采集的數(shù)據(jù)寫入ram2中。當(dāng)采集數(shù)據(jù)計(jì)數(shù)器再次達(dá)到設(shè)定的采集點(diǎn)數(shù)時(shí),讀寫操作切換標(biāo)志信號(hào)pingpang_select再次翻轉(zhuǎn)電平,以此類推進(jìn)行輪換。通過(guò)這種方式,實(shí)現(xiàn)了數(shù)據(jù)在兩個(gè)RAM之間的交替存儲(chǔ)和讀取。
在傳統(tǒng)的數(shù)據(jù)傳輸過(guò)程中,數(shù)據(jù)流的速度可能會(huì)超過(guò)數(shù)據(jù)傳輸模塊編碼封裝的速度,導(dǎo)致數(shù)據(jù)包丟失的情況頻繁發(fā)生。而乒乓操作通過(guò)引入緩存區(qū),提供了更為靈活和可靠的解決方案。乒乓操作的主要優(yōu)點(diǎn)有三個(gè)方面:一是通過(guò)暫存數(shù)據(jù),防止數(shù)據(jù)丟失;二是緩解下游模塊壓力,通過(guò)同時(shí)進(jìn)行讀寫操作,減少下游模塊的等待時(shí)間;三是緩解數(shù)據(jù)堵塞問(wèn)題,通過(guò)合理安排讀寫請(qǐng)求的順序和時(shí)間,保持?jǐn)?shù)據(jù)的流暢傳輸。
2.2 "SerialLite Ⅱ協(xié)議實(shí)現(xiàn)
SerialLite Ⅱ協(xié)議是一種輕量級(jí)點(diǎn)對(duì)點(diǎn)串行傳輸協(xié)議,它的特點(diǎn)是邏輯單元的消耗低、數(shù)據(jù)傳輸?shù)难訒r(shí)小,能夠支持單通道高達(dá)3.125 Gb/s的數(shù)據(jù)傳輸速率,具有簡(jiǎn)單易實(shí)現(xiàn)、可靠高效、靈活可擴(kuò)展等優(yōu)勢(shì)[10?13]。SerialLite Ⅱ協(xié)議由鏈路層和物理層兩個(gè)層次組成。鏈路層負(fù)責(zé)將上層數(shù)據(jù)封裝成包,并在包頭和包尾添加控制信息,如起始標(biāo)志、結(jié)束標(biāo)志、長(zhǎng)度字段、CRC校驗(yàn)等,以保證數(shù)據(jù)的完整性和正確性。物理層負(fù)責(zé)將鏈路層的數(shù)據(jù)進(jìn)行編碼,以便在物理介質(zhì)上進(jìn)行傳輸,并在接收端進(jìn)行解碼,恢復(fù)原始數(shù)據(jù)。
本設(shè)計(jì)中SerialLite Ⅱ傳輸鏈路設(shè)置為單向鏈路,鏈路通道寬度為16 bit,鏈路層和物理層使用相同的60 MHz時(shí)鐘源,通道傳輸數(shù)據(jù)速度為1 920 Mb/s。SerialLite Ⅱ單向鏈路具有自動(dòng)同步機(jī)制,它可以使發(fā)送端和接收端在沒(méi)有外部訓(xùn)練序列的情況下,快速地建立并維持?jǐn)?shù)據(jù)傳輸?shù)耐綘顟B(tài)。該機(jī)制的原理是:利用物理層的編碼方式,在數(shù)據(jù)中嵌入特殊的控制信息,使得接收端可以根據(jù)這些信息來(lái)檢測(cè)和調(diào)整數(shù)據(jù)的對(duì)齊和時(shí)鐘。SerialLite Ⅱ單向鏈路的自同步鏈路建立過(guò)程如下:首先,發(fā)送端在開始傳輸數(shù)據(jù)之前,先發(fā)送一段特殊的控制信息,稱為K28.5字符,該字符由10位組成,其值為0011110100。接下來(lái),接收端在接收到數(shù)據(jù)后,對(duì)其進(jìn)行解碼,并檢測(cè)是否存在K28.5字符,如果接收端檢測(cè)到K28.5字符,則說(shuō)明發(fā)送端已經(jīng)開始傳輸數(shù)據(jù),并且已經(jīng)完成了對(duì)齊和時(shí)鐘恢復(fù);如果接收端沒(méi)有檢測(cè)到K28.5字符,則說(shuō)明發(fā)送端還沒(méi)有開始傳輸數(shù)據(jù),或者數(shù)據(jù)存在錯(cuò)位或失鎖的情況。最后,接收端根據(jù)檢測(cè)到的K28.5字符的個(gè)數(shù)和位置,來(lái)調(diào)整數(shù)據(jù)的對(duì)齊和時(shí)鐘恢復(fù),接收端在完成數(shù)據(jù)對(duì)齊和時(shí)鐘恢復(fù)后,就可以正常地接收和解析數(shù)據(jù)包。
2.3 "數(shù)據(jù)傳輸系統(tǒng)設(shè)計(jì)
當(dāng)信號(hào)采集開始信號(hào)有效時(shí),進(jìn)入開始采集狀態(tài),信號(hào)采集板上的FPGA讀取各采集通道輸入的回波數(shù)據(jù),根據(jù)讀寫操作切換標(biāo)志信號(hào)的狀態(tài),將經(jīng)過(guò)數(shù)字正交解調(diào)等處理后的數(shù)據(jù)存儲(chǔ)至相應(yīng)的數(shù)據(jù)緩存模塊內(nèi);當(dāng)采集到的數(shù)據(jù)量達(dá)到設(shè)定的采集數(shù)量,發(fā)送數(shù)據(jù)開始信號(hào)置高電平有效,持續(xù)4個(gè)時(shí)鐘周期,以便數(shù)據(jù)發(fā)送模塊正確識(shí)別。
數(shù)據(jù)發(fā)送模塊有5個(gè)狀態(tài):空閑狀態(tài)、發(fā)送數(shù)據(jù)包頭狀態(tài)、發(fā)送數(shù)據(jù)狀態(tài)、發(fā)送數(shù)據(jù)包尾狀態(tài)和暫停發(fā)送狀態(tài)。數(shù)據(jù)傳輸發(fā)送時(shí)序狀態(tài)機(jī)如圖4所示,系統(tǒng)上電復(fù)位后,發(fā)送模塊狀態(tài)機(jī)首先進(jìn)入空閑狀態(tài),等待數(shù)據(jù)發(fā)送開始信號(hào)以及數(shù)據(jù)有效信號(hào)txrdp_dav為高。當(dāng)這兩個(gè)信號(hào)都為高時(shí),狀態(tài)機(jī)進(jìn)入發(fā)送數(shù)據(jù)包頭狀態(tài),此時(shí)置高數(shù)據(jù)包開始信號(hào)txrdp_sop,并將數(shù)據(jù)包頭信息發(fā)送到光纖接口。當(dāng)數(shù)據(jù)包頭信息發(fā)送完成后,狀態(tài)機(jī)進(jìn)入發(fā)送數(shù)據(jù)狀態(tài),此時(shí)置低txrdp_sop,并將數(shù)據(jù)包有效數(shù)據(jù)發(fā)送到光纖接口。若此時(shí)txrdp_dav信號(hào)為低,表示沒(méi)有更多的有效數(shù)據(jù),狀態(tài)機(jī)進(jìn)入暫停發(fā)送狀態(tài),此時(shí)保持當(dāng)前的輸出信號(hào)不變,并等待txrdp_dav信號(hào)恢復(fù)為高。當(dāng)發(fā)送有效數(shù)據(jù)的字節(jié)數(shù)達(dá)到預(yù)設(shè)的數(shù)據(jù)包大小時(shí),狀態(tài)機(jī)進(jìn)入發(fā)送數(shù)據(jù)包尾狀態(tài),此時(shí)置高數(shù)據(jù)包結(jié)束信號(hào)txrdp_eop,并將數(shù)據(jù)包尾發(fā)送到光纖接口。當(dāng)數(shù)據(jù)包尾發(fā)送完成后,狀態(tài)機(jī)返回空閑狀態(tài),等待下一次數(shù)據(jù)傳輸。
3 "系統(tǒng)測(cè)試
3.1 "功能仿真
為了驗(yàn)證數(shù)據(jù)緩存系統(tǒng)的功能,本文使用ModelSim軟件對(duì)系統(tǒng)進(jìn)行了功能仿真。仿真的過(guò)程如下:首先,設(shè)置每個(gè)緩存周期存儲(chǔ)8個(gè)16 bit數(shù)據(jù),輸入數(shù)據(jù)流為從0~31的遞增數(shù)列;然后,啟動(dòng)程序觀察數(shù)據(jù)緩存系統(tǒng)的讀寫操作過(guò)程。圖5所示為數(shù)據(jù)緩存系統(tǒng)的讀寫操作切換標(biāo)志信號(hào)pingpang_select的變化情況。由圖5可知:每當(dāng)采集數(shù)據(jù)計(jì)數(shù)器達(dá)到8時(shí),pingpang_select就會(huì)翻轉(zhuǎn)電平,從而切換數(shù)據(jù)存儲(chǔ)單元ram1和ram2的讀寫狀態(tài);輸入數(shù)據(jù)流根據(jù)pingpang_select的狀態(tài)分流存儲(chǔ),輸出數(shù)據(jù)流與輸入數(shù)據(jù)流一致,數(shù)據(jù)緩存系統(tǒng)交替存儲(chǔ)和讀取數(shù)據(jù)工作正常。
對(duì)于數(shù)據(jù)傳輸系統(tǒng),同樣在ModelSim軟件中對(duì)其進(jìn)行了功能仿真。設(shè)置發(fā)送數(shù)據(jù)包大小為8×16 bit,發(fā)送數(shù)據(jù)包個(gè)數(shù)為2。如圖6所示,在發(fā)送端,當(dāng)數(shù)據(jù)有效信號(hào)dav為高電平時(shí),進(jìn)入數(shù)據(jù)包發(fā)送狀態(tài),直到發(fā)送數(shù)據(jù)數(shù)量達(dá)到數(shù)據(jù)包大小,當(dāng)前數(shù)據(jù)包發(fā)送完成;在接收端,識(shí)別到數(shù)據(jù)包開始信號(hào)sop有效時(shí),開始往數(shù)據(jù)存儲(chǔ)單元存入數(shù)據(jù),直到識(shí)別到數(shù)據(jù)包結(jié)束信號(hào)eop為高電平,表示當(dāng)前數(shù)據(jù)包接收完成。
3.2 "數(shù)據(jù)緩存系統(tǒng)功能測(cè)試
為了驗(yàn)證數(shù)據(jù)緩存系統(tǒng)的實(shí)際工作情況,設(shè)置采樣點(diǎn)數(shù)為256,采樣通道數(shù)為2,使用Quartus Ⅱ的嵌入式邏輯分析儀Signal?Tap對(duì)乒乓操作緩存系統(tǒng)主要信號(hào)進(jìn)行抓取,結(jié)果如圖7所示。
當(dāng)讀取切換標(biāo)志信號(hào)pingpang_select電平翻轉(zhuǎn)后,兩個(gè)數(shù)據(jù)緩存單元的讀寫狀態(tài)正確切換,數(shù)據(jù)流被成功緩存到相應(yīng)存儲(chǔ)區(qū)。
在Quartus Ⅱ的In?SystemMemoryContentEditor工具中,分別查看數(shù)據(jù)緩存單元ram1及ram2與接收數(shù)據(jù)緩存單元的存儲(chǔ)數(shù)據(jù)內(nèi)容。
結(jié)果表明,數(shù)據(jù)緩存單元ram1和ram2的存儲(chǔ)數(shù)據(jù)內(nèi)容與圖7信號(hào)數(shù)據(jù)一致,數(shù)據(jù)存儲(chǔ)正確,未出現(xiàn)數(shù)據(jù)丟失。接收數(shù)據(jù)緩存單元的存儲(chǔ)數(shù)據(jù)內(nèi)容由ram1及ram2的存儲(chǔ)數(shù)據(jù)組成,輸出數(shù)據(jù)正確連續(xù),說(shuō)明乒乓操作數(shù)據(jù)緩存系統(tǒng)功能完整且正確。
3.3 "數(shù)據(jù)傳輸系統(tǒng)功能測(cè)試
數(shù)據(jù)傳輸過(guò)程中,在發(fā)送端與接收端使用Signal?Tap對(duì)鏈路信號(hào)進(jìn)行抓取,圖8為信號(hào)抓取結(jié)果。
圖8中數(shù)據(jù)包大小為64×16 bit,發(fā)送端與接收端發(fā)送的數(shù)據(jù)與數(shù)據(jù)緩存系統(tǒng)中存儲(chǔ)的數(shù)據(jù)一致,重復(fù)多次測(cè)試結(jié)果均準(zhǔn)確無(wú)誤,與仿真結(jié)果相符,驗(yàn)證了SerialLite Ⅱ協(xié)議數(shù)據(jù)傳輸?shù)恼_性。
在發(fā)送端發(fā)送第一個(gè)有效數(shù)據(jù)和接收端接收完最后一個(gè)有效數(shù)據(jù)時(shí),各發(fā)出一個(gè)脈沖信號(hào),用示波器測(cè)量這兩個(gè)脈沖的時(shí)間間隔。測(cè)試結(jié)果表明,當(dāng)采用4個(gè)接收通道,每個(gè)通道一行采集1 024個(gè)點(diǎn)(這樣一行總的數(shù)據(jù)量為16 KB),所需的傳輸時(shí)間平均約為91.16 μs,傳輸速率約為1.44 Gb/s。
3.4 "信號(hào)采集測(cè)試
通過(guò)信號(hào)發(fā)生器產(chǎn)生一個(gè)中心頻率8.6 MHz,幅度為30 mV,調(diào)制頻率為500 Hz,調(diào)制深度為100%的調(diào)制三角波信號(hào),由信號(hào)采集系統(tǒng)模塊采集處理后,解調(diào)得到2 048個(gè)16 bit的I、Q數(shù)據(jù),經(jīng)由數(shù)據(jù)緩存與傳輸系統(tǒng)最后上傳至用戶計(jì)算機(jī),在計(jì)算機(jī)的掃描軟件中可以看到采集的I、Q數(shù)據(jù)波形,如圖9a)所示,數(shù)據(jù)的幅度圖如圖9b)所示。由圖可知,波形連續(xù)無(wú)波動(dòng),說(shuō)明系統(tǒng)的數(shù)據(jù)存取連續(xù),數(shù)據(jù)傳輸無(wú)誤。
4 "結(jié) "語(yǔ)
本文設(shè)計(jì)了一種基于SerialLite Ⅱ協(xié)議的磁共振采集數(shù)據(jù)傳輸系統(tǒng),實(shí)現(xiàn)了數(shù)據(jù)的乒乓存儲(chǔ)和光纖傳輸。數(shù)據(jù)緩存系統(tǒng)基于乒乓操作,有效解決了因數(shù)據(jù)量大而帶來(lái)的讀寫沖突問(wèn)題,實(shí)現(xiàn)了磁共振數(shù)據(jù)寫入與讀取的同步進(jìn)行,提高了系統(tǒng)工作效率和可靠性。在發(fā)送端和接收端建立SerialLite Ⅱ數(shù)據(jù)傳輸鏈路,實(shí)現(xiàn)了磁共振數(shù)據(jù)的高速穩(wěn)定傳輸,提高了傳輸性能和穩(wěn)定性。通過(guò)仿真和實(shí)驗(yàn)驗(yàn)證了系統(tǒng)功能的正確性與穩(wěn)定性,表明其能夠滿足磁共振成像數(shù)據(jù)傳輸?shù)男枨?,為高性能成像譜儀的研制提供了技術(shù)支撐。
目前尚未在實(shí)際的磁共振成像系統(tǒng)上對(duì)所設(shè)計(jì)系統(tǒng)進(jìn)行測(cè)試和應(yīng)用,在未來(lái)的工作中將加快在實(shí)際系統(tǒng)上的成像實(shí)驗(yàn),以驗(yàn)證系統(tǒng)的實(shí)用性。
注:本文通訊作者為邢藏菊。
參考文獻(xiàn)
[1] KIM Y, CHENG S S, DIAKITE M, et al. Toward the development of a flexible mesoscale MRI?compatible neurosurgical continuum robot [J]. IEEE transactions on robotics, 2017, 33(6): 1386?1397.
[2] WOODS J C, CONRADI M S. 3He diffusion MRI in human lungs [J]. Journal of magnetic resonance, 2018, 292(7): 90?98.
[3] SIMONSEN A, S?NCHEZ?HEREDIA J D, SAARINEN S A, et al. Magnetic resonance imaging with optical preamplification and detection [J]. Scientific reports, 2019, 9(1): 18173.
[4] 姚俊江,胡晉杰,蔣瑜.磁共振成像中數(shù)字光纖傳輸技術(shù)研究[J].信息技術(shù),2017(12):121?124.
[5] TANG W N, WANG W M, LIU W T, et al. A home?built digital optical MRI console using highspeed serial links [J]. Magnetic resonance in medicine, 2015, 74(2): 578?588.
[6] Xilinx Corporation. Aurora 64B/66B LogiCORE IP product guide (v12.0) [EB/OL]. [2022?01?14]. https://docs.xilinx.com/r/en?US/pg074?aurora?64b66b/Aurora?64B/66B?v12.0?LogiCORE?IPProduct?Guide.
[7] 毛雨陽(yáng),劉一清.基于FPGA的多路磁共振信號(hào)采集設(shè)計(jì)[J].電子測(cè)量技術(shù),2018,41(14):128?133.
[8] 王炳友,黨博,黨瑞榮,等.基于FPGA的多通道出砂振動(dòng)信號(hào)緩存系統(tǒng)研究[J].石油化工應(yīng)用,2021,40(4):98?104.
[9] 趙越,余紅英,王一奇.一種高速數(shù)據(jù)存儲(chǔ)方法的設(shè)計(jì)與驗(yàn)證[J].數(shù)據(jù)采集與處理,2021,36(2):384?390.
[10] 譚磊,李益,付建國(guó).基于異構(gòu)多核平臺(tái)的數(shù)據(jù)傳輸方法研究與實(shí)現(xiàn)[J].科學(xué)技術(shù)創(chuàng)新,2021(1):61?63.
[11] Altera Corporation. Serial lite Ⅱ protocol reference manual [EB/OL]. [2022?04?12]. https://www.altera.com.
[12] Altera Corporation. Serial lite Ⅱ IP core user guide [EB/OL]. [2022?01?21]. https://www.intel.com/content/www/us/en/docs/programmable/683179/16?1?16?1/seriallite?ii?ip?core?overview.html.
[13] 張?zhí)鞂?,雷展智,肖?基于SerialLiteⅡ協(xié)議的磁共振成像數(shù)據(jù)傳輸系統(tǒng)設(shè)計(jì)[J].波譜學(xué)雜志,2023,40(2):179?191.