Brevet FR2644909A1 — publié le 19900928

La présente invention concerne des microordinateurs comportant une mémoire morte programmable et, plus particulièrement, un micro-ordinateur servant au contrôle de produits qui ne nécessitent pas des traitements a haute vitesse tels que des appareils comme les machines à laver électriques et les fours à micro-ondes, et des microordinateurs å une puce et cartes à circuits intégrés qui permettent un stockage direct de données telles que les spécifications de soldes de dépôts et de paiement sur les cartes de crédit. Un micro-ordinateur classique tel que celui représenté en figure 4 comporte une unité centrale de traitement 1, une mémoire morte 2 pour le stockage de programmes une mémoire à accès direct 3 pour stocker temporairement des données, une unité d'entrée/sortie 4 pour échanger des données avec un équipement extérieur7 un générateur 6 pour produire des signaux d'horloge afin d'attaquer des unités et circuits respectifs, une mémoire morte programmable effaçable électriquement 6 pour le stockage de données, un registre d'adresses 7 pour conserver des adresses pour écrire des données dans la mémoire morte effaçable électriquement 6, un registre de données 6 pour conserver des données à écrire dans la mémoire morte programmable effaçable électriquement 6, un générateur 9 de tension d'écriture afin de produire une haute tension pour écrire des programmes et des données dans la mémoire morte programmable effaçable électriquement 6, un circuit 10 de commande d'écriture répondant aux instructions en provenance de l'unité centrale 1 afin de produire des signaux d'écriture dans la mémoire morte programmable effaçable électriquement 6, un circuit 11 de lecture de signal d'écriture afin de permettre à l'unité centrale 1 de lire un signal d'achèvement d'écriture indiquant que l'écriture dans la mémoire morte programmable effaçable électriquement 6 est achevée et un système de bus 12. L'unité centrale 1 comporte une unité de commande et une unité d'exécution et effectue des opérations arithmétiques et logiques,décode des instructions de programmes et commande l'échange des signaux. La mémoire à accès direct 3 sert à lire et à écrire et à remplacer des données, et conserve des données tant que l'alimentation est en marche. La mémoire morte 2 est spécialisée à la lecture, et les programmes ou les données écrites dans la mémoire 2 sont lus par l'unité centrale 1. Cette mémoire conserve les programmes et les données qui y ont été écrites lorsque l'alimentation est coupée, mais il est impossible de remplacer les données.Un système de bus 12 comporte un bus de données 12b, un bus d'adresses 12a et un bus de commande 12c et relie entre eux les unités et circuits précédents dont l'unité centrale 1, le générateur d'horloge 5, le registre d'adresses et de données 7, 8 et le circuit 10 de commande de lecture. L'unité centrale 1 peut écrire des programmes dans la mémoire morte programmable e fcçable électriquement 6, modifier les programmes et exécuter les programmes modifiés. En fonctionnement, diverses données ou instructions sont introduites temporairement dans l'unité centrale 1 à partir de l'unité d'entreeSsortie 4 via le système de bus 12. Selon le programme lu dans la mémoire morte 2, l'unité centrale 1 exécute des opérations et traitements divers sur les données précédentes ou les données lues dans la mémoire morte 3 et écrit la donnée nécessaire dans la mémoire morte 3, chaque fois que la donnée est mise à jour. Lors de l'exécution, l'unité centrale l écrit le programme dans la mémoire morte programmable effaçable électriquement 6, modifie le programme et exécute des traitements en conformité avec le programme modifié. Le programme dans la mémoire morte programmable effaçable électriquement 6 n'est pas effacé lorsqu'il y a coupure de l'alimentation. La donnée est écrite dans la mémoire morte programmable effaçable électriquement 6 de la manière suivante.Lorsque le circuit 1O de commande d'écriture reçoit une instruction d'écriture ou signal d'écriture/lecture R/W en provenance de l'unité centrale 1 via le bus de commande 12c, l'adresse et la donnée spécifiées par l'unité centrale 1 sont recherchées et déclenchées dans le registre d'adresses 7 et le registre de données 8, respectivement, alors que le générateur 9 d'impulsions d'écriture produit à partir d'une alimentation de 5 V à courant continu, une impulsion d'écriture ayant une amplitude de 12 V à courant continu, par exemple, et une durée prédéterminée, qui est appliquée à la mémoire morte programmable effaçable électriquement 6.Pendant l'application de cette impulsion d'écriture, l'écriture dans la mémoire morte 6 est effectuée. La donnée déclenchée dans le registre de données 8 est séquentiellement écrite dans l'emplacement de la mémoire morte programmable effaçable électriquement 6 spécifiée par l'adresse déclenchée dans le registre d'adresses 7. La donnée écrite est conservée dans la mémoire morte 6 même Si l'alimentation est coupée jusqu'à l'écriture d'une nouvelle donnée.Alors que le circuit 10 de commande d'écriture procède à la commande de l'écriture de la donnée déclenchée dans le registre de données 8 à l'adresse déclenchée dans le registre d'adresses 7, l'unité centrale 1 commande l'unité d'entrée/sortie 4 et la mémoire morte 3 pour d'autres processus. Le temps et le minutage de l'écriture sont déterminés par un cycle machine ou fréquence d'un signal d'horloge d'attaque engendré par le générateur d'horloge 5. Ce cycle machine est introduit dans les unités et circuits respectifs via le bus de commande 12c. En général, le temps d'écriture est supérieur au cycle machine de l'unité centrale 1, de sorte que cette unité ne peut exécuter l'instruction suivante pour la mémoire morte programmable effaçable électriquement 6, tant que l'écriture dans cette mémoire n'est pas achevée. Ainsi, en réponse à la sortie du circuit 10 de commande d'écriture, le circuit 11 de lecture de signal d'écriture engendre un signal d'achèvement d'écriture lors de l'achèvement de l'écriture indiquant que celle-ci est effectuée. Ce signal d'achèvement d'écriture est lu par l'unité centrale 1, via le bus 12.Lorsque ce signal d'achèvement d'écriture est engendré, l'unité centrale 1 peut exécuter une instruction pour la mémoire morte programmable effaçable électriquement 6. En d'autres termes, l'unité centrale 1 ne peut exécuter l'instruction suivante de lecture ou d'écriture pour la mémoire morte programmable effaçable électriquement 6 tant que l'écriture n'est pas achevée. Ainsi, il s'est avéré nécessaire de stocker dans la mémoire morte 2 un programme d'attente juSqu'à l'achèvement de l'écriture de la donnée dans la mémoire morte programmable effaçable électriquement 6. Le stockage d'un tel programme dans la mémoire morte 2 dont la capacité est limitée est un inconvénient. De plus, il est nécessaire de monter le circuit 11 de lecture des signaux d'écriture sur la puce du micro-ordinateur dont la surface est limitée. Comme les adresses et les données changent à chaque cycle machine lors du temps d'écriture qui est supérieur au cycle machine, il est en outre nécessaire de fournir les registres d'adresses et de données 7, 8, pour déclencher les adresses et les données, ce qui un inconvénient pour la fabrication d'un circuit intégré à semi-conducteur. En conséquence, la présente invention a pcur objet un micro-ordinateur qui élimine non seulement un programme écrit dans la mémoire morte pour attente jusqu'à l'achèvement de l'écriture des données dans la mémoire morte programmable effaçable électriquement 6, mais aussi les registres d'adresses et de données pour stocker des adresses et des données pendant l'écriture. Selon la présente invention, on prévoit un microordinateur qui comporte une mémoire morte prograimnable effaçable électriquement, connectée directement a un système de bus et une unité à retard pour inhiber la sortie d'un signal d'horloge d'attaque sur le système de bus pendant l'écriture dans la mémoire morte programmable effaçable électriquement de façon à allonger ainsi le cycle du signal d'horloge d'attaque. L'unité à retard inhibe la sortie d'un signal d'horloge d'attaque pendant l'écriture dans la mémoire morte programmable effaçable électriquement pour augmenter la longueur d'un cycle machine au cours duquel ni l'adresse, ni la donnée ne sont changées, ce qui élimine la nécessité de maintenir l'adresse et la donnée pour exécuter l'opération d'écriture. La présente invention sera bien comprise lors de la description suivante faite en liaison avec les dessins ci-joints dans lesquels La figure 1 est un schéma sous forme de blocs d'un micro-ordinateur selon un mode de réalisation de la présente invention; La figure 2 est un schéma d'une partie du microordinateur de la figure 1; La figure 3 est un diagramme de temps permettant d'expliquer une opération du micro-ordinateur de la figure 1; et La figure 4 est un schéma sous forme de blocs d'un micro-ordinateur classique. On décrira un mode de réalisation de la présente invention en liaison avec les figures 1 a 3. Les composants et pièces identiques à ceux de la figure 4 ont les mêmes numéros de référence et leur description sera omise. Un micro-ordinateur comprend en outre une porte ET 13 qui empêche le générateur d'horloge 5 de fournir des signaux d'horloge pendant l'écriture dans la mémoire morte programmable effaçable électriquement 6. Le signal d'horloge ~l produit par le générateur d'horloge 5 est fourni sur le bus de commande 12c via la porte 13 comme signal d'horloge 82 pour distribution à l'unité centrale de traitement 1, etc. Le signal d'horloge ~l provenant du générateur d'horloge 5 est également fourni au circuit 10 de commande d'écriture qui comporte une unité å retard lOa pour déterminer le temps d'écriture.Lorsque le circuit 10 reçoit un signal d'écriture, l'unité à retard lOa fait passer le signal d'horloge d'attaque e2 au niveau bas B pour allonger le cycle machine et le faire passer de T1 à T2. En d'autres termes, l'unité à retard lOa et la porte 13 coopèrent pour inhiber la sortie d'un signal d'horloge et produire un cycle machine T2 plus long pendant la période d'écriture. En figure 2 on a représenté une structure détaillée du circuit à retard lOa et de la porte ET 13, dans laquelle AD14 et AD15 sont des signaux des bits supérieurs de 16 bits d'adresse, et R/W est un signal pour lire ou écrire une donnée. Ces signaux sont fournis à partir de l'unité centrale 1 via le bus d'adresses 12a et le bus de commande 12c. Comme décrit cidessus, ol est un signal d'horloge produit par le générateur d'horloge 5 et #2 est un signal d'horloge d'attaque. Un signal d'écriture W est fourni au générateur 9 d'impulsions d'écriture et à la porte ET 13 pendant une période d'écrturç. Le signal R/W permet la lecture à son niveau haut "H" et l'écriture à son niveau bas "fil". Dans ce mode de réalisation, les adresses de la mémoire morte programmable effaçable électriquement 6 sont allouées à 8000-BFFF exprimées en hexadécimal. Une porte 100 produit un signal d'écriture W au niveau bas "B" du signal #2 d'horloge d'attaque, avec une adresse parmi 8000-BFFF pendant une période d'écriture. Au niveau haut wH" du signal d'écriture W, une minuterie 101 compte le signal d'horloge #l provenant du générateur d'horloge 5 afin de déterminer un temps d'écriture. Une porte 102 produit un signal pour maintenir le signal d'horloge d'attaque s2 au niveau bas "B" jusqu'à ce que la sortie de la minuterie 101 s'élève au niveau haut "H avec le signal d'écriture W au niveau haut "H". La sortie de la minuterie 101 passe du niveau bas "B" au niveau haut "H" après un laps de temps prédéterminé.Le temps de fonctionnement est établi en tenant compte du temps pour l'écriture. Le minutage des opérations du circuit 10 de commande d'écriture et de la porte ET 13 est représenté en figure 3t dans laquelle le cycle machine Tl du signal d'horloge d'attaque ~2, avec lequel les instructions respectives sont traitées, est égal à celui du signal d'horloge ~l sauf pendant l'opération d'écriture. Lorsque le signal R/W passe du niveau haut Hn au niveau bas "B" pour écrire une donnée a l'une des adresses 8000 BFFF, le signal d'horloge d'attaque #2 passe au niveau bas "B" alors que le signal d'écriture W s'élève au niveau haut "H". Comme la sortie de la minuterie 101 est au niveau bas B, la sortie de la porte 102 s'élève au niveau haut "H" alors que le signal d'horloge d'attaque #2 reste au niveau bas "B". La minuterie 101 compte les fronts de montée d'un signal d'horloge sl provenant du générateur 5, et sa sortie stéleve au niveau haut "H" après un laps de temps prédéterminé. Alors, la sortie de la porte 102 tombe au niveau bas "B", ouvrant la porte ET afin de fournir de nouveau le signal d'horloge d'attaque #2. Plus précisément, le cycle machine T2 est produit pendant la période d'écriture. Lorsque le signal d'horloge d'attaque ~2 s'élève au niveau "H", la sortie de la minuterie 101 est remise au niveau bas "B" et y reste jusqu'à l'opération suivante d'écriture alors que le signal d'horloge d'attaque 82 a un-cycle T1. Ainsi, le cycle machine est allongé pour passer à T2 pendant l'opération d'écriture. Comme l'unité centrale 1 n'exécute aucun nouveau processus ou aucune nouvelle instruction pendant la période, l'adresse et la donnée à écrire dans la mémoire morte programmable effaçable électriquement 6 ne changent pas assurant l'écriture de la donnée à l'adresse. Avec la structure précédente, il est possible d'éliminer les registres d'adresses et de données 7 et 8 servant à conserver des adresses et des données. Comme les autres unités et circuits ne sont pas en fonctionnement mais en attente jusqu'à l'achèvement de l'écriture, non seulement ils peuvent démarrer l'opération suivante lors de l'achèvement de l'écriture, mais aussi il est inutile de prévoir un circuit séparé pour produire un signal d'achèvement d'écriture, indiquant que l'écriture est achevée. De plus, il est inutile d'incorporer dans le programme une instruction d'attente de l'achèvement de l'écriture. Comme l'unité centrale 1 est au repos et est incapable d'exécuter un autre processus jusqu'à l'achèvement de l'écriture, la vitesse de fonctionnement baisse. Cependant, une telle réduction de la vitesse ne soulève aucun problème pour des dispositifs à faible vitesse tels que des appareils et des cartes à circuits intégrés. En variante, la mémoire morte programmable effaçable électriquement 6 du mode de réalisation précédent peut être remplacée par une mémoire morte programmable effaçable. Avec le micro-ordinateur de la présente invention, qui comporte une mémoire morte programmable effaçable électriquement, reliée directement à un système de bus et à une unité à retard pour allonger le cycle d'un signal d'horloge d'attaque appliqué au système de bus pendant une écriture dans la mémoire morte programmable effaçable électriquement, il est possible d'éliminer non seulement un programme dans la mémoire morte pour attente jusqu'à l'achèvement de l'écriture d'une donnée dans la mémoire morte programmable effaçable électriquement, mais aussi les registres d'adresses et de données pour stocker une adresse et une donnée pendant une période d'écriture; La présente invention n'est pas limitée aux exemples de réalisation qui viennent d'être décrits, elle est au contraire susceptible de modifications et de variantes qui apparaîtront à l'homme de l'art. REVENDICATIONS 1 - Micro-ordinateur comprenant une unité centrale de traitement, une mémoire morte programmable (6), un circuit de commande d'écriture (10) répondant à l'unité centrale de traitement pour écrire une donnée à une adresse spécifiée, un générateur d'horloge (5) pour engendrer un signal d'horloge afin d'attaquer des unités et circuits respectifs,et un système de bus pour interconnecter les unités et circuits respectifs pour la transmission de données de signaux d'adresses et d'un signal d'horloge d'attaque, caractérisé par une connexion directe de la mémoire morte programmable effaçable électriquement au système de bus; et par un circuit à retard pour allonger le cycle du signal d'horloge d'attaque en empêchant que le signal d'horloge d'attaque ne soit fourni au système de bus. 2 - Micro-ordinateur selon la revendication 1, caractérisé en ce que la mémoire morte programmable est une mémoire morte programmable effaçable électriquement. 3 - Micro-ordinateur selon la revendication 1, caractérisé en ce que la mémoire morte programmable est une mémoire morte programmable effaçable. 4 - Micro-ordinateur selon la revendication 1, caractérisé en ce que le moyen à retard comprend une minuterie répondant à un signal d'écriture en provenance de l'unité centrale de traitement pour engendrer un signal après un laps de temps prédéterminé et un circuit à porte répondant au signal d'écriture pour fermeture et un signal provenant de la minuterie pour ouverture afin de transformer un signal d'horloge ~l appliqué au. circuit de porte en signal d'horloge d'attaque #2. 5 - Micro-ordinateur selon la revendication 1, caractérisé en ce que l'unité centrale de traitement, la mémoire morte programmable, le circuit de commande d'écriture, le générateur d'horloge et le système de bus sont intégrés sur une seule puce.