FR2499157A1 - Appareil de commande de moteur a combustion interne, notamment de vehicule automobile - Google Patents

Appareil de commande de moteur a combustion interne, notamment de vehicule automobile Download PDF

Info

Publication number
FR2499157A1
FR2499157A1 FR8102259A FR8102259A FR2499157A1 FR 2499157 A1 FR2499157 A1 FR 2499157A1 FR 8102259 A FR8102259 A FR 8102259A FR 8102259 A FR8102259 A FR 8102259A FR 2499157 A1 FR2499157 A1 FR 2499157A1
Authority
FR
France
Prior art keywords
signal
circuit
pulse
sep
output
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
FR8102259A
Other languages
English (en)
Other versions
FR2499157B1 (fr
Inventor
Shigeo Kuboki
Takeshi Hirayama
Hideo Nakamura
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to FR8102259A priority Critical patent/FR2499157A1/fr
Publication of FR2499157A1 publication Critical patent/FR2499157A1/fr
Application granted granted Critical
Publication of FR2499157B1 publication Critical patent/FR2499157B1/fr
Granted legal-status Critical Current

Links

Classifications

    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F02COMBUSTION ENGINES; HOT-GAS OR COMBUSTION-PRODUCT ENGINE PLANTS
    • F02DCONTROLLING COMBUSTION ENGINES
    • F02D41/00Electrical control of supply of combustible mixture or its constituents
    • F02D41/24Electrical control of supply of combustible mixture or its constituents characterised by the use of digital means
    • F02D41/26Electrical control of supply of combustible mixture or its constituents characterised by the use of digital means using computer, e.g. microprocessor
    • F02D41/263Electrical control of supply of combustible mixture or its constituents characterised by the use of digital means using computer, e.g. microprocessor the program execution being modifiable by physical parameters

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Chemical & Material Sciences (AREA)
  • Combustion & Propulsion (AREA)
  • Mechanical Engineering (AREA)
  • General Engineering & Computer Science (AREA)
  • Combined Controls Of Internal Combustion Engines (AREA)

Abstract

L'INVENTION CONCERNE UN APPAREIL DE COMMANDE D'UN MOTEUR A COMBUSTION INTERNE. L'APPAREIL COMPREND DES BLOCS CONVERTISSEURS D'IMPULSIONS SE COMPOSANT CHACUN D'UN REGISTRE A DECALAGE 1002, D'UN CIRCUIT DE DETECTION 1009 SERVANT A DETERMINER SI LE CONTENU D'INFORMATION DU REGISTRE A SATISFAIT A UNE CONDITION PREDETERMINEE ET D'UN CIRCUIT D'AUGMENTATIONDIMINUTION 1008 POUR AUGMENTER OU DIMINUER LE CONTENU D'INFORMATION DU REGISTRE, LESDITS BLOCS DE CONVERSION ETANT PREVUS POUR CHACUN DES SIGNAUX DE SORTIE PROVENANT D'UNE UNITE CENTRALE DE TRAITEMENT CPU ET ETANT COMMANDES PAR UNE IMPULSION D'HORLOGE COMMUNE DE FACON QUE LES OPERATIONSDE COMPTAGE ET LES OPERATIONS DE DETECTION DE CONDITION DES BLOCS SOIENT EFFECTUEES EN SYNCHRONISME AVEC LADITE IMPULSION D'HORLOGE COMMUNE. APPLICATION AUX VEHICULES AUTOMOBILES.

Description

La présente invention concerne un appareil de commande électronique d'un moteur à combustion interne, qui assure la commande du moteur par une opération arithmétique numérique exécutée par une unité centrale de traitement (CPU), et elle a trait plus particulièrement à un circuit de traitement de signaux formés d'impulsions, relié à une partie d'entrée et de Sortie de signaux de l'unité centrale de traitement CPU.
Lorsque le moteur est commandé par une unité CPU programmée il est nécessaire de prévoir un circuit d'entrée servant a emmagasiner des informations provenant de détecteurs qui analysent des conditions du moteur,.sous une forme pouvant etre transmise à l'unité CPU en réponse à une demande faite par cette unité, et un circuit de sortie pour convertir des signaux numériques provenant de l'unité CPU en un signal d'excitation d'un mécanisme de commande du moteur. Ces circuits d'entrée et de sortie doivent etre fabriqués sous la forme de circuits très intégrés.
Cependant, puisque les circuits de commande du moteur sont montés sur un véhicule, la température ambiante varie sensiblement en fonction de la condition de marche du véhicule.
Il en résulte que les circuits doivent etre conçus en prenant en considération les conditions les plus mauvaises et, par conséquent, le haut degré d'intégration est difficile à réaliser à cause des impératifs thermiques. Par exemple, les véhicules peuvent etre utilisés dans une zone tropicale ou bien en atmosphère torride. Dans de telles conditions, la température ambiante peut atteindre une valeur très élevée (par exemple de 1000C, tout en prenant en considération l'influence de la chaleur de rayonnement du moteur).
I1 est nécessaire d'éviter une concentration de chaleur pour maintenir une température de jonction d'un composant du circuit en dessous d'une température prescrite, meme dans les conditions précitées. Pour cette raison, on ne peut pas augmenter la densité d'intégration.
Pour résoudre les problèmes définis ci-dessus, il est nécessaire de réaliser les circuits d'entrée et de sortie en faisant intervenir des composants produisant une petite quantité de chaleur.
L'invention a pour but de fo@xnir un appareil de @ d'un moteur1 qui puisse et forme de circuits produisant une petite quantité de chaleur.
Conformément à la présente invention, il est prévu, po7lr chacun des signaux de sortie provenant de l'unité centrale de traitement CPU, des blocs de conversion d'impulsions comprenant chacun un registre, un circuit de détection poiir déterminer si le contenu d'informations du registre @ rempli une condition prédéterminée et un circuit d'augmentation/réduction 1 > cur augmenter ou réduire le contenu d'informations du registre, et les blocs de conversion d'impulsions sont actives par une impulsion d'horloge commune de manière que les opérations de comptage et les opérations de détection de condition des blocs soient effectuées en synchronisme avec l'impulsion d'horloge commune.
Avec cet agencement, chacun des registres à décalage des circuits de conversion d'impulsions peut être formé par des composants très simples et agencés normalement, de sorte que la configuration des circuits est simple et normale.
Il en résulte que la génération de chaleur de l'ensemble des circuits est faible et qu'il ne se produit pas de concentra- tion de chaleur.
En outre, l'agencement conforme à l'invention permet d'utiliser, si nécessaire, des composants de circuits dynamiques.
Dans ce cas, la génération de chaleur est encore réduite, par exemple jusqu'à 40% de celle d'un circuit classique de commande numérique de moteur.
D'autres avantages et caractéristiques de l'invention seront mis en évidence, dans ia suite de la description, donnée à titre d'exemple non limitatif, en référence aux dessins annexés dans lesquels:
la Fig. 1 est une vue en coupe d'une chambre de carburateur d'un moteur auquel la présente invention est appliquée avantageusement;
la Fig. 2 représente un schéma d'un dispositif d'allumage;
la Fig. 3 représente un schéma synoptique de principe d'un dispositif de recyclage de gaz d'échappement;
la Fig. 4 représente une configuration d'ensemble d'un système de commande;
la Fig. 5 représente un organigramme d'un système de programmation;
la Fig. 6 donne un agencement de programme;
la Fig. 7 donne un organigramme détaillé d'un programme 224 indiqué sur la Fig. 5;;
la Fig. 8 représente un organigramme détaillé d'un ordonnanceur d'opérations;
la Fig. 9 représente une table de commande d'opérations;
la Fig. 10 donne un organigramme détaillé d'un programme de sortie;
la Fig. 11 est un schéma détaillé d'un circuit d'interruption;
la Fig. 12 est un schéma de principe d'un circuit de conversion d'impulsions;
les Fig. 13A et 13B représentent un élément de base qui constitue le circuit de base de la Fig. 12;
la Fig. 14 met en évidence le fonctionnement du circuit de la Fig. 13;
les.Fig. 15A et 15B représentent un autre élément de base qui constitue le circuit de base de la Fig. 12;
la Fig. 16 est un diagramme MOS détaillé d'un registre à décalage, d'un registre de verrouillage et d'autres composants indiqués sur la Fig. 12;
les Fig. 17A et 17B mettent en évidence le fonctionnement du registre à décalage;;
la Fig. 18 est un schéma détaillé d'un circuit d'écriture de données;
la Fig. 19 met en évidence le fonctionnement du circuit de la Fig. 18;
la Fig. 20 est un schéma détaillé d'un circuit de lecture de données;
la Fig. 21 met en évidence le fonctionnement du circuit de lecture de données;
les Fig. 22A et 22B représentent des schémas de circuits servant à produire des signaux de lecture et d'écriture de données;
la Fig. 23 donne un chronogramme permettant d'expliquer le fonctionnement des circuits des Fig. 22A et 22B;
la Fig. 24 est un diagramme détaillé d'un circuit d'augmentation/diminution et d'un circuit de détection de zéro représentés sur la Fig. 12;
la Fig. 25 met en évidence le fonctionnement des circuits de la Fig. 24;
la Fig. 26 est un schéma d'un circuit de conversion dtim- pulsions efficaces;;
la Fig. 27 met en évidence le fonctionnement du circuit de la Fig. 26;
la Fig. 28 représente un schéma d'un circuit de commande d'un système d'allumage;
la Fig. 29 met en évidence le fonctionnement du circuit de la Fig. 28;
la Fig. 30 est un chronogramme correspondant à la Fig. 29;
la Fig. 31 est un schéma d'un circuit de conversion d'impulsions INTDP;
la Fig-. 32 est un chronogramme correspondant à la Fig. 31;
la Fig. 33 représente un schéma d'un circuit de détection de vitesse de rotation;
la Fig. 34 met en évidence le fonctionnement du circuit de la Fig. 33;
la Fig. 35 représente un circuit d'injection de carburant;
la Fig. 36 met en évidence le fonctionnement du circuit de la Fig. 35;
la Fig. 37 représente un schéma d'un circuit générateur de signaux de synchronisation; et
la Fig. 38 montre un agencement d'un registre, d'un circuit d'augmentation/réduction, d'un circuit de détection de zéro, d'une ligne de données ét d'une ligne de signaux de commande.
Avant d'expliquer un exemple de réalisation de la présente invention, on va d'abord décrire en référence aux Fig. 1 à 10 un exemple d'un système de commande de moteur du type électronique auquel la présente invention est applicable.
Sur la Fig. 1, on a représenté en vue en coupe une chambre de carburateur d'un moteur à combustion interne auquel peut s'appliquer avantageusement la présente invention.
Différentes électrovalves sont prévues autour deyla chambre de carburateur en vue de commander une quantité de carburant et une quantité d'air de dérivation qui est fourni à la chambre de carburateur, comme cela sera décrit dans la suite.
L'ouverture d'un papillon 12 pour fonctionnement à basse vitesse est commandée par une pédale d'accélérateur (non représentée),ce qui permet de commander l'écoulement d'air qui est fourni aux différents cylindres du moteur à partir d'un filtre à air (non représenté). Lorsque le débit d'air passant par un venturi 34, pour la marche à basse vitesse, est augmenté par suite de l'augmentation d'ouverture du papillon 12, un papillon 14 correspondant à la marche à grande vitesse, est ouvert à l'aide d'un dispositif à diaphragme (non représenté) en fonction d'une pression négative établie dans le venturi pour le fonctionnement à basse vitesse, ce qui se traduit par une diminution de la résistance à l'écoulement d'air, qui serait autrement augmentée du fait de l'augmentation du débit d'air d'admission.
La quantité d'air introduite dans les cylindres du moteur sous la commande des papillons 12 et 14 est détectée par un capteur de pression négative (non représenté) et convertie en un signal analogique correspondant. En fonction du signal analogique ainsi produit, ainsi que d'autres signaux disponibles à la sortie d'autres capteurs qui seront décrits dans la suite, les degrés d'ouverture des différentes électrovalves 16, 18, 20 et 22 de la Fig. 1 sont commandés en correspondance.
On va maintenant décrire comment s'effectue la commande de l'alimentation en carburant. Le carburant provenant d'un réservoir par l'intermédiaire d'un conduit 24 est introduit dans un conduit 28 par l'intermédiaire d'un gicleur principal 26. En Outre, du carburant est introduit dans le conduit -28 par l'intermédiaire d'une électrovalve principale 18.
En conséquence, la quantité de carburant introduite dans le conduit 28 est augmentée à mesure que le degré d'ouverture de l'électrovalve principale 18 est augmenté. Du carburant est alors introduit dans un tube d'émulsion principale 30 en vue d'etre mélangé avec de l'air et d'être fourni au venturi 34 par l'intermédiaire d'une buse 36. D'autre part, une électrovalve de ralenti 16 est commandée en même temps que l'electro- valve principale 18 de manière que de l'air provenant du filtre soit introduit dans un conduit 42, par l'intermédiaire d orifice d'admissIon 40.Le carburant introduit dans le conduit 28 est également transmis au conduit ou passage 42 par l'in- termédiaire d'un tube d'émulsion de ralenti 44. n conséquence, la quantité de carburant fournie au conduit 42 diminue à mesure que la quantité d'air fournie par l'intermédiaire de l'electro- valve de ralenti 16 est augmentée. Le mélange d'air et de carburant formé dans le conduit 42 est ensuite transmis à la chambre de carburateur par l'intermédiaire d'un orifice 46, qui est également appelé le gicleur de ralenti.
L'électrovalve de carburant 20 sert a augmenter la quantité de carburant pendant les opérations de démarrage et d'échauffement du moteur. Du carburant introduit par l'intermédiaire d'un trou 48 communiquant avec le conduit 24 est canalise ers un conduit 50 co.rhmuniquant avec la chambre de carburateur, en fonction du degré d'ouverture de l'électrovalve de carburant.
L'électrovalve flair 22 sert à commande la quantité d'air fournie aux cylindres du moteur. Dans ce but, l'électrovalve d'air 22 reçoit de l'air provenant du filtre à air par 1 'in- termédiaire d'un orifice 52, l'air étant introduit dans un conduit 54 débouchant dans la chambre de carburateur en quantité correspondant au degré d'ouverture de l'électrovalve d'air.
L'électrovalve de ralenti 16 coopère avec l'électrovalve principale 18 de manière à commander la proportion carburantair, tandis que l'électrovalve de carburant 20 sert à augmenter la quantité de carburant. En outre, la vitesse du moteur au ralenti est commandée par coopération de l'électrovalve de ralenti 16, de l'électrovalve.principale 18 et de l'électrovalve d'air 22.
En référence à la Fig. 2, qui représente schématiquement un agencement d'un système d'allumage, un courant pulsatoire est appliqué à un transistor de puissance 64 par l'intermédiaire d'un circuit amplificateur 62 et il en résulte une mise en conduction du transistor de puissance 64, ce qui fait passer un courant primaire dans un enroulement primaire d'une bobine d'allumage 68 à partir d'une batterie 66. En réponse au bord arrière de l'impulsion de courant, le transistor 64 est bloqué (c'est-à-dire qu'il devient non-conducteur),ce qui produit une haute tension dans un enroulement secondaire de la bobine d'allumage 68.
La haute tension ainsi produite est ainsi appliquée aux bougies d'allumage 72 des cylindres individuels du moteur à combustion interne par l'intermédiaire d'un distributeur 70, en synchronisme avec la rotation du moteur.
La Fig. 3 est un schéma permettant d'illustrer le fonctionnement d'un système de recyclage de gaz d'échappement (qui sera désigne en abrégé dans la suite par l'expression "système EGR").
Une pression négative constante provenant d'une source 80 est appliquée à un distributeur de commande 86 par l'intermédiaire d'une valve à pression constante, c'est-à-dire une valve de commande de pression 84 qui sert à commander le rapport suivant lequel la pression négative constante provenant de la source 80 s'échappe dans l'atmosphère 88 en fonction du cycle d'utilisation d'un signal pulsatoire appliqué à un transistor 90, en vue de commander ainsi le niveau de pression négative qui est appliquée au distributeur de commande 86. En d'autres termes, la pression négative appliquée au distributeur de commande 86 est déterminée sur la base du cycle d'utilisation du transistor 90.D'autre part, la quantité de gaz d'échappement recyclés d'un conduit d'échappement 92 vers un conduit d'admission 82 est commandée par la pression négative de commande appliquée à partir de la valve à pression constante 84.
La Fig. 4 est un schéma donnant un agencement général d'ensemble d'un système de commande. Ce système de commande comprend une unité centrale de traitement (désignée dans la suite en abrégé par CPU) 102, une mémoire fixe (désignée dans la suite en abrégé par ROM) 104, une mémoire à acces sélectif (désignée dans la suite en abrégé par RAM) 106, et un circuit d'interface d'entrée/sortie 108. L'unité CPU 102 effectue des opérations arithmétiques sur des données d'entrée provenant du circuit d'entrée/sortie 108 en relation avec différents programmes mémorisés dans la mémoire ROM 104 et elle retransmet les résultats des opérations arithmétiques au circuit d'entrée/sortie 108. Une mémorisation temporaire de données, qui peut être nécessaire pour I'exécution des opérations arithmétiques, est effectuée à l'aide de la mémoire RAM 106.
Différents transferts ou échanges de données entre l'unité CPU 102, la mémoire ROM 104, la mémoire RAM- 106 et le circuit d'entrée/sortie 108 sont effectués par l'intermédiaire d'une ligne à conducteurs omnibus 110 se composant d'un bus de données, d'un bus de commande et d'un bus d'adresse.
Le circuit d'interface d'entrée/sortie 108 comprend des moyens d'entrée constitués par un premier convertisseur analogique-numérique (désigné dans la suite par ADC1), un second convertisseur analogique-numérique (désigné dans la suite par
ADC2), un circuit de traitement de signaux angulaires 126 et un circuit d'entrée/sortie distinct 128 (désigné dans la suite par DIO), pour entrer ou sortir une information d'un seulbit.
Le convertisseur ADC1 122 comprend un multiplexeur 162 (désigné dans la suite par MPX) qui est pourvu de bornes d'entrée auxquelles sont appliqués des signaux de sortie provenant d'un capteur de détection de tension de batterie (désigné dans la suite par VBS), d'un capteur de détection de température d'eau de refroidissement (désigné dans la suite par TWS), d'un capteur de température ambiante (désigné dans la suite par TAS), d'un générateur de tension réglée (désigné dans la suite par
VRS), d'un capteur de détection d'angle de papillon (désigné dans la suite par OTHS) et d'un capteur-A (désigné dans la suite par AS). Le multiplexeur, ou NPX 162, sélectionne un des signaux d'entrée pour l'appliquer à un circuit convertisseur analogique-numérique 164 (désigné dans la suite par ADC).
Un signal numérique sortant du circuit ADC 164 est retenu par un registre 166 (désigné dans la suite par REG).
Le signal de sortie d'un capteur de pression négative (désigné dans la suite par VCS) est appliqué à l'entrée de
ADC1 124 de manière à être converti en un signal numérique par l'intermédiaire d'un circuit convertisseur analogique numërique (désigné dans la suite par ADC) 172. Le signal numérique sortant de ADC 172 est introduit dans un registre (désigné dans la suite par REG) 174.
Un capteur d'angle 146 (désigné dans la suite par ANGS) est agencé pour produire un signal représentant un angle de vilebrequin de référence ou standard, par exemple de 1800 (ce signal étant désigné dans la suite par REF), ainsi qu'un signal représentant un petit angle de vilebrequin (par exemple de 10), ce signal étant désigné dans la suite par "signal POS".
Les deux signaux REF et POS sont appliqués au circuit de traitement de signaux angulaires 126 en vue de leur conformation.
Le circuit d'entrée/sortie distinct, ou DIO 128, est relié par ses entrées à un contacteur de ralenti (désigné dans la suite par IDLE-SW), un contacteur de prise directe (désigné dans la suite par TOP-SW), et un contacteur de démarrage (désigné dans la suite par START-SW).
On va maintenant décrire un circuit de sortie d'impulsions, ainsi que les fonctions à commander sur la base des résultats des opérations arithmétiques effectuées par l'unité CPU 102.
Un dispositif de commande de proportion carburant-air 165 (désigné dans la suite par CABC) sert à faire varier le coefficient d'utilisation d'un signal pulsatoire fourni à l'électro- valve de ralenti 16 et à l'électrovalve principale 18 pour leur commande. Puisqu'une augmentation du coefficient d'utilisation du signal pulsatoire, sous l'action de CABC 165, a pour résultat de réduire la quantité de carburant fournie par l'intermédiaire de l'électrovalve principale 18, le signal de sortie de
CABC est appliqué à l'électrovalve principale 18 par l'intermé- diaire d'un inverseur 163. D'autre part, la quantité de carburant qui est commandée par l'intermédiaire de .l'électrovalve de ralenti 16 est augmentée, du fait que le coefficient d'utilisation du signal pulsatoire produit par CABC 165 est augmenté.
CABC 165 comporte un registre (désigné dans la suite par CABC) en vue de régler dans celui-ci la période de répétition des impulsions du signal décrit ci-dessus, ainsi qu'un registre (désigné dans la suite par CABD) pour régler le coefficient d'utilisation du même signal pulsatoire. Des données concernant la période de répétition d'impulsions et le coefficient d'utilisation à charger dans lesdits registres CABP et CABD sont disponibles dans l'unité CPU 102.
Un circuit générateur d'impulsions d'allumage 168 (désigné dans la suite par INGC) est pourvu d'un registre (désigné dans la suite par ADV) pour établir dans celui-ci des données de
synchronisation d'allumage, ainsi que d'un registre @@@ @@@ dans la suite par DWL) pour commander la durée du courant pri- maire passant dans la bobine d'allumage. Des données pour ces commandes sont disponibles. dans l'unité GPU 102. L'impulsion de sortie de IGNC 168 est appliquée au système d'allumage désigné par 170 sur la Fig. 4. Le système d'allumage 170 est agencé comme décrit ci-dessus en référence à la Fig. 2.
En correspondance, l'impulsion de sortie de IGNC 168 est appliquée à l'entrée du circuit amplificateur 162 représenté sur la
Fig. 2.
Un circuit générateur d'impulsions d'augmentation de carburant 176 (désigné dans la suite par FSC,' sert à commander le coefficient d'utilisation d'un signal pulsatoire appliqué à 1'électrovalve de carburant 20, représentée sur la Fig. 1, en vue de sa commande, et il comprend ur. registre servant à établir la période de répétition d D impulsions dudit signal pulsatoire (ce registre étant désigné dans la suite par FSCP) ainsi qu'un registre (désigné dans la suite par FSCD) pour établir le coefficient d'utilisation du même signal pulsatoire.
Un circuit générateur d'impulsions 178 (désigné dans la suite par EGRC), servant à produire un signal pulsatoire utilisé pour commander la quantité de gaz d'échappement à recycler
(EGR), comprend un registre (désigné dans ia suite par EGRP) pour établir la période de répétition d'impulsions ainsi qu'un registre (désigné dans la suite par EGRD) pour établir le coefficient d'utilisation du signal pulsatoire qui est fourni à l'électrovalve d'air 22 par l'intermédiaire d'une porte ET 184, dont l'autre entréereçoit le signal de sortie DIO1 provenant de DIO 128. Plus spécifiquement, quand le signal DIO1 se trouve à un niveau bas "L", la porte ET 184 est ouverte pour laisser passer le signal pulsatoire de commande servant à commander l'électrovalve d'air 22.
D'autre part, quand le signal DIO1 se trouve à un niveau haut "H", une porte ET 186 est rendue conductrice de façon a commander le système EGR 188, dont une structure de principe a été mise en évidence sur la Fig. 3.
DIO 128 est un circuit d'entrée/sortie pour un signal d'un seul bit, comme décrit ci-dessus, et il comprend dans ce but un registre (désigné dans la suite par DDR) servant à mémoriser des données pour déterminer l'opération de sortie ou d'entrée, ainsi qu'un registre (désigné dans la suite par DOUT) servant à mémoriser des données à sortir. DIO 128 produit un signal de sortie DIOO pour commander la pompe à carburant 190.
La Fig. 5 représente un système de programmation utilisable avec le circuit de commande de la Fig. 4. Lorsqu'une source de courant est enclenchée à l'aide d'un contacteur à clé (non représenté), l'unité CPU 102 est commutée dans un mode de démarrage pour exécuter un programme d'initialisation (INITIALIZ). Ensuite, un programme de centrale (MONIT) 206 est exécuté et il est suivi par l'exécution d'une opération de base (OPERATION DE BASE) 208. Les opérations de base comprennent par exemple une tache de calcul de la quantité de EGR (appelée dans la suite tache EGR CAL.) ainsi qu'une tache de calcul des quantités de commande de l'électrovalve de carburant 20 et de l'électrovalve d'air 22 (désignées dans la suite par
FISC).Lorsqu'une demande d'interruption (appelée dans la suite IRQ) apparait pendant l'exécution de ces taches, un programme d'analyse IRQ 224 (désigné dans la suite par
IRQ ANAL) est exécuté à partir de la phase de démarrage 222.
Le programme IRQ ANAL est constitué par un programme de traitement d'interruption finale 226 pour ADC1 (désigné dans la suite par ADC1 END IRQ), par un programme de traitement d'interruption finale 228 par ADC2 (désigné dans la suite par ADC2 END IRQ) et par un programme de traitement d'interruption d'intervalle 230 (désigné dans la suite par
INTV IRQ) et, en outre, par un traitement d'interruption d'arrêt de moteur 232 (désigné dans la suite par ENST IRQ), et il émet des demandes d'activation (désignées dans la suite par QUEUE) pour les taches à enclencher parmi celles décrites ci-dessus.
Les tâches pour lesquelles la demande QUEUE est émise à partir des sous-programmes ADC1 END IRQ 226, ADC2 END IRQ 228 et INTV IRQ 230 du programme IRQ ANAL 224, sont respectivement un groupe de tâches 252 de niveau "O", un groupe de taches 254 de niveau " 1", un groupe de taches 256 de niveau "2" et un groupe de taches 258 de niveau "3", ou bien en variante, des taches individuelles données qui constituent des parties desdits groupes de tâches. La tache pour laquelle la demande
QUEUE est émise à partir du programme ENST IRQ 232 est un programme de taches 262 en vue du traitement de l'arret du moteur (cette tache étant désignée dans la suite par ENST TASK).
Lorsque le programme de taches ENST TASK 262 a été exécuté, le programme de commande est ramené sur le mode de démarrage et la phase de démarrage 232 est reprise.
Un ordonnanceur de taches 242 sert à déterminer la séquence dans laquelle les groupes de taches sont exécutés, de telle sorte que les groupes de taches pour lesquels la demande
QUEUE est émise, ou dont l'exécution est interrompue, soient exécutés à partir du groupe de taches de niveau le plus élevé.
Dans le casdel'exemple représenté, on a supposé que le niveau "0" est le niveau le plus élevé. Lors de la terminaison de l'exécution du groupe de taches de niveau le plus élevé, un programme d'indication de terminaison 260 (désigné dans la suite par EXIT) est exécuté pour signaler ce fait à l'ordonnanceur de taches 242. Ensuite, le groupe de taches du niveau immédiatement inférieur est exécuté, et ainsi de suite.
Lorsqu'il ne subsiste plus aucun groupe de taches dont l'exécution est interrompue ou bien pour lequel la demande
QUEUE est émise, l'exécution des opérations de base-208 est reprise sous la commande de l'ordonnanceur de taches 242. En outre, lorsque le programme IRQ est enclenché pendant l'exécution. du groupe de taches faisant partie des niveaux "0"- à "3", l'opération de démarrage 222 du pro gramme de traitement IRQ est reprise..
On a indiqué dans le Tableau 1, ci-après, les enclenchements et les fonctions des programmes de t ches indi- viduels.
TABLEAU I
Figure img00130001
Identification
<tb> Niveau <SEP> Fonctions <SEP> Activation <SEP> (synchronisation)
<tb> des <SEP> programmes
<tb> Analyse <SEP> de <SEP> IRQ <SEP> et <SEP> émission <SEP> de <SEP> demandes <SEP> d'acti - <SEP> IRQ <SEP> ANAL <SEP> IRQ
<tb> vation <SEP> de <SEP> groupes <SEP> de <SEP> tâches <SEP> ou <SEP> de <SEP> tâches.
<tb>
- <SEP> ORDONNANCEUR <SEP> Détermination <SEP> de <SEP> groupes <SEP> de <SEP> tâches <SEP> ou <SEP> de <SEP> Fin <SEP> de <SEP> IRQ <SEP> ANAL <SEP> ou
<tb> DE <SEP> TACHES. <SEP> tâches <SEP> à <SEP> exécuter. <SEP> fin <SEP> de <SEP> EXIT
<tb> Information <SEP> de <SEP> terminaison <SEP> d'exécution <SEP> de <SEP> Fin <SEP> de <SEP> groupes <SEP> de <SEP> tâches
<tb> - <SEP> EXIT
<tb> groupes <SEP> de <SEP> tâches.<SEP> individuels
<tb> INTV <SEP> IRQ <SEP> (10 <SEP> ms)
<tb> AD1IN <SEP> Extraction <SEP> de <SEP> sortie <SEP> de <SEP> ADC1
<tb> ou <SEP> ADC1END
<tb> AD1ST <SEP> Enclenchement <SEP> de <SEP> ADC1 <SEP> INTV <SEP> IRQ <SEP> (10 <SEP> ms)
<tb> INTV <SEP> IRQ <SEP> (10 <SEP> ms)
<tb> 0 <SEP> AD2IN <SEP> Extraction <SEP> de <SEP> sortie <SEP> de <SEP> ADC2
<tb> ou <SEP> ADC1 <SEP> END
<tb> AD2ST <SEP> Enclenchement <SEP> de <SEP> ADC2 <SEP> INTV <SEP> IRQ <SEP> (10 <SEP> ms)
<tb> RPMIN <SEP> Extraction <SEP> de <SEP> vitesse <SEP> de <SEP> moteur <SEP> INTV <SEP> IRQ <SEP> (10 <SEP> ms)
<tb> 1 <SEP> CARBC <SEP> Calcut <SEP> du <SEP> coefficient <SEP> d'utilisation <SEP> pour <SEP> INTV <SEP> IRQ <SEP> (20 <SEP> ms)
<tb> commande <SEP> de <SEP> proportion <SEP> carburant-air
<tb> - (suite) TABLEAU I (suite)
Figure img00140001
Identification
<tb> Niveau <SEP> Fonctions <SEP> Activation <SEP> (synchronisation)
<tb> des <SEP> programmes
<tb> IGNCAL <SEP> Calcul <SEP> de <SEP> synchronisation <SEP> d'allumage <SEP> INTV <SEP> IRQ <SEP> (20 <SEP> ms)
<tb> DWLCAL <SEP> Calcul <SEP> de <SEP> durée <SEP> de <SEP> courant <SEP> primaire <SEP> dans <SEP> INTV <SEP> IRQ <SEP> (40 <SEP> ms)
<tb> bobine <SEP> d'allumage
<tb> 2 <SEP> LAMBDA <SEP> Commande <SEP> de <SEP> # <SEP> INTV <SEP> IRQ <SEP> (100 <SEP> ms)
<tb> 3 <SEP> HOSEI <SEP> Calcut <SEP> de <SEP> corrections <SEP> INTV <SEP> IRQ <SEP> (100 <SEP> ms)
<tb> Calcul <SEP> de <SEP> positionnement <SEP> de <SEP> valve <SEP> de <SEP> carburant <SEP> OPERATION <SEP> DE <SEP> BASE
<tb> - <SEP> FISC
<tb> et <SEP> de <SEP> valve <SEP> d'air
<tb> - <SEP> ERGRCAL <SEP> Calcul <SEP> de <SEP> positionnement <SEP> de <SEP> valve <SEP> commandée <SEP> OPERATION <SEP> DE <SEP> BASE
<tb> par <SEP> pression <SEP> négative <SEP> pour <SEP> EGR
<tb> - <SEP> INTLIZ <SEP> Réglage <SEP> d'initialisation <SEP> du <SEP> circuit <SEP> START <SEP> ou <SEP> RE-START
<tb> d'entrée/sortie
<tb> Contrôle <SEP> de <SEP> START-SW <SEP> et <SEP> enclenchement <SEP> de <SEP> la <SEP> START <SEP> ou <SEP> RE-START
<tb> - <SEP> MONIT
<tb> pompe <SEP> à <SEP> carburant
<tb> - <SEP> ENST <SEP> TASK <SEP> Arrêt <SEP> de <SEP> pompe <SEP> à <SEP> carburant <SEP> et <SEP> remise <SEP> à <SEP> zéro <SEP> ENST <SEP> IRQ
<tb> de <SEP> IGN
<tb>
Comme le montre le Tableau 1, ci-dessus, il est prévu des programmes pour contrôler ou superviser le système de commande représenté sur la Fig. 5, tels que les programmes IRQ ANAL,
TACHE, ORDONNANCEUR et EXIT. Ces programmes sont mémorisés dans la mémoire ROM 104 aux adresses A000 à A2FF, comme indiqué sur la Fig. 6.
Comme programmesdeniveau "0", il est prévu AD1ST, AD2IN,
AD2ST et RPMIN qui sont activés usuellement par générationda
INTV IRQ toutes les 10 ms. Les programmes de niveau "1" comprennent les programmes CARBC, IGNCAL et DWLCAL, qui sont activés pour chaque production périodique de demande INTV IRQ à des intervalles de temps de 20 ms. Comme programme de niveau "2", il est prévu le programme LAMBDA qui est activé par demand
INTV IRQ toutes les 40 ms. Le programme de niveau "3" est HOSEI qui est activé par demande INTV IRQ toutes les 100 ms.
Les programmes EGRCAL et FISC correspondent à des opérations de base. Les programmes de niveau "0" sont mémorisés dans la mémoire ROM 104 aux adresses A700 à AAFF sous la forme PROGI, comme indiqué sur la Fig. 6. Les programmes de niveau "1" sont mémorisés dans la mémoire ROM 104 aux adresses ABOO à ABFF sous la forme PROG2. Les programmes de niveau "2" sont mémori- sés dans la mémoire ROM 104 aux adresses AEOO à AEFF sous la forme PROG3. Le programme de niveau "3" est mémorisé dans la mémoire ROM 104 aux adresses AFOO à AFFF sous la forme PROG4.
Le programme pour les opérations de base est mémorisé aux adresses BOOO à B1FF. Une liste (désignée dans la suite par
SFTMR) des adressés de départ des programmes PROG1 à PROG4 décrits ci-dessus est mémorisée aux adresses B200 à B2FF, tandis que des valeurs représentant les périodes d'activation des programmes individuels (désignées dans la suite par TTM) sont mémorisées aux adresses B300 à B3FF.
D'autres données éventuellement nécessaires sont mémorisées dans la mémoire ROM 104 aux adresses B400 à B4FF, comme indiqué sur la Fig. 6. Ensuite, des données ADV MAP, AF MAP et EGR MAP sont mémorisées aux adresses B500 à B7FF.
On va maintenant décrire en référence à la Fig. 5 les opérations de traitement résultant de l'émission ou de la génération de la demande d'interruption IRQ. Le programme 224 d'analyse des causes de la demande d'interruption IRQ comprend des sous-programmes de traitement de la demande d'interruption
ADC1 END IRQ 226, de traitement de la demande ADC3 END IRQ 228, de traitement de la demande INTV IRQ 230 et de traitement de la demande ENST IRQ 232. Pour l'exécution des sous-programmes respectifs 226, 228, 230 et 232, les contenus de la demande
IRQ associés doivent d'abord être examinés. Dans ce but, les contenus du registre d'ETAT indiqués sur la Fig. 4 sont examinés pour déterminer la cause de l'émission de la demande IRQ.
En concordance avec la cause qui a donné lieu à la génération de la demande IRQ, le sous-prpgramme 226, 228, 230 ou 232 est exécuté et, ensuite, la demande d'activation QUEUE est émise pour la tache devant être exécutée parmi les taches 252, 254, 256, 258 et 262.
A cet égard, il est à noter que, lorsqu'on laisse produire un trop grand nombre d'instructions de demande d'interruption
IRQ, il faut consacrer un certain temps à l'exécution du programme de supervision (qui-sera désigné dans la suite par 1,programme OS"), et il en résulte que le temps disponible pour l'exécution des opérations arithmétiques nécessaires pour la commande du moteur est finalement réduit ou limité.
En conséquence, dans le cas de l'application décrite, on a supposé que la demande ADC2 END IRQ 288 pouvait être engendrée seulement pendant l'exécution du sous-programme 204 ou 206 (INITIALIZ ou MONT) et qu'il existait autrement une inhibition.
Plus spécifiquement, une commande d'inhibition, c'est-à-dire "L" pour la demande ADC2 END IRQ, est établie dans le registre
MASK 200 (la bascule 766 de la Fig. 22) représenté sur la
Fig. 4. La demande ADC2 END IRQ 226 est initialement invalidée.
Plus spécifiquement, dans l'étape de démarrage 202, le registre
MASK est activé par le signal d'arrêt général pour le circuit d'entrée/sortie, précisant que toutes les demandes d'interruption sont invalidées. La demande ADC1 END IRQ est ainsi invalidéeenenipêchant l'émission de la commande de suppression d' inhibition.
Un exemple du programme 224 a été mis en évidence sur la Fig. 7. Ce programme commence à une étape d'entrée 222 et il progresse jusqu'à une étape 502, où on décide si la demande d'interruption IRQ émise est la demande ADC2 END IRQ ou non. Dans l'affirmative ("OUI"), une demande d'activation est fournie pour le programme du niveau de tâche "0" dans une étape 516. Cela peut être réalisé par établissement d'un drapeau de "1" dans la position b6 d'un mot de commande de tache
TCWO se trouvant dans la mémoire RAM 106, représentée sur la
Fig. 9. Le programme passe ensuite à 1'ORDONNANCEUR DE TACHES 242. Pour le mode de réalisation décrit, on va supposer que la demande ADC2 END IRQ peut être établie seulement pendant l'exécution du programme INITIALIZ 204, représenté sur la Fig. 5, et qu'il est autrement invalidé.Lorsque la décision à prendre dans l'étape 102 a donné la réponse "NON", le programme passe a l'étape 504 où on décide si la demande d'interruption IRQ émise est la demande INTV IRQ engendrée à intervalles de temps constants et prédéterminés. Si la réponse est affirmative ou "OUI", le programme passe à l'étape 506. Dans les étapes 506 à 514, la demande INTV IRQ est examinée en relation avec la synchronisation d'activation des programmes allant du niveau de tache "0" au niveau de tache "3". En premier lieu, un examen est effectué en ce qui concerne le programme du niveau de tache "0". Plus spécifiquement, le mot de commande de tache du niveau "0", c'est-à-dire le compteur 0 contenant les bits bO a b5 de
TCW 0 représenté sur la Fig. 9, est augmenté de "1".
A cet égard, il est à noter que, bien qu'on adopte un comptage croissant dans ce cas, on pourrait également adopter un comptage décroissant, ou une diminution. Dans l'étape 508, le contenu du compteur 0 de TCW 0 est comparé avec celui de la minuterie d'activation de tâche TTMO représenté sur la Fig. 9.
A cet égard, la présence d'un."l" dans TTMO signifie que le programme du niveau de tache "0" (désigné par 252 sur la Fig. 5) est activé à intervalles de 10 ms, puisqu'on a supposé que la demande d'interruption INTV IRQ est engendrée à des intervalles de temps de 10 ms. Dans l'étape 508, les contenus du compteur
CNTRO et de la minuterie de tâche TTMO sont comparés l'un avec l'autre. Lors de la détection d'une colncidence (c'est-à- dire "OUI"), le programme passe à l'étape 5pour laquelle un drapeau "1" est établi en b6 du mot de commande de taches
TCWO. Dans le mode de réalisation représenté, les bits b6 de chaque mot TCW représentent les drapeaux de demande d'activation des tâches associées.Les positions de bits b0 à CNTRO sont toutes effacées, du fait que i drapeau "1" a établi en b6 de TCWO dans l'étape 510.
Dans l'étape 512, on effectue une extraction du minutage d'activation du programme correspondant au niveau de tâche "1".
Dans l'étape 51d, on décide si la tâche de niveau "3" a été terminée, c'est-à-dire si n = . air n 1 dans ce cas, le programme revient à l'étape 506, où le contenu du compteur
CNTR1 de TCW1, dans la mémoire RAM 106 représentée sur la
Fig. 9, qui constitue le mot de commande de tâche pour le programme du niveau de tache "1", est augmenté de "+1'.
Dans l'étape 508, le contenu ainsi augmenté est comparé avec le contenu de TTM1 de la mémoire ROM 104 représentée sur la
Fig. 9. Pour le mode de réalisation représenté, on a supposé que le contenu de TTM1 est égal à "2". En d' d'autres termes, la période de minutage Pour l'activation du programme du niveau de tâche "1" est de 20 ms. En supposant maintenant que le contenu du compteur CNTR1 est égal à ", le résultat de la décision prise dans l'étape 508 est 11NON", ce qui signifie que le minutage d'activation ne convient pas pour le programme 254 du niveau de tâche "1".En conséquence, le programme passe à l'étape 512, o le niveau de tâche du programme à extraire est mis à Jour à nouveau au niveau de tâche "2i'. D'une manière semblable, des opérations de traitement sont effectuées jusqu'au niveau "3", â la suite de quoi n devient égal à 4 dans l'étape 512. En conséquence, la condition n = MAX est satisfaite dans l'étape 514.
La fonction de traitement est alors transférée à l'ordonnanceur de tâches 242.
Lorsqu'il ne se trouve pas de demande INTV IRQ dans l'étape 504, le programme passe à une étape 518 où on décide que la demande IRQ en question est la demande d'interruption
ENST IRQ. Quand la décision prise dans l'étape 504 a conduit à une réponse négative "NON", la demande IRQ doit obligatoirement être ENST IRQ. En conséquence,l'étape 518 peut être omise et le programme peut passer directement à l'étape 520, où la pompe à carburant est arrêtée en concordance avec un programme spécifique basé sur l'arrêt du moteur.
En outre, tous les signaux de sortie pour le système d'allumage et le système de commande d'alimentation en carburant sont remis à zéro. Le programme revient alors à l'étape de démarrage 202, indiquée sur la Fig. 5.
La Fig. 8 représente en détail, sous la forme d'un organigramme, un programme pour l'ordonnanceur de taches 242.
Dans une étape 530, on décide si la tache de niveau "n" est nécessaire. En premier lieu, n = 0. En conséquence, une décision est prise en ce qui concerne l'obligation d'exécution de la tache de niveau "0". En d'autres termes, la présence de la demande d'exécution de tache est examinée dans l'ordre décroissant des niveaux de priorité. Un tel examen peut etre effectua par une extraction de bits correspondant aux positions b6 et b7 des mots de commande de taches respectifs. On affecte a la position de bit b6 un drapeau de demande d'activation.
Lorsqu'il existe un "1" dans cette position b6, il définit que la demande d'activation ou d'exécution est présente. En outre, on affecte à la position b7 un drapeau indiquant que la tache associée est en cours d'exécution. La présence d'un "1" en b7 indique que la tache associée est en cours d'exécution et est maintenant en train d'etre interrompue. En conséquence, lorsqu'il existe un "1" dans au moins une des positions b6 et b7, le programme de l'ordonnanceur passe a l'étape 538.
Dans l'étape 538, le drapeau établi en b7 est vérifié.
La présence d'un "1" en b7 signifie que l'exécution est en train d'etre interrompue. Dans une étape 540, l'exécution en train d'être interrompue jusqu'à maintenant est rétablie.
Le drapeau établit dans les positions b6 et b7 fait en sorte que la décision prise dans l'étape 538 soit affirmative ou "OUI", de sorte que le programme de tache en train d'être interrompu est réenclenché. Dans le cas où il existe un "1" seulement en b6, le drapeau de demande d'activation de la tache du niveau correspondant est effacé dans l'étape 542, qui est suivie par une étape 544 où le drapeau est établi dans la position b7 (ce drapeau sera appelé dans la suite "drapeau RUN").
Les étapes 542 et 544 indiquent maintenant que la demande d'activation pour la tache di: niveau correspondant progresse jusqu'à l'état où cette tache doit etre exécutée.
En conséquence, dans une étape 546, l'adresse de départ du programme de la tâche du niveau correspondant est extraite.
Cette adresse peut être déterminée à partir d'une table d'adresses de départ TSA qui. est prévue dans la mémoire ROM 104 en correspondance aux mots TCW des différents niveaux de taches. L'exécution du programme de tâche considéré est alors effectuée en passant à l'adresse de départ déterminée comme décrit ci-dessus.
En considérant à nouveau la Fig. 8, on voit que, lorsque la décision prise dans l'étape 530 provoque une réponse "NON", cela signifie qu'une demande d'activation n'a pas été émise pour le programme du niveau de tache en train d'être extraite et, également, que le programme n'a pas été momentanément interrompu. Dans ce cas, le programme de l'ordonnanceur procède à l'extraction de la tache correspondant au niveau immédiatement supérieur. En d'autres termes, le niveau n de la tache est augmenté jusqu' (n + 1). A ce moment, on vérifie si la valeur du niveau augmenté (n + 1) correspond à la valeur maximum MAX, c'est-à-dire si (n + 1) = 4. Dans la négative, le programme d'ordonnanceur passe à l'étape 530.Le processus décrit ci-dessus est répété jusqu'à ce que n devienne égal a
MAX ou 4, à la suite de quoi, le programme interrompu pour les opérations de base est repris dans une etape 536.
En d'autres termes, on confirme dans l'étape 536 que tous les programmes correspondant aux taches des niveaux "0" a "3" ne doivent pas être exécutés, de sorte que le traitement repart au point du programme d'opérations de.base où le programme avait été interrompu en réponse à l'apparition de la demande d'interruption IRQ:
La Fig. 9 donne la relation entre les mots de commande de taches TCW et la table d'adresses de départ de taches TTM représentant les intervalles ou périodes d'activation de taches, qui sont mémorisés dans la mémoire ROM. Les periodes d'activation de taches TTMO à TTM3, sont mémorisées dans la mémoire ROM en correspondance aux mots de commande de taches
TCW0 àTCW3. Pour chaque demande INTV IRQ, les compteurs CNTR ou TCW sont successivement mis à jour et un drapeau est établi dans la position b6 du mot TCW associé lors d'une confidence entre les contenus du compteur et de TTM pourla tache correspondante. Lorsque le drapeau est ainsi établi, l'adresse de départ de la tache est extraite de l'adresse de départ de tache TSA. On passe alors à l'adresse de départ extraite, de sorte que celui des prqgrammes 1 à 4 qui a été sélectionnE est exécuté. Pendant l'exécution, un drapeau est établi en b7 du mot TCW de la mémoire RAM 106, en correspondance au programme en train d'être exécuté. En conséquence, si ce drapeau est établi, la décision est prise en ce qui concerne l'exécution du programme associé.De cette manière, le programme pour l'ordonnanceur de taches 242 de la Fig. 5 est exécuté.
Il en résulte l'exécution d'un des programmes de taches 252 a 258 correspondant aux niveaux de taches "0" à "3". Lorsqu'une demande d'interruption IRQ est émise pendant l'exécution d'un programme de tache, l'exécution est interrompue à nouveau pour satisfaire à cette interruption IRQ. En supposant qu'aucune demande d'interruption IRQ n'a été émise, le traitement de la tache en train d'être exécutée est effectué jusqu'à terminaison.
A la terminaison de l'exécution du programme de tache, le programme EXIT 260 est ensuite exécuté.
Le programme EXIT 260 a été représenté de façon détaillée sur la Fig. 10. Ce programme est composé d'étapes 562 et 564 permettant d'identifier la tache terminée. Dans les étapes 562 et 564, une extraction est effectuée successivement à partir de la tache de niveau "0" afin d'identifier le niveau de la tache terminée. Dans l'étape suivante 568, le drapeau RUN établi dans la position b7 de TCW, en correspondance à la terminaison de tache, est remis à zéro, ce qui signifie que le programme correspondant à la tache identifiée est complètement terminé.
La fonction de traitement est alors à nouveau reprise par l'ordonnanceur 242, ce qui permet de déterminer le programme suivant à exécuter.
La Fig. 11 représente en détail le circuit IRQ indiqué sur la Fig. 4. Lorsqu'une condition de demande d'interruption
IRQ à l'unité CPU est satisfaite, un drapeau est établi dans une position de bit correspondante du registre STATUS.
Une condition de demande d'exécution de l'interruption IRQ à l'unité CPU, sur la base de la condition définie ci-dessus, est chargée dans le registre MASK comme décrit ci-dessus.
Les positions de bits du registre MASK et du registre sont connectées a des entrés correspondantes des portes ET 748, 759, 770 et 772, et le signal de demande d'interruption
IRQ est émis par l'intermédiaire d'un porte OU 751 pour la position de bit dans laquelle les conditions du registre tESK et du registre STATUS sont remplies.
L'unité CPU peut lire le contenu du registre STATUS par l'intermédiaire du bus 110. Dans les étapes 502, 504 et 518, représentées SUL la Fig. 7, la condition du registre STATUS est décodée pour analyser 1a cause de su 2 interruption.
L'opération d'établissement d'un drapeau indiquant la condition de la demande d exécution d intrruption IRQ qui a été fournie au registre STATUS va maintenant être expliquée.
En premier lieu, pour examiner si la condition de INTV IRQ est satisfaite, des données représentant une durée d'interruption (par exemple 10 millisecondes3 sont fournies à un registre 735 à partir de l'unité CPU par l'intermédiaire du bus 110. Un compteur 736 compte les impulsions d'horloge et, quant le compte atteint une valeur prédéfine dans le registre 735, un comparateur 737 intervient. Il e.n résulte qu'une bascule 738 est activée de manière à établir le bit de drapeau correspondant du registre STATUS.
Une porte ET 747 fonctionne de façon à remettre à zéro la bascule 738 et le compteur 736. La bascule 73g fonctionne de façon à empêcher les données remises à zéro d'être transférées dans le compteur 736.
On va maintenant décrire un circuit permettant de détecter l'arrêt du moteur (c'est-à-dire si la vitesse de rotation du moteur tombe en dessous d'un niveau prédéterminé).
Une représentation numérique d'une période de temps prédéterminée est chargée dans un registre 741 à partir de l'unité CPU.
D'autre part, un compteur 742 compte des impulsions d'horloge CLOCK. Une borne de remise à zéro du compteur 742 reçoit des impulsions SREFP (comme décrit en référence à la Fig. 29), qui sont synchronisées avec la rotation du moteur. Pendant que le moteur tourne, le compteur 742 est remis à zéro de façon continue par les impulsions SREFP, de sorte que le contenu du compteur 742 n'atteint pas la valeur pré-réglée dans le registre 741. Cependant, quand la vitesse de rotation du moteur diminue très fortement, le compte du compteur 742 atteint la valeur pré-réglée se trouvant dans le registre 741 et un signal de sortie est fourni par un comparateur 743 à une bascule 744 de manière qu'un drapeau soit établi pour le registre ?TATOUS.
Une porte ET 749 fonctionne de manière à remettre à zéro également la porte ET 747. Les éléments ADC1END IRQ et ADC2END
IRQ fonctionnent également de la même manière. Lorsque l'opéra- tion de conversion effectuée par le convertisseur ADC1 est terminée, un "1" est établi dans une bascule 764. Lorsqu'un "1" est établi dans une bascule 762 à partir de l'unité CPU et par l'intermédiaire de la Ligne omnibus 110, la condition logique ET d'une porte ET 770 est satisfaite, et une exécution d'interruption ACD1END IRQ est demandée à l'unité CPU par l'intermédiaire d'une porte OU IRQ. Cependant, si un "1" n'a pas été établi dans la bascule 762, l'interruption ADC1END IRQ est invalidée. La même considération s'applique au convertisseur ADC2. A la fin de la séquence ADC2, un "1" est établi dans une bascule 768.Si un "1" a été établi dans une bascule 766, la demande d'interruption ADC2END IRQ est émise par l'intermédiaire d'une porte ET 772 et d'une porte OU 751, mais si le "1" n'a pas été établi dans la bascule 766, la condition logique ET de la porte ET 772 n'est pas remplie et la demande d'interruption ADC2END IRQ n'est pas émise.
En conséquence, la demande d'interruption IRQ est émise si un "1" est établi dans les bascules 739, 745, 762 ou 766, alors que, si un "0" est établi, l'émission de la demande d'interruption IRQ est empêchée.
La Fig. 12 représente un schéma synoptique montrant le principe d'utilisation des impulsions de sortie des registres
CABD et CABP, qui constituent le composant CABC 162 représenté sur la Fig. 4, des registres ADV et DWL du composant IGNC 164, des registres FSCD et FSCP du composant FSC 172, des registres
EGRD et EGRP du composant EGRC 178, du circuit INTV IRQ comprenant le registre 735, le compteur 736 et le comparateur 737 de la Fig. 11, ou bien du circùit ENST IRQ comprenant le registre 741, le compteur 742 et le comparateur 743.
Des impulsions d'horloge G1, G2, G3 et G4, qui sont produites par-des horloges biphasées f1 et f2, communes aux horloges servant à activer l'unité CPU, sont appliquées à un registre à décalage 1002. Des circuits de verrouillage formant les positions de bits respectives du registre 1002 comprennent chacun des bascules maItre-esclave. Les circuits de verrouillage effectuent les opérations de décalage à l'aide des quatre impulsions d'horloge G1, G2, G3 et G4. Dans le mode de réalisation considéré, le registre à décalage 1002 est un registre à 8 bits et il est activé par des impulsions d'horloge à quatre phases,- mais le nombre des positions de bits peut changer en fonction de la précision de commande et il peut atteindre la valeur seize.
Les impulsions d'horloge peuvent être à deux phases ou à phases multiples.
Un registre de verrouillage à 8 bits 1006 peut lire et écrire des données échangées avec l'unité CPU par l'intermé- diaire de la ligne omnibus 110, à l'aide d'un circuit d'interface contenu dans l'unité CPU. Un circuit de transfert de données 1004 répond à un signal de commande G4SET ou G2MOVE pour transférer les données entre le registre de verrouillage 1û06 et le registre à décalage 1002. Un circuit d'augmentation/ diminution 1008 traite un report. Un circuit de détection de zero 1009 détecte la condition "rien que des zéros" du registre à décalage 1002 en contrôlant la sortie du circuit d'augmentation/diminution 1008.Le circuit d'augmentation/diminution 1008 reçoit des données de un-bit provenant du circuit de verrouillage à 27 bits du registre à décalage 1002, il traite le report et il fournit les données de un-bit au circuit de verrouillage à 27 bits du registre à décalage 1002.
On va maintenant expliquer en détail les opérations exécutées par le registre à décalage 1002 et le circuit d'augmentation/diminution 1008. La donnée QO du circuit de verrouillage à 27 bits du registre à décalage 1002 est appliquée au circuit d'augmentation/diminution 1008, qui agit maintenant comme un circuit de diminution. En supposant que la donnée initialement chargée dans le registre à décalage 1002 est "10001100", le "0" intervenant dans la 1ère position de bit est appliqué de façon à représenter la valeur QO.
Quand le circuit d'augmentation/diminution 1008 doit fonctionner comme un circuit de diminution, des "1" sont appliqués aux bornes d'entrée DEC et CIN. Quand un "0" est appliqué à la borne d'entrée CIN, le circuit d'augmentation/diminution 1008 ne fonctionne ni pour augmenter ni pour diminuer mais il transmet des données entrantes sans les modifier. On va maintenant supposer qu'un "1" est appliqué à la borne CIN. Le circuit d'augmentation/diminution 1008 produit un premier signal de sortie QOo en relation avec l'équation Booléenne suivante: QOo = qu z CIN ........ (1) où Qo = O. CIN = 1 dans l'exemple considéré et représente une fonction OU exclusif des deux entrées Qo et CIN.
En conséquence,on obtient QOo = 1.
Un premier rapport Co est déterminé en relation avec l'équation Booléenne suivante:
Co = Qo . CIN ........ (2)
Puisque Qo = O. Qo = 1, et CIN = 1, en conséquence, on obtient Co = 1.
Pendant l'opération décrite ci-dessus, un "1" est transféré de la borne de sortie QOi dans la 27ème position de bit du circuit de verrouillage du registre à décalage 1002 et le contenu du registre à décalage 1002 devient maintenant "11004110
Pour l'impulsion d'horloge suivante, le "0" qui constituait le signal de second bit de la donnée initiale "10001100" est transféré de la première position de bit du circuit de verrouillage du registre à décalage 1002 jusqu'à la borne d'entrée
Qi du circuit d'augmentation/diminution 1008 sous la forme du signal Q1. La borne de sortie QOi du circuit d'augmentation/ diminution 1008 produit par conséquent un signal QOi qui est représenté par l'équation Booiéenne suivante:
QO1 = Q1 # Co ........ (3)
Puisque Q1 = O et Co = 1. on obtient QO1 = 1.
Le contenu de Co est un report traité dans la position de bit précédente et il est emmagasiné dans le circuit d'augmentation/ diminution 1008. Le circuit d'augmentation/diminution 1008 traite la sortie QO1 comme le report. Un report C1 est repré senté par l'équation Booléenne suivante:
Cl = 7Q . Co ........ (4)
Puisque U = 1 et Co = 1. on obtient C1 = 1.
En conséquence,le "1" est maintenu comme report dans le circuit d'augmentation/diminution 1008. Puisque le circuit d'augmentation/diminution 1008 produit le "1 ', le contenu du registre à décalage 1002 est maintenant changé n "11100011".
Pour la troisième impulsion d'horloge, le "1" est appliqué au circuit d'augmentation/diminution 1008 sous la forme du signal d'entrée Q2. La sortie Q2 devient maintenant:
Q02 = Q2 # C1 C1 (5)
Puisque Q2 = 1 et C1 = 1, on obtient Q02 - 0.
Le report C2 prend la valeur suivante:
C2 = Q2 . C1 * (6)
Puisque Q2 = 0 et C1 = 1, on obtient C2 = 0.
En conséquence, le "0" est maintenu comme report et le contenu du registre à décalage 1002 devient "01110001".
Comme le montre les opérations faites ci-dessus, les équations booléennes des sorties du circuit d'augmentation/ diminution 1008 seront représentées par les équations suivantes: - Première sortie QOo = Qo # CIN ........ (7)
- La seconde sortie et les suivantes sont représentées par:
QOi = Qi eC(i - .1) (8) où Qo désigne la première entre provenant du registre à décalage 1002 et transmise au circuit d'augmentation/diminution 1008.
CIN et DEC sont des entrées de commande de la fonction de diminution. Lorsque les entrées CIN et DEC sont des "1", le circuit d'augmentation/diminution 1008 effectue une diminution et, quand l'entrée CIN est "0", il transmet le signal d'entrée sans diminution.
Les reports emmagasinés dans le circuit d'augmentation/ diminution 1008 sont représentés par les équations suivantes:
- Premier report Co = Qo . CIN ........ (9)
- Second report et suivants:
Ci = Qi . C(i - 1) ..... (10)
L'élément Qi définit la i-ième entrée du circuit d'augmentation/ diminution 1008, tandis que l'élément C(i - 1) est un report qui a été déterminé dans le cycle précédent et qui est contenu dans le circuit d'augmentation/diminution 1008.
Comme le montrent les équations (7) à (10), pour la 4ème impulsion d'horloge, le contenu du registre à décalage devient "10111000" et, pour la 5ème impulsion d'horloge, il passe à "01011100", pour la 6ème impulsion d'horloge, il passe à "00101110", pour la 7ème impulsion d'horloge, il passe à "00010111", et pour la 8ème impulsion d'horloge, il passe à "10001011". Comme le montre la description faite ci-dessus, après huit impulsions d'horloge à quatre phases qui sont produites par les horloges #1 et 2, le contenu initial "10001100" est réduit à "10001011".En conséquence, après un nombre d'impulsions d'horloge qui est égal au nombre des bits du registre à décalage 1002, le contenu de ce registre à décalage 1002 est réduit de un pour la fonction de diminution et augmenté de un pour la fonction d'augmentation.
On va maintenant expliquer, en référence aux Fig. 13A, 13B et 14, le fonctionnement des circuits de base du registre à décalage 1002, du circuit d'augmentation/diminution 1008, du registre de verrouillage 1006 et du circuit de transfert 1004. La Fig. 13A représente un circuit à décalage d'un-bit comprenant des inverseurs dynamiques 1010 et 1012.
Les symboles Qî et # de l'inverseur 1010 indiquent que l'inverseur 1010 est activé par des impulsions d'horloge G1 et G2, tandis que les symboles Q3 et # de l'inverseur 1012 indiquent que cet inverseur 1012 est activé par les impulsions d'horloge G3 et G4. La Fig. 13B donne une représentation MOS du circuit de la Fig. 13A. On va expliquer le fonctionnement du système de la Fig. 13B en référence â des formes d'ondes opérationnelles indiquées sur la Fig. 14.
En premier lieu, des impulsions d'horloge à quatre phases G1 à G4 sont produites par les horloges 91 et 2.
Dans un créneau de temps C1, G1 = 1 et G2 = 1 et les transistors TR1 et TR2 sont conducteurs. Cependant, un transistor TR3 est bloqué du fait que la tension grillesource de TR3 n'atteint pas un niveau de seuil. En conséquence, une charge externe, telle qu'une capacité distribuée
C qui est reliée à une borne de sortie OUT1 de l'inverseur 1010, est préchargée. Dans le créneau de temps suivant D1, G1 = O et G2 = 1, de sorte que le transistor TR1 est bloqué et que le transistor TR2 est conducteur. Le transistor TR3 reste bloqué du fait que IN1 est "0". En conséquence, la capacité distribuée C retient la charge qui a été établie par Vcc (tension d'alimentation). Il en résulte que l'inverseur 1010 produit la sortie OUT1 = 1 pour l'entrée IN1 = 0.
Dans le créneau de temps El, G3 et G4 ont la valeur "1" et les transistors TR4 et TR5 sont conducteurs. Le transistor
TR6 reste bloqué du fait que les entrées IN2 et G3 ont la valeur "1". En conséquence, la capacité distribuée qui est connectée à la sortie OUT2 de l'inverseur 1012 est préchargée par la tension d'alimentation Vcc par l'intermédiaire du transistor TR4. Dans le créneau de temps F1, une opération logique est effectuée. Puisque G3 = 0, G4 = 1 et IN2 = 1, le transistor TR4 est bloqué et les transistors TR5 et TR6 sont conducteurs, la charge pré-établie dans la capacité distribuée qui est connectée à la sortie OUT2 étant déchargée par l'intermédiaire des transistors TR5 et TR6. I1 en résulte que la sortie OUT2-produit un signal "0".
La Fig. 15A représente un autre circuit de base, dont une représentation MOS est donnée sur la Fig. 15B. Le fonctionnement de ce circuit est en principe identique à celui du circuit de la Fig. 13. En premier lieu, les transistors
TR1 et TR2 sont rendus conducteurs par les impulsions d'nor- loge G3 et G4 et la capacité parasite connectée à la borne
OUT est pré-chargée. Ensuite, une opération logique est effectuée par le circuit logique comprenant les transistors
TR3, TR4, TR5 et TR6. Les transistors TR3 et TR4 et les transistors TR5 et TR6 sont connectés en série de façon à former des portes ET. Les circuits-série sont connectés en parallèle pour former une porte-NI.
La Fig. 16 représente un bit du registre à décalage, du circuit de transfert de données et du registre de verrouillage représentés sur la Fig. 12. Le bloc 1022 représente un registre à décalage de un-bit, le bloc 1024 représente un circuit de transfert de données de un-bit, le bloc 1026 représente un circuit de verrouillage de un-bit et le bloc 1028 représente un circuit d'interface de un-bit qui est placé entre le circuit de verrouillage 1026 et le bus de données. Le circuit de la Fig. 12 comprend huit circuits tels que ceux de la Fig. 16, qui sont connectés en série.
En référence à la Fig. 17A, on va expliquer le circuit à décalage de un-bit. Lors de l'arrivée de l'impulsion d'horloge G1 = "1", la partie du circuit de la Fig. 17A quiest représentXe par des lignes en traits pleins. entre en action, tandis que la partie représentée par des lignes en traits interrompus est inactive. Les transistors 1027 et 1029 sont rendus conducteurs et un signal d'entrée SIN est transmis à une ligne 1030 par l'intermédiaire des transistors 1027 et 1029 et d'un inverseur 1048. Une capacité présente dans la ligne de transmission de signaux 1030 est chargée, de sorte que l'entrée SIN est maintenue appliquée à la ligne de signaux 1030.
A l'instant défini par G1 = O, les transistors 1027 et 1029 sont bloqués et les lignes de signaux 1032 et 1030 sont isolées l'une de l'autre. Dans ce créneau de temps, les inverseurs 1042 et 1044 du circuit de verrouillage qui va être décrit dans la suite sont également actifs. Un circuit qui est actif lors de la génération des impulsions d'horloge G3 et G4 suivant les impulsions d'horloge G1 et G2 a été représenté sur la Fig. 17B. Le signal appliqué à la ligne 1030 est transmis à la sortie SOUT en synchronisme avec la disparition de l'impulsion d'horloge G3, comme expliqué en référence à la
Fig. 13.En conséquence, pour les impulsions d'horloge G1 et
G2, la donnée appliquée à l'entrée SIN est maintenue dans la ligne 1030 et, pour les impulsions d'horloge G3 et G4, elle est sortie de l'inverseur 1040. De cette manière, l'entrée SIN est émise comme la sortie SOUT en synchronisme avec l'arrivée des impulsions d'horloge G1, G2, G3 et G4, et une opération de décalage d'un-bit est terminée. Par répétition des impulsions d'horloge G1 et G4, le registre à décalage répète l'opération de décalage. Lorsque le registre à décalage de 8 bits est réalisé par la connexion en série des huit registres à décalage de un-bit représentés sur la Fig. 12, les opérations de décalage sont effectuées par les impulsions d'horloge G1 a
G4 qui sont appliquées aux registres à décalage de un-bit correspondants. Après que huit séries d'impulsions d'horloge G1 à G4 ont été appliquées, la données de 8 bits est mémorisée et décalée d'un tour dans le registre à décalage
On va maintenant expliquer le fonctionnement du circuit de verrouillage 1026 en référence aux Fib. 17A et 17B.
Comme indiqué par les lignes en traits pleins sur la Fig. 17A, la donnée appliquée à la ligne 1034 est mémorisée dans la ligne 1036 par l'intermédiaire d:un inverseur dynamique 1042 et d'un inverseur 1044 lors de l'arrivée des impulsions d'hologe G1 et G2. Lors de l'arrivée des impulsions d'horloge G3 et G4, la donnée mémorisée dans la ligne 1536 est transférée dans un transistor 1049 par l'intermédiaire d'un inverseur dynamique 1046 et d'un Inverseur 1048, comme indiqué sur la
Fig. 17B.Puisque le transistor 1049 est rendu conducteur lors de l'arrivée de l'impulsion horloge G4, la donnée transférée de la ligne 1036 au transistor 1049 est en outre trans férée jusqu'd la ligne 1034. Puisque les transistors 1027 et 1029 sont bloqués au moment de l'arrivée des im.pulsions d'hor- loge G3 et G4, le circuit-série constitué par la ligne de signaux 1038, l'inverseur 1048 et la ligne de signaux 1032 est isolé de l'entrée et de la sortie du circuit à décalage d'un-bit 1022, de sorte qu il fonctionne comme une partie du circuit de verrouillage 1026.Ce circuit-série est partagé par le circuit à décalage d5ual-bit et par le circuit de verrouillage, de sorte que la donnée d'entrée SiNducircuit à décalage passe par le circuit-serie lors de l'arrivée des impulsions d'horloge G1 et G2, tandis que la donnée du circuit de verrouillage passe par le circuit-série lors de l'arrivée des impulsions d'horloge G3 et G4. La donnée placee dans la ligne 1034 est transmise à la ligne 1036, tandis que la donnée placée dans la ligne 1036 est à nouveau renvoyée à la ligne 1034 lors de l'arrivée des impulsions d'horloge G3 et G4.
De cette manière, les données sont retenues par une circulation dans le circuit de verrouillage à boucle fermée sous l'action des impulsions d'horloge G1 à G4.
On va maintenant expliquer l'opération d'écriture de données qui est faite à partir de l'unité CPU par l'intermé- diaire de la ligne omnibus. Une partie du circuit de la
Fig. 12 qui intervient dans l'opération d'établissement de données a été représentée par des lignes en traits pleins sur la Fig. 18 et son fonctionnement a été mis en évidence sur la
Fig. 19. Un signal transmis par une ligne de commande WCS (sélection de pastilles d'ecriture) contient des données d'adressesqui sont envoyées par l'unité CPU par l'intermédiaire du bus d'adressesainsi qu'un signal de commande qui est transmis par l'intermédiaire du bus de commande et qui agit de façon à commander l'interface entre le circuit de verrouillage et la ligne à un-bit qui constitue le bus de données DB.Le signal transmis par la ligne WCS est synchronisé avec les bords avant des impulsions d'horloge G2 et G4.
Un signal transmis par une ligne de commande G4SET fonctionne de façon à transférer des données du circuit de verrouillage au circuit de décalage.
Lorsque le signal représentant l'écriture de données est transféré à partir de l'unité CPU par l'intermédiaire du bus de commande ou du bus d'adresses,le signal transmis par la ligne WCS prend la valeur "1". Ce créneau de temps a été représenté en P sur la Fig. 19. Dans ce créneau de temps, les données à écrire sont transmises par la ligne DB, qui constitue le bus de données, et elles sont ensuite transférées vers la ligne de signaux 1034 par l'intermédiaire du transistor 1052. Lors de l'arrivée des impulsions d'horloge G1 et G2, le signal transmis par la ligne 1034 est transféré vers la ligne 1036 par l'intermédiaire de l'inverseur dynamique 1042 et de l'inverseur 1044. De cette manière, les données arrivant par le bus DB sont transférées vers le circuit de verrouillage par l'intermédiaire du transistor 1052.
Pour transférer les données vers le circuit de décalage, le signal G4SET est engendré quand le signal transmis par le bus de données DB est transféré vers la ligne 1038 du circuit de verrouillage afin de rendre conducteur le transistor 1054, qui permet à son tour le transfert des données vers la ligne 1030, les données étant décalées vers la sortie SOUT lors de l'arrivée des impulsions d'horloge G3 et G4.
On va maintenant expliquer, en référence aux Fig. 19 et 20, l'opération de lecture de données qui est exécutée par le circuit de la Fig. 12.
Le signal du registre de décalage est maintenu dans la ligne 1032 du circuit de décalage du fait que les transistors 1027 et 1028 ont été rendus conducteurs lors de l'arrivée de l'impulsion d'horloge G1. En réponse à un signal G2MOVE, le signal existant dans la ligne 1032 est transféré vers la ligne 1034 par l'intermédiaire du transistor 1050 et il-est en outre transféré vers la ligne 1036 lorsque l'arrivée des impulsions d'horloge G1 et G2. Lors de l'émission d'un signal RCS (sélection de pastilles de lecture) qui est produit par les signaux envoyés par l'unité CPU par l'intermédiaire du bus de commande et du bus d'adresses, le transistor 1054 est rendu conducteur et le signal existant dans la ligne 1036 est transféré vers le bus de données DB. De cette manière, le signal du circuit de décalage est lu.Quand plusieurs circuits, tels que celui de la Fig. 12 doivent être branchés en parallèle, les circuits de la Fig. 16, qui constituent des cellules de base, sont agencés sous la forme d'une matrice régulière et les horloges G1 à G4, les bus de données DB0 à DB7 et les lignes de transmission de signaux G2MOVE, G4SET, WCS et RCS sont connectés de façon normale par des conducteurs en aluminium.
On a représenté sur les Fig. 22A et 22B les circuits de génération des signaux G4SET, G2MOVE et RCS et leur fonctionnement a été mis en évidence sur la Fig. 23. La Fig. 22A représente le circuit de génération du signal G4SET pour l'accès d'écriture. Un signal de lecture/écriture R/W peut être produit par un micro-ordinateur M-6800, qui est utilisé dans un mode préféré de réalisation de la présente invention.
Un bas niveau du signal de lecture/écriture indique l'accès d'écriture, tandis qu'un haut.niveau indique l'accès de lecture. Un symbole CS représente un signal de sélection de pastilles de niveau normalement haut (niveau logique négatif) et le symbole FF100 représente une bascule de type-D.
La bascule FF100 verrouille (met à 1) l'entrée D appliquée lors du minutage de déclenchement G4, qui est appliqué à une entrée d'échantillonnage ST. Cela signifie qu'elle met à 1 l'entrée D à l'instant d'arrivée du bord croissant de G4 et le signal G4SET est déterminé par cette condition de mise à 1.
L'entrée D reçoit une fonction logique NI de CS et R/W provenant d'une sortie d'un circuit NI. Ainsi, une sortie Q de la bascule FF100 est déterminée par les signaux R/W et CS au moment de l'arrivée du bord croissant de G4. Dans un créneau de temps désigné par A sur la Fig. 23, la sortie de la porte
NI prend l'état "1" puisque les deux signaux CS et R/W sont à l'état "0". En conséquence, la sortie Q de la bascule devient "0" pour le bord croissant de l'impulsion d'horloge G4.
Ensuite, dans un créneau de temps B, la sortie de la porte NI passe à l'état "0" puisque les deux signaux CS et R/W sont à l'état "1". En conséquence, la sortie Q de la bascule prend la valeur "1" pour l'arrivée du bord croissant de l'impulsion d'horloge G4. L'état du signal G4SET est déterminé par les états de la sortie Q et de l'impulsion d'horloge G4 par l'intermédiaire de la porte NI.
La Fig. 22B représente un circuit de génération du signal
G2MOVE pour l'accès de lecture et du signal RCS. Les signaux
R/W et CS sont appliqués à une entrée d'une porte ET et à une entrée-D d'une bascule FF101 par l'intermédiaire d'une porte NI.
L'impulsion d'horloge f1 est appliquée à l'autre entrée de la porte ET et à une entrée ST de la bascule FF101. Une sortie Q de la bascule FF101 est appliquée à une porte NI en même temps que l'impulsion d'horloge +1 et cette porte NI produit la sortie RCS. En conséquence, l'état du signal G2MOVE est déterminé par les états des signaux R/w, CS et 01 En outre, l'état de la sortie Q de la bascule FF101 est déterminé par les états de R/W et CS pour l'arrivée du bord croissant de l'impulsion d'horloge 1 (ou G2).L'état du signal RCS est déterminé par la sortie Q et par l'impulsion d'horloge f1-
On a représenté en détail sur la Fig. 24 le schéma du circuit d'augmentation/diminution de la Fig. 12 et son fonctionnement a été mis en évidence sur la Fig. 25. Le signal Qi est un signal de un-bit qui est décalé hors du circuit de décalage correspondant à la position de bit de poids le plus faible (LSB) du registre à décalage. En réponse à ce signal d'entrée, le signal de sortie du circuit d'augmentation/ diminution 1008 est transféré d'une borne QOi au circuit de décalage de la position de bit de poids le plus fort (MSB) du registre à décalage.La relation existant entre l'entiée et la sortie quand le circuit d'augmentation/diminution 108 fonctionne comme un circuit de diminution, est définie par les équations (7), (8), (9) et (10) indiquées ci-dessous: QOo=Qo # CIN ........ (7)
QOi = Qi C(i-1) C(je (8)
Co = Qo . CIN w (9)
Ci = Qi . C(i-1) ........ (10)
Quand le circuit d'augmentatlon/diminution 1008 fonctionne comme un circuit d'augmentation, les relations obtenues sont les suivantes:
QOo = Qo &commat; CIN (11) QOi = Qi # C(i-1) ........ (12)
Co = Qo + CIN ........ (13)
Ci = Qi .C(i-1) ........ (14)
Dans l'opération de diminution: le signal DEC - 1 et le signal
INC = 0, et dans l'opération d'augmentation: INC = 1 et DEC = 0.
Comme le montrent les équations (7) et (8), d'une part, et (11) et (12), d'autre part, les relations existant entre l'entrée et la sortie du circuit d'augmentation/diminution sont identiques pour l'opération d'augmentation et pour l'opération de diminution. Dans l'exemple du registre à décalage de 8 bits qui a été représenté sur la Fig. 12, le signal de bit de poids le plus faible LSB est d'abord appliqué, sous la forme Qi, au circuit d'augmentation/diminution.
Un signal GC est fourni par un circuit de synchronisation à chaque instant de minutage numéro 1 qui représente le debut du décalage.
Les inverseurs dynamiques 1076 et 1088 représentés sur la Fig. 24 constituent un circuit de génération de report Ci, désigné par 1080. Une porte ET 1080 s'ouvre, et une porte ET 1078 se ferme, lors de l'etablissement du niveau H du premier signal GC de sorte que le signal CIN est lu.En particulier, lors de l'arrivée du premier signal GC, le signal CIN est considéré comme un report et, aux instants de minutage suivants
GC, des reports sont logiquement déterminés en relation avec les équations (10) ou (14), du fait que la porte ET 1080 est fermée et que la porte ET 1078 est ouverte, de sorte que la sortie de report C(i-1) correspondant à l'instant de minutage précédent est appliquée une porte NI 1088., Cette porte NI 1088 compare le report précédent C(i-1) avec une nouvelle donnée Qi qui est appliquée par l'intermédiaire d'un circuit d'opération logique 1090 et qui produit une sortie Ci = 0 quand le report C(i-1) = 0, de sorte qu'il ne se produit aucune opération de report.La porte NI produit une sortie
Ci = 1 quand le report C(i-1) égal 1, et quand une nouvelle donnée Qi = 1, ce qui provoque l'exécution d'une opération de report.
Le circuit d'opération logique 1090 exécute une opération
OU exclusif sur la base de la donnée d'entrée Qi et du report
C(i-1), comme indiqué par les équations (7) ou (8). On obtient à la sortie d'un inverseur 1072 un signal qui est le résultat-de l'opération OU exclusif QOi.
I1 est prévu un circuit de détection de zéro 1094 pour accumuler les signaux de sortie QOi sous la forme d'une valeur de sommation Zm ou Zs. Notamment, le circuit de détection de exécute une opération:
Figure img00350001

où N est égal à 8 dans ce cas.
La sortie QOi est appliquée à une porte NI 1084 en même temps que le signal Zm. Le signal de sortie de la porte NI est transmis à la sortie d'un inverseur 1076 par l'intermédiaire d'un transistor 1062 lors de l'arrivée de l'impulsion d'horloge G2 et ce signal est maintenu dans une ligne entre l'inverseur 1077 et un transistor sous la forme du signal Zs. Le signal Zs est transmis à une entrée d'une porte ET 1076 par l'intermédiaire du transistor 1064 lors de l'arrivée de l'impulsion d'horloge G4 et il est emmagasiné sous la forme du signal Zm.
Les transistors 1056 et 1058 et les inverseurs 1068 et 1070 constituent le circuit d'opération logique 1090 intervenant sur les équations (7), (8), (11) et (12). I1 commande l'inversion du signal d'entrée Qi par l'inverseur 1068 en fonction de la sortie C(i-1) du circuit de génération de report.
Lors de l'arrivée des impulsions d'horloge G3 et G4, un signal de sortie QOi est déterminé sur la base du signal C(i-l) et de l'entrée Qi. La sortie QOi.est également envoyée au circuit de détection de zéro 1094s qui comprend les portes ET 1076 et 1082, la porte NI 1084, les transistors 1062 et 1064 et l'inverseur 1077.
Au top de minutage nO 1 des impulsions d'horloge G1 et G2, le signal C(i-l) qui représente CIN, et le signal Qo ou Qo, sont appliques. la porte NI dynamique 1088, qui produit un report en correspondance aux équations (9) ou (13).
Dans l'opération de diminution-, le transistor 1060 est rendu conducteur par le signal DEC et le signal Qo est appliqué à la porte NI 1088. Dans l'opération d'augmentation, le signal
INC est appliqué pour rendre.conducteur le transistor 1061, de sorte que le signai Qo est appliqué à la porte NI 1088.
I1 en résulte que la sortie Ci de la porte NI dynamique 1088 prend la valeur indiquée par les équations (9) ou (13).
Dans le circuit de détection de zéro, la sortie de QOi est retenue sous la forme Zs pour l'impulsion d'horloge-G2.
Au top de minutage nb 2 suivant, le signal GC a la valeur zéro et la porte ET 1080 est bloquée, tandis que la porte ET 1078 est ouverte. I1 en résulte que le signal Ci est maintenu sous la forme U l) par l'intermédiaire de la porte ET 1078 et de la porte NI 1086. D'autre part, le bit suivant est appliqué sous la forme du signal d'entrée Qi. Le signal C(i-l) et le signal d'entrée Qi sont appliqués au circuit d'opération logique 1090 qui produit à sa sortie le signal QOi. Le signal
QOi est renvoyé au registre à décalage et il est également transmis au circuit de détection de zéro 1094. Pour les impulsions d'horloge G1 et G2, le report Ci est engendré par la porte NI dynamique 1088, sur la base du signal d'entrée
Qi et du report mémorisé C(i-l).Pour l'impulsion d'horloge G2, le signal Zs est produit sur la base du signal de sortie QOi et du signal mémorisé Zm. Aux tops de minutage nOs 3 à 7, l'opération précitée est répétee, de sorte que les données contenues dans le registre à décalage sont augmentées ou diminuées. Au top de minutage nO 1 suivant, le circuit de détection de zéro produit le signal mémorisé Zs sous la forme du signal de sortie ZO.
Lorsque le signal de sortie ZO est un zéro au top de minutage du signal GC, on détecte que la donnée contenue dans le registre à décalage ne contient que des zéros.
Quand le signal CIN =O est appliqué au top de minutage nO 1 où le signal GC est engendré, C(i-1) a la valeur "1" et il ne se produit, ni une opération d'augmentation, ni une opération de diminution, de sorte que la donnée entrante est transmise inchangée.
Les configurations de "1" et de "0" des signaux C(i-1),
Qi, QOi et Ci représentées sur la Fig. 25 sont basées sur l'hypothèse que l'opération de diminution est effectuée alors que le registre à décalage contient la donnée "10001100".
Après génération des tops de minutage nOs 1 à 8, le contenu du registre à décalage change en "10001011".
On a représenté sur la Fig. 26 un circuit qui est couramment utilisé par les composants CABC 162, FSC 172 et EGRC 178 représentés sur la Fig. 4. Un circuit générateur d'impulsions de synchronisation 1096 correspond aux composants CABP, FSCP et EGRP de la Fig. 4. Un circuit générateur d'impulsion efficace 1098 correspond aux composants CABD, FSCD et EGRD.
Les données représentant la période d'impulsion et les données représentant la période d'utilisation sont fournies aux circuits 1096 et 1098. La Fig. 27 représente un chronogramme correspondant au circuit de la Fig. 26. Les détails des circuits 1096 et 1098 ont été mis en évidence sur la Fig. 12 et leurs opérations de base ont été décrites ci-dessus. En réponse au signal ZP ou G4SET, la donnée est chargée dans ie registre à décalage à partir des registres de verrouillage qui constituent les circuits 1096 et 1098. Simultanément, une bascule 1100 est mise à 1 par le signal ZP. La donnée du registre de verrouillage est transmise à partir de l'unité CPU sous la forme de la sortie traitée.Comme cela a été expliqué ci-dessus en référence aux Fig. 24 et 25, la donnée du registre à décalage termine un cycle de diminution quand les impulsions d'horloge et et f2 ont été produites un nombre de fois qui est déterminé par le nombre de bits du registre à décalage, c'est-à-dire huit fois. A cet instant, le signal GC est produit.
En synchronisme avec le signal GC, les registres à décalage des circuits 1096 et 1098 et le circuit d'augmentation/dimi- nution effectuent l'opération de diminution. Quand le contenu du registre à décalage du circuit 1Q98 atteint la valeur zéro, le circuit de détection de zéro fait prendre au signal ZO le niveau L ("0") et la bascule 1100 est remise à zéro par le signal ZD.Quand le contenu du registre a décalage du circuit 1096 atteint la valeur zéro, le circui de détection de zéro fait prendre au signal ZO le niveau L et le signal ZP est engendré La bascule 1100 est à nouveau mi se à 1 par le signal
ZP, qui assure 11 application du signal G4SET aux circuits 1096 et 1098. I1 en résulte que la donnée et à nouveau chargée du registre de verrouillage dans le registre à décalage.
De cette manière, des impulsions, ayant un coefficient d'utilisation qui est déterminé par la donnée chargée par l'unité
CPU, sont produites à la sortie de la bascule 1100. En agen çant trois ensembles réalisés à partir du circuit indiqué sur la Fig. 24, on peut former les composants rXA2, 162, FSC 172 et EGRC 178 représentés sur la Fig. 4.
LaFig. 28 montre en détail le composant IGNC 164 représente sur la Fig 4. Un circuit générateur d'impulsions DV, désigné par 112, remplit la fonction du registre ADV indiqué sur la Fig. 4, tandis qu'un circuit générateur d'impulsions
DWL, désigné par 1104, remplit la fonction du registre DWL indiqué sur la Fig 4. Les détails du circuit-générateur d'impulsions ADV 1102 et du circuit générateur d'impulsions
DWL 1104 ont été mis en évidence sur la Fig. 12. Les données
ADV et les données DWL sont chargées de l'unité CPU dans le circuit générateur d'impulsiorvs ADV 1102 et dans le circuit générateur d'impulsions DWL 1104. Les données ADV et les données DWL sont traitées par l'unité CPU. Comme indiqué sur la Fig. 29, la donnée ADV est définie par le nombre d'impulsions POS entre un signal d'angle de vilebrequin de référence INTDP et un point d'allumage, tandis que la donnée
DWL est définie par le nombre d'impulsions angulaires POS entre le point d'allumage et le début d'une position de conduction de la bobine d'allumage en vue de l'allumage suivant. Lorsque le signal IGNOUT représenté sur la Fig. 27 est au niveau haut, un courant passe dans la bobine d'allumage.
L'impulsion INTDP est appliquée, sous la forme du signal
G4SET, au circuit générateur d'impulsions ADv. En conséquence, la donnée ADV est transférée du registre de verrouillage, qui retient la donnée ADV provenant de l'unité CPU, dans le registre à décalage. Le signal INTDP est en outre appliqué, sous la forme du signal CIN, par l'intermédiaire de la porte
OU 1108. Puisque le signal d'entrée DEC se trouve à l'état 1H, et le signal d'entrée INC à l'état n ls à ce moment, l'opération de diminution commence. Le signal CIN (niveau haut H) est appliqué à partir de la sortie ZO par l'intermédiaire de la porte OU 1108, jusqu'à ce que le contenu du registre à décalage atteigne zéro. Un signal SPOSP est appliqué à la borne GC.
Ce signal est produit au top de minutage de GC, basé sur l'impulsion POS fournie par un détecteur d'angle de vilebrequin, comme cela sera décrit en détail dans la suite. Le registre à décalage du circuit générateur d'impulsions ADV exécute l'opération de diminution en réponse au signal SPOSp.
Lorsque le contenu du registre à décalage ADV atteint la valeur zéro, la sortie ZO prend le niveau bas et, en réponse au signal SPOSP qui est appliqué par l'intermédiaire de l'inverseur 1118, la porte NI 1114 produit à sa sortie un signal ADVP qui assure la remise à zéro de la bascule 1120.
I1 en résulte la cessation du signal IGNOUT. En conséquence, le courant primaire passant dans la bobine d'allumage du dispositif d'allumage 170 représenté sur la Fig. 4 est arrêté, de sorte que l'allumage se produit.
Comme indiqué sur les Fig. 29 et 30, le circuit générateur d'impulsions DWL commence l'opération de diminution à partir de la sortie ADVP, qui correspond à un top d'allumage.
En conséquence, quand la sortie ADVP est appliquée sous la forme du signal G4SET, la donnée est transférée du circuit de verrouillage, intervenant dans le circuit générateur d'impulsions DWL 1004, au registre à décalage. Puisque le signal DEC est un "1" et le signal INC un "0" dans le circuit générateur d'impulsions DWL, le signal CIN, qui commande l'opération de diminution, est appliqué par l'intermédiaire de la porte OU 1112 au top de minutage du signal ADVP, et l'instruction de diminution continue à etre appliquée jusqu'à ce que le contenu du registre à décalage atteigne zéro et que la sortie ZO du circuit de détection dezéro passe du niveau haut H au niveau bas L. Le minutage de l'opération de diminution est déterminée par le signal SPOSP, qui est appliqué à GC par l'intermédiaire de la porte OU 1110.
Lorsque le contenu du registre à décalage atteint zéro et lorsque la sortie ZO du circuit de détection de zéro prend le niveau bas, le signal DWLP est produit à la sortie de la porte NI 1116 au top de minutage du signal SPOSP et la bascule 1120 est mise à 1. Il en résulte la génération du signal IGNOUT et le courant primaire de la bobine d'allumage passe. Comme décrit ci-dessus, la bascule 1120 est remise à zéro par le signal de sortie du circuit générateur d'impulsions ADV 1102, de sorte que le courant primaire de la bobine d'allumage est arrêté et que l'allumage s'effectue.
On a représenté sur la Fig. 31 un circuit de génération des signaux d'entrée INTDP et SPOSP représentés sur la Fig.28, le minutage de fonctionnement dudit circuit étant mis en évidence sur la Fig. 30. Des signaux REF et POS sont émis par le détecteur 146 représenté sur la Fig. 4. Le signal REF est un signal d'angle de référence de vilebrequin du moteur et il est constitué par un train d'impulsions engendrées pour un angle déterminé par le nombre des cylindres du moteur, c'est-à-dire à chaque intervalle de 1800 pour un moteur à quatre cylindres, à chaque intervalle de 200pour un moteur à six cylindres et à chaque intervalle de 900 pour un moteur à huit cylindres. Le signal POS est constitué par un train d'impulsions qui est engendré pour chaque angle de rotation de un degré du vilebrequin.Puisque ces impulsions sont synchronisées avec la rotation du moteur, elles ne sont pas synchronisées avec l'horloge interne du circuit. Le signal
REF est appliqué à une bascule 1122 de type-D, tandis que le signal POS est appliqué à une bascule 1126 de type-D.
Les bascules 1122 et 1126 de type-D produisent leurs sorties en réponse à l'impulsion d'horloge GC. Les bascules 1124 et 1128 de type-D peuvent être. synchronisées avec les impulsions d'horloge f (impulsion d'horloge 1 ou 2) mais, dans le mode de réalisation considéré, elles sont synchronisées avec l'inverse du signal de GC.
Un signal SREFP est produit à la sortie d'une porte NI 1130 au top de minutage du signal GC de la première horloge f après la montée du signal d'entrée (impulsion angulaire de référence) REF
Un signal de sortie SPOSP d'une porte OU exclusif 1132 est produit au top de minutage de la première impulsion d'horloge
GC après la montée du signal d'entrée (impulsion angulaire) POS et au top de minutage de la première impulsion GC après la retombée du signal d'entrée POS. I1 en résulte que le signal
SPOSP est engendré à chaque angle de rotation de 0,5 degré du vilebrequin à partir des impulsions POS qui sont engendrées a chaque angle de rotation de un degré du vilebrequin.
Un circuit générateur d'impulsions INTL 1042 engendre un signal d'angle de vilebrequin de référence INTDP, nécessaire pour la commande à partir du signal SREFP, qui est déterminépar la position de montage du détecteur ou capteur. Le signal
SREFP est appliqué, sous la forme du signal G4SET, -au circuit générateur d'impulsions INTL 1042 de manière que la donnée soit chargée du registre de verrouillage dans le registre à décalage. Cette donnée représente une différence de phase entre le signal SREFP et le signal de référence INTDP.
Le registre à décalage effectue ensuite l'opération de diminution en réponse au signal SPOSP, appliqué à l'horloge GC par l'intermédiaire d'une porte OU 1036 et, quand le contenu du registre à décalage atteint la valeur zéro, la sortie ZO prend le niveau bas et le signal INTDP est transmis, par l'intermédiaire d'une porte NI 1040, en synchronisme avec le signal SPOSP.
La Fig. 33 représente un circuit de détection de vitesse de rotation, tandis que la Fig. 34 représente un chronogramme correspondant. Une donnée de période servant à déterminer la période d'un circuit générateur d'impulsions de période RPMT 1050 est transférée de l'unité CPU dans un circuit de verrouillage du circuit RPMT. Un signal de sortie RPMTP d'une porte
NI 1044, qui est fonction d'une sortie ZO du circuit RPMT, est appliqué sous la forme du signal G4SET au circuit RMPT 1050 de manière que la donnée soit chargée du registre de verrouillage du circuit RPMT dans le registre à décalage en réponse au signal RPMTP. Puisque le niveau "1" est toujours appliqué sous la forme du signal CIN, le registre à décalage du circuit RPMT 1050 effectue l'opération de diminution en réponse au signal d'horloge CLK qui est appliqué à GC.
Comme indiqué sur la Fig. .34, lorsque le contenu du registre à décalage du circuit RPMT atteint la leur zéro, le circuit de détection de zéro fait prendre au signal 7o le niveau bas
L et le signal RPMT (niveau haut H) est produit à la sortie de la porte NI 1044. En réponse au signal RPMT, la donnée est chargée du registre de verrouillage du circuit RPMT 1650 dans le registre à décalage. En correspondance, le signal
RPMTP est produit à la sortie de la porte NI 1044 à une fréquence déterminée par la donnee charge en provenance de l'unité CPU.Un registre à décalage faisant partie d'un circuit de comptage d'impulsions RPND 1052 effectue le comptage des signaux SPOSP qui sont engendrés dans la periode du signal
RPMTP et il retransmet le compte sortant du registre à décalage au circuit de verrouillage en réponse au signal RPMTP.
Ensuite, le contenu du registre à décalage du circuit RoMD 1052 est remis à zero par le signal RPMTP, qui est émis par un circuit à retard 1048. Puisque le circuit RPMTP reçoit un "zéro" à la borne DEC et un "1" à la borne INC, il effectue l'opération d'augmentation. Le top de minutage de l'opération d'augmentation est déterminé par le signal SPOSP appliqué à la borne GC. En correspondance, le registre à décalage du circuit RPMD retient le compte accumulé correspondant au signal SPOSP pendant une période prédéterminée, c'est-a-dire la période du signal RPMTP.Puisque ce compte est transféré du registre à décalage au registre à verrouillage et est retenu dans celui-ci en réponse au signal RPMTP, qui est appliqué au circuit RPMD sous la forme du signal G2MOVE, la donnée représentant la vitesse de rotation est obtenue par lecture de la donnée mémorisée dans le registre de verrouillage par l'unité CPU.
La Fig. 35 représente un mode de réalisation correspondant à une application de la présente invention à un appareil d'injection de carburant. Un circuit générateur d'impulsions
CYL 1070 compte des signaux SREFP. Pour le moteur à six cylindres, par exemple, un signal CYLP est engendré à chaque troisième compte du signal SREFP, comme indiqué sur la Figure 34.
Le compte diffère en fonction du nombre de cylindres du moteur et il est émis par l'unité CPU et retenu dans un registre de verrouillage du circuit CYL. Lorsque le nombre prédéterminé de signaux CYLP est engendré et est appliqué sous la forme G4SET, la donnée se trouvant dans le registre de verrouillage est chargée dans le registre à décalage. La donnée est diminuée en réponse au signal INTDP et, à chaque fois que le contenu du registre à décalage atteint la valeur zéro, la sortie ZO prend le niveau bas L et le signal CYLP est produit par l'intermédiaire d'une porte NI 1054 au top de minutage du signal SREFP.
Une bascule 1068 est mise à 1 par le signal CYLP. La donnée représentant un instant d'injection de carburant est appliquée à un générateur d'impulsions INJ à partir de l'unité CPU.
Cette donnée est chargée dans le registre à décalage en réponse au signal CYLP appliqué, sous la forme G4SET, à partir du registre de verrouillage. La donnée est diminuée en réponse au signal CLK 2, appliqué à GC par l'intermédiaire d'une porte OU 1060. Lorsque le signal d'horloge GC est appliqué à la place du signal CLK 2, l'opération de diminution est effectuée en réponse au signal d'horloge GC.
Comme indiqué sur la Fig. 36, un temps qui est en relation avec la donnée INJ commence à titre mesuré en réponse au signal CYLP. Lorsque la donnée INJ atteint la valeur zéro sous l'effet de l'opération de diminution effectuée sous la commande de l'impulsion d'horloge CLK 2, la sortie ZO prend le niveau bas et le signal INJP est appliqué à une borne de remise à zéro de la bascule 1068 par l'intermédiaire de la porte NI 1058, en vue de la remise à zéro de ladite bascule 1068. I1 en résulte que la sortie INJOUT de la bascule 1068 produit un signal qui est fonction de la donnée INJ qui a été chargée en provenance de l'unité CPU. Le signal de sortie est amplifié par un circuit amplificateur 1074 et il est appliqué à un injecteur 1076 en vue de l'injection du carburant.
La Fig. 37 représente un circuit générateur de signaux qui produit des signaux f1 et 2 à partir d'un oscillateur 1068.
A partir de ces signaux, les signaux d'horloge G1 à G4 sont produits à l'aide d'un circuit de conformation d'ondes 1080, comme indiqué sur la Fig. 25, et les signaux GC, également visibles sur la Fig. 25, sont produits par un circuit de division de fréquence 1082. Le signal de sortie GC du circuit de division de fréquence 1082 est en outre divisé par des circuits de division de fréquence 1084 et 1086 de manière à produireles impulsions de synchronisation ou minutage CLK 1 et CLK 2.
La Fig. 38 représente un mode de réalisation du circuit de conversion d'impulsions d'entrée/sortie de la Fig. 4, qui est formé par les circuits de base indiqués sur la Fig. 12.
Les registres CABD, CABP, ADV, DWL, FSCD, FSCP, EGRD, EGRP,
RMPT et RPMD indiquent que les circuits associés d'augmentation/diminution 1008 et les circuits de détection zéro 1009 sont agencés régulièrement. Les registres comprennent chacun un registre de 8 bits et les impulsions d'horloge G1 à G4 ainsi que les signaux de commande WCS, RCS, G4SET et G2MOVE sont appliqués aux bits respectifs. Les signaux de commande
INC, DES, GC et CIN sont appliqués aux circuits d'augmentation/ diminution.
Conformément à la présente invention, puisque les circuits de conversion d'impulsions et les circuits de comptage sont constitués par des registres à décalage et des circuits d'augmentation/diminution formés d'éléments simples, ils peuvent être agencés régulièrement et la génération de chaleur est faible. En outre, l'élément dynamique peut être utilisé comme indiqué dans les modes de réalisation. Dans ce cas, la génération de chaleur est encore réduite approximativement à la moitié de celle engendrée par un circuit classique de commande numérique d'un moteur.
En outre, puisque les éléments peuvent etre agencés régulièrement, l'efficacité d'intégration est améliorée et les dimensions sont réduites approximativement de-moitié par comparaison aux appareils connus. En outre, on peut adopter un agencement multi-couches avec les lignes de transmission de bits des bus de données, comme le montre la Fig. 38.
Dans ce cas, l'efficacité d'intégration est encore améliorée du fait que la zone des bus de données est également incorporée.
Le circuit de détection d'arrêt de moteur et le circuit d'interruption INTV représentés dans le mode de réalisation de la Fig. 11 peuvent être constitués par les circuits de base de la Fig. 12, d'une manière semblable.
Bien entendu, la présente invention n'est nullement limitée aux modes de réalisation décrits et représentés; elle est susceptible de nombreuses variantes accessibles à l'homme de l'art, suivant les applications envisagées et sans que l'on ne s'écarte de l'esprit de l'invention.

