(57)【要約】  埋込み型医療装置とともに使用可能な、２つのマイクロコントローラを備えた改善された外部コントローラを開示する。外部コントローラは、低速（低周波数）マイクロコントローラと、高速（高周波数）マイクロコントローラを含む。低速マイクロコントローラは、医療装置から遠隔通信ユニットを介して遠隔通信データを受取り、このデータをグラフィックコマンドに変換し、グラフックコマンドを高速マイクロコントローラに送信する。高速マイクロコントローラは、グラフィックコマンドを解釈し、コマンドを示す画像を記憶装置から検索し、画像をディスプレイ画面上にレンダリングする。高速マイクロコントローラは、さらに、低速マイクロコントローラから送信された複雑なデータを処理し、高速マイクロコントローラが実行するグラフィックコマンドを形成するために、処理結果を低速マイクロコントローラに戻す。
2013539709.tif 000002
【特許請求の範囲】
【請求項１】
外部医療装置のディスプレイ上にグラフィックをレンダリングする方法であって、
埋込み型医療装置から遠隔通信された、前記ディスプレイ上にレンダリングすべき少なくとも１つのグラフィックを示す入力データを第１のマイクロコントローラにおいて受取るステップと、
前記第１のマイクロコントローラにおいて、前記入力データをグラフィックコマンドに変換するステップと、
前記グラフィックコマンドを第２のマイクロコントローラに送信するステップと、
前記グラフィックコマンドを使用して、少なくとも１つの画像ファイルを記憶装置から検索するステップと、
前記第２のマイクロコントローラを使用し、且つ、前記少なくとも１つの画像ファイルを使用して、前記ディスプレイ上に前記少なくとも１つのグラフィックをレンダリングするステップと、を含む方法。
【請求項２】
前記第１のマイクロコントローラは、前記第２のマイクロコントローラが作動するクロック周波数よりも遅いクロック周波数で作動する、請求項１に記載の方法。
【請求項３】
前記グラフィックコマンドは、画面インデックスを含む、請求項１に記載の方法。
【請求項４】
前記グラフィックコマンドは、さらに、前記少なくとも１つのグラフィックのレンダリングを修正する少なくとも１つの属性を含む、請求項３に記載の方法。
【請求項５】
前記画面インデックスを使用して、前記少なくとも１つの画像ファイルを前記記憶装置から検索する、請求項３に記載の方法。
【請求項６】
前記グラフィックコマンドをさらに使用して、前記少なくとも１つの画像ファイルのための場所を検索し、前記少なくとも１つのグラフィックを前記ディスプレイ上の前記場所にレンダリングする、請求項１に記載の方法。
【請求項７】
前記入力データを、前記外部コントローラのユーザインターフェイスからさらに受取る、請求項１に記載の方法。
【請求項８】
前記ユーザインターフェイスは、複数のボタンを含む、請求項１に記載の方法。
【請求項９】
前記入力データは、前記埋込み型医療装置内のバッテリの容量を含む、請求項１に記載の方法。
【請求項１０】
外部医療装置のディスプレイ上にグラフィックをレンダリングする方法であって、
（ａ）埋込み型医療装置から遠隔通信された、前記ディスプレイ上にレンダリングすべき少なくとも１つのグラフィックを示す入力データを第１のマイクロコントローラで受取るステップと、
（ｂ）前記入力データの少なくとも第１の部分を前記第１のマイクロコントローラから第２のマイクロコントローラに送信するステップと、
（ｃ）前記第２のマイクロコントローラにおいて、前記入力データの少なくとも第１の部分を処理するステップと、
（ｄ）前記処理したデータを前記第１のマイクロコントローラに送信するステップと、
（ｅ）前記第１のマイクロコントローラにおいて、少なくとも前記処理したデータをグラフィックコマンドに変換するステップと、
（ｆ）前記グラフィックコマンドを前記第２のマイクロコントローラに送信するステップと、
（ｇ）前記グラフィックコマンドを使用して、少なくとも１つの画像ファイルを記憶装置から検索するステップと、
（ｈ）前記第２のマイクロコントローラを使用して、前記少なくとも１つの画像ファイルを前記ディスプレイ上にレンダリングするステップと、含む方法。
【請求項１１】
前記入力データの第２の部分を前記第１のマイクロコントローラに記憶し、前記第１のマイクロコントローラにおいて、前記処理したデータ及び前記入力データの第２の部分をグラフィックコマンドに変換するステップをさらに含む、請求項１０に記載の方法。
【請求項１２】
前記ステップ（ｂ）及び（ｄ）は、前記第１のマイクロコントローラと前記第２のマイクロコントローラの間のデータバスを使用して行われ、前記ステップ（ｆ）は、前記第１のマイクロコントローラと前記第２のマイクロコントローラの間の制御バスを使用して行われる、請求項１０に記載の方法。
【請求項１３】
前記第１のマイクロコントローラは、前記第２のマイクロコントローラが作動するクロック周波数よりも遅いクロック周波数で作動する、請求項１０に記載の方法。
【請求項１４】
前記グラフィックコマンドは、画面インデックスを含む、請求項１０に記載の方法。
【請求項１５】
前記グラフィックコマンドは、前記グラフィックのレンダリングを修正する少なくとも１つの属性をさらに含む、請求項１４に記載の方法。
【請求項１６】
前記画面インデックスを使用して、前記少なくとも１つの画像ファイルを前記記憶装置から検索する、請求項１４に記載の方法。
【請求項１７】
前記グラフィックコマンドをさらに使用して、前記少なくとも１つの画像ファイルのための場所を検索し、前記少なくとも１つのグラフィックを前記ディスプレイ上の前記場所にレンダリングする、請求項１０に記載の方法。
【請求項１８】
さらに、前記入力データを前記外部コントローラのユーザインターフェイスから受取る、請求項１０に記載の方法。
【請求項１９】
前記ユーザインターフェイスは、複数のボタンを含む、請求項１０に記載の方法。
【請求項２０】
前記入力データは、電極抵抗値を含む、請求項１０に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本出願は、２０１０年１０月１３日に出願された米国特許出願第６１／３９２，８０７号の国際（ＰＣＴ）出願であるとともに、この特許出願に対する優先権を主張し、この特許出願の全体を本明細書に援用する。
【０００２】
本出願は、２つのマイクロコントローラを有する埋込み型医療装置のための外部コントローラに関し、外部コントローラの高解像度ディスプレイの制御において特に有用である。
【背景技術】
【０００３】
埋込み型刺激装置は、様々な生物学的疾患を治療するための電気刺激を生成して体内神経及び組織へ送出する装置であり、例えば、不整脈を治療するペースメーカー、心細動を治療する除細動器、難聴を治療する蝸牛刺激器、盲目を治療する網膜刺激器、協調四肢運動を引き起こす筋肉刺激器、慢性疼痛を治療する脊髄刺激器、運動障害及び精神障害を治療する脳皮質及び脳深部刺激器、及び尿失禁、睡眠時無呼吸、肩亜脱臼を治療するその他の神経刺激器などがある。本発明は、全てのかかる用途において適用性を見出すことができるが、以下の説明は、一般的には、特許文献１（米国特許第６，５１６，２２７号）に開示されているような脊髄刺激（ＳＣＳ）システムにおいて本発明を使用することに焦点を当てたものであり、この特許を本明細書に援用する。
【０００４】
脊髄電気刺激法は、特定の患者集団の痛みを軽減するための広く受け入れられている臨床方法である。図１Ａ及び図１Ｂに示すように、典型的には、ＳＣＳシステムは、埋込み型パルス発生器（ＩＰＧ）１００を有し、このＩＰＧは、例えばチタンで形成された生体適合ケース３０を有する。典型的には、ケース３０は、ＩＰＧが機能するのに必要な回路及び電源又はバッテリを保持するが、バッテリを使用せずに、外部ＲＦエネルギーを通じてＩＰＧに給電することもできる。ＩＰＧ１００は、１本又は２本以上の電極リード（２本のかかるリード１０２及び１０４を図示）を介して電極１０６に結合され、この電極１０６が電極アレイ１１０を形成する。電極１０６は、可撓性本体１０８上にあり、この可撓性本体１０８は、各電極に結合された個々の信号線１１２及び１１４も収容する。例示の実施形態では、Ｅ１〜Ｅ８と表示された８つの電極がリード１０２上に存在し、Ｅ９〜Ｅ１６と表示された８つの電極がリード１０４上に存在するが、リード及び電極の数は特定の適用例固有のものであり、従ってこれとは異なる場合もある。
【０００５】
ＩＰＧシステムの一部の断面を図２に示し、これにはＩＰＧ１００及び外部コントローラ（リモコン装置）２１０が含まれる。典型的には、ＩＰＧ１００は、マイクロコントローラ、集積回路及びコンデンサ等の様々な電子部品２０を装着したプリント基板（ＰＣＢ）１６を含む電子基板アセンブリ１４を備える。一般的には、ＩＰＧ１００内には、外部コントローラ２１０へ／からデータを送信／受信するために使用する遠隔通信コイル１３、及び外部充電器（図示せず）を使用してＩＰＧの電源又はバッテリ２６を充電又は再充電するための充電コイル１８という２つのコイルが存在する。遠隔通信コイル１３は、図示のようにヘッダコネクタ３６内に装着すること、又はケース３０内に含めることができる。
【０００６】
上述したように、ハンドヘルドプログラマ又は臨床医用プログラマ等の外部コントローラ２１０は、ＩＰＧ１００との間でデータを無線で送受信するために使用される。例えば、外部コントローラ２１０は、ＩＰＧ１００が患者に施す治療を設定するためのプログラムデータをＩＰＧ１００に送信することができる。また、外部コントローラ２１０は、ＩＰＧの状態をレポートする様々なデータ等の、ＩＰＧ１００からのデータの受信機として機能することもできる。
【０００７】
外部コントローラ２１０との間のデータ通信は、磁気誘導結合を通じて行われる。例えば、外部コントローラ２１０からＩＰＧ１００にデータを送信する場合、コイル１７が交流電流（ＡＣ）で励起される。データを転送するためのかかるコイル１７の励起は、例えば、特許文献２（２００７年７月１９日に出願された米国特許出願第１１／７８０，３６９号）に記載されるような周波数シフトキーイング（ＦＳＫ）プロトコルを使用して行うことができ、この特許出願の全体を本明細書に援用する。コイル１７を励起することによって電磁場が生じ、これがさらにＩＰＧの遠隔通信コイル１３内に電流を誘導し、その後この電流を復調して元データを回復することができる。ＩＰＧ１００から外部コントローラ２１０への通信も、基本的に同じように行われる。
【０００８】
外部コントローラ２１０の正面図を図３に示す。図示のように、典型的には、この外部コントローラは、様々な入力ボタン２５０及びディスプレイ４４０を含むユーザインターフェイスを備える。このユーザインターフェイスは、その他の可聴式又は触覚性の特徴を含んでいてもよい。患者は、ユーザインターフェイスを使用して、様々な機能を実行することができる。例えば、ユーザは、ボタン２５０を使用して、刺激パラメータを調整することができ、ボタンを押すことにより、刺激力の増加又は減少等、ディスプレイ４４０上のゲージを変化させることができる。変形例として、ディスプレイ４４０は、ボタン２５０を押したかどうかに関わらず、ＩＰＧ１００内のバッテリ２６（図２）の状態等の状態情報を示してもよい。特許文献３（２００７年１１月５日に出願された米国特許出願第１１／９３５，１１１号）において、外部コントローラの構造及び機能に関するさらなる詳細を見出すことができ、本願を読む者は特許文献３を知っていると思われる。
【先行技術文献】
【特許文献】
【０００９】
【特許文献１】米国特許第６，５１６，２２７号明細書
【特許文献２】米国特許出願第１１／７８０，３６９号明細書
【特許文献３】米国特許出願第１１／９３５，１１１号明細書
【特許文献４】米国特許出願第１１／０９６，４８３号明細書
【特許文献５】米国特許出願第１１／９３８，４９０号明細書
【発明の概要】
【発明が解決しようとする課題】
【００１０】
外部コントローラ２１０及びＩＰＧ１００がますます進歩するにつれ、発明者らは、高解像度カラーディスプレイ等のより質の高いユーザインターフェイスを患者に提供することが有利であると気付いた。例えば、現在、患者は、自身の外部コントローラ２１０を使用して電極間に電流を誘導し、Ｂｏｓｔｏｎ  Ｓｃｉｅｎｔｉｆｉｃ社のｉ−Ｓｃｕｌｐｔ（登録商標）技術を使用して行われるような最も有効な刺激治療を見出すことができる。本出願とともにコピーを提出しているｈｔｔｐ：／／ｗｗｗ．ｃｈｒｉｓａｍｉｃｈａｅｌｓ．ｃｏｍ／ａｓｓｅｔｓ／ｐｒｅｃｐｌｕｓ．ｐｄｆを参照されたい。しかしながら、一般的には、駆動が比較的単純であり、有意なコンピュータリソースを必要としない白黒液晶ディスプレイを使用する従来の外部コントローラ内に存在するマイクロコントローラ及びディスプレイを使用して電流ステアリングを行うことは困難である。大型の高解像度ディスプレイは、より良好な電流ステアリング及びその他のシステム機能を可能にするであろうが、これにはさらなるコンピュータリソースが必要であり、従来の外部コントローラ内に存在するマイクロコントローラを使用してこのリソースを提供することは困難である。本開示は、解決策を提供するものである。
【図面の簡単な説明】
【００１１】
【図１Ａ】先行技術による埋込み型パルス発生器（ＩＰＧ）及びＩＰＧに電極アレイを結合する方法を示す図である。
【図１Ｂ】先行技術による埋込み型パルス発生器（ＩＰＧ、及びＩＰＧに電極アレイを結合する方法を示す図である。
【図２】外部コントローラとＩＰＧの間の無線データ通信を示す図である。
【図３】先行技術の外部コントローラを示す図である。
【図４】１つの実施形態による、２つのマイクロコントローラを備えた外部コントローラのブロック図である。
【図５Ａ】１つの実施形態による、２つのマイクロコントローラを備えた外部コントローラ内のディスプレイ画面を例示する図である。
【図５Ｂ】１つの実施形態による、２つのマイクロコントローラを備えた外部コントローラ内のディスプレイ画面上にグラフィックをレンダリングする流れを例示する図である。
【図６】１つの実施形態による、２つのマイクロコントローラを備えた外部コントローラ内で遠隔通信データを処理する技術のフローチャートである。
【図７】別の実施形態による、２つのマイクロコントローラを備えた外部コントローラ内で遠隔通信データを処理する技術のフローチャートである。
【発明を実施するための形態】
【００１２】
以下の説明は、本発明を脊髄電気刺激（ＳＣＳ）システム内で使用することに関する。しかしながら、本発明はこのように限定されるものではない。むしろ、本発明は、埋込み型医療装置の改善された外部コントローラから恩恵を受けることができる任意の種類の埋込み型医療装置システムとともに使用することができる。例えば、本発明は、埋込み型センサ、埋込み型薬物ポンプ、ペースメーカー、除細動器、蝸牛刺激器、網膜刺激器、協調四肢運動を生み出すように構成された刺激器、脳皮質及び脳深部刺激器を使用するシステムの一部として、又は様々な状態のいずれかを処置するように構成されたその他の任意の神経刺激器において使用することができる。
【００１３】
埋込み型医療装置とともに使用可能な、２つのマイクロコントローラを有する改善された外部コントローラを開示する。この外部コントローラは、低速（低周波数）マイクロコントローラと、高速（高周波数）マイクロコントローラを含む。低速マイクロコントローラは、医療装置から遠隔通信ユニットを介して遠隔通信データを受取り、データをグラフィックコマンドに変換し、グラフィックコマンドを高速マイクロコントローラに送信する。高速マイクロコントローラは、グラフィックコマンドを解釈し、グラフィックコマンドを示す画像を記憶装置から検索し、画面及び画像をディスプレイ画面上にレンダリングする。高速マイクロコントローラは、低速マイクロコントローラから送信されたさらに複雑なデータを処理し、この結果を低速マイクロコントローラに戻して、高速マイクロコントローラが実行するグラフィックコマンドを形成できるようにしてもよい。この結果、外部コントローラ内における高品質なグラフィックの実装、及びこの外部コントローラによる質の高い患者体験が可能になる。
【００１４】
改善された外部コントローラ４００の１つの実施形態を、図４にブロック図形式で示す。外部コントローラ４００は、２つのマイクロコントローラ、すなわち、低速マイクロコントローラ４１０及び高速マイクロコントローラ４２０を備え、これらを後で詳細に説明する。外部コントローラ４００は、ＩＰＧ１００と無線で通信する遠隔通信ユニット４０５を備える。外部コントローラ４００はまた、後でさらに説明するような画像ファイル等の予めロードしたデータを記憶する記憶装置４３０を備える。外部コントローラ４００は、患者に、ディスプレイ４４０及び様々な入力ボタン２５０（図３）の形態のユーザインターフェイスを提供する。患者は、ユーザインターフェイスから、多数の作業を行うことができ、かかる作業は、例えば、外部コントローラ４００からＩＰＧ１００に（新たな治療プログラム等の）データを遠隔通信すること、ＩＰＧ１００からの様々な形態の状態フィードバックを外部コントローラ４００においてモニタすることである。後でさらに説明するように、（例えば、ボタン２５０からの）かかるユーザ入力は、典型的には、２つのマイクロコントローラ４１０、４２０のマスターとして機能する低速マイクロコントローラ４１０に到達する。
【００１５】
１つの実施形態では、外部コントローラ４００は、常に、ＩＰＧ１００との遠隔通信のイニシエータ（開始装置）として機能する。この実施形態では、ユーザが、ユーザインターフェイスを使用して、外部コントローラ４００を、電源を切った状態又は「スリープ」状態から起動させ、ユーザインターフェイス（ボタン２５０など）を使用して、ＩＰＧのバッテリ状態を問い合わせること等の通信を開始する。しかしながら、このことがすべての有用な実施形態において厳密に必要なわけではない。その代わりに、外部コントローラ４００は、ユーザの介入なしに、ＩＰＧ１００との通信を開始してもよいし、ＩＰＧ１００自体が、スケジュールに従って又は重要と思われるデータを受取ったとき、外部コントローラ４００にデータを遠隔通信したり、少なくともデータを遠隔通信しようとしたりしてもよい。
【００１６】
ディスプレイ４４０は、選択的には、テキスト及びグラフィックの両方を表示して、必要な情報を患者に伝え、かかる情報は、例えば、メニューオプション、刺激設定、ＩＰＧのバッテリ状態、外部コントローラのバッテリ状態、刺激状態（すなわち、オン又はオフ）、充電状態（オン又はオフ）である。ディスプレイ４４０は、カラーディスプレイを含むのがよく、カラーディスプレイは、例えば、カラースーパーツイステッドネマチック（ＣＳＴＮ）ＬＣＤ、薄膜トランジスタ（ＴＦＴ）ＬＣＤである。ディスプレイ４４０は、さらに、有機発光ダイオード（ＯＬＥＤ）ディスプレイをさらに含むのがよい。有機発光ダイオード（ＯＬＥＤ）ディスプレイは、単色、グレースケール（典型的には４ビット）、カラー（典型的には、は２色又は３色）、又はフルカラー（８ビット〜３２ビットカラー）で利用することができる。上述したように、ディスプレイ４４０の複雑性が、２つのマイクロコントローラ４１０、４２０を使用する主な動機である。
【００１７】
後でさらに説明するように、記憶装置４３０は、ディスプレイ４４０上にレンダリングされる画像ファイル等の永続データを記憶するのに使用される。かかる画像ファイルは、外部コントローラ４００の製造中に記憶装置４３０内にロードされるのがよい。ソフトウェアブロック４５０は、一般的には、低速マイクロコントローラ４１０のためのオペレーティングソフトウェアを含み、ソフトウェアブロック４５５は、一般的には、高速マイクロコントローラ４２０のためのオペレーティングソフトウェアを含む。ソフトウェアブロック４５０、４５５のいずれかは、それぞれのマイクロコントローラのファームウェアの一部を含んでいてもよいし、それらに接続されていてもよい。典型的には、記憶装置４３０とソフトウェアブロック４５０、４５５は両方とも、不揮発性ストレージを提供するフラッシュＥＥＰＲＯＭメモリを含むが、製造中又は製造後にオペレーティングソフトウェア又は画像ファイルを更新する必要がある場合には、フラッシュＥＥＰＲＯＭメモリを消去することができる。変形例として、記憶装置４３０及びソフトウェアブロック４５０、４５５を、ＲＯＭマイクロコード内に実装してもよい。記憶装置４３０は、高速マイクロコントローラ４２０に直列に接続されてもよい。
【００１８】
低速マイクロコントローラ４１０は、外部コントローラ４００内の基礎データの処理に適している。低速マイクロコントローラ４１０は、その比較的低い作動周波数（例えば、６ＭＨｚ）のため、消費電力が少なく、電磁放射線が少なく、比較的サイズが小さい。１つの実施形態では、低速マイクロコントローラ４１０として、Ｔｅｘａｓ  Ｉｎｓｔｒｕｍｅｎｔｓ社のＭＳＰ４３０シリーズのマイクロコントローラが使用される。低速マイクロコントローラ４１０は、外部コントローラ４００内で遠隔通信及び典型的なデータの処理を行い、この処理は、（例えば、最新のパーソナルコンピュータと比べて）比較的低速で行うことができる。
【００１９】
対照的に、高速マイクロコントローラ４２０は、より高い周波数（例えば、４８ＭＨｚ）で作動し、従って、相当な処理を必要とする機能の実行により良く適応し、かかる処理は、例えば、大量の計算、浮動小数点演算、又は高速データストリーミングである。１つの実施形態では、高速マイクロコントローラ４２０として、Ａｔｍｅｌ社のＡＲＭマイクロコントローラが使用される。
【００２０】
図４に示すように、外部コントローラ４００は、低速マイクロコントローラ４１０において、遠隔通信ユニット４０５を介してＩＰＧ１００との間で遠隔通信データを送受信する。遠隔通信ユニット４０５は、トランシーバ回路を含み、トランシーバ回路は、データを送信用にエンコード（符号化）するための変調回路、及び受取ったデータをデコード（復号）するための復調回路を含む。上述したように、外部コントローラ４００は、ＩＰＧ１００が患者に施す治療を設定するためのプログラムデータをＩＰＧ１００に送信する。外部コントローラ４００はまた、ＩＰＧ１００からのデータの受信機として機能してもよく、かかるデータは、例えば、ディスプレイ画面４４０に表示され且つＩＰＧの状態を報告する様々なデータである。
【００２１】
図４に示すように、低速マイクロコントローラ４１０は、データバス４２５を介して高速マイクロコントローラ４２０と通信する。また、低速マイクロコントローラ４１０から高速マイクロコントローラ４２０にコマンドを送信するための別個の制御バス４２７を示している。これに関して、低速マイクロコントローラ４１０は、高速マイクロコントローラ４２０に対する「マスター」として機能し、高速マイクロコントローラ４２０は、「スレーブ」として機能し、その理由は、高速マイクロコントローラ４２０は、一般的には、低速マイクロコントローラ４１０によって与えられるコマンドに従って作動するからでる。データバス４２５、コマンドバス４２７、又はこれらの両方は、シリアルバスを含んでいてもよい。
【００２２】
上述したように、外部コントローラ４００は、低速マイクロコントローラ４１０において、ＩＰＧ１００のバッテリ容量等の遠隔通信データを遠隔通信ユニット４０５を介してＩＰＧ１００から受取り、この情報がディスプレイ４４０に送信される。この作動を容易にするために、低速マイクロコントローラ４１０は、受取った遠隔通信データを、高速マイクロコントローラ４２０によって実行されるようにグラフィックコマンドに変換する。グラフィックコマンドは、画面に描画し又はこれを更新する方法についての指令セットを含み、かかるグラフィックコマンドは、グラフィックコマンドプロトコルに従ってフォーマットされる。もちろん、ＩＰＧ１００から外部コントローラ４００に送信される全てのデータが、最終的にディスプレイ４４０に送られるとは限らず、かかる場合には、グラフィックコマンドのフォーマットは不要である。さらに、以下の例では、遠隔通信されたデータを表示することを強調しているが、ディスプレイ４４０上の全ての画像が、ＩＰＧ１００から遠隔通信されたデータに由来するとは限らない。
【００２３】
外部コントローラ４００内で使用されるグラフィックコマンドプロトコルは、インデックス付き画面のライブラリを使用し、各画面又はインデックスは、外部コントローラ４００の作動中の所与の時点における画面の特定の外観に対応する。例えば、インデックス０は、ユーザに様々な選択肢を提示できる「メインメニュー」画面を含み、インデックス１は、「シミュレーション画面」を含む。ユーザは、ユーザインターフェイスを使用して選択を行うことによって、これらの画面間を移動し、例えば、ボタン２５０を使用して、メインメニュー画面（インデックス０）から刺激画面（インデックス１）に移動する。しかしながら、このことが厳密に必要なわけではなく、その理由は、外部コントローラ４００は、必要に応じて画面（インデックス）間を自動的に移動してユーザに様々な重要な情報を示してもよいからである。
【００２４】
各インデックスは、ディスプレイ４４０のレイアウトを定め、且つ、ディスプレイ４４０に表示すべきグラフィック及びかかるグラフィックの場所の組に対応する。インデックス１の「刺激画面」の表示例を、図５Ａに示し、この表示例は、複数のグラフィックを含み、具体的には、外部コントローラのバッテリ状態５０６、ＩＰＧのバッテリ状態５０４、刺激レベル状態５０２、最大値の割合としてテキスト表示される刺激レベル状態５０３、プログラムグラフィック５１０、及びメニューグラフィック５１２のグラフィックを含む。プログラムグラフィック５１０は、特定のプログラム番号（図示のような「１」）、及びこのプログラムのテキスト記述（「午前」）を含み、これは、このプログラム「１」が、この患者が一般的には、午前中に使用する設定を含むことを示す。もちろん、プログラム番号及びその設定は、ユーザがユーザインターフェイスを使用することにより変更してもよい。
【００２５】
特定の画面インデックスに関して表示されるこれらのグラフィックのいくつかは、表示されるグラフィックを変化させる属性を含む。例えば、ＩＰＧバッテリゲージ５０４は、ＩＰＧバッテリの電流容量に基づき、０％〜１００％の範囲である。ＩＰＧバッテリゲージ５０４には、この容量属性は、典型的には、多数の実線バー（各々が２５％の容量を構成する４つのバー）として反映される。刺激レベルゲージ５０２も同様であり、電流刺激レベルを最大値の割合として示すための多数のバーを構成する。また、ゲージ５０３は、この属性を（４０％のように）テキストで表示する。いくつかの属性は、ユーザが行った変更に由来し、他の属性は、ＩＰＧ１００から遠隔通信されたデータに由来する。例えば、ゲージ５０４によって反映されるＩＰＧバッテリ容量は、ＩＰＧ１００から遠隔通信されたデータに由来し、ゲージ５０２及び５０３によって反映される刺激レベルは、外部コントローラのユーザインターフェイス上のボタン２５０を介したユーザ入力に由来する。
【００２６】
低速マイクロコントローラ４１０は、（遠隔通信を介してＩＰＧ１００から又はユーザインターフェイスを介してユーザから）受取っているデータに基づいて、どの画面インデックス又はその画面インデックス内の特定のグラフィックが関係しているかを認識する。例えば、遠隔通信データは、遠隔通信されたデータを識別するヘッダ情報を伴う。次に、図５Ｂに示すように、低速マイクロコントローラ４１０は、そのインデックス及び任意の属性（Ａｘ）（例えば、ＩＰＧバッテリ容量）を、制御バス４２７を介して高速マイクロコントローラ４２０に受け渡す。上述し且つ図示したように、各画面インデックスは、所与のインデックスを構成するグラフィックに対応する複数の画像ファイルに対応し、これらの画像ファイル及び場所は、記憶装置４３０に記憶されている。例えば、画像ファイル「Ｉｍａｇｅ３．ｇｐｈ」は、ＩＰＧバッテリゲージ５０４を表す画像ファイル及びそのディスプレイ４４０上の場所「Ｌｏｃ３」を含み、画像ファイル「Ｉｍａｇｅ４．ｇｐｈ」は、刺激ゲージ５０２を表す画像ファイル及びそのディスプレイ上の場所Ｌｏｃ４を含む。
【００２７】
新しいインデックスが高速マイクロコントローラ４２０から記憶装置４３０に受け渡されると、再び図５Ｂに示すように、対応する画像ファイル及び場所を検索する。次に、高速マイクロコントローラ４２０は、これらを処理し、ディスプレイ４４０のレンダリングエンジン４２２を使用して、ディスプレイ４４０上に適当なグラフィックをレンダリングする。レンダリングエンジン４２２は、ＩＰＧバッテリ容量等の属性によってグラフィックを修正する範囲まで、属性を考慮して、レンダリングされた画像を適宜修正する。例えば、ＩＰＧバッテリ容量が非常に少ない（例えば２５％）場合、レンダリングエンジンは、その属性を考慮して、ゲージ５０４内の４つのバーのうちの１つだけ中実にレンダリングする。また、レンダリングエンジン４２２は、レンダリングされた画像の他の側面を属性に応じて変化するように変更してもよい。例えば、ゲージ５０４を異なる色（赤色）でレンダリングしてもよいし、ＩＰＧバッテリ容量が非常に少ない場合には点滅させてもよい。レンダリングエンジン４２２は、属性が時間とともに変化するにつれ、表示された画像を更新してもよい。例えば、レンダリングエンジン４２２は、ＩＰＧバッテリ容量が減少していることに気付いた場合、それにしたがって、レンダリングするゲージ５０４のグラフィックを調整する。
【００２８】
これらのグラフィックは、高速マイクロコントローラ４２０の処理速度に起因して、ユーザの視点から見て外見的に即座にディスプレイ上にレンダリングされる。対照的に、低速マイクロコントローラ４１０自体が、かかるレンダリングを行ったとすると、その遅い速度に起因して、画像が画面にわたってゆっくりと走査されている間、ユーザは必要以上の長さの時間待たなければならないので、ユーザはフラストレーションを経験する。さらに、低速マイクロコントローラ４１０がグラフィックレンダリングを行ったとすると、（遠隔通信等の）他のシステム機能が放棄される程度まで、必要なデータの処理に行き詰まることがある。外部コントローラ４００によって可能になる高速グラフィック処理により、（上述したｉＳｃｕｌｐｔ（登録商標）電流ステアリング技術等の）電流ステアリングをスムーズに実施することを可能にする。例えば、電極の位置をディスプレイ４４０上に示し、次に、ユーザがボタン２５０を使用して、電極間の電流を移動又は「ステアリング」させ、ユーザの刺激治療を最適にすることができる。
【００２９】
図６は、これまでに説明した技術をフローチャートで要約したものである。外部コントローラ４００は、低速マイクロコントローラ４１０において、遠隔通信データを埋込み型装置から受取り、又は、ユーザ入力をユーザインターフェイスから受取る（ステップ６３０）。次に、低速マイクロコントローラ４１０は、受取ったデータをコマンドプロトコルに従ってコマンドに変換する（ステップ６４０）。次に、このコマンドを、低速マイクロコントローラ４１０から制御バス４２７を介して高速マイクロコントローラ４２０に送信する（ステップ６５０）。高速マイクロコントローラ４２０は、コマンドを受取ると、このコマンドを解釈して、対応する画像ファイルを記憶装置４３０から検索する（ステップ６６０）。その後、高速マイクロコントローラ４２０は、ディスプレイ画面４４０上に画像をレンダリングする（ステップ６７０）。
【００３０】
ＩＰＧ１００から送信される或るデータは、それをディスプレイ４４０上にレンダリングできるようにする前に、外部コントローラ４００においてかなりの処理を必要とするものがある。例えば、ＩＰＧ１００から受取った或る情報は、複雑であり、たとえば、患者に埋込んだ時の電極の相対的位置決めに関する情報である。かかる位置情報を使用して、電極リード１０２及び１０４（図１Ａ）の画像をディスプレイ４４０上に描画することができ、それにより、患者は、かかる電極リードが誤った位置に移動したかどうかを理解することを可能にする。かかる位置情報は、普通、電極リード内の様々な異なる電極間で取得した様々な抵抗測定値を含み、かかる抵抗値をディスプレイ４４０上のレンダリング可能な位置に解釈するのに、データの多変数性に起因して、かなりの処理が必要になる。電極位置を計算する技術は、特許文献４（２００５年４月１日に出願された米国特許出願第１１／０９６，４８３号）及び特許文献５（２００７年１１月１２日に出願された米国特許出願第１１／９３８，４９０号）に開示されており、本願を読む者は、特許文献４及び５を知っていると思われる。予想されるように、ＩＰＧ１００は、その処理能力が限られているので、かかる抵抗値の処理にはあまり適していない。その代わり、これらの抵抗値は、処理のためにＩＰＧ１００から外部コントローラ４００に遠隔通信される。低速マイクロコントローラ４１０も、その速度及び処理能力が限られているので、かかるデータの処理にはあまり適していない。
【００３１】
従って、この技術の別の実施形態では、低速マイクロコントローラ４１０で受取ったデータを評価して、コマンド生成及びディスプレイ４４０上へのレンダリングの前に、さらなる処理が必要であるかどうかを決定する。必要であれば、すなわち、遠隔通信されたデータが、上述した抵抗値を伴う等、比較的複雑であり、ディスプレイ４４０上にレンダリングする前にかなりの処理を必要とする場合、データをかかる処理のために低速マイクロコントローラ４１０から高速マイクロコントローラ４２０に送信し、処理されたデータを低速マイクロコントローラ４１０に返送して、それをグラフィックコマンドに変換する。対照的に、受取ったデータが、ＩＰＧバッテリ状態である等、比較的単純であり、それを最低の処理のみで患者に表示する場合、低速マイクロコントローラ４１０は、上述した図６のフローに従ってデータを処理する。
【００３２】
この実施形態のプロセス７００を図７に示す。前と同様、ステップ７１０において、低速マイクロコントローラ４１０が、遠隔通信データ又はユーザ入力を評価し、グラフィックレンダリングの前に、さらなるデータ処理が必要であるかどうかを決定する。低速マイクロコントローラ４１０は、ＩＰＧ１００から受取った様々なタイプのデータを認識しているので、かかる評価は、受取ったデータのタイプを識別することだけを含む。さらなるデータ処理が必要でない場合、プロセスは、図６に関して上述したステップに続く。すなわち、データをグラフィックコマンドに変換し（ステップ６４０）、それを高速マイクロコントローラ４２０に送信し（ステップ６５０）、それを高速マイクロコントローラ４２０において使用して画像を検索し（ステップ６６０）、画像を高速マイクロコントローラ４２０がによってディスプレイ４４０上にレンダリングする（ステップ６７０）。
【００３３】
しかしながら、ステップ７１０において、データをさらに処理する必要がある場合、低速マイクロコントローラ４１０は、ステップ７２０において、データの少なくとも一部をデータバス４２５に沿って高速マイクロコントローラ４２０に送信する。高速マイクロコントローラ４２０に送信されたデータの一部は、上述した抵抗値の場合と同様、数学的解析等のかなりの処理を必要とするものを必然的に含む。対照的に、受取ったデータのうちの処理を必要としない他の部分は、高速マイクロコントローラ４２０における残り部分の処理が完了するまで、低速マイクロコントローラ４１０のメモリに単純に保持される。
【００３４】
その後、高速マイクロコントローラ４２０に送信されたデータを処理し（ステップ７３０）、データバスを介して低速マイクロコントローラ４１０に返送する（ステップ７４０）。この時点で、このデータを、図６に関連して上述したように、低速マイクロコントローラ４１０に保持されている任意の受取ったデータと組み合わせてグラフィックコマンドに変換し（ステップ６４０）、高速マイクロコントローラ４２０に送信し（ステップ６５０）、高速マイクロコントローラ４２０においてこれを使用して画像を検索し（ステップ６６０）、それをディスプレイ４４０上にレンダリングする（ステップ６７０）。上述した抵抗値の例では、ステップ６４０において、場所データは、グラフィックコマンドを伴った属性を含んでいる。
【００３５】
２つのマイクロコントローラを備えた改善された外部コントローラ４００は、いくつかの利点を提供する。高速マイクロコントローラ４２０及び改善された高解像度カラーディスプレイ４４０を追加することにより、外部コントローラ４００は、より質の高いユーザオプション及び患者へのフィードバックを提供することができる。さらに、２つのマイクロコントローラは、高速マイクロコントローラ４２０がディスプレイ４４０上のグラフィックを更新しながら、低速マイクロコントローラ４１０が遠隔通信及びその他のシステム機能等の他のタスクを実行できるようにする並列処理能力も提供する。また、低速マイクロコントローラ４１０は、その低い作動周波数が遠隔通信に干渉するリスクが少ないので、遠隔通信機能を実行するために好ましい。
【００３６】
本開示において言及した「マイクロコントローラ」は、マイクロプロセッサ又はその他の論理デバイス（例えば、ＦＰＧＡ）を含んでいてもよく、好ましくは、別個の集積回路として実装されると理解すべきである。
【００３７】
ディスプレイ上に画像をレンダリングするために使用するグラフィックコマンドは、実際の実装において、複数のグラフィックコマンドを含んでいてもよいことを理解すべきである。従って、グラフィックコマンドは、単一のコマンドとして、又は、一連のグラフィックコマンドとして解釈すべきである。
【００３８】
本発明の特定の実施形態を図示し説明したが、上述の説明は、本発明を上記実施形態に限定することを意図するものではない。当業者には、本発明の思想及び範囲から逸脱することなしに、様々な変更例及び修正例を行えることが明らかである。従って、本発明は、特許請求の範囲により定められる本発明の思想及び範囲に含めることができる変形例、修正例及び均等例を含むことが意図される。
【図１Ａ】
2013539709.tif 000003
【図１Ｂ】
2013539709.tif 000004
【図２】
2013539709.tif 000005
【図３】
2013539709.tif 000006
【図４】
2013539709.tif 000007
【図５Ａ】
2013539709.tif 000008
【図５Ｂ】
2013539709.tif 000009
【図６】
2013539709.tif 000010
【図７】
2013539709.tif 000011
【国際調査報告】
2013539709.tif 000012
2013539709.tif 000013