説明

超音波診断装置

【課題】超音波検査開始までの時間を短縮し、搭載されたメモリの容量による走査線数の制約の問題を解決した超音波診断装置を提供する。
【解決手段】走査に係る各構成要素を動作制御するハードウェア制御部を備えた超音波診断装置であって、前記走査を行う領域を1以上の走査線を含む複数のブロックに分割し、前記超音波エコーを送受信し、受信した前記超音波エコーを信号処理し画像を生成するために各構成要素を動作制御する制御データを、前記ブロックごとに算出する制御データ演算部を更に備え、前記ハードウェア制御部が、前記制御データ演算部により算出された制御データを基に、前記各構成要素を動作制御し1つの前記ブロックを走査する間に、前記制御データ演算部が前記1つのブロックとは異なる次の走査すべきブロックの制御データを算出する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、超音波の送受信により超音波画像を得る超音波診断装置に関し、特に超音波診断装置のハードウェアを主として構成する各構成要素を制御するための、走査条件に係る制御データの算出と、算出した制御データによりハードウェアを制御する技術に関する。
【背景技術】
【0002】
観測対象に応じてフレームレートや画質等の走査条件を変更可能な超音波診断装置は、走査条件の変更に応じて分解能や感度を維持するために、走査線の本数、送信フォーカス段数等のパラメータを変更する手段を有している。また、観測対象に応じて、超音波画像を取得するモード(例えば、Bモードやドップラーモード)を切り替えて動作可能な超音波診断装置も知られている。
【0003】
このような超音波診断装置は、操作者が走査条件として指定したパラメータやモードに従い、超音波画像を生成する各構成要素(例えば、超音波の送受信に係る回路や超音波エコーを信号処理する回路)の動作を制御するデータ(以降ではこのデータを「制御データ」と呼ぶ)を算出する。この制御データには、走査線ごとに遅延処理を施すためのデータや、超音波エコーを信号処理するためのデータが含まれる。つまり超音波診断装置は、算出した制御データを基に各構成要素の動作を制御することで、操作者から指定された走査条件に基づいた走査を可能としている。
【0004】
特許文献1には、走査条件に基づいて制御データを算出し、該制御データに基づいて各構成要素の動作を制御する超音波診断装置の例が開示されている。
【0005】
一方で、走査方向を変えながら複数の領域を走査し、それぞれの領域の走査を基に生成した超音波画像を合成することで、より広い領域を走査し超音波画像を取得するコンパウンドスキャンという技術が導入されてきている。また近年では、3次元画像を生成するためのボリュームスキャンも導入されている。このようなコンパウンドスキャンやボリュームスキャンの導入に伴い、必要とされる走査線の数が増加してきている。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】特開2007−275564号公報
【発明の概要】
【発明が解決しようとする課題】
【0007】
特許文献1に記載されたような従来の超音波診断装置では、操作者からの画像取得の要求に応じて、走査時に必要な全ての制御データを算出し、各構成要素、又は各構成要素の動作を制御する制御データをハードウェア制御部のメモリに格納する。このとき従来の超音波診断装置では、すべての制御データがメモリへ格納されるまで超音波検査が開始されない。つまり、このような超音波診断装置においては、走査に1000本の走査線を使用する場合は、1000本分の制御データを算出しメモリへの格納が完了してから超音波検査を開始することになる。
【0008】
このことは、超音波検査中にモードや走査線の本数等の走査条件を変更した場合も同様である。つまり、走査条件を変更した場合、変更後の走査条件を基にした制御データの算出、及びメモリへの該制御データの格納が完了するまで、超音波検査が中断させられることになる。
【0009】
この制御データの算出及びメモリへの該制御データの格納にかかる時間は、走査線数が増加するほど増加する。そのため、コンパウンドスキャンやボリュームスキャンのように必要とする走査線数が多い検査では、実際に超音波検査を開始するまでの時間がより長くなる傾向にある。この制御データの算出及び格納に伴う超音波検査開始までの時間は、走査条件にもよるが0.5秒〜数秒程度の時間がかかる。
【0010】
また、上記のような従来の超音波診断装置は、走査時に必要な制御データを全てメモリへ格納するため、メモリの容量により走査線の数が制限される。例えば、1本の走査線の制御データが5kBとする。超音波診断装置に搭載された、各構成要素の制御データを格納するメモリの容量が18MB(18432kB)とすると、この超音波診断装置で一度に使用できる走査線条件数の最大は3686本となる。
【0011】
このように従来の超音波診断装置では、搭載されたメモリの容量により走査線数が制約されることになり、走査線数を増やすにはより容量の大きいメモリを搭載する必要があった。
【0012】
この発明は上記の問題を解決するものであり、超音波診断装置の起動時や走査条件の変更時における超音波検査開始までの時間を短縮し、かつ、搭載されたメモリの容量による走査線数の制約という問題を解決した超音波診断装置の提供を目的とする。
【課題を解決するための手段】
【0013】
上記目的を達成するために、この発明の第1の形態は、超音波プローブを介して被検体に超音波を送信し、前記被検体から反射した超音波エコーを受信することで前記被検体の走査を行う送受信部と、前記超音波エコー信号を信号処理する信号処理部と、信号処理された前記超音波エコーのデータを基に超音波画像を生成する画像生成部と、これらの各構成要素を動作制御するハードウェア制御部と、前記超音波画像を表示する表示部とを備えた超音波診断装置であって、前記走査を行う領域を1以上の走査線を含む複数のブロックに分割し、前記超音波エコーを送受信し、受信した前記超音波エコーを信号処理し画像を生成するために前記各構成要素を動作制御する制御データを、前記ブロックごとに算出する制御データ演算部を更に備え、前記ハードウェア制御部が、前記制御データ算出部により算出された制御データを基に、前記各構成要素を動作制御し1つの前記ブロックを走査する間に、前記制御データ演算部が前記1つのブロックとは異なる次の走査すべき他のブロックの制御データを算出することを特徴とする超音波診断装置である。
【発明の効果】
【0014】
本発明に係る超音波診断装置は、走査領域を複数のブロックに分けて、該ブロックごとに、制御データの算出と該制御データを基にした走査を行う。そのため、超音波検査の開始時や走査条件の変更時に、全ての制御データの算出を完了する必要が無くなるため、超音波検査開始までの時間を短縮することが可能となる。
【0015】
また、本発明に係る超音波診断装置は、1つのブロックの走査を実行しながら、前記1つのブロックとは異なる次の走査すべきブロックの制御データの算出を行う。このとき、走査の完了したブロックの制御データは、次の走査の直前に再度算出し直せばよく、走査の完了と同時に破棄することが可能となる。そのため本発明に係る超音波診断装置は、少なくとも走査を行っているブロックの制御データと、次の走査すべきブロックの制御データとを保持できる構成であればよく、全ての制御データを常に保持しておく必要が無くなる。これにより、各構成要素に搭載されたメモリの容量に依存することなく、走査線の数を増加させることが可能となる。
【図面の簡単な説明】
【0016】
【図1】本発明に係る超音波診断装置の機能ブロック図である。
【図2】走査領域の分割方法について説明するための図である。
【図3】本発明に係る超音波診断装置の処理を説明するためのフローチャートである。
【図4】本発明に係る超音波診断装置において各構成要素の処理タイミングを説明するための図である。
【発明を実施するための形態】
【0017】
(構成)
まず、本発明に係る超音波診断装置の構成について図1を参照しながら説明する。
【0018】
操作部12は、操作者が、超音波診断装置を動作させるための条件を指定するためのインタフェースである。この条件とは、例えば、フレームレートや送信フォーカス段数等の走査条件、又は、Bモードやドップラーモード等の走査モードが該当する。これらを総じて、以降は「走査条件」と呼ぶ。
【0019】
超音波プローブ21としては、複数の超音波振動子が所定方向(走査方向)に1列に配置された1次元アレイプローブ、又は、複数の超音波振動子が2次元的に配置された2次元アレイプローブが用いられる。また、所定方向(走査方向)に配列された超音波振動子を走査方向に直交する方向(スライス方向)に機械的に揺動可能な1次元アレイプローブを用いてもよい。超音波プローブ21は、送受信部22からの信号(以降では、この信号を「送信駆動パルス」と呼ぶ)により所定の走査条件に従って動作する。
【0020】
送受信部22は、超音波プローブ21に送信駆動パルスを出力するためのクロック発生回路、送信遅延回路、及びパルサ回路と、超音波プローブ21からの信号(以降では、この信号を「受信エコー信号」と呼ぶ)を受信するプリアンプ回路、A/D変換回路、及び受信遅延・加算回路を含んで構成されている。
【0021】
送受信部22は、走査条件に基づいて各回路を動作させるため制御データを、ハードウェア制御部20から受信する(ハードウェア制御部20については後述する)。送受信部22は、受信した制御データに基づいて、内蔵される各回路の動作を制御する。
【0022】
送受信部22は、超音波プローブ21の各超音波振動子から出力されるエコー信号を受信すると、受信チャンネルごとにプリアンプ回路で増幅し、増幅されたエコー信号をA/D変換したうえで受信遅延・加算回路で受信ビーム方向を決定するのに必要な遅延時間処理を行い整相加算して受信ビームを生成する(この加算により受信指向性に応じた方向からの反射成分が強調される)。なお、この送受信部22によって整相加算処理された信号を「RFデータ」と称する場合がある。送受信部22は、生成したRFデータを後述する信号処理部23に出力する。
【0023】
信号処理部23は、Bモード処理部やCFM(Color Flow Mapping)処理部などを備えて構成されている(Bモード処理部やCFM処理部は図示しない)。Bモード処理部は、エコーの振幅情報の映像化を行う。具体的には、Bモード処理部は送受信部22から出力された受信信号(RFデータ)に対してバンドパスフィルタ処理を行い、その後、出力信号の包絡線を検波し、検波されたデータに対して対数変換による圧縮処理を施す。また、CFM処理部は、動いている血流の映像化を行う血流情報を作成する。血流情報には、速度、分散、パワー等の情報が含まれる。以降では、これらのRFデータを信号処理したデータを「信号処理後のデータ」と呼ぶ場合がある。信号処理部23は、信号処理後のデータを後述する画像生成部24へ出力する。
【0024】
信号処理部23は、上記処理を実行するための、走査条件に基づいた制御データをハードウェア制御部20から受信する。信号処理部23は、送受信部22から受信した受信信号に対応した制御データをハードウェア制御部20から受信する。信号処理部23は、受信した制御データを基に、モードを特定し、特定したモードに応じて上記処理を実行する。
【0025】
画像生成部24は、走査線信号列で表される信号処理後のデータを、空間座標に基づいた座標系のデータに変換する(デジタルスキャンコンバージョン)。例えば、画像生成部24は、信号処理部23のBモード処理部から出力された信号処理後のデータに対してスキャンコンバージョン処理を施すことで、被検体の組織形状を表すBモード画像データを生成する。
【0026】
また、ボリュームスキャンが行なわれている場合、画像生成部24は、信号処理部23から信号処理後のデータとしてボリュームデータを受け、そのボリュームデータにボリュームレンダリングを行うことで3次元画像データを生成するようにしてもよい。さらに、画像生成部24は、ボリュームデータにMPR処理(Multi Plannar Reconstruction)を施すことにより、MPR画像データ(任意断面の画像データ)を生成するようにしてもよい。画像生成部24により生成された、Bモード画像データや3次元画像データなどの超音波画像データは表示部25へ出力される。
【0027】
画像生成部24は、上記処理を実行するための、走査条件に基づいた制御データをハードウェア制御部20から受信する。つまり信号処理部23は、受信した制御データを基に、モードを特定し、特定したモードに応じて上記処理を実行する。
【0028】
表示部25は、画像生成部24が出力した超音波画像のデータを表示するための表示手段である。なお、表示部25の前段に表示制御部(図示しない)を設け、所定のフォーマットに従い超音波画像を配置し表示させるようにしてもよい。
【0029】
次に、本発明に係る超音波診断装置の、制御部10及びハードウェア制御部20の構成について説明する。制御部10は、操作部12から操作者が指定した走査条件に基づき送受信部22、信号処理部23、及び画像生成部24(以降は、これらを総じて「各構成要素」と呼ぶ)の動作を制御する制御データを算出する機能ブロックである。また、ハードウェア制御部20は、制御部10が算出した制御データに基づき、各構成要素の回路やソフトウェアの動作を制御する機能ブロックである。制御部10とハードウェア制御部20との間における制御データの送受信は、システムメモリ11を介して行われる。以下に、制御部10、ハードウェア制御部20、及びシステムメモリ11の詳細な構成と各構成の処理内容について説明する。
【0030】
システムメモリ11は、制御データを記憶する記憶領域である。システムメモリ11は、第1の記憶領域111A及び第2の記憶領域111Bを有する。第1の記憶領域111A及び第2の記憶領域111Bにはそれぞれ異なる制御データが記憶される。なお、第1の記憶領域111A及び第2の記憶領域111Bはそれぞれ異なるメモリで構成するようにしてもよいし、1つのメモリの記憶領域をそれぞれ異なる2つの領域に分割して、第1の記憶領域111A及び第2の記憶領域111Bとしてもよい。また、3つ以上の領域を設け、該3つ以上の領域のいずれか2つの領域を第1の記憶領域111A及び第2の記憶領域111Bとしてもよい。なお以降では、第1の記憶領域111A及び第2の記憶領域111Bのいずれかを特に指定しない場合、単に「記憶領域」と呼ぶ場合がある。
【0031】
制御部10は、制御データ演算部101と、制御データ書込み部102とで構成されている。
【0032】
制御データ演算部101は、操作部12から操作者が指定した走査条件を受けて、各構成要素がそれぞれの各回路を動作させるための制御データを生成する。制御データには、走査時に走査線ごとに算出する制御データと、起動後や走査条件の変更後の走査を開始する前に、各構成要素に動作条件(例えば、フレームレートやフォーカス段数等に基づき各回路を動作させる処理パラメータ)を設定する制御データとが含まれる。以降はこれらの制御データを区別する場合、走査を開始する前に各構成要素に動作条件を設定するデータを「初期設定データ」と呼び、走査線ごとに算出する制御データを「走査制御データ」と呼ぶ。初期設定データと走査制御データとを特に区別しない場合は、単に「制御データ」と呼ぶものとする。
【0033】
制御データ演算部101は、超音波診断装置の起動後、または操作部12からの操作者による操作により走査条件が変更された後、まず指定された走査条件に基づいて、各構成要素に動作条件を設定するための初期設定データを算出する。
【0034】
次に、制御データ演算部101は、走査領域を複数のブロックに分割し、ブロックごとに走査制御データを遂次算出する。図2には、走査領域の分割方法の例が示されている。図2(a)は、2D画像(二次元画像)を生成する場合における走査領域の分割方法の例である。図2(b)は、3D画像(三次元画像)を生成する場合における走査領域の分割方法の例である。このとき、制御データ演算部101は、あらかじめ経験的に求められ設定されたブロックの数に基づき、走査領域を複数のブロックに分割するように構成するとよい。また、制御データ演算部101が、超音波診断装置の性能に基づき、ブロックの数を算出し、走査領域を複数のブロックに分割するようにしてもよい。この場合、制御データ演算部101は、1つのブロックの走査中に、少なくとも1つのブロックの走査制御データが算出できるように、ブロック数を算出するとよい。
【0035】
制御データ演算部101に算出された制御データ、つまり初期設定データ及び走査制御データは、制御部10内のバッファ(図示しない)に一時的に蓄積される。制御データ演算部101は、バッファの容量分の制御データが蓄積され、新たに算出した制御データをバッファに蓄積できない場合、バッファ上のデータが読み出され、新たにバッファに書込みが可能となるまで、一時的に制御データの算出に係る処理を停止する。バッファ上に書込まれた制御データは、制御データ書込み部102により読み出され、システムメモリ11に書込まれる。
【0036】
制御データ書込み部102は、まず、制御データ演算部101により算出されバッファに蓄積された初期設定データを読み出す。制御データ書込み部102は、読み出した初期設定データを、ハードウェア制御部20へ転送する(ハードウェア制御部20については後述する)。
【0037】
次に制御データ書込み部102は、制御データ演算部101により算出されバッファに蓄積された走査制御データを遂次読み出す。制御データ書込み部102は、読み出した走査制御データを、ブロック単位で、システムメモリ11の第1の記憶領域111A及び第2の記憶領域111Bのうち書込み可能ないずれか一方に書込む。つまり制御データ書込み部102は、走査中または走査未実施のブロックの走査制御データが書込まれている記憶領域には、新たな制御データの書込みを行わない。また、制御データ書込み部102によりシステムメモリ11に走査制御データが書込まれたとき、走査が開始されていない場合、制御部10は、シーケンス制御回路202に走査の開始を指示する。
【0038】
制御データ書込み部102は、第1の記憶領域111A及び第2の記憶領域111Bの双方に既に制御データが書込まれている場合、第1の記憶領域111A及び第2の記憶領域111Bのいずれかが書込み可能となるまで、制御データの書込みを一次停止する。このとき、各構成要素への走査中のブロックに関する全ての走査制御データの転送が完了すると、IRQ回路203から、動作条件の設定または走査の完了が、制御データ書込み部102に通知される(IRQ回路203については後述する)。
【0039】
制御データ書込み部102は、IRQ回路203からの通知を受けて、各構成要素への転送が完了した走査制御データを破棄する。例えば、第1の記憶領域111Aに記憶された走査制御データの各構成要素への転送が完了した場合、制御データ書込み部102は、第1の記憶領域111Aに記憶された走査制御データを破棄することになる。
【0040】
制御データ書込み部102は、走査が完了したブロックの走査制御データを破棄すると、破棄したデータが書込まれていた記憶領域に、バッファに蓄積された次の制御データを新たに書込む。新たに書込まれる制御データの例としては、例えば、システムメモリ11に記憶させていない走査制御データのうち、次に走査すべきブロックの制御データが該当する。
【0041】
ハードウェア制御部20は、制御データ演算部101が算出した制御データをシステムメモリ11から読み出し、読み出した制御データを各構成要素に転送することで、各構成要素の動作を制御する。ハードウェア制御部20は、DMA回路201と、シーケンス制御回路202と、IRQ回路203とで構成される。
【0042】
ハードウェア制御部20は、制御部10から転送された初期設定データを受信すると、アドレスデコーダ(図示しない)により該初期設定データを、各構成要素及びシーケンス制御回路202のそれぞれに転送する(シーケンス処理部202については後述する)。このときハードウェア制御部20のアドレスデコーダは、該初期設定データのうちシーケンス制御回路202の動作条件に関するデータをシーケンス制御回路202に転送する。またハードウェア制御部20のアドレスデコーダは、該初期設定データのうち各構成要素の動作条件に関するデータを、対応する各構成要素に転送する。これにより、各構成要素及びシーケンス制御回路202が走査条件に基づいて動作することが可能となる。
【0043】
DMA回路201は、Direct Memory Access回路として一般的に知られている回路である。DMA回路201は、シーケンス制御回路202からの指示を受けて、システムメモリ11の第1の記憶領域111Aまたは第2の記憶領域111Bに記憶された制御データを遂次読み出す。また、DMA回路201は、シーケンス制御回路202の指示に基づき、読み出した制御データを各構成要素に転送する(シーケンス制御回路202については後述する)。
【0044】
シーケンス制御回路202は、DMA回路201にシステムメモリから制御データを読み出させ、読み出した制御データを各構成要素に転送させることで、走査条件に基づいて各構成要素の動作を制御する。
【0045】
シーケンス制御回路202は、制御データ書込み部102が、制御データを書き込んだ順番と同じ順に、DMA回路201に第1の記憶領域111A及び第2の記憶領域111Bを参照させ、書込まれている制御データを読み出させる。
【0046】
例えば、制御データ書込み部102が、まず第1の記憶領域111AにブロックBa1の走査制御データを書込み、次に第2の記憶領域111BにブロックBa2の走査制御データを書込んだとする。このときシーケンス制御回路202は、DMA回路201に、まず第1の記憶領域111Aを参照しブロックBa1の走査制御データを読み出させる。読み出されたブロックBa1の走査制御データに関する処理が完了すると、次にシーケンス制御回路202は、DMA回路201に、第2の記憶領域111Bに記憶されたブロックBa2の走査制御データを読み出させることになる。
【0047】
シーケンス制御回路202には、まず制御部10により初期設定データが転送される。このときシーケンス制御回路202は、ハードウェア制御部20のアドレスデコーダによって、初期設定データのうち、自身の動作条件に関するデータを受信する。これによりシーケンス制御回路202が走査条件に基づいて動作を行うことが可能となる。
【0048】
シーケンス制御回路202は、制御部10からの走査開始の指示を受けて、走査を開始する。シーケンス制御回路202は、走査開始の指示を受けると、DMA回路201に、システムメモリ11の第1の記憶領域111A及び第2の記憶領域111Bのいずれか一方に記憶された、走査線ごとの走査制御データを遂次読み出させる。例えば、このときシーケンス制御回路202は、DMA回路201に、第1の記憶領域111Aに記憶されたブロックBa1の走査制御データを読み出させる。
【0049】
シーケンス制御回路202は、DMA回路201に、第1の記憶領域111Aから読み出させたブロックBa1の走査制御データを各構成要素に遂次転送させる。これにより、各構成要素が該走査制御データに基づき動作し、各走査線に対応する超音波エコーに適切な遅延が施され、超音波画像が形成される。なお、シーケンス制御回路202は、各構成要素が転送される制御データをバッファに蓄積できない場合、一時的に制御データの読み出し及び転送を停止するようにしてもよい。この場合、各構成要素がバッファに蓄積された制御データに基づく処理を完了し、新たに制御データをバッファに蓄積可能となった後に、シーケンス制御回路202は、制御データの読み出し及び転送を再開する。
【0050】
DMA回路201が第1の記憶領域111Aに記憶された制御データの読み出し及び各構成要素への該制御データの転送を完了すると、シーケンス制御回路202は、DMA回路201に制御データを読み出す記憶領域の切替えを指示する。この指示を受け、DMA回路201は、以降は第2の記憶領域111Bから制御データを読み出すことになる。制御データを読み出す記憶領域の切替えが完了したら、シーケンス制御回路202は、DMA回路201に、第2の記憶領域111Bに記憶された制御データを読み出させ、読み出させた制御データを各構成要素に転送させる。このとき、第2の記憶領域111BにブロックBa2の走査制御データが記憶されていた場合、ブロックBa2の走査が開始されることになる。
【0051】
また、シーケンス制御回路202は、DMA回路201への制御データを読み出す記憶領域の切替えの指示とあわせて、IRQ回路203を介し制御部10に、制御データの読み出し及び各構成要素への転送が完了したことを通知する。例えば、第1の記憶領域111Aに記憶されていた走査制御データの読み出し及び転送が完了したとする。この場合、シーケンス制御回路202は、IRQ回路203を介し制御部10に、第1の記憶領域111Aに記憶された制御データの読み出し及び各構成要素への転送が完了したことを通知することになる。
【0052】
IRQ回路203は、シーケンス制御回路202の指示に基づき、制御部10に所定の記憶領域に記憶された制御データの読み出し及び各構成要素への転送が完了したことを通知する。IRQ回路203は、制御部10の処理に割込みをかける回路である。
【0053】
例えば、第1の記憶領域111A及び第2の記憶領域111Bに走査が完了していないブロックの制御データが書込まれているとする。このとき、制御データ書込み部102は、システムメモリ11への新たな制御データの書込みを停止している。各構成要素による、第1の記憶領域111Aに記憶された制御データの読み出し及び各構成要素への転送が完了すると、それに伴い、シーケンス制御回路202からの指示に基づき、IRQ回路203は制御部10の処理に割込みをかける。これにより制御部10は、制御データ書込み部102に、走査が完了した第1の記憶領域111A上の制御データを破棄し、新たな制御データを書込むことが可能となる。
【0054】
(処理)
次に本発明に係る超音波診断装置の処理について、図3を参照しながら説明する。図3は、本発明に係る超音波診断装置の処理を説明するためのフローチャートである。本処理を説明するにあたり、N本の走査線で構成される走査領域をM個のブロックに分けて走査するものとして説明する。また以降の説明では、制御データ演算部101が、後述するステップS01〜S09において、走査制御データを算出するブロックの番号をn(1≦n≦M)で示す。またシーケンス制御回路202が、後述するステップS11〜S16において、走査制御データを転送し各構成要素に走査させるブロックの番号をm(1≦m≦M)で示す。
【0055】
(ステップS01)
まず制御データ演算部101が、操作部12から操作者が指定した走査条件を受けて、各構成要素(送受信部22、信号処理部23、及び画像生成部24)とハードウェア制御部20に動作条件を設定するための初期設定データを算出する。算出した初期設定データは、制御データ書込み部102が、ハードウェア制御部20に転送する。また、制御データ演算部101は、走査制御データを最初に算出するブロックを特定する。なお以降の説明では、この時点で、制御データ演算部101が制御データを算出するブロックの番号nが、n=1で初期化されるものとして説明する。
【0056】
(ステップS02)
制御データ演算部101は、初期設定データの算出が完了すると、最初に走査するブロックの走査制御データを算出する。この場合、例えばブロック1(n=1)の走査制御データを算出することになる。
【0057】
(ステップS03)
次に制御データ書込み部102が、算出されたブロック1の走査制御データを、システムメモリ11の第1の記憶領域111Aまたは第2の記憶領域111Bのいずれかに書込む。ここでは、制御データ書込み部102が、算出した走査制御データを第2の記憶領域111Bに書込むものとして説明する。
【0058】
(ステップS11)
ハードウェア制御部20が、制御データ書込み部102から初期設定データを受信すると、まずハードウェア制御部20のアドレスデコーダが、該初期設定データのうちシーケンス制御回路202の動作条件に関するデータをシーケンス制御回路202に転送する。次にハードウェア制御部20のアドレスデコーダは、該初期設定データのうち各構成要素の動作条件に関するデータを、対応する各構成要素に転送する。初期設定データが各構成要素に転送されると、ハードウェア制御部20は一時的に処理を停止する。なお以降の説明では、この時点で、シーケンス制御回路202が走査制御データを転送し各構成要素に走査させるブロックの番号mが、m=1で初期化されるものとして説明する。
【0059】
(ステップS04)
制御データ書込み部102が、ブロック1の走査制御データを第2の記憶領域111Bに書込むと、制御部10は、シーケンス制御回路202に走査の開始を指示する。シーケンス制御回路202は、制御部10からの指示を受けて、走査に係る処理を開始する。
【0060】
(ステップS12)
シーケンス制御回路202は、DMA回路201に、システムメモリ11に記憶された走査制御データを読み出させる。走査開始直後の場合、シーケンス制御回路202は、第2の記憶領域111Bに記憶されているブロック1(m=1)の走査制御データを、DMA回路201に読み出させることになる。
【0061】
(ステップS13)
シーケンス制御回路202は、DMA回路201に、読み出させた走査制御データを各構成要素に転送させる。各構成要素は転送された走査制御データに基づき動作する。このとき、例えば、DMA回路201がブロック1の走査制御データを各構成要素に転送したとすると、この走査制御データに基づき各構成要素が動作するため、ブロック1が走査され、ブロック1の走査線を得られることになる。
【0062】
(ステップS14)
シーケンス制御回路202は、各構成要素へのブロック1の走査制御データの転送が完了すると、IRQ回路203を介し制御部10に、第2の記憶領域111Bに記憶されたブロック1の走査制御データの読み出し及び転送の完了を通知する。制御部10は、IRQ回路203の割込みを受けて、ブロック1の走査制御データの読み出し及び転送が完了したことを認識する。
【0063】
(ステップS05)
シーケンス制御回路202による走査制御と並行して、制御データ演算部101は、次に走査すべきブロックの走査制御データを算出する。まず制御データ演算部101は、走査制御データのシステムメモリ11への書込みが完了すると、次に走査するブロックを特定する。直前に書込んだ走査制御データがブロック1(n=1)のデータの場合、次に走査するブロックはブロック2(n=1+1=2)となる。また、直前に書込んだ走査制御データが最後のブロックM(n=M)のデータの場合、次に走査すべきブロックとして最初に走査したブロック、つまりブロック1(n=1)を特定する。
【0064】
(ステップS06)
制御データ演算部101は、ブロックを特定すると、特定したブロックの走査制御データを新たに算出する。ここでは、この時点でブロック2(n=2)の走査制御データが算出されたものとして説明する。
【0065】
(ステップS07)
制御データ演算部101が、新たに走査制御データを算出すると、制御データ書込み部102は、まず制御データを書込む記憶領域を切替える。例えば、ブロック1の制御データを第2の記憶領域111Bに書込んだ後、新たに算出されたブロック2の制御データを書込むものとする。このとき、制御データ書込み部102は、新たに算出された制御データを書込む記憶領域を、第2の記憶領域111Bから第1の記憶領域111Aに切替える。
【0066】
(ステップS08)
次に制御データ書込み部102は、制御データ演算部101が算出したブロック2の走査制御データを、切替え後の記憶領域、つまり第1の記憶領域111Aに書込む。このとき、制御データ書込み部102は、新たに制御データを書込もうとしている記憶領域に、走査中もしくはこれから走査するブロックの制御データが記憶されている場合、該記憶領域への走査制御データの書込みを一時的に停止する。この場合、制御データ書込み部102は、IRQ回路からの割込みにより該ブロックの走査完了の通知を受けて、該記憶領域に記憶されている制御データを破棄し、新たに走査制御データを書込む。なお、新たな走査制御データの算出以前に、該ブロックの走査完了の通知を受けている場合は、制御データ書込み部102は、処理の停止を行わず、直ちに制御データを書込む。
【0067】
(ステップS15)
シーケンス制御回路202は、ブロックmの走査が完了すると、次に走査するブロックを特定する。このときシーケンス制御回路202は、直前に走査したブロックの走査制御データの次に、制御データ書込み部102が、システムメモリ11に書込んだ走査制御データに対応するブロック(m=n)を特定することになる。すなわち、直前に走査したブロック1(m=1)の場合、次に走査するブロックはブロック2となる。また、直前に走査したブロックがブロックM(m=M)の場合、次に走査すべきブロックとして最初に走査したブロック、つまりブロック1を特定することになる。
【0068】
(ステップS16)
また、シーケンス制御回路202は、DMA回路201に制御データを読み出させる記憶領域を切替える。例えば、第2の記憶領域111Bに記憶された走査制御データを読み出し、ブロック1を走査した後、新たにブロック2の走査制御データを読み出すものとする。このとき、シーケンス制御回路202は、ブロック2の走査制御データを読み出す記憶領域を、第2の記憶領域111Bから第1の記憶領域111Aに切替える。これにより、シーケンス制御回路202は、DMA回路201に、制御データ書込み部102によりあらかじめ第1の記憶領域111Aに書込まれたブロック2の走査制御データを読み出させることが可能となる。
【0069】
(ステップS09)
以降、超音波検査を継続する限り(ステップS09、Y)、ブロック1〜ブロックMの走査制御データを遂次算出し、システムメモリ11の記憶領域を切替えながら、システムメモリ11に算出した走査制御データを書込む。シーケンス制御回路202は、システムメモリ11に記憶された走査制御データを遂次読み出し、該走査制御データに対応するブロックの走査を行う。なお、超音波検査中に操作者により検査の終了が指示された場合(ステップS09、N)、制御部10は、ハードウェア制御部20を介し各構成要素の動作を停止するとともに、上述した超音波検査に係る処理、すなわち、走査制御データの算出及び書込みを停止する。
【0070】
(処理タイミング)
次に本発明に係る超音波診断装置における各構成要素の処理タイミングについて、図4を参照しながら具体的に例をあげて説明する。図4は、本発明に係る超音波診断装置において各構成要素の処理タイミングを説明するための図であり、図2(a)に示すように、N本の走査線で構成される走査領域を4つのブロック(ブロックBa1〜Ba4)に分割して走査を行う場合について示している。
【0071】
(処理C0)
まず制御データ演算部101は、初期設定データを算出する。制御データ演算部101が算出した初期設定データは、制御データ書込み部102によりハードウェア制御部20に転送される。
【0072】
(処理H0)
ハードウェア制御部20が、制御データ書込み部102から初期設定データを受信すると、まずハードウェア制御部20のアドレスデコーダが、該初期設定データのうちシーケンス制御回路202の動作条件に関するデータをシーケンス制御回路202に転送する。次にハードウェア制御部20のアドレスデコーダは、該初期設定データのうち各構成要素の動作条件に関するデータを、対応する各構成要素に転送する。ハードウェア制御部20は、各構成要素に初期設定データを転送すると、一時的に動作を停止し、制御部10からの指示を待つ(このハードウェア制御部20が一時的に停止している期間がIdle1に相当する)。
【0073】
(処理C1)
次に制御データ演算部101は、最初に走査するブロックBa1について各構成要素が動作するために必要な走査制御データを算出する。
【0074】
(処理C2)
制御データ演算部101が算出したブロックBa1の走査制御データは、制御データ書込み部102が第2の記憶領域111Bに書込む。
【0075】
(処理C3/H1)
制御データ書込み部102が、ブロックBa1の走査制御データを第2の記憶領域111Bに書込むと、制御部10は、シーケンス制御回路202に走査の開始を指示する。
【0076】
(処理H2、処理H2a)
シーケンス制御回路202は、制御部10からの指示を受けて、走査に係る処理を開始する。シーケンス制御回路202は、DMA回路201に、第2の記憶領域111Bに記憶されたブロックBa1の走査制御データを読み出させ、各構成要素に転送させる(処理H2)。各構成要素が、この走査制御データを受けて動作することで、ブロックBa1が走査され、ブロックBa1の走査線が得られる(処理H2a)。
【0077】
(処理C4、処理C5)
ブロックBa1が走査されている間に、制御データ演算部101は、次に走査するブロックBa2について各構成要素が動作するために必要な走査制御データを算出する(処理C4)。次に、制御データ書込み部102が、算出されたブロックBa2の走査制御データを第1の記憶領域111Aに書込む(処理C5)。この時点で、第1の記憶領域111AにはブロックBa2の走査制御データが記憶され、第2の記憶領域111Bには走査中のブロックBa1の走査制御データが記憶されていることになる。
【0078】
(処理C6、処理H3)
制御データ演算部101は、次に走査するブロックBa3について各構成要素が動作するために必要な走査制御データを算出する(処理C6)。このとき、制御データ演算部101は、ブロックBa3に対応する走査制御データの算出を、シーケンス制御回路202の走査に係る処理(処理H2)の完了を待たず直ちに開始する。
【0079】
制御データ演算部101が、ブロックBa3の走査制御データの算出している間に、H2に係る処理、つまり、ブロックBa1の全ての走査制御データの読み出しと、各構成要素への転送が完了したものとする。このとき、シーケンス制御回路202は、IRQ回路203を介し制御部10に、各構成要素へのブロックBa1の走査制御データの転送が完了したことを通知する。以降は、制御部10(制御データ演算部101及び制御データ書込み部102)とハードウェア制御部20(シーケンス制御部202、DMA回路201、及びIRQ回路203)とは独立して動作し、双方の処理タイミングの調整はIRQ回路203からの制御部10への通知により行われる。
【0080】
(処理H4、処理H4a)
各構成要素へのブロックBa1の走査制御データの転送が完了すると、次にシーケンス制御回路202は、DMA回路201に、第1の記憶領域111Aに記憶されたブロックBa2の走査制御データを読み出させ、各構成要素に転送させる(処理H4)。各構成要素は、ブロックBa1の走査に係る処理が完了すると、DMA回路201から新たに転送されたブロックBa2の走査制御データに基づき動作を開始する(処理H4a)。これにより、各構成要素が、ブロックBa2の走査を行い、ブロックBa2の走査線を得る。
【0081】
(処理C7)
次に、制御データ書込み部102が、算出されたブロックBa3の走査制御データを第2の記憶領域111Bに書込む。このとき、制御データ書込み部102は、IRQ回路203の割込みにより、各構成要素へのブロックBa1の走査制御データの転送が完了していることを認識している。そのため、制御データ書込み部102は、第2の記憶領域111Bに記憶されていたブロックBa1の走査制御データを破棄し、新たにブロックBa3の走査制御データを書込む。この時点で、第1の記憶領域111Aには走査中のブロックBa2の走査制御データが記憶され、第2の記憶領域111BにはブロックBa3の走査制御データが記憶されていることになる。
【0082】
(処理C8、処理H5)
制御データ演算部101は、次に走査するブロックBa4について各構成要素が動作するために必要な走査制御データを算出する(処理C8)。制御データ演算部101が、ブロックBa4の走査制御データの算出している間に、H4に係る処理、つまり、ブロックBa2の全ての走査制御データの読み出しと、各構成要素への転送が完了したものとする。このとき、シーケンス制御回路202は、IRQ回路203を介し制御部10に、各構成要素へのブロックBa2の走査制御データの転送が完了したことを通知する(処理H5)。
【0083】
(処理H6、処理H6a)
各構成要素へのブロックBa2の走査制御データの転送が完了すると、次にシーケンス制御回路202は、DMA回路201に、第2の記憶領域111Bに記憶されたブロックBa3の走査制御データを読み出させ、各構成要素に転送させる(処理H6)。各構成要素は、ブロックBa2の走査に係る処理が完了すると、DMA回路201から新たに転送されたブロックBa3の走査制御データに基づき動作を開始する(処理H6a)。これにより、各構成要素が、ブロックBa3の走査を行い、ブロックBa3の走査線を得る。
【0084】
(処理C9)
次に、制御データ書込み部102が、算出されたブロックBa4の走査制御データを第1の記憶領域111Aに書込む。このとき、制御データ書込み部102は、IRQ回路203の割込みにより、各構成要素へのブロックBa2の走査制御データの転送が完了していることを認識している。そのため、制御データ書込み部102は、第1の記憶領域111Aに記憶されていたブロックBa2の走査制御データを破棄し、新たにブロックBa4の走査制御データを書込む。この時点で、第1の記憶領域111AにはブロックBa4の走査制御データが記憶され、第2の記憶領域111Bには走査中のブロックBa3の走査制御データが記憶されていることになる。
【0085】
(処理C10)
制御データ演算部101は、次に走査するブロックBa1について各構成要素が動作するために必要な走査制御データを算出する。
【0086】
(処理C11、処理H7)
次に、制御データ書込み部102は、算出されたブロックBa1の走査制御データを第2の記憶領域111Bに書込めるか確認する。このときH6に係る処理、つまり、ブロックBa3の全ての走査制御データの読み出しと、各構成要素への転送が処理が完了していない。そのため、制御データ書込み部102は、ブロックBa1の走査制御データの書込みに係る処理を一時停止する(処理C11)。このとき制御データ書込み部102が一時的に停止している期間が図4のIdle2に相当する。
【0087】
その後、制御データ書込み部102は、H6に係る処理の完了に伴うIRQ回路203の割込み(処理H7)を受けて、第1の記憶領域111Aに記憶されたブロックBa3の走査制御データを破棄し、ブロックBa1の走査制御データを第2の記憶領域111Bに書込む(処理C11)。この時点で、第1の記憶領域111AにはブロックBa4の走査制御データが記憶され、第2の記憶領域111BにはブロックBa1の走査制御データが記憶されていることになる。
【0088】
(処理H8、処理H8a)
各構成要素へのブロックBa3の走査制御データの転送が完了すると、次にシーケンス制御回路202は、DMA回路201に、第2の記憶領域111Bに記憶されたブロックBa4の走査制御データを読み出させ、各構成要素に転送させる(処理H8)。各構成要素は、ブロックBa3の走査に係る処理が完了すると、DMA回路201から新たに転送されたブロックBa4の走査制御データに基づき動作を開始する(処理H8a)。これにより、各構成要素が、ブロックBa4の走査を行い、ブロックBa4の走査線を得る。
【0089】
(処理C12)
制御データ演算部101は、次に走査するブロックBa2について各構成要素が動作するために必要な走査制御データを算出する。
【0090】
(処理C13、処理H9)
次に、制御データ書込み部102は、算出されたブロックBa2の走査制御データを第1の記憶領域111Aに書込めるか確認する。このときH8に係る処理、つまり、ブロックBa4の全ての走査制御データの読み出しと、各構成要素への転送が処理が完了していない。そのため、制御データ書込み部102は、ブロックBa2の走査制御データの書込みに係る処理を一時停止する(処理C13)。このとき制御データ書込み部102が一時的に停止している期間が図4のIdle3に相当する。
【0091】
その後、制御データ書込み部102は、H8に係る処理の完了に伴うIRQ回路203の割込み(処理H9)を受けて、第1の記憶領域111Aに記憶されたブロックBa4の走査制御データを破棄し、ブロックBa2の走査制御データを第1の記憶領域111Aに書込む(処理C13)。この時点で、第1の記憶領域111AにはブロックBa2の走査制御データが記憶され、第2の記憶領域111BにはブロックBa1の走査制御データが記憶されていることになる。
【0092】
以上、本発明に係る超音波診断装置は、走査領域を複数のブロックに分けて、該ブロックごとに、制御データの算出と該制御データを基にした走査を行う。そのため、超音波検査の開始時や走査条件の変更時に、全ての制御データの算出を完了する必要が無くなるため、超音波検査開始までの時間を短縮することが可能となる。
【0093】
また、本発明に係る超音波診断装置は、1つのブロックの走査を実行しながら、前記1つのブロックとは異なる次の走査すべきブロックの制御データの算出を行う。このとき、走査の完了したブロックの制御データは、次の走査の直前に再度算出し直せばよく、走査の完了と同時に破棄することが可能となる。そのため本発明に係る超音波診断装置は、少なくとも走査を行っているブロックの制御データと、次の走査すべきブロックの制御データとを保持できる構成であればよく、全ての制御データを常に保持しておく必要が無くなる。これにより、各構成要素に搭載されたメモリの容量に依存することなく、走査線の数を増加させることが可能となる。
【0094】
なお、上記の説明ではシステムメモリ11を2つの記憶領域に分割して使用する例について説明したが、必ずしもこの構成に限定するものではない。1つのブロックを走査する間に、少なくとも1つ以上のブロックの走査制御データの算出と、算出した走査制御データのシステムメモリ11への書込みが完了すれば、システムメモリの記憶領域の数や、走査領域のブロックの数は限定されない。この場合、超音波診断装置の性能に応じて、記憶領域を交互に利用する範囲において、システムメモリの容量と記憶領域の数、及び走査領域のブロックの数を決定すればよい。
【0095】
また、システムメモリ11は、各構成要素が備えられた超音波診断装置本体に備える必要は無い。1つのブロックを走査する間に、少なくとも1つのブロックの走査制御データのシステムメモリ11への書込みが完了するのであれば、システムメモリ11を配置する位置は限定されない。つまり、システムメモリ11を超音波診断装置本体を操作・制御するホスト側に配置することも可能である。システムメモリ11をホスト側に配置することで、超音波診断装置本体に制御データを記憶する記憶領域を設ける必要がなくなる。これにより、基盤サイズを縮小することが可能となり、超音波診断装置を小型化することも可能である。
【符号の説明】
【0096】
10 制御部 11 システムメモリ 12 操作部
20 ハードウェア制御部 21 超音波プローブ 22 送受信部
23 信号処理部 24 画像生成部 25 表示部
101 制御データ演算部 102 制御データ書込み部
111A 第1の記憶領域 111B 第2の記憶領域
201 DMA回路 202 シーケンス制御回路 203 IRQ回路