Claims (9)

REVENDICATIONS
1.- Appareil de commande d'un moteur à combustion interne, dans lequel au moins une condition du moteur est détectée et une valeur de référence dLun mécanisme de commande du moteur est calculée sur la base de la condition détectée pour le moteur, un signal pulsatoire de commande étant produit en relation avec la valeur de référence calculée de manière à être appliqué audit mécanisme de commande e vue de la commande du moteur en concordance avec ladite valeur de référence, carac térisé en ce qu'il est prévu::
- un dispositif pour produire le signal pulsatoire de commande en concordance avec ladite valeur de référence, ledit dispositif comprenant un circuit générateur de signaux d'hor- loge (1078, 1080, 1082) en vue de produire un signal d'horloge qui est engendré à des intervalles de temps prédéterminés, ainsi que plusieurs circuits générateurs de signaux pulsatoires, chacun desdits circuits générateurs de signaux tulsatoires comprenant::
- un registre à décalage (10Q2) auquel ladite Valeur de référence est appliquée sous la forme d'un signal numérique et qui peut être adapté pour recevoir le signal d'horloge provenant dudit circuit générateur de signaux d'horloge en vue d'un décalage dudit registre d'un bit à la fois,
- un circuit d'augmentation/diminution (1008) pour augmenter ou diminuer un signal d'entrée d'une valeur prédéterminée,
- un circuit de détection (1009) servant à détecter le contenu dudit registre à décalage (1002),
- et un circuit de transfert de données assurant la liaison de la sortie et de l'entrée dudit registre à décalage (1002) dans une boucle- fermée passant par ledit circuit d'augmentation/diminution, afin que le contenu dudit registre à décalage soit augmenté ou diminué par application du contenu de ce registre à décalage audit circuit d'augmentation/diminution par renvoi audit registre à décalage, ledit circuit de détection détectant quand le contenu du registre à décalage atteint une valeur prédéterminée de manière que le signal pulsatoire de commande soit produit à partir du point de détection ou en aboutissement à ce point de détection.
2.- Appareil de commande pour moteur à combustion interne selon la revendication 1, caractérisé en ce que ledit dispositif de disposition de signaux pulsatoires comprend des premier et second circuits générateurs de signaux pulsatoires (1096, 1098) ainsi qu'une bascule (1100),
- en ce que ledit premier circuit générateur de signaux pulsatoires(1096) comprend un premier registre à décalage qui reçoit la valeur de référence représentant une période dudit signal pulsatoire et dont le contenu est réduit de "1" en réponse audit signal d'horloge, ledit premier circuit générateur de signaux pulsatoires (1096) produisant une première impulsion de sortie et l'appliquant au registre de façon à introduire dans celui-ci la valeur de référence et, en outre, l'appliquant également à une entrée de mise à 1 de la bascule (1100) quand le contenu du registre à décalage atteint la valeur zéro,
- en ce que ledit second circuit générateur de signaux pulsatoires (1098) comprend un second registre à décalage qui est chargé avec la valeur de référence représentant un coefficient d'utilisation dudit signal pulsatoire, en ce qu'il commence l'opération de diminution en réponse audit premier signal de sortie de manière que le contenu du registre soit diminué de "1" en réponse audit signal d'horloge, ledit second circuit générateur de signaux pulsatoires (1098) produisant et appliquant une seconde impulsion de sortie à une entrée de remise à zéro de ladite bascule (1100) lorsque le contenu dudit second registre à décalage atteint la valeur zéro,
- et en ce que le signal obtenu à la sortie de ladite bascule (1100) constitue ledit signal pulsatoire de commande.
3.- Appareil de commande d'un moteur à combustion interne selon la revendication 1, caractérisé en ce que ledit dispositif de production de signaux pulsatoires comprend un premier et un second circuit logique (1126, 1128; 1122, 1124), ainsi que le premier circuit générateur de signaux pulsatoires (1042),
- en ce que ledit premier circuit logique (1126, 1128) produit une première impulsion de minutage angulaire (SPOSP) en synchronisme avec ledit signal d'horloge et avec une première impulsion angulaire (POS) qui est engendrée à chaque rotation d'un premier angle de vilebrequin prédéterminé,
- en ce que ledit second circuit logique (1122, 1124) produit une seconde impulsion de minutage angulaire (SREFP) en synchronisme avec ledit signal d'horloge et avec une seconde impulsion angulaire (REF) qui est engendrée à chaque rotation d'un second angle de vilebrequin prédéterminé qui est en relation avec le nombre de cylindres dudit moteur,
- en ce que ledit premier circuit générateur de signaux pulsatoires (1042) reçoit, en réponse à ladite seconde impulsion de minutage angulaire (SREFP) la valeur de référence qui représente une différence entre un angle de vilebrequin de référence, pour lequel ladite impulsion d'angle de vilebrequin de référence est engendrée, et un angle de vilebrequin pour lequel ladite seconde impulsion de minutage angulaire (SREFP) est engendrée, ledit premier circuit générateur de signaux pulsatoires commençant une opération de diminution en réponse à ladite seconde impulsion de minutage angulaire de manière que le contenu dudit premier circuit générateur de signaux pulsatoires soit diminué de "1" en réponse à ladite première impulsion de minutage angulaire (SPOSP), et en ce que ledit premier circuit générateur de signaux pulsatoires (1042) produit à sa sortie une impulsion d'angle de vilebrequin de référence en synchronisme avec ladite seconde impulsion de minutage angulaire quand son contenu atteint la valeur zéro.
4.- Appareil de commande d'un moteur à cpmbustion interne conforme à la revendication 3, caractérisé en ce que ledit dispositif de production de signaux pulsatoires comprend un second et un troisième circuit générateur de signaux pulsatoires (1102, 1104) et une bascule (1120),
- en ce que ledit second circuit générateur de signaux pulsatoires (1102) reçoit la valeur de référence représentant une différence entre ledit angle de vilebrequin de référence et un angle de vilebrequin correspondant à l'allumage, et commençant une opération de diminution en réponse audit angle de vilebrequin de référence de manière que son contenu soit diminué de "1" en réponse à ladite première impulsion de minutage angulaire, ledit second circuit générateur de signaux pulsatoires (1102) produisant et appliquant une première impulsion de sortie à une entrée de remise à zéro de ladite bascule (1120) quand son contenu atteint la valeur zéro,
- en ce que ledit troisième circuit générateur de signaux pulsatoires (1104) reçoit la valeur de référence représentant une différence entre l'angle de vilebrequin correspondant à l'allumage et un angle de vilebrequin pour lequel la conduction d'une bobine d'allumage est amorcée pour l'allumage suivant, ledit circuit commençant une opération de diminution en réponse à ladite première impulsion de sortie de manière que son contenu soit diminué de "1" en réponse à ladite premier impulsion de minutage angulaire, ledit troisième circuit générateur de signaux pulsatoires (1104) produisant et appliquant une seconde impulsion de sortie à une entrée de mise à 1 de ladite bascule (1120) quand son contenu atteint la valeur zéro,
- et en ce que le signal obtenu à la sortie de ladite bascule (1120) représente ledit signal pulsatoire de commande qui est appliqué à ladite bobine d'allumage.
5.- Appareil de commande pour un moteur à combustion interne selon la revendication 3, caractérisé en ce que ledit dispositif de production de signaux pulsatoires comprend un second et un troisième circuit générateur de signaux pulsatoires (1080, 1072) et une bascule (1068),
- en ce que ledit second circuit générateur de signaux pulsatoires (1070) reçoit la valeur de référence qui est en relation avec le nombre de cylindres dudit moteur, son contenu étant diminué de un en réponse à ladite impulsion représentant l'angle de vilebrequin de référence, ledit second circuit générateur de signaux pulsatoires (1070) produisant et appliquant une première impulsion de sortie, d'une part, à lui-meme pour le chargement de la valeur de référence et, d'autre part, à une entrée de mise à"1"de ladite bascule (1068) quand son contenu atteint la valeur zéro,
- en ce que ledit troisième circuit générateur de signaux pulsatoires (1072) reçoit la valeur de référence représentant une période d'injection de carburant et commence l'opération de diminution de ladite valeur de référence, en réponse à ladite première impulsion de sortie de manière que son contenu soit réduit de "1" en réponse audit signal d'horloge, ledit troi sième circuit générateur de signaux pulsatoires (1072) produi -sant et appliquant une seconde impulsion de sortie à une entrée de remise à zéro de ladite bascule (10683 quand son contenu atteint la valeur zéro,
- et en ce que le signal obtenu à la sortie de ladite bascule (1068) constitue ledit signal pulsatoire de commande servant à la commande d'un injecteur de carburant.
6.- Appareil de commande d'un moteur à combustion interne selon la revendication 3, caractérisé en ce que ledit dispositif de production de signaux pulsatoires comprend un second et un troisième circuit générateur de signaux pulsatoires (1050, 1052),
- en ce que ledit second circuit générateur de signaux pulsatoires (1050) reçoit la Valeur de référence representant une période de temps prédéterminée, le contenu dudit circuit étant diminué de "1" en réponse audit signal d'horloge, en ce que ledit second circuit générateur dt signaux pulsatoires (1050) produit et applique un signal de sortie, d'une part à lui-même en vue du chargement de la valeur de référence et, d'autre part, audit troisième circuit générateur de signaux pulsatoires lorsque son contenu atteint la valeur zéro,
- en ce que ledit troisième circuit générateur de signaux pulsatoires (1052) assure la remise à zéro de son contenu et commence une opération d'augmentation en réponse audit signal de sortie de manière que son contenu soit augmenté de "1" en réponse à ladite première impulsion de minutage angulaire, le contenu dudit troisième circuit générateur de signaux pulsatoires (1052) étant lu en réponse audit signal de sortie.
7.- Appareil de commande d'un moteur à combustion interne selon l'une quelconque des revendications 1 à 6, caractérisé en ce que chacun desdits circuits générateurs de signaux pulsatoires comprend un registre de verrouillage (1006) comportant des positions de bits correspondant aux positions de bits dudit registre à décalage (1002).
8.- Appareil de commande d'un moteur à combustion interne selon la revendication 7, caractérisé en ce que chaque position de bit du registre à décalage (1002) est composé d'une partiemaître et d'une partie-esclave, en ce que chaque position de bit dudit registre de verrouillage (1006) est composée d'une partie-mattre et d'une partie-esclave, ladite partie-mattre de chaque position de bit dudit registre à décalage (1002) étant partagée avec ladite partie-esclave de la position de bit correspondante dudit registre de verrouillage.
9.- Appareil de commande pour un moteur à combustion interne selon la revendication 7, caractérisé en ce que chaque position de bit dudit registre à décalage (1002) est composée d'une partie-mattre et d'une partie-esclave, en ce que chaque position de bit dudit registre de verrouillage (1006) est composée d'une partie-mattre et d'une partie-esclave et en ce que ladite partie-esclave de ladite position de bit dudit registre à décalage (1002) est'partagée avec ladite partiemartre de la position de bit correspondante dudit registre de verrouillage (1006).
FR8102259A 1981-02-05 1981-02-05 Appareil de commande de moteur a combustion interne, notamment de vehicule automobile Granted FR2499157A1 (fr)

