ed. & Biol. Eng. & Comput,. 1978, 16, 425-428

Analyseur de reponses neuronales a base de microprocesseur M. H. Giard

J. Pernier

G. Bailly

P. Rubel

CEMl-lnserrn Centre de Technologie, Biomedicale d'electronique et de Mini Informatique, 16 Avenue du Doyen L6pine, 63500 Bron, France

S o m m a i r e - - D ' u n prix de revient relativement faible, cot appareil r~alis6 ~ base de micro-processeur permet de eonstruire deux chronohistogrammes de post stimulation ~ partir d'activit6s unitaires de neurones, de visualiser les r6sultats stir un ~cran et de les ~diter stir une table tra.cante.

Mots C l e f s - - A c t i v i t ~ unitaire de neurones, Micro-processeur 1 Introduction CE SVST/~ME a 6t6 6tudi6 et r6alis6 pour permettre d' analyser en temps r6el la r6ponse 5. une stimulation d'un ou de deux neurones /t partir des potentiels d'action qu'ils g6n~rent. Jusqu'b~ pr6sent de tels outils avaient 6t6 r6alis6s soit 5. partir de logique cabl6e (analyseurs multicanaux), soit ~t l'aide de miniordinateurs. Dans les deux cas la solution 6tait relativement on6reuse car elle n6cessitait des moyens assez importants pour sa mise en oeuvre. Le traitement r6alis6 sur les signaux est simple et d6j~t utilis6 d'une mani~re tout 5. fait classique par les neurophysiologistes. Les potentiels d'action sont consid6r6s comme des s6ries d'6v6nements ponctuels. L'analyse consiste h calculer le taux de comptage de ces impulsions pendant des intervalles de temps At successifs ~ la pr6sentation d'une impulsion de stimulation ou de pr6stimulation. La pr6sentation de plusieurs impulsions de stimulation permet de d6clencher plusieurs cycles d'analyse et d'obtenir ainsi la courbe appel6e chronohistogramme (poststimulus histogram) repr6sentative de l'6volution moyenne du taux de d6charge au cours de temps qui suit la stimulation.

2 Description du materiel L'analyseur se pr6sente sous la forme d'un module s'int6grant dans un syst6me g6n6ral, compos6 de diff6rents tiroirs ayant chacun leur fonction propre et enfichable dans u n rack fournissant les alimentations et assurant les interconnexions. L'analyseur est conqu lui-m~me de fa9on modulaire. II comprend six cartes ayant chacune une fonction particuli~re (voir Fig. 1). (i) Une carte processeur qui r6alise le contr61e du systSme complet et assure les traitements. Cette Firstreceived 7th July and in finalform 3rd October 1977

carte est r6alis6e autour d ' u n microprocesseur 8080 Intel, et dispose d'un syst~me d'interruption hi6rarchis6 b. 8 niveaux (le niveau 0 est r6serv6 b. l'initialisation du programme). (ii) Une carte m6moire morte (R~PROM) r6alis6e partir de circuits int6gr6s 1702 A (Intel). Cette carte supporte le programme (instructions et constantes). Pour cette application sa capacit6 n'est que de 1792 octets. (iii) Une carte m6moire vive (RAM) r6alis6e ~t partir de circuits int6gr6s 2102 A (Intel). Cette carte est destin6e ~ recevoir les r6sultats ainsi que les variables et la pile utilis6es par le programme. Pour cette application sa capacit6 est limit6e ~t 1024 octets. (iv) Une carte interface bus--pupitre op6rateur. Cette carte permet b, l'op6rateur de dialoguer avec ]e syst6me au moyen de clefs fugitives, de clefs deux positions et de roues codeuses (voir Fig. 2). (v) Une carte horloge-interruptions externes. Cette carte comprend une horloge temps r6el pilot6e par un quartz. La valeur de la fr6quence de cette horloge est contr616e par la carte processeur. Chaque battement de l'horloge provoque une interruption de programme. Cette carte comporte 6galement sept entrdes impulsionnelles qui permettent de d6clencher d'autres interruptions. Parmi ces sept entr6es, trois seulement sont utilis6es dans cette application. Sur une de ces entr6es est appliqu6e l'impulsion de d6but de cycle d'analyse. Les deux autres entr6es recoivent les potentiels d'action mis sous forme d'impulsions calibr6es (0-5V). (vi) Une carte de visualisation et d'6dition sur table traqante. Cette carte permet de visualiser les r6sultats des traitements. Elle fournit deux tensions analogiques permettant de piloter un oscilloscope et une table tra~ante en X et en Y. D'autre part, elle fournit un signal permettant de moduler le faiseeau 61ectronique du tube cathodique de l'oscilloscope, Z, et des signaux n6cessaires au fonctionnement de

0140-0118/78/0744-0425 $1.50/0 9 IFMBE: 1978

Medical & Biological Engineering & Computing

July 1978

425

la table tragante en trac6 par points et en mode appel-r6ponse (table 7004B Hewlett-Packard, par exemple).

