FR2751444A1 - Procede et dispositif de controle de la synchronisation temporelle entre une unite de traitement, par exemple un microprocesseur, et des moyens exterieurs - Google Patents

Procede et dispositif de controle de la synchronisation temporelle entre une unite de traitement, par exemple un microprocesseur, et des moyens exterieurs Download PDF

Info

Publication number
FR2751444A1
FR2751444A1 FR9609018A FR9609018A FR2751444A1 FR 2751444 A1 FR2751444 A1 FR 2751444A1 FR 9609018 A FR9609018 A FR 9609018A FR 9609018 A FR9609018 A FR 9609018A FR 2751444 A1 FR2751444 A1 FR 2751444A1
Authority
FR
France
Prior art keywords
information
incoming
processing unit
request
outgoing
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
FR9609018A
Other languages
English (en)
Other versions
FR2751444B1 (fr
Inventor
Frederic Dufal
Pierre Rene Rogel
Michel Remy
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.)
Telediffusion de France ets Public de Diffusion
Orange SA
Original Assignee
Telediffusion de France ets Public de Diffusion
France Telecom SA
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 Telediffusion de France ets Public de Diffusion, France Telecom SA filed Critical Telediffusion de France ets Public de Diffusion
Priority to FR9609018A priority Critical patent/FR2751444B1/fr
Priority to PCT/FR1997/001320 priority patent/WO1998003922A2/fr
Priority to EP97934573A priority patent/EP0912945A3/fr
Priority to US09/230,181 priority patent/US6324591B1/en
Publication of FR2751444A1 publication Critical patent/FR2751444A1/fr
Application granted granted Critical
Publication of FR2751444B1 publication Critical patent/FR2751444B1/fr
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4204Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
    • G06F13/4221Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being an input/output bus, e.g. ISA bus, EISA bus, PCI bus, SCSI bus
    • G06F13/423Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being an input/output bus, e.g. ISA bus, EISA bus, PCI bus, SCSI bus with synchronous protocol

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Hardware Redundancy (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)

Abstract

Des échanges de données entre une unité de traitement (UT) et des moyens extérieurs peuvent avoir lieu à travers plusieurs flux de données (FXE1, FXE2, FXS1, FXS2). Des moyens (GESi) vérifient la cohérence entre ces flux, signalent les anomalies et les corrigent. Cette autosynchronisation est obtenue par l'insertion dans les flux de données de séparateurs séparant les données et par un mécanisme de gel (GL, FC) du fonctionnement interne de l'unité de traitement.

Description

