Brevet FR2613851A1 — publié le 19881014

La présente invention se rapporte à des cartes à circuits intégrés et plus particulièrement à une carte à circuits intégrés ainsi qu'à un procédé perfectionné pour l'enregistrement d'une information séquentielle dans le temps dans une telle carte à circuits intégrés. Les cartes à circuits intégrés sont connues et ont évolué pour contenir un microprocesseur et une mémoire non volatile qui sont noyés dans la carte. Dans les cartes à circuits intégrés récentes, la mémoire non volatile peut être réécrite et une telle caractéristique permet une mise au point de l'information enregistrée. Par suite, de telles cartes peuvent être utilisées en tant que cartes de transactions o les données se rappor- tant à une transaction peuvent être enregistrées lorsque la transaction est effectuée et ultérieurement extraites afin de mettre au point le compte du porteur de la carte. Dans de telles cartes, lorsqu'une série de données de transaction doivent être enregistrées, il y a typique- ment une section de la mémoire à semiconducteurs qui est mise de côté pour l'enregistrement de données de transac- tion, et cette section de la mémoire est divisée en blocs séparés, chacun étant adapté à contenir les données se rapportant à une seule transaction. Par exemple, si l'information à enregistrer dans la carte à circuits intégrés se rapporte à des transactions commerciales, les données représentant le moment et les détails de chaque transaction sont enregistrées dans les blocs respectifs, de préférence en séquence dans le temps. En général, il est très pratique de traiter ces données en série dans le temps dans l'ordre dans lequel les données sont produites. Typiquement, la plus ancienne donnée est la première à perdre son utilité, et ainsi lorsqu'elle devient non utilisable, les emplacements o la donnée la plus ancienne est enregistrée peuvent être recouverts, permettant à la carte à circuits intégrés d'être utilisée pour un bien plus grand nombre de transactions que ce qui serait possible en se basant sur - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - --l un ensemble limité par le nombre de blocs.d'application dans la mémoire limitée. Cependant, lorsque tous les blocs alloués sont remplis, il est nécessaire de rendre des blocs enregistrés au préalable disponibles pour l'enregistrement de la nouvelle information. Les blocs qui peuvent être rendus disponibles sont ceux contenant la plus ancienne information qui a déjà été extraite par le programme d'applications et qui donc n'est plus nécessaire. Comme c'est le programme d'applications qui a la nécessité de stocker et de relocaliser ultérieurement la donnée, il était de pratique courante, que le programme d'applicationsiui-même définisse une adresse dans la mémoire à semiconducteurs sur la carte, de manière que le programme d'applicatio nsait l'information d'adresse pour une récupération ultérieure de cette donnée. Mais si le programme d'applicationsest uniquement chargé de la détermination de la plus ancienne donnée pour produire de nouvelles localisations pour l'enregistrement d'une nouvelle donnée, à chaque fois que l'on souhaite enre- gistrer un nouvel élément de donnée, il est nécessaire que le programme d'applicationsextraye et examine toutes les données dans tous les blocs pour isoler la plus ancienne donnée enregistrée avant de pouvoir enregistrer la nouvelle donnée. En considérant le fait qu'un réseau complexe peut comprendre de nombreuses cartes à circuits intégrés utilisées de manière statistique dans une - grande variété de terminaux largement dispersés, on peut noter qu'une charge considérable peut être imposée sur le programme d'applicationss'il doit uniquement déterminer la plus ancienne donnée afin d'enregistrer une nouvelle donnée pour chaque transaction. Etant donné ce qui précède, la présente invention a pour but général un procédé et un appareil pour l'enregistrement d'une information séquentielle dans le temps dans une carte à circuits intégrés, réduisant la charge sur le programme d'applicationsen assignant des emplacements de stockage, tout en conservant une compatibi- lité avec le programme d'applicationspour récupérer l'information. De ce point de vue, la présente invention a'pour objet de rendre maximale l'utilisation de la capacité de traitement de la carte à circuits intégrés, pour assigner des emplacements de stockage pour les données d'applica- tion tout en conservant la compatibilité avec les applications pour stocker et récupérer ces données. Ainsi, selon l'invention, on prévoit un procédé d'organisation de données d'application séquentielles dans le temps dans une mémoire à semiconducteurs -sur une carte à circuits intégrés, et une carte à circuits intégrés spécialement configurée pour un stockage-de telles données. La carte possède un microprocesseur pour commander le stockage de l'information dans sa mémoire limitée à semiconducteurs. La carte à circuits intégrés est adaptée à être mise en interface avec des programmes d'applicationseffectués dans des terminaux externes et à stocker l'information produite lorsque de tels program- mes d'applicationssont effectués ou à récupérer une information stockée au préalable pour une utilisation pour effectuer de tels programmes d'applications. Le microprocesseur divise une première section de la mémoire à semiconducteurs en un certain nombre de blocs d'application, chaque bloc ayant une adresse et des emplacements de stockage pour stocker les données d'application. Une seconde section de la mémoire à semiconducteurs est mise de côté, ayant un certain nombre d'emplacements pour associer l'information d'application aux adresses de bloc dans le fichier de données d'application. Lorsqu'un programme d'applicationsproduit une demande pour l'enre- gistrement d'une nouvelle donnée d'application, le micro- processeur sur la carte cherche la seconde section de la mémoire à semiconducteurs pour déterminer s'il y a un bloc non enregistré d'application. Si un tel bloc existe, la donnée d'application estenregistrée dans le bloc d'application disponible suivant et un enregistrement séquentiel dans le temps est fait dans la seconde section de la mémoire indiquant la séquence dans le temps de l'enregistrement et l'adresse du bloc d'application. Sfil n'y a pas de bloc non enregistré d'application disponible, une recherche est faite dans la seconde section de la mémoire pour déterminer le plus ancien article précédemment enregistré, pour déterminer l'adresse du bloc contenant cette donnée et pour utiliser cette adresse pour écrire par-dessus la nouvelle donnée à cet emplacement. La seconde section de la mémoire est alors remise au point de manière qu'après remise au point, elle indique l'enregistrement séquentiel dans le temps alors courant de la donnée en association avec les adresses des blocs d'application. Cette association de l'information permet au microprocesseur d'enregistrer des données d'application dans des blocs d'application dont les adresses sont inconnues du programme d'applica- tions,mais la seconde section de la mémoire contient une information suffisante pour que le programme d'applications puisse finalement rappeler la donnée qu'il faut pour une opération particulière. L'invention sera mieux comprise, et d'autres buts, caractéristiques, détails et avantages de celle-ci apparaîtront plus clairement au cours de la description explicative qui va suivre faite en référence aux dessins schématiques annexés donnés uniquement à titre d'exemple illustrant plusieurs modes de réalisation de l'invention et dans lesquels: - les figures 1 et 2 donnent des schémas-blocs d'une carte à circuits intégrés selon un premier mode de réalisation de la présente invention; -la figure 3 est un schéma montrant l'organisation d'un moyen de translation pour les cartes à circuits intégrés des figures 1 et 2; - la figure 4 est un organigramme d'un procédé d'enregistrement de données dans les cartes à circuits intégrés des figures 1 et 2; - la figure 5 est un organigramme plus détaillé illustrant l'opération d'enregistrement de données accomplie dans le procédé de la figure 4; --la figure 6 est un organigramme plus détaillé illustrant l'opération de lecture de données-accomplie dans le procédé de la figure 4; et - les figures 7 et 8 donnent des schémas-blocs d'un second mode de réalisation d'une carte à circuits intégrés selon l'invention. En se référant maintenant aux dessins, les figures 1 et 2 illustrent deux états d'un premier mode de réalisation d'un système comprenant une carte à circuits intégrés selon la présente invention. Une carte 10 contient un microprocesseur 2 et une mémoire à semi- conducteurs 1 qui offre une capacité considérable, bien que limitée,de stockage. La carte 10 est adaptée à être mise en'interface avec un terminal d'applicatiorstel que le dispositif externe illustré 11. Typiquement, le dispositif externe 11 comprend un lecteur/scripteur, un processeur pour passer les programmes d'applicationsqui doivent être accomplis par le terminal, un moyen pour communiquer avec la carte à circuits intégrés 10, illustré sur les dessins comme une liaison de communica- tion 12 et souvent une autre liaison de communication vers un ordinateur central ou base de données qui stocke l'information se rapportant aux transactions ou applica- tions qui doivent être accomplies. La liaison 12 peut être formée d'un groupe de contacts dans la carte à circuits intégrés, conjugués à un connecteur dans le dispositif externe ou de préférence est du type sans contact,qui comprend une paire de bobines dans la carte à circuits intégrés et une paire conjuguée de bobines dans le dispositif externe, échangeant magnétiquement l'information. Une paire de bobines est usuellement adaptée à produire des impulsions qui sont redressées sur la carte à circuits intégrés pour alimenter les circuits électroniques qu'elle possède, et une seconde paire de bobines est adaptée à l'échange de signaux. Dans la mise en pratique de l'invention, le microprocesseur 2 est en interface avec la mémoire 1 de manière à créer des champs particuliers pouvant être définis de la mémoire, comprenant une zone d'enregistre- ment 3 divisée en un certain nombre de blocs d'applica- tion, chaque bloc étant adapté à l'enregistrement d'une unité de donnée d'application. La mémoire 1 comprend également un moyen répertoire ou de translation 5 qui met en rapport les adresses des blocs d'application avec la séquence dans le temps de l'enregistrement de l'informa- tion dans les blocs d'application. C'est le moyen de translation 5 qui permet au microprocesseur 2 de prendre le contrôle de l'endroit o une unité particulière de donnée d'application doit être enregistrée dans la section de mémoire 3, sans que le dispositif externe 11 ne contrôle directement l'emplacement de stockage de cette donnée. Malgré cela, le moyen de translation 5 conserve suffisamment l'information de manière que lorsqu'une unité particulière de donnée est requise par le dispositif externe 11, le microprocesseur 2 agissant par l'intermédiaire du moyen de translation 5 puisse trouver une unité spécifiée particulière de donnée et l'extraire pour le dispositif externe 11. En se référant de nouveau aux figures 1 et 2, on peut voir que la zone d'enregistrement de la mémoire 3 est divisée en un certain nombre de blocs; les adresses des blocs sont indiquées sur le dessin à proximité de chaque bloc comme comprenant les adresses A1 à An Une unité de donnée d'application est stockée à chaque emplacement adressable, la donnée étant illustrée sur les dessins par Di. De plus, les figures 1 et 2 illustrent entre parenthèses,à la suite de l'identificateur de la donnée, la séquence dans le temps o la donnée a été enregistrée, c'est-à-dire que plus le nombre est petit, plus la donnée a été enregistrée précocement dans le temps. Il faut noter que cette information n'est pas portée directement avec la donnée dans les emplacements A1 à An, mais que la notation entre parenthèses est -prévue simplement pour la facilité de la description de l'invention. En comparant les figures 1 et 2, on peut voir que dans le cas de la figure 1, la mémoire d'enregistre- ment 3 a un certain nombre d'enregistrements de données d'application qui y sont enregistrées, en des emplace- ments séquentiels dans le temps dans les adresses commen- çant par l'adresse A1 et continuant jusqu'à Aj qui contient l'unité de donnée Dj,l'unité la plus récemment enregistrée. On peut également voir qu'il y a une section de la mémoire d'enregistrement 4 ayant des blocs addi- tionnels d'application o aucune information n'a été enregistrée. La figure 1 illustre la situation o le système d'enregistrement est en cours d'enregistrement d'une nouvelle unité de l'information. Dans ce mode, le microprocesseur 2 cherche le moyen de translation 5 pour déterminer qu'il y a des blocs disponibles de l'informa- tion dans la zone 4 o aucune donnée d'application n'a été enregistrée. Le microprocesseur agissant de concert avec le moyen de transiation 5 détermine alors l'adresse séquentielle suivante à laquelle aucune d.o. nnée n'est enregistrée et enregistre l'unité d'application de donnée suivante à cette adresse, l'adresse étant identifiée sur la figure I par Am qui est à l'adresse Aj+,. La figure 1 illustre que l'unité de donnée Dj+O est j+1 enregistrée à cette adresse et est la donnée séquentielle suivante enregistrée après le Jième élément, en d'autres termes le j plus premier élément. La figure 2 illustre l'autre condition dans laquelle la carte 10 a été si intensément utilisée qu'une information d'application a été enregistrée dans chaque bloc d'application de la mémoire 3. On peut voir qu'à chacune des adresses A1 à An est enregistrée une donnée, c'est-à-dire les enregistrements de donnée D1 à Dn. Les notations entre parenthèses indiquent que le moyen de translation 5 transmettra l'information que la donnée Dk à l'adresse Ak est la plus ancienne donnée enregistrée dans la mémoire d'application. Par suite, lorsque le microprocesseur 2 est commandé pour enregistrer une nouvelle unité.de donnée, il recherche d'abord le moyen de translation 5 pour localiser, cherchant la donnée- séquentielle dans le temps, l'identificateur de la donnée la plus ancienne, utilise le moyen de translation 5 pour déterminer l'adresse associé à cette donnée la plus ancienne, c'est-à-dire l'adresse Ak puis écrit la nouvelle unité de donnée à l'adresse Ak, en recouvrant la donnée Dk. Le moyen de translation 5 est alors remis au point pour indiquer que la donnée à l'adresse Ak est la donnée la plus récente alors enregistrée dans la mémoire et que la donnée enregistrée à l'adresse Ak+1 est alors la donnée la plus ancienne retenue dans la mémoire et pour diminuer encore l'indicateur séquentiel dans le temps pour chaque autre bit de donnée,de un,pour indiquer l'âge 'respectif de chaque entrée de données. Dans la mise en pratique de l'invention, le moyen de translation 5, comme on vient de le décrire en général ci-dessus, se rapporte à la séquence dans le temps de l'information qui a été enregistrée à l'adresse de la zone d'application à laquelle l'information a été enregistrée afin de permettre au microprocesseur,non seulement de rejeter intelligemment ou de recouvrir une donnée non réétulisable,mais également de donner au microprocesseur la capacité d'identifier la donnée d'application requise pour extractioh vers le dispositif externe 11. La figure 3 montre un exemple d'organisation d'un moyen de translation 5 placé dans la structure 1 de la mémoire à semiconducteurs. Comme le montre la figure 3, le moyen de translation associe deux éléments importants de l'information, l'un étant la séquence dans le temps de l'enregistrement de données identifié dans le champ 20 et l'autre étant l'adresse dans la mémoire d'applicationso l'information a été enregistrée, cette information étant stockée dans le champ d'adresses 21. Ainsi, on peut voir que lorsque les contenus du moyen de translation 5 sont tels que montrés à la figure 3, la donnée séquentielle la plus ancienne indiquée dans le champ 20 par le chiffre 1 le plus bas eststockée à l'emplacement 22 et identifie l'adresse Ak. En se référant de nouveau à la figure 2, on peut voir que l'information séquentielle dans le temps identifiée à l'emplacement 22 est la donnée Dk qui est stockée à l'adresse Ak identifiée dans l'emplacement de mémoire du mot 22 dans le bloc 21. Ainsi, lorsqu'un nouvel élément de donnée doit être enregistré dans la zone d'applications3, le microprocesseur 2 recherche d'abord le moyen de translation 5 pour déterminer le mot le plus ancien, puis utilise l'information d'adresse Ak associée à ce mot le plus ancien pour adresser la mémoire d'applicationset ainsi inscrire la nouvelle donnée à la place de la donnée Dk qui a été stockée à cet emplacement. La structure de mémoire donnée à titre d'exemple à la figure 3 comprend un autre champ 23 identifié comme un indicateur. Ce champ,dans le mode de réalisation illustré,est destiné à être de la nature d'un drapeau qui indique si une donnée d'application est enregistrée à l'emplacement de donnée identifié par l'adresse associée. Par exemple, chaque indicateur Ik est établi à un 1 si unedonnée est enregistrée à l'adresse du bloc associé et à un zéro si aucune donnée n'a au préalable été enregis- trée dans ce bloc. Ainsi, lorsqu'un programme d'applica-. tionsdétermine qu'une donnée additionnelle doit être stockée et passe cette donnée au microprocesseur 2, le microprocesseur recherche d'abord le champ 23 pour déterminer s'il y a un bloc libre pour l'enregistrement et si, en recherchant un zéro, il le trouve, il enregistre l'information à l'adresse associée. En même temps, il commute la valeur de l'indicateur dans le champ 23 et introduit un identificateur dans le champ 20 de séquence de temps pour indiquer que la donnée à l'adresse telle que Ai a été enregistrée et est la donnée la plus récem- i ment enregistrée. Dans l'autre mode, si le champ indica- teur 23 est recherché et qu'on détermine qu'il n'y a pas de champ libre, alors le champ 20 de séquence dans le temps est recherché pour déterminer la plus ancienne donnée comme on l'a décrit en détail ci-dessus. On peut noter que tandis qu'une série courante de nombres entiers peut être maintenue dans le champ de données 20 pour indiquer la séquence dans le temps de l'enregistrement de données, le champ peut également stocker la date réelle de l'enregistrement ou bien un stockage combiné de l'information comprenant à la fois un nombre entier et la date. Dans certains cas, l'infor- mation de date réelle peut être plus utile qu'un nombre entier pour aider le microprocesseur 2 à répondre à un appel du dispositif externe 11l pour une unité particulière de donnée. Dans l'alternative, l'entier de la séquence dans le temps dans le champ 20 peut être adéquat pour permettre au microprocesseur 2 de rechercher un ou plusieurs blocs choisis dans le champ d'applications 3 pour localiser une transaction se rapportant à une date particulière dans le champ. Plus particulièrement, l'information de transaction stockée dans chaque bloc d'application peut être configurée pour comprendre une date à laquelle la transaction est faite ainsi que d'autres particularités de la transaction réellement faite. Une autre compréhension de la relation mutuelle de la structure décrite en se référant aux figures 1-3 sera obtenue en se référant à une description des organi- grammes des figures 4-6. La figure 4 représente un organigramme du procédé général tandis que la figure 5 représente le supplément pour enregistrer une nouvelle unité de la donnée d'application dans la mémoire 3, et la figure 6 représente l'identification et la lecture d'un élément de donnée d'application enregistré au préalable. l1 Ainsi, les sous-procédés décrits aux figures 5 et 6 sont ceux accomplis sur la- carte 10 sous le contrôle du microprocesseur 2 tandis que la figure 4 comprend de plus des étapes accomplies dans le dispositif externe sous le contrôle de.son processeur et l'interaction entre le dispositif externe et la carte à-circuits intégrés. En se référant-à la figure 4, on peut voir qu'après le commencement, une première étape 41 est accomplie dans le dispositif externe 11, dans laquelle une commande est produite du dispositif externe 11 et est transmise à la carte 10. La commande peut avoir la forme d'une instruction de lecture par laquelle le dispositif externe demande l'information de la carte à circuits intégrés qui a été stockée dans sa mémoire, une opération d'écriture par laquelle le dispositif externe informe la carte à circuits intégrés qu'une donnée doit être écrite dans sa mémoire, ou une commande qui ne nécessite pas immédiatement l'étape de lecture ou d'écriture comme une commande d'accomplir un certain calcul sur une donnée déjà dans la carte. Après introduction de la commande à l'étape 41, un test est accompli à l'étape 42 pour déterminer si la commande appelle l'enregistrement d'une donnée. Dans ce cas, une étape 43 est accomplie par laquelle la carte à circuits intégrés reçoit la donnée d'application à enregistrer. Cette réception se fait par une transmission par le dispositif externe 11 à travers le microprocesseur 2 de manière que le microprocesseur accepte le contrôle pour déterminer si, dans la section de mémoire 3, la donnée doit être enregistrée. Le procédé par lequel cette détermination est faite est illustré à la figure 5. En passant momentanément à la figure 5, on peut voir que le microprocesseur 2 accomplit d'abord un test 51 pour déterminer s'il y a des blocs non enregistrés d'application dans la zone d'appli- cations 3. S'il y en a, une étape 52 est accomplie pour détecter la plus basse adresse Am dans la zone non enregistrée 4. Dans l'exemple donnée à la figure 1, les adresses A1 à Aj représentent la zone enregistrée o des données ont déjà été enregistrées et les adresses Aj+1 à An représentent la partie non enregistrée 4. Par conséquent, la nouvelle donnée Dj+1 est stockée à la plus basse adresse Aj+1 dans la zone non enrengistrée 4 et la séquence dans le temps (j+1) est donnée à l'adresse Aj+1. Ayant détecté la nouvelle adresse, une étape 53 est accomplie pour enregistrer la nouvelle unité de la donnée d'application à l'adresse A dans la zone d'appli- m cations3. Ensuite, une étape 54 est accomplie pour établir la séquence dans le temps pour l'adresse Am m En se référant de nouveau à la figure 3, on notera maintenant qu'une séquence dans le temps est assignée dans le champ 20 qui est plus haute que la' séquence la plus haute dans le temps précédemment assignée, et qu'un nombre entier est enregistré dans le champ:20 associé à cette adresse Am. Alternativement, la date réelle et/ou le temps de la transaction peut être enregistré dans le champ 20. Par suite, il y a une information stockée dans la mémoire 5 qui associe l'adresse réelle de la mémoire dans les blocs d'application à un indicateur reconnaissable par le programme d'applicatiorsde manière que lorsque le programme d'applicationsdésire récupérer la donnée, une translation puisse être faite dans la table 5 pour adresser la donnée particulière dans les blocs d'applica- tion 3. Le procédé se termine ensuite. Si le test 51 indique qu'il n'y a pas de zone non enregistrée (la condition de la figure 2), le procédé passe à une étape 55 par laquelle le champ 20 (voir figure 3) est exploré pour détecter le plus vieil indica- teur dans le champ 20 de séquence dans le temps. Le restant du mot de donnée indique alors, dans le champ 21, l'adresse Ak associée à cet enregistrement le plus ancien. Le procédé continue alors à une étape 56 qui adresse le bloc Ak et enregistre la nouvelle donnée à cet emplacement. Ayant enregistré la donnée, la table de translation 5 est alors remise au point dans une étape 57 pour remettre la séquence dans le temps de chacune des adresses A1 à An au point. En d'autres termes, lorsque le champ 20 de séquence dans le temps comprend un groupe de nombres entiers. séquentiels avec le nombre entier le plus faible indiquant la donnée la plus ancienne, chaque nombre entier du champ 20 est diminué de un à l'exception du nombre entier associé.à l'adresse Ak qui est alors établie à la valeur de n, c'est-à-dire la plus haute valeur dans la table. Ayant écrit la donnée à l'emplacement approprié et ayant remis la table de translation au point, le procédé d'écriture est alors accompli. En se référant de nouveau à la figure 4, ayant accompli l'étape 44 consistant à déterminer les adresses des blocs, à enregistrer la donnée, à remettre le dossier de translation au point, la carte à circuits intégrés accomplit une étape 45 pour délivrer une réponse au dispositif externe 11 indiquant que l'opération requise a été accomplie. En se référant de nouveau au test 42, si l'on y détermine que la commande ne demande pas l'enregistrement de données, un test 46 est alors accompli pour déterminer si la commande demande la lecture de la donnée. Si cela n'est pas le cas, le procédé continue à une étape 49 qui permet d'entreprendre toute opération qui a été demandée, ne nécessitant ni lecture ni écriture de l'information. Cependant, si le test 46 détermine que la lecture de la donnée est requise, le procédé passe à une étape 47, illustrée en plus de détail à la figure 6, qui récupère l'adresse du bloc du dossier de translation 5 et lit la donnée au bloc adressé d'application. En se référant en plus de détail à la figure 6, on peut voir qu'une étape 61 est accomplie qui transmet l'adresse ou identificateur donné par le programme d'applicationsà une adresse de bloc telle que l'adresse Ak puis adresse ce bloc d'application dans le dossier d'application. Ayant adressé de manière appropriée l'emplacement contenant la donnée-requise, une étape 62 est accomplie pour lire la donnée au bloc adressé et la transmettre par le microprocesseur 2 au dispositif externe 11. Un test 63 est alors accompli pour déterminer si toute la donnée requise a été extraite. Si cela est le cas, le procédé se termine. Si cela n'est pas le cas, une étape 64 est accomplie pour déterminer l'adresse du bloc suivant pour la lecture. Si la donnée est séquentiellement enregistrée et.si le programme d'applications a demandé des donnéesséquentielles(par exemple comme toutes les transactions accomplies en Décembre), l'étape 64 peut simplement augmenter l'adresse du bloc à Ak+1 puis accomplir de nouveau l'étape 62 pour lire la donnée à ce bloc adressé et l'envoyer au dispositif externe. Si, par ailleurs, le dispositif externe a demandé une lecture de blocs non contigus de données, l'étape 64 accomplira une autre translation entre l'information demandée par le dispositif externe il et l'adresse Ai du bloc i d'application o le microprocesseur a déjà stocké cetteinformation. En se référant de nouveau à la figure 4, on peut voir qu'après avoir localisé et lu l'information, une étape 48 est accomplie pour délivrer une réponse et une donnée au dispositif externe ll,à la suite de quoi le procédé se termine. Les figures 7 et 8 montrent un autre mode de réalisation de l'invention, bien que moins préféré, o le moyen de translation 5 est simplifié et est représenté par un pointeur 6 qui indique le plus ancien élément de donnée et d'o le microprocesseur 2 est capable de localiser non seulement le plus ancien élément de donnée mais également tout autre élément de donnée requis par le dispositif externe en se basant sur le point de départ indiqué par le pointeur. Il est préférable que le poin- teur 6 soit placé dans une zone autre que la zone d'enregistrement 3 desblocsd'application. La figure 7 montre une condition similaire à la figure 1 dans laquelle la zone d'enregistrement 3 desblocsd'application n'est pas pleine mais comprend une zone 4 ayant des blocs non enregistrés. Sur la figure 7, le pointeur identifie l'emplacement A1 qui est la plus ancienne donnée enre- gistrée dans la zone 3 desblocs d'application car le bloc n'a pas été rempli et aucune surimpression ne s'est produite. La figure 8 par ailleurs montre la situation dans laquelle tous les blocs d'application dans la zone 3 sont pleins et'le pointeur 6 identifie l'emplacement Ak qui contient la donnée la plus ancienne Dk. En d'autres termes, tant qu'il y a une zone non enregistrée 4 dans la zone d'enregistrement d'applications 3 comme le montre la figure 7, le pointeur 6 indique l'a- dresse A1 qui contient la première donnée stockée D1 Par ailleurs, lorsque toutes les adresses A1 à An dans la zone d'enregistrement d'applications 3 ont reçu des données à enregistrer, une nouvelle donnée est superposée à l'adresse qui a alors l'indicateur de séquence dans le temps le plus bas ou le plus ancien. Dans ce cas, lorsque la donnée Dk, par exemple, devient la plus ancienne donnée comme le montre la figure 8, le pointeur 6 indique l'adresse Ak de l'emplacement o est stockée la donnée Dk- Ainsi, lorsqu'une nouvelle unité de donnée d'application doit être enregistrée, le microprocesseur 2, par le pointeur 6, localise l'adresse Ak dans la zone d'enre- gistrement 3 des blocs d'application qui contient la plus ancienne donnée, et inscrit la nouvelle donnée à cette adresse. Ensuite, la valeur du pointeur est augmentée à l'adresse Ak+l pour identifier la donnée la plus ancienne dans la zone 3 des blocs d'application. Il sera apparent que lorsque le pointeur 6 atteint l'adresse An, il est augmenté de An à A1. n A. Comme autre alternative, un indice pour indiquer la séquence dans la temps de la donnée enregistrée peut être attaché à chaque donnée enregistrée de manière que le microprocesseur 2 puisse déterminer, d'une recherche directe des blocs d'application, laquelle est la donnée suivante à recouvrir. 26133 5i Dans chaque cas, les adresses A1 à An dans la zone 3 d'enregistrement d'applicationsde la mémoire 1 peuvent être définies soit physiquement ou logiquement. Comme autre caractéristique, un drapeau peut être prévu dans la mémoire 1 qui est établi à une certaine valeur lorsque le microprocesseur 2 détermine qu'il n'y a aucune zone enregistrée dans la zone 3 de blocs d'appli- cation. Ainsi, le microprocesseur, en examinant le drapeau, peut déterminer rapidement, sans rechercher à i0 chacun des emplacements, si un bloc non enregistré d'application est disponible, afin d'accélérer le procédé. Dans certains cas, il sera souhaitable d'empêcher une superposition de certaines données. Par exemple, le programme d'applicatiorspeut demander qu'une certaine donnée soit inscrite mais non effacée ultérieurement et le microprocesseur inscrit alors cette donnée à une adresse qu'il détermine mais en même temps établit un drapeau ou autre indicateur empêchant l'effacement de cette donnée. Lorsqu'une nouvelle donnée est prête pour l'écriture, et si une donnée non effaçable. est alors la plus ancienne donnée dans la mémoire 3, le procédé passe simplement cette donnée pour trouver la donnée la plus ancienne suivante pour une superposition. Ce qui précède est une autre illustration du contrôle que le programme d'applicationspeut exercer sur l'écriture ou la lecture de données, même s'il ne contrôle pas directement les emplacements d'o la donnée doit être écrite ou lue. Ainsi, dans une carte de transactions commerciales, par exemple, le programme d'applicationspeut vérifier pour s'assurer que la plus ancienne unité de donnée a disons au moins un mois avant de la recouvrir. Si la carte est utilisée dans des applications o un relevé est donné chaque mois et qu'une donnée particulière a plus d'un mois, elle n'est plus nécessaire et peut être recouverte. Cependant, si la donnée a moins d'un mois, elle n'a probablement pas encore été comptabilisée et par conséquent la transaction courante doit être refusée et le microprocesseur 2 est programmé pour le faire. Comme autre alternative, lorsque la carte est lue afin de-produire un relevé, un drapeau peut être établi sur chaque donnée qui a été couverte par le relevé-et seules les données avec-drapeau sont alors recouvertes lorsque des transactions ultérieures sont faites. Ainsi, il est possible et souvent utile que le programme d'ap- plicationsconserve un certain contrôle de la superposition des données même si le microprocesseur a uniquement pour charge d'accompiir les opérations de lecture ou d'écriture en'des emplacements de mémoire qu'il choisit. On notera maintenant que ce qui est prévu est un procédé perfectionné et une carte à circuits intégrés perfectionnée pour une utilisation dans un tel procédé d'enregistrement de données séquentielles dans le temps. Le programme d'applications est libéré de la tâche de déterminer les emplacements de stockage dans la mémoire mais en-vertu de la translation accomplie dans la carte à circuits intégrés, il a la capacité de rappeler sélectivement des données précédemment enregistrées.-Le microprocesseur enregistre chaque nouvelle donnée en un format séquentiel dans le temps et maintient une table de translation associant l'adresse du bloc o la donnée est enregistrée à la séquence dans le temps o elle a été enregistrée. Ainsi, en explorant rapidement la table, le microprocesseur peut facilement localiser la plus ancienne donnée pour rendre une adresse d'un bloc disponible pour l'enregistrement d'une nouvelle donnée. R E V E N D I C A T I ON S 1.- Procédé d'organisation de données d'applications séquentielles dans le temps dans une mémoire à semi- conducteurs sur une carte à circuits intégrés, ladite carte ayant un. microprocesseur pour contrôler le stockage de l'information dans ladite mémoire à semiconducteurs et pour une mise en interface avec des programmes d'applications opérant dans des terminaux d'applications, caractérisé en ce qu'il comprend les étapes de: diviser une première section de la mémoire à semiconducteurs en un certain nombre de blocs d'application chaque bloc d'application ayant une adresse et des emplace- ments de stockage pour stocker l'information d'application, prévoir une seconde section de la mémoire à semi- conducteurs ayant un certain nombre d'emplacements pour associer l'information d'application aux adresses des blocs d'application dans la mémoire à semiconducteurs, répondre à une demande d'enregistrement d'une nouvelle donnée d'application en déterminant s'il y a des blocs non enregistrés d'application dans la première section de la mémoire, s'il y a des blocs non enregistrés d'application, enregistrer la nouvelle donnée d'application dans l'un des blocs non enregistrés, s'il n'y a pas de blocs non enregistrés d'applica- tion, déterminer le bloc contenant la plus ancienne donnée enregistrée en recherchant la seconde section de la mémoire et enregistrer la nouvelle donnée d'application à l'adresse associée à'la donnée la plus ancienne enregistrée et maintenir un enregistrement dansla seconde section de la mémoire de la séquence dans laquelle les données ont été enregistrées dans les blocs d'application. 2.- Procédé selon la revendication l, caractérisé en ce que l'étape de maintenir un enregistrement consiste à maintenir une table se rapportant à la séquence dans le-temps o l'information a été enregistrée avec l'adresse du bloc o la donnée a été enregistrée, -et à remettre la séquence dans le temps au point à chaque fois qu'une nouvelle entrée de donnée est enregistrée. 3.- Procédé selon la revendication 2, caractérisé en ce que la table comprend un champ pour chaque entrée. indiquant siune donnée a déjà été enregistrée à l'adresse du bloc associé. 4.- Procédé selon la-revendication 1, caractérisé en ce qu'il comprend de plus l'étape -d'utiliser l'enre- gistrement maintenu à la seconde section de la mémoire pour identifier la donnée pour lecture pour un programme d'application à la demande. 5.- Procédé selon la revendication 1, caractérisé en ce que l'étape de maintenir un enregistrement consiste à maintenir un pointeur dans la seconde section de la mémoire qui identifie la plus ancienne donnée enregistrée dans un bloc de la première section de la mémoire. 6.- Carte à circuits intégrés pour mise en interface avec un système d'applications et enregistrement d'une donnée d'application reçue en séquence dans le temps, dudit système d'applications,caractérisée en ce qu'elle comprend: un microprocesseur (2) et une mémoire à semi- conducteurs (1); un moyen associé au microprocesseur pour diviser une première section de la mémoire en blocs adressables d'application pour un stockage de la donnée d'application, une seconde section de la mémoire pour associer les adresses de blocs de la première section de la mémoire à la séquence dans le temps o la donnée a été enregistrée dans les blocs, un moyen (5) associé au microprocesseur pour rechercher la seconde section de la mémoire pour détecter un bloc non enregistré pour enregistrement d'une nouvelle donnée d'application si un bloc non enregistré est disponible, ledit dernier moyen mentionné comprenant un moyen pour déterminer le moment o tous les blocs d'application ont reçu une information enregistrée, pour rechercher la seconde section de la mémoire pour localiser le bloc ayant la plus ancienne donnée enregistrée et pour enregistrer la nouvelle donnée d'application dans ledit bloc, et un moyen (5) pour remettre la seconde section de la mémoire au point pour indiquer l'élimination du plus ancien bloc de données et la présence du nouveau bloc de données pour ainsi maintenir un enregistrement de la séquence des données dans le temps. 7.- Carte selon la revendication 6, caractérisée en ce que le moyen précité pour la remise au point comprend un moyen (5) pour maintenir une table se rapportant à la séquence dans le temps o l'information a été enregistrée avec l'adresse des blocs o la donnée a été enregistrée et la remise au point de la séquence dans le temps à chaque fois qu'une nouvelle donnée est enregistrée. 8.- Carte selon la revendication 7, caractérisée en ce que la table (5) comprend un champ pour chaque entrée indiquant si une donnée a déjà été enregistrée à l'adresse du bloc associé. 9.- Carte selon la revendication 6, caractérisée en ce qu'elle comprend de plus un moyen pour utiliser la recherche dans la seconde section de la mémoire pour identifier les données pour une lecture à un programme d'applications à la demande. O10.- Carte selon la revendication 6, caractérisée en ce que le moyen précité pour remise au point comprend un moyen pour maintenir un pointeur (6) dans la seconde section de la mémoire qui identifie la plus ancienne donnée enregistrée dans un bloc de la première section de la mémoire.