(57)【特許請求の範囲】
【請求項１】
被検体との間で超音波を送受する超音波探触子と、前記被検体から受信された反射エコー信号に基づくRFデータを用いて超音波画像データを生成するデータ変換部と、該データ変換部で生成された超音波画像データに基づく超音波画像を表示する表示部とを備え、
前記データ変換部は、超音波計測モードに係る一連のデータ処理を行なう複数のプロセッサと、該処理結果を記憶するバッファメモリとを有し、
各プロセッサは、自己のプロセッサの書込み要求に応じて自己に割り付けられた処理を行い、前記処理結果を前記バッファメモリに書き込み、他のプロセッサの読出し要求に応じて、前記バッファメモリに書込まれた処理結果を読出す超音波診断装置において、
前記バッファメモリは、複数の内部バッファを有し、各内部バッファは、前記各プロセッサに対応付けて割り付けられていて、
前記各内部バッファは、複数のメモリ領域を有して形成され、
前記各プロセッサは、自己のプロセッサの処理結果の書込み要求が有ったとき、他のプロセッサの読出しが継続しているメモリ領域以外のメモリ領域を指定して前記処理結果を書き込ませることを特徴とする超音波診断装置。
【請求項２】
前記データ変換部は、さらに、入力される前記RFデータを記憶するメモリと、該複数のプロセッサを制御する制御プロセッサとを有し、前記制御プロセッサは、前記メモリ内に記憶された前記RFデータ基づいて超音波計測モードに係る一連のデータ処理を複数のプロセッサに行なわせるように制御することを特徴とする請求項1記載の超音波診断装置。
【請求項３】
前記各プロセッサは、自己のプロセッサの処理結果の書込み要求に応じて自己に割り付けられた前記内部バッファ内の前記複数のメモリ領域の1つを指定して該処理結果を書き込ませ、自己のプロセッサの書込み解除要求が入力された後、該メモリ領域に書込まれた処理結果を他のプロセッサの読出し要求に応じて読出許可を出すことを特徴とする請求項1記載の超音波診断装置。
【請求項４】
前記各プロセッサは、自己の前記プロセッサの処理結果が書き込まれた前記メモリ領域が複数ある場合、最新の処理結果が書き込まれたメモリ領域を指定して他のプロセッサの読出し要求に応じて読出許可を出すことを特徴とする請求項1記載の超音波診断装置。  
【請求項５】
前記各プロセッサは、複数のデータ処理を並列に動作することを特徴とする請求項1記載の超音波診断装置。
【請求項６】
前記超音波探触子を駆動して前記被検体に超音波ビームを送波する送信信号を形成するビーム形成部と該ビーム形成部の送信信号を前記超音波探触子に供給するとともに、前記超音波探触子により受信される反射エコー信号を受信処理する送受信切替部を制御する制御部を備え、
該制御部は、入力部から入力される前記超音波計測モードを表す計測モードコードを前記RFデータに付加して前記データ変換部の前記メモリに転送し、
前記制御プロセッサは、前記反射エコー信号に付加して前記メモリに記憶された前記計測モードコードに基づいて、前記一連のデータ処理を複数のプロセッサに分散させて行なわせることを特徴とする請求項2記載の超音波診断装置。
【請求項７】
反射エコー信号に基づくRFデータを用いて超音波画像データを生成するステップと、超音波画像データに基づく超音波画像を表示するステップとを含む超音波画像生成方法において、
前記超音波画像データを生成するステップは、超音波計測モードに係る一連のデータ処理を行なう複数のプロセッサが自己のプロセッサの書込み要求に応じて自己に割り付けられた処理を行うステップと、処理結果を他のプロセッサの読出しが継続しているメモリ領域以外のメモリ領域のバッファメモリを指定して書き込むステップと、他のプロセッサの読出し要求に応じて、バッファメモリに書込まれた処理結果を読出すステップとを有していることを特徴とする超音波画像生成方法。
【請求項８】
被検体との間で超音波を送受する超音波探触子と、前記被検体から受信された反射エコー信号に基づくRFデータを用いて超音波画像データを生成するデータ変換部と、該データ変換部で生成された超音波画像データに基づく超音波画像を表示する表示部とを備えてなる超音波診断装置において、
前記データ変換部は、超音波計測モードに係る一連のデータ処理を行なう複数のプロセッサと、各プロセッサに対応させた内部バッファとを有し、
前記内部バッファは複数のメモリ領域を有して形成され、前記各プロセッサは自己のプロセッサの処理結果の書込み要求が有ったとき、他のプロセッサの読出しが継続しているメモリ領域以外のメモリ領域を指定して前記処理結果を書き込ませることを特徴とする超音波診断装置。
【請求項９】
前記内部バッファは同じ大きさのメモリ領域を3つ有して形成されていることを特徴とする請求項8記載の超音波診断装置。
【請求項１０】
該3つのメモリ領域は、読み出し準備メモリ、読み出し指定メモリ、書き込み指定メモリであることを特徴とする請求項9記載の超音波診断装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、超音波診断装置及び超音波画像生成方法に係り、特に、反射エコー信号から超音波画像へ変換する演算処理を行うデータ変換部の改良に関する。
【背景技術】
【０００２】
超音波診断装置は、被検体の超音波の断層像(Bモード像)を計測する機能を備えている。また、例えば心臓の断層像を計測しているときに、心臓の壁の動きを示す時間変化画像(Mモード)を計測する機能も備えている。さらに、これらに限らず、断層像の計測データに基づいて弾性画像を生成する機能も備えている。【０００３】
これらの複数の機能を実現するために、各機能に適した複数の計測モードを並列に実行するとともに、各機能に対応して計測された反射エコー信号から超音波画像を生成して表示部に表示するために、デジタルスキャンコンバータ(DSC)と呼ばれるデータ変換部を複数設けて、各機能に対応した超音波画像データを生成することが提案されている(例えば、特許文献1)。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特許第3612358号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかし、特許文献1では、異なるデータ処理間の処理周期の調和や処理タイミングの調整については配慮されていない。つまり、一連の異なるデータ処理間の処理タイミングの組合せは、異なるデータ処理の内容やデータ処理手順により種々に変わることから、一連の異なるデータ処理間の組み合わせごとに異なる方法で処理周期の調和や処理タイミングの調整をしなければならない。【０００６】
すなわち、例えば、DSC等のデータ変換部においては、反射エコー信号をデジタル化したRFデータ(又は、RFフレームデータ)を超音波画像の再構成に適したRFデータに変換するRFデータ処理と、そのRFデータを表示部に表示するのに適した超音波画像データに変換する表示画像データ処理は、超音波計測モードに応じてデータ処理量が変動したり、処理周期が異なることが知られている。【０００７】
したがって、これらのRFデータ処理と表示画像処理を別々のハードウェアで行わせるようにすると、それらの処理周期が異なるために、別々のハードウェア間で処理周期を調和させたり、処理タイミングを調整しなければならないという問題がある。【０００８】
このような問題に対応するため、例えば、RFデータ処理と表示画像データ処理の間にRFデータを複数保存できる容量のシネメモリを設け、RFデータ処理側はタイミングを気にすることなくシネメモリに処理結果を書き込み、表示画像データ処理側は任意のタイミングでシネメモリからRFデータの処理結果を読み出して処理を行うことができる。しかし、このような仕組みを用いて一連の異なるデータ処理の処理周期を調和させたり、処理タイミングを調整するようにすると、処理周期の異なるデータ処理間にシネメモリのごとく大容量のメモリが複数必要になり、メモリの規模が大きくならざるを得ないという問題がある。【０００９】
このような問題は、一連の異なるデータ処理を別々のハードウェアで実行させる場合に限らず、異なるソフトウェアスレッドで行う場合にも起きる問題である。また、上で例示した超音波画像の再構成に適したRFデータに変換するRFデータ処理と、そのRFデータを表示部に表示するのに適した超音波画像データに変換する表示画像処理の組合せに限らず、処理周期が異なる関連したデータ処理が必要となる複数の超音波計測モードを並列に実行する場合も同様である。【００１０】
本発明が解決しようとする課題は、一連の複数のデータ処理を別々のプロセッサに処理するに際し、それらのプロセッサ間における処理周期の調和及び処理タイミングの調整を不要とすることにある。
【課題を解決するための手段】
【００１１】
上記課題を解決するため、本発明は、被検体との間で超音波を送受する超音波探触子と、前記被検体から受信された反射エコー信号に基づくRFデータを用いて超音波画像データを生成するデータ変換部と、該データ変換部で生成された超音波画像データに基づく超音波画像を表示する表示部とを備え、前記データ変換部は、超音波計測モードに係る一連のデータ処理を行なう複数のプロセッサと、該処理結果を記憶するバッファメモリとを有し、各プロセッサは、自己のプロセッサの書込み要求に応じて自己に割り付けられた処理を行い、前記処理結果を前記バッファメモリに書き込み、他のプロセッサの読出し要求に応じて、前記バッファメモリに書込まれた処理結果を読出す超音波診断装置において、前記バッファメモリは、複数の内部バッファを有し、各内部バッファは、前記各プロセッサに対応付けて割り付けられていて、前記各内部バッファは、複数のメモリ領域を有して形成され、前記各プロセッサは、自己のプロセッサの処理結果の書込み要求が有ったとき、他のプロセッサの読出しが継続しているメモリ領域以外のメモリ領域を指定して前記処理結果を書き込ませる超音波診断装置であることを特徴とする。
【００１２】
また、本発明は、反射エコー信号に基づくRFデータを用いて超音波画像データを生成するステップと、超音波画像データに基づく超音波画像を表示するステップとを含む超音波画像生成方法において、前記超音波画像データを生成するステップは、超音波計測モードに係る一連のデータ処理を行なう複数のプロセッサが自己のプロセッサの書込み要求に応じて自己に割り付けられた処理を行うステップと、処理結果を他のプロセッサの読出しが継続しているメモリ領域以外のメモリ領域のバッファメモリを指定して書き込むステップと、他のプロセッサの読出し要求に応じて、バッファメモリに書込まれた処理結果を読出すステップとを有している超音波画像生成方法を特徴とする。
【発明の効果】
【００２０】
本発明によれば、一連の複数のデータ処理を別々のプロセッサに処理するに際し、それらのプロセッサ間における処理周期の調和及び処理タイミングの調整を不要とすることができる。
【図面の簡単な説明】
【００２１】
【図１】本発明の超音波診断装置の一実施形態のブロック構成図である。
【図２】図1実施形態の制御プロセッサの処理動作のフレーチャートである。
【図３】図1の実施形態を用いてBモード像処理を2つのプロセッサにより実行させる実施例1のフローチャートである。
【図４】図3の実施例1の動作タイミングチャートの一例である。
【図５】図3の実施例1の動作タイミングチャートの他の一例である。
【図６】図1の実施形態の変形例のブロック構成図である。
【図７】図1の実施形態を用いてBモード像とDモード計測の処理を4つのプロセッサにより実行させる実施例2のフローチャートである。
【発明を実施するための形態】
【００２２】
以下、本発明を適用してなる超音波診断装置の実施形態を説明する。なお、以下の説明では、同一機能部品については同一符号を付して重複説明を省略する。
【００２３】
図1は、本発明を適用してなる超音波診断装置の構成を示すブロック図である。図1に示すように、本発明の超音波診断装置は、超音波計測部10と、超音波計測部10で計測された超音波計測データであるRFデータに、超音波計測モードごとに設定される一連の所定のデータ処理を施して、超音波画像データを生成するデータ変換部20と、データ変換部20で変換された超音波画像データを記憶するビデオメモリ22と、ビデオメモリ22に記憶された超音波画像などを表示する表示部24などを備えて構成される。
【００２４】
超音波計測部10は、周知の超音波計測を行なうのに必要な構成を備えており、図示例では、被検体に超音波ビームを送信するとともに、被検体からの反射エコー信号を受信する超音波探触子12(PROBE)と、超音波探触子12の送信／受信を切り替える送受信切替部14(PRB)と、超音波探触子12に超音波ビームを送信させるための信号を供給するビーム形成部16(DBF)とを備えて構成される。さらに、超音波計測モードなどを設定する設定部17(CONSOLE)と、設定部17により設定される超音波計測モードに応じて、送受信切替部14とビーム形成部16を制御する制御部18(CONT)を備えている。また、設定部17により入力設定される各所の情報はホストコンピュータ19に入力され、ホストコンピュータ19は設定部17から入力された超音波計測モードに応じて制御部18を介して送受信切替部14とビーム形成部16を制御することができるようになっている。さらに、ホストコンピュータ19は制御部18を介してデータ変換部20を制御することができるようになっている。
【００２５】
超音波探触子12(PROBE)は、振動子が超音波探触子の長軸方向に1〜mチャンネル分配列される。ここで、短軸方向にもk個に切断されて1〜kチャンネル分配列されている場合、短軸方向の各振動子(1〜kチャンネル)に与える遅延時間を変えることにより、短軸方向にも送波や受波のビームフォーカスが可能になっている。また、短軸方向の各振動子に与える超音波送信信号の振幅を変えることにより送波重み付けがされ、短軸方向の各振動子からの超音波受信信号の増幅度又は減衰度を変えることにより受波重み付けがされるようになっている。さらに、短軸方向のそれぞれの振動子をオン、オフすることにより、口径制御ができるようになっている。
【００２６】
また、超音波探触子12の振動子は、圧電素子により形成される他、cMUT(Capacitive Micromachined Ultrasonic Transducer：IEEE Trans. Ultrason.Ferroelect. Freq. Contr. Vol45 pp.678-690 May 1998等)と呼ばれる半導体により形成されるものを適用することができる。
【００２７】
送受信切替部14は、超音波探触子12に送信信号を供給するとともに受信した反射エコー信号を処理してデジタル化したRFデータを生成するインターフェースの役割を果たしている。つまり、送受信切替部14は、受信した反射エコー信号を増幅などの受信処理、A/D変換、複数の振動子間の位相を揃えて加算する処理などを行なって、デジタル化したRFデータを生成する機能を有する。また、送受信切替部14には、被検体に送信された超音波ビームに対する被検体内からの反射エコー信号を受信して生体情報を収集する受波回路の機能を有する。
【００２８】
ビーム形成部16は、超音波探触子12を制御して超音波ビームの打ち出しをさせる送波回路であり、超音波探触子12の複数の振動子を駆動する超音波パルスの送信タイミングを制御して、被検体内に設定される焦点に向けて超音波ビームを形成するようになっている。また、超音波探触子の振動子の配列方向に電子的に超音波ビームを走査するようになっている。
【００２９】
設定部17は、操作者が操作卓上のキーボードやトラックボールを用いて所望の超音波計測モード、患者情報、撮像位置などの各種パラメータを入力するものである。
【００３０】
制御部18は、設定部17によって入力された各種パラメータに基づき送受信切替部14、ビーム形成部16、データ変換部20をそれぞれ機能させるように制御する制御用コンピューターシステムである。また、制御部18は、送受信切替部14から出力されるRFデータをデータ変換部20に転送するようになっている。このとき、設定部17から入力された超音波計測モードを表す計測モードコードを、RFデータに付帯させてデータ変換部20に転送するようになっている。
【００３１】
データ変換部20は、複数のプロセッサ20a〜20hと、プロセッサ20a〜20hを一括で制御する制御プロセッサ20iと、制御部18から転送されてくるRFデータを記憶するメモリ20j(MEMORY)と、バッファメモリ20mを備えて形成されている。また、これらのプロセッサ20a〜20h，制御プロセッサ20i，メモリ20j、バッファメモリ20m間で相互にデータを通信可能な内部バス20kを備えている。
【００３２】
バッファメモリ20mは、複数のプロセッサ20a〜20hにそれぞれ対応させて設定された複数の内部バッファa〜hを有して形成されている。各内部バッファa〜hは、それぞれ複数(図示例では、3つ)のメモリ領域を有して形成されているが、メモリ領域の数はこれに限られず、少なくとも2つ以上有ればよい。
【００３３】
制御プロセッサ20iは、内部バス20kを介して接続されるプロセッサ20a〜20hを制御するものである。つまり、メモリ20j内に記憶されたRFデータについて、超音波計測モードに係る一連のデータ処理をプロセッサ20a〜20hの一又は複数に分散させて行なわせるように制御するようになっている。例えば、メモリ20jに記憶されるRFデータに付帯された計測モードコードを解析し、超音波計測モードに係る一連のデータ処理の処理プログラムをプロセッサ20a〜20hの一又は複数に割り当てる。また、各内部バッファa〜hを各プロセッサ20a〜20hに対応付けて割り付ける。
【００３４】
図2に、制御プロセッサ20iの処理フローチャートを示す。制御プロセッサ20iは、制御部18からRFデータに付帯させてメモリ20jに格納された計測モードコードを受け取り(S101)、計測モードコードに対応した処理構成テキストをバッファメモリ20mから読み出す(S102)。この処理構成テキストは、各種の超音波計測モードに対応させて複数の処理プログラムが設定され、それらの処理プログラムの実行を割り付ける各プロセッサ20a〜20hを決める手順が設定されている。また、処理構成テキストの設定に従って、内部バッファa〜hを含めて必要なバッファメモリを確保する(S103)。次いで、確保した内部バッファa〜hを各プロセッサ20a〜20hに結びつける(S104)。そして、各プロセッサ20a〜20hに処理プログラムを割り付けて初期化し(S105)、処理を実行させる(S106)。
【００３５】
一連のデータ処理の最上流側のプロセッサ20a〜20hは、割当てられた処理プログラムに従って、メモリ20jに記憶されるRFデータ読み出してデータ処理を行う。その処理結果に基づいて、下流側のプロセッサ20a〜20hは、割当てられた処理プログラムに従ってデータ処理を実行し、最下流側のプロセッサ20a〜20hは、超音波画像データを生成して、ビデオメモリ22に出力するようになっている。
【００３６】
なお、超音波計測モードには、Aモード像、Bモード像、カラーフローマッピング(C)モード像、ドプラ(D)モード像、弾性(エラスト)(E)モード像、Mモード像、等の種々の超音波計測モードが広く知られている。また、被検体の体表に沿って連続して計測される複数のBモード像に基づいて3次元超音波画像を再構成する超音波計測モードが知られている。
【００３７】
ここで、データ変換部20には、例えばCELLなど単一のパッケージ内に複数のプロセッサコアを有するアーキテクチャが標準化されたマルチプロセッサを適用することができる。CELLとは、Cell Broadband Engine(登録商標)の略記で、株式会社ソニー・コンピュータエンタテインメント等によって開発されたマイクロプロセッサである。CELLを用いる場合、プロセッサ20a〜20hはSPE(Synergistic Processor Element)、制御プロセッサ20iはPPE(PowerPC Processor Element)、内部バス20kはEＩB(Element Interconnect Bus)として構成される。
【００３８】
一方、ビデオメモリ22は、データ変換部20によって形成された超音波画像と、患者情報やボディマーク情報などの文字やグラフィック情報、設定部17のグラフィック情報を合成して記憶するものである。制御部18は、どのような表示フォーマットで表示するかを選択制御する表示制御部の機能も有している。
【００３９】
表示部24は、ビデオメモリ22に記憶された超音波画像を表示するもので、例えばCRTモニタあるいは液晶モニタからなる。表示部24は超音波画像が表示されて操作者によって診断可能な画像が表示されればよいのであって、アナログ出力、デジタル出力の何れのものであっても本発明に適用することができる。
【００４０】
なお、超音波診断装置においては、装置の小型化に寄与するデータ処理の回路規模の縮小という要求がある一方で、装置の高機能化に寄与するデータ処理の高速化の要求があり、互いがトレードオフとなる技術課題が存在しているが、本実施形態の単一パッケージのマルチプロセッサを採用することで回路規模の縮小とデータ処理の高速化に寄与することができる。なお、プロセッサ20a−20hの数は、図1において例として8個としているが、プロセッサの処理能力によって任意に設定できるため、任意の自然数の個数であってもよい。
【００４１】
以下、図1の超音波診断装置のデータ変換部20の詳細な構成及び動作について、具体的な超音波計測モードに係る一連のデータ処理の実施例に基づいて説明する。
【実施例１】
【００４２】
図3に、超音波計測モードの代表的な例であるBモード像を画像化するデータ変換部20におけるデータ処理のフローチャートを示す。本実施例では、Bモード像の画像処理を高速に行うため、一連のデータ処理をプロセッサ20aとプロセッサ20bの2つに割り当てて行なうものとして説明する。すなわち、超音波計測部10で計測されメモリ20jに格納されたRFフレームデータに基づいて、Bモード像の再構成に適したRFフレームデータに変換するRFフレームデータ処理と、そのRFフレームデータを表示部に表示するのに適したBモード画像データに変換する表示画像データ処理は処理周期が異なる。【００４３】
そこで、制御プロセッサ20iは、RFフレームデータに付帯してメモリ20jに格納された計測モードコードを解析し、Bモード像の再構成処理であることを認識する。そして、制御プロセッサ20iは、Bモード像生成までの具体的な処理をパイプライン方式で行うために、図3に示すように、プロセッサ20aにRFフレームデータ処理BM1を割当て、プロセッサ20bに表示画像データ処理BM2を割当てる。また、制御プロセッサ20iは、プロセッサ20aにBM1の処理結果を書き込む内部バッファaを設定し、プロセッサ20bには内部バッファaに書き込まれた処理結果を読み出してBM2の処理を行わせるように設定する。また、プロセッサ20bのBM2の処理結果をビデオメモリ22に出力するように設定する。【００４４】
図3に示すように、Bモード像生成までに必要な一連のデータ処理は、例えば、対数圧縮処理S1、パーシスタンス処理S2、エンハンス処理S4を含むRFフレームデータ処理BM1と、走査変換処理S12、ガンマ補正処理S14、データ転送処理S15を含む表示画像データ処理BM2から構成される。対数圧縮処理S1は、例えば、2の20乗もあるRFフレームデータのダイナミックレンジを、比較的小さい回路上のダイナミックレンジに圧縮する処理である。本実施例の場合は、表示部24のダイナミックレンジに圧縮する。パーシスタンス処理S2は、対数圧縮処理S1後のRFフレームデータに対して表示部24上の同じ画素に表示されるRFフレームデータ同士を加算平均する処理である。
エンハンス処理S4は、パーシスタンス処理S2後のRFフレームデータに対して画素間の境界が鮮明になるようにエッジ強調する処理である。【００４５】
走査変換処理S12は、エンハンス処理後の画素を超音波ビームの走査から表示モニタの走査へ座標変換する処理である。ガンマ補正処理S14は、走査変換処理S12後の画素に対し、画素の定義域と値域を決めるガンマ曲線で表示階調を補正する処理である。データ転送処理S15は、ガンマ補正処理S14後の画像(Bモード像)をビデオメモリ22に転送する処理である。【００４６】
ここで、RFフレームデータ処理BM1では、データ処理をRFフレームデータのフレームレートで実行する。一方、表示画像データ処理BM2では、データ処理を表示部24の表示更新周期(ビデオレート)で実行する。フレームレートとビデオレートは一般に異なることから、それらのデータ処理(更新)のタイミングはそれぞれ異なったものとなる。【００４７】
ここで、本実施例の特徴部であるバッファメモリ20mを用いて、一連の複数のデータ処理を別々のプロセッサに分散して処理するに際し、それらのプロセッサ間における処理周期の調和及び処理タイミングの調整を不要とすることについて説明する。つまり、RFフレームデータ処理BM1と表示画像データ処理BM2を同期のための待ち処理を行うことなく、表示画像データ処理BM2は常に最新の超音波画像データを、ビデオメモリ22を介して表示部24に出力表示させることができる理由について説明する。【００４８】
本実施例のバッファメモリ20mは、各プロセッサ20a〜20hに対応させて、それぞれ内部バッファa〜hを有し、各内部バッファa〜hは同じ大きさのメモリ領域を複数(本実施例では3つ)有して形成されている。本実施例の3つのメモリ領域は、各プロセッサ20a〜20hで使用状態が管理されている。ここで、3つのメモリ領域の使用状態は、「読み出し準備メモリ」Mready、「読み出し指定メモリ」Mread、「書き込み指定メモリ」Mwriteの3つに分けられる。メモリ領域の数をMnum (本実施例では、3)とした場合、各内部バッファa〜hの内部のメモリは、それぞれ「0」、「1」、・・・、「Mnum−1」と呼称され、各メモリ領域の先頭アドレスを示すものとする。ここで、読み出し準備状態のメモリはメモリ「Mready」で記述することができる。例えば、「読み出し準備メモリ」がMready＝0の場合、Mnum個存在するメモリ領域のうちメモリ領域「0」が読み出し準備状態にあることを示す。また、Mread＝1、Mwrite＝2であれば、メモリ領域「1」が読み出し指定状態、メモリ領域「2」が書き込み指定状態であることを認識している。また、各メモリ領域の初期状態においては、全て使用不可を示す「−1」に初期化されているものとする。【００４９】
プロセッサ20aは、図3に示すように、RFフレームデータ処理BM1のS3においてプロセッサ20aから「書き込み要求」が出されると、(1)式に基づいて、書き込み先の「書き込み指定メモリ」Mwriteを決める。【００５０】
Mwrite＝(Mwrite＋1)% Mnum                        (1)
ここで、(1)式の「%」は剰余を示す演算子である。【００５１】
式(1)で求めたMwriteが「読み出し指定メモリ」Mreadであった場合は、現在、表示画像データ処理BM2がそのメモリ領域の内容を読み出していることを意味し、読み出し中に書き込みをすると、表示画像データ処理BM2が誤った処理をすることになる。そこで、Mreadのメモリ領域を、「書き込み指定メモリ」に指定することはできない。この場合は、求めたMwriteに基づいて式(1)を再度演算し、求めたMwriteのメモリ領域のアドレスを指定して、要求元のプロセッサ20aに返す。【００５２】
これにより、プロセッサ20aはエンハンス処理S4の処理の終了に合せて処理結果を指定されたアドレスのメモリ領域に格納する。また、本実施例では、エンハンス処理S4の処理結果を内部バッファaのメモリ領域に格納した後、図2のステップS5において同一の処理結果を、メモリ20jに設定されたシネメモリに格納するようにしている。しかし、ステップS5の処理は省略することができる。そして、エンハンス処理S4又はステップS5の書き込み処理が終了したとき、プロセッサ20aはステップS6で、「書込み解除要求」を制御プロセッサ20iに出力する。【００５３】
プロセッサ20aは、「書込み解除要求」が入力されると、次式(2)により、書き込み処理が終了したメモリ領域の状態を、「読み出し準備メモリ」Mreadyに切り換える。【００５４】
Mready＝Mwrite                                      (2)
一方、プロセッサ20aは、表示画像データ処理BM2のステップS11において、プロセッサ20bから「読み出し要求」が入力されると、次式(3)により、「読み出し準備メモリ」Mreadyの状態を「読み出し指定メモリ」Mreadに書き換えて、そのアドレスを指定して要求元のプロセッサ20bに戻す。【００５５】
Mread＝Mready                                      (3)
これに応答して、プロセッサ20bは指定されたアドレスのメモリ領域から最新の処理結果を読み出して、走査変換処理S12を実行する。そして、走査変換処理S12が終了したら、プロセッサ20bは「読み出し解除要求」をプロセッサ20aに出力する。これに応答して、プロセッサ20aは、次式(4)により、「読み出し指定メモリ」Mreadを初期化する。【００５６】
Mread＝−1                                        (4)
このように内部バッファaを管理することにより、各プロセッサ20aは他のプロセッサにより読み出し処理が行われている間、他の2つのメモリ領域に交互に最新の処理結果を書き込み続けることができる。また、新たに読み出し処理が発生したときは、最後に更新された最新のメモリ領域の内容を読み出させるように動作する。【００５７】
上記の実施例1のRFフレームデータ処理BM1と表示画像データ処理BM2の関連動作について、図4、図5に示した具体的なタイムチャート例を用いて説明する。図4は、RFフレームデータ処理BM1の動作サイクルであるフレームレートクロックが、表示画像データ処理BM2の動作サイクルであるビデオレートクロックよりも速いときのデータ処理の実行サイクルを示している。一方、図5は、RFフレームデータ処理BM1の動作サイクルであるフレームレートクロックが、表示画像データ処理BM2の動作サイクルであるビデオレートクロックよりも遅いときのデータ処理の実行サイクルを示している。【００５８】
図4に示すように、プロセッサ20aで実行するRFフレームデータ処理BM1は、最初の処理対象のRFデータRF1について対数圧縮S1とパーシスタンス処理S2を終了したときに書込み要求を出す(ステップS3)。これにより、プロセッサ20aの内部バッファaの管理機能により、「書き込み指定メモリ」のアドレスが指定される。次いで、エンハンス処理S4を行い、その処理結果のRFデータRFD1を指定されたメモリ領域に格納する。エンハンス処理S4を終了すると、メモリ領域に格納したRFデータをシネメモリに格納する(S5)。そして、「書き込み解除要求」を出力する。これに応答して、プロセッサ20aの内部バッファaの管理機能は、今回書き込んだメモリ領域を書き込み指定メモリ領域の状態「2」を、「読み出し準備メモリ」の状態「0」に変える。そして、RFフレームデータ処理BM1は次の処理対象のRFデータの処理を実行し、その処理結果のRFデータRFD2を「読み出し準備メモリ」の状態「0」でない、「書き込み指定メモリ」の状態「2」にあるアドレスで指定されたメモリ領域に格納する。つまり、RFデータRFD1とRFデータRFD2を別々のメモリ領域に書き込む。同様にして、フレームレートに従ってフレームデータの処理を順次実行し、指定されるメモリ領域に書き込む。【００５９】
一方、プロセッサ20bの表示画像データ処理BM2は、BM1のフレームレートに対して充分に遅いビデオレートで起動しており、表示画像データ処理BM2がRFデータRFD1に基づく処理を開始する前に、RFデータRFD2の処理も完了している。表示画像データ処理BM2の処理開始タイミングにおいて、「読み出し要求」が発生すると(S11)、プロセッサ20aはプロセッサ20bの最新のRFデータRFD2が格納されている状態「1」のメモリ領域を指定して読み出しを許可する。これにより、表示画像データ処理BM2は、取得したRFD2について走査変換、ガンマ補正、データ転送処理を行い、Bモード像データをビデオメモリ22へ出力する。すなわち、表示画像データ処理BM2は、RF1に対する処理を行わず、RF2を処理することになる。また、「読み出し要求」によって指定されたメモリ領域は、「読み出し解除要求」を発行するまでプロセッサ20aの処理BM1よって上書きされることは発生しない。【００６０】
図4のように、BM1の動作サイクルであるフレームレートがBM2の動作サイクルであるビデオレートに対して速く、表示部に全ての処理データを表示できない場合、画像の上書きが行われることなく最新の取得データのみを表示することができ、時相遅れのない超音波画像を表示できる。なお、上記の説明では、各メモリ領域のアドレスによりメモリ領域を指定したが、これに限らず、各メモリ領域のハンドルやインスタンス名のリンクリストを作成して、代わりに使用することも可能である。【００６１】
図3に示すように、プロセッサ20aで実行するRFフレームデータ処理BM1は、最初の処理対象のRFデータRF1について対数圧縮S1とパーシスタンス処理S2を終了したときに書込み要求を出し(S3)、「書き込み指定メモリ領域」のアドレスが指定されたメモリ領域に、エンハンス処理S4の処理結果のRFデータRFD1を格納する。エンハンス処理S4を終了すると、メモリ領域に格納したRFデータをシネメモリに格納して(S5)、「書き込み解除要求」を出力する。【００６２】
プロセッサ20bの処理BM2は、プロセッサ20aの処理BM1の動作サイクルであるフレームレートに対して充分に速いビデオレートで起動している。したがって、プロセッサ20aの処理BM1がプロセッサ20bの処理BM2の処理を終了する前に、複数回、プロセッサ20aに対して「読み出し要求」を行うことになる。このとき、プロセッサ20aはRFデータRF1の処理を完了した際に発行された「書き込み解除要求」により、「最新更新バッファ」をRF1が格納されたメモリ領域を状態「0」としている。【００６３】
したがって、プロセッサ20aの処理BM1が、RF2の処理結果を格納するために発行した「書き込み要求」により、読み出し先のメモリ領域はRF1を格納したメモリ領域とは異なるメモリ領域を指している。これにより、プロセッサ20bの処理BM2が何度「読み出し要求」を行ったとしても、プロセッサ20aの処理BM1が処理中のメモリ領域の内容を読み出すことはない。つまり、BM1の動作サイクルであるフレームレートが、BM2の動作サイクルであるビデオレートに対して遅く、表示部が複数回同じデータを表示する必要がある場合、処理中の画像を表示することなく最後に処理の完了した最新の取得データのみを表示することができる。【００６４】
また、上で説明したように、RFフレームデータ処理BM1は、フレームレートで動作するが、超音波の走査範囲が狭ければ表示部24の性能や人の目の視認できる限界を超える速さで被検体よりRFフレームデータを収集する。また、超音波の走査範囲が広ければ限りなくフレームレートはゆっくりとなる。本実施例では、これをステップS5で、一旦シネメモリに保存するようにしているから、RFフレームデータの処理終了後に被検体より取得したRFフレームデータの全てを、再度ゆっくりと再生することが可能であり、視認できなかった細かい部位の病変まで詳細に観察可能である。【００６５】
図1に示した実施形態において、プロセッサ20a〜20hに割り当てられるデータ処理の内容は、「処理構成テキスト」としてバッファメモリ20mに格納することができるが、本発明はこれに限られず、メモリ20jに「処理構成テキスト」を格納するようにしてもよい。これらのデータ処理のリストには、例えば図2に示す処理の順序と処理内容が含まれ、2つのプロセッサ20a，20bを用い、BM1からBM2へデータを転送するプロセ
ッサ構成が含まれる。この情報はBモード、ドプラモードなど超音波診断装置の持つ診断モード毎に独立であり、設定部17を介して使用者が選択を行い、入力された超音波計測モードは制御部18及び制御プロセッサ20iにそれぞれ必要な情報が転送される。制御プロセッサ20iは、バッファメモリ20mから超音波計測モードに対応した処理内容とプロセッサ構成を読み出し、実際にプロセッサ20a〜20hに処理の割り当てを行うことで，Bモード、ドプラモードなど超音波診断装置の持つ超音波計測モード毎に異なる機能を実現する。【００６６】
図1の実施形態では、バッファメモリ20mを各プロセッサ20a〜20hと切り離して内部バス20kに接続する構成を採用したが、本発明はこれに限らず、図6に示すように、各プロセッサ20a〜20hの内部に一体的に設けてもよい。
【実施例２】
【００６７】
図7に、超音波計測モードのBモード像を画像化するデータ処理と、超音波計測モードのドプラモード(Dモード)処理を含む一連のデータ処理を、データ変換部20で並列して実行する実施例2のフローチャートを示す。本実施例を実行するためには、実施例1のプロセッサ20a，bに加えて、プロセッサ20ｃ，ｄを用いて4つのデータ処理BM1，BM2，DM1，DM2が並列に動作できる構成となっている。なお、本実施例は、前述したように、プロセッサ20a，b、ｃ，ｄに代えて、4つのソフトウェアスレッドを実装しても実現できる。【００６８】
本実施例において、Bモード像を計測する超音波計測モードと、ドプラ処理を行う超音波計測モードの切り替えは、ユーザが設定部17を介して行なう。データ変換部20は、制御部18から転送されたドプラモードコードを制御プロセッサ20iで受け取り、バッファメモリ20mから指定されたドプラモードの処理内容とプロセッサ構成を読み出し、実際にプロセッサ20a〜ｄに処理の割り当てを行う。ドプラモードが選択された場合にはプロセッサ20a〜ｄの4つを用い，それぞれにBM1、BM2、DM1、DM2の異なる処理内容の割り当てを行う。【００６９】
ここで、プロセッサ20bで実行するBM2に示すBモード像のビデオレート処理スレッドと、プロセッサ20ｄで実行するDM2に示すドプラモードのビデオレート処理スレッドは、ビデオメモリのリフレッシュレート(画像更新周期)に同期して同一タイミングで動作する。そして、DM2の出力画像とBM2の出力画像を合成処理S31で合成して、ビデオメモリ22に出力するになっている。ここで、DM1は、ドプラモード超音波同期処理スレッドであり、超音波ビーム単位の周期で処理を行うスレッドで動作周期がLpre(回／1データ単位)であり、DM2の動作周期がLpost(回／1データ単位)だとすれば、バッファメモリ20mの内部バッファa〜ｄのメモリ領域の数Mnum_dmは、Lpre／Lpost個用意する必要がある。これらの内部バッファa〜hのメモリ領域の数Mnum_dmは、処理内容と同じくメモリ20j中に処理構成テキストとして格納されている。【００７０】
図7において、Bモード像処理のBM1，BM2は、BM2の合成処理S31を除いて、図3と同一である。Dモード処理のDM1は、周知のデータ処理であり、サンプルゲート(SＧ)設定処理S41，リサンプル処理S42，ＦＦＴ処理S43，加算平均処理S44，対数圧縮処理S46，シネメモリ転送処理S47を含んで構成され、対数圧縮処理S46の前に書込み要求S45を設け、シネメモリ転送処理S47の処理終了後に、書込み解除要求S48を出力するようになっている。【００７１】
Dモード処理のDM2は、時系列変換処理S52と走査変換処理S54を含んで構成され、時系列変換処理S52の開始前に読み出し要求S51を出力して内部バッファのメモリ領域に格納されている対数圧縮処理S46の処理結果を読み出すようになっている。そして、時系列変換処理S52が終了したら、読み出し解除要求を出力して(S53)、そのメモリ領域を開放する。走査変換処理S54の処理結果は、Bモード処理BM2の合成処理S31においてBモード像との合成画像が生成されるようになっている。【００７２】
以上説明したように、実施例2によっても、各プロセッサに対応させて設定された複数の内部バッファを有するバッファメモリを設け、各内部バッファを複数のメモリ領域に区分し、一連のデータ処理を分散して実行する各プロセッサの処理結果を、一連のデータ処理の下流側のプロセッサの処理周期や処理タイミングにかかわらず、上流側のプロセッサに対応する複数のメモリ領域の1つに任意のタイミングで書き込むことが可能になる。また、下流側のプロセッサは、上流側のプロセッサの処理結果が書き込まれたメモリ領域から、上流側のプロセッサの処理周期や処理タイミングにかかわらず、任意のタイミングで読み出して自己の処理を実行することができる。これにより、一連の複数のデータ処理を別々のプロセッサに分散して処理するに際し、それらのプロセッサ間における処理周期の調和及び処理タイミングの調整を不要とすることができる。
【符号の説明】
【００７３】
10  超音波計測部、14  送受信切替部、16  ビーム形成部、17  設定部、18  制御部、19  ホストコンピュータ、20  データ変換部、20a〜20h  プロセッサ、20i  制御プロセッサ、20j  メモリ、20m  バッファメモリ。a〜h  内部バッファ
【図１】
0005514120.tif 000002
【図２】
0005514120.tif 000003
【図３】
0005514120.tif 000004
【図４】
0005514120.tif 000005
【図５】
0005514120.tif 000006
【図６】
0005514120.tif 000007
【図７】
0005514120.tif 000008