EP0437387A1 - Circuit intégré à microprocesseur fonctionnant en mode ROM interne et EPROM externe - Google Patents

Circuit intégré à microprocesseur fonctionnant en mode ROM interne et EPROM externe Download PDF

Info

Publication number
EP0437387A1
EP0437387A1 EP91400019A EP91400019A EP0437387A1 EP 0437387 A1 EP0437387 A1 EP 0437387A1 EP 91400019 A EP91400019 A EP 91400019A EP 91400019 A EP91400019 A EP 91400019A EP 0437387 A1 EP0437387 A1 EP 0437387A1
Authority
EP
European Patent Office
Prior art keywords
microprocessor
memory
version
integrated circuit
chip
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
EP91400019A
Other languages
German (de)
English (en)
Other versions
EP0437387B1 (fr
Inventor
Jean Nicolai
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.)
STMicroelectronics SA
STMicroelectronics lnc USA
Original Assignee
SGS Thomson Microelectronics SA
SGS Thomson Microelectronics Inc
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 SGS Thomson Microelectronics SA, SGS Thomson Microelectronics Inc filed Critical SGS Thomson Microelectronics SA
Publication of EP0437387A1 publication Critical patent/EP0437387A1/fr
Application granted granted Critical
Publication of EP0437387B1 publication Critical patent/EP0437387B1/fr
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/2205Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested
    • G06F11/2236Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested to test CPU or processors
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/78Architectures of general purpose stored program computers comprising a single central processing unit
    • G06F15/7807System on chip, i.e. computer system on a single chip; System in package, i.e. computer system on one or more chips in a single package
    • G06F15/7814Specially adapted for real time processing, e.g. comprising hardware timers