【特許請求の範囲】
【請求項1】
超音波プローブを介して被検体に超音波を送信し、前記被検体から反射した超音波エコーを受信することで前記被検体の走査を行う送受信部と、前記超音波エコー信号を信号処理する信号処理部と、信号処理された前記超音波エコーのデータを基に超音波画像を生成する画像生成部と、これらの各構成要素を動作制御するハードウェア制御部と、前記超音波画像を表示する表示部とを備えた超音波診断装置であって、
前記走査を行う領域を1以上の走査線を含む複数のブロックに分割し、前記超音波エコーを送受信し、受信した前記超音波エコーを信号処理し画像を生成するために前記各構成要素を動作制御する制御データを、前記ブロックごとに算出する制御データ演算部を更に備え、
前記ハードウェア制御部が、前記制御データ算出部により算出された制御データを基に、前記各構成要素を動作制御し1つの前記ブロックを走査する間に、前記制御データ演算部が前記1つのブロックとは異なる次の走査すべき他のブロックの制御データを算出することを特徴とする超音波診断装置。
【請求項2】
前記ハードウェア制御部が前記各構成要素を動作制御し前記1つのブロックを走査する間に、前記制御データ演算部が、少なくとも1つのブロックの制御データの算出が終了することを特徴とする請求項1に記載の超音波診断装置。
【請求項3】
前記制御データを記憶する第1と第2の記憶領域を有するシステムメモリを更に備え、
前記ハードウェア制御部が、あらかじめ前記制御データ演算部により前記第1の記憶領域に書込まれた制御データを基に前記1つのブロックを走査している間に、前記制御データ演算部が、前記他のブロックの制御データを算出し、前記第2の記憶領域に先に記憶されていた制御データに代えて、算出した前記制御データに更新させ記憶させることを特徴とする請求項1又は請求項2に記載の超音波診断装置。
【請求項4】
前記制御データ演算部は、前記他のブロックの制御データを算出した後に、前記他のブロックの次に走査するブロックの制御データを算出し、
前記ハードウェア制御部による、前記第1の記憶領域に書込まれた制御データを基にした走査の完了後に、前記制御データ演算部が、前記第1の記憶領域に算出した前記他のブロックの次に走査するブロックの制御データを書込むことを特徴とする請求項3に記載の超音波診断装置。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate


【公開番号】特開2011−218002(P2011−218002A)
【公開日】平成23年11月4日(2011.11.4)
【国際特許分類】
【出願番号】特願2010−91403(P2010−91403)
【出願日】平成22年4月12日(2010.4.12)
【出願人】(000003078)株式会社東芝 (54,554)
【出願人】(594164542)東芝メディカルシステムズ株式会社 (4,066)
【Fターム(参考)】