專利名稱:一種超聲診斷設備中數據傳輸的處理方法
技術領域:
本發明涉及一種數據傳輸方法,尤其是一種超聲診斷設備中數據傳輸的處理方法。
背景技術:
在超聲診斷系統中,為了滿足不同的診斷需求,設計了不同的掃描類型,譬如B掃描(黑白圖像掃描)、c掃描(彩色圖像掃描)、D掃描(多普勒掃描)。在超聲診斷過程中,根據不同的診斷的需要,設計了不同的工作模式,某一時刻超聲診斷系統只處在某一工作模式下,對于某一工作模式,需要某一種類型或某幾種類型的掃描,用于生成不同類型的數據, 這些不同類型的數據可用于不同類型圖像的顯示,但這些同一模式的不同類型圖像之間又有一定的關系,這些關系包括完整性,實時性,同步性,暫態性等。例如在BC掃描模式,通常為了確保圖像的匹配性,B圖像和C圖像在掃描端是有一定幀率關系的,通常來說幀率都是相等的,為了保證在顯示端的顯示幀率也相等,就需要確保BC圖像都不能有任何丟失,否則無法配對顯示;此外,在BC掃描模式,如果超聲數據不及時傳輸和顯示,則會造成診斷時的延時現象,特別在探頭運動的情況下,延時的表現會更明顯,將影響醫生診斷;在BD掃描模式,B圖像正在顯示心臟的運動圖像,D圖像正在顯示心臟血流的運動速度,那么他們之間需要有一定的同步關系,即當B圖像看到心臟收縮時, D圖像應該看到血流的噴射速度在加大,即同步性;超聲診斷系統中掃描模式之間需要進行切換,譬如從B模式進入BC模式,模式切換則意味著掃描的切換,也意味著掃描的間斷和變化,在這個變化的過程中怎樣保證切換的及時性,數據的完整性,同步性等是一個較大的挑戰。現有超聲診斷系統為了確保這些眾多的要求,通常都分開進行考慮,譬如有確保同步性的方法,有確保延時小的方法等等,而且由于超聲掃描的多樣性,這些方法都比較復雜,譬如在BC模式,為了確保完整性,對BC圖像進行配對傳輸,即如果一幀完整的B和一幀完整的C均滿足了以后再傳輸。但這樣將導致幀率低時等待時間較長,延時較大;現有系統為了確保圖像的同步性,通常在掃描端加上各種標記,在顯示端根據這些標記去恢復圖像的同步關系,這種方式在掃描切換時,特別在多掃描類型之間切換時,每種掃描類型都要打上獨立的標記,軟件根據前后的標記進行判斷,恢復不同模式之間的同步關系,由于模式切換多達上百種,因此需要處理數百種情況,極易出錯。現有的處理方法對不同的掃描模式在存儲時進行了區分(劃分不同的緩存區),但在傳輸時又進行了關聯,造成處理比較復雜,容易丟失數據。由于超聲系統掃描類型多,模式多,因此現有的處理方法要針對每個細節去進行設計,造成系統復雜性提高,系統穩定性降低。現有系統對不同類型的數據進行匹配再傳輸的方式,在幀率較低的情況下,圖像顯示的延時較大。由于超聲系統掃描模式繁多,在某些情況下,現有系統要在顯示端恢復掃描端的先后關系非常困難,系統的處理也非常復雜,通常某些細節處理不好造成圖像的各種不穩定問題。對于一維和二維混合掃描模式下,二維圖像幀率可能很低,導致如果采用關聯傳輸的方法,對同樣的二維圖像,對應的一維數據量很大,如果按等待二維幀滿再上傳的方式將造成一維圖像延時過大。
發明內容
本發明提出一種超聲診斷設備中數據傳輸的處理方法,解決目前超聲診斷系統中由于掃描方式的多樣化以及模式切換之間的頻繁性造成超聲數據傳輸過程比較復雜、數據容易丟失且數據同步性較差的技術問題。本發明采用如下技術方案實現一種超聲診斷設備中數據傳輸的處理方法,其包括步驟將數據緩存區劃分為若干個子緩存區,將所述若干個子緩存區封裝為一個FIFO存儲器;以掃描線為單位、按照掃描順序將各個掃描線對應獲取的各個數據單元存儲至所述子緩存區;當一個子緩存區中存儲的數據單元的數量達到預設值時,啟動一次傳輸,將該子緩存區中存儲的數據單元打包成數據包進行上傳,同時將來自前端掃描設備的數據單元緩存入下一個子緩存區。其中,每個子緩存區可以存儲一定數量的數據單元,按照先入先出的原則對各個子緩存區讀寫數據,且子緩存區之間采用乒乓切換緩存方式進行數據讀寫操作。其中,FIFO存儲器包括一個寫指針、一個讀指針、一個空指針和一個滿指針。其中,在前端掃描設備工作在一維圖像的掃描模式時,將多個個掃描線對應獲取的各個數據單元緩存至一個子緩存區,然后打包成數據包進行數據上傳。其中,在前端掃描設備工作在二維圖像的掃描模式時,將構成整幀二維圖像的多個數據單元緩存至一個子緩存區,然后打包成數據包進行數據上傳。其中,在前端掃描設備工作在一維圖像和二維圖像的混合掃描模式時,將一維圖像的數據單元和構成二維圖像中多個數據單元緩存至一個子緩存區,然后打包成數據包進行數據上傳;設定一個等待時間,當經過等待時間后,所述子緩存區存儲的數據單元的數量還沒達到所述預設值時,將所述子緩存區的存儲的數據單元打包成數據包進行數據上傳。與現有技術相比,本發明具有如下有益效果
本發明采用不區分掃描類型,以掃描線為單位,直接按照掃描順序把各種類型的圖像依次依序寫入數據緩存區,并按照此緩存順序以FIFO機制進行數據傳輸的方式,由于數據傳輸時保留了掃描時的順序,因此不會出現同步性被破壞的問題。另外,本發明可以靈活控制一次傳輸的數據包大小,達到各種模式圖像均能流暢顯示的目的的方式,解決了一維圖像和二維圖像的不對應導致一維圖像產生延時的問題。本發明處理方法簡單可靠,實現容易,有利于提高超聲診斷系統的穩定性和可靠性。
圖1是超聲診斷系統的模塊示意圖。圖2是本發明的實現流程示意圖。圖3是FIFO存儲器的指針結構示意圖。圖4是超聲數據上傳時數據包的數據結構示意圖。
具體實施方式
如圖1所示的超聲診斷系統的模塊示意圖,超聲診斷系統主要包括主控模塊;均與主控模塊連接的發射模塊、接收模塊、數據處理模塊、數據傳輸模塊、處理器和顯示模塊。本發明是一種涉及計算機程序來實現的發明創造,應用在超聲診斷系統中的數據傳輸模塊,用于解決超聲數據由其他硬件處理模塊傳輸至處理器的過程。由于超聲數據處理的速度是變化的,它取決與掃描速率,與處理器的接口處理速率不一致,因此在數據傳輸模塊必須設置數據緩存。因此,對超聲數據的各種不同的傳輸處理方法的差異主要就體現在數據緩存的組織方式和處理方式。鑒于本發明完全按照掃描線為單位進行數據存儲,也完全按照掃描順序進行數據存儲,因此,為了描述方便,將一線/個掃描線對應的掃描數據或超聲數據稱為一個數據單兀。如圖2所示,本發明包括如下實現步驟
步驟Sll 本發明把數據傳輸模塊中的數據緩存區劃分為若干個子緩存區,且將這些子緩存區封裝為一個FIFO (First Input First Output,先入先出隊列)存儲器,按照FIFO 機制工作。采用FIFO機制是為了降低數據傳輸模塊對實時性的要求,提高傳輸可靠性。每個子緩存區可以存儲一定數量的數據單元,按照先入先出的原則對各個子緩存區讀寫數據,并且保證二者不同時操作同一個子緩存區,實際上也可以用乒乓切換緩存方式,乒乓是特殊的FIFO緩存方式,是深度為2的FIFO緩存方式,乒乓緩存需要在兩個子緩存區被寫滿前至少要讀取一個子緩存區中的數據,因此對于沒有及時響應讀緩存請求的情況下可能會出錯。把所有子緩存區(即數據緩存區)封裝為一個FIFO,FIFO緩存方式需要一個寫指針、一個讀指針、一個空指針和一個滿指針,如圖3所示。在工作正常的情況下,通過滿指針保證FIFO不會被寫滿,否則,就會導致FIFO溢出而數據丟失。另外,FIFO的存儲深度與每個緩存區的大小和緩存的容量相關。步驟S12 根據掃描模式確定以N個數據單元(N為大于等于1的正整數)為單位進行數據傳輸,即確定一個子緩存區中緩存N個數據單元時即觸啟動數據上傳。步驟S13 以掃描線為單位、按照掃描順序將每個掃描線對應的超聲數據(即數據單元)進行存儲。每個子緩存區存儲一定量的圖像數據,子緩存區的大小可以靈活控制,同一種圖像不需要連續存儲,以掃描線為單位、按照掃描順序將各個掃描線對應的數據單元進行存儲。其中,1個掃描線掃描產生的超聲數據為1線/個的一維圖像數據,即數據單位為一維圖像數據。步驟S14 當一個子緩存區中存儲的數據單元的數量達到N時,開始啟動一次傳輸,同時數據緩存區繼續保存輸入的數據,存入下一個子緩存區。在一維圖像和二維圖像混合掃描模式下,本發明通過如下方法有效解決一維圖像和二維圖像之間產生傳輸延時過大的問題
1、由于一線一維圖像數據的數據量比較小,為了提高傳輸效率,在一維圖像模式下,把很多線一維圖像數據組織在一起,上傳給處理器。即以多個數據單元為單位上傳給處理器。2、在前端掃描設備只工作在二維圖像的掃描模式下,二維圖像數據也按照線的方式按上述步驟S12和S14的方式緩存并傳輸,且可以靈活控制是否整幀上傳(假使一幀二維圖像由X個掃描線的掃描結果構成,那么,只需要一次上傳X個數據單元,即實現了整幀的二維圖形數據上傳)。3、在前端掃描設備工作組合模式下,既有二維圖像數據,又有一維圖像數據,這種情況下,如果再確保二維圖像整幀上傳,在幀率較低的情況下,一維圖像將出現較大延時, 所以此種情況下,首先確定一次上傳的數據單元的數量,將一維圖像的數據單元和構成二維圖像中多個數據單元打包為一個數據包進行數據上傳,數據單元的順序也是不確定的, 唯一要確保的就是數據單元數量的完整性;其次,為了避免一維圖像出現較大延時,還需要確定一個等待的時間,如果到達一定的等待時間,子緩存區中存儲的數據單元還沒有達到觸發上傳的數據單元數量時,也需要馬上上傳該子緩存區中已經緩存的數據,這是為了在某些系統異常的情況下,仍然不會有丟數據的現象發生。另外,在組合模式下,一維圖像數據與二維圖像數據的時間關系,不需要再進行特殊處理,只需要按構成一維圖像和二維圖像的各個數據單元進入各個子緩存區之前的順序進行傳輸即可,即不同類型的圖像在緩存前后的先后次序一致。并且,考慮數據緩存區中數據的輸入方式和時序取決于前端掃描設備,故本發明采用連續存儲的方式,可以確保圖像的時間關系不被破壞。如圖4所示,傳輸給的數據包的內容與圖像模式和掃描參數相關,但其結構都一樣,都包括包頭和線頭兩部分。比如,在B+BM+CM模式下,數據包結構如下數據包由包頭和N條線數據B LineO, BM LineUB LineU…、B LineX組成。N條線按照時間順序連續寫入數據包,第一條線在最前面,第N條線在最后面。其中,B LineO表示B掃描模式下第1 條掃描線對應的數據單元,BM LineX表示BM掃描模式下第X+1條掃描線對應的數據單元, 其他類推。綜上,本發明采用不區分掃描類型,以掃描線為單位,直接按照掃描順序把各種類型的圖像依次依序寫入數據緩存區,并按照此緩存順序以FIFO機制進行數據傳輸的方式, 由于數據傳輸時保留了掃描時的順序,因此不會出現同步性被破壞的問題。另外,本發明可以靈活控制一次傳輸的數據包大小,達到各種模式圖像均能流暢顯示的目的的方式,解決了一維圖像和二維圖像的不對應導致一維圖像產生延時的問題。以上所述僅為本發明的較佳實施例而已,并不用以限制本發明,凡在本發明的精神和原則之內所作的任何修改、等同替換和改進等,均應包含在本發明的保護范圍之內。
權利要求
1.一種超聲診斷設備中數據傳輸的處理方法,其特征在于,包括步驟將數據緩存區劃分為若干個子緩存區,將所述若干個子緩存區封裝為一個FIFO存儲器;以掃描線為單位、按照掃描順序將各個掃描線對應獲取的各個數據單元存儲至所述子緩存區;當一個子緩存區中存儲的數據單元的數量達到預設值時,啟動一次傳輸,將該子緩存區中存儲的數據單元打包成數據包進行上傳,同時將來自前端掃描設備的數據單元緩存入下一個子緩存區。
2.根據權利要求1所述超聲診斷設備中數據傳輸的處理方法,其特征在于,每個子緩存區可以存儲一定數量的數據單元,按照先入先出的原則對各個子緩存區讀寫數據,且子緩存區之間采用乒乓切換緩存方式進行數據讀寫操作。
3.根據權利要求1所述超聲診斷設備中數據傳輸的處理方法,其特征在于,FIFO存儲器包括一個寫指針、一個讀指針、一個空指針和一個滿指針。
4.根據權利要求1所述超聲診斷設備中數據傳輸的處理方法,其特征在于,在前端掃描設備工作在一維圖像的掃描模式時,將多個個掃描線對應獲取的各個數據單元緩存至一個子緩存區,然后打包成數據包進行數據上傳。
5.根據權利要求1所述超聲診斷設備中數據傳輸的處理方法,其特征在于,在前端掃描設備工作在二維圖像的掃描模式時,將構成整幀二維圖像的多個數據單元緩存至一個子緩存區,然后打包成數據包進行數據上傳。
6.根據權利要求1所述超聲診斷設備中數據傳輸的處理方法,其特征在于,在前端掃描設備工作在一維圖像和二維圖像的混合掃描模式時,將一維圖像的數據單元和構成二維圖像中多個數據單元緩存至一個子緩存區,然后打包成數據包進行數據上傳。
7.根據權利要求6所述超聲診斷設備中數據傳輸的處理方法,其特征在于,還包括設定一個等待時間,當經過等待時間后,所述子緩存區存儲的數據單元的數量還沒達到所述預設值時,將所述子緩存區的存儲的數據單元打包成數據包進行數據上傳。
全文摘要
本發明公開一種超聲診斷設備中數據傳輸的處理方法,其包括步驟將數據緩存區劃分為若干個子緩存區,將所述若干個子緩存區封裝為一個FIFO存儲器;以掃描線為單位、按照掃描順序將各個掃描線對應獲取的各個數據單元存儲至所述子緩存區;當一個子緩存區中存儲的數據單元的數量達到預設值時或者等待時間達到預設值時,啟動一次傳輸,將該子緩存區中存儲的數據單元打包成數據包進行上傳,同時將來自前段掃描設備的數據單元緩存入下一個子緩存區。本發明處理方法簡單可靠,實現容易,有利于提高超聲診斷系統的穩定性和可靠性。
文檔編號G06F5/16GK102253821SQ20111009056
公開日2011年11月23日 申請日期2011年4月12日 優先權日2011年4月12日
發明者傅勇 申請人:深圳市藍韻實業有限公司