Definitions

  • the invention relates to integrated circuits with microprocessors. It relates more particularly to circuits comprising on the same semiconductor chip both a microprocessor and a program read-only memory.
  • the read-only memory notably contains one or more programs to be executed by the microprocessor.
  • the circuits particularly concerned with the present invention are in particular low-cost microcontrollers specialized for a customer and a specific application.
  • the read only memory is produced by photolithographic masking, that is to say that the data recorded in the memory are defined by a particular configuration of photolithographic mask.
  • each memory cell is constituted by a transistor and the binary data stored in this cell is defined by the fact that the transistor was masked or not during an implantation operation of enrichment or depletion.
  • the memory is made up of transistors arranged in a matrix of rows and columns and the binary data memorized by a cell is defined by the fact that there is or there is no conductive contact connecting the transistor with a line or a column passing beside it (masking or absence during the opening of contact regions in an insulating layer).
  • the difficulty of debugging is as follows: it is necessary to write an application program for the microprocessor and to realize the microprocessor with this program stored in read-only memory. Then you have to test the integrated circuit. If the application is a bit complex, there will probably be errors in the program. To correct errors, an integrated circuit comprising the microprocessor and a new corrected program must be produced again. This implies a new set of masks. It is not possible to repeat this very expensive and very long operation several times. Therefore, in practice, the microprocessor application program should work perfectly the first time. Experience shows that this is rarely the case.
  • this method makes it possible to test the microprocessor only within the framework of the execution of the programs put in the read-only memory; it does not allow the microprocessor or other circuit elements to be tested independently of these programs. In fact, in low-cost microcontrollers (radio applications, car radio, HiFi, television, etc.), simply switching on the circuit starts the programs stored in the ROM; the microprocessor cannot do anything other than execute these programs.
  • the first circuit version (version A1) intended for debugging, includes a microprocessor MP and the circuit elements which may be necessary in the application considered (in particular input / output peripherals PH1, PH2, etc.), but it does not include any program read-only memory, or in any case this memory cannot be used.
  • the microprocessor MP is connected to input / output terminals of the integrated circuit specially provided for the debugging phase. These input / output terminals are intended for the transmission of data and addresses between the microprocessor and an electrically programmable MX memory, external to the integrated circuit.
  • the external memory EPROM or EEPROM
  • FIG. 2 The drawing and the manufacture of a final version B1 of the integrated circuit are then carried out (FIG. 2), a version which contains a hidden program read-only memory with the program data corresponding to the final non-modifiable programs.
  • This version B1 does not include the input and output terminals which were only intended for the transmission of programs from the external memory.
  • the object of the present invention is to propose a more efficient, less time-consuming, and less costly system for developing an integrated circuit with microprocessor incorporating on the same chip the microprocessor and a read-only program memory.
  • one way of achieving this is to use a contact pad of the chip for the transmission of addresses and data in series through this pad between the microprocessor and an electrically programmable external memory, and a contact pad. of the chip reserved for the reception by the chip of a signal for selecting the operating mode of the circuit.
  • a selection signal is applied corresponding to the mode in which the microprocessor executes the external memory programs transmitted in series through the specific contact pad; then, for the circuit definitively produced in series and comprising the program frozen in internal memory, the mode selection signal applied is that which corresponds to the final normal mode: execution of the programs in the internal read-only memory.
  • the integrated circuit chip generally comprises the following additional elements, compared with a chip which would not require any development phase at all: a contact pad for the serial transmission of addresses and data of program between the external memory and the microprocessor, and a contact pad for mode selection; and a multiplexer for routing the addresses and data either to the external memory or to the internal memory according to the selection signal received on the selection pad.
  • a contact pad for the transmission of synchronization signals in particular to define whether it is addresses or data which are exchanged at a given time through the contact pad.
  • serial transmission can include additional circuit elements such as parallel / serial and serial / parallel converters for cases where the microprocessor can only work with binary signals in parallel.
  • the additional contact pads are not necessarily connected to external pins of the housing of the final circuit.
  • the specific contact pads of this development must be connected to pins outside the housing so that the necessary signals can be transmitted. But for the final version, it is no longer necessarily necessary to connect all these specific pads to pins: for example the serial address and data transmission pad can remain in the air since it has nothing left transmitting. It is the same for the synchronization pad.
  • the mode selection pad we can very well foresee that it is connected by a resistor or a transistor ("pull-up” or “pull-down”) to a supply terminal of the circuit so that fixes the binary state to which it is carried in the final version without it being necessary to apply this binary state from a special external pin.
  • a possibility of implementing the invention would consist in using, for the circuits of the first version, an integrated circuit box having a few additional pins compared to those which are necessary in the final version.
  • a housing with a reduced number of pins would be used, the specific contact pads of the development phase remaining unconnected.
  • the integrated circuit comprises a specific contact pad usable during a development phase of the integrated circuit, and means for enabling during this phase the transmission of addresses and data in series through this pad and to cause the microprocessor to execute a program transmitted through this pad and coming from an electrically programmable memory external to the circuit.
  • the microprocessor can be tested from programs external to the integrated circuit (test programs or programs of the final application envisaged for the circuit). Development is done from an industrial pre-series. At the end of development, the final program developed is defined and the mask configuration which will be used for storage in read only memory is definitively established. If the program has not been changed during development, the circuits can be mass produced. If the program had to be modified, the masks other than the ROM data configuration mask are unchanged. The realization of the final circuit therefore requires only one specific mask different from the masks already developed for the pre-series used for development.
  • a contact pad for selecting the operating mode of the integrated circuit is provided on the chip. This pad can receive an electrical signal for selection of binary signal mode in principle).
  • the mode is the normal operating mode of the circuit, in which the microprocessor executes programs stored in the read-only memory of the circuit.
  • the mode is the debugging mode in which the microprocessor executes programs contained in the external memory, these programs being transmitted in series through the specific pin of the box.
  • the integrated circuit to comprise on the one hand means for executing by the microprocessor either an internal program contained in the read-only memory of the circuit, namely an external program contained in an external memory and transmitted through at least one specific contact pad of the integrated circuit chip, the choice between the external program and the internal program being controlled by a selection signal applied to a mode selection contact pad provided on the chip, at least one of said contact pads not being connected to an external pin of the housing of the integrated circuit in its final version.
  • the integrated circuit chip is designated by the reference 10. It comprises a certain number of circuit elements and in particular a microprocessor MP and various peripheral circuits, PH1, PH2, ..., as well as a read-only memory of programs MM.
  • the chip also includes a number of access contact pads P1, P2, P3, etc., intended to be connected to external pins when the chip is enclosed in a box; these pads are used for the transmission of signals between the chip and the outside.
  • the circuit elements and contact pads necessary for the operation of the chip in the function which it must fulfill for its end user can be any and they need not be described.
  • the microprocessor operates under the control of the programs contained in the internal read-only memory MM, and the peripherals make it possible to receive and transmit signals according to these programs, through the contact pads and the housing pins which are connected to these pads.
  • the PS3 block is no longer useful either since it is used for synchronizing serial transmissions through the PS1 block.
  • the PS2 block for mode selection, it suffices that a well-determined logic level (for example high level) be applied to this block in the final version, this level corresponding to the mode of normal running. And it is however necessary that one can apply on this block a contrary level when this block is connected to an external pin in the version intended for the development.
  • a well-determined logic level for example high level
  • this level corresponding to the mode of normal running.
  • one or two of the specific pads are connected in the final version (B) as in the provisional version (A), the other specific pad (s) remaining disconnected for the final version.
  • the final version is finalized as follows:
  • the first version of the circuit is pre-produced; it is tested using programs installed in the external memory MX and transmitted in serial mode through the pad PS1 with the help of synchronization signals transmitted by the pad PS3 (these signals also serving to control the converters CSP1, CSP2, CPS1, CPS2); these programs can be modified as needed during the development phase, until programs are reached giving satisfaction.
  • the pad PS2 is brought to a logic level such that the multiplexer MUX connects the microprocessor to the external memory MX and not to the internal memory MM.
  • a set of masks is then developed for the final version (only one mask different from those of the provisional version).
  • the encapsulation is done in one of the ways indicated above.
  • the PS2 pad is connected to a logic level such that the multiplexer connects the microprocessor to the internal memory either by a resistor or a "pull-up" transistor present from the outset in the two versions, or even by the application of an external signal if the PS2 pad is connected to an external pin in the final version.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Computing Systems (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Semiconductor Integrated Circuits (AREA)
  • Microcomputers (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)

Abstract

L'invention concerne les circuits comportant sur une même puce à la fois un microprocesseur et une mémoire morte interne de programmes. Pour faciliter la mise au point des programmes de la mémoire morte sans fabriquer, en vue de la mise au point, une version spéciale de circuit trop différente de la version définitive, on propose selon l'invention d'utiliser une mémoire extérieure pour la mise au point. Un plot de contact PS1 de la puce sert à transmettre en mode série un programme issu d'une mémoire extérieure MX. Un plot PS2 de sélection de mode permet de définir si le microprocesseur doit travailler en mode de ROM interne (mode normal) ou en mode de ROM externe (mode pour la mise au point). Les éléments de circuit rajoutés pour permettre ce double fonctionnement sont d'encombrement limité, de sorte que l'on peut utiliser une version de circuit définitif identique à la version provisoire de mise au point, à l'exception du fait que la version définitive contient un programme définitif en mémoire morte. En général le contenu de la mémoire morte est défini par un seul masque, et par conséquent un seul masque différent devra être réalisé pour la version définitive. <IMAGE>

Description

  • L'invention concerne les circuits intégrés à microprocesseurs. Elle concerne plus spécialement les circuits comportant sur une même puce semiconductrice à la fois un microprocesseur et une mémoire morte de programmes. La mémoire morte contient notamment un ou plusieurs programmes à exécuter par le microprocesseur.
  • Les circuits tout particulièrement concernés par la présente invention sont notamment les microcontrôleurs à faible coût spécialisés pour un client et une application déterminée.
  • Le problème principal que l'on rencontre dans la réalisation d'un tel circuit est la phase de mise au point du circuit et des programmes d'utilisation stockés en mémoire morte.
  • En effet, la mémoire morte est réalisée par masquage photolithographique, c'est-à-dire que les données enregistrées dans la mémoire sont définies par une configuration particulière de masque photolithographique. Par exemple, chaque cellule de mémoire est constituée par un transistor et la donnée binaire mémorisée dans cette cellule est définie par le fait que le transistor a été masqué ou non pendant une opération d'implantation d'enrichissement ou de déplétion. Ou encore, la mémoire est constituée par des transistors agencés en matrice de lignes et de colonnes et la donnée binaire mémorisée par une cellule est définie par le fait qu'il y a ou qu'il n'y a pas de contact conducteur reliant le transistor à une ligne ou une colonne passant à côté de lui (masquage ou absence de pendant l'opération d'ouverture de régions de contact dans une couche isolante).
  • La difficulté de mise au point est la suivante: il faut écrire un programme d'application du microprocesseur et réaliser le microprocesseur avec ce programme stocké en mémoire morte. Puis il faut tester le circuit intégré. Si l'application est un peu complexe, il y aura probablement des erreurs dans le programme. Pour corriger les erreurs, il faut réaliser à nouveau un circuit intégré comprenant le microprocesseur et un nouveau programme corrigé. Cela suppose un nouveau jeu de masques. Il n'est pas possible de recommencer plusieurs fois cette opération très coûteuse et très longue. Par conséquent, en pratique il faudrait que le programme d'application du microprocesseur marche parfaitement du premier coup. L'expérience montre que c'est rarement le cas. De plus, cette méthode permet de tester le microprocesseur uniquement dans le cadre de l'exécution des programmes mis dans la mémoire morte; elle ne permet pas de tester le microprocesseur ou les autres éléments de circuit indépendamment de ces programmes. En effet, dans les microcontroleurs à faible coût (applications radio, autoradio, HiFi, télévision, etc.), la simple mise sous tension du circuit met en route les programmes stockés dans la mémoire morte; le microprocesseur ne peut pas faire autre chose qu'exécuter ces programmes.
  • C'est pourquoi une méthode couramment adoptée est la suivante, expliquée en référence aux figures 1 et 2: on réalise deux versions de circuit intégré différentes, proches l'un de l'autre, qui sont une version A1 et une version B1.
  • La première version de circuit (version A1), destinée à la mise au point, comprend un microprocesseur MP et les éléments de circuit qui peuvent être nécessaires dans l'application considérée (notamment des périphériques d'entrée/sortie PH1, PH2, etc...), mais elle ne comporte pas de mémoire morte de programmes, ou en tout cas cette mémoire n'est pas utilisable.
  • Pour l'exécution de programmes, le microprocesseur MP est relié à des bornes d'entrée/sortie du circuit intégré spécialement prévues pour la phase de mise au point. Ces bornes d'entrée/sortie sont destinées à la transmission de données et d'adresses entre le microprocesseur et une mémoire MX électriquement programmable, extérieure au circuit intégré. La mémoire extérieure (EPROM ou EEPROM) contient les programmes à exécuter. Elle est électriquement programmable et par conséquent les programmes peuvent être modifiés à volonté, pendant tout le temps que dure la mise au point.
  • On aboutit à une version finale de programmes correspondant à l'application désirée par le client.
  • On réalise alors le dessin et la fabrication d'une version définitive B1 du circuit intégré (figure 2), version qui contient une mémoire morte de programmes masquée avec les données de programmes correspondant aux programmes définitifs non modifiables. Cette version B1 ne comprend pas les bornes d'entrée sortie qui n'étaient destinés qu'à la transmission de programmes issus de la mémoire externe.
  • Ce mode de mise au point d'un circuit intégré et de son application comporte les inconvénients suivants:
    • comme les versions A1 et B1 du circuit sont différentes, elles nécessitent deux jeux de masques (très coûteux), deux vérifications des masques, deux lots de fabrication (très coûteux) alors qu'en tout état de cause la version A1 n'est nécessaire que pour produire un petit nombre de circuits à des fins d'étude et de mise au point; la version A1 ne sera pas une version fabriquée industriellement en série pour le client;
    • d'autre part, bien que le circuit A1 ne soit destiné qu'à la mise au point, il doit cependant être réalisé industriellement en série pour détecter les erreurs, bogues, etc., qui pourraient apparaître dans une production de série. Cela introduit un délai considérable dans le déroulement d'un projet de développement et fabrication d'un nouveau circuit pour un client.
  • La présente invention a pour but de proposer un système plus efficace, moins long, et moins coûteux pour développer un circuit intégré à microprocesseur incorporant sur la même puce le microprocesseur et une mémoire morte de programmes.
  • Pour cela, on propose de réaliser une version pratiquement unique de circuit intégré qui est à la fois la version destinée à la mise au point et la version industrielle définitive, à l'exception du fait que la version définitive peut différer de la version destinée au test par le contenu de la mémoire morte. On y parvient notamment en prévoyant que le circuit intégré possède deux modes de fonctionnement, l'un où le microprocesseur exécute les programmes en mémoire morte interne et l'autre où le microprocesseur exécute des programmes modifiables contenus dans une mémoire externe, avec des moyens pour permettre la transmission d'adresses et données entre le microprocesseur et la mémoire externe dans le second mode. Pour qu'il n'y ait pas à réaliser deux versions différentes de circuit, et pour que la version pratiquement unique ne soit pas exagérément coûteuse, on prévoit que les moyens nécessaires au fonctionnement avec mémoire de programmes externe sont très peu encombrants et peuvent subsister sur la puce définitive. En particulier, une manière d'y parvenir est d'utiliser un plot de contact de la puce pour la transmission d'adresses et de données en série à travers ce plot entre le microprocesseur et une mémoire externe électriquement programmable, et un plot de contact de la puce réservé à la réception par la puce d'un signal de sélection de mode de fonctionnement du circuit. De cette manière, pendant la phase de mise au point on applique un signal de sélection correspondant au mode dans lequel le microprocesseur exécute les programmes de mémoire externe transmis en série à travers le plot de contact spécifique; puis, pour le circuit définitivement réalisé en série et comportant le programme figé en mémoire interne, le signal de sélection de mode appliqué est celui qui correspond au mode normal définitif: exécution des programmes de la mémoire morte interne.
  • La puce de circuit intégré selon l'invention comporte globalement les éléments supplémentaires suivants, par rapport à une puce qui ne nécessiterait pas du tout de phase de mise au point: un plot de contact pour la transmission en série d'adresses et de données de programme entre la mémoire externe et le microprocesseur, et un plot de contact de sélection de mode; et un multiplexeur pour aiguiller les adresses et données soit vers la mémoire externe soit vers la mémoire interne en fonction du signal de sélection reçu sur le plot de sélection. Eventuellement, il peut être nécessaire d'avoir en outre un plot de contact pour la transmission de signaux de synchronisation, notamment pour définir si ce sont des adresses ou des données qui sont échangées à un instant donné à travers le plot de transmission en série. Enfin, la puce peut comprendre des éléments de circuits additionnels tels que des convertisseurs parallèle/série et série/parallèle pour les cas où le microprocesseur ne peut travailler qu'avec des signaux binaires en parallèle. L'ensemble de ces circuits additionnels et plots de contact additionnels est suffisamment restreint en encombrement sur la puce pour qu'ils puissent rester sur la version définitive du circuit fabriqué, bien qu'ils soient en principe inutiles pour le circuit définitif. C'est ce qui permet d'avoir pratiquement une seule version de circuit, seul le masque correspondant à la définition des données de mémoire morte étant spécifique de la version finale.
  • Il faut d'ailleurs signaler que les plots de contact supplémentaires ne sont pas nécessairement reliés à des broches extérieures du boîtier du circuit définitif. Pour la première version, destinée à la mise au point, les plots de contact spécifiques de cette mise au point doivent être reliés à des broches extérieures du boîtier pour qu'on puisse transmettre les signaux nécessaires. Mais pour la version définitive, il n'est plus forcément nécessaire de relier tous ces plots spécifiques à des broches: par exemple le plot de transmission d'adresses et données en série peut rester en l'air puisqu'il n'a plus rien à transmettre. Il en est de même du plot de synchronisation. Quant au plot de sélection de mode, on peut très bien prévoir qu'il est relié par une résistance ou un transistor ("pull-up" ou "pull-down") à une borne d'alimentation du circuit de sorte qu'on fixe l'état binaire auquel il est porté dans la version définitive sans qu'il soit nécessaire d'appliquer cet état binaire à partir d'une broche extérieure spéciale.
  • Une possibilité de mise en oeuvre de l'invention consisterait à utiliser, pour les circuits de la première version, un boîtier de circuit intégré ayant quelques broches supplémentaires par rapport à celles qui sont nécessaires dans la version définitive. Pour le circuit définitif, un boîtier à nombre de broches plus réduit serait utilisé, les plots de contact spécifiques de la phase de mise au point restant non connectés.
  • Par conséquent, en résumé, selon un premier aspect important de l'invention, le circuit intégré comporte un plot de contact spécifique utilisable pendant une phase de développement du circuit intégré, et des moyens pour permettre pendant cette phase la transmission d'adresses et de données en série à travers ce plot et pour faire exécuter au microprocesseur un programme transmis à travers ce plot et issu d'une mémoire électriquement programmable extérieure au circuit.
  • Par ce moyen, le microprocesseur peut être testé à partir de programmes extérieurs au circuit intégré (programmes de test ou programmes de l'application finale envisagée pour le circuit). Le développement est fait à partir d'une présérie industrielle. A la fin du développement, le programme final mis au point est défini et la configuration de masque qui servira au stockage en mémoire morte est établie définitivement. Si le programme n'a pas été modifié en cours de mise au point, les circuits peuvent être fabriqués en série. Si le programme a du être modifié, les masques autres que le masque de configuration de données de mémoire morte sont inchangés. La réalisation du circuit définitif ne demande donc qu'un seul masque spécifique différent des masques déjà élaborés pour la présérie ayant servi au développement.
  • Un plot de contact de sélection de mode de fonctionnement du circuit intégré est prévu sur la puce. Ce plot peut recevoir un signal électrique de sélection de mode signal binaire en principe). Pour une valeur du signal, le mode est le mode normal de fonctionnement du circuit, dans lequel le microprocesseur exécute des programmes stockés dans la mémoire morte du circuit. Pour une autre valeur du signal de sélection de mode, le mode est le mode de mise au point dans lequel le microprocesseur exécute des programmes contenus dans la mémoire externe, ces programmes étant transmis en série à travers la broche spécifique du boîtier.
  • Et d'autre part, selon un autre aspect de l'invention, pour faire la mise au point du circuit intégré, on prévoit que le circuit intégré comporte d'une part des moyens pour faire exécuter par le microprocesseur soit un programme interne contenu dans la mémoire morte du circuit, soit un programme externe contenu dans une mémoire externe et transmis à travers au moins un plot de contact spécifique de la puce de circuit intégré, le choix entre le programme externe et le programme interne étant commandé par un signal de sélection appliqué sur un plot de contact de sélection de mode prévu sur la puce, l'un au moins desdits plots de contact n'étant pas relié à une broche extérieure du boîtier du circuit intégré dans sa version définitive.
  • D'autres caractéristiques et avantages de l'invention apparaîtront à la lecture de la description détaillée qui suit et qui est faite en référence aux dessins annexés dans lesquels:
    • les figures 1 et 2 représentent les versions A1 (circuit pour la mise au point) et B1 (circuit définitif) d'une puce de circuit intégré contenant un microprocesseur et une mémoire morte de programmes interne;
    • la figure 3 représente la version pratiquement unique du circuit intégré réalisé selon l'invention et permettant la mise au point puis l'utilisation définitive.
    • les figures 4 à 7 représentent divers modes de connexion des plots de contact de la puce à des broches extérieures de boîtier, dans la version provisoire et dans la version définitive du circuit.
  • Sur la figure 3, la puce de circuit intégré est désignée par la référence 10. Elle comporte un certain nombre d'éléments de circuit et notamment un microprocesseur MP et des circuits périphériques divers, PH1, PH2,..., ainsi qu'une mémoire morte de programmes MM. La puce comporte également un certain nombre de plots de contact d'accès P1, P2, P3, etc., destinés à être reliés à des broches extérieures lorsque la puce est enfermée dans un boîtier; ces plots servent à la transmission de signaux entre la puce et l'extérieur.
  • Les éléments de circuit et plots de contact nécessaires au fonctionnement de la puce dans la fonction qu'elle doit remplir pour son utilisateur final peuvent être quelconques et ils n'ont pas besoin d'être décrits. Le microprocesseur fonctionne sous la commande des programmes contenus dans la mémoire morte interne MM, et les périphériques permettent de recevoir et transmettre des signaux en fonction de ces programmes, à travers les plots de contact et les broches de boîtier qui sont reliés à ces plots.
  • Les éléments supplémentaires qui font partie de la puce et qui sont prévus spécifiquement pour faciliter la mise au point des programmes d'application de la mémoire morte sont les suivants dans l'exemple de la figure 1:
    • un plot de contact PS1 dit "plot de transmission série", destiné à la transmission en série d'adresses et de données entre le microprocesseur et une mémoire externe MX, électriquement programmable (EPROM ou EEPROM);
    • un plot de contact PS2 dit "plot de sélection de mode", destiné à recevoir un signal de sélection de mode permettant de faire passer le circuit d'un premier mode (mode normal), dans lequel le microprocesseur exécute les programmes de la mémoire interne MM, à un second mode (mode de mise au point) dans lequel le microprocesseur exécute les programmes contenus dans la mémoire externe et transmis à travers le plot PS1;
    • éventuellement un troisième plot PS3 dit "de synchronisation", servant à définir à un instant donné si les signaux transmis sont des adresses envoyées à la mémoire ou des données reçues de la mémoire;
    • un multiplexeur MUX commandé par le plot de sélection de mode PS2, pour aiguiller les adresses et données soit entre le microprocesseur et la mémoire interne soit entre le microprocesseur et la mémoire externe, selon l'état binaire présent sur le plot PS2;
    • si nécessaire des convertisseurs série/parallèle CSP1 et parallèle/série CPS1, dans le cas où le microprocesseur travaille sur des adresses et des données constitués par des mots binaires en parallèle; de cette manière, les données parallèle issues du microprocesseur à destination de la mémoire externe sont converties en données série avant de passer vers le plot PS1, et réciproquement, les données série provenant de la mémoire externe à travers le plot PS1 sont converties en données parallèle; la mémoire externe peut elle même avoir besoin de convertisseurs parallèle série et série parallèle pour communiquer en série avec le plot PS1. Ces convertisseurs supplémentaires CPS2 et CSP2 ne font pas partie du circuit intégré.
  • Le schéma de la figure 3 correspond aux deux versions du circuit intégré réalisées: version de mise au point fabriquée en très petite série, et version définitive, très proche de la version de mise au point et réalisée en grande série. Les différences entre les deux versions sont les suivantes:
    • la version définitive comporte des données de programmes de mémoire morte définitives, alors que la version proviosire comporte des données différentes: soit des programmes qui ne sont pas tout à fait au point (par exemple une première version de ces programmes) soit des programmes ou données permettant des tests, soit encore aucun programme et aucune donnée; un seul masque photolithographique sert à définir ces données; par conséquent la version définitive ne diffère de la version provisoire que par un seul masque;
    • la version définitive peut, dans certains modes de réalisation de l'invention, avoir un ou plusieurs de ses plots de contact spécifiques PS1 et/ou PS2, et/ou PS3, non connectés à des broches externes du boîtier du circuit. La version provisoire pour la mise au point nécessite au contraire une connexion de ces plots de contact spécifiques PS1, PS2, PS3 à des broches du boîtier.
  • Pour le plot de contact PS1 (plot de transmission série), on comprend qu'après la phase de mise au point il n'est plus nécessaire de le connecter puisqu'il n'y a plus besoin de communication avec la mémoire externe.
  • Le plot PS3 n'est plus utile non plus puisqu'il sert à la synchronisation des transmissions série à travers le plot PS1.
  • Quant au plot PS2, de sélection de mode, il suffit qu'un niveau logique bien déterminé (par exemple niveau haut) soit appliqué sur ce plot dans la version définitive, ce niveau correspondant au mode de fonctionnement normal. Et il faut cependant qu'on puisse appliquer sur ce plot un niveau contraire lorsque ce plot est relié à une broche externe dans la version destinée à la mise au point. Pour cela, on peut par exemple relier le plot PS2 à un plot d'alimentation Vcc du circuit intégré à travers un élément résistif ou un transistor "pull-up". De cette manière, lorsqu'on impose un niveau bas par un signal externe sur le plot PS2, ce niveau bas commande le multiplexeur MUX dans un sens. Mais quand on n'applique pas de signal sur le plot PS2, le transistor ou la résistance tire ce plot vers le niveau haut et commande le multiplexeur dans l'autre sens.
  • Il y a donc plusieurs possibilités de mettre en oeuvre l'invention en ce qui concerne l'encapsulation dans un boîtier. Dans une première possibilité (figure 4), les plots spécifiques PS1, PS2, PS3 sont connectés à des broches du boîtier aussi bien dans la version provisoire (A) que dans la version définitive (B). Le boîtier comporte donc autant de broches qu'il est nécessaire pour les fonctions qu'il doit remplir pour l'utilisateur final, plus les trois broches correspondant aux plots PS1, PS2, PS3. Cela présente l'avantage d'utiliser le même boîtier pour la version provisoire et pour la version définitive.
  • Dans une autre possibilité (figure 5), les plots spécifiques ne sont pas connectés dans la version définitive (B). Mais dans la version provisoire (A) on utilise un boîtier comportant trois broches de plus que le boîtier de la version définitive.
  • Dans une autre possibilité encore (figure 6), un ou deux des plots spécifiques sont connectés dans la version définitive (B) comme dans la version provisoire (A), le ou les autres plots spécifiques restant déconnectés pour la version définitive.
  • Enfin, on peut envisager exceptionnellement (figure 7) qu'un ou plusieurs des plots de contact spécifiques PS1, PS2, PS3, soient connectés dans la version provisoire à des broches de contact qui sont réservées dans la version définitive à d'autres usages, donc à une connexion avec d'autres plots P1, P2, P3 (sorties de certains périphériques, etc.). Mais il faut bien comprendre que dans ce cas la phase de mise au point ne permet pas de tester complètement l'application puisque certaines broches du circuit ne seront pas dans la configuration qu'elles doivent avoir dans la version définitive. Cela ne peut donc en principe s'envisager que pour des broches P1, P2, P3 qui ne sont pas critiques dans l'application.
  • Par ailleurs, il est envisageable aussi, mais avec les mêmes inconvénients que dans le cas précédent, que les plots de contact spécifiques soient confondus avec des plots de contact normalement utilisés dans la version définitive, avec des circuits de multiplexage permettant d'attribuer à ces plots soit une fonction spécifique de la phase de mise au point, soit leur fonction normale de la version définitive.
  • La mise au point de la version définitive se fait de la manière suivante:
  • La première version du circuit est fabriquée en présérie; elle est testée grâce à des programmes installés dans la mémoire externe MX et transmis en mode série à travers le plot PS1 avec l'aide de signaux de synchronisation transmis par le plot PS3 (ces signaux servant également à la commande des convertisseurs CSP1, CSP2, CPS1, CPS2); ces programmes peuvent être modifiés au fur et à mesure des besoins pendant la phase de mise au point, jusqu'à ce qu'on arrive à des programmes donnant satisfaction. Pendant cette mise au point, le plot PS2 est porté à un niveau logique tel que le multiplexeur MUX relie le microprocesseur à la mémoire externe MX et non à la mémoire interne MM.
  • Un jeu de masques est alors élaboré pour la version définitive (un seul masque différent de ceux de la version provisoire). L'encapsulation est faite selon l'une des manières indiquées ci-dessus. Le plot PS2 est relié à un niveau logique tel que le multiplexeur relie le microprocesseur à la mémoire interne soit par une résistance ou un transistor "pull-up" présents dès l'origine dans les deux versions, soit encore par l'application d'un signal externe si le plot PS2 est relié à une broche extérieure dans la version définitive.