qu'~t l'exemple pr6sent6, il serait plus avantageux de ne pas regrouper les causes d'interruption sur deux niveaux seulement, mais de les r6partir sur les huit

BUS BANALISE

Processeur

Memoire Reprom

debut de cycle

Memoire RAM

IH

Potentiels d'action

.I

Horloge Temps reel 7 Interruptions

I

Visualisation Edition sur Table tra~ante

I

IL ioo~

Ecran Interface

Table TraCante

Pupitre

FACE AVANT

Fig. I Diagramme repr@sentant les diff@rents modules de I'analyseur Les diff6rentes cartes sont interconnect6es h l'int6rieur de l'analyseur par un bus dont l'organisation est banalis6e (structure parall~le). Les cartes de l'analyseur n'ont pas 6t6 conques pour satisfaire uniquement les exigences de cette application, mais au contraire pour permettre leur utilisation dans un domaine aussi large que possible, mettant en jeu un nombre plus important de signaux ~t traiter. C'est la raison pour laquelle le syst~me d'interruption peut paraltre sous-employ6 dans cette application particuli~re. En effet, si l'on devait concevoir un syst6me mat6riel destin6 ~t ne r6pondre 426

disponibles. Par exemple, on pourrait affecter un niveau /~ chacun des signaux du type impulsionnel provenant de l'ext6rieur. Cette derni~re solution r6duirait le logiciel de quelques instructions, en 61iminant la scrutation programm6e du mot d'6tat de la carte horloge-interruptions externes (voir phase de traitement). Les modalit6s de transformation du signal physiologique en impulsion ne sont pas abord6es ici. Diff6rentes variantes de cette transformation ont 6t6 d6crites par ailleurs. Elles font tontes appel b, une discrimination d'amplitude par dispositifs ~t seuils. (PERNIER, 1971 ; SABAHand SARHAN, 1977).

Medical & Biological Engineering & Computing

July 1978

3 Caracteristique du logiciel Le logiciel est conqu pour 6laborer et visuatiser deux histogrammes. Ces deux histogrammes peuvent 6tre construits pendant la m~me phase de traitement et concernent alors l'activit6 de deux neurones enregistr6s simultan6ment. Le logiciel permet 6galement de construire les deux histogrammes de fa~on s6quentielle, ce qui offre la possibilit6 d'analyser la r6ponse d'un m~me neurone h deux stimulations de nature diff6rente. Chaque histogramme poss~de 256 canaux.

(ii) une phase de traitement et de visualisation (iii) une phase d'6dition de r6sultats. Au cours de ces trois phases le dialogue entre le processeur et l'op6rateur s'effectue de faqon interactive ~, l'aide de touches de fonction (clefs) situ6es sur le panneau avant du module.

3.1 Phase d'initialisation L'entr6e darts cette phase est d6clench6e soit a la raise sous tension de l'appareil, soit par une action sur une touche (INI) situ6e sur le panneau avant. Pendant cette phase d'initialisation le processeur lit p6riodiquement les param6tres du programme affich6s sur les roues codeuses du panneau avant. Lorsque la touche de fonction (VALIO) est lev6e ces param~tres sont m6moris6s en m6moire vive, et le calculateur visualise sur l'6cran de visualisation: (a) les deux histogrammes plac6s l'un en dessous de l'autre (histogramme sup6rieur et histogramme inf6rieur). Au d6part le contenu de ces histogrammes est remis ~ z6ro (b) les axes horizontaux et verticaux des histogrammes (c) les nornbres de stimulations pr6d6termin6s

Fig. 2 Pupitre op~rateur de I'analyseur

n2

(d) le temps d'analyse calcul6 ~ partir des largeurs des canaux et du nombre de canaux. Ce temps est compris entre 130 ms et 10s 1 ;3

Fig. 3 Exemple d'edition sur table tracante par pointage de deux histogrammes t = temps. La duree tota/e de I'ana/yse est ~gale au produit de la largeur d'un canal par le nombre de canaux (256). nl et n 2 repr~sentent le nombre de potentiels d'actions par canal dans les deux histogrammes. Les deux index sur les axes verticaux rep6rent les valeurs n~ -~ n2 indiquees par le demier nombre visualise en haut e t a droite de f ecran (0016 clans cet exemple)

n 1

t

Les param~tres de programme sont (a) La largeur At de chaque canal (b) Le nombre d'impulsions de stimulation prises en compte pour l'61aboration du premier histogramme (c) Le nombre d'impulsions de stimulation prises en compte pour l'61aboration du second histogramme Le logiciel comprend trois phases (i) une phase d'initialisation Medical & Biological Engineering & Computing

(e) les 6chelles des ordonn6es des deux histogrammes. Les caract~res sont trac6s sur l'6cran par un g6n6rateur de caract~res programm6 Le processeur reste dans cette tache de visualisation des param~tres de d6part rant que l'op6rateur n ' a pas activ6 une autre touche. 3.2 Phase de traitement L'entr6e dans la phase de traitement est effectu6e grace au basculement d'une touche (DEBUT) de la face avant du module. July 1978