Procédé et dispositif de contrôle de la synchronisation temporelle entre une unité de traitement, par exemple un microprocesseur, et des moyens extérieurs.
L'invention concerne le contrôle de la synchronisation temporelle entre une unité de traitement, telle qu'un coeur de processeur, avec des moyens de traitement extérieurs, par exemple d'autres microprocesseurs ou d'autres systèmes, lors d'un échange de données entre cette unité de traitement et ces moyens de traitement extérieurs, par l'intermédiaire notamment de mémoires du type "premier entré - premier sorti" (mémoire "FIFO" en langue anglaise).
L'invention concerne notamment l'échange de données à haut débit entre unités de traitement.
Actuellement, la synchronisation de l'échange de données entre deux systèmes matériels peut se faire à l'aide d'un processus maître-esclave dans lequel l'un des deux systèmes matériels, appelé "maître", pilote le deuxième, appelé "esclave". Néanmoins, un tel mécanisme est lent, car il nécessite des aller et retour d'informations de synchronisation ("Hand-shake" en langue anglaise). En outre, quand un tel processus utilise une technique à base de DMA, bien connue de l'homme du métier ("Direct Memory Access"), le DMA maîtrise l'échange. I1 est donc le garant que les bonnes données arriveront au bon moment. I1 repose sur une organisation adressée des données à accéder (chaque donnée étant associée à une adresse). Toutefois, un telle solution ne fonctionne bien que dans les situations simples (transfert entre une mémoire et un coeur de traitement par exemple) et il se crée une asymétrie puisqu'il est nécessaire que l'échange ait lieu entre un maître et un esclave, ce qui rend impossible la communication sans l'intermédiaire de deux DMA.
En outre, le DMA nécessite du temps pour prendre en compte éventuellement l'évolution de son environnement (données indisponibles, données provenant de plusieurs sources, etc.) ce qui ampute la bande passante.
On peut également utiliser des liaisons supervisées dans lesquelles on retrouve une symétrie entre les deux systèmes échangeant les données, mais la synchronisation entre ces deux systèmes est prise en charge par une unité de supervision. De tels systèmes sont également plus lents, s'adaptent moins facilement au contexte local des deux systèmes échangeant les données. Par ailleurs, le superviseur peut devenir complexe dans les cas où plusieurs voies de communication existent entre plusieurs systèmes. Enfin, les échanges sont moins flexibles.
Un but de l'invention est de permettre des échanges de données massifs (large bande passante) dont la signification ne dépend pas de l'instant précis où ils ont lieu et des intervalles de temps entre les données échangées, mais seulement de l'ordre des données dans la séquence. L'invention a également pour but de permettre un échange de données à grande vitesse entre une unité de traitement et des moyens de traitement extérieurs, ce qui présente un avantage considérable pour les systèmes temps réel.
Selon l'invention, les échanges de données peuvent avoir lieu à travers plusieurs flux de données, des moyens étant prévus pour vérifier la cohérence entre ces flux, signaler les anomalies et les corriger dans la majeure partie des cas voire dans la totalité des cas.
L'autosynchronisation selon l'invention permet à l'unité de traitement dialoguant avec les moyens de traitement extérieurs de travailler au rythme des données à traiter et de s'adapter à ce rythme.
Cet avantage significatif est notamment obtenu par le fait qu'on échange des séparateurs circulant dans le même sens, que les données (et permettant de "baliser" le flot de données) et traités "au vol", par opposition aux systèmes classiques pour lesquels on travaille toujours en deux temps.
Plus précisément, dans ces systèmes classiques, il y a soit un aller et retour d'informations sous la forme d'un envoi de données suivi d'un retour d'un accusé de réception, ce qui prend inévitablement plus de temps, soit, préalablement à l'échange proprement dit, initialisation d'un mode particulier indiquant la nature de l'échange qui va avoir lieu. Ceci peut consommer une part d'autant plus importante du temps que les données sont de petites tailles ou arrivent de façon irrégulière.
L'invention permet au contraire d'échanger les données "au vol" et elle permet en outre de corriger des anomalies dans la séquence des données et des séparateurs sans ralentir l'ensemble du système.
Selon l'invention, chaque flux de données possède extérieurement sa propre horloge ou peut être asynchrone. Dans tous les cas l'accès externe à un flux de données est entièrement décorrélé temporellement de l'horloge de l'unité de traitement. Ainsi, un flux de données "sortant" peut alimenter directement l'entrée de l'unité de traitement ou constituer un flux entrant pour un autre circuit.
L'invention propose donc tout d'abord un procédé de contrôle de la synchronisation temporelle entre une unité de traitement et des moyens de traitement extérieurs, ladite unité de traitement étant cadencée par un signal d'horloge interne et les moyens extérieurs délivrant, par l'intermédiaire d'au moins un moyen de communication d'entrée, au moins un flux entrant cadencé d'informations entrantes, à au moins un port d'entrée connecté à ladite unité. Selon ce procédé:
- on incorpore dans le flux entrant, des informations entrantes de données temporellement séparées par des informations entrantes dites de séparation (séparateurs), selon un schéma de séparation entrante prédéterminé,
- on commande l'unité de traitement par un premier mécanisme de commande élaborant pour ladite unité, à chaque cycle d'horloge interne, au moins une information de requête de lecture représentative d'une part de l'absence ou de la présence d'une requête effective de lecture d'une information entrante et d'autre part de la nature de l'information entrante éventuellement requise par ladite unité compte tenu du schéma de séparation entrante prédéterminé. En d'autres termes, l'information de requête de lecture précise si l'unité de traitement requiert effectivement la lecture d'une information entrante ou bien ne requiert rien du tout. L'information de requête de lecture précise également la nature de l'information éventuellement requise par l'unité, c'est-à-dire une donnée ou un bien un séparateur.
Selon le procédé de l'invention, on analyse, en présence d'une requête effective de lecture d'une information entrante, le contenu disponible en lecture du port d'entrée. En cas d'une absence d'une information entrante disponible en lecture, par exemple dans le cas où le port d'entrée (par exemple une FIFO) est vide, ou en présence d'une information entrante disponible en lecture d'une nature différence de celle définie par ladite requête effective de lecture (la FIFO délivre une donnée alors que l'unité de traitement requiert un séparateur et inversement) on élabore une information d'anomalie de synchronisation.
Cette information d'anomalie de synchronisation peut être une information spécifique ou bien encore un signal logique de demande d'inhibition du fonctionnement interne de l'unité de traitement. Dans la plupart des cas, l'anomalie de synchronisation va pouvoir être autocorrigée. Ceci étant, dans certains cas très particuliers, par exemple lorsque plusieurs types de séparateurs existent et qu'on n'a pas prévu de hiérarchisation entre ces différents types de séparateur, l'autosynchronisation temporelle n'est pas possible et est alors effectuée sous le contrôle d'un superviseur extérieur.
Lorsque les moyens externes délivrent respectivement à une pluralité de ports d'entrée par l'intermédiaire d'une pluralité de bus numériques, une pluralité de flux entrants cadencés, on incorpore dans chaque flux entrant des informations entrantes de données temporellement séparées par les informations entrantes de séparation, selon des schémas de séparation entrantes prédéterminés respectifs. Le premier mécanisme de commande élabore alors une pluralité d'informations de requête de lecture, chacune étant représentative pour un flux entrant correspondant, d'une part de l'absence ou de la présence d'une requête effective de lecture d'une information entrante dudit flux entrant correspondant et, d'autre part de la nature de l'information entrante éventuellement requise par ladite unité compte tenu du schéma de séparation entrante prédéterminé correspondant. On analyse, en présence d'au moins une requête effective de lecture d'une information entrante de l'un au moins des flux entrants, le contenu disponible de chaque port d'entrée concerné. En cas d'une absence d'information entrante disponible dans l'un au moins desdits ports d'entrée concernés, ou en présence d'une information entrante disponible d'une nature différente de celle définie par ladite requête effective correspondante de lecture, on élabore ladite information d'anomalie de synchronisation.
Les informations entrantes de séparation peuvent comporter des séparateurs de types différents. On élabore alors ladite information d'anomalie de synchronisation en présence d'une information entrante de séparation disponible dans chaque port d'entrée concerné ayant un type autre que celui défini dans l'information de requête correspondante.
Ceci étant, on peut prévoir de hiérarchiser les séparateurs selon une hiérarchie prédéterminée. Les séparateurs sont alors incorporés dans chaque flux d'informations entrantes selon ladite hiérarchie. On analyse, en ce qui concerne l'élaboration de ladite information d'anomalie de synchronisation, un séparateur d'un premier type par rapport à un séparateur d'un deuxième type de rang plus élevé que le premier type dans la hiérarchie, d'une façon analogue à l'analyse d'une information de donnée par rapport à une information de séparation de type quelconque, et inversement.
D'une façon générale, en présence d'une information entrante disponible de donnée dans l'un des ports d'entrée, associée à une requête d'une information entrante de séparation, on génère avantageusement un signal de demande d'inhibition du fonctionnement interne de l'unité de traitement.
Par contre, en présence d'une information entrante disponible de séparation dans l'un des ports d'entrée, associé à une requête d'une information entrante de donnée, on inhibe avantageusement la lecture dans le port d'entrée tout en s'abstenant de générer un signal de demande d'inhibition du fonctionnement interne de l'unité de traitement.
On génère également avantageusement ledit signal de demande d'inhibition du fonctionnement interne de l'unité de traitement en l'absence d'une information entrante disponible en lecture dans l'un des ports d'entrée ayant fait l'objet d'une requête de lecture.
Pour corriger une anomalie de synchronisation, on inhibe avantageusement le fonctionnement interne de l'unité de traitement en présence d'au moins un signal de commande d'inhibition du fonctionnement interne de cette unité de traitement, et on inhibe la lecture dans tous les ports d'entrée à l'exception de ceux présentant une information de donnée disponible en lecture et associée à une requête de lecture d'une information de séparation.
L'invention prévoit également le contrôle de la synchronisation temporelle entre une unité de traitement et des moyens de traitement extérieurs destinés à traiter des données ou des séparateurs délivrés par l'unité de traitement. Plus précisément, l'unité de traitement étant cadencée par un signal d'horloge interne, elle est apte à écrire, au rythme du signal d'horloge interne, au moins un flux sortant d'informations sortantes destinées à être traitées, selon une cadence de sortie, par lesdits moyens extérieurs connectés par au moins un moyen de communication de sortie à au moins un port de sortie, tel qu'une mémoire FIFO, relié à l'unité de traitement.
Selon l'invention, on commande ladite unité de traitement par un deuxième mécanisme de commande élaborant pour ladite unité, à chaque cycle de l'horloge interne, au moins une information de requête d'écriture représentative de l'absence ou de la présence d'une requête effective d'écriture d'une information sortante. En d'autres termes, l'information de requête d'écriture permet de déterminer si l'unité de traitement demande ou non à écrire effectivement quelque chose dans le port de sortie. Cette information sortante destinée à être écrite dans le port de sortie peut être, selon un schéma de séparation sortante prédéterminé, une information de donnée sortante (donnée proprement dite) ou une information de séparation sortante (séparateur). On analyse, en présence d'une requête effective d'écriture d'une information sortante, le contenu disponible dans l'écriture du port de sortie, et en cas d'une indisponibilité d'écriture dans le port de sortie, on élabore une information d'anomalie de synchronisation.
Lorsque plusieurs ports de sortie sont connectés à l'unité de traitement, le deuxième mécanisme de commande élabore une pluralité d'informations de requête d'écriture, chacune étant représentative pour chaque flux sortant correspondant, de l'absence ou de la présence d'une requête effective d'écriture d'une information sortante dans le flux sortant correspondant, cette information sortante pouvant être, selon un schéma de séparation sortante prédéterminé respectif, une information de donnée sortante ou une information de séparation sortante. On analyse, en présence d'au moins une requête effective d'écriture d'une information sortante, le contenu disponible dans l'écriture de chaque port de sortie concerné, et en cas d'une indisponibilité d'écriture dans l'un au moins des ports de sortie concernés, on élabore ladite information d'anomalie de synchronisation.
Les informations sortantes de séparation peuvent comporter des séparateurs de types différents. Lorsque les séparateurs de type différent sont hiérarchisés selon une hiérarchie prédéterminée, les séparateurs sont alors incorporés dans chaque flux d'informations sortantes selon ladite hiérarchie.
En présence d'une indisponibilité de l'un des ports de sortie ayant fait l'objet d'une requête en écriture, on génère avantageusement un signal de demande d'inhibition du fonctionnement interne de l'unité de traitement. Ce signal de demande d'inhibition peut constituer alors l'information d'anomalie.
Pour corriger cette anomalie de synchronisation, on peut inhiber le fonctionnement interne de l'unité de traitement en présence d'au moins un signal de demande d'inhibition du fonctionnement interne de l'unité de traitement, et on inhibe l'écriture dans tous les ports de sortie.
Bien entendu, lorsqu'il est prévu à la fois des ports d'entrée et des ports de sortie, le procédé selon l'invention prévoit la combinaison des caractéristiques définies ci-dessus en relation avec les ports d'entrée, et celles définies ci-dessus en relation avec les ports de sortie.
Matériellement, l'invention propose un dispositif de contrôle de la synchronisation temporelle entre une unité de traitement et des moyens de traitement extérieurs comprenant:
- au moins un port d'entrée connecté entre l'unité de traitement et les moyens extérieurs et destiné à recevoir de la part des moyens extérieurs un flux entrant cadencé d'informations entrantes, comportant des informations entrantes de données temporellement séparées par des informations entrantes dites de séparation, selon un schéma de séparation entrante prédéterminé,
- des premiers moyens de commande élaborant à chaque cycle de ladite horloge interne, une information de requête de lecture représentative pour le port d'entrée, d'une part de l'absence ou de la présence d'une requête effective de lecture d'une information entrante dans le port d'entrée et, d'autre part de la nature de l'information entrante éventuellement requise par ladite unité compte tenu du schéma de séparation entrante,
- des premiers moyens d'analyse pour délivrer une première information d'analyse représentative du contenu disponible en lecture du port d'entrée (par exemple FIFO vide ou donnée ou séparateur présent en sortie de FIFO),
- des premiers moyens de contrôle de synchronisme, reliés aux premiers moyens d'analyse et au port d'entrée, et possédant au moins un état principal dans lequel ils sont aptes à élaborer une information d'anomalie de synchronisation, en présence d'au moins une requête effective de lecture d'une information entrante dans le port d'entrée associée à une absence d'information entrante disponible dans ce port d'entrée, ou en présence d'une information entrante disponible d'une nature différente de celle définie par ladite requête effective correspondante de lecture.
Lorsqu'il est prévu plusieurs ports d'entrée connectés entre l'unité de traitement et les moyens extérieurs et destinés à recevoir respectivement de la part des moyens extérieurs des flux entrants cadencés d'informations entrantes, les premiers moyens de commande sont aptes à élaborer à chaque cycle de ladite horloge interne, une pluralité d'informations de requête de lecture, chacune étant représentative pour un port d'entrée correspondant, d'une part de l'absence ou de la présence d'une requête effective de lecture d'une information entrante dans le port d'entrée correspondant et, d'autre part de la nature de l'information entrante éventuellement requise par ladite unité compte tenu du schéma de séparation entrante prédéterminé correspondant. Les premiers moyens d'analyse sont aptes à délivrer une première information d'analyse représentative du contenu disponible en lecture de chaque port d'entrée. Les premiers moyens de contrôle de synchronisme sont aptes dans leur état principale, à élaborer une information d'anomalie de synchronisation, en présence d'au moins une requête effective de lecture d'une information entrante dans l'un au moins des ports d'entrée, associée à une absence d'information entrante disponible dans ce port d'entrée, ou en présence d'une information entrante disponible d'une nature différente de celle définie dans ladite requête effective correspondante de lecture.
Selon un mode de réalisation de l'invention, les premiers moyens de contrôle de synchronisme comprennent, pour chaque port d'entrée, des premiers moyens élémentaires de détection de mode aptes à recevoir la première information d'analyse et une information de requête de lecture, et à délivrer une information de mode en fonction des contenus de cette première information d'analyse et de l'information de requête de lecture. I1 est également prévu des premiers moyens d'élaboration élémentaires possédant au moins ledit état principal dans lequel ils sont aptes à élaborer ladite information d'anomalie de synchronisation au moins à partir du contenu de l'information de mode.
Les moyens d'élaboration élémentaires sont avantageusement aptes, dans ledit état principal, à générer un premier signal logique représentatif d'une demande ou non d'inhibition du fonctionnement interne de l'unité de traitement en fonction du contenu de l'information de mode, ainsi qu'un deuxième signal logique représentatif d'une demande ou non d'inhibition de la lecture dans le port d'entrée concerné en fonction également du contenu de l'information de mode.
Les moyens de contrôle de synchronisme comportent alors des moyens de génération, reliés entre la sortie des moyens d'élaboration élémentaires et une borne d'entrée d'inhibition de l'unité de traitement, apte à générer un signal logique d'inhibition du fonctionnement interne de l'unité de traitement à partir de l'ensemble des premiers signaux logiques.
Lorsque la fréquence de l'horloge interne dépasse une certaine valeur, le temps de cheminement des différents signaux à l'intérieur des différents composants du dispositif peut être supérieur à la durée d'un cycle d'horloge interne. Dans ce cas, il est avantageusement prévu d'utiliser, pour le dispositif selon l'invention, le mode de réalisation suivant, dans lequel pour chaque port d'entrée, le dispositif comprend, p étant un entier supérieur ou égal à 1
- p niveaux de registres de pipelines connectés entre la sortie des moyens d'élaboration élémentaires et la borne d'entrée d'inhibition de l'unité de traitement,
- p registres cascadés figeables de mémorisation d'informations de requêtes, connectés entre la sortie des premiers moyens de commande et l'entrée des moyens élémentaires de détection de mode, par l'intermédiaire d'un premier multiplexeur à p+l entrées,
- p registres cascadés figeables de mémorisation d'informations entrantes, connectés entre la sortie du port d'entrée et l'unité de traitement, par l'intermédiaire d'un deuxième multiplexeur à p+l entrées.
Les moyens d'élaboration élémentaires possèdent alors en outre p familles d'états auxiliaires, l'état principal et les familles d'état auxiliaires étant indexés et ordonnés. Les moyens d'élaboration élémentaires comportent un registre d'état apte à délivrer un signal d'index identifiant l'état courant des moyens d'élaboration élémentaires. Les premier et deuxième multiplexeurs sont commandés par le signal d'index.
Les moyens d'élaboration élémentaires génèrent dans l'état principal et dans chaque famille d'état auxiliaire, à partir de l'information de mode, du signal logique d'inhibition du fonctionnement interne de l'unité de traitement, et du signal d'index, le premier signal logique représentatif d'une demande ou non d'inhibition du fonctionnement interne de l'unité de traitement, le deuxième signal logique représentatif d'une demande ou non d'inhibition de la lecture dans le port d'entrée concerné, un troisième signal logique permettant de figer ou non les p registres de mémorisation d'informations de requêtes, un quatrième signal logique permettant de figer ou non les p registres de mémorisation d'informations entrantes, et une nouvelle valeur du registre d'états.
Selon un mode de réalisation, dans ledit état principal des moyens d'élaboration élémentaires, et en l'absence du signal logique d'inhibition du fonctionnement interne de l'unité de traitement, les troisième et quatrième signaux logiques sont inactifs. En d'autres termes, si l'unité de traitement n'est pas inhibée (ou "gelée") les p registres de mémorisation d'informations de requêtes et les p registres de mémorisation d'informations entrantes ne sont pas gelés.
Par contre, dans ledit état principal des moyens d'élaboration élémentaires, et en présence du signal logique d'inhibition du fonctionnement interne de l'unité de traitement, les troisième et quatrième signaux logiques sont actifs tandis que le premier signal logique et le deuxième signal logique sont actifs ou inactifs en fonction de l'information de mode. En d'autres termes, dans cet état principal, si l'unité de traitement est gelée, il en est de même des p registres de mémorisation de requête et des p registres de mémorisation d'informations entrantes (données ou séparateurs). Par contre, on demande ou non le gel de l'unité de traitement et on inhibe ou non la lecture dans la FIFO en fonction du mode déterminé par les moyens de détection de mode.
En fait, tant que le premier signal logique est inactif, c'est-à- dire tant qu'il n'y a pas de demande d'inhibition du fonctionnement interne de l'unité de traitement, ou tant que le signal logique d'inhibition de l'unité de traitement est actif, les moyens de contrôle de synchronisme demeurent dans leur état principal mettant en oeuvre le procédé qui a été décrit ci-avant.
Par contre, lorsque les moyens d'élaboration élémentaires sont dans leur état principal, ceux-ci confèrent au registre d'état la valeur du premier index de la famille d'état auxiliaire en présence d'un premier signal logique actif et en présence d'un signal logique d'inhibition inactif. En d'autres termes, les moyens d'élaboration élémentaires passent de leur état principal à l'un des états de la première famille d'état auxiliaire en l'absence d'un gel de l'unité de traitement mais en présence d'un signal effectif de demande de gel du fonctionnement interne de l'unité de traitement. Les moyens d'élaboration élémentaires sont alors aptes à conférer successivement au registre d'état les valeurs des indexes suivants jusqu'à atteindre en p cycles d'horloge l'index p-k, où k est le nombre de fois où le signal logique d'inhibition du fonctionnement interne de l'unité de traitement aura été actif au cours des p cycles. Puis, les moyens d'élaboration élémentaires sont aptes à conférer successivement au registre d'état les valeurs des indexes précédents jusqu'à atteindre à nouveau l'index représentatif de l'état principal.
En d'autres termes, partant de l'état principal, les moyens d'élaboration élémentaires ayant quitté cet état principal en présence d'une anomalie (demande d'inhibition du fonctionnement interne de l'unité de traitement), "descendent dans la famille d'état auxiliaire" dans l'ordre de rangement de ces familles, étant entendu que les moyens d'élaboration élémentaires peuvent rester plusieurs cycles d'horloge dans une même famille, jusqu'à atteindre en p cycles une famille d'index p-k avant de "remonter" progressivement jusqu'à l'état principal.
En ce qui concerne le contrôle de la synchronisation temporelle entre l'unité de traitement et des moyens de traitement extérieurs destinés à recevoir des informations délivrées par l'unité de traitement, l'invention propose un dispositif comprenant
- au moins un port de sortie, tel qu'une mémoire FIFO, connecté entre l'unité de traitement et les moyens extérieurs et destiné à recevoir de la part de l'unité de traitement et au rythme du signal d'horloge interne de l'unité de traitement, un flux sortant d'informations sortantes, comportant des informations sortantes de données temporellement séparées par des informations sortantes de séparation, selon un schéma de séparation sortante prédéterminé,
- des deuxièmes moyens de commande élaborant à chaque cycle de ladite horloge interne, une information de requête d'écriture représentative pour le port de sortie, de l'absence ou de la présence d'une requête effective d'écriture d'une information sortante dans le port de sortie, cette information sortante pouvant être, selon le schéma de séparation sortante prédéterminé, une information de donnée sortante ou une information de séparation sortante,
- des deuxièmes moyens d'analyse pour délivrer une deuxième information d'analyse représentative du contenu disponible en écriture du port de sortie,
- des deuxièmes moyens de contrôle de synchronisme sont aptes à élaborer une information d'anomalie de synchronisation en présence d'au moins une requête effective d'écriture d'une information sortante dans le port de sortie, associée à une indisponibilité d'écriture dans ce port de sortie.
Lorsque le dispositif comprend plusieurs ports de sortie destinés à recevoir respectivement de la part de l'unité de traitement et au rythme du signal d'horloge interne de cette unité de traitement des flux sortants d'informations sortantes comportant des informations sortantes de données temporellement séparées par les informations sortantes dites de séparation, selon des schémas de séparation sortante prédéterminés respectifs, les deuxièmes moyens de commande élaborent à chaque cycle de ladite horloge interne, une pluralité d'informations de requête d'écriture, chacune représentative pour chaque port de sortie correspondant, de l'absence ou de la présence d'une requête effective d'écriture d'une informations sortante dans le port de sortie correspondant, cette information sortante pouvant être selon le schéma de séparation sortante prédéterminé respectif, une information de donnée sortante ou une information de séparation sortante. Les deuxièmes moyens d'analyse délivrent une deuxième information d'analyse représentative du contenu disponible en écriture de chaque port de sortie et les deuxièmes moyens de contrôle de synchronisme sont aptes à élaborer une information d'anomalie de synchronisation en présence d'au moins une requête effective d'écriture d'une information sortante dans un port de sortie, associée à une indisponibilité d'écriture dans ce port de sortie concerné.
Selon un mode de réalisation du dispositif, les deuxièmes moyens de contrôle sont aptes, pour chaque port de sortie, en réponse à une information de requête d'écriture concernant le port de sortie correspondant, et en présence d'une information de contenu représentative du contenu disponible en écriture du port de sortie, à générer un cinquième signal logique représentatif d'une demande ou non d'inhibition du fonctionnement interne de l'unité de traitement.
Plus précisément, ce cinquième signal logique sera représentatif d'une demande effective d'inhibition du fonctionnement interne de l'unité de traitement en cas d'indisponibilité en écriture du port de sortie c'est-à-dire dans le cas où le port de sortie est "plein".
D'une façon générale, les deuxièmes moyens d'analyse délivrent une information représentative de disponibilité ou non en écriture d'un port de sortie en comparant le niveau de remplissage à un seuil choisi. Le mode de réalisation peut différer selon que le port de sortie, par exemple une mémoire FIFO, est une mémoire FIFO à registres ou bien une mémoire FIFO du type à accès aléatoire double port asynchrone combinaison des caractéristiques définies ci-avant pour le dispositif de contrôle d'entrée et des caractéristiques définies ci-avant pour le dispositif de contrôle de sortie.
D'autres avantages et caractéristiques de l'invention apparaîtront à l'examen d'un mode de réalisation et de mise en oeuvre, nullement limitatif, illustré sur les dessins annexés sur lesquels:
- la figure 1 est un synoptique schématique d'un mode de réalisation du dispositif selon l'invention capable de fonctionner à fréquence élevée,
- les figures 2, 3 et 4 sont des représentations schématiques plus détaillées de parties du dispositif de la figure 1,
- la figure 5 illustre un automate d'états correspondant à un mode de mise en oeuvre du procédé selon l'invention et,
- la figure 6 illustre de façon schématique le mécanisme d'inhibition ou de gel d'une bascule.
D'une façon générale, l'invention prévoit des échanges de signaux logiques entre les différents composants du dispositif, ces échanges devant s'effectuer en une durée inférieure à celle d'un cycle de l'horloge interne de l'unité de traitement UT (figure 1). Or, compte tenu de la taille du circuit et de la technologie utilisée pour la réalisation du circuit intégré, cette contrainte de durée peut être incompatible avec une fréquence élevée de l'horloge interne de l'unité de traitement. C'est le cas notamment lorsque le dispositif qui va maintenant être décrit fonctionne avec une fréquence d'horloge supérieure à 30 MHz environ avec une technologie CMOS 0,5 Ft.
Pour une telle configuration, il est alors avantageusement prévu d'utiliser le dispositif décrit sur les figures 1 à 6 qui prévoit notamment l'utilisation de registres de pipeline ainsi que d'autres registres ou bascules capable d'être figés ou gelés sur commande.
Cependant, pour une fréquence d'horloge interne inférieure à 30 MHz, dans le cas d'une technologie 0,5 ,u, la structure du dispositif qui va maintenant être décrite pourra être simplifiée comme il sera expliqué plus en détail ci-après.
Bien entendu, dans chaque situation, et compte tenu de la technologie employée, l'homme du métier sera à même de déterminer si la taille du circuit et la fréquence de l'horloge interne nécessite ou non l'utilisation d'un mode de réalisation capable de fonctionner à "fréquence rapide".
Telle qu'illustrée sur la figure 1, une unité de traitement UT par exemple un coeur de microprocesseur est reliée à des moyens de traitement extérieurs (non représentés ici à des fins de simplification) par l'intermédiaire de ports d'entrée FE1, FE2 et de ports de sortie
FS3, FS4. Ces ports d'entrée et/ou de sortie peuvent être par exemple des mémoires FIFO à registres, ou bien à mémoire à accès aléatoire double port asynchrone telles que celles par exemple décrites dans la demande de brevet français n" 94 12170.
A des fins de simplification on a représenté sur la figure 1 deux ports d'entrée et deux ports de sortie permettant à l'unité de traitement de recevoir des flux d'information de deux moyens de traitement extérieurs et de délivrer des flux d'informations à deux moyens de traitement extérieurs. Ceci étant, le nombre de ces ports d'entrée et de sortie peut être réduit à 1 ou bien être supérieur à 2.
Des moyens extérieurs délivrent donc un flux entrant FXE1 d'informations entrantes à la mémoire FE1. D'autres moyens extérieurs délivrent un flux entrant FXE2 d'informations entrantes à la mémoire
FE2. Des moyens extérieurs peuvent par ailleurs extraire de la mémoire de sortie FS3 un flux sortant d'informations sortantes FXS1 délivrées par l'unité de traitement UT tandis que d'autres moyens extérieurs peuvent extraire de la mémoire de sortie FS4 un autre flux sortant FXS2 d'informations sortantes. Tous ces flux d'informations sont cadencés à des fréquences d'horloge qui peuvent être égales ou différentes entre elles, et différentes de la fréquence de l'horloge interne de l'unité de traitement.
Chaque flux entrant comporte des informations entrantes de données, ou données proprement dites, qui sont séparées par des informations entrantes dites de séparation ou "séparateurs". Le schéma général de séparation des données par les séparateurs est prédéterminé et connu de l'unité de traitement pour chaque port d'entrée. Par ailleurs, chaque flux sortant comporte également des données temporellement séparées par des séparateurs selon un schéma de séparation sortante prédéterminé.
Un séparateur est une donnée particulière qui se distingue des donnés proprement dites grâce à un bit prédéterminé du mot numérique constituant l'information. Par exemple, si ce bit vaut "1" l'information est considérée comme un séparateur tandis que si le "0" cette information est considérée comme étant une donnée.
Plusieurs types de séparateurs différents peuvent être envisagés. Chaque type de séparateur est désigné soit par son codage (les bits du mot numérique) soit par son numéro. Dans ce dernier cas, la correspondance entre le codage et le numéro peut être réalisée de façon diverse. Ainsi, le cas le plus simple est que le codage soit la représentation binaire du numéro. li est aussi possible d'établir une table de correspondance contenue dans une mémoire de l'unité de traitement permettant d'établir une correspondance entre un codage particulier et le numéro d'un séparateur.
Lorsque plusieurs types de séparateur peuvent être incorporés dans les flux entrants ou sortants, il est préférable que ces différents types soient hiérarchisés.
Des moyens de contrôle de synchronisme référencés GES1,
GES2, GSS3 et GSS4, sont connectés entre les ports d'entrée et de sortie respectifs, et l'unité de traitement.
D'une façon générale, selon l'invention, la vérification de synchronisation s'effectue dans ces moyens de contrôle de synchronisme. Elle consiste notamment à vérifier que le flux entrant est bien conforme à ce que l'unité de traitement attend, compte tenu du schéma de séparation associé à ce flux incident.
Ainsi, si un port d'entrée est vide, on présume que la synchronisation est respectée jusqu'à ce que la mémoire reçoive une donnée ou un séparateur.
Si l'unité de traitement n'émet aucune requête de lecture dans ce port d'entrée, la synchronisation est respectée.
De même, si l'unité de traitement émet une requête de lecture d'une donnée et que le premier mot numérique devant sortir du port d'entrée considéré est une donnée, la synchronisation est respectée.
Si l'unité de traitement émet une requête de lecture d'un séparateur et que le premier mot numérique devant sortir du port d'entrée considéré est ce séparateur (c'est-à-dire du type désigné dans la requête) la synchronisation est respectée.
Par contre, si l'unité de traitement émet une requête de lecture d'un séparateur et que le premier mot devant sortir de la mémoire d'entrée est un autre séparateur, c'est-à-dire un séparateur d'un autre type, ou bien une donnée, la synchronisation n'est plus respectée.
Si l'unité de traitement émet une requête de lecture d'une donnée mais que le premier mot devant sortir de la mémoire d'entrée considérée est un séparateur, la synchronisation n'est également plus respectée.
Quand la synchronisation n'est plus respectée, il est possible à tout le moins d'émettre une information d'anomalie de synchronisation. Dans certains cas, notamment lorsqu'on ne prévoit aucune hiérarchie entre les séparateurs de types différents, cette anomalie de synchronisation ne pourra pas être corrigée par le dispositif lui-même mais le sera éventuellement par un superviseur extérieur. Dans les autres cas, le dispositif selon l'invention permet de resynchroniser automatiquement l'unité de traitement par rapport à un flux entrant. C'est notamment le cas lorsqu'on prévoit une hiérarchie des séparateurs. En effet, dans ce cas, les séparateurs étant incorporés dans chaque flux entrant selon ladite hiérarchie, on analysera un séparateur d'un premier type par rapport à un séparateur d'un deuxième type de rang plus élevé que le premier type dans ladite hiérarchie, d'une façon analogue à l'analyse d'une donnée par rapport à un séparateur de type quelconque, et inversement.
Le dispositif selon l'invention permet également de détecter si les flux entrants sont désynchronisés les uns par rapport aux autres.
En effet, si tel est le cas, ils le seront aussi en général vis-à-vis de l'unité de traitement.
En ce qui concerne les flux sortants, la détection d'une anomalie de synchronisation est beaucoup plus simple. Elle consiste simplement à vérifier si le port de sortie dans lequel l'unité de traitement souhaite écrire une donnée ou un séparateur, est disponible en écriture ou bien indisponible en écriture, c'est-à-dire "plein".
On va maintenant décrire plus en détail la structure des moyens du dispositif connecté entre le port d'entrée FE2 et l'unité de traitement sachant que des moyens identiques sont connectés entre chaque port d'entrée et l'unité de traitement.
Fonctionnellement, le bloc GES2 comporte des premiers moyens élémentaires de détection de mode MDT (figure 2) et des premiers moyens d'élaboration élémentaires MLB reliés aux moyens de détection MDT. Ces moyens peuvent être réalisés sous forme logicielle ou encore sous forme d'un circuit intégré spécifique (ASIC). I1 est également prévu un registre d'état RGT relié aux moyens MLB et dont on reviendra plus en détail ci-après sur la fonctionnalité.
L'unité de traitement UT comporte des moyens de commande aptes à délivrer à chaque cycle de l'horloge interne une information de requête RC représentative d'une demande ou non de lecture dans le port d'entrée FE2 et de la nature de l'information requise compte tenu du schéma de séparation entrante correspondant. En d'autres termes, l'information de requête RC permet de déterminer si l'unité de traitement requiert effectivement la lecture d'une information dans le port d'entrée ou ne requiert rien du tout. En outre, dans le cas où l'unité de traitement requiert effectivement une information, l'information de requête RC permet de déterminer si cette information requise est une donnée ou un séparateur et éventuellement de quel type de séparateur il s'agit. Ces moyens de commande sont en fait réalisés de façon logicielle dans l'unité de traitement et sont incorporés par exemple dans la mémoire de programme associée au microprocesseur.
Le dispositif comporte en outre p niveaux de registres de pipeline (p=3 dans le cas présent) PP1, PP2, PP3a; PP3b, connectés entre la sortie des moyens d'élaboration élémentaires et une borne d'entrée de l'unité de traitement dénommée ici "borne d'entrée d'inhibition" car elle va en fait recevoir un signal logique GL représentatif d'une inhibition ou non du fonctionnement interne de l'unité de traitement.
Plus précisément, lorsque ce signal logique GL est actif, c'est-à-dire lorsqu'il prend par exemple la valeur 1, le fonctionnement interne de l'unité de traitement va être inhibé ou figé. Par contre, cela ne sera pas le cas lorsque ce signal logique GL sera inactif, c'est-àdire qutil prendra par exemple la valeur 0. On pourrait par exemple prévoir que ce signal GL interrompe totalement le fonctionnement de l'unité de traitement. Ceci étant, on peut obtenir l'inhibition du fonctionnement interne de l'unité de traitement ainsi que le figeage ou le gelage de tout registre à partir de la réalisation prévue sur la figure 6. Sur cette figure 6, on a représenté d'une façon générale une bascule
BSC dont la sortie est rebouclée sur l'entrée donnée par l'intermédiaire d'un duplexeur DDX commandé par un signal logique de gel référencé
GEL. Lorsque ce signal logique est inactif, c'est-à-dire qu'il vaut 0, la bascule BSC accepte une nouvelle donnée. Par contre lorsque le signal de gel est effectivement actif la sortie de la bascule BSC est rebouclée sur son entrée. En conséquence, la donnée présente dans cette bascule est figée et il n'y a plus aucune évolution des informations délivrées par ces bascules.
Si l'on se réfère plus particulièrement à la figure 3, on voit que les premiers moyens de commande de l'unité de traitement sont reliés aux moyens d'élaboration élémentaires et plus particulièrement aux moyens de détection de mode MDT par l'intermédiaire d'un premier multiplexeur MUX1 à p+l entrée et une sortie. Ce multiplexeur MUX1 est commandé par un signal d'index Ix qui est en fait représentatif du contenu du registre d'état RGT.
il est prévu p registres cascadés figeables de mémorisation d'information de requête, ces registres étant référencés RG1, RG2,
RG3 (p = 3) dans l'exemple décrit. Les duplexeurs associés à ces trois registres figeables, et permettant effectivement de les figer ou non, sont commandés par un signal logique FRP. Si ce signal logique FRP est inactif, c'est-à-dire qu'il vaut zéro par exemple, les registres ne sont pas gelés tandis que si ce signal logique est actif, c'est-à-dire qu'il vaut 1, les registres sont figés.
D'une façon analogue comme on peut le voir plus particulièrement sur la figure 4, les informations DSF disponibles en sortie du port d'entrée FE2 sont délivrées à l'unité de traitement UT par l'intermédiaire d'un deuxième multiplexeur MUX2 ayant une structure analogue à celle du multiplexeur MUX1 et également commandé par le signal d'index Ix. A cet égard, alors que les données sont toujours transmises à l'unité de traitement, on peut prévoir de transmettre ou non les séparateurs à l'unité de traitement. I1 est également prévu p registres cascadés figeables de mémorisation d'informations entrantes, respectivement référencés RG4, RG5 et RG6.
Ces registres peuvent être figés à partir du signal logique FD selon la valeur 0 ou 1 de ce signal logique, et ce d'une façon analogue à celle qui a été décrite pour le signal logique FRP.
I1 est également prévu des premiers moyens d'analyse pour délivrer une information d'analyse représentative du contenu disponible en lecture du port d'entrée. Cette première information d'analyse comporte en fait le signal DSF ainsi qu'un signal logique FV indiquant si le port d'entrée est vide ou non. Ces premier moyens d'analyse peuvent être intégrés dans le port d'entrée ou bien être prévus dans le bloc GES2. L'homme du métier sait réaliser de façon classique de tels moyens d'analyse. Ainsi, dans le cas d'une FIFO à registre, cette information FV est obtenue à partir de la position d'un curseur dans la mémoire. Lorsque une FIFO est réalisée à partir d'une mémoire RAM statique à double port et de deux incrémenteurs fournissant une adresse d'écriture et une adresse de lecture, le niveau de remplissage, c'est-à-dire le signal logique FV sera évalué par différence de ces deux incrémenteurs.
Les moyens de détection de mode MDT reçoivent donc les signaux FV, DSF et RC et élaborent une information de mode IFM en fonction de la valeur de ces signaux.
Plus particulièrement, dans l'exemple décrit ici qui prévoit une hiérarchie des séparateurs, l'information IFM permet de distinguer cinq modes respectivement référencés STAN, NOTH, GO, REMO,
INSE.
Plus précisément, lorsque l'information de requête RC est représentative d'une absence de requête de lecture, on est dans le mode
NOTH.
Lorsque la FIFO est vide, on est dans le mode STAN.
Lorsque l'information RC est représentative d'une requête d'une donnée et que l'information DSF est représentative d'une donnée effectivement disponible, on est dans le mode GO.
C'est également le cas lorsqu'un séparateur d'un certain type est requis et que ce séparateur effectivement disponible en lecture en sortie de la FIFO.
Lorsqu'un séparateur est requis et qu'une donnée est présente en sortie de la FIFO, on est alors dans le mode REMO. ll en est de même lorsqu'un séparateur de rang supérieur est requis par l'unité de traitement alors qu'un séparateur de rang inférieur est disponible en sortie de la FIFO.
Enfin, lorsqu'une donnée est requise mais qu'un séparateur est disponible en sortie de la FIFO, on est dans le mode INSE. I1 en est de même lorsqu'un séparateur de rang inférieur est requis par l'unité de traitement alors qu'un séparateur de rang supérieur est disponible en sortie de la FIFO.
Comme on peut le voir plus particulièrement sur la figure 5, les moyens d'élaboration élémentaires MLB possèdent un état principal LO et trois familles d'état auxiliaires (p=3). La première famille d'état auxiliaire comportant ces trois états référencés L1U, L1F et L1D tandis que la deuxième famille d'état auxiliaire comporte deux états référencés L2U et L2D et que la troisième famille d'état auxiliaire ne comporte ici qu'un seul état référencé L3.
Les familles d'état auxiliaires sont indexées et ordonnées. Le signal d'index du registre d'état identifie l'état courant des moyens d'élaboration élémentaires. En d'autres termes, lorsque le signal d'index Ix vaut 0, les moyens élémentaires sont dans l'état principal LO tandis que lorsqu'il vaut 1 les moyens élémentaires sont dans la première famille d'état L1 et ainsi de suite.
Le signal logique GL d'inhibition du fonctionnement de l'unité de traitement UT est obtenu, après retard dans le pipeline PP2, en sortie d'une porte logique ou référencé OG, et recevant en entrée des signaux logiques RFC de demande d'inhibition du fonctionnement interne de l'unité de traitement, ces signaux RFC provenant de tous les blocs GES1, GES2, GES3 et GES4. En d'autres termes, le signal GL sera actif dès que l'un des signaux RFC sera actif tandis que il sera inactif lorsque tous les signaux RFC seront inactifs.
Les moyens d'élaboration élémentaires MLB génèrent, dans l'état principal LO et dans chaque famille d'état auxiliaire, à partir de l'information de mode IFM, du signal logique FC (signal GL retardé) d'inhibition du fonctionnement interne de l'unité de traitement, et du signal d'index Ix, le signal logique RFC représentatif d'une demande ou non d'inhibition du fonctionnement interne de l'unité de traitement, un deuxième signal logique RRF représentatif d'une demande ou non d'inhibition de la lecture dans le port d'entrée concerné. En d'autres termes, si le signal RRF est actif c'est-à-dire s'il est à 1 par exemple, il y a aura effectivement lecture dans la FIFO tandis que s'il est inactif il n'y aura pas lecture dans la FIFO. Les moyens MLB génèrent par ailleurs le troisième signal logique FRP permettant de figer ou non les p registres de mémorisation d'informations de requête, le quatrième signal logique FD permettant de figer ou non les p registres de mémorisation d'informations entrantes, ainsi qu'une nouvelle valeur Ix du registre d'état RGT.
En fait, le signal logique RFC peut être utilisé comme signal signifiant, lorsqu'il est à 1, que l'on est en présence d'un anomalie de synchronisation.
La représentation de la figure 5 est une représentation classique d'un automate d'états. Les moyens d'élaboration élémentaires quittent un état courant par l'un des cheminements prévus au départ de cet état courant lorsque les conditions prévues en regard du trait barrant ce cheminement sont réalisées. Dans ce cas, les différents signaux logiques prennent les valeurs indiquées dans le rectangle correspondant. A titre d'exemple, les moyens d'élaboration élémentaires étant dans l'état principal LO, vont quitter cet état LO pour y revenir lorsque l'information de mode est égale à INSE et que le signal logique FC est égal à O. Dans ce cas, les signaux FRP, FD,
RFC et RRF prennent les valeurs zéro.
L'expression "AUTRES" signifie tous les autres modes restants et appartenant à l'ensemble des cinq valeurs définies ci-dessus.
Ainsi, selon l'invention, lorsque les moyens d'élaboration élémentaires sont dans l'état principal, et en l'absence d'une inhibition du fonctionnement interne de l'unité de traitement, c'est-à-dire lorsque le signal FC est inactif (valeur O), les signaux FRP et FD FL > sont inactifs.
Par contre, dans l'état principal LO et en présence d'une inhibition du fonctionnement interne de l'unité de traitement (FC=1) ces signaux
FRP et et FL > sont actifs (ils valent 1) tandis que le signal RFC est inactif (on ne demande pas le gel de l'unité de traitement) sauf si on est dans le mode REMO, et le deuxième signal logique RRF est actif ou inactif en fonction de l'information de mode. En d'autres termes, on lit ou on ne lit pas la FIFO en fonction du mode dans lequel on se trouve.
Plus précisément, dans le mode GO, on lit la mémoire FIFO mais on ne demande pas le gel de l'unité de traitement (RFC=O).
Dans le mode INSE, on ne lit pas la FIFO et on ne demande pas le gel de l'unité de traitement.
Par contre, dans le mode REMO on demande le gel de l'unité de traitement mais on lit tout de même la FIFO.
Dans le mode STAN on demande le gel de l'unité de traitement et on ne lit pas la FIFO.
Ceci étant, lorsque le signal FC est inactif et que l'on se trouve dans les modes REMO ou STAN, les moyens d'élaboration élémentaires quittent l'état principal pour prendre l'un des états de la première famille d'état auxiliaire. Puis, d'une façon générale, les moyens d'élaboration élémentaires vont parcourir l'automate d'états dans l'ordre décroissant des familles d'états auxiliaires sachant qu'ils peuvent rester plusieurs cycles d'horloge à un même niveau jusqu'à atteindre en p cycles une famille Fp-b avant de remonter progressivement jusqu'à l'état principal LO. On a alors corrigé l'anomalie de synchronisation. k est le nombre de fois où le signal logique GL aura valu 1 dans la phase de descente qui dure p cycles.
D'une façon générale, lorsque les moyens d'élaboration élémentaires parcourent la famille d'état dans l'ordre croissant des indexes ("en descente") les moyens d'élaboration élémentaires demeurent dans une famille courante Li si le signal GL (ou FC) vaut 1.

Dans ce cas, les signaux FRP et FD FL > sont actifs tandis que le signal
RRF est inactif. Si par contre le signal GL vaut 0, les moyens d'élaboration élémentaires descendent dans la famille d'état suivante
Li+l et le signal logique FRP vaut 0 tandis que le signal FD vaut 1. Le signal RRF quant à lui vaut 1 si on est dans le mode REMO, et O si non.
Lorsque les moyens d'élaboration élémentaires parcourent les indexes dans l'ordre décroissant, c'est-à-dire si l'on est dans le sens de la remontée vers l'état principal, les moyens d'élaboration élémentaires demeurent dans une famille d'état courant Li si l'information de mode est égale à STAN ou REMO. Le signal logique FD vaut alors 1. Dans le cas contraire, les moyens d'élaboration élémentaires remontent dans la famille Li-l et le signal logique FD vaut 0.
Pour plus de détails sur les conditions de changement d'états dans ce mode particulier de mise en oeuvre, l'homme du métier pourra se référer à l'automate d'états de la figure 5.
D'une façon générale, le programme logé dans les moyens de commande de l'unité de traitement part du principe qu'il obtient tout ce qu'il demande (lecture ou écriture de données ou de séparateurs). Si l'environnement lui est défavorable, c'est-à-dire si l'un au moins des ports d'entrée ou de sortie n'est pas en mesure de répondre à cette attente, le fonctionnement de l'unité interne sera gelé c'est-à-dire que son état interne sera immuable jusqu'à la fin du gel.
Ce mécanisme de gel, en combinaison avec l'utilisation de séparateurs permet de dissocier les instants temporels précis des entrées/sorties, de l'instant précis où ces données ou séparateurs sont effectivement utilisés par l'unité de traitement. On libère ainsi l'unité de traitement de la contrainte de l'instant précis où les informations arrivent. De ce fait, le programme de l'unité de traitement peut être écrit très simplement. Ceci facilite les implémentations temps réel.
Par ailleurs, l'utilisation des p niveaux de registres de pipeline associés aux autres registres figeables ainsi qu'aux différents états auxiliaires, permet de faire fonctionner le dispositif à une fréquence d'horloge très importante puisqu'elle permet d'obtenir une requête p cycles d'horloge interne avant le moment de l'information d'entrée éventuelle résultante sera effectivement disponible à l'entrée de l'unité de traitement.
Bien entendu, l'homme du métier saura ajuster la valeur de p compte tenu de la fréquence souhaitée pour l'horloge interne et de la taille et de la technologie utilisées pour le circuit selon l'invention.
Ceci étant, lorsque la fréquence d'horloge choisie est compatible avec l'architecture et la technologie du circuit, la structure du dispositif selon l'invention peut être simplifiée.
Ainsi, dans un tel cas, les registres de pipeline ainsi que les registres figeables de mémorisation de requête et d'informations entrantes peuvent être omis. li en est de même des multiplexeurs
MUX1 et MUX2 et du registre d'état RGT. En fait, les moyens d'élaboration élémentaires ne possèdent alors qu'un seul état qui correspond à l'état principal qui vient d'être décrit. Ils élaborent ainsi uniquement les signaux RRF et RFC à partir uniquement de l'information IFM.
Plus précisément, on élabore l'information d'anomalie de synchronisation en l'absence d'information entrante disponible en lecture dans le port d'entrée ou en présence d'un information entrante disponible en lecture d'une nature différente de celle définie par la requête effective de lecture.
Le signal RFC (demande d'inhibition du fonctionnement interne de l'unité de traitement) vaut 1 en présence d'une donnée disponible dans l'un des ports d'entrée associés à une requête d'un séparateur.
Par ailleurs, en présence d'un séparateur disponible dans l'un des ports d'entrée, associé à une requête d'une donnée dans ce port d'entrée, on inhibe la lecture dans ce port d'entrée tout en s'abstenant de générer un signal de demande d'inhibition du fonctionnement interne de l'unité de traitement (RFC=O).
Bien entendu, on active également le signal RFC en présence d'une FIFO vide ayant fait l'objet d'une requête de lecture.
Enfin, on inhibe le fonctionnement interne de l'unité de traitement (GL=1) en présence d'au moins un signal RFC actif et on inhibe la lecture dans tous les ports d'entrée à l'exception de ceux présentant une donnée disponible en lecture et associés à une requête de lecture d'un séparateur.
La structure des deuxièmes moyens de contrôle de synchronisme (GSS4) connectés entre l'unité de traitement et chacun des ports de sortie (FS4) est beaucoup plus simple sur le plan matériel ainsi que sur le plan fonctionnel.
Plus précisément, il est prévu des deuxièmes moyens d'analyse, analogues aux premiers moyens d'analyse, et permettant de délivrer une deuxième information d'analyse FP représentative du contenu disponible en écriture de chaque port de sortie. En pratique, cette information FP va indiquer si le port de sortie, en espèce la
FIFO, est pleine ou non. Les deuxièmes moyens de contrôle de synchronisme sont alors aptes à élaborer une information d'anomalie de synchronisation (qui peut être par exemple la demande de gel RFC), en présence d'une requête effective d'écriture RCE délivrée par les deuxièmes moyens de commande de l'unité de traitement, associée à une indisponibilité d'écriture dans le port de sortie (port de sortie plein). Dans ce cas, le signal RFC vaut 1 et le signal DW de commande d'écriture dans le port de sortie est inactif (il vaut 0 par exemple). Par ailleurs, les deuxièmes moyens de contrôle de synchronisme sont aptes, en présence d'au moins un signal de demande d'inhibition du fonctionnement interne de l'unité de traitement (RFC=1) à inhiber le fonctionnement interne de l'unité de traitement (GL=1), et à inhiber l'écriture dans tous les ports de sortie (signal W=O). Matériellement, ceci se réalise simplement de façon logique à l'aide d'une porte ET référencée AS recevant sur une de ses entrées le signal DW émanant du bloc GSS4, et sur l'autre entrée le signal GL inversé dans un inverseur IV.
Dans le cas d'un fonctionnement du dispositif selon l'invention à fréquence élevée, on prévoit simplement de dé

Claims (30)

REVENDICATIONS
1. Procédé de contrôle de la synchronisation temporelle entre une unité de traitement et des moyens de traitement extérieurs, ladite unité de traitement (UT) étant cadencée par un signal d'horloge interne et les moyens extérieurs délivrant, par l'intermédiaire d'au moins un moyen de communication d'entrée, au moins un flux entrant cadencé d'informations entrantes (FXE2), à au moins un port d'entrée (FE2) connecté à ladite unité, dans lequel
- on incorpore dans ledit flux entrant (FXE2), des informations entrantes de données temporellement séparées par des informations entrantes dites de séparation, selon un schéma de séparation entrante prédéterminé,
- on commande ladite unité de traitement par un premier mécanisme de commande élaborant pour ladite unité, à chaque cycle de l'horloge interne, au moins une information de requête de lecture (RC) représentative d'une part de l'absence ou de la présence d'une requête effective de lecture d'une information entrante et d'autre part de la nature de l'information entrante éventuellement requise par ladite unité compte tenu du schéma de séparation entrante prédéterminé,
- on analyse, en présence d'une requête effective de lecture d'une information entrante, le contenu disponible en lecture du port d'entrée, et en cas d'une absence d'information entrante disponible en lecture, ou en présence d'une information entrante disponible en lecture d'une nature différente de celle définie par ladite requête effective de lecture, on élabore une information d'anomalie de synchronisation (RFC).
2. Procédé selon la revendication 1, dans lequel les moyens externes délivrent respectivement à une pluralité de ports d'entrée (FE1, FE2) par l'intermédiaire d'une pluralité de bus numériques, une pluralité de flux entrants cadencés, caractérisé par le fait qu'on incorpore dans chaque flux entrant des informations entrantes de données temporellement séparées par des informations entrantes de séparation, selon des schémas de séparation entrante prédéterminés respectifs, par le fait que le premier mécanisme de commande élabore une pluralité d'informations de requête de lecture, chacune étant représentative pour un flux entrant correspondant, d'une part de l'absence ou de la présence d'une requête effective de lecture d'une information entrante dudit flux entrant correspondant et, d'autre part de la nature de l'information entrante éventuellement requise par ladite unité compte tenu du schéma de séparation entrante prédéterminé correspondant, et par le fait qu'on analyse, en présence d'au moins une requête effective de lecture d'une information entrante de l'un au moins des flux entrants, le contenu disponible de chaque port d'entrée concerné, et en cas d'une absence d'information entrante disponible dans l'un au moins desdits ports d'entrée concernés, ou en présence d'une information entrante disponible d'une nature différente de celle définie par ladite requête effective correspondante de lecture, on élabore ladite information d'anomalie de synchronisation (GL).
3. Procédé selon l'une des revendications précédentes, caractérisé par le fait que les informations entrantes de séparation comportent des informations entrantes de séparation de types différents, et par le fait qu'on élabore ladite information d'anomalie de synchronisation en présence d'une information entrante de séparation disponible dans chaque port d'entrée concerné mais ayant un type autre que celui défini dans l'information de requête correspondante.
4. Procédé selon l'une des revendications précédentes, caractérisé par le fait qu'en présence d'une information entrante disponible de donnée dans l'un des ports d'entrée, associée à une requête d'une information entrante de séparation, on génère un signal (RFC) de demande d'inhibition du fonctionnement interne de l'unité de traitement.
5. Procédé selon l'une des revendications précédentes, caractérisé par le fait qu'en présence d'une information entrante disponible de séparation dans l'un des ports d'entrée, associée à une requête d'une information entrante de donnée, on inhibe la lecture dans le port d'entrée tout en s'abstenant de générer un signal de demande d'inhibition du fonctionnement interne de l'unité de traitement.
6. Procédé selon la revendication 4 ou 5, caractérisé par le fait qu'en absence d'une information entrante disponible en lecture dans l'un des ports d'entrée ayant fait l'objet d'une requête de lecture, on génère ledit signal de demande d'inhibition du fonctionnement interne de l'unité de traitement.
7. Procédé selon l'une des revendications 4 à 6, caractérisé par le fait qu'on inhibe le fonctionnement interne de l'unité de traitement en présence d'au moins un signal de demande d'inhibition du fonctionnement interne de l'unité de traitement, et on inhibe la lecture dans tous les ports d'entrée à l'exception de ceux présentant une information de donnée disponible en lecture et associée à une requête de lecture d'une information de séparation.
8. Procédé selon l'une des revendications précédentes prise en combinaison avec la revendication 3, caractérisé par le fait que les différents types d'informations de séparation sont hiérarchisés selon une hiérarchie prédéterminée, par le fait que les informations de séparation sont incorporées dans chaque flux d'informations entrantes selon ladite hiérarchie, et par le fait qu'on analyse, en ce qui concerne l'élaboration de ladite information d'anomalie de synchronisation, une information de séparation d'un premier type par rapport à une information de séparation d'un deuxième type de rang plus élevé que le premier type dans ladite hiérarchie, d'une façon analogue à l'analyse d'une information de donnée par rapport à une information de séparation de type quelconque, et inversement.
9. Procédé de contrôle de la synchronisation temporelle entre une unité de traitement et des moyens de traitement extérieurs, ladite unité de traitement étant cadencée par un signal d'horloge interne et étant apte à écrire dans au moins un port de sortie (FS4), au rythme du signal d'horloge interne, au moins un flux sortant d'informations sortantes (FXS2) destinées à être traitées, selon une cadence de sortie, par lesdits moyens extérieurs connectés par au moins un moyen de communication de sortie audit port de sortie, dans lequel on commande ladite unité de traitement par un deuxième mécanisme de commande élaborant pour ladite unité, à chaque cycle de l'horloge interne, au moins une information de requête d'écriture (RCE) représentative de l'absence ou de la présence d'une requête effective d'écriture d'une information sortante, cette information sortante pouvant être, selon un schéma de séparation sortante prédéterminé, une information de donnée sortante ou une information de séparation sortante, et par le fait qu'on analyse, en présence d'une requête effective d'écriture d'une information sortante, le contenu disponible en écriture du port de sortie, et en cas d'une indisponibilité d'écriture dans le port de sortie, on élabore une information d'anomalie de synchronisation.
10. Procédé selon la revendication 9, dans lequel l'unité de traitement est apte à écrire dans une pluralité de ports de sortie (FS3, FS4) connectés à ladite unité de traitement, au rythme du signal d'horloge interne, une pluralité de flux sortants d'informations sortantes (FXS1, FXS2) destinées à être traitées, selon des cadences de sortie respectives, par lesdits moyens extérieurs connectés auxdits ports de sortie par une pluralité de bus numériques de sortie, caractérisé par le fait que le deuxième mécanisme de commande élabore une pluralité d'informations de requête d'écriture, chacune représentative pour chaque flux sortant correspondant, de l'absence ou de la présence d'une requête effective d'écriture d'une information sortante dans le flux sortant correspondant, cette information sortante pouvant être, selon un schéma de séparation sortante prédéterminé respectif, une information de donnée sortante ou une information de séparation sortante, et par le fait qu'on analyse, en présence d'au moins une requête effective d'écriture d'une information sortante, le contenu disponible en écriture de chaque port de sortie concerné, et en cas d'une indisponibilité d'écriture dans l'un au moins des ports de sortie concernés, on élabore ladite information d'anomalie de synchronisation.
11. Procédé selon la revendication 9 ou 10, caractérisé par le fait que les informations sortantes de séparation comportent des informations sortantes de séparation de types différents.
12. Procédé selon la revendication 11, caractérisé par le fait que les différents types d'informations sortantes de séparation sont hiérarchisés selon une hiérarchie prédéterminée, par le fait que les informations sortantes de séparation sont incorporées dans chaque flux d'informations sortantes selon ladite hiérarchie.
13. Procédé selon l'une des revendications 9 à 12, caractérisé par le fait qu'en présence d'une indisponibilité de l'un des ports de sortie ayant fait l'objet d'une requête en écriture, on génère un signal de demande d'inhibition du fonctionnement interne de l'unité de traitement.
14. Procédé selon la revendication 13, caractérisé par le fait qu'on inhibe le fonctionnement interne de l'unité de traitement en présence d'au moins un signal de demande d'inhibition du fonctionnement interne de l'unité de traitement, et on inhibe l'écriture dans tous les ports de sortie.
15. Procédé de contrôle de la synchronisation temporelle entre une unité de traitement et des moyens de traitement extérieurs, comprenant la combinaison des caractéristiques définies dans l'une des revendications 1 à 8, et des caractéristiques définies dans l'une des revendications 9 à 14.
16. Dispositif de contrôle de la synchronisation temporelle entre une unité de traitement et des moyens de traitement extérieurs, comprenant
- au moins un port d'entrée (FE2) connecté entre l'unité de traitement et les moyens extérieurs et destiné à recevoir de la part des moyens extérieurs un flux entrant cadencé d'informations entrantes (FXE2), comportant des informations entrantes de données temporellement séparées par des informations entrantes dites de séparation, selon un schéma de séparation entrante prédéterminé,
- des premiers moyens de commande élaborant à chaque cycle de ladite horloge interne, une information de requête de lecture (RC) représentative pour le port d'entrée, d'une part de l'absence ou de la présence d'une requête effective de lecture d'une information entrante dans le port d'entrée et, d'autre part de la nature de l'information entrante éventuellement requise par ladite unité compte tenu du schéma de séparation entrante,
- des premiers moyens d'analyse pour délivrer une première information d'analyse (DSF, FV) représentative du contenu disponible en lecture du port d'entrée,
- des premiers moyens de contrôle de synchronisme (GES2), reliés aux premiers moyens d'analyse et au port d'entrée, et possédant au moins un état principal (LO) dans lequel ils sont aptes à élaborer une information d'anomalie de synchronisation (RFC), en présence d'au moins une requête effective de lecture d'une information entrante dans le port d'entrée, associée à une absence d'information. entrante disponible dans ce port d'entrée, ou en présence d'une information entrante disponible d'une nature différente de celle définie par ladite requête effective correspondante de lecture.
17. Dispositif selon la revendication 16, caractérisé par le fait qu'il comprend une pluralité de ports d'entrée (fez, FE2) connectés entre l'unité de traitement et les moyens extérieurs et destinés à recevoir respectivement de la part des moyens extérieurs des flux entrants cadencés d'informations entrantes (FXE1, FXE2), comportant des informations entrantes de données temporellement séparées par des informations entrantes dites de séparation, selon des schéma de séparation entrante prédéterminés respectifs, par le fait que les premiers moyens de commande sont aptes à élaborer à chaque cycle de ladite horloge interne, une pluralité d'informations de requête de lecture, chacune étant représentative pour un port d'entrée correspondant, d'une part de l'absence ou de la présence d'une requête effective de lecture d'une information entrante dans le port d'entrée correspondant et, d'autre part de la nature de l'information entrante éventuellement requise par ladite unité compte tenu du schéma de séparation entrante prédéterminé correspondant, par le fait que les premiers moyens d'analyse sont aptes à délivrer une première information d'analyse représentative du contenu disponible en lecture de chaque port d'entrée, et par le fait que les premiers moyens de contrôle de synchronisme sont aptes, dans leur état principal à élaborer une information d'anomalie de synchronisation, en présence d'au moins une requête effective de lecture d'une information entrante dans l'un au moins des ports d'entrée, associée à une absence d'information entrante disponible dans ce port d'entrée, ou en présence d'une information entrante disponible d'une nature différente de celle définie par ladite requête effective correspondante de lecture.
18. Dispositif selon la revendication 16 ou 17, caractérisé par le fait que les premiers moyens de contrôle de synchronisme comprennent, pour chaque port d'entrée, des premiers moyens élémentaires de détection de modes (MDT) aptes à recevoir la première information d'analyse (DSF, FV) et une information de requête de lecture (RC), et à délivrer une information de mode (IFM) en fonction des contenus de la première information d'analyse et de l'information de requête de lecture, et des premiers moyens d'élaboration élémentaires (MLB) possédant au moins ledit état principal dans lequel ils sont aptes à élaborer ladite information d'anomalie de synchronisation au moins à partir du contenu de l'information de mode.
19. Dispositif selon la revendication 18, caractérisé par le fait que les moyens d'élaboration élémentaires sont aptes, dans ledit état principal, à générer un premier signal logique (RFC) représentatif d'une demande ou non dtinhibition du fonctionnement interne de l'unité de traitement en fonction du contenu de l'information de mode, et un deuxième signal logique (RRF) représentatif d'une demande ou non d'inhibition de la lecture dans le port d'entrée concerné en fonction du contenu de l'information de mode, et par le fait que les moyens de contrôle de synchronisme comportent des moyens de génération, reliés entre la sortie des moyens d'élaboration élémentaires et une borne d'entrée d'inhibition de l'unité de traitement, aptes à générer un signal logique (FC) d'inhibition du fonctionnement interne de l'unité de traitement à partir de l'ensemble des premiers signaux logiques.
20. Dispositif selon la revendication 19, caractérisé par le fait qu'il comprend en outre, pour chaque port d'entrée, p étant supérieur ou égal à un:
- p niveaux de registres de pipelines (PP1-PP3) connectés entre la sortie des moyens d'élaboration élémentaires et la borne d'entrée d'inhibition de l'unité de traitement,
- p registres cascadés figeables (RG1-RG3) de mémorisation d'informations de requêtes, connectés entre la sortie des premiers moyens de commande et l'entrée des moyens élémentaires de détection de mode par l'intermédiaire d'un premier multiplexeur à p+l entrées, (MUX 1),
- p registres cascadés figeables (RG4-RG6) de mémorisation d'informations entrantes, connectés entre la sortie du port d'entrée et l'unité de traitement par l'intermédiaire d'un deuxième multiplexeur à p+l entrées (MUX2),
par le fait que les moyens d'élaboration élémentaires possèdent en outre p familles d'états auxiliaires (L1-L3), l'état principal et les familles d'état auxiliaires étant indexés et ordonnés, et comportent un registre d'état (RGT) aptes à délivrer un signal d'index (Ix) identifiant l'état courant des moyens d'élaboration élémentaires,
par le fait que les premier et deuxième multiplexeurs sont commandés par le signal d'index,
et par le fait que les moyens d'élaboration élémentaires génèrent dans l'état principal et dans chaque famille d'état auxiliaire, à partir de l'information de mode (IFM), du signal logique (FC) d'inhibition du fonctionnement interne de l'unité de traitement, et du signal d'index (Ix), le premier signal logique (RFC) représentatif d'une demande ou non d'inhibition du fonctionnement interne de l'unité de traitement, le deuxième signal logique (RRF) représentatif d'une demande ou non d'inhibition de la lecture dans le port d'entrée concerné, un troisième signal logique (FRP) permettant de figer ou non les p registres de mémorisation d'informations de requêtes, un quatrième signal logique (FD) permettant de figer ou non les p registres de mémorisation d'informations entrantes, et une nouvelle valeur (Ix) du registre d'états.
21. Dispositif selon la revendication 20, caractérisé par le fait que, dans ledit état principal (Lo) des moyens d'élaboration élémentaires, et en absence du signal logique d'inhibition du fonctionnement interne de l'unité de traitement (FC=O, les troisième (FRP) et quatrième (FD) signaux logiques sont inactifs.
22. Dispositif selon la revendication 20 ou 21, caractérisé par le fait que, dans ledit état principal (20) des moyens d'élaboration élémentaires, et en présence du signal logique d'inhibition du fonctionnement interne de l'unité de traitement (FC=1), les troisième (FRP) et quatrième (FL > ) signaux logiques sont actifs, tandis que le premier signal logique (RFC) et le deuxième signal logique (RRF) sont actif ou inactif en fonction de l'information de mode (IFM).
23. Dispositif selon l'une des revendications 20 à 22, caractérisé par le fait que, la valeur du signal d'index (Ix) étant représentatif dudit état principal, les moyens d'élaboration élémentaires confèrent au registre d'état la valeur (1) du premier index de la famille d'états auxiliaires en présence d'un premier signal logique actif (RFC=1) et en présence d'un signal logique d'inhibition inactif (FC=O), puis sont aptes à conférer successivement au registre d'états les valeurs des index suivants jusqu'à atteindre en p cycles d'horloge l'index p-k, k étant le nombre de fois où le signal logique (FC) d'inhibition du fonctionnement interne de l'unité de traitement aura été actif au cours des p cycles, puis sont aptes à conférer successivement au registre d'état les valeurs des index précédents jusqu'à atteindre à nouveau l'index représentatif de l'état principal (20).
24. Dispositif de contrôle de la synchronisation temporelle entre une unité de traitement et des moyens de traitement extérieurs, comprenant
- au moins un port de sortie (FS4) connecté entre l'unité de traitement et les moyens extérieurs et destiné à recevoir de la part de l'unité de traitement et au rythme du signal d'horloge interne de cette unité de traitement, un flux sortant d'informations sortantes, (FXS2) comportant des informations sortantes de données temporellement séparées par des informations sortantes dites de séparation, selon un schéma de séparation sortante prédéterminé,
- des deuxièmes moyens de commande élaborant à chaque cycle de ladite horloge interne, une information de requête d'écriture (RCE) représentative pour le port de sortie, de l'absence ou de la présence d'une requête effective d'écriture d'une information sortante dans le port de sortie, cette information sortante pouvant être, selon le schéma de séparation sortante prédéterminé, une information de donnée sortante ou une information de séparation sortante,
- des deuxièmes moyens d'analyse pour délivrer une deuxième information d'analyse représentative du contenu disponible en écriture du port de sortie,
- des deuxièmes moyens de contrôle de synchronisme (GES4) aptes à élaborer une information d'anomalie de synchronisation (RFC) en présence d'au moins une requête effective d'écriture d'une information sortante dans le port de sortie, associée à une indisponibilité d'écriture dans ce port de sortie.
25. Dispositif selon la revendication 24, caractérisé par le fait qu'il comprend une pluralité de ports de sortie connectés entre l'unité de traitement et les moyens extérieurs et destinés à recevoir respectivement de la part de l'unité de traitement et au rythme du signal d'horloge interne de cette unité de traitement, des flux sortants d'informations sortantes, comportant des informations sortantes de données temporellement séparées par des informations sortantes dites de séparation, selon des schéma de séparation sortante prédéterminés respectifs,
par le fait que les deuxièmes moyens de commande élaborent à chaque cycle de ladite horloge interne, une pluralité d'informations de requête d'écriture, chacune représentative pour chaque port de sortie correspondant, de l'absence ou de la présence d'une requête effective d'écriture d'une information sortante dans le port de sortie correspondant, cette information sortante pouvant être, selon le schéma de séparation sortante prédéterminé respectif, une information de donnée sortante ou une information de séparation sortante,
par le fait que les deuxièmes moyens d'analyse délivrent une deuxième information d'analyse représentative du contenu disponible en écriture de chaque port de sortie,
et par le fait que les deuxièmes moyens de contrôle de synchronisme sont aptes à élaborer une information d'anomalie de synchronisation en présence d'au moins une requête effective d'écriture d'une information sortante dans un port de sortie, associée à une indisponibilité d'écriture dans ce port de sortie concerné.
26. Dispositif selon la revendication 15, caractérisé par le fait que les deuxièmes moyens de contrôle sont aptes, pour chaque port de sortie, en réponse à une information de requête d'écriture (RCE) concernant le port de sortie correspondant, et en présence d'une information de contenu (FP) représentative du contenu disponible en écriture du port de sortie, à générer un cinquième signal logique (RFC) représentatif d'une demande ou non d'inhibition du fonctionnement interne de l'unité de traitement.
27. Dispositif selon l'une des revendications 24 à 26, caractérisé par le fait que les deuxièmes moyens d'analyse délivrent une information (FP) représentative de la disponibilité ou non en écriture d'un port de sortie en comparant le niveau de remplissage à un seuil choisi.
28. Dispositif selon la revendication 26 ou 27, caractérisé par le fait que les deuxièmes moyens de contrôle sont aptes en présence d'au moins un signal de demande d'inhibition du fonctionnement interne de l'unité de traitement, à inhiber le fonctionnement interne de l'unité de traitement, et à inhiber l'écriture dans tous les ports de sortie.
29. Dispositif de contrôle de la synchronisation temporelle entre une unité de traitement et des moyens de traitement extérieurs, comprenant la combinaison des caractéristiques définies dans l'une des revendications 16 à 23, et des caractéristiques définies dans l'une des revendications 24 à 28.
30. Dispositif selon l'une des revendications 16 à 29, caractérisé par le fait que les ports d'entrée et de sortie comportent des mémoires du type premier entré-premier sorti.
FR9609018A 1996-07-18 1996-07-18 Procede et dispositif de controle de la synchronisation temporelle entre une unite de traitement, par exemple un microprocesseur, et des moyens exterieurs Expired - Fee Related FR2751444B1 (fr)

Priority Applications (4)

Application Number Priority Date Filing Date Title
FR9609018A FR2751444B1 (fr) 1996-07-18 1996-07-18 Procede et dispositif de controle de la synchronisation temporelle entre une unite de traitement, par exemple un microprocesseur, et des moyens exterieurs
PCT/FR1997/001320 WO1998003922A2 (fr) 1996-07-18 1997-07-16 Procede et dispositif de controle de la synchronisation temporelle entre une unite de traitement et des moyens exterieurs
EP97934573A EP0912945A3 (fr) 1996-07-18 1997-07-16 Procede et dispositif de controle de la synchronisation temporelle entre une unite de traitement et des moyens exterieurs
US09/230,181 US6324591B1 (en) 1996-07-18 1997-07-16 Method and device providing time synchronization between a processing unit and external means

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
FR9609018A FR2751444B1 (fr) 1996-07-18 1996-07-18 Procede et dispositif de controle de la synchronisation temporelle entre une unite de traitement, par exemple un microprocesseur, et des moyens exterieurs

Publications (2)

Publication Number Publication Date
FR2751444A1 true FR2751444A1 (fr) 1998-01-23
FR2751444B1 FR2751444B1 (fr) 1998-09-11

Family

ID=9494196

Family Applications (1)

Application Number Title Priority Date Filing Date
FR9609018A Expired - Fee Related FR2751444B1 (fr) 1996-07-18 1996-07-18 Procede et dispositif de controle de la synchronisation temporelle entre une unite de traitement, par exemple un microprocesseur, et des moyens exterieurs

Country Status (4)

Country Link
US (1) US6324591B1 (fr)
EP (1) EP0912945A3 (fr)
FR (1) FR2751444B1 (fr)
WO (1) WO1998003922A2 (fr)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7818457B1 (en) * 2001-05-22 2010-10-19 Rockwell Automation Technologies, Inc. Apparatus for multi-chassis configurable time synchronization

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4315308A (en) * 1978-12-21 1982-02-09 Intel Corporation Interface between a microprocessor chip and peripheral subsystems
EP0417878A2 (fr) * 1989-09-12 1991-03-20 Acer Incorporated Système de commande d'interface
EP0462622A2 (fr) * 1990-06-21 1991-12-27 Nec Corporation Microprocesseur capable d'assurer un temps de récupération flexible pour un dispositif d'entrée/de sortie

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3564161A (en) * 1967-12-14 1971-02-16 Victor Company Of Japan Cue signal recording and reproducing system for magnetic recording and reproducing apparatus
US5333299A (en) * 1991-12-31 1994-07-26 International Business Machines Corporation Synchronization techniques for multimedia data streams
US5838894A (en) * 1992-12-17 1998-11-17 Tandem Computers Incorporated Logical, fail-functional, dual central processor units formed from three processor units
FR2725825B1 (fr) * 1994-10-12 1997-01-10 Majos Jacques Dispositif de memoire asynchrone a acces sequentiel et procede de stockage et de lecture correspondant
US5794002A (en) * 1996-03-22 1998-08-11 Raytheon Company System and technique for synchronizing data to instructions in a real time computing application

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4315308A (en) * 1978-12-21 1982-02-09 Intel Corporation Interface between a microprocessor chip and peripheral subsystems
EP0417878A2 (fr) * 1989-09-12 1991-03-20 Acer Incorporated Système de commande d'interface
EP0462622A2 (fr) * 1990-06-21 1991-12-27 Nec Corporation Microprocesseur capable d'assurer un temps de récupération flexible pour un dispositif d'entrée/de sortie

Also Published As

Publication number Publication date
EP0912945A2 (fr) 1999-05-06
US6324591B1 (en) 2001-11-27
FR2751444B1 (fr) 1998-09-11
WO1998003922A3 (fr) 2002-10-10
EP0912945A3 (fr) 2002-11-27
WO1998003922A2 (fr) 1998-01-29

Similar Documents

Publication Publication Date Title
CH645470A5 (fr) Adaptateur pour servir d'interface entre un processeur de communication et un canal de communications.
EP0649101A1 (fr) Procédé de fonctionnement en parallèle de plusieurs unités de calcul, notamment en traitement d'images, et architecture correspondante
FR2901618A1 (fr) Controleur de dma, systeme sur puce comprenant un tel controleur de dma, procede d'echange de donnees par l'intermediaire d'un tel controleur de dma
FR2849228A1 (fr) Dispositif de transfert de donnees entre deux sous-systemes asynchrones disposant d'une memoire tampon
EP1531589B1 (fr) Système et procédé de transmission d'une séquence de messages dans un réseau d'interconnexions
FR2751444A1 (fr) Procede et dispositif de controle de la synchronisation temporelle entre une unite de traitement, par exemple un microprocesseur, et des moyens exterieurs
EP0025731B1 (fr) Sélecteur de demandes asynchrones dans un système de traitement de l'information
FR2790892A1 (fr) Procede et dispositif de controle de la synchronisation entre deux bus de communication serie d'un reseau
FR2759178A1 (fr) Circuit de gestion de memoire dans un environnement multi-utilisateurs avec requete et priorite d'acces
FR2887052A1 (fr) Architecture radar generique
EP2278466A1 (fr) Dispositif et procédé pour l'exécution distribuée de traitements de données numériques
EP0227521B1 (fr) Procédé de codage en code CMI d'informations numériques organisées en trame, le dispositif de mise en oeuvre, et son application à des informations de servitude pour réseau numérique à grand débit
EP0344052B1 (fr) Mémoire modulaire
EP4020475A1 (fr) Module mémoire adapté à mettre en oeuvre des fonctions de calcul
EP0177429B1 (fr) Procédé d'échange d'informations entre abonnés par bus en anneau et dispositif multiprocesseur en comportant application
WO2020109733A2 (fr) Gestion des données pour le stockage de trames de données dans la mémoire d'un système de transmission de données
EP0908828B1 (fr) Procédé et système contrôle d'accès partagés à une mémoire vive
FR2710804A1 (fr) Dispositif numérique de connexion d'une pluralité de stations de travail sur un réseau local en anneau.
EP0589743A1 (fr) Dispositif modulaire permettant le couplage et le multiplexage de bus de différents types
WO2009053318A1 (fr) Structure et procede de sauvegarde et de restitution de donnees
WO2020089558A1 (fr) Système de transmission de données
EP2799994A1 (fr) Procédé et dispositif de sauvegarde de données dans une infrastructure informatique offrant des fonctions de reprise d'activité
CA2019774C (fr) Dispositif de detection dans un signal binaire d'une signalisation formee nominalement d'une serie continue d'elements binaires de meme valeur
FR2827995A1 (fr) Procede et dispositif de gestion de memoire
EP1942415A1 (fr) Système et procédé de détermination des performances d'un réseau d'interconnexions sur puce.

Legal Events

Date Code Title Description
ST Notification of lapse

Effective date: 20100331