Claims (7)

  1. Circuit intégré à microprocesseur comportant, sur une même puce de circuit intégré encapsulée dans un boîtier, un microprocesseur (MP) et une mémoire morte interne de programme (MM) pour contenir un programme à exécuter par le microprocesseur, caractérisé en ce que la puce comporte au moins un plot de contact (PS1) permettant la transmission d'adresses et de données entre le microprocesseur et une mémoire (MX) électriquement programmable extérieure au circuit intégré, au moins un plot de contact (PS2) de sélection de mode de fonctionnement du microprocesseur, et des moyens pour faire exécuter au microprocesseur soit un programme contenu dans la mémoire morte interne soit un programme contenu dans la mémoire externe, en fonction d'un signal présent sur le plot de contact de sélection de mode, l'un au moins des plots de contact mentionnés n'étant pas relié à une broche extérieure du boîtier.
  2. Circuit intégré selon la revendication 1, caractérisé en ce que le plot de contact de sélection de mode est relié, à travers un élément de circuit résistif ou un transistor, à une des bornes d'alimentation du circuit intégré.
  3. Circuit intégré selon l'une des revendications 1 et 2, caractérisé en ce qu'il comporte des convertisseurs série/parallèle et parallèle série entre le microprocesseur et le plot de transmission série.
  4. Circuit intégré selon l'une des revendications 1 à 3, caractérisé en ce qu'il comporte un multiplexeur commandé par le plot de sélection de mode pour connecter le microprocesseur soit à la mémoire interne soit à la mémoire externe.
  5. Circuit intégré selon l'une des revendications 1 à 4, caractérisé en ce qu'il comporte un plot de contact supplémentaire (PS3) pour transmettre un signal de synchronisation définissant si les signaux présents sur le plot de transmission série sont des adresses ou des données.
  6. Procédé de fabrication d'une puce de circuit intégré comportant un microprocesseur (MP) et une mémoire morte (MM) de programmes pour le microprocesseur, le procédé comportant une phase de mise au point des circuits de la puce et des programmes contenus dans la mémoire morte, caractérisé en ce que:
    - pendant la phase de mise au point, effectuée sur une première version du circuit intégré, un niveau logique spécifique est appliqué sur un plot de contact (PS2) de la puce pour mettre le circuit dans un mode où le microprocesseur exécute des programmes contenus dans une mémoire (MX) extérieure électriquement programmable;
    - toujours pendant cette phase, le microprocesseur échange des adresses et des données en mode série avec la mémoire extérieure (MX) à travers une borne extérieure reliée à un autre plot de contact (PS1) du circuit intégré;
    - après la phase de mise au point, les circuits sont fabriqués dans une version finale ne différant de la première version que par le contenu de la mémoire interne, et un niveau logique complémentaire dudit niveau spécifique est systématiquement appliqué sur le premier plot de contact mentionné (PS2) pour faire exécuter au microprocesseur des programmes contenus dans la mémoire morte de programmes présente sur la puce.
  7. Procédé de fabrication selon la revendication 6, caractérisé en ce que pour la phase de mise au point, les puces sont encapsulées dans un boîtier ayant plus de broches extérieures que les boîtiers d'encapsulation des puces de la version définitive, au moins un des plots de contact mentionnés n'étant pas connecté à une broche extérieure dans la version définitive.