Priority Applications (1)

Application Number Priority Date Filing Date Title
FR8102259A FR2499157A1 (fr) 1981-02-05 1981-02-05 Appareil de commande de moteur a combustion interne, notamment de vehicule automobile

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
FR8102259A FR2499157A1 (fr) 1981-02-05 1981-02-05 Appareil de commande de moteur a combustion interne, notamment de vehicule automobile

Publications (2)

Publication Number Publication Date
FR2499157A1 true FR2499157A1 (fr) 1982-08-06
FR2499157B1 FR2499157B1 (fr) 1984-04-27

Family

ID=9254879

Family Applications (1)

Application Number Title Priority Date Filing Date
FR8102259A Granted FR2499157A1 (fr) 1981-02-05 1981-02-05 Appareil de commande de moteur a combustion interne, notamment de vehicule automobile

Country Status (1)

Country Link
FR (1) FR2499157A1 (fr)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4073270A (en) * 1975-07-02 1978-02-14 Nippondenso Co., Ltd. Electronically-controlled fuel injection system
US4093873A (en) * 1976-10-28 1978-06-06 Intel Corporation Compensating digital counter for quartz crystal oscillator
GB2006988A (en) * 1977-09-21 1979-05-10 Hitachi Ltd Electronic engine control apparatus
US4236213A (en) * 1978-11-27 1980-11-25 General Motors Corporation Apparatus for producing pulse width modulated signals

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4073270A (en) * 1975-07-02 1978-02-14 Nippondenso Co., Ltd. Electronically-controlled fuel injection system
US4093873A (en) * 1976-10-28 1978-06-06 Intel Corporation Compensating digital counter for quartz crystal oscillator
GB2006988A (en) * 1977-09-21 1979-05-10 Hitachi Ltd Electronic engine control apparatus
US4236213A (en) * 1978-11-27 1980-11-25 General Motors Corporation Apparatus for producing pulse width modulated signals

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
IBM TECHNICAL DISCLOSURE BULLETIN, vol. 14, no. 5, octobre 1971, NEW YORK (US) *

