(57)【要約】  植え込み型医療器具、例えば植え込み型パルス発生器（ＩＰＧ）の改良型アーキテクチャが開示される。一実施形態では、ＩＰＧのための機能ブロックが単一の集積回路（ＩＣ）に組み込まれる。機能ブロックの各々は、通信プロトコルにより制御される集中化バスを経て互いに通信すると共に必要ならば他のオフチップ（off-chip）装置と通信する。各回路ブロックは、バスと通信すると共に通信プロトコルに準拠するために、そのプロトコルに準拠したバスインタフェース回路を有する。各ブロックは、プロトコルに準拠しているので、任意所与のブロックを、他のブロックの設計に悪影響を及ぼさないで、容易に改造し又はアップグレードすることができ、それによりＩＰＧ回路のデバッキング及びアップグレーディングが容易になる。さらに、集中化バスを集積回路から外すことができるので、主要ＩＰＧ用ＩＣの主要な再設計を必要とすることなく、余分な回路をオフチップ状態で容易に追加してＩＰＧを改造し又は機能をＩＰＧに追加することができる。【選択図】図４
2010531207.tif 000002
【特許請求の範囲】
【請求項１】
植え込み型刺激器具であって、
各々が前記植え込み型医療器具内で少なくとも１つの機能を実行する複数の機能ブロックを備えた集積回路を有し、少なくとも１つの他の機能ブロックは、前記植え込み型刺激器具のための刺激回路を有し、少なくとも１つの組織刺激電極が、前記刺激回路に結合されており、
前記機能ブロックの各々と通信状態にあるバスを有し、前記機能ブロックは、バスプロトコルを経て互いに通信する、器具。
【請求項２】
前記機能ブロックのうちの１つは、マスターコントローラから成り、他の全ての機能ブロックは、前記マスターコントローラのスレーブである、請求項１記載の器具。
【請求項３】
前記機能ブロックのうちの１つは、アナログ‐ディジタル変換器から成り、前記アナログ‐ディジタル変換器は、前記バスの外部に位置する前記機能ブロックのうちの少なくとも幾つかから複数のアナログ信号を受け取る、請求項１記載の器具。
【請求項４】
前記集積回路は、外部端子を有し、前記バスは、前記バスが前記集積回路の外部に位置する少なくとも１つの装置と通信することができるよう少なくとも１つの外部端子と通信する、請求項１記載の器具。
【請求項５】
前記装置は、メモリ回路から成る、請求項４記載の器具。
【請求項６】
前記装置は、コントローラから成る、請求項４記載の器具。
【請求項７】
前記機能ブロックのうちの少なくとも幾つかは、他の機能ブロックに割り込みをかけ、前記割り込みは、前記バス上を移動することはない、請求項１記載の器具。
【請求項８】
植え込み型刺激器具であって、
各々が前記植え込み型医療器具内で少なくとも１つの機能を実行する複数の機能ブロックを有し、少なくとも１つの他の機能ブロックは、前記植え込み型刺激器具のための刺激回路を有し、少なくとも１つの組織刺激電極が、前記刺激回路に結合されており、
前記機能ブロックの各々と通信状態にあるパラレルバスを有し、前記機能ブロックは、バスプロトコルを経て互いに通信する、器具。
【請求項９】
前記機能ブロックのうちの１つは、マスターコントローラから成り、他の全ての機能ブロックは、前記マスターコントローラのスレーブである、請求項８記載の器具。
【請求項１０】
前記機能ブロックのうちの１つは、アナログ‐ディジタル変換器から成り、前記アナログ‐ディジタル変換器は、前記バスの外部に位置する前記機能ブロックのうちの少なくとも幾つかから複数のアナログ信号を受け取る、請求項８記載の器具。
【請求項１１】
前記複数の機能ブロック及び前記バスは、単一の集積回路上に集積され、前記集積回路は、外部端子を有し、前記バスは、前記バスが前記集積回路の外部に位置する少なくとも１つの装置と通信することができるよう少なくとも１つの外部端子と通信する、請求項８記載の器具。
【請求項１２】
前記装置は、メモリ回路から成る、請求項１１記載の器具。
【請求項１３】
前記装置は、コントローラから成る、請求項１１記載の器具。
【請求項１４】
前記機能ブロックのうちの少なくとも幾つかは、他の機能ブロックに割り込みをかけ、前記割り込みは、前記バス上を移動することはない、請求項８記載の器具。
【請求項１５】
植え込み型刺激器具であって、
各々が前記植え込み型医療器具内で少なくとも１つの機能を実行する複数の機能ブロックを有し、少なくとも１つの他の機能ブロックは、前記植え込み型刺激器具のための刺激回路を有し、少なくとも１つの組織刺激電極が、前記刺激回路に結合されており、
前記機能ブロックの各々と通信状態にあるパラレルバスを有し、
各機能ブロックと前記バスとの間に介在して設けられたバスインタフェース回路を有し、前記バスインタフェース回路により、各ブロックは、プロトコルに従って前記バスを経て他の機能ブロックと通信することができる、器具。
【請求項１６】
前記機能ブロックのうちの１つは、マスターコントローラから成り、他の全ての機能ブロックは、前記マスターコントローラのスレーブである、請求項１５記載の器具。
【請求項１７】
前記機能ブロックのうちの１つは、アナログ‐ディジタル変換器から成り、前記アナログ‐ディジタル変換器は、前記バスの外部に位置する前記機能ブロックのうちの少なくとも幾つかから複数のアナログ信号を受け取る、請求項１５記載の器具。
【請求項１８】
前記複数の機能ブロック、前記バス、及び前記バスインタフェース回路は、単一の集積回路上に集積されている、請求項１５記載の器具。
【請求項１９】
前記集積回路は、外部端子を有し、前記バスは、前記バスが前記集積回路の外部に位置する少なくとも１つの装置と通信することができるよう少なくとも１つの外部端子と通信する、請求項１８記載の器具。
【請求項２０】
前記装置は、メモリ回路から成る、請求項１９記載の器具。
【請求項２１】
前記装置は、コントローラから成る、請求項１９記載の器具。
【請求項２２】
前記機能ブロックのうちの少なくとも幾つかは、他の機能ブロックに割り込みをかけ、前記割り込みは、前記バス上を移動することはない、請求項１５記載の器具。
【請求項２３】
植え込み型刺激器具であって、
各々が前記植え込み型医療器具内で少なくとも１つの機能を実行する複数の機能ブロックを備えた集積回路を有し、少なくとも１つの他の機能ブロックは、前記植え込み型刺激器具のための刺激回路を有し、少なくとも１つの組織刺激電極が、前記刺激回路に結合されており、
前記集積回路の外部に位置する少なくとも１つの装置を有し、
前記機能ブロックの各々及び前記外部装置と通信状態にあるバスを有し、前記外部装置及び前記機能ブロックは、プロトコルに従って前記バスと通信する、器具。
【請求項２４】
前記機能ブロックのうちの１つは、マスターコントローラから成り、他の全ての機能ブロックは、前記マスターコントローラのスレーブである、請求項２３記載の器具。
【請求項２５】
前記機能ブロックのうちの１つは、アナログ‐ディジタル変換器から成り、前記アナログ‐ディジタル変換器は、前記バスの外部で複数のアナログ信号を受け取る、請求項２３記載の器具。
【請求項２６】
前記集積回路は、外部端子を有し、前記バス中の各信号は、前記バスが前記集積回路の外部に位置する少なくとも１つの装置と通信することができるよう外部端子と通信する、請求項２３記載の器具。
【請求項２７】
植え込み型医療器具であって、
各々が前記植え込み型医療器具内で少なくとも１つの機能を実行する複数の機能ブロックを有し、少なくとも２つのブロックは、他の機能ブロックのための第１のコントローラを有し、
前記機能ブロックのうちの少なくとも幾つかを制御することができる第２のコントローラを有し、
前記機能ブロックの各々及び前記第２のコントローラと通信状態にあるバスを有し、
前記第１のコントローラと前記第２のコントローラは、他の機能ブロックの制御を分担する、器具。
【請求項２８】
前記植え込み型医療器具は、植え込み型刺激器である、請求項２７記載の器具。
【請求項２９】
前記他の機能ブロックのうちの少なくとも１つは、電気刺激を患者の組織に送り出す少なくとも１つの電極に結合された刺激回路から成る、請求項２８記載の器具。
【請求項３０】
前記第１のコントローラを含む前記機能ブロックは、集積回路中に集積され、前記第２のコントローラは、前記集積回路の外部に位置する、請求項２７記載の器具。
【請求項３１】
植え込み型医療器具であって、
各々が前記植え込み型医療器具内で少なくとも１つの機能を実行する複数の機能ブロックを備えた集積回路を有し、少なくとも１つのブロックは、前記集積回路内の他の機能ブロックのための内部コントローラから成り、
前記集積回路の外部に位置する外部コントローラ装置を有し、
前記機能ブロックの各々及び前記外部コントローラと通信状態にあるバスを有し、
前記バス上の少なくとも１つの第１の指令は、前記内部コントローラにより実行可能であり、前記バス上の少なくとも１つの第２の指令は、前記外部コントローラによって実行可能である、器具。
【請求項３２】
前記植え込み型医療器具は、植え込み型刺激器である、請求項３１記載の器具。
【請求項３３】
前記他の機能ブロックのうちの少なくとも１つは、電気刺激を患者の組織に送り出す少なくとも１つの電極に結合された刺激回路から成る、請求項３２記載の器具。
【請求項３４】
前記内部コントローラは、出された指令が前記内部コントローラにより実行可能な第１の指令を含むか前記外部コントローラによって実行可能な第２の指令を含むかを判定する回路を有する、請求項３１記載の器具。
【請求項３５】
前記回路は、前記出された指令を第１の指令か第２の指令かのいずれかとして指定するビットのレジスタを有する、請求項３４記載の器具。
【請求項３６】
前記回路は、コントローラ選択ビットを、前記外部コントローラ中のアービトレーション回路に送出する、請求項３５記載の器具。
【請求項３７】
植え込み型刺激器具を作動させる方法であって、
機能ブロックをバスに結合するステップを有し、前記機能ブロックのうちの１つは、第１のコントローラから成り、少なくとも１つの他の機能ブロックは、前記植え込み型刺激器具のための刺激回路から成り、少なくとも１つの組織刺激電極が、電気刺激回路に結合され、
第２のコントローラを前記バスに結合するステップを有し、
指令を前記バス上に送出するステップを有し、
前記指令が前記第１のコントローラによって実行されるべきであるか前記第２のコントローラによって実行されるべきであるかを判定し、前記指令をそれに応じて実行するステップを有する、方法。
【請求項３８】
前記機能ブロックは、集積回路上に集積され、前記第２のコントローラは、前記集積回路の外部に位置する、請求項３７記載の方法。
【請求項３９】
前記判定ステップは、前記指令を復号し、前記第１のコントローラ中の関連のオーナビットに問い合わせることにより前記第１のコントローラによって実施される、請求項３７記載の方法。
【請求項４０】
前記指令が前記第２のコントローラによって実行される場合、信号を前記第２のコントローラに送るステップを更に有し、前記第２のコントローラは、前記第１のコントローラから前記指令を取り出して前記取り出した指令を実行する、請求項３９記載の方法。
【請求項４１】
前記第２のコントローラによる前記取り出した指令の実行後、制御を前記第１のコントローラに戻すステップを更に有する、請求項４０記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般に、植え込み型医療器具に関し、特に、植え込み型医療器具内の回路のための改良型アーキテクチャに関する。
【０００２】
〔関連出願の説明〕
本国際（ＰＣＴ）出願は、２００７年６月２５日に出願された米国特許出願第１１／７６７，６３６号の優先権主張出願であり、この米国特許出願を参照により引用し、その記載内容全体を本明細書の一部とする。
【背景技術】
【０００３】
植え込み型刺激器具は、種々の生物学的障害の治療のために電気刺激を発生させてかかる電気刺激を身体神経及び組織に送り出す器具、例えば、心不整脈を治療するためのペースメーカ、心細動の治療のための除細動器、聴覚消失の治療のための蝸牛刺激器、視覚消失の治療のための網膜刺激器、調和体肢運動を生じさせるための筋肉刺激器、慢性疼痛の治療のための脊髄刺激器、運動性及び心理学的障害の治療のための大脳皮質及び深部脳刺激器、及び尿失禁、睡眠時無呼吸、肩関節亜脱臼等の治療のための他の神経刺激器である。本発明は、かかる全ての用途に利用できる。ただし、以下の説明は、全体として、例えば米国特許第６，５１６，２２７号（「第´２２７号特許」という場合がある）明細書に開示されている脊髄刺激（ＳＣＳ）システム内への本発明の利用に焦点を当てている。なお、この米国特許を参照により引用し、その開示内容全体を本明細書の一部とする。
【０００４】
脊髄刺激は、或る特定の割合の患者の疼痛を緩和するための広く受け入れられた臨床的方法である。図１Ａ及び図１Ｂに示されているように、ＳＣＳシステムは、典型的には、植え込み型パルス発生器（ＩＰＧ）１００を有し、このＩＰＧは、例えばチタンで作られた生体適合性ケース３０を有する。ケース３０は、通常、ＩＰＧが機能するのに必要な回路及び電源又は電池を保持している。ＩＰＧ１００は、１本又は２本以上の電極リード（２つのかかるリード１０２，１０４が示されている）を介して電極１０６に結合されており、その結果、電極１０６は、電極アレイ１１０を形成するようになっている。電極１０６は、可撓性本体１０８で支持され、この可撓性本体は又、各電極に結合された個々の信号線１１２，１１４を収容している。信号線１１２，１１４は、インタフェース１１５によりＩＰＧ１００に接続されており、このインタフェースは、リード１０２，１０４（又は図示していないリード延長部）をＩＰＧ１００に取り外し可能に接続することができる任意の適当な装置であって良い。
【０００５】
インタフェース１１５は、例えば、リード１０２，１０４に設けられたコネクタ１１９ａ，１１９ｂと対応関係をなして結合するよう構成されたリードコネクタ３８ａ，３８ｂを含む電気機械的コネクタ装置から成るのが良い。図示の実施形態では、リード１０２にＥ1〜Ｅ8と表示された８つの電極が存在し、リード１０４にはＥ9〜Ｅ16と表示された８つの電極が設けられているが、リード及び電極の数は特定用途向けであり、従って様々な場合がある。電極アレイ１１０は、典型的には、脊髄の硬膜に沿って植え込まれ、ＩＰＧ１００は、電極１０６を通って脊柱内の神経線維に送り出される電気パルスを発生させる。次に、ＩＰＧ１００それ自体が典型的には患者の臀部内で幾分遠くのところに植え込まれる。
【０００６】
図２に示されているように、ＩＰＧ１００は、典型的には、プリント回路板（ＰＣＢ）１６をこのＰＣＢ１６に取り付けられた種々の電子部品２０、例えばマイクロプロセッサ、集積回路及びキャパシタと一緒に含む電子基板組立体１４を有する。最終的には、電子回路は、治療機能、例えば神経刺激を行う。フィードスルー（貫通接続）組立体２４が、種々の電極信号を電子基板組立体１４からリードコネクタ３８ａ，３８ｂに送り、これらリードコネクタは、リード１０２，１０４に結合されている（図１Ａ及び図１Ｂ参照）。ＩＰＧ１００は、ヘッダコネクタ３６を更に有し、このヘッダコネクタは、とりわけ、リードコネクタ３８ａ，３８ｂを収容している。ＩＰＧ１００は、ヘッダコネクタ３６内に設けられていて、外部装置、例えば手持ち型又は臨床医用プログラマ（図示せず）に対してデータの送受を行うためのテレメトリ（遠隔計測）アンテナ又はコイル９６（図１Ａ）を更に有するのが良い。上述したように、ＩＰＧ１００は、通常、電源２６、通常充電式電池２６を更に有する。電源２６は、外部充電器１２によって経皮的に再充電可能である。具体的に説明すると、外部充電器１２は、充電セッション中アクティブな状態にあるとき、その充電コイル１７に通電し、充電コイル１７は、ＩＰＧ１００内の充電コイル１８中に電流を誘起させる。この誘起電流は、整流され、最終的には、患者の肉２５を通って電源２６を充電するために用いられる。
【０００７】
典型的なＩＰＧ及びＩＰＧシステムの構造及び機能に関するそれ以上の細部は、２００５年１２月１４日に出願された米国特許出願第１１／３０５，８９８号明細書に開示されており、この米国特許出願を参照により引用し、その開示内容を本明細書の一部とする。
【０００８】
ＩＰＧ１００の内部に設けられた回路のための伝統的なアーキテクチャ５０が図３に示されている。当業者であれば理解されるように、図３は、この開示により提供される要点を理解するのに十分に比較的高いレベルでＩＰＧ１００の回路を示している。アーキテクチャ５０は、ＩＰＧ１００内で種々の電気機能を実行する基本的な回路ブロックを有している。例えば、テレメトリ回路６２がコイル９６に結合されており、このテレメトリ回路は、データを外部コントローラ（図示せず）に対して送受するよう動作する。充電・電池保護回路６４が同様に、充電コイル１８に結合され、この充電・電池保護回路は、電源２６と回路の残部との間に介在している。これら回路６２，６４の両方は、マイクロコントローラ６０に結合され、このマイクロコントローラは、注目できるように、アーキテクチャ５０の設計の中心である。電源投入時にマイクロコントローラ６０により必要とされるプログラム及びデータは、シリアルインタフェース６７によりマイクロコントローラ６０に結合されたメモリ６６、好ましくはシリアル不揮発性メモリに記憶されている。
【０００９】
予測可能な刺激療法を提供する際に関与する回路は、ディジタル集積回路（ＩＣ）７０及びアナログＩＣ８０によって提供される。一用途では、ディジタルＩＣ７０は、刺激制御ロジック、例えば刺激パルス列に特定のタイミングを提供するようＩＰＧのタイミングチャネルにより用いられる種々のタイマを備えている。アナログＩＣ８０は、シリアルリンクを介してディジタルＩＣ７０からデータを受け取り、かかるデータは、ディジタル‐アナログ変換器（ＤＡＣ）８２によりアナログ信号に変換され、このディジタル‐アナログ変換器は、最終的には、電極（Ｅ１．．．ＥＮ）に刺激をもたらす。加うるに、アナログＩＣ８０上に且つ充電ブロック６４及びテレメトリブロック６２内に生じ又はモニタされる種々のアナログ電圧、例えば種々の基準電圧、刺激コンプライアンス電圧等をマイクロコントローラ６０に知らせるためにアナログ‐ディジタル（Ａ／Ｄ）変換器７４が用いられる。マイクロコントローラ６０と一体のものとして示されているが、Ａ／Ｄ変換器７４は又、マイクロコントローラ６０の外部に位置するディスクリート部品であっても良い。
【００１０】
一実施形態では、マイクロコントローラ６０、ディジタルＩＣ７０及びアナログＩＣ８０は、各々がＩＰＧのプリント回路板１６（図１参照）上の部品２０のうちの１つから成るディスクリートＩＣを構成する。アーキテクチャ５０に含まれる他の機能ブロックは、他の部品２０から成る場合があり、これら他の部品は、一体ではなく、少なくとも一部がディスクリート部品で形成される場合がある。
【００１１】
アーキテクチャ５０の機能ブロックを簡単に説明したが、注目されるべきこととして、これらブロックの詳細な動作を理解することは本発明にとって重要ではない。（読者は、機能ブロックの各々の一般的な知識を知りたい場合には上記において引用した米国特許出願第１１／３０５，８９８号明細書を参照するのが良い）。これとは異なり、理解すべき重要なことは、機能ブロックを相互に連結する仕方である。当業者であれば理解されるように、アーキテクチャ５０の作用の中心はマイクロコントローラ６０であり、このマイクロコントローラは、最終的には、あらゆる指令を他のブロックから受け取ったりこれらを他のブロックに送ったりする。さらに、注目できることとして、ブロック相互間の種々の相互連結は、形式及び複雑さが様々であり、連結方式の中には、性質上シリアルなものがあったり単一のデータラインを有し、又はデータディジタルバスを有するものもある。さらに、ブロックのうちの幾つかは、他のブロックとの直接的接続関係を欠いており、それ故、中間ブロックにより互いに通信する必要がある。例えば、マイクロコントローラ６０は、少なくとも一部が、ディジタルＩＣ７０を介してアナログＩＣ８０と通信する必要がある。
【００１２】
かかる相互接続性により、ＩＰＧ１００の出費及びその複雑さが増大する。さらに、かかる相互接続性は又、所望の変更及び（又は）新ＩＰＧ改訂に合わせて特定のアーキテクチャを改造することを困難にする。例えば、機能ブロックのうちの１つを変更するには、他の機能ブロックにこれに対応した相当な変更が必要な場合があり、アップグレード又は改訂がコスト高になる。
【００１３】
加うるに、ＩＰＧ１００内のスペースは制限されている。というのは、ＩＰＧは、好ましくは、インプラントを患者にとって可能な限り影響がないようにするようできるだけ小形である。この点に関し、図３のアーキテクチャ５０は、マイクロコントローラ６０のために用いられる別個のＩＣ、ディジタルＩＣ７０及びアナログＩＣ８０（場合によっては他の部品）が必要なので一段と問題である。多くの部品を設けることにより、一般に、回路の信頼性がマイナスの影響を受けると共に電力消費量、一般に電力が制限されるＩＰＧにとって大きな懸念が増大する。
【００１４】
本発明は、改良型ＩＰＧアーキテクチャにより植え込み型医療器具の分野においてこの問題に対する解決策を提供する。
【先行技術文献】
【特許文献】
【００１５】
【特許文献１】米国特許第６，５１６，２２７号明細書
【特許文献２】米国特許出願第１１／３０５，８９８号明細書
【発明の概要】
【００１６】
植え込み型医療器具、例えば植え込み型パルス発生器（ＩＰＧ）の改良型アーキテクチャが開示される。一実施形態では、ＩＰＧのための機能ブロックが単一の集積回路（ＩＣ）に組み込まれる。機能ブロックの各々は、通信プロトコルにより制御される集中化バスを経て互いに通信すると共に必要ならば他のオフチップ（off-chip）装置と通信する。各回路ブロックは、バスと通信すると共に通信プロトコルに準拠するために、そのプロトコルに準拠したバスインタフェース回路を有する。各ブロックは、プロトコルに準拠しているので、任意所与のブロックを、他のブロックの設計に悪影響を及ぼさないで、容易に改造し又はアップグレードすることができ、それによりＩＰＧ回路のデバッキング及びアップグレーディングが容易になる。さらに、集中化バスを集積回路から外すことができるので、主要ＩＰＧ用ＩＣの主要な再設計を必要とすることなく、余分な回路をオフチップ状態で容易に追加してＩＰＧを改造し又は機能をＩＰＧに追加することができる。
【図面の簡単な説明】
【００１７】
【図１Ａ】植え込み型パルス発生器（ＩＰＧ）及び電極アレイを先行技術に従ってＩＰＧに結合する仕方を示す図である。
【図１Ｂ】植え込み型パルス発生器（ＩＰＧ）及び電極アレイを先行技術に従ってＩＰＧに結合する仕方を示す図である。
【図２】ＩＰＧを先行技術の外部充電器との関連で示す図である。
【図３】先行技術によるＩＰＧ内の回路のアーキテクチャを示す図である。
【図４】通信プロトコルに従って種々の機能ブロックで動作する集中化バスを備えたＩＰＧの改良型アーキテクチャを示す図である。
【図５】図４の集中化バス上の種々の信号を示すと共にバス上で用いられる通信プロトコルを示す図である。
【図６】図４の集中化バスと通信する各機能ブロックによって用いられるバスインタフェース回路の基本構造を示す図である。
【図７】図４の改良型アーキテクチャが図４のアーキテクチャに従って組み込まれたＩＰＧ用ＩＣの外部の追加のメモリ又はコントローラリソースをどのように容易に提供するかを示す図である。
【図８】外部コントローラと図４のアーキテクチャに従って組み込まれたＩＰＧ用ＩＣの内部に位置するコントローラとの間の制御を分担するのに有用な種々のレジスタを示す図である。
【図９】図８の外部コントローラと内部コントローラとの間の制御を分担するのに有用な回路を示す図である。
【図１０】図９の回路の動作を説明する流れ図である。
【発明を実施するための形態】
【００１８】
図４は、改良型ＩＰＧアーキテクチャ１５０の一例を示している。図３との比較によれば、図４の機能ブロックの大部分が図３の回路ブロックに対応しており、かくして新規のアーキテクチャ１５０において同様な機能を実行することが示されている。しかしながら、改良型アーキテクチャ１５０内の機能ブロックの全ては、顕著な差として、集中化バス１９０に結合されている。本開示に示されている実施形態では、集中化バス１９０は、パラレルに動作する複数の多重化アドレス及びデータラインを有するパラレルバスである。しかしながら、これは厳密に言えば必要条件ではなく、その代わりに、バス１９０は、シリアルバスから成っていても良い。
【００１９】
好ましい実施形態では、図示の機能ブロックの各々は、単一の集積回路（ＩＣ）２００内に組み込まれている。図示のようなＩＰＧ用ＩＣ２００は、アナログ信号とディジタル信号の両方を含んでいるので、ＩＣ２００は、混合モードチップから成る。しかしながら、厳密に言えば、アーキテクチャ１５０を図示のように単一のＩＣ２００上に実現することは必要条件ではない。さらに、理解されるべきこととして、ＩＰＧ１００内の或る特定の他の回路部品（例えば、データコイル９６、充電コイル１８、電源２６及び外部メモリ６６等）は、論理的にＩＣ２００の外部に位置する場合がある。よく言われるように、ＩＰＧ内のできる限り多い機能ブロックをＩＣ２００上に統合することが依然として好ましい。というのは、このことは、歩留まりを増大させ、信頼性を高め、ＩＰＧ内の電子回路のスペースを減少させ、ＩＰＧ１００内の回路の電力消費量を減少させたりその他のことをしたりするからである。
【００２０】
改良型ＩＰＧアーキテクチャ１５０内の種々の機能ブロックの各々は、バスインタフェース回路２１５を介して集中化バス１９０と通信するが、これについては、後で詳細に説明する。好ましくは、機能ブロック相互間の他の全てのバスを利用しない通信は、最小限に保たれるが、幾つかのかかる通信は、有益である。例えば、図示のように、種々の割り込み（ＩＮＴ１，ＩＮＴ２，．．．）は、割り込みコントローラ１７３と直接通信し、それにより、集中化バス１９０を介するプロトコルを利用した通信に伴って生じる潜在的な遅延無く、種々の割り込みの発生を即座に認識できる。例えば、ＩＮＴ２は、電源２６が危険レベルまで充電されたかどうかを割り込みコントローラ１７３に知らせることができ、その結果、ＩＣ２００の動作を必要ならば一時的に停止させる場合がある。別のオフバス通信では、アナログバス１９２が種々のアナログ信号をＡ／Ｄブロック７４に送るために利用され、Ａ／Ｄブロックでは、かかる電圧をディジタル化することができ、そして必要に応じて集中化バス１９０を介して他の機能ブロックに利用可能にすることができる。
【００２１】
機能ブロックの各々の動作原理を理解することは開示する改良型ＩＰＧアーキテクチャ１５０にとって重要ではないが、図４から注目すべきこととして、先行技術のディジタルＩＣ７０及びアナログＩＣ８０（図３）は、混合モード刺激回路ブロック１７５の状態に効果的に統合されており、これらの両方は、電極の各々Ｅｘのところで見える刺激パルスのタイミング、大きさ及び極性を設定する。
【００２２】
先行技術（図３）のアーキテクチャ５０との別の重要な相違点として、集中化マイクロコントローラ６０（図３）に代えて、内部コントローラ１６０が用いられていることに注目されたい。集中化バス１９０のパラレル化性状が与えられている場合、ＩＣ２００内の制御は、１つのソースへの集中度が低く、その代わり、制御は、本質的には、コントローラ１６０と種々の機能ブロックとの間で分割され、コントローラ１６０は、「マスター」として働く。具体的に説明すると、各機能ブロックは、セットアップ及び状態レジスタ（図示せず）を有する。コントローラ１６０は、初期化の際、セットアップレジスタへの書き込みを行って各機能ブロックをコンフィグすると共にイネーブルにする。次に、状態レジスタは、各機能ブロックによって設定され、状態及び他の結果について問い合わせるためにコントローラ１６０によって読み取られる。マスターコントローラ１６０により課されるかかる制御とは別に、コントローラ１６０の外部に位置する機能ブロックの多くは、単純な状態機械を用いてこれらの動作を管理することができ、これら状態機械は、セットアップレジスタによりイネーブルにされると共に変更される。内部コントローラ１６０は、マスターとして働くので、内部コントローラ１６０のバスインタフェース回路２１５は、幾分ユニークであり、例えば、通信プロトコルによって用いられる制御信号（例えば、ＡＬＴ、Ｗ／Ｅ及びＲ／Ｅ）のためのドライバ回路２１６を有し、このドライバ回路は、ＩＣ２００内の他の機能ブロックのバスインタフェース回路２１５には欠けている。
【００２３】
図４で理解できるように、ＩＣ２００は、例えば、電源２６を接続し、コイル１８，９６を接続し、外部メモリ６６を接続し、刺激電極を接続するのに必要な幾つかの外部端子２０２（例えば、ピン、ハンダバンプ等）を有する。好ましい実施形態では、他の外部端子２０２は、集中化バス１９０を構成する種々の信号にとって専用であり、それにより、この集中化バスは、ＩＣ２００の外部に位置する他の装置と通信することができ、これについては以下に詳細に説明する。
【００２４】
バス１９０を構成する種々の信号が図５に見え、この図５は、バス上で通信可能な考えられる１つのプロトコルを更に開示している。図示のように、集中化バス１９０は、同期化のためのクロック信号（ＣＬＫ）、時分割多重化アドレス及びデータ信号（Ａ／Ｄｘ）、アドレスバッチイネーブル信号（ＡＬＥ）、アクティブロー（active-low）、書き込みイネーブル信号（*Ｗ／Ｅ）及びアクティブロー読み取りイネーブル信号（*Ｒ／Ｅ）から成っている。集中化バス９０は、１６のアドレス／データ信号を有するのが良いが、当然のことながら、この数は、システム要件に応じて変わるのが良い。
【００２５】
当業者には理解されるように、例えば図４のＩＣ２００を含むＩＰＧシステムにおける通信は、他のコンピュータ化システムと比較して比較的動作速度が遅い場合がある。これにより、集中化バス１９０上で用いられるプロトコルの要件が緩和され、比較的単純且つ比較的低速なプロトコルを用いることができる。例えば、クロック信号ＣＬＫに関する周波数は、３２ｋＨｚ〜１ＭＨｚであるのが良い。かかる周波数は、一般に、コンピュータ化プロトコルにとっては遅いが、典型的には数十マイクロ秒〜ミリ秒のオーダで刺激パルスを提供するＩＰＧの動作と比較すると、適当に速い。
【００２６】
図示されているように、プロトコルは、アドレスの次にそのアドレスに関する関連データが続く等するかなり単純なデータ前アドレス（address-before-data）方式を用いている。アドレスとデータの識別を助けるため、アドレスラッチイネーブル信号（ＡＬＥ）は、アドレスの発行の際にのみアクティブであり、それにより、アドレスをクロック信号の立ち上がり端の際にラッチすることができる。特定のアドレスに対応したデータが書き込まれるか読み取られるかは、書き込み及び読み取りイネーブル信号（*Ｗ／Ｅ、*Ｒ／Ｅ）のアサート（真）で決まる。当然のことながら、このプロトコルは、例示に過ぎず、他のプロトコル及びフォーマットを集中化バス１９０上での通信のために使用できる。
【００２７】
図５のプロトコルの性状は、集中化バス１９０に結合された全ての機能ブロックをアドレスと呼ばなければならず、恐らくは、或る範囲のアドレスと呼ばなければならないことを意味している。例えば、コンプライアンス電圧のための値を保持するデータレジスタのためのアドレス（Ａ／Ｄブロック７４において）は、ＡＤＤＲ［３４０１］であり、バンドギャップ基準電圧のためのアドレスは、ＡＤＤＲ［３４０２］であり、電極Ｅ６によって提供されるべき刺激の大きさのためのアドレス（刺激回路ブロック１７５において）は、ＡＤＤＲ［７６５５］であり、他方、そのパルスの持続時間は、ＡＤＤＲ［７６５６］で記憶されるのが良く、その他同様である。
【００２８】
関連アドレスを認識する際に種々の機能ブロックを助けるため且つ集中化バス１９０のプロトコルに従って機能する各ブロックの能力を保証するため、各ブロックは、図６に示されているバスインタフェース回路２１５を有している。当業者であればバスインタフェース回路２１５の動作原理を良く理解しており、したがって、これを一般的なレベルで説明する。上述したように、１つ又は２つ以上のアドレス、例えば図６の単純な例では、ＡＤＤＲ［１］〜［５］は、各機能ブロックと関連している場合がある。かかるアドレスが種々のブロックのところで受け取られると、各ブロックは、これらアドレスを復号して突き合わせ（マッチ）を判定し、即ち、このアドレスがそのブロックを示すアドレスのうちの１つに対応しているかどうかを判定する。もしそうであれば、データが問題のアドレスに書き込まれ又はこれから読み取られるかどうかに応じて、バスドライバ（読み取りの場合）又はバスレシーバ（書き込みの場合）は、イネーブルにされ、次にデータがブロックのデータレジスタに書き込まれ又はこれから読み取られる。このプロトコルに準拠するため、ブロック内の実際の機能回路（図６には示されていない）は、当業者には理解されるように、データレジスタンスと適切にインタフェースをとる必要がある。
【００２９】
バスインタフェース回路２１５により、各機能ブロックがバス１９０について確立されたプロトコルを用いて通信することができる状態では、種々の機能ブロックに変更を加えて回路の誤差を修正すると共に（或いは）次世代ＩＰＧで使用可能にＩＣ２００をアップグレードすることは、今や、比較的簡単なことになる。これは、ブロックの回路の各々を変更でき、このこの場合、かかる変更が関連のブロックの他の変化を必要とし又は他のブロックの動作を動揺させるという心配が無いからである。機能ブロックを別個独立に設計し、パラレルに検証することができ、それにより設計プロセス中における時間及び労力を節約することができる。
【００３０】
改良型アーキテクチャ１５０のもう１つの利点は、ＩＣ２００の外部に位置するＩＰＧ１００を容易に改造し又は機能をこれに追加することができるということにある。例えば、将来における改良では、ＩＰＧは、もしそうでない場合にオンチップメモリ１７７又はオフチップメモリ６６（図４参照）で記憶できるデータよりもより多くのデータを記憶することが必要な場合がある。かかる場合、集中化バスアーキテクチャ１５０がＩＣ２００内で用いられている場合、バス１９０を図７に示されているようにＩＣ２００の外部に延長することができ、そしてメモリ３００（好ましくは、不揮発性メモリ）を追加することができる。これは、非常に有利であり、その理由は、これにより、ＩＣ２００及び（又は）その機能ブロックのうちの幾つかを再設計する必要なく、ＩＰＧ回路をアップグレードすることができるからである。
【００３１】
開示したアーキテクチャ１５０がどのようにシステム統合のためになるかを示す別の例では、システムの容量を第１のＩＣ２００と同様に構成された別のＩＣ２００′の追加によって効果的に２倍にすることができる。これにより、ＩＣ２００，２００′が収納されたＩＰＧ１００は、３２個の刺激電極、即ち、ＩＣの両方から各々１６個ずつの刺激電極を提供することができる。換言すると、ＩＰＧの容量を複数の刺激ＩＣを互いに単純に「デイジィチェイニング（daisy chaining）」することにより増大させることができる。かかる実施形態では、ＩＣ２００又はＩＣ２００′のうちの一方の内部コントローラ１６０をイナクティブな状態にしてコントローラ１６０が１つしかシステムのマスターコントローラとして働かないようにすることが有益な場合がある。変形例として、ＩＰＧシステムは、ＩＣ２００．２００′の両方のコントローラ１６０を利用しても良い。ただし、これには、潜在的なコンフリクト、即ち、図８〜図１０を参照して以下に説明する課題を解決するための２つのコントローラ相互間におけるアービトレーションが必要である。
【００３２】
また、バス１９０によりＩＣ２００の外部に他の装置を追加することができる。例えば、アーキテクチャ１５０の使用によりイネーブルにされる１つの特に関心のある用途は、少なくとも或る程度の系統的制御をＩＣ２００の外部に配置することができるということにある。例えば、図７では、外部マイクロコントローラ２４０がＩＣ２００内に位置する内部コントローラ１６０に取って代わり又はこれを補うために用いられる（外部マイクロコントローラ２４０は、上述の要点である追加のＩＣ２００′の内部コントローラ１６０から成っていても良い）。この場合も又、外部コントローラによりＩＰＧを制御できるということは、ＩＣ２００又は種々の機能ブロックに変更を加えないでＩＰＧのためのプログラミングを変更できるということを意味している。
【００３３】
しかしながら、外部マイクロコントローラ２４０により追加の制御を提供するためには、２つの制御機構相互間にコンフリクトが無いようにするために内部コントローラ１６０と外部マイクロコントローラ２４０との間に追加の通信手段が必要な場合がある。図８〜図１０は、内部コントローラ１６０と外部マイクロコントローラ２４０がコンフリクト無くＩＣ２００の制御をどのように分担することができるかを記載している。
【００３４】
外部制御の可能性の認識に当たり、内部コントローラ１６０は、図８及び図９に示されているように追加の機能を備えている。素早くプレビューすることにより、この追加の機能は、バス１９０上に出された特定の指令が内部コントローラ１６０によって取り扱われるべきか外部マイクロコントローラ２４０によって取り扱われるべきかどうかを認識するよう設計されている。どちらの装置１６０又は２４０が最終的に問題になっている指令を処理するかは、コントローラ選択ビット（ＣＳＢ）によって設定される。ＣＳＢ＝０である場合、内部コントローラ１６０が問題の指令を実行し、ＣＳＢ＝１であれば、外部マイクロコントローラ２４０がその指令を実行する。図７及び図９で理解できるように、ＣＳＢは、全体として集中化バス１９０の範囲の外部に位置するディスクリート通信信号を構成することができ、このディスクリート通信信号は、その離散的性格により、２つのコントローラ１６０，２４０相互間の迅速且つ安全なアービトレーション方法として好ましい具体化例であることが可能である。他の具体化例では、コントローラ選択ビットは、バス１９０のプロトコルを用いてバス１９０を介して送られるデータを構成することができる。かかる具体化例では、ＣＳＢデータは、バス１９０により内部コントローラ１６０と外部マイクロコントローラ２４０との間で受け渡しされる制御「送信許可証（トークン）」と見なすことができる。コントローラ相互間におけるかかる純粋にバスを利用するアービトレーション方法は、容易に具体化される。しかしながら、バスを利用しないディスクリート信号方式を用いて２つのコントローラ１６０．２４０相互間の制御の受け渡しを説明することが容易なので、この方式は、以下に説明されると共に図示されている。
【００３５】
図示のように、内部コントローラ１６０は、図８に詳細に示された２つのレジスタ、即ち、指令レジスタ２２０及び指令オーナレジスタ２３０を備えた状態で設計されている。指令レジスタ２２０は、多くのコントローラの標準的な特徴であり、単純に、ＩＰＧが実行することができる種々の指令の二値表示から成る。図示の例では、指令レジスタ２２０は、長さが８ビットなので、ＩＰＧ１００は、２５６（２8）の互いに異なる指令を処理することができる。指令オーナレジスタ２３０は、関連の指令（この例では、２５６）が存在するので同数のビットで構成され、レジスタ内の各ビットは、特定の指令が内部コントローラ１６０によって取り扱われるべきであるか外部マイクロコントローラ２４０によって取り扱われるべきであるかどうかを示している。図示のように、指令オーナレジスタ２３０内の特定のビットが“０”である場合、対応の指令は、内部コントローラ１６０によって実行されることになり、“１”であれば、外部マイクロコントローラ２４０がその指令を実行することになる。単純な例では、２５６ビット指令オーナレジスタ２３０が“１０１００００．．．０００１”を読み取った場合、指令２５６，２５４，１（ＣＭＤ２５６，ＣＭＤ２５４，ＣＭＤ１）は、外部マイクロコントローラ２４０によって実行され、他の全ての指令は、内部コントローラ１６０によって実行される。
【００３６】
コントローラ選択ビット（ＣＳＢ）２４５を送出するための指令レジスタ２２０及び指令オーナレジスタ２３０の使用法が図９に示されている。指令が指令レジスタ２２０によっていったん受け取られると、指令は復号されて（例えば、多重分離されて）その指令番号（ＣＭＤ２５６〜ＣＭＤ１）が理解される。次に、指令番号を用いて適当な指令オーナビットを指令オーナレジスタ２３０から取り出す。このビットをコントローラ選択ビット（ＣＳＢ）２４５として設定してどのコントローラ（１６０，２４０）が指令を上述したように取り扱うべきであるかどうかを指示する。
【００３７】
このプロセスについて図１０を参照して詳細に説明する。起動時、指令オーナレジスタ２３０にメモリ（内部メモリ１７７、シリアル外部メモリ６６等）からデフォルト値をロードする。通常、指令オーナレジスタ２３０内の種々の指令オーナビットのデフォルト値は、全て“０”であり、このことは少なくとも最初の全ての指令が内部コントローラ１６０によって実行されるべきことを示している。しかる後、動作中の或る時点で、指令レジスタ２２０にそのアドレス（ＡＤＤＲ［ＣＭＤ］）で指令をロードする。指令を上述したように復号し（多重分離し）、対応の指令オーナビットをコントローラ選択ビット（ＣＳＢ）２４５として送出する。また、ＣＳＢ２４５を図９に示されているようにそのアドレス（ＡＤＤＲ［ＣＥＲ］）（これは、単一ビットから成るのが良い）でコントローライネーブルレジスタ２５０に記憶させる。また、ＣＳＢ２４５を外部マイクロコントローラ２４０に送る。
【００３８】
ＣＳＢ２４５が送出されると、今や、コントローラ１６０又は２４０のうちのどちらが問題の指令を実行するかどうかが分かり、かくして、それに応じて種々の措置を取る。ＣＳＢ＝“０”であって内部コントローラ１６０が示されている場合、そのコントローラ１６０がその指令を実行することを除き、達成されることが必要なことは殆ど無い。デフォルトとして、外部マイクロコントローラ２４０が内部コントローラ１６０による指令の実行とコンフリクトしないようにするため、外部コントローラ２４０に書き込まれたアービトレーション論理２４６は、ＣＳＢ＝０であることを検出すると、外部コントローラのバスドライバ２４２をディスエーブルにする（無効にする）。これとは対照的に、記憶されたコントローライネーブルレジスタビット２５０（アクティブロー信号）により内部コントローラバスドライバ２１２をイネーブルにする（有効にする）。内部コントローラ１６０がその指令を実行した後、システムは、次の指令を待ち、上述の方法が繰り返され、以下同様である。
【００３９】
しかしながらＣＳＢ＝“１”であり、外部マイクロコントローラ２４０が示されている場合、制御を一時的に外部マイクロコントローラ２４０にシフトすることができる余分のステップを実行する。具体的に説明すると、外部マイクロコントローラ内のアービトレーション論理２４６は、ＣＳＢ＝“１”であることの検出時に、これが制御中であることを認識し、そのバスドライバ２４２をイネーブルにする。これとは対照的に、内部コントローラバスドライバ２１２をディスエーブルにする。加うるに、ＣＳＢ＝“１”であることを認識すると、アービトレーション論理２４６は、バス１９０を介して指令レジスタ２２０のアドレス（ＡＤＤＲ［ＣＭＤ］）からの読み取りを要求することによりそのレジスタ２２０に記憶されている指令（即ち、その指令）を取り出す。外部マイクロコントローラ２４０は、その指令をいったん受け取ると、その指令を実行する。
【００４０】
その指令が外部マイクロコントローラ２４０によって実行されると、図１０に示されている残りのステップを次の指令の受け取りに先立つ内部コントローラ１６０への制御の戻しに差し向ける。指令の実行後、アービトレーション論理２４６は、今や、“０”をコントローライネーブルレジスタ２５０に書き込み、このコントローライネーブルレジスタは、バス１９０によりそのアドレスＡＤＤＲ［ＣＥＲ］でアクセス可能である。これにより、もう一度、内部コントローラ１６０のためのバスドライバ２１２がイネーブルになる。コントローライネーブルレジスタ２５０の上書きと同時に、アービトレーション論理２４６により、外部コントローラ２４０のためのバスドライバ２４２がディスエーブルになる。これにより、システムは内部コントローラ１６０がデフォルトによって制御を引き受けるその初期状態に復元し、その時点において、システムは、その次の指令を待ち、上述の方法が繰り返され、その他同様である。
【００４１】
図１０の流れは、内部及び外部コントローラ１６０，２４０が改良型集中化バスアーキテクチャ１５０に従ってコンフリクト無しに一緒に動作することができるようにするまさに一手法である。しかしながら、当業者であれば認識されるように、この同じ目的を達成する他の流れ及び他の回路が可能であり、従って、図示の内容は、単なる一例として理解されるべきである。
【００４２】
本発明の特定の実施形態を図示すると共に説明したが、上述の説明は、本発明をこれら実施形態に限定するものではないことは理解されるべきである。当業者にとっては明らかなように、本発明の精神及び範囲から逸脱することなく種々の変更及び改造を実施できる。かくして、本発明は、特許請求の範囲に記載された本発明の精神及び範囲に属する変形例、改造例及び均等例を含むものである。
【図１Ａ】
2010531207.tif 000003
【図１Ｂ】
2010531207.tif 000004
【図２】
2010531207.tif 000005
【図３】
2010531207.tif 000006
【図４】
2010531207.tif 000007
【図５】
2010531207.tif 000008
【図６】
2010531207.tif 000009
【図７】
2010531207.tif 000010
【図８】
2010531207.tif 000011
【図９】
2010531207.tif 000012
【図１０】
2010531207.tif 000013
【国際調査報告】
2010531207.tif 000014
2010531207.tif 000015
2010531207.tif 000016
2010531207.tif 000017
2010531207.tif 000018