EP91400019A 1990-01-09 1991-01-07 Circuit intégré à microprocesseur fonctionnant en mode ROM interne et EPROM externe Expired - Lifetime EP0437387B1 (fr)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR9000169 1990-01-09
FR9000169A FR2656940A1 (fr) 1990-01-09 1990-01-09 Circuit integre a microprocesseur fonctionnant en mode rom interne et eprom externe.

Publications (2)

Publication Number Publication Date
EP0437387A1 true EP0437387A1 (fr) 1991-07-17
EP0437387B1 EP0437387B1 (fr) 1993-03-24

Family

ID=9392603

Family Applications (1)

Application Number Title Priority Date Filing Date
EP91400019A Expired - Lifetime EP0437387B1 (fr) 1990-01-09 1991-01-07 Circuit intégré à microprocesseur fonctionnant en mode ROM interne et EPROM externe

Country Status (4)

Country Link
US (1) US5751940A (fr)
EP (1) EP0437387B1 (fr)
DE (1) DE69100044T2 (fr)
FR (1) FR2656940A1 (fr)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0488281A3 (en) * 1990-11-28 1993-03-31 Nec Corporation Test mode setting arrangement for use in microcomputer
WO1993015463A1 (fr) * 1992-01-22 1993-08-05 Jan Kristoffersen Procede d'etablissement d'un circuit de liaison destine a transferer des donnees entre un systeme processeur et un systeme externe

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE19732324A1 (de) * 1997-07-28 1999-02-04 Kloeckner Moeller Gmbh Schaltungsanordnung und Verfahren zur Speicherplatzverwaltung und zur Abarbeitung von Anwenderprogrammen in Kleinsteuerungen
CN104162200B (zh) 2006-02-09 2018-03-27 德卡产品有限公司 外围系统
US11318249B2 (en) 2006-02-09 2022-05-03 Deka Products Limited Partnership Infusion pump assembly
US8262616B2 (en) 2008-10-10 2012-09-11 Deka Products Limited Partnership Infusion pump assembly

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0127440A2 (fr) * 1983-05-23 1984-12-05 Kabushiki Kaisha Toshiba Dispositif de circuit intégré incorporant une unité de traitement de données et une ROM mémorisant des programmes d'application
US4609985A (en) * 1982-12-30 1986-09-02 Thomson Components-Mostek Corporation Microcomputer with severable ROM

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS57143657A (en) * 1981-03-03 1982-09-04 Fujitsu Ltd Memory controlling system
US4514805A (en) * 1982-02-22 1985-04-30 Texas Instruments Incorporated Interrupt operation in systems emulator mode for microcomputer
JPS61169941A (ja) * 1985-01-22 1986-07-31 Sony Corp 記憶装置
JPS61235953A (ja) * 1985-04-12 1986-10-21 Hitachi Ltd 1チツプマイクロコンピユ−タ
NL8602849A (nl) * 1986-11-11 1988-06-01 Philips Nv Inrichting voor het emuleren van een microcontroller, middels gebruik maken van een moedermicrocontroller en een dochtermicrocontroller, moedermicrocontroller, respektievelijk dochtermicrocontroller voor gebruik in zo een inrichting, geintegreerde schakeling voor gebruik in zo een dochtermicrocontroller en microcontroller bevattende zo een geintegreerde schakeling.
JPS63133251A (ja) * 1986-11-26 1988-06-06 Mitsubishi Electric Corp マイクロプロセツサの周辺回路
US5101498A (en) * 1987-12-31 1992-03-31 Texas Instruments Incorporated Pin selectable multi-mode processor
FR2636797B1 (fr) * 1988-09-16 1990-11-09 Sgs Thomson Microelectronics Circuit integre pour poste telephonique avec detecteur d'enveloppe de signal
FR2636740B1 (fr) * 1988-09-16 1990-12-28 Sgs Thomson Microelectronics Detecteur d'enveloppe logarithmique de signal analogique
US5053949A (en) * 1989-04-03 1991-10-01 Motorola, Inc. No-chip debug peripheral which uses externally provided instructions to control a core processing unit
FR2649505B1 (fr) * 1989-07-07 1991-10-25 Sgs Thomson Microelectronics Circuit integre avec oscillateur reglable a frequence independante de la tension d'alimentation
FR2649504B1 (fr) * 1989-07-07 1991-09-27 Sgs Thomson Microelectronics Circuit integre a microprocesseur et horloge interne programmable

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4609985A (en) * 1982-12-30 1986-09-02 Thomson Components-Mostek Corporation Microcomputer with severable ROM
EP0127440A2 (fr) * 1983-05-23 1984-12-05 Kabushiki Kaisha Toshiba Dispositif de circuit intégré incorporant une unité de traitement de données et une ROM mémorisant des programmes d'application

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
PATENT ABSTRACTS OF JAPAN, vol. 11, no. 79 (P-555)[2526], 11 mars 1987; & JP-A-61 235 953 (HITACHI LTD) 21-10-1986 *
PATENT ABSTRACTS OF JAPAN, vol. 6, no. 245 (P-159)[1123], 3 décembre 1982; & JP-A-57 143 657 (FUJITSU K.K.) 04-09-1982 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0488281A3 (en) * 1990-11-28 1993-03-31 Nec Corporation Test mode setting arrangement for use in microcomputer
US5291425A (en) * 1990-11-28 1994-03-01 Nec Corporation Test mode setting arrangement for use in microcomputer
WO1993015463A1 (fr) * 1992-01-22 1993-08-05 Jan Kristoffersen Procede d'etablissement d'un circuit de liaison destine a transferer des donnees entre un systeme processeur et un systeme externe