Also Published As

Publication number Publication date
FR2499157B1 (fr) 1984-04-27

Similar Documents

Publication Publication Date Title
US4174688A (en) Digital-electronic engine ignition system
US4116169A (en) Electronic control system
EP0064888A1 (fr) Procédé et système de détection de collision et de commande de dispositifs de sécurité
FR2548274A1 (fr) Appareil de detection d&#39;anomalies d&#39;un dispositif de detection de parametres de fonctionnement d&#39;un moteur a combustion interne
EP0187081A1 (fr) Procédé et chaîne de traitement du signal analogique de sortie d&#39;un capteur
EP0017218B1 (fr) Procédé de commande électronique pour moteurs à combustion interne
FR2524557A1 (fr) Dispositif de controle de cognement pour un moteur a combustion interne
FR2464373A1 (fr) Methode de regulation des moteurs
FR2512886A1 (fr) Systeme de commande d&#39;allumage pour un moteur a combustion interne
FR2472091A1 (fr) Dispositif d&#39;allumage evitant le cliquetis au cours du fonctionnement d&#39;un moteur a combustion interne
EP1799983B1 (fr) Procede et systeme ameliores d&#39;estimation d&#39;une temperature des gaz d&#39;echappement et moteur a combustion interne equipe d&#39;un tel systeme
FR2499157A1 (fr) Appareil de commande de moteur a combustion interne, notamment de vehicule automobile
US4428051A (en) Electronic control apparatus for internal combustion engine
EP0028174A1 (fr) Controleur électronique de régulation du rapport air/carburant du mélange fourni à un moteur à combustion interne
EP0236207A1 (fr) Procédé et système d&#39;injection électronique à régulation par sonde lambda pour moteur à combustion interne
EP0029374B1 (fr) Générateur de signal de correction d&#39;angle d&#39;avance à l&#39;allumage sous l&#39;action de cliquetis
JPS6138139A (ja) 内燃機関の燃料噴射制御装置
FR2821161A1 (fr) Procede de diagnostic pour reconnaissance de modeles de defaut
FR2473637A1 (fr) Installation d&#39;allumage pour moteurs a combustion interne
FR2539820A1 (fr) Procede de commande d&#39;allumage pour moteur a combustion interne et circuit electronique pour sa mise en oeuvre
KR840001367B1 (ko) 엔진 제어 장치
FR2893982A1 (fr) Procede et systeme d&#39;estimation d&#39;une temperature des gaz d&#39;echappement en interne d&#39;un systeme de post traitement
FR2893983A1 (fr) Procede et systeme d&#39;estimation d&#39;une temperature des gaz d&#39;echappement et moteur a combustion interne equipe d&#39;un tel systeme
FR2556415A1 (fr) Calculateur d&#39;avance a l&#39;allumage a fonction de coupure d&#39;alimentation en carburant pour vehicule automobile
EP0732573A2 (fr) Procédé et dispositif de reconnaissance de signaux de vibrations, par exemple les cliquetis d&#39;un moteur à combustion interne

Legal Events

Date Code Title Description
ST Notification of lapse