FR 2505661 A1 19821119 FR 8208605 A 19820517 La présente invention concerne les dispositifs implantables d'assistance aux fonctions vitales et plus précisément les dispositifs implantables ayant des para- mètres réglables de sortie et utilisant un circuit à micro- processeur pour le réglage des fonctions de détection et de sortie. Il existe différents dispositifs qui peuvent être implantés dans un corps afin qu'ils remplissent en partie ou en totalité les fonctions naturelles vitales du corps Par exemple, de tels dispositifs peuvent être uti- lisés pour aider le coeur à entretenir un pompage continu nécessaire à l'entretien de la vie, pour commander les fonctions de la vessie, pour produire des contractions musculaires efficaces pour la lutte contre la scoliose, pour faciliter la lutte contre les impulsions nerveuses créatrices de douleurs et pour la commande de l'infusion de diverses solutions dans le corps De tels dispositifs peuvent être implantés dans des patients pendant de longues périodes et peuvent entretenir une fonction choisie pendant cette période en étant alimentés par une seule source d'énergie très réduite, habituellement une pile au lithium. Une pile de longue durée, par exemple du type au lithium, couramment disponible, a une capacité totale d'environ 3,2 Ah Pendant la durée nominale d'un dispositif implanté de stimulation qui est de sept années, une con- sommation moyenne maximale de courant d'environ 50 p A peut être maintenue Une consommation relativement élevée de courant peut être entretenue pendant de courtes périodes dans la mesure o la consommation moyenne reste suffisam- ment faible. Dans la génération de dispositifs d'assistance aux fonctions vitales actuellement en cours de développement, les circuits électroniques numériques remplacent les cir- cuits électroniques analogiques utilisés à l'origine La mise en oeuvre des techniques numériques permet la réali- sation de dispositifs d'assistance aux fonctions vitales qui ont une plus grande souplesse que lors de l'utilisation de dispositifs analogiques Les compteurs numériques et les registres de mémoire, combinés à des techniques per- fectionnées de communication d'information entre un dis- positif externe et un dispositif implanté, permettent la formation de dispositifs numériques capables de modifier les paramètres de sortie en fonction de diverses condi- tions physiologiques variables. Malgré les progrès effectués dans les circuits électroniques numériques, divers dispositifs spécialisés doivent encore être fabriqués puisque chaque dispositif ne fonctionne en général que suivant la séquence incorporée au dispositif Les critères physiologiques variables ne peuvent pas être facilement remplis sans modification de l'appareil implanté En outre, ces critères physiologiques variables du corps ne peuvent pas être analysés par des dispositifs implantés, avec une réponse créée en interac- tion avec l'analyse. L'électronique à mis au point des microproces- seurs qui sont des dispositifs qui comprennent les compo- sants électroniques nécessaires à l'exécution de calculs arithmétiques, dans des dimensions suffisamment faibles pour convenir aux dispositifs implantables Un microproces- seur peut recevoir des données de divers capteurs placés dans le corps, peut analyser les données et peut créer une réponse convenant à l'analyse particulière Un tel dispositif peut améliorer grandement les possibilités des dispositifs implantés d'assistance aux fonctions vitales. Cependant, ces dispositifs ne sont pas encore considérés comme acceptables étant donné que leur fonctionnement né- cessite une grande consommation d'énergie. Un exemple de microprocesseur réalisé en techno- logie CMOS (métal-oxyde-semi-conducteur complémentaire), du type actuellement disponible ayant la plus faible con- sommation d'énergie, nécessite encore jusqu'à 10 milliam- pères lors de l'exécution d'un sous-programme d'exploita- tion Une consommation d'énergie aussi importante est inac- ceptable dans un dispositif implantable. Bien qu'on connaisse certaines techniques de réduction de la consommation globale d'énergie électrique d'un microprocesseur, de telles techniques ne sont pas en général compatibles à un dispositif implanté d'assistance aux fonctions vitales Un dispositif qui convient doit exécuter des instructions d'une manière fiable et doit pouvoir vérifier indépendamment des instructions de fonc- tionnement afin d'être certain qu'un signal de sortie in- tempestif ou qu'une perte de signal de sortie n'existe pas. En outre, le dispositif doit pouvoir répondre à diverses conditions physiologiques externes afin qu'il reste utile. Il est aussi souhaitable que le sous-programme d'exploitation d'un tel dispositif implanté d'assistance aux fonctions vitales puisse être modifié en réalité Jus- qu'à présent, on a pu modifié certains paramètres mais non le sousprogramme d'exploitation lui-même Cependant, un dispositif programmable nécessite habituellement l'utili- sation de mémoires à accès direct dans lesquelles les instructions d'exploitation doivent être retirées de la mémoire puis renvoyées dans la mémoire, ces opérations nécessitant beaucoup plus d'énergie qu'une mémoire passive dans laquelle les instructions sont fixées Cependant, les mémoires passives à faible consommation d'énergie ne per- mettent pas la modification du sous-programme d'exploita- tion qui peut être obtenue à l'aide d'une mémoire à accès direct. L'invention concerne la résolution des problèmes posés et plus précisément un dispositif perfectionné d'as- sistance aux fonctions vitales mettant en oeuvre la techno- logie des microprocesseurs pour le contrôle et la commande du fonctionnement du dispositif d'assistance. L'invention concerne un dispositif d'assistance aux fonctions vitales, dans lequel un microprocesseur règle la réponse du dispositif à divers événements physiologiques externes et à des événements internes déterminés par une minuterie Le microprocesseur est destiné à utiliser la source très limitée d'énergie d'une pile par excitation des composants de la logique interne du processeur unique- ment à la suite d'événements choisis et pour l'exécution d'un sous-programme d'exploitation correspondant à l'événe- ment d'éveil A la fin de sous-programme, un nouveau jeu d'événements d'éveil est sélectionné et les composants in- ternes sont désexcités. Dans un mode de réalisation avantageux, un sti- mulateur cardiaque implantable a une consommation moyenne de courant par le microprocesseur inférieure à 50 p A et de préférence inférieure à 10 p A, et le coefficient d'utilisa- tion du processeur est de l'ordre de 10 % ou moins Des événements externes sont détectés afin que des signaux correspondants indiquent des événements tels que des bat- tements d'une oreillette ou d'un ventricule, un bruit et des battements tachycardiques Des rythmeurs internes peu- vent éveiller le processeur afin qu'il crée des ordres pulsés de sortie en vue de la détection d'événementsexternes pendant des intervallesphysiologiqueschoisis, et qu'il rétablisse divers caches d'événements à des intervalles choisis. L'apparition d'un événement d'éveil déclenche un sous-programme d'exploitation mémorisé correspondant à cet événement Ce sous-programme mémorise un nouveau jeu d'événements d'éveil avant sa fin Dans l'intervalle de temps compris entre la fin du sous-programme et un nouvel événement d'éveil, les composants internes du processeur sont désactivés et aucune énergie n'est consommée pour le sous-programme d'exploitation. Une autre réduction du courant moyen est obtenue par utilisation de plusieurs fréquences de comptage afin que le nombre de changements d'état soit minimum pendant les cycles de comptage Ainsi, les intervalles qui ne nécessitent pas une grande précision, par exemple pendant l'intervalle d'insensibilité, l'intervalle de bruit ou l'intervalle de détection, peuvent être minutés à des fréquences de comptage relativement faibles; les intervalles nécessitant une précision relativement élevée telle que la largeur des impulsions de simulation, peuvent être-minu- tés à l'aide de fréquences relativement élevées de comptage. Le microprocesseur peut avoir un sous-programme fixe d'exploitation ou il peut pouvoir introduire en réa- lité des changements de programme dans le dispositif im- planté Un premier programme d'exploitation peut être incor- poré à une mémoire passive afin que la consommation moyenne de courant soit faible Une mémoire programmable à-accès direct peut alors être introduite dans la séquence de la mémoire passive, à l'aide d'un registre de correction, l'apparition d'un nombre du programme correspondant à un nombre conservé dans ce registre provoquant l'exécution d'instructions de la mémoire à accès direct, si bien qu'il suffit que celle-ci ait une capacité relativement faible. L'invention concerne ainsi la commande d'un appareil implantable créant des signaux physiologiques de sortie à l'aide d'un microprocesseur. Elle concerne l'excitation des composants lo- giques internes du microprocesseur uniquement à la suite de l'une de conditions choisie d'éveil. Selon l'invention, le microprocesseur forme un nouveau jeu de conditions d'éveil relié à l'événement antérieur d'éveil. L'invention concerne aussi la mise en oeuvre d'une séquence d'exploitation destinée à commander et désexciter les composants du microprocesseur afin que la consommation moyenne de courant de l'appareil soit infé- rieur à 50 p A. Elle concerne aussi la réalisation d'un micro- processeur ayant un registre de cache d'éveil destiné à conserver un jeu choisi de conditions d'éveil et à per- mettre le fonctionnement des composants du microprocesseur uniquement à l'apparition d'une telle condition mémorisée. Elle concerne aussi la formation de plusieurs impulsions de rythme destinées à donner une précision voulue tout en réduisant au minimum le nombre d'impulsions créées. Elle concerne aussi la mise en oeuvre d'un sous-programme d'exploitation reprogrammable, une mémoire à accès direct permettant des changements de programme et un registre de correction permettant l'accès à cette mémoire pour des nombres déterminés du programme. D'autres caractéristiques et avantages de l'in- vention ressortiront mieux de la description qui va suivre, faite en référence aux dessins annexés sur lesquels: la figure 1 est un diagramme synoptique repré- sentant les interconnexions principales entre un microproces- seur et un stimulateur cardiaque associé; la figure 2 est un diagramme synoptique de l'architecture du microprocesseur; la figure 3 est un diagramme des temps repré- sentant les événements suivant une impulsion de stimula- tion; la figure 4 est un diagramme des temps des événements suivant une détection; la figure 5 est un organigramme d'initialisa- tion de l'appareil après la mise en route ou la détection d'une panne; la figure 6 est un organigramme représentant la formation d'une impulsion de sortie; la figure 7 est un organigramme de la détermi- nation d'un événement d'éveil; la figure 8 est un organigramme de détection de bruit; la figure 9 est un organigramme de détection et de traitement de tachycardie; la figure 10 est un organigramme de la créa- tion d'une impulsion de sortie dont plusieurs paramètres peuvent être choisis; la figure Il est un organigramme de la remise à zéro de l'appareil après une condition temporaire de sortie; et la figure 12 est un organigramme du chargement des paramètres des impulsions et de la télémétrie des données. Comme indiqué précédemment, il existe des dispo- sitifs implantables destinés à aider un certain nombre de fonctions vitales ou du corps Divers procédés et appa- reils décrits dans la suite du présent mémoire peuvent être utilisés dans divers dispositifs pour l'incorporation d'un microprocesseur dans le dispositif implantable, don- nant la souplesse voulue La description qui suit se limite cependant à l'adaptation particulière d'un microprocesseur à un stimulateur cardiaque implantable. La figure 1 est un diagramme synoptique du cir- cuit formant un stimulateur cardiaque implantable La technologie numérique classique convient pour la formation de l'appareil réel 10, celui-ci ayant des paramètres de sortie qui peuvent être réglés par des instructions numé- riques transmises par le microprocesseur 12 ou, dans un appareil classique, par un appareil extérieur au corps, avec transmission de signaux de commande de paramètres. Comme l'indique la figure 1 cependant, le micro- processeur 12 est logé dans le dispositif implantable afin qu'il commande le circuit du stimulateur 10 Un seul cir- cuit 16 d'horloge est avantageusement utilisé pour la syn- chronisation du circuit de l'appareil 10 et du microproces- seur 12 Ce dernier reçoit les signaux 26 du stimulateur 10 après des événements externes Le microprocesseur 12 transmet des signaux 32 de commande d'impulsiorsvers le stimulateur afin qu'il règle les paramètres des impulsions tels que leur largeur, leur fréquence ou leur amplitude. En outre, des données peuvent être transférées en série en 24 entre le stimulateur 10 et le microprocesseur 12 afin qu'une communication télémétrique puisse être établie avec un appareil externe Le cas échéant, le microproces- seur 12 peut avoir une capacité supplémentaire 14 de mé- moire, externe à la puce 12 du microprocesseur, permettant une expansion de la programmation ou du traitement de données. Dans un mode de réalisation avantageux, les im- pulsions fondamentales d'horloge sont créées à 100 Hz par l'horloge 16 et transmises en 20 au microprocesseur 12. Celui-ci peut alors avantageusement créer des impulsions synchronisées à plus faible fréquence, transmises en 22 au stimulateur 10 pour des fonctions choisies. L'entrée de données et la sortie de données télémétriques peuvent être assurées de façon générale par une bobine 18 ou des bobines différentes Un commuta- teur 28 à lame est incorporé de manière classique afin qu'il soit commandé pendant les événements télémétriques. Le commutateur 28 transmet un signal positif destiné à être utilisé par l'appareil La commande télémétrique 30 transmet de manière analogue des signaux de commande du transfert des données. Lors du fonctionnement, le microprocesseur 12 accepte les signaux détectés 26 et les analyse pendant des intervalles choisis d'éveil comme indiqué dans la suite du présent mémoire, et il transmet des signaux 32 de com- mande au stimulateur 10 à la suite de l'événement d'éveil détecté et analysé Après transfert télémétrique, le sti- mulateur 10 doit être alimenté en série en 24 en paramètres d'exploitation de manière que l'information du registre qui a été transmise en série soit renouvelée Le stimula- teur 10 peut créer une impulsion de sortie transmise par un cathéter 34 correspondant aux paramètres mémorisés d' impulsions. La figure 2 est un diagramme synoptique des composants du microprocesseur 36 ayant les caractéris- tiques décrites dans la suite du présent mémoire Les composants du microprocesseur 36 exécutent un sous- programme mémorisé d'analyse de diverses données détec- tées et d'exécution d'opérations logiques demandées par le sous-programme d'exploitation Ainsi, ce dernier est conservé de façon générale dans une mémoire 74 qui peut être de type passif L'opération voulue est choisie par un compteur 78 de programme et elle est transmise au registre 64 d'instruction par la ligne commune interne 72 de données L'instruction est décodée en 62 et traitée afin qu'elle forme des signaux de commande d'une unité logique arithmétique 66 et d'échange de données avec le registre 68 de travail et divers registres internes ainsi que des mémoires externes passives et/ou à accès direct. L'unité 66 effectue la manipulation indiquée par le pro- gramme et par la présence d'étiquettes éventuellement déterminées par le décodeur 62 Comme indiqué dans la suite, un registre 82 de correction peut aussi être utilisé pour la commande de l'unité 66 Les données et les instruc- tions peuvent être échangées entre le microprocesseur 36 et divers canaux tampons 80 ', 82 'et 84 'ou un canal clas- sique d'entrée-sortie 81. La description qui précède concerne l'architec- ture d'un microprocesseur quelconque et elle peut être réalisée avec diverses configurations, cette architecture n'étant pas l'objet de l'invention Les caractéristiques de l'invention concernent l'éveil assuré par un registre 56 de cache d'éveil et la reprogrammation permise par le registre 82 de correction Ces caractéristiques sont dé- crites en détail. Au cours d'opérations classiques d'un micropro- cesseur, le sous-programme assure la progression dans la séquence du programme déterminé par un circuit de rythme et de commande, placé dans un compteur de programme Ainsi, un microprocesseur classiques teste constamment la pré- sence d'étiquettes et exécute une analyse de données Un tel fonctionnement en boucle fermée n'est pas acceptable dans un microprocesseur implanté étant donné la grande consommation de courant nécessaire à ce déroulement cyclique continu du programme. La réalisation d'un microprocesseur convenant- à une implantation nécessite la réduction de cette con- sommation de courant Une réduction importante peut être obtenue par excitation ou éveil du microprocesseur 36 aussi peu souvent que possible, par traitement de l'information déterminée par l'événement d'éveil, par réglage du micro- processeur 36 pour un autre événement d'éveil, puis par exécution d'une demande de sommeil désexcitant le micro- processeur 36 A cet égard, une première instruction règle le microprocesseur 36 et le cache 56 d'éveil à un jeu de conditions d'éveil déterminé par l'événement anté- rieur d'éveil et par l'analyse des conditions effectuées par le microprocesseur 36, et une seconde instruction provoque le passage du microprocesseur 36 à un état de sommeil Les composants logiques internes sont autant que possible déconnectés des circuits de rythme et de commande et aucun des états de ces composants n'est mo- difié pendant l'état de sommeil. Comme indiqué dans le présent mémoire, une instruction précédant juste la demande de sommeil trans- met un jeu d'instructions au registre 56 de cache d'éveil correspondant à un jeu choisi de conditions d'éveil Par exemple, le microprocesseur 36 peut s'éveiller afin de tester la fin de la période d'insensibilité cardique à la suite du battement détecté d'un ventricule et/ou d'une oreillette, afin qu'il calcule les paramètres d'une im- pulsion de sortie, qu'il analyse la présence de bruit dans les signaux détectés et qu'il remette à zéro les minuteries d'éveil à des intervalles choisis Dans le cas d'un stimu- lateur cardiaque, on peut obtenir un coefficient d'utili- sation inférieur à 10 % environ, ce coefficient étant le rapport du temps de fonctionnement des composants dans un intervalle choisi au temps total Une séquence avanta- geuse d'exploitation donnant ce coefficient d'utilisation est décrite dans la suite en référence aux figures 5 à 12. Comme l'indique la figure 2, le registre 56 est chargé par un signal codé correspondant au jeu voulu d'événements d'éveil Ce registre 56 reçoit aussi des si- gnaux des divers rythmeurs 50 à 55 qui peuvent être internes au microprocesseur 36 et de la sortie 80 de l'amplifica- teur de détection du circuit du stimulateur Une étiquette établie, provenant d'un rythmeur 50 à 55 ou de la sortie correspondant à un bit de données dans le registre 56 il crée un signal de rythme qui permet aux circuits logiques internes de répondre aux impulsions d'horloge et qui pour- suit une séquence d'exploitation correspondant à la condi- tion réelle d'éveil. Divers compteurs 50-55 sont destinés à corres- pondre à des intervalles choisis reliés aux caractéris- tiques physiologiques du coeur Un rythmeur 50-55 est avan- tageusement mis en route par chargement d'un nombre com- plémentaire du nombre voulu, le compteur progressant afin qu'il forme un bit de retenue lors de la fin du comptage. Evidemment, le compteur peut recevoir le nombre voulu et décompter à zéro le cas échéant Les intervalles comptés voulus sont déterminés par le microprocesseur 36 et les rythmeurs 50 à 55 sont chargés juste avant une période de sommeil. Les rythmeurs 50 à 55 peuvent recevoir des impulsions d'horloge à des fréquences différentes afin que l'énergie soit économisée Les intervalles voulus de comptage recouvrent diverses périodes réelles et les divers intervalles ont divers critères de précision Ainsi, dans un mode de réalisation avantageux, des intervalles de comptage de 0,01 à 81,92 millisecondes sont utilisés pour des périodes de comptage de 2,56 millisecondes à ,97 secondes Un circuit 38 diviseur d'horloge princi- pale donne les fréquences voulues à partir d'un seul signal 40 d'entrée d'horloge Le tableau qui suit indique la corrélation avantageuse entre l'information de com- mande et les fréquences d'horloge disponibles à la sortie du diviseur 38. TABLEAU Rythmeur Fréquences disponibles Fonction d'horloge (k Hz) TO 100, 50, 25, 12,5 création d'impulsioi de sortie Tl 0,0977, 0,0488, 0,0244, intervalle de détec- 0,0122 tion de bruit, pé- riode d'insensibi- lité, intervalle de tachycardie, inter- valle entre impul- sion de stimulation ou de détection TABLEAU (suite) Rythmeur Fréquences disponibles Fonction d'horloge (k Hz) T 2 1,56, 0,78, 0,39, 0,195 intervalle QT, in- tervalle de bruit, décharge du con- densateur, limite de fréquence en mode déclenché Il faut maintenant noter qu'un microprocesseur en technique CMOS concerne un état donné et de l'énergie n'est nécessaire que pour le changement d'un état à un autre L'énergie est ainsi conservée par réduction au mi- nimum du nombre d'impulsions nécessaires aux divers comp- tages Evidemment, le même nombre total de pas de programme est nécessaire à un sous-programme donné d'exploitation dans le microprocesseur 36 si bien qu'un changement de fréquence a peu d'effet sur l'énergie consommée par le circuit interne du microprocesseur 36 mais un effet im- portant sur l'énergie consommée par le circuit de rythme 50-55 et les composants externes. Un autre sous-programme d'économie d'énergie peut être aussi incorporé au circuit logique interne Un compteur classique de programme peut souvent exécuter des instructions d'adresse suivant une séquence binaire. On peut montrer qu'un compteur de longueur infinie, don- nant un nombre binaire rectiligne, a deux changements d'état pour chaque changement élémentaire d'unité Lors- qu'on utilise une séquence différente de fonctionnement, le nombre de changements d'état peut être réduit pour chaque changement élémentaire, jusqu'à un seul changement d'état L'opération peut être réalisée par exécution d'instructions en code Grey dans lequel, par définition, * il ne faut qu'un seul changement d'état par changement élémentaire. Un registre d'adresse n'a pas une longueur infinie si bien que le maximum d'économie ne peut pas être réalisé sur les changements d'état Néanmoins, on considère que le fonctionnement en code Grey constitue une autre technique d'adaptation d'un microprocesseur à un stimulateur implantable. Comme l'indique la figure 2, six rythmeurs -55 correspondent aux divers événements physiologiques et événements du stimulateur Le rythmeur 50 Tl peut compter l'intervalle global et, comme indiqué dans le ta- bleau, il peut compter pendant de longues périodes, par quantités relativement grandes Un autre rythmeur 51 T 2 peut régler l'intervalle total d'insensibilité, c'est-à- dire l'intervalle pendant lequel une impulsion de stimula- tion ne provoque pas une réponse correspondante du coeur, afin qu'un temps mémorisé pendant lequel aucun signal n'est prévu soit déterminé Un autre rythmeur 52 T 3 peut contrôler les événements de détection pendant un inter- valle choisi et permettre au microprocesseur 36 de dé- terminer si un événement détecté est un battement car- diaque ou un bruit Un rythmeur 53 T 4 peut commander un commutateur du circuit stimulateur afin qu'il améliore la décharge du condensateur dans le circuit du stimula- teur 10 Un ryhtmeur 54 T 5 peut donner une fonction de limitation de fréquence lorsque le circuit stimulateur fonctionne en mode synchrone. Enfin, le rythmeur 55 TO peut assurer le comptage de la durée d'une impulsion de sortie Cette durée est de préférence faible et la précision voulue de commande est relativement élevée Ainsi, le rythmeur TO peut fonctionner à la fréquence d'horloge disponible la plus élevée, de préférence 100 k Hz, donnant des variations élémentaires aussi faibles que 0,01 millisecondes. En plus des événements synchronisés-d'éveil, divers signaux 80 d'événements détectés peuvent provoquer l'éveil du microprocesseur 36 Ainsi, des caches d'éveil à la suite d'événements spécifiques peuvent être associés aux caches synchronisés d'éveil du microprocesseur 36 afin que des événements détectés permettent l'éveil du microproces'seur Ces signaux détectés 80 peuvent corres- pondre à un battement d'une oreillette et/ou d'un ventricule. Les caches d'événements détectés peuvent éveiller le mi- croprocesseur 36 lorsque le-bit convenable du registre 56 est établi pendant la demande antérieure de sommeil. Le microprocesseur 36, comme indiqué précédem- ment, peut exécuter tout sous-programme d'exploitation conservé dans la mémoire de programme qui lui est associée. Les pas de programme peuvent être conservés dans une mé- moire passive 74 ou à accès direct 76 Cependant, l'exécu- tion d'un programme de la mémoire 76 peut nécessiter l'extraction de l'instruction de la mémoire 76 et son retour à un emplacement de celle-ci L'exécution d'une instruction d'une mémoire passive 74 ne nécessite que le transfert de l'instruction à un registre de travail tel que le registre 68 La mémoire passive conserve l'instruction sans autre action du programme De plus, les mémoires à accès direct du commerce ont plus de composants que les mémoires pas- sives si bien qu'un changement donné d'état nécessite plus d'énergie dansune mémoire à accès direct que dans une mémoire passive Ainsi, l'exécution d'uns instruction de la mémoire 76 nécessite plus d'énergie que celle d'une instruction de la mémoire 74. Cependant, il est clair aussi que les instruc- tions de la mémoire passive 74 ne peuvent pas être modifiées. De plus, lorsqu'un dispositif implantable a été implanté, il n'est plus accessible et ne permet pas une substitu- tion de la mémoire passive Ainsi, bien que l'incorpora- tion d'un microprocesseur 36 à un dispositif implantable de stimulation d'une fonction vitale augmente les possi- bilités de celui-ci en réponse à diverses conditions phy- siologiques variables, un dispositif à mémoire passive ne peut que continuer à fonctionner avec un sous-programme fixe d'exploitation. Il existe plusieurs configurations de stimula- teur cardiaque transmettant des impulsions modifiables de sortie du stimulateur Divers paramètres des impulsions tels que la fréquence, la largeur et l'amplitude, peuvent être modifiés de temps en temps, par transmission de signaux externes Cependant, seuls les paramètres peuvent être mo- difiés par l'appareillage externe Ces dispositifs ont été appelés "stimulateurs programmables" alors que, en réalité, une programmation réelle, par modification du sous-programme d'exploitation n'est pas possible. Comme l'indique la figure 2, le registre 82 de correction est incorporé au microprocesseur 36 et une mémoire à accès direct 76 et 84 peut être externe ou in- terne au microprocesseur Le registre 82 permet de façon originale une reprogrammation du stimulateur, comme indiqué dans la suite du présent mémoire Un changement réel du programme d'exploitation du dispositif implanté peut être réalisé afin que les changements des critères physiolo- giques soient compensés sans que le dispositif doive être extrait. Au cours d'une opération fondamentale, un chan- gement de programme peut être communiqué au microproces- seur 36, de préférence par mise en oeuvre du procédé et de l'appareil décrits dans la demande de brevet des Etats- Unis d'Amérique N O 972 231 déposée par Calfee et al, se- 1 Dn lesquels un signal numérique vérifié peut être trans- mis par un dispositif externe à un dispositif interne implanté Ce signal peut éveiller le microprocesseur 36 afin qu'il permette une reprogrammation par l'intermédiaire des canaux séries 82 et 84 et du registre 78 Le registre 82 peut recevoir un nombre de programme correspondant à une partie du sous-programme d'exploitation qui doit être modifié Le sous-programme modifié est alors conservé à. une adresse de la mémoire à accès direct 76 ou 84 Lorsque le compteur 78 de programme atteint un nombre correspondant à celui du registre 82, le sous-programme d'exploitation passe d'abord à une adresse initiale de la mémoire à accès direct 76 qui contient alors l'adresse du sous-programme mémorisé qui doit être exécutée La nouvelle instruction de la mémoire à accès direct 76 ou 84 est exécutée jus- qu'à la fin du sous-programme d'exploitation En général, le dernier sousprogramme d'exploitation de la mémoire 76 ou 84 redonne la commande à un autre emplacement de la mé- moire passive 74. Les instructions des mémoires 76 et 84 peuvent interrompre le programme de la mémoire 74 à plusieurs pas du programme Ainsi, l'opération finale d'une séquence de la mémoire 76 ou 84 peut être le chargement dans le regis- tre 82 du numéro du pas suivant auquel le sous-programme d'exploitation de la mémoire 76 ou 84 doit remplacer le sous-programme de la mémoire 74 La possibilité de repro- grammation du dispositif est déterminée par la possibilité de la pile à assurer la programmation de la mémoire à accès 76 et 84 et le traitement des espaces correspondants des bits réservés dans les mémoires 76 et 84. Lors de l'utilisation de la mémoire active 76 et 84, l'appareil comporte avantageusement des instructions d'exploitation qui vérifient au moins une caractéristique de l'octet d'instruction Dans un mode de réalisation avan- tageux, la caractéristique qui doit être vérifiée est la parité de l'instruction Lorsqu'une erreur est introduite, il est très probable qu'un seul bit est affecté et qu'une vérification de parité révèle l'erreur La programmation peut être réalisée avec un nombre pair de bits dans chaque octet d'instruction Ensuite, le bit 7 du premier octet de chaque instruction peut être réservé comme bit de parité afin que le nombre total de bits à 1 soit pair. Lorsqu'une vérification de parité indique une erreur d'instruction, le compteur de programme passezà un programme de stimulation à fréquence fixe et y reste jusqu'à ce que le contenu de la mémoire puisse être interrogé et l'erreur corrigée. Les figures 3 et 4 représentent sous forme de diagramme des temps les divers événements synchronisés observés après un événement cardiaque choisi La figure 3 concerne en particulier les événements synchronisés d'éveil suivant la transmission d'une impulsion cardiaque par le stimulateur La figure 4 représente la série d'événements synchronisés suivant un événement externe détecté qui peut être par exemple une impulsion cardiaque d'origine natu- relle Comme-indiqué précédemment, le microprocesseur n'est activé qu'à la suite d'événements choisis, soit des inter- valles synchronisés soit des événements externes, et il est en sommeil entre ces événements afin que la consomma- tion d'énergie reste comprise entre des limites moyennes acceptables. La figure 3 représente une série d'événements synchronisés suivant la transmission d'une impulsion de stimulation par le circuit du stimulateur 10 (figure 1). Après la transmission d'une impulsion au fil de sortie comme indiqué par la référence 86, il existe un intervalle 88 de décharge du condensateur créé par le corps du pa- tient et le fil d'électrode implanté Après l'intervalle 88 de décharge, l'intervalle 90 d'insensibilité cardiaque est chargé dans un rythmeur La période d'insensibilité d'un coeur est celle pendant laquelle les divers nerfs stimulés sont dépolarisés et ne peuvent pas répondre à une impulsion de stimulation L'intervalle minuté 90 est réglable en fonction de la réponse physiologique réelle prévue du patient. Après cette période 90, les rythmeurs sont chargés par divers intervalles synchronisés Un intervalle QT 92 de temps de repos est destiné à donner une indication de l'écoulement d'une période choisie pendant laquelle aucun événement cardiaque n'est détecté Parallèlement à cette période 92, un intervalle 94 de bruit et un inter- valle 96 de détection de tachycardie sont établis comme décrit dans la suite du présent mémoire. Ainsi, pendant l'intervalle 92, trois rythmeurs sont commandés afin qu'ils éveillent le processeur à des moments choisis Pendant les intervalles, les événements cardiaques sont détectés et des bascules sont établies afin qu'elles déterminent si la condition indiquée, c'est- à-dire le bruit, la tachycardie ou le battement cardiaque, a apparu Lorsqu'un événement cardiaque apparaît pendant l'intervalle 92, le rythmeur QT est remis à zéro afin qu'il commence un autre intervalle 92 Ainsi, cet intervalle 92 peut continuer à être remis à zéro à moins qu'il s'écoule 41 millisecondes environ sans détection d'un signal d'en- trée Cette période remet en fait à zéro le début de l'in- tervalle final 92 jusqu'à la fin d'une onde "T" suivant l'événement stimulé De cette manière, une période varia- ble d'insensibilité est obtenue et est adaptée à l'empla- cement de l'onde "T" dans des conditions physiologiques variables. L'intervalle 96 de tachycardie est alors compté et le processeur examine les divers événements détectés comme décrit dans la suite du présent mémoire, afin qu'il détermine la présence d'une tachycardie Cette présence peut simplement être conservée à un emplacement choisi de mé- moire en vue d'une interrogation ultérieure ou il peut déclencher un sousprogramme d'arrêt de tachycardie le cas échéant A la fin de cet intervalle 96, un intervalle 1 de détection 98 est chargé dans le rythmeur pour la séquence finale de synchronisation, pendant laquelle un battement ventriculaire spontané est détecté ou à la fin duquel une autre impulsion 86 de stimulation est créée. Parallèlement à l'intervalle 96 et à une partie au moins de l'intervalle 98, un intervalle 94 de bruit est destiné à collecter l'information d'évaluation des évé- nements détectés Ces divers événements détectés par le circuit du stimulateur peuvent être une onde cardiaque réelle ou du bruit introduit à partir de signaux électriques externes ou d'autres signaux électriques créés dans le corps Les signaux reçus sont ainsi évalués afin que seule une forme d'onde choisie puisse activer le sous-programme d'exploitation du stimulateur correspondant à une contrac- tion ventriculaire spontanée Si les données mémorisées sont traitées et si une détermination de bruit est effectuée, un événement 86 de stimulation a lieu à la fin de l'inter- valle 94 de bruit. La figure 4 représente diverses conditions de synchronisme lorsqu'un événement 100 de détection apparaît. Comme indiqué précédemment, l'événement 100 peut être une contraction ventriculaire spontanée réelle ou du bruit. Ainsi, l'événement 100 de détection peut apparaître pen- dant l'intervalle 94 de bruit et, dans ce cas, l'inter- valle 94 se poursuit simplement jusqu'à la fin L'événe- ment 100 de détection provoque alors le débit d'événements synchronisés sous forme d'un autre intervalle 102 de dé- tection de bruit et d'une nouvelle période d'insensibilité 104 L'intervalle 102 accumule des événements détectés supplémentaires A la fin de l'intervalle 102, le nombre d'événements est alors examiné afin que du bruit soit dé-, terminé La durée de l'intervalle et le nombre d'événements destinés à l'identification du bruit sont des paramètres varaibles. L'intervalle 104 d'insensibilité est de façon générale le même- que l'intervalle 90 décrit précédemment et il est suivit de l'intervalle QT 106 et d'un intervalle correspondant de bruit 108 et d'un intervalle 110 de dé- tection de tachycardie Ces intervalles correspondent tous à des opérations sensiblement comme décrit précédemment en référence à la figure 3. Après la fin de l'intervalle 110 de détection de tachycardie, le rythmeur particulier est rechargé d'un intervalle II 112 Il faut noter que l'intervalle 112 n'est pas identique à l'intervalle 98 car la priorité du circuit est polarisée en faveur des contractions ventriculaires spontanées Lorsqu'une contraction spontanée a eu lieu, le circuit est pratiquement remis à zéro dans l'attente d'une autre contraction spontanée En conséquence, l'intervalle 112 est plus long que l'intervalle 98 Dans un mode de réalisation avantageux, l'intervalle 112 est réglé à 60 battements par minute environ, cette fréquence suffisant à l'entretien de l'activité mais permettant à une contrac- tion ventriculaire spontanée de disposer d'une période maximale, si elle doit apparaître Si une telle contrac- tion spontanée n'a pas lieu, c'est-à-dire si un événement détecté suivant 100 n'apparaît pas, un événement stimulé 86 est déclenché et la séquence de la figure 3 est à nouveau mise en oeuvre, y compris l'intervalle 98. Comme indiqué précédemment, l'appareil trans- mettant les signaux de rythme et permettant le traitement est de préférence un microprocesseur placé dans une seule "puce" et ayant l'architecture correspondant à la descrip- tion de la figure 1 Le microprocesseur traite alors les divers événements et détermine les conditions convenables de synchronisation pour le chargement des rythmeurs et le déclenchement d'une impulsion de stimulation au moment opportun La description de ces opérations figure dans la suite du présent mémoire en référence à divers organi- grammes Il faut noter que ceux-ci peuvent être mis sous forme de divers programmes en langage machine, pouvant être facilement préparés par les hommes du métier Les or- ganigrammes indiquent cependant les caractéristiques de l'invention qui concernent les stimulateurs cardiaques et qui permettent la réalisation d'un stimulateur implantable ayant les possibilités indiquées précédemment. La figure 5 représente un sous-programme d'ini- tialisation du stimulateur lorsque celui-ci est excité pour la première fois ou après découverte d'une erreur de parité comme décrit dans la suite Les paramètres de fonc- tionnement sont initialisés en 114 dans des emplacements choisis de mémoire du processeur et celui-ci reçoit une instruction de chargement 116 des paramètres linéaires d'exploitation dans le circuit 10 du stimulateur (voir figure 1) La largeur d'impulsion est réglée en 118 et le rythmeur Tl est chargé en 120 de la fréquence des impul- sions A la fin de la période Tl, un sous-programme de stimulation (voir figure 6) est appelé en 122 et le proces- seur est mis en sommeil en 124 et le temps Tl s'écoule à nouveau Ainsi, un simple sous-programme de stimulation à fréquence fixe est d'abord établi. Comme indiqué dans la suite, un sous-programme est destiné à l'exécution de l'événement de stimulation comme indiqué sur la figure 6 Ainsi, le sous-programme 126 est appelé par le programme principal afin qu'il déclenche une impulsion de sortie Le processeur prépare une porte de transmission de signal de sortie dans le stimulateur (voir figure 1), établit le cache d'éveil correspondant au contenu du rythmeur TO en 128, charge en 130 le contenu du registre d'exploitation X dans le rythmeur TO qui dé- clenche la création d'une impulsion de sortie Le proces- seur revient alors à la condition de sommeil 132 Lorsque le rythmeur TO a fini de compter, la porte du stimulateur 10 (figure 1) cesse d'être ouverte en 134 et le processeur est alors éveillé afin qu'il commande un commutateur élec- tronique en 136 afin que les éléments capacitifs chargés pendant l'impulsion de sortie se déchargent, et il charge en 138 l'intervalle de décharge du condensateur dans le rythmeur T 4 Le processeur revient ensuite à l'état de sommeil en 140 Lorsque le rythmeur T 4 a cessé de fonction- ner, la décharge du condensateur est interrompue en 142 et le cache d'éveil T 4 cesse d'être validé en 144 La com- mande du processeur revient en 146 au sous-programme principal d'exploitation. Les figures 7 à 12 représentent un programne avantageux d'exploitation mettant en oeuvre les divers intervalles représentés sur les figures 3 et 4 Sur la figure 7, il est commode de commencer par la description du début de la période de rythme d'insensibilité Le sti- mulateur peut être en mode synchrone 148 ou en mode de stimulation 156 à fréquence fixe. Lorsque le mode synchrone de fonctionnement est choisi, le processeur d'éveille à la fin de la période d'insensibilité et l'intervalle QT est chargé en 150 dans le rythmeur T 2 Le cache d'éveil est validé en 152 pour le comptage de l'intervalle T 2 ou l'apparition d'un signal ventriculaire détecté au niveau d'une bascule LA Une étiquette est établie en 154 afin qu'elle indique la sélec- tion du mode de fonctionnement synchrone Simultanément, le rythmeur T 3 d'intervalle de bruit est établi en 157 et le cache d'éveil convenable est établi en 158 pour le rythmeur T 3 Comme l'indique la figure 7, une autre bas- cule LD cesse d'être validée pendant le pas 158 pour des raisons de compatibilité du programme. Ensuite, la minuterie Ti d'intervalle de ta- chycardie est chargée en 160 L'intervalle de détection de tachycardie peut varier A cet égard, le mode de détec- tion de tachycardie peut être en fait contourné le cas échéant par réglage de l'intervalle a un temp inférieur à l'intervalle QT Enfin, le processeur efface en 162 tout signal d'entrée qui peut être présent dans la bas- cule d'éveil LA et passe en sommeil en 164, les conditions d'éveil étant alors établies. Il faut noter qu'un mode de stimulation à fré- quence fixe 156 est commandé par passage au sous-programme d'exploitation au pas 157 Les registres d'éveil de bas- cule LA et le rythmeur T 2 ne sont pas validés pendant un mode de stimulation à fréquence fixe puisque, par défini- tion, une impulsion est transmise à intervalle fixe après une première impulsion. Lorsque le processeur reçoit un signal repré- sentatif d'un événement d'éveil, le registre d'éveil est interrogé afin que la nature de la condition d'éveil soit déterminée La bascule LA est interrogée en 166 En l'ab- sence d'un événement détecté, le rythmeur T 1 est interrogé en 168 pour la détermination de la fin de l'intervalle de tachycardie Si le rythmeur Tl n'a pas fini de fonction- ner, le rythmeur T 2 est interrogé en 170 afin que la fin de l'intervalle de détection de bruit soit déterminée Si le rythmeur T 2 a cessé de compter, l'intervalle QT est terminé et une étiquette Bl progresse en 172 afin qu'elle indique cet événement Le processeur inhibe en 174 l'éveil T 2 mais conserve une condition d'éveil à la suite d'événe- ments détectés par l'intermédiaire de la bascule LA Le processeur repasse en sommeil en 164. Lorsque l'événement suivant d'éveil apparaît, le processeur interroge à nouveau la bascule LA en 166, le rythmeur Tl en 168 et le rythmeur T 2 en 170 Si ce der- nier a cessé de fonctionner, seul le rythmeur T 3 d'inter- valle de bruit reste et le processeur inhibe ensuite en 176 la condition d'éveil provenant du rythmeur T 3 et de la bascule LD Le processeur détermine alors si la pré- sence du bruit est indiquée ou si la période T 3 s'est écoulée sans la fin d'écoulement de l'intervalle QT Ainsi, l'étiquette Bl est interrogée en 178 Si elle se trouve à zéro, elle indique que l'intervalle de bruit est terminé avant la fin de l'intervalle QT,-et cette condition est interprétée comme une condition de bruit si bien que le programme passe en 184 à une condition de stimulation (voir figure 10) Si l'étiquette Bl n'est pas à zéro, l'intervalle QT est terminé et l'intervalle de bruit aussi, et le processeur interroge un compteur d'événement détecté B 2 en 180 Si le compteur B 2 a fait progresser le nombre nécessaire à une condition de bruit, le processeur signale aussi en 184 un événement de stimulation (voir figure 10). Si une condition de bruit n'est pas indiquée, l'étiquette Bl est modifiée comme indiqué en 182 Ainsi, si Bl n'est pas égal à 2, l'intervalle QT et l'intervalle de bruit sont terminés Le processeur repasse en sommeil en 164. A l'événement suivant d'éveil, le processeur interroge à nouveau la bascule LA en 166 et le rythmeur Tl en 168 qui correspond à l'intervalle de tachycardie En- suite, si le rythmeur Tl a cessé de fonctionner le pro- cesseur détermine l'existence d'une tachycardie Le comp- teur B 2 est interrogé en 186 car il a collecté les événements dé- tectés comme indiqué S'il indique la présence d'événements détectés, le contenu est comparé à la condition de bruit en 189 Si une telle condition est indiquée, le signal est traité en 210, 212 afin que l'éventualité du déclen- chement d'une séquence de stimulation soit déterminée (voir figure 8) Si le compteur B 2 n'indique pas de bruit mais indique néanmoins des événements détectés dans l'in- tervalle de tachycardie, la séquence d'analyse de tachy- cardie est commandée en 218 (voir figure 9). Si le compteur est à zéro, c'est-à-dire en l'absence d'événements détectés, le compteur B 3 est inter- rogé en 188 afin qu'il détermine si la fin de la période Tl indique un intervalle de tachycardie ou un intervalle de stimulation Si le compteur B 3 n'est pas à zéro, l'intervalle de tachycardie est déterminé, le compteur B 3 est remis à zéro en 190 et l'intervalle convenable pro- venant du registre d'intervalle est chargé en 190 dans le rythmeur Tl, et le stimulateur passe en sommeil L'in- tervalle chargé en 190 dans le rythmeur Tl est l'intervalle de stimulation ou l'intervalle détecté chargé dans le re- gistre d'intervalle après la détermination de l'événement comme décrit dans la suite Ainsi, pendant la séquence suivante, le compteur B 3 est à zéro en l'absence d'évé- nementsintermédiaires,indiquant que la totalité de la pé- riode détectée s'est écoulée sans détection d'un signal cardiaque convenable et une séquence de stimulation est déclenchée en 184 (figure 10). Enfin, si l'interrogation 166 de la bascule LA indique qu'un événement détecté a eu lieu, la séquence de la figure 8 est déclenchée Le compteur B 2 d'événement détecté est interrogé en 192 S'il est à zéro, l'évément détecté doit être examiné afin que sa nature soit déter- minée Le compteur Bl est interrogé en 194 et détermine si l'intervalle QD s'est écoulé Si le compteur Bl est à zéro, l'intervalle QT ne s'est pas écoulé et le rythmeur T 2 est rechargé en 196 de l'intervalle QT complet Ainsi, l'apparition d'un événement détecté dans l'intervalle QT ne provoque pas la progression du compteur de bruit mais remet le rythmeur T 2 à zéro Cela se poursuit jusqu'à la fin du comptage du rythmeur T 2 et le compteur Bl pro- gresse A la fin de l'intervalle QT, le premier événement détecté charge en 198 le registre d'intervalle du nombre de la période d'intervalle qui suit un événement détecté. En mode synchrone, le battement ventriculaire peut être utilisé pour l'inhibition dela production d'une impulsion par le stimulateur ou pour la synchronisation de la production d'une impulsion, en mode "stimulé déclenché". Si le mode déclenché a été choisi, le rythmeur T 5 règle la production de l'impulsion après le battement ventri- culaire et le rythmeur T 5 est interrogé en 200 Si ce rythmeur n'a pas compté toute sa période, la période d'insensibilité est chargée en 206 dans le rythmeur Tl et le compteur B 2 d'événement progresse en 208 Si le rythmeur T 5 a cessé de compter, le mode de fonctionnement est interrogé en 202. Si une vérification du mode détermine la présence d'une parité paire, le mode stimulé déclenché est choisi pour l'excitation du signal de sortie du stimulateur (voir figure 10) (en 204). S'il n'y a pas d'indication du mode déclenché, l'intervalle d'insensiblité est chargé en 206 dans le rythmeur Tl, le compteur B 2 progresse et le stimulateur passe à nouveau en sommeil en 164 A l'apparition d'un événement détecté suivant 166 (figure 7), le compteur B 2 n'est plus à zéro et la comparaison du bruit est inter- rogée en 210 Si le nombre maximal de bruit n'est pas atteint en 210, le compteur B 2 progresse en 208 et le processeur repasseen sommeil en 164. Lorsque le maximum de bruit a été atteint en 210, le compteur Bl est interrogé en 212 afin que la fin de l'intervalle de bruit soit déterminée Si cet * intervalle est terminé, une séquence de création d'impul- sions est déclenchée en 184 (voir figure 10) Si l'inter- valle de bruit n'est pas terminé et si le compteur est déjà plein, la séquence de fonctionnement inhibe en 214 tout éveil ultérieur dû à des conditions détectées à la bascule LA et à la fin de l'intervalle QT puisqu'une impulsion est maintenant créée automatiquement à la fin de l'intervalle de bruit T 3 Dans cette condition, le rythmeur Tl est chargé en 216 à une condition destinée à prolonger le comptage au-delà de la fin du comptage de la minuterie T 3 d'intervalle de bruit La seule condition restante d'éveil est l'éveil du rythmeur d'intervalle de bruit et une séquence de stimulation est déclenchée après apparition de cette condition Ainsi, la présence de bruit détecté provoque la création d'une impulsion à titre de sécurité. La figure 9 représente un sous-programme d'ana- lyse et de correction de tachycardie Lorsque la minuterie Tl d'intervalle de tachycardie cesse de compter en 168 (figure 7) et lorsque le compteur B 2 de bruit n'est pas à zéro en 186 (figure 7) et lorsque la comparaison 190 de bruit n'est pas affirmative, la séquence d'exploitation suppose que les événements détectés étaient une tachycardie et déclenche le sousprogramme d'exploitation de la figure 9 Le processeur inhibe d'abord en 218 l'éveil correspon- dant à un événement détecté à la bascule LA et aux ryth- meur T 2 et T 3 Le compteur B 3 est alors interrogé en 220 afin que l'apparition du nombre choisi de battements de tachycardie suffisant pour nécessiter un sous-programme de correction soit déterminé Au premier battement ta- chycardique le compteur est à zéro et le sous-programme charge le compteur B 3 en 226 d'un nombre choisi qui peut être " 8 " Le processeur passe alors en 262 dans le sous- programme comme si un battement ventriculaire normal avait été détecté Comme décrit précédemment, le compteur B 3 peut déjà avoir été mis à " 8 " sans être à " O " à l'in- terrogation 220 Le compteur B 3 est interrogé en 222 afin que la présence du nombre " 1 " soit déterminé En son absence, le compteur régresse en 224 et l'événement détec- té est ensuite traité comme un battement ventriculaire normal Cependant, lorsqu'un nombre suffisant d'événements tachycardiques a eu lieu pour que le compteur B 3 revienne à " 1 ", un sous-programme de tachycardie est déclenché. Il est souhaitable d'enregistrer le nombre de conditions réelles tachycardiques tiré par le circuit et un compteur d'enregistrement de tachycardie est interrogé en 228 et peut compter jusqu'à 255 événements Si le comp- teur n'est pas plein, son contenu est avancé en 230 Si le compteur est plein, l'avance est court-circuitée et le compteur B 3 est chargé en 232 d'un nombre choisi d'impul- sions à créer par le stimulateur à la suite de la tachy- cardie Le rythmeur Tl est alors chargé en 234 d'un in- tervalle choisi après lequel la première impulsion doit être créée Enfin, le registre X est chargé en 236 de la largeur des impulsions tachycardiques à créer. Le processeur passe alors en sommeil en 238. Après éveil à la fin de la période du rythmeur Tl, le processeur charge simultanément en 240 le rythmeur Tl du temps séparant des impulsions successives et appelle le sous-programme de stimulation 242 (figure 6) Après créa- tion de chaque impulsion, le compteur B 3 régresse en-244 et le contenu est interrogé en 246 Ainsi, les impulsions de la salve continuent à être créées jusqu'à ce que le compteur B 3 revienne à zéro, et le processeur passe ensuite en sommeil en 248 et revient à un sous-programme de stimu- lation normale (figure 10) Une seule salve d'impulsions est créée par la séquence représentée sur la figure 9, et le circuit de tachycardie est rétabli comme indiqué pré- cédemment, jusqu'à ce qu'une détermination ultérieure de persistence de tachycardie soit effectuée. La figure 10 représente la séquence d'exploita- tion qui a lieu lorsque la nécessité d'une impulsion de stimulation est détectée Comme indiqué précédemment, ces conditions comprennent la détermination de la fin de l'in- tervalle de stimulation sans détection d'un battement ven- triculaire détecté, la détermination de la fin de l'inter- valle de bruit alors que l'intervalle QT continue à se rétablir, une condition de détection de bruit, une réponse déclenchée à un battement ventriculaire spontané précé- dent, une impulsion normale suivant une salve tachycar- dique, et une impulsion suivant une détermination de ta- chycardie. Lorsque les événements de validation sont la fin de l'intervalle de bruit ou la fin de l'intervalle de détection ventriculaire, le sous-programme charge d'abord le registre d'intervalle des paramètres d'intervalle de stimulation en 184 En mode déclenché, cette détermination est court-circuitée puisque le rythmeur T 5 détermine l'in- tervalle de stimulation comme indiqué précédemment Les divers caches d'éveil correspondant à l'événement détecté LA, et les rythmeurs Tl et T 3 sont inhibés en 250 Il faut noter que le rythmeur Tl reste validé en condition d'éveil lorsque la période Tl ne s'est pas écoulée ( 252) Le registre X est chargé en 254 de la largeur choisie d'impulsion, la période choisie d'insensibilité est chargée en 256 dans le rythmeur Tl, le compteur de tachycardie B 3 est remis à " 8 " en 258, et le sousprogramme de stimulation est appelé en 260 afin qu'il forme une impulsion de sortie. Lorsque le sous-programme de stimulation est terminé, l'appareil met en oeuvre divers-programmes avant de passer en sommeil, en vue d'une série suivante de séquences de synchronisation D'abord, l'étiquette QT, le compteur Bl et le compteur B 2 sont remis à zéro en 262. L'opération a lieu aussi après détection d'une impulsion tachycardique (voir figure 9) qui ne déclenche pas un sous-programme d'arrêt de tachycardie. Un commutateur magnétique à lame peut permettre une variation du programme a partir d'un signal externe. Une entrée IV 3 du commutateur à lame est interrrogée en 264 Si le commutateur est commandé, la séquence de fonc- tionnement représentée sur la figure 12 est exécutée comme décrit dans la suite. Si le commutateur à lame n'est pas excité, le programme détermine alors en 266 si les divers paramètres de fonctionnement sont indiqués comme temporaires Si des conditions temporaires ont été transmises, le registre d'indicateur temporaire régresse en 274 et le sous-program- me final de remise à zéro représenté sur la figure 11 est exécuté Si les paramètres temporaires n'ont pas été choisis, le programme interroge le compteur B 4 en 268 afin qu'il détermine si de nouveaux paramètres de fonctionnement du sti- mulateur 10 ont été transmis (figure 1) Si de nouveaux paramètres de fonctionnement ont été transmis, le compteur B 4 est effacé en 270 et les nouveaux paramètres sont trans- férés en 272 au stimulateur 10 (figure 1) Lorsqu'aucune valeur n'a été transmise, l'étape 272 de chargement est court-circuitée et la séquence finale de fonctionnement de la figure Il est exécutée. La figure 11 représente une séquence de fonc- tionnement ramenant le processeur au prograrcme initial d'exploitation de la figure 7 Lorsque des valeurs tem- poraires ont été transmises, le compteur de condition temporaire est interrogé en 276 afin que la transmission du nombre voulu d'impulsions temporaires soit déterminée. Si les conditions temporaires persistent, les compteurs Bl et B 2 sont mis à zéro en 290 et le processeur passe en sommeil en 292 en mettant à zéro tous les rythmeurs et les conditions d'éveil au fonctionnement à fréquence fixe 156. Si la condition temporaire n'existe plus, le réglage 278 de la période d'insensibilité, 280 du rythmeur Tl, 282 de l'intervalle de stimulation et 284 d'intervalle sont tous mis en conformité avec les conditions existant avant les conditions temporaires. Ainsi, chaque fois que les paramètres normaux d'impulsions doivent être répétés ou lorsque l'appareil est remis aux paramètres antérieurs de fonctionnement, l'appareil interroge le registre de mode en 286 Si ce registre indique un 0, l'appareil revient à la stimulation à fréquence fixe Si le registre n'est pas à 0, l'appareil revient à la stimulation synchrone, inhibée ou déclenchée par les battements ventriculaires Le processeur passe en sommeil en 288 et règle les paramètres pour le fonction- nement en mode synchrone 148 (figure 7). La figure 12 représente une séquence de fonc- tionnement activée par l'interrogation du commutateur à lame en 264 (figure 10) Si le patient a un antécédent de tachycardie, le programmeur peut donner une indication de cette condition et celle-ci est interrogée en 294 avant la télémétrie des données Si le patient n'est pas sensible, le compteur Bl est mis à 1, et l'appareil indique en 196 que l'intervalle QT s'est écoulé et permet la stimulation à fréquence programmée pendant la période ultérieure Si le patient est sensible, le programme passe directement au réglage du compteur Bl à 0 Cette condition est interprétée comme une condition de bruit pendant l'interrogation sui- vante de l'étiquette et la stimulation est déclenchée à la fréquence du bruit comme décrit précédemment Une bascule d'éveil disponible LD est effacée en 298 et vali- dée en 300 comme condition d'éveil avec inhibition de la bascule T 3 d'éveil de bruit, avant mise en samneil en 302. Le rythmeur Tl est interrogé en 304 afin qu'il détermine si l'intervalle d'insensibilité persiste Si le rythmeur Tl a cessé de compter, le fonctionnement revient au programme 156 à fréquence fixe (figure 1) Si l'appa- reil est encore dans l'intervalle d'insensibilité, la bascule LD est effacée à nouveau en 306 et le processeur transfère des données de fonctionnement au stimulateur 10 en 308-310 afin qu'elles soient transmisesau programmeur externe par télémétrie Le rythmeur Tl est interrogé à nouveau en 312 Si la période d'insensibilité est termi- née, les paramètres de fonctionnement du stimulateur 10 sont recherchés en 314 dans le stimulateur afin qu'ils remplacent les paramètres transmis en série par télémé- trie par le stimulateur 10 Le fonctionnement à fréquence fixe 156 reprend alors. Si le stimulateur est encore dans la période d'insensibilité, la bascule LD est à nouveau effacée en 316 et une autre information est transmise par télémétrie par le circuit Par exemple, le numéro série du stimulat- teur est transmis en 318 Le registre d'enregistrement de tachycardie, lorsqu'il est présent, est interrogé en 320 afin qu'il indique des événements de tachycardie avant sommeil 322 En cas de réponse positive, le rythmeur Tl est interrogé en 324 et, si la période d'insensibilité se pour- suit, la bascule LD est effacée en 326 et l'enregistrement d'événements de tachycardie est transmis en 328 En l'ab- sence d'événements de tachycardie ou après transmission du contenu du registre de tachycardie, le registre d'éveil correspondant à la bascule LD et au rythmeur T 3 est inhibé en 330 et le processeur passe en sommeil en 332 jusqu'à ce qu'il soit éveillé par le rythmeur Tl Il faut noter que l'apparition d'un événement d'éveil indi- qué par le rythmeur Tl provoque le transfert des para- mètres de fonctionnement du stimulateur 10 du processeur 12 au stimulateur 10 et l'établissement du programme à la stimulation 156 de fréquence fixe jusqu'à sélection d'un nouveau mode de fonctionnement. Il apparaît que la séquence d'exploitation décrite précédemment permet la commande du fonctionnement du stimulateur cardiaque à l'aide d'un microprocesseur, l'ensemble constituant un appareil totalement implantable. L'appareil ne fonctionne que lorsqu'il est nécessaire de traiter une information concernant des événements discrets, et il est en sommeil pendant la période intermédiaire si bien qu'il ne consomme qu'une faible quantité d'énergie compatible avec le fonctionnement d'un appareil implanté. Il faut aussi noter que le fonctionnement décrit dépend de divers critères physiologiques et de divers conditions de fonctionnement, de manière que la stimulation cardiaque soit fiable. Il faut aussi noter que l'appareil à micro- processeur ne commande les composants logiques internes qu'à la suite d'événements physiologiques choisis ou à des intervalles choisis d'échantillonnage, et que les compteurs fonctionnent à plusieurs fréquences de manière que la consommation d'énergie soit minimale, et ces deux caractéristiques ont des applications importantes dans les dispositifs implantables utiles pour l'assistance des fonctions vitales De manière analogue, le dispositif implantable véritablement reprogrammable permet une grande souplesse avec des techniques non invasives, que ne permet pas la technique antérieure. Il est bien entendu que l'invention n'a été décrite et représentée qu'à titre d'exemple préférentiel et qu'on pourra apporter toute équivalence technique dans ses éléments constitutifs sans pour autant sortir de son cadre. REVENDICATIONS 1 Dispositif programmable et implantable d'assis- tance aux fonctions vitales, caractérisé en ce qu'il com- prend: un microprocesseur ( 36) destiné à exécuter des instructions mémorisées suivant une séquence, sous la direction d'un compteur de programme ( 78), une mémoire passive ( 74) destinée à transmettre un jeu fixe d'instructions au microprocesseur, une mémoire à accès direct ( 76, 84) destinée à transmettre un jeu programmable d'instructions, et un registre programmable de correction ( 82) reliant le microprocesseur, le compteur de programme ( 78) et la mémoire à accès direct ( 76, 84) afin qu'il provoque l'exécution d'instructions conservées dans la mémoire à accès direct lorsque le compteur de programme correspond à un nombre programmé dans le registre de correction. 2 Appareil selon la revendication 1, caractérisé en ce qu'il comprend en outre un registre série destiné à recevoir des instructions binaires codées en série con- venant à la modification d'une séquence de fonctionnement du microprocesseur et au transfert des instructions vers le registre de correction ( 82) et la mémoire à accès di- rect ( 76, 84) afin qu'elle les conserve. 3 Appareil selon l'une des revendications 1 et 2, caractérisé en ce qu'une partie ( 76) au moins de la mémoire à accès direct ( 76, 84) est incorporée dans l'architecture du microprocesseur. 4 Procédé de reprogrammation d'un dispositif im- planté d'assistance aux fonctions vitales, caractérisé en ce qu'il comprend: le transfert d'un jeu choisi d'instructions d'exploitation d'un microprocesseur à des emplacements choisis d'une mémoire à accès direct ( 76, 84) afin qu'elles soient conservées, le transfert d'un premier nombre choisi de programme à un registre de correction ( 82) afin qu'il y soit conservé, l'exécution d'instructions conservées à des emplacements d'une mémoire passive ( 74) jusqu'à ce que le premier nombre de programme soit atteint, et l'exécution d'instructions conservées dans des emplacements de mémoire à accès direct, instruction destinée à poursuivre l'exécution d'instruc- tions conservées dans la mémoire passive et commençant à un second nombre de programme. 5 Procédé destiné à réduire au minimum le courant consommé par un microprocesseur commandant un dispositif implanté d'assistance aux fonctions vitales, caractérisé en ce qu'il comprend: la mémorisation d'un jeu complet d'instructions de fonctionnement du microprocesseur dans une mémoire passive ( 74), et la mémorisation à des emplacements d'une mémoire à accès direct ( 76) des seules instructions qui corrigent les instructions de la mémoire passive. 6 Procédé selon la revendication 5, caractérisé en ce qu'il comprend en outre: la comparaison d'un nombre de programme pro- venant des instructions de la mémoire passive ( 74) à un nombre conservé dans un registre programmable de correc- tion ( 82), l'exécution de l'instruction de mémoire à accès direct ( 76, 84) lorsque le nombre de programme atteint le nombre du registre de correction ( 82), et le retour aux instructions de la mémoire passive ( 74) correspondant à un nombre de programme contenu dans les instructions de la mémoire à accès di- rect ( 76, 84).