Also Published As

Publication number Publication date
US5751940A (en) 1998-05-12
DE69100044D1 (de) 1993-04-29
DE69100044T2 (de) 1993-09-16
FR2656940A1 (fr) 1991-07-12
EP0437387B1 (fr) 1993-03-24

Similar Documents

Publication Publication Date Title
EP3425517B1 (fr) Procédé de communication entre un dispositif maître et n dispositifs esclaves connectés sur un bus de données synchrone du type spi et dispositif correspondant
FR2600453A1 (fr) Dispositif de memoire a semi-conducteurs
FR2860313A1 (fr) Composant a architecture reconfigurable dynamiquement
EP0606806B1 (fr) Circuit intégré comprenant un microprocesseur, une mémoire et des périphériques internes configurables
EP0649547A1 (fr) Carte a memoire de masse avec fonction entree/sortie.
FR2985358A1 (fr) Chaine de balayage en peripherie pour memoire en pile
EP0437387B1 (fr) Circuit intégré à microprocesseur fonctionnant en mode ROM interne et EPROM externe
FR2808608A1 (fr) Carte a memoire electronique destinee a etre introduite dans un dispositif de traitement
EP1359550A1 (fr) Régéneration d&#39;une quantité secrète à partir d&#39;un identifiant d&#39;un circuit intégré
EP0809255B1 (fr) Cellule pour registre à décalage
EP1397806B1 (fr) Identification d&#39;un circuit integre a partir de ses parametres physiques de fabrication
EP0229433B1 (fr) Dispositif de test de circuit logique combinatoire
EP1659492B1 (fr) Appareil électronique autonome, notamment enregistreur médical ambulatoire, à microcontrôleur reprogrammable
EP0635789A1 (fr) Circuit intégré du type microcontroleur à mémoire morte contenant un programme générique, notamment de test, station de test et procédé de fabrication correspondants
EP1942599A1 (fr) Protection d&#39;une donnée statique dans un circuit intégré
FR2779844A1 (fr) Structure d&#39;interconnexion entre organes adressables d&#39;un microcalculateur, notamment pour dispositif medical implantable actif tel que stimulateur ou defibrillateur cardiaque
FR2779887A1 (fr) Circuit elementaire de memorisation
WO2012052080A1 (fr) Procede de controle d&#39;un circuit integre
EP1554653B1 (fr) Transmission de messages numeriques de repetition entre un circuit de surveillance de microprocesseur et un outil d&#39;analyse
EP3611628A1 (fr) Microcontrôleur
EP1374242B1 (fr) Stockage d&#39;un code binaire immuable dans un circuit integre
EP1475727A1 (fr) Dispositif d&#39;émulation d&#39;une ou plusieurs puces de circuits intégrés
FR2751461A1 (fr) Dispositif de controle de finalite de test
FR2907260A1 (fr) Carte de memoire reconfigurable et procedes pour sa fabrication et son fonctionnement
FR2991842A1 (fr) Interface commune pour peripherique wifi et carte a puce