427

Le programme principal de cette phase coincide avec la t~che de visualisation pr6c6demment d6crite. Deux classes d'6v~nements peuvent interrompre ce programme principal. Ces deux classes sont group6es sur deux niveaux d'interruption diff6rents. Sur le niveau d'interruption le plus prioritaire sont regroup6es les causes suivantes: (a) apparition d'une implusion de stimulation (b) apparition d'une impulsion d'horloge temps r6el (c) apparition d'un potentiel d'action sur l'er~tr6e A (d) apparition d'un potentiel d'action sur l'entr6e B. Sur ce m6me niveau la reconnaissance de la cause d'interruption s'effectue par lecture du mot d'6tat de la carte horloge--interruption externe--et scrutation programm6e des bits de ce mot. Les tgches associ6es 5- chaque cause sont les suivantes: (a) Pour la stimulation (i) synchronisation de l'horloge (ii) incr6mentation du nombre de stimulations affich6 sur l'6cran (iii) test de fin d'acquisition (derni~re stimulat:ion) (b) Pour l'horloge (i) Incr6mentation du pointeur d6signant les canaux. (c) Pour les potentiels d' action (i) Incr6mentation du contenu du canal point6 dans le buffer affect6 5, l'entr6e. Sur le niveau d'interruption le moins prioritaire, sont regroup6es les activations de certaines touches fugitives de fonctions. La touche est identifi6e 6galement par lecture d ' u n mot d'6tat dont la fonction est de m6moriser l'action sur les touches. Ce mot d'6tat appartient h la carte interface bus-pupitre op6rateur. L'action sur chaque touche fugitive d6clenche une interruption de programme et les t~ches associ6es 5ces actions sont: (i) remise 5. z6ro du buffer de l'histogramme sup6rieur (ii) remise h z6ro du buffer de l'histogramme inf6rieur (iii) multiplication par deux des 6chelles des ordonn6es (iv) division par deux des 6chelles des ordonn6es

(v) grouper les canaux par deux (vi) d6grouper les canaux en deux

(d) Phase d'ddition L'entr6e dans la phase d'6dition s'effectue par une action sur la touche de s61ection SCOPE-TABLE TRA(~ANTE. Dans cette phase le programme principal est r6duit h une boucle d'attente. Deux clefs fugitives permettent de d6clencher les thches relatives 5-la table tragante. Ces t~ches sont: (i) calibration de l'6pure dans taquelle seront trac6s les deux histogrammes. A chaque action sur la touche CADRE, la plume de la table se positionne h u n nouveau, coin de l'6pure (ii) edition des deux histogrammes successivement sur la table tragante A la fin de l'6dition, le programme retourne automatiquement en phase de traitement. Nous avons choisi d'interrompre la phase de traitement avant de commencer la phase d'~dition, pour se contenter de r6pondre aux besoins courants du neurophysiologiste. En effet, celui-ci examine sur l'6cran la forme des courbes obtenues avant de d6cider son 6dition sur papier. Cependant, au prix d'une augmentation de la capacit6 m6moire vive de 512 octets et d'une modification du logiciel, il serait possible de lancer, par l'interm~diaire d'une clef, l'6dition d'une courbe et de reprendre t'acquisition d'un autre couple d'histogrammes pendant l'6dition du pr6c6dent. Cependant, durant l'acquisition du second couple d'histogrammes, il ne serait pas possible de visualier celui-ci sur l'6cran cathodique, car les mames convertisseurs digitaux-analogiques servent 5- piloter le spot du tube cathodique et la plume de la table traqante.

References

PERNIER, J. (1971) R6alisation d'un discriminateur de potentiels d'action, Med. & Biol. Eng., 9, 359-363. SABAI-I, N. H. and SARHAN, A' (1977) Peak-detecting window discrimination, Med. & Biol. Camput., 15, 207-208.

Microprocessor-based analyser of neuronal responses Summary--This relatively low-cost uni:. based on the microprocessor allows two post-stimulation chronohistogram to be built from individual neuron activities, and the results to be displayed on a screen and reproduced on a printout.

Ein auf einem Micro-Prozessor basiertes Analysierger~it der neuronalen Ansprechung Zusammenfassung--Dieses relativ preiswerte Gerht, das auf einem Micro-Prozessor basiert, erm~glicht, dab zwei Post-Stimulations-Chronohistogramme aus individuellen Neuronent/itigkeiten ersteltt, und die Resultate auf einen Bildschirm projektiert und auf einem Druckbild reproduziert werden.

428

Medical & Biological Engineering & Computing

July 1978

[Microprocessor-based analyser of neuronal responses].

ed. & Biol. Eng. & Comput,. 1978, 16, 425-428 Analyseur de reponses neuronales a base de microprocesseur M. H. Giard J. Pernier G. Bailly P. Rubel...
377KB Sizes 0 Downloads 0 Views