Legal Events

Date Code Title Description
PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

AK Designated contracting states

Kind code of ref document: A1

Designated state(s): DE FR GB IT

17P Request for examination filed

Effective date: 19910906

17Q First examination report despatched

Effective date: 19911127

GRAA (expected) grant

Free format text: ORIGINAL CODE: 0009210

AK Designated contracting states

Kind code of ref document: B1

Designated state(s): DE FR GB IT

ITF It: translation for a ep patent filed
REF Corresponds to:

Ref document number: 69100044

Country of ref document: DE

Date of ref document: 19930429

GBT Gb: translation of ep patent filed (gb section 77(6)(a)/1977)

Effective date: 19930614

PLBE No opposition filed within time limit

Free format text: ORIGINAL CODE: 0009261

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: NO OPPOSITION FILED WITHIN TIME LIMIT

26N No opposition filed
PGFP Annual fee paid to national office [announced via postgrant information from national office to epo]

Ref country code: DE

Payment date: 20010102

Year of fee payment: 11

REG Reference to a national code

Ref country code: GB

Ref legal event code: IF02

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: DE

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20020801

PGFP Annual fee paid to national office [announced via postgrant information from national office to epo]

Ref country code: GB

Payment date: 20021231

Year of fee payment: 13

PGFP Annual fee paid to national office [announced via postgrant information from national office to epo]

Ref country code: FR

Payment date: 20030110

Year of fee payment: 13

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: GB

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20040107

GBPC Gb: european patent ceased through non-payment of renewal fee

Effective date: 20040107

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: FR

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20040930

REG Reference to a national code

Ref country code: FR

Ref legal event code: ST

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: IT

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES;WARNING: LAPSES OF ITALIAN PATENTS WITH EFFECTIVE DATE BEFORE 2007 MAY HAVE OCCURRED AT ANY TIME BEFORE 2007. THE CORRECT EFFECTIVE DATE MAY BE DIFFERENT FROM THE ONE RECORDED.

Effective date: 20050107