FR2820845A1 - METHOD OF OPTIMIZING THE USE OF A STORAGE MEDIA, SWITCHING DEVICE, SIGNAL, AND CORRESPONDING APPLICATIONS - Google Patents

METHOD OF OPTIMIZING THE USE OF A STORAGE MEDIA, SWITCHING DEVICE, SIGNAL, AND CORRESPONDING APPLICATIONS Download PDF

Info

Publication number
FR2820845A1
FR2820845A1 FR0102034A FR0102034A FR2820845A1 FR 2820845 A1 FR2820845 A1 FR 2820845A1 FR 0102034 A FR0102034 A FR 0102034A FR 0102034 A FR0102034 A FR 0102034A FR 2820845 A1 FR2820845 A1 FR 2820845A1
Authority
FR
France
Prior art keywords
storage means
indicator
value
data
fifo
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
FR0102034A
Other languages
French (fr)
Other versions
FR2820845B1 (en
Inventor
Kolli Yacine El
Falk Tannhauser
Stephane Bizet
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.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to FR0102034A priority Critical patent/FR2820845B1/en
Priority to GB0202519A priority patent/GB2375196B/en
Publication of FR2820845A1 publication Critical patent/FR2820845A1/en
Application granted granted Critical
Publication of FR2820845B1 publication Critical patent/FR2820845B1/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F5/00Methods or arrangements for data conversion without changing the order or content of the data handled
    • G06F5/06Methods or arrangements for data conversion without changing the order or content of the data handled for changing the speed of data flow, i.e. speed regularising or timing, e.g. delay lines, FIFO buffers; over- or underrun control therefor
    • G06F5/10Methods or arrangements for data conversion without changing the order or content of the data handled for changing the speed of data flow, i.e. speed regularising or timing, e.g. delay lines, FIFO buffers; over- or underrun control therefor having a sequence of storage locations each being individually accessible for both enqueue and dequeue operations, e.g. using random access memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F5/00Methods or arrangements for data conversion without changing the order or content of the data handled
    • G06F5/06Methods or arrangements for data conversion without changing the order or content of the data handled for changing the speed of data flow, i.e. speed regularising or timing, e.g. delay lines, FIFO buffers; over- or underrun control therefor

Abstract

L'invention concerne un procédé d'optimisation de l'utilisation d'un moyen de stockage, mettant en oeuvre au moins un indicateur de remplissage modifié lorsque l'espace de stockage disponible dans ledit moyen de stockage dépasse au moins un seuil prédéterminé. Selon l'invention, ledit indicateur est modifié également lorsque les données contenues dans ledit moyen de stockage remplissent au moins une condition prédéterminée.The invention relates to a method for optimizing the use of a storage means, implementing at least one filling indicator modified when the storage space available in said storage means exceeds at least one predetermined threshold. According to the invention, said indicator is also modified when the data contained in said storage means fulfill at least one predetermined condition.

Description

<Desc/Clms Page number 1> <Desc / Clms Page number 1>

Procédé d'optimisation de l'utilisation d'un moyen de stockage, dispositif de commutation, signal, et applications correspondantes.  Method for optimizing the use of a storage medium, switching device, signal, and corresponding applications.

Le domaine de l'invention est celui de la mise en oeuvre de moyens de stockage, notamment, mais non exclusivement, dans le cadre de systèmes de commutation, de transmission et/ou de réception de données numériques.  The field of the invention is that of the implementation of storage means, in particular, but not exclusively, in the context of switching, transmission and / or reception systems of digital data.

Plus précisément, l'invention concerne l'optimisation de l'utilisation de moyens de stockage alimentés par des données reçues et devant être transférées vers au moins un élément destinataire.  More specifically, the invention relates to the optimization of the use of storage means supplied with received data and having to be transferred to at least one recipient element.

Ces moyens de stockage peuvent notamment être des mémoires FIFO ( First In First Out : première entrée, première sortie) associées à des ports d'entrée d'un dispositif de commutation assurant le transfert d'ensembles de données, par exemple sous la forme de paquets. En particulier, de tels moyens de stockage peuvent être mis en oeuvre dans des systèmes de commutation à haut débit, permettant notamment l'échange en temps réel d'images animées, par exemple pour une distribution dans le cadre d'une habitation.  These storage means can in particular be FIFO memories (First In First Out) associated with input ports of a switching device ensuring the transfer of data sets, for example in the form of packets. In particular, such storage means can be implemented in high speed switching systems, in particular allowing the real-time exchange of moving images, for example for distribution in the context of a dwelling.

La plupart des systèmes de commutation connus comprennent des mémoires tampons, de type FIFO. De manière générale, le rôle de ces mémoires tampons est de conserver temporairement les données reçues, de façon que des moyens de contrôle optimisent la commutation, c'est-à-dire le transfert des données vers le port de sortie idoine.  Most known switching systems include buffer memories, of the FIFO type. In general, the role of these buffers is to temporarily store the data received, so that control means optimize the switching, that is to say the transfer of data to the appropriate output port.

Bien sûr, la capacité de ces mémoires tampon est limitée, et il convient de gérer leur encombrement. Dans le cas contraire, on risque de se heurter à des problèmes d'engorgement, de blocage, ou de pertes de données.  Of course, the capacity of these buffer memories is limited, and it is necessary to manage their size. Otherwise, there is a risk of encountering problems of congestion, blocking, or loss of data.

Ce problème peut être résolu à l'aide d'un indicateur codé sur un ou plusieurs bits, dit almost full (en français, presque plein ). Lorsque la mémoire tampon présente un taux de remplissage supérieur à un seuil prédéterminé (classiquement de l'ordre de N-x, où N représente la taille de la mémoire tampon et où x la profondeur pipeline), l'indicateur almost full passe à la valeur vraie (1 si l'indicateur"almost full"est un indicateur binaire). Les moyens de gestion de la commutation prennent en compte cette information, pour  This problem can be solved using an indicator coded on one or more bits, called almost full (in French, almost full). When the buffer has a filling rate greater than a predetermined threshold (conventionally of the order of Nx, where N represents the size of the buffer and where x the pipeline depth), the almost full indicator goes to the true value (1 if the "almost full" indicator is a binary indicator). The switching management means take this information into account, to

<Desc/Clms Page number 2><Desc / Clms Page number 2>

traiter en priorité la mémoire tampon correspondante. Une fois cette opération effectuée, l'indicateur almost full est repositionné à la valeur"fausse" (0 si l'indicateur"almost full"est binaire).  give priority to the corresponding buffer memory. Once this operation has been carried out, the almost full indicator is repositioned at the value "false" (0 if the "almost full" indicator is binary).

Un autre problème important que l'on rencontre, en particulier dans le cadre de systèmes asynchrones à transfert de données regroupées en paquets (ou en tout autre type d'ensembles de données), est que la commutation doit s'effectuer par paquets. Il convient donc de gérer la réception de ces paquets, et d'en assurer la commutation.  Another important problem encountered, in particular in the context of asynchronous data transfer systems grouped in packets (or in any other type of data set), is that the switching must be carried out in packets. It is therefore necessary to manage the reception of these packets, and to ensure the switching.

Cette gestion est d'autant plus importante dans le cas des systèmes utilisant des moyens de contrôle du transfert de données entre des mémoires de type FIFO et des mémoires de type RAM (en anglais"Random Access Memory") basés sur des techniques de transfert en rafale ("burst"en anglais). Selon ces techniques, le transfert de données débute et s'arrête en fonction de l'indicateur"almost full".  This management is all the more important in the case of systems using means for controlling the transfer of data between memories of FIFO type and memories of RAM type (in English "Random Access Memory") based on transfer techniques in burst. According to these techniques, the data transfer starts and stops according to the "almost full" indicator.

Si, de plus, les moyens de contrôle fonctionnent selon un mode de logique pipeline (en français"logique en cascade"), il faut noter que cette logique a besoin d'un nombre prédéterminé de coups d'horloge supplémentaires, ou périodes d'horloge, séquençant le moyen de contrôle et l'échange, pour assurer le transfert.  If, moreover, the control means operate according to a pipeline logic mode (in French "cascade logic"), it should be noted that this logic needs a predetermined number of additional clock ticks, or periods of clock, sequencing the control means and the exchange, to ensure the transfer.

Si la quantité d'informations présente dans la mémoire FIFO est insuffisante, c'est-à-dire si la FIFO présente un taux de remplissage inférieur au seuil prédéterminé N-x, il ne sera pas possible de transférer cette quantité d'information vers la mémoire RAM.  If the quantity of information present in the FIFO memory is insufficient, that is to say if the FIFO has a filling rate below the predetermined threshold Nx, it will not be possible to transfer this quantity of information to the memory RAM.

Ceci est, bien entendu, particulièrement pénalisant si les informations contenues dans la FIFO correspondent à la fin d'un paquet. En effet, pour que ce paquet soit traité par un autre élément du dispositif de commutation, il faut que la fin du paquet soit transférée de la FIFO vers la mémoire RAM.  This is, of course, particularly disadvantageous if the information contained in the FIFO corresponds to the end of a packet. Indeed, for this packet to be processed by another element of the switching device, the end of the packet must be transferred from the FIFO to the RAM memory.

Cela suppose donc des systèmes relativement complexes de contrôle de la gestion de la commutation.  This therefore requires relatively complex systems for controlling switching management.

La société ST Microelectronics (marque déposée) a ainsi imaginé un composant d'interface Clou, comprenant des FIFOs, dont la gestion est effectuée de manière classique, c'est-à-dire sans que l'indicateur de taux de remplissage de  The company ST Microelectronics (registered trademark) has thus imagined a Clou interface component, comprising FIFOs, the management of which is carried out in a conventional manner, that is to say without the indicator of filling rate of

<Desc/Clms Page number 3><Desc / Clms Page number 3>

la FIFO prenne en compte la présence d'un marqueur de fin de paquet ou de fin de message dans la FIFO.  FIFO takes into account the presence of an end of packet or end of message marker in FIFO.

La société VLSI Technology (marque déposée) a ensuite imaginé de mettre en oeuvre un procédé de détection d'une fin de paquet dans une FIFO, ainsi que cela est décrit dans le document de brevet américain US 5 860 119.  The company VLSI Technology (registered trademark) then imagined implementing a method for detecting an end of packet in a FIFO, as described in the US patent document US 5,860,119.

Cependant, on ne connaît pas à ce jour de système permettant de gérer efficacement le transfert des données hors d'un moyen de stockage, de type FIFO par exemple, dans le cadre d'un transfert par paquets.  However, to date there is no known system for efficiently managing the transfer of data outside of a storage means, of the FIFO type for example, within the framework of a packet transfer.

L'invention a notamment pour objectif de pallier ces inconvénients, et donc de fournir un procédé d'optimisation de l'utilisation d'un moyen de stockage, en fonction de son remplissage (aspect contenant ) et des données reçues (aspect contenu ).  The invention aims in particular to overcome these drawbacks, and therefore to provide a method for optimizing the use of a storage means, as a function of its filling (container aspect) and of the data received (content aspect).

Plus précisément, un objectif de l'invention est de fournir un tel procédé, qui permette de gérer efficacement la commutation d'ensembles de données, tels que des paquets, reçus de façon asynchrone.  More specifically, an object of the invention is to provide such a method, which makes it possible to efficiently manage the switching of data sets, such as packets, received asynchronously.

Un objectif particulier de l'invention est de fournir un tel procédé, qui n'introduise pas de complexité particulière, notamment en terme de câblage et d'exploitation des moyens (FIFO, processeurs, contrôleurs, commutateurs,...) connus et disponibles.  A particular objective of the invention is to provide such a method, which does not introduce any particular complexity, in particular in terms of cabling and exploitation of known and available means (FIFO, processors, controllers, switches, etc.) .

Un autre objectif de l'invention est de fournir un tel procédé, qui n'entraîne pas de surcoût particulier, par rapport aux systèmes de gestion de taux de remplissage d'une FIFO.  Another objective of the invention is to provide such a method, which does not entail any particular additional cost, compared with the filling rate management systems of a FIFO.

Ces objectifs, ainsi que d'autres qui apparaîtront par la suite, sont atteints à l'aide d'un procédé d'optimisation de l'utilisation d'un moyen de stockage, mettant en oeuvre au moins un indicateur de remplissage modifié lorsque l'espace de stockage disponible dans ledit moyen de stockage dépasse au moins un seuil prédéterminé.  These objectives, as well as others which will appear subsequently, are achieved using a method for optimizing the use of a storage means, using at least one filling indicator modified when the storage space available in said storage means exceeds at least a predetermined threshold.

Selon l'invention, ledit indicateur est modifié également lorsque les données contenues dans ledit moyen de stockage remplissent au moins une condition prédéterminée.  According to the invention, said indicator is also modified when the data contained in said storage means meet at least one predetermined condition.

<Desc/Clms Page number 4> <Desc / Clms Page number 4>

Ainsi l'invention repose sur une approche tout à fait nouvelle et inventive de la gestion du remplissage d'un moyen de stockage et de la génération d'indicateurs (en anglais"flags") de remplissage correspondants. En effet, l'invention repose notamment sur la génération d'indicateurs de remplissage d'un moyen de stockage, en fonction d'une part de son remplissage (aspect contenant ) et d'autre part des données stockées (aspect contenu ).  Thus, the invention is based on a completely new and inventive approach to managing the filling of a storage means and the generation of corresponding filling flags. Indeed, the invention is based in particular on the generation of filling indicators for a storage means, as a function of its filling (container aspect) on the one hand and of the stored data (content aspect) on the other hand.

De manière classique, le taux de remplissage d'un moyen de stockage est évalué à l'aide d'un indicateur pouvant prendre une première valeur"vraie" lorsque le moyen de stockage est sensiblement plein, et une deuxième valeur "fausse"dans le cas contraire. Selon l'invention, on prévoit avantageusement qu'un tel indicateur de remplissage puisse prendre la première valeur"vraie", même lorsque le moyen de stockage est sensiblement vide, s'il contient certaines données prédéterminées. Un tel indicateur de remplissage est ainsi associé, de façon nouvelle et inventive, non seulement à une information relative à l'espace disponible dans le moyen de stockage (aspect"contenant") mais aussi à une information relative aux données contenues dans le moyen de stockage (aspect "contenu").  Conventionally, the filling rate of a storage means is evaluated using an indicator which can take a first "true" value when the storage means is substantially full, and a second "false" value in the opposite case. According to the invention, it is advantageously provided that such a filling indicator can take the first "true" value, even when the storage means is substantially empty, if it contains certain predetermined data. Such a filling indicator is thus associated, in a new and inventive manner, not only with information relating to the space available in the storage means ("container" aspect) but also with information relating to the data contained in the means of storage ("content" aspect).

L'invention s'applique particulièrement aux systèmes utilisant des moyens de contrôle du transfert de données entre des mémoires de type FIFO et des mémoires de type RAM, basés sur des techniques de transfert en rafale (en anglais "burst") et en mode pipeline.  The invention is particularly applicable to systems using means for controlling the transfer of data between memories of the FIFO type and memories of the RAM type, based on techniques of transfer in burst (in English "burst") and in pipeline mode. .

Ainsi, même si la quantité d'informations présentes dans une mémoire FIFO est inférieure à un seuil prédéterminé de l'indicateur de remplissage, pour lequel la valeur de l'indicateur est classiquement positionnée à"fausse", il sera possible, selon l'invention, de transférer cette quantité d'information vers un autre moyen de stockage, par exemple une mémoire RAM.  Thus, even if the quantity of information present in a FIFO memory is less than a predetermined threshold of the filling indicator, for which the value of the indicator is conventionally positioned at "false", it will be possible, depending on the invention, to transfer this quantity of information to another storage means, for example a RAM memory.

On notera que cette caractéristique est particulièrement avantageuse lorsque ces informations sont représentatives de la fin d'un paquet. En d'autres termes, une desdites conditions prédéterminées est avantageusement la réception, dans ledit moyen de stockage, d'une information de fin de transmission d'un  It will be noted that this characteristic is particularly advantageous when this information is representative of the end of a packet. In other words, one of said predetermined conditions is advantageously the reception, in said storage means, of information on the end of transmission of a

<Desc/Clms Page number 5><Desc / Clms Page number 5>

ensemble de données.  dataset.

Lesdits ensembles de données peuvent notamment appartenir au groupe comprenant : des paquets ; des unités de protocole ; des trames ; des messages.  Said data sets can in particular belong to the group comprising: packets; protocol units; frames; messages.

Comme déjà mentionné, l'invention trouve notamment une application avantageuse dans le cas où ledit moyen de stockage comprend au moins une mémoire de type FIFO, et en particulier lorsque la ou lesdites mémoires FIFO sont associées à des ports d'entrée de moyen de commutation.  As already mentioned, the invention finds in particular an advantageous application in the case where said storage means comprises at least one memory of the FIFO type, and in particular when the said FIFO memory or memories are associated with input ports of switching means .

De façon avantageuse, la modification de ladite valeur entraîne le transfert

Figure img00050001

d'au moins une partie desdites données contenues dans ledit moyen de stockage. Advantageously, the modification of said value results in the transfer
Figure img00050001

at least part of said data contained in said storage means.

Selon un mode de réalisation préférentiel de l'invention, ledit transfert est activé par des moyens de contrôle de logique en cascade (en anglais"pipelined logic").  According to a preferred embodiment of the invention, said transfer is activated by means of cascade logic control (in English "pipelined logic").

Avantageusement, dans ce cas, la valeur dudit indicateur est fonction d'un temps de réaction desdits moyens de contrôle.  Advantageously, in this case, the value of said indicator is a function of a reaction time of said control means.

Selon un aspect préférentiel de l'invention, la valeur dudit indicateur est également modifiée lorsque ledit moyen de stockage est presque plein (en anglais"almost full"), de façon connue en soi.  According to a preferred aspect of the invention, the value of said indicator is also modified when said storage means is almost full (in English "almost full"), in a manner known per se.

Notamment, la valeur dudit indicateur est modifiée lorsque le taux de remplissage dudit moyen de stockage est supérieur à N-x, où : N représente la taille dudit moyen de stockage ; x représente la profondeur du pipeline, ledit transfert reposant sur une logique en cascade.  In particular, the value of said indicator is modified when the filling rate of said storage means is greater than N-x, where: N represents the size of said storage means; x represents the depth of the pipeline, said transfer being based on a cascade logic.

Selon un mode de réalisation avantageux de l'invention, le procédé comprend les étapes suivantes : surveillance du taux de remplissage dudit moyen de stockage ; modification de la valeur dudit indicateur si lesdites données  According to an advantageous embodiment of the invention, the method comprises the following steps: monitoring the filling rate of said storage means; modification of the value of said indicator if said data

<Desc/Clms Page number 6><Desc / Clms Page number 6>

alimentant le moyen de stockage remplissent au moins une condition prédéterminée ; prise en compte de ladite modification de ladite valeur, entraînant un transfert d'au moins une partie des données contenues dans ledit moyen de stockage.  supplying the storage means meet at least one predetermined condition; taking into account of said modification of said value, resulting in a transfer of at least part of the data contained in said storage means.

Avantageusement, lorsque l'invention est mise en oeuvre dans un dispositif comprenant au moins deux moyens de stockage tels que présentés ci-dessus, tel que, par exemple, un noeud de commutation, le procédé comprend une étape de transfert de données entre deux moyens de stockage selon un mode combinant les techniques de transfert en rafale et en pipeline en fonction la valeur dudit indicateur.  Advantageously, when the invention is implemented in a device comprising at least two storage means as presented above, such as, for example, a switching node, the method comprises a step of transferring data between two means storage in a mode combining burst and pipeline transfer techniques depending on the value of said indicator.

L'invention concerne également les dispositifs d'optimisation de l'utilisation d'un moyen de stockage mettant en oeuvre le procédé décrit ci-dessus, ainsi que les dispositifs de commutation comprenant un (ou plusieurs) tel dispositif d'optimisation. The invention also relates to devices for optimizing the use of a storage means implementing the method described above, as well as switching devices comprising one (or more) such an optimization device.

L'invention concerne également un signal mis en oeuvre par ce procédé, ce signal étant représentatif d'un indicateur de remplissage d'un moyen de stockage pouvant véhiculer au moins deux valeurs distinctes, au moins une première valeur associée à un état sensiblement vide dudit moyen de stockage, et au moins une deuxième valeur associée à un état sensiblement plein dudit moyen de stockage, et prenant également ladite deuxième valeur lorsque les données contenues dans ledit moyen de stockage remplissent au moins une condition prédéterminée.  The invention also relates to a signal implemented by this method, this signal being representative of an indicator for filling a storage means capable of conveying at least two distinct values, at least one first value associated with a substantially empty state of said storage means, and at least a second value associated with a substantially full state of said storage means, and also taking said second value when the data contained in said storage means meet at least one predetermined condition.

L'invention concerne encore les noeuds de commutation comprenant au moins deux moyens de stockage et un moyen de transfert entre au moins deux desdits moyens de stockage, et des moyens de génération d'au moins un indicateur de remplissage, et des moyens de modification de la valeur dudit indicateur lorsque l'espace de stockage disponible dans au moins un desdits moyens de stockage dépasse au moins un seuil prédéterminé, et comprenant en outre des moyens de modification de la valeur dudit indicateur lorsque les données contenues dans ledit moyen de stockage remplissent au moins une condition  The invention also relates to the switching nodes comprising at least two storage means and a transfer means between at least two of said storage means, and means for generating at least one filling indicator, and means for modifying the value of said indicator when the storage space available in at least one of said storage means exceeds at least a predetermined threshold, and further comprising means for modifying the value of said indicator when the data contained in said storage means fill in the minus one condition

<Desc/Clms Page number 7><Desc / Clms Page number 7>

prédéterminée.  predetermined.

De façon avantageuse, un tel noeud comprend un moyen de contrôle activant le transfert de données entre deux desdits moyens de stockage selon un mode combinant les techniques de transfert en rafale et en pipeline selon la valeur dudit indicateur.  Advantageously, such a node comprises a control means activating the transfer of data between two of said storage means according to a mode combining the techniques of burst and pipeline transfer according to the value of said indicator.

Par ailleurs, bien sûr, un tel noeud comprend avantageusement au moins un dispositif d'optimisation de l'utilisation d'un moyen de stockage tel que décrit cidessus.  Furthermore, of course, such a node advantageously comprises at least one device for optimizing the use of a storage means as described above.

Enfin, l'invention concerne les différentes applications du procédé, des dispositifs, du signal et du noeud de commutation présentés ci-dessus, et notamment les applications à l'un au moins des domaines appartenant au groupe comprenant : la commutation à haut débit ;

Figure img00070001

la transmission de données numériques ; la réception de données numériques ; les applications audio ; la transmission d'images en temps réel. Finally, the invention relates to the various applications of the method, the devices, the signal and the switching node presented above, and in particular the applications to at least one of the fields belonging to the group comprising: high-speed switching;
Figure img00070001

transmission of digital data; reception of digital data; audio applications; real-time image transmission.

D'autres caractéristiques et avantages de l'invention apparaîtront plus clairement à la lecture de la description suivante d'un mode de réalisation préférentiel, donné à titre de simple exemple illustratif et non limitatif, et des dessins annexés, parmi lesquels : - la figure 1 présente un synoptique des différentes étapes mises en oeuvre selon l'invention lors de la réception, par un moyen de stockage, de données remplissant au moins une condition prédéterminée ; - la figure 2 illustre un exemple de réalisation d'un dispositif de génération d'un indicateur de remplissage mis en oeuvre selon le procédé de la figure
1 ; - les figures 3 à 9 décrivent un exemple de mise en oeuvre de l'invention dans le cadre d'un système de commutation à haut débit destiné à des applications domestiques. Plus précisément, la figure 3 illustre
Other characteristics and advantages of the invention will appear more clearly on reading the following description of a preferred embodiment, given by way of simple illustrative and nonlimiting example, and of the appended drawings, among which: - the figure 1 presents a block diagram of the various steps implemented according to the invention during the reception, by a storage means, of data fulfilling at least one predetermined condition; - Figure 2 illustrates an exemplary embodiment of a device for generating a filling indicator implemented according to the method of Figure
1; - Figures 3 to 9 describe an example of implementation of the invention in the context of a high speed switching system for domestic applications. More specifically, Figure 3 illustrates

<Desc/Clms Page number 8><Desc / Clms Page number 8>

l'architecture générale d'un tel système de commutation à haut débit. La figure 4 présente les différents dispositifs connectés au commutateur d'un tel système. La figure 5 illustre l'architecture interne du commutateur. Les figures 6 et 7 décrivent plus en détails l'architecture d'un bloc dit 0-FIFO d'un tel commutateur. Enfin les figures 8 et 9 illustrent des éléments particuliers du bloc 0-FIFO.  the general architecture of such a broadband switching system. Figure 4 shows the different devices connected to the switch of such a system. Figure 5 illustrates the internal architecture of the switch. Figures 6 and 7 describe in more detail the architecture of a so-called 0-FIFO block of such a switch. Finally, Figures 8 and 9 illustrate specific elements of the 0-FIFO block.

Le principe général de l'invention repose sur la génération d'un indicateur de remplissage d'un moyen de stockage qui soit significatif, simultanément, d'informations relatives au"contenant", et au"contenu"de ce moyen de stockage.  The general principle of the invention is based on the generation of an indicator for filling a storage means which is significant, simultaneously, with information relating to the "container" and to the "content" of this storage means.

On présente, en relation avec la figure 1, les étapes mises en oeuvre selon l'invention lors de la réception, dans un moyen de stockage, de données remplissant une condition prédéterminée.  The steps implemented according to the invention are presented in relation to FIG. 1 during the reception, in a storage means, of data fulfilling a predetermined condition.

On considère un moyen de stockage de type FIFO (en anglais"First In First Out"), qui est initialement dans un état sensiblement vide. La valeur d'un indicateur de remplissage de cette FIFO est alors positionnée (311) à"fausse". Au fur et à mesure de la réception de données alimentant le moyen de stockage, on surveille (312) le taux de remplissage de la FIFO.  Consider a FIFO type storage means (in English "First In First Out"), which is initially in a substantially empty state. The value of a filling indicator for this FIFO is then positioned (311) at "false". As data is received supplying the storage means, the filling rate of the FIFO is monitored (312).

Lors de la réception de données par la FIFO, on vérifie (313) en outre si ces données remplissent au moins une condition prédéterminée. Une telle condition, selon un mode de réalisation préféré de l'invention, est vérifiée si les données reçues constituent la fin d'un ensemble de données. Par exemple, lors d'une transmission en mode"burst", les données vérifient une telle condition si elles constituent une fin de paquet.  Upon reception of data by the FIFO, it is further checked (313) whether these data meet at least one predetermined condition. Such a condition, according to a preferred embodiment of the invention, is verified if the data received constitute the end of a set of data. For example, during a transmission in burst mode, the data checks such a condition if it constitutes an end of packet.

Si les données reçues par la FIFO vérifient la ou les conditions prédéterminées, l'indicateur de remplissage de la FIFO prend alors (314) la valeur "vraie". Dans le cas contraire, on continue à surveiller (312) le taux de remplissage de la FIFO, et, selon un processus classique non illustré sur la figure 1, l'indicateur de remplissage de la FIFO prend la valeur"vraie"lorsque le taux de remplissage de la FIFO est supérieur à un seuil prédéterminé.  If the data received by the FIFO satisfy the predetermined condition or conditions, the FIFO filling indicator then takes (314) the value "true". Otherwise, the FIFO filling rate is continued to be monitored (312), and, according to a conventional process not illustrated in FIG. 1, the FIFO filling indicator takes the value "true" when the rate FIFO filling level is greater than a predetermined threshold.

Lorsque la valeur de l'indicateur de remplissage de la FIFO est positionnée  When the value of the FIFO filling indicator is set

<Desc/Clms Page number 9><Desc / Clms Page number 9>

à"vraie", on procède alors au transfert (315) d'au moins une partie des données contenues dans la FIFO vers un élément destinataire. Un tel élément destinataire peut être par exemple une DPRAM (en anglais"Dual Port Random Access Memory").  to "true", one then proceeds to the transfer (315) of at least part of the data contained in the FIFO to a recipient element. Such a recipient element can for example be a DPRAM (in English "Dual Port Random Access Memory").

On présente désormais, en relation avec la figure 2, un exemple de réalisation d'un dispositif de génération d'un indicateur de remplissage d'un moyen de stockage mis en oeuvre selon le procédé de la figure 1.  We now present, in relation to FIG. 2, an exemplary embodiment of a device for generating an indicator for filling a storage means implemented according to the method of FIG. 1.

Un tel dispositif comprend un premier module 221 de détection de fin de paquet dans la FIFO. Un tel module 221 permet de détecter la présence de la fin d'un ensemble de données (de type paquet ou message par exemple) dans la FIFO.  Such a device comprises a first module 221 for detecting the end of a packet in the FIFO. Such a module 221 makes it possible to detect the presence of the end of a set of data (of packet or message type for example) in the FIFO.

Un tel module 221 est alimenté par des signaux de contrôle et de données 220, et génère un indicateur 224 Eop~in~fifo, qui prend une première valeur"vraie" lorsque la fin d'un paquet est présente dans la FIFO, et qui prend une seconde valeur"fausse"sinon. Such a module 221 is supplied by control and data signals 220, and generates an indicator 224 Eop ~ in ~ fifo, which takes a first "true" value when the end of a packet is present in the FIFO, and which takes a second "false" value otherwise.

Le dispositif de la figure 2 comprend également un deuxième module 222 de contrôle de la FIFO, alimenté par des signaux de contrôle et de données 220, et qui génère un indicateur 223 de remplissage de la FIFO, appelé Almostfull. Un tel indicateur 223 prend au moins deux valeurs distinctes indicatives du taux de remplissage de la FIFO.  The device of FIG. 2 also includes a second FIFO control module 222, supplied with control and data signals 220, and which generates an indicator 223 of FIFO filling, called Almostfull. Such an indicator 223 takes at least two distinct values indicative of the filling rate of the FIFO.

Par exemple, selon un mode de réalisation préféré de l'invention mettant en oeuvre une logique en cascade (en anglais"pipelined logic"), l'indicateur 223 est un indicateur binaire prenant la valeur"vraie"lorsque le taux de remplissage de la FIFO est supérieur à un seuil prédéterminé (c'est-à-dire lorsque la FIFO est sensiblement pleine) et la valeur"faux"lorsque ce taux est inférieur au seuil prédéterminé (c'est-à-dire lorsque la FIFO n'est pas sensiblement pleine). Ce seuil prédéterminé vaut N-x, où la valeur x représente alors le nombre de cycles d'horloge nécessaires à la logique en cascade pour réagir à un événement donné, et où N est la taille de la FIFO, par exemple N=16.  For example, according to a preferred embodiment of the invention implementing a cascaded logic (in English "pipelined logic"), the indicator 223 is a binary indicator taking the value "true" when the filling rate of the FIFO is greater than a predetermined threshold (that is to say when the FIFO is substantially full) and the value "false" when this rate is less than the predetermined threshold (that is to say when the FIFO is not not substantially full). This predetermined threshold is worth N-x, where the value x then represents the number of clock cycles necessary for the cascade logic to react to a given event, and where N is the size of the FIFO, for example N = 16.

Le dispositif de la figure 2 comprend encore un module 225, alimenté par les indicateurs Eopinfifo 224 et Almostfull 223, et générant un troisième  The device of FIG. 2 also includes a module 225, powered by the indicators Eopinfifo 224 and Almostfull 223, and generating a third

<Desc/Clms Page number 10><Desc / Clms Page number 10>

indicateur Almostfull 226. Un tel module 225 réalise donc un OU logique des indicateurs entrant 223 et 224 pour délivrer l'indicateur final de remplissage de la FIFO 226. Un tel indicateur 226 permet ainsi de déclencher le transfert de données contenues dans la FIFO vers un élément destinataire, d'une part lorsque la FIFO est pleine (valeur de l'indicateur Almostfull 223"vraie"), et d'autre part lorsqu'elle contient une fin de paquet (valeur de l'indicateur Eopinfifo 224 "vraie").  Almostfull indicator 226. Such a module 225 therefore performs a logical OR of the incoming indicators 223 and 224 to deliver the final indicator for filling the FIFO 226. Such an indicator 226 thus makes it possible to trigger the transfer of data contained in the FIFO to a recipient element, on the one hand when the FIFO is full (value of the Almostfull 223 indicator "true"), and on the other hand when it contains an end of packet (value of the Eopinfifo indicator 224 "true") .

Ainsi, selon l'invention, même si la mémoire FIFO n'est pas"presque pleine"et ne contient que l'information représentative d'une fin de paquet, celle-ci pourra néanmoins, et de manière simple, être transférée vers une mémoire RAM par exemple.  Thus, according to the invention, even if the FIFO memory is not "almost full" and contains only the information representative of an end of packet, this can nevertheless, and in a simple manner, be transferred to a RAM memory for example.

Le procédé de la figure 1 et le dispositif de la figure 2 trouvent des applications dans de nombreux domaines, et s'appliquent notamment dans le cadre de : la commutation à haut débit ; la transmission et/ou la réception de données numériques ; les applications audio ; la transmission d'images en temps réel.  The method of FIG. 1 and the device of FIG. 2 find applications in numerous fields, and apply in particular in the context of: high-speed switching; transmission and / or reception of digital data; audio applications; real-time image transmission.

Un domaine d'application préférentiel de l'invention est celui des applications domestiques pour les transferts à haut débit, mais il est bien entendu que l'invention pourra être mise en oeuvre dans tout système nécessitant le transfert d'informations, et notamment le transfert de paquets selon un mode pipeline. Nous décrirons par la suite un exemple de système mettant en oeuvre l'invention, utilisé pour interconnecter une pluralité de dispositifs audio, vidéo, ou pour transférer des informations du type des informations transférées entre un ordinateur et une imprimante, un scanner ou un appareil photo numérique.  A preferred field of application of the invention is that of domestic applications for broadband transfers, but it is understood that the invention can be implemented in any system requiring the transfer of information, and in particular the transfer packets in a pipeline mode. We will describe below an example of a system implementing the invention, used to interconnect a plurality of audio and video devices, or to transfer information of the type of information transferred between a computer and a printer, scanner or camera. digital.

L'invention s'applique bien sûr également à tout autre type de système dans lequel il est avantageux d'optimiser le remplissage d'un moyen de stockage, et le transfert de données correspondant de ce moyen de stockage vers un élément destinataire.  The invention is of course also applicable to any other type of system in which it is advantageous to optimize the filling of a storage means, and the corresponding data transfer from this storage means to a recipient element.

<Desc/Clms Page number 11> <Desc / Clms Page number 11>

On a déjà développé les normes IEEE 1394 et IEEE 1355 adaptées respectivement aux communications série et aux communications point à point.  We have already developed the IEEE 1394 and IEEE 1355 standards suitable for serial communications and point-to-point communications respectively.

Le système présenté dans la suite du document est un réseau fédérateur à paquets commutés permettant d'atteindre des capacités de transmission élevées (typiquement de l'ordre du Gbit), et répondant au besoin important d'interfaçage des deux types de norme ci-dessus. The system presented in the rest of the document is a backbone network with switched packets making it possible to achieve high transmission capacities (typically of the order of Gbit), and responding to the significant need for interfacing of the two types of standard above. .

La figure 3 présente un synoptique d'un noeud de commutation 90 connecté à deux bus de communication série conformes aux normes IEEE 1394 et IEEE1355.  FIG. 3 shows a block diagram of a switching node 90 connected to two serial communication buses conforming to the IEEE 1394 and IEEE1355 standards.

Le noeud représenté à la figure 3 est également connecté à un ou plusieurs autres noeuds de commutation du réseau commuté auquel il appartient.  The node shown in Figure 3 is also connected to one or more other switching nodes of the switched network to which it belongs.

Dans le mode de réalisation représenté sur la figure 3, on a choisi de représenter un appareil de traitement de données 92, également appelé périphérique, qui est associé au dispositif de commutation 90.  In the embodiment shown in FIG. 3, it has been chosen to represent a data processing apparatus 92, also called a peripheral, which is associated with the switching device 90.

Un noeud de commutation comprend : un dispositif de commutation 90 ; et un appareil de traitement de données 92 associé audit dispositif.  A switching node includes: a switching device 90; and a data processing apparatus 92 associated with said device.

A titre de variante, l'appareil de traitement de données peut lui-même constituer ou comprendre le dispositif de commutation 90.  As a variant, the data processing device can itself constitute or include the switching device 90.

Le dispositif 90 comprend : - une unité centrale de traitement CPU 93 ; - un moyen de stockage permanent 94 de type ROM ; et - un moyen de stockage temporaire 95 de type RAM, associé à l'unité centrale 93, et dans lequel est chargée une architecture logicielle à l'initialisation.  The device 90 comprises: a central processing unit CPU 93; - A permanent storage means 94 of ROM type; and - a temporary storage means 95 of RAM type, associated with the central unit 93, and in which a software architecture is loaded upon initialization.

Le moyen de stockage 95 est apte à stocker des paquets de données de différents types, notamment : - des paquets asynchrones du type conforme à la norme IEEE 1394 ; des paquets constituant des messages en mode non connecté (asynchrones), du type conforme à la norme IEEE 1355 ;  The storage means 95 is able to store data packets of different types, in particular: - asynchronous packets of the type conforming to the IEEE 1394 standard; packets constituting messages in unconnected mode (asynchronous), of the type conforming to the IEEE 1355 standard;

<Desc/Clms Page number 12><Desc / Clms Page number 12>

- des paquets de contrôle du type conforme à la norme IEEE 1355 ; - des paquets stream (isochrones) du type conforme à la norme
IEEE 1355.
- control packets of the type conforming to the IEEE 1355 standard; - stream (isochronous) packets of the type conforming to the standard
IEEE 1355.

Les paquets de type conforme à la norme IEEE 1355 ont réellement une existence au niveau du composant 104 qui sera mentionné ultérieurement mais ils ne sont pas stockés sous cette forme dans le moyen de stockage RAM 95. On notera que le moyen de stockage 95 contient les informations nécessaires pour générer les paquets IEEE 1355.  The packets of the type conforming to the IEEE 1355 standard actually exist at the level of component 104 which will be mentioned later but they are not stored in this form in the RAM storage means 95. It will be noted that the storage means 95 contains the information needed to generate IEEE 1355 packets.

Le cheminement de tels paquets jusqu'au moyen de stockage 95, provenant soit du bus 1394 soit du réseau commuté constitué de liens IEEE 1355 sera détaillé ultérieurement.  The routing of such packets to the storage means 95, coming either from the bus 1394 or from the switched network consisting of IEEE 1355 links will be detailed later.

Le cheminement de tels paquets, depuis le moyen de stockage 95 jusqu'à leur transmission par le noeud de commutation, soit en direction du bus IEEE1394, soit en direction du réseau commuté constitué de liens IEEE 1355 sera détaillé ultérieurement.  The routing of such packets, from the storage means 95 to their transmission by the switching node, either in the direction of the IEEE1394 bus, or in the direction of the switched network consisting of IEEE 1355 links will be detailed later.

Ces trois éléments 93,94 et 95 communiquent au moyen de bus d'adresses et de données respectifs notés 96,97 et 98, avec un bloc noté 99 et connu de l'homme du métier sous le nom de contrôleur de bus.  These three elements 93, 94 and 95 communicate by means of respective address and data buses denoted 96, 97 and 98, with a block denoted 99 and known to those skilled in the art under the name of bus controller.

Ce bloc 99 permet notamment d'échanger des données au moyen d'un bus principal 100 avec au moins un composant d'interface de bus 101. Dans le cas où le bus 100 est un bus standard PCI (PCI signifiant en terminologie anglo-saxonne "Peripheral Component Interconnect"), le composant 101 peut être un composant dénommé AMCC 5933QC commercialisé par la société APPLIED MICRO CIRCUITS CORPORATION (Marque déposée).  This block 99 makes it possible in particular to exchange data by means of a main bus 100 with at least one bus interface component 101. In the case where the bus 100 is a standard PCI bus (PCI meaning in English terminology "Peripheral Component Interconnect"), component 101 can be a component called AMCC 5933QC sold by the company APPLIED MICRO CIRCUITS CORPORATION (Registered trademark).

Le bus 100 peut également connecter entre eux d'autres éléments, non représentés sur la figure 1, eux-mêmes pourvus d'une interface de bus et pouvant mettre en oeuvre, par exemple, des fonctions de traitement de données.  The bus 100 can also connect other elements, not shown in FIG. 1, to each other, themselves provided with a bus interface and capable of implementing, for example, data processing functions.

Par exemple, dans un cas où le bus 100 est un bus standard PCI, le bloc 99 est en fait un ensemble de composants PCI tel que l'ensemble Intel 440LX AGP ("Intel 440LX AGPset"dans la terminologie anglo-saxonne) commercialisé par la  For example, in a case where the bus 100 is a standard PCI bus, the block 99 is in fact a set of PCI components such as the set Intel 440LX AGP ("Intel 440LX AGPset" in English terminology) marketed by the

<Desc/Clms Page number 13><Desc / Clms Page number 13>

société INTEL (Marque déposée).  INTEL company (registered trademark).

Ainsi, le bloc 99 comprend, par exemple, un composant 82443LX qui assure l'interface avec la mémoire 95 via le bus mémoire 98 et avec l'unité centrale de traitement CPU 93 via le bus local 96. Le composant 82443LX est luimême relié à un composant 82371AB qui fournit une interface avec le bus ISA 97 relié à la mémoire 94. Un contrôleur d'interruption IOAPIC Intel 82093AA connecté à l'unité centrale de traitement CPU 93 gère les interruptions pouvant survenir dans le système.  Thus, the block 99 comprises, for example, a component 82443LX which provides the interface with the memory 95 via the memory bus 98 and with the central processing unit CPU 93 via the local bus 96. The component 82443LX is itself connected to a component 82371AB which provides an interface with the ISA bus 97 connected to the memory 94. An IOAPIC interrupt controller Intel 82093AA connected to the central processing unit CPU 93 manages the interrupts that may occur in the system.

Comme représenté sur la figure 1, le dispositif 90 comporte également une interface de bus 102 qui peut être similaire à l'interface de bus 101 permettant ainsi à l'appareil de traitement de données ou périphérique 92 d'accéder au dispositif de communication.  As shown in FIG. 1, the device 90 also includes a bus interface 102 which can be similar to the bus interface 101 thus allowing the data processing apparatus or peripheral 92 to access the communication device.

Une telle interface est par exemple réalisée sous la forme d'une carte SEDNET PCI commercialisée par la société SEDERTA (Marque déposée) sous la référence SD-PCI-200 et permet d'y connecter n'importe quel appareil de traitement de données existant, conçu pour fonctionner en conformité avec la norme 1394.  Such an interface is for example produced in the form of a SEDNET PCI card sold by the company SEDERTA (registered trademark) under the reference SD-PCI-200 and allows any existing data processing device to be connected to it, designed to operate in accordance with standard 1394.

Il est bien entendu possible d'utiliser un adaptateur 102 spécifique à l'appareil de traitement de données que l'on souhaite y connecter. L'adaptateur 102 comprend essentiellement un composant d'interface similaire au composant d'interface de bus 101.  It is of course possible to use an adapter 102 specific to the data processing device that one wishes to connect to it. The adapter 102 essentially comprises an interface component similar to the bus interface component 101.

Selon le type d'appareil de traitement de données, le bus principal 100, ainsi que les composants d'interface de bus 101 et contrôleur de bus 99 peuvent être adaptés en fonction de l'architecture du type de l'appareil. Il en est de même pour l'ensemble des éléments CPU 93, RAM 95 et ROM 94.  Depending on the type of data processing device, the main bus 100, as well as the bus interface components 101 and bus controller 99 can be adapted according to the architecture of the type of the device. The same is true for all of the elements CPU 93, RAM 95 and ROM 94.

Comme représenté sur la figure 3, le noeud selon l'invention comporte également deux moyens d'interfaçage 103 et 104.  As shown in FIG. 3, the node according to the invention also comprises two interfacing means 103 and 104.

Le moyen 103 est destiné à assurer l'interface entre le noeud 90 et le bus de communication série prévu pour fonctionner selon la norme IEEE 1394 auquel est rattaché ledit noeud.  The means 103 is intended to provide the interface between the node 90 and the serial communication bus intended to operate according to the IEEE 1394 standard to which the said node is attached.

<Desc/Clms Page number 14> <Desc / Clms Page number 14>

Le moyen d'interfaçage 103 est un ensemble de composants PHY/LINK 1394 qui est par exemple constitué d'un composant PHY TSB21LV03A et d'un composant LINK TSB12LV01A commercialisés par la société TEXAS INSTRUMENT (Marque déposée) et de connecteurs 1394, par exemple commercialisés par la société MOLEX (Marque déposée), par exemple sous la référence 53462.  The interfacing means 103 is a set of PHY / LINK 1394 components which for example consists of a PHY component TSB21LV03A and a LINK component TSB12LV01A sold by the company TEXAS INSTRUMENT (Registered trademark) and of connectors 1394, for example marketed by the company MOLEX (registered trademark), for example under the reference 53462.

Le moyen d'interfaçage 103 comporte au moins un port externe destiné à être connecté à un appareil de traitement de données ou périphérique qui est rattaché au bus de communication série 1394.  The interfacing means 103 comprises at least one external port intended to be connected to a data processing device or peripheral which is attached to the serial communication bus 1394.

Le moyen 103 comporte des moyens de comptage du nombre d'impulsions en fonction d'un signal d'horloge généré par un module de contrôle 107, qui sera défini ultérieurement. Ce signal d'horloge est synchronisé avec le"Maître de cycle"du bus de communication série avec lequel il est en relation, par l'intermédiaire des paquets de début de cycle, appelés"Cycle Start packet"en terminologie anglo-saxonne. La fréquence du signal d'horloge généré par le module de contrôle107 est égale à 24,576 MHz +/-100 ppm. Ce signal est représenté comme étant l'un des signaux notés ctrl3 sur la figure 3.  The means 103 includes means for counting the number of pulses as a function of a clock signal generated by a control module 107, which will be defined later. This clock signal is synchronized with the "Cycle master" of the serial communication bus with which it is in contact, via the start of cycle packets, called "Cycle Start packet" in English terminology. The frequency of the clock signal generated by the control module 107 is equal to 24.576 MHz +/- 100 ppm. This signal is represented as being one of the signals denoted ctrl3 in FIG. 3.

Sur chaque bus de communication série du réseau, l'un des noeuds est appelé"Maître de cycle" ("Cycle Master"en terminologie anglo-saxonne) et le noeud"Maître de cycle"du bus"racine"est appelé"Maître de cycle du réseau" ("Net Cycle Master"en terminologie anglo-saxonne).  On each serial communication bus of the network, one of the nodes is called "Cycle Master" ("Cycle Master" in English terminology) and the "Cycle Master" node of the "root" bus is called "Master of network cycle "(" Net Cycle Master "in English terminology).

En outre, tous les noeuds"Maîtres de cycle"du réseau présentent une caractéristique qui leur est propre, puisqu'elle dépend de la fréquence de leur horloge interne, à partir de laquelle est définie la durée d'une"période de référence"ou"cycle".  In addition, all the "Cycle Masters" nodes of the network have their own characteristic, since it depends on the frequency of their internal clock, from which the duration of a "reference period" is defined or "cycle".

La durée du cycle notée T est égale à un nombre entier nimt d'impulsions d'horloge, commun ou non à tous les bus, et qui est multiplié par l'inverse de la fréquence de l'horloge interne propre au noeud"Maître de cycle".  The duration of the cycle noted T is equal to an integer number of clock pulses, common or not to all the buses, and which is multiplied by the inverse of the frequency of the internal clock specific to the "Master of cycle".

La durée du cycle T est ainsi, par exemple, égale à 125 microsecondes.  The duration of the cycle T is thus, for example, equal to 125 microseconds.

Lorsque deux bus de communication série sont reliés par un pont, le  When two serial communication buses are connected by a bridge, the

<Desc/Clms Page number 15><Desc / Clms Page number 15>

"Maître de cycle"de l'un des bus doit synchroniser ses cycles par rapport aux cycles générés par le"Maître de cycle"du bus adjacent.  "Cycle master" of one of the buses must synchronize its cycles with the cycles generated by the "Cycle master" of the adjacent bus.

D'une manière générale, les réseaux de communication formés de bus de communication série permettent la transmission de paquets synchronisée à partir des cycles de bus considérés. Les bus sont par exemple utilisés pour transmettre des paquets de données en temps réel du type audio/vidéo.  In general, communication networks made up of serial communication buses allow synchronized packet transmission from the bus cycles considered. Buses are for example used to transmit data packets in real time of the audio / video type.

Les moyens de comptage comme ceux du moyen d'interfaçage 103 cité plus haut se présentent par exemple sous la forme d'un registre.  The counting means such as those of the interfacing means 103 mentioned above are for example in the form of a register.

Le moyen d'interfaçage 104 mentionné ci-dessus est un composant d'interface IEEE 1355 qui comporte trois ports. Il comprend notamment un composant Cl 13 commercialisé par la société 4LINKS ainsi que trois composants d'interface LUC1141MK commercialisés par la société LUCENT (Marque déposée), eux-mêmes reliés à des connecteurs IEEE 1355, par exemple commercialisés par la société HARTING (Marque déposée). Le composant CI 13 est lui-même réalisé sur la base d'un composant programmable de type FPGA ("Field Programmable Gate Array"en terminologie anglo-saxonne) Spartan XCS30XL, commercialisé par la société XILINX (Marque déposée).  The interface means 104 mentioned above is an IEEE 1355 interface component which has three ports. It notably includes a Cl 13 component sold by the company 4LINKS as well as three LUC1141MK interface components sold by the company LUCENT (Registered trademark), themselves connected to IEEE 1355 connectors, for example marketed by the company HARTING (Registered trademark ). The CI 13 component is itself produced on the basis of a programmable component of FPGA type ("Field Programmable Gate Array" in English terminology) Spartan XCS30XL, marketed by the company XILINX (registered trademark).

Les initiales FPGA correspondent approximativement en français à "Matrice de Portes Programmables".  The initials FPGA correspond approximately in French to "Matrix of Programmable Doors".

Les trois ports externes du moyen d'interfaçage 104 sont destinés à être connectés à des ports de même type sur un autre noeud de commutation du réseau commuté, permettant ainsi au dispositif 90 de communiquer avec un autre noeud de ce réseau.  The three external ports of the interfacing means 104 are intended to be connected to ports of the same type on another switching node of the switched network, thus allowing the device 90 to communicate with another node of this network.

Le dispositif 90 comporte également un moyen de contrôle de flux de données 105 qui permet le transfert des données entre les différents composants d'interface 101,103 et 104. Ce moyen 105 est réalisé en logique programmable, exécuté par un composant de type FPGA, par exemple de référence VIRTEX, commercialisé par la société XILINX.  The device 90 also includes a data flow control means 105 which allows the transfer of data between the different interface components 101, 103 and 104. This means 105 is produced in programmable logic, executed by a component of FPGA type, for example of reference VIRTEX, marketed by the company XILINX.

Ce moyen 105 met en oeuvre notamment une unité de mémorisation à double port 106 qui permet de stocker des données à destination de, ou provenant  This means 105 implements in particular a dual port storage unit 106 which makes it possible to store data intended for, or coming from

<Desc/Clms Page number 16><Desc / Clms Page number 16>

du réseau commuté 1355.  from the switched network 1355.

L'unité de mémorisation à double port possède une capacité de stockage inférieure à 2 Mbits et est, par exemple, réalisée sous la forme d'une mémoire de type DPRAM à accès 32 bits.  The dual-port storage unit has a storage capacity of less than 2 Mbits and is, for example, produced in the form of a DPRAM type memory with 32-bit access.

Les initiales DPRAM signifient en terminologie anglo-saxonne"Dual Port Random Access Memory"ce qui peut être approximativement traduit en langue française par"Mémoire volatile à double port".  The initials DPRAM mean in Anglo-Saxon terminology "Dual Port Random Access Memory" which can be roughly translated into French by "volatile memory with double port".

L'unité de mémorisation 106 comporte une pluralité de zones mémoires qui sont gérées comme des mémoires individuelles de type FIFO, initiales des termes anglais"First-in First-out"signifiant en français"Premier entré Premier sorti".  The storage unit 106 includes a plurality of memory areas which are managed as individual FIFO type memories, initials of the English terms "First-in First-out" meaning in French "First in First out".

Une telle zone mémoire correspond à une mémoire dans laquelle les données sont lues dans l'ordre dans lequel elles ont été préalablement écrites.  Such a memory zone corresponds to a memory in which the data are read in the order in which they have been previously written.

Ces zones mémoires comportent chacune un pointeur de lecture et un pointeur d'écriture associés.  These memory areas each have an associated read pointer and write pointer.

Chaque zone mémoire étant gérée comme une mémoire de type FIFO, son remplissage et son vidage peuvent s'effectuer en même temps, et de manière indépendante. Ceci permet de désynchroniser les opérations de lecture et d'écriture des données, effectuées par une unité de commutation 108 qui sera définie ultérieurement, des opérations de lecture et d'écriture des données, effectuées par le module de contrôle 107.  Each memory area being managed as a FIFO type memory, its filling and emptying can be carried out at the same time, and independently. This makes it possible to desynchronize the operations for reading and writing the data, carried out by a switching unit 108 which will be defined later, for the operations for reading and writing the data, carried out by the control module 107.

En effet, le taux d'occupation de la zone mémoire considérée est géré de manière circulaire et l'on sait à tout moment si les données contenues dans une zone mémoire ont été lues ou non. Lorsque ces données ont été lues, il est alors possible de venir écrire de nouvelles données à la place de celles-ci.  In fact, the occupancy rate of the memory area considered is managed in a circular manner and it is known at all times whether the data contained in a memory area has been read or not. When these data have been read, it is then possible to come and write new data in place of these.

L'unité de mémorisation à double port constitue en quelque sorte une file d'attente pour les paquets, et la fonction de stockage est réalisée de manière indépendante, selon le port par lequel les paquets parviennent à l'unité de mémorisation.  The dual port storage unit somehow forms a queue for packets, and the storage function is performed independently, depending on the port through which the packets arrive at the storage unit.

D'une manière générale, toutes les données isochrones ou asynchrones  Generally, all isochronous or asynchronous data

<Desc/Clms Page number 17><Desc / Clms Page number 17>

provenant du réseau commuté sont stockées dans l'unité de mémorisation 106.  from the switched network are stored in the storage unit 106.

Ce stockage est temporaire pour les paquets de données asynchrones (paquets constituant un message transmis en mode non connecté) et pour les paquets de contrôle, qui sont amenés à être transférés ensuite dans le moyen de stockage RAM 95 pour un stockage d'une durée plus importante.  This storage is temporary for the asynchronous data packets (packets constituting a message transmitted in unconnected mode) and for the control packets, which are caused to be then transferred to the RAM 95 storage means for storage of a longer duration. important.

En revanche, les paquets de données isochrones (paquets de type"stream", c'est-à-dire transmis en mode connecté), sont stockés uniquement dans cette unité de mémorisation 106 avant leur transmission sur le bus de communication auquel est raccordé le noeud de commutation 90 ou sur le réseau commuté.  On the other hand, the isochronous data packets (“stream” type packets, that is to say transmitted in connected mode), are stored only in this storage unit 106 before their transmission on the communication bus to which the switching node 90 or on the switched network.

Ceci s'explique par le fait que ce type de données doit être transféré aussi rapidement que possible du réseau commuté vers le bus et donc doit être stocké dans un moyen de stockage facilement et rapidement accessible.  This is explained by the fact that this type of data must be transferred as quickly as possible from the switched network to the bus and therefore must be stored in an easily and quickly accessible storage medium.

De même, les paquets de données isochrones, issus du bus de communication auquel est raccordé le noeud de commutation 90, et qui sont destinés au réseau commuté, sont stockés uniquement dans l'unité de mémorisation 106, et non dans le moyen de stockage 95, pour les mêmes raisons que celles invoquées précédemment.  Similarly, the isochronous data packets, originating from the communication bus to which the switching node 90 is connected, and which are intended for the switched network, are stored only in the storage unit 106, and not in the storage means 95 , for the same reasons as those mentioned above.

Ainsi que représenté sur la figure 3, le moyen de contrôle de flux de données 105 comporte plusieurs autres éléments dont un module de contrôle 107 (déjà mentionné plus haut), qui assure une fonction de contrôle de l'unité de mémorisation 106, une unité de commutation 108 (déjà mentionnée plus haut) en communication avec le moyen d'interfaçage 104, avec l'unité de mémorisation 106 et avec le module de contrôle 107, ainsi qu'une unité d'ordonnancement des paquets de données 109, qui est relation avec le module de contrôle 107.  As shown in FIG. 3, the data flow control means 105 comprises several other elements including a control module 107 (already mentioned above), which provides a control function for the storage unit 106, a unit switch 108 (already mentioned above) in communication with the interfacing means 104, with the storage unit 106 and with the control module 107, as well as a data packet scheduling unit 109, which is relationship with the control module 107.

On notera également que le module de contrôle 107 communique avec les moyens d'interfaçage 103 et 104 ainsi qu'avec le composant d'interface de bus noté 101.  It will also be noted that the control module 107 communicates with the interfacing means 103 and 104 as well as with the bus interface component noted 101.

Le module de contrôle 107 a pour fonction de multiplexer les accès en lecture ou en écriture à des registres d'autres modules à partir du bus principal noté 100.  The control module 107 has the function of multiplexing the read or write accesses to registers of other modules from the main bus denoted 100.

<Desc/Clms Page number 18> <Desc / Clms Page number 18>

Figure img00180001
Figure img00180001

Le module 107 possède également la maîtrise du composant d'interface de bus 101 pour les opérations de lecture et d'écriture sur le bus principal 100, incluant notamment le transfert en"mode rafale" (connu en terminologie anglosaxonne sous le terme de"burst mode"). The module 107 also has control of the bus interface component 101 for the read and write operations on the main bus 100, including in particular the transfer in "burst mode" (known in English terminology under the term "burst" fashion").

Le module de contrôle 107 est également chargé du déclenchement des interruptions sur le bus principal 100, en fonction d'événements de communication particuliers.  The control module 107 is also responsible for triggering interruptions on the main bus 100, as a function of specific communication events.

Ce module échange des données avec le composant 101, sur un bus additionnel 110 (connu en terminologie anglo-saxonne sous le terme de"add-on bus"), suivant les signaux de contrôle notés ctrll.  This module exchanges data with component 101, on an additional bus 110 (known in English terminology under the term "add-on bus"), according to the control signals denoted ctrll.

Comme annoncé ci-dessus, le module 107 est chargé du contrôle de l'unité de mémorisation 106, en ce qui concerne les opérations de lecture et d'écriture en mode FIFO, dans le cas particulier où le composant d'interface de bus 101 est un AMCC, par l'intermédiaire d'un bus de données 111 et de signaux de contrôle carl2.  As announced above, the module 107 is responsible for controlling the storage unit 106, as regards the read and write operations in FIFO mode, in the particular case where the bus interface component 101 is an AMCC, via a data bus 111 and carl2 control signals.

Le moyen d'interfaçage 103 contient des mémoires de type FIFO, qui sont utilisées lors du transfert de paquets de données de type conforme à la norme IEEE 1394. Il comprend deux mémoires FIFO de transmission dites ATF

Figure img00180002

("Asynchronous Transfer FIFO"en terminologie anglo-saxonne) et ITF ("Isochronous Transfer FIFO"en terminologie anglo-saxonne) et une mémoire FIFO de réception dite GRF ("General Receive FIFO"en terminologie anglosaxonne). Ces mémoires FIFO sont plus largement décrites dans la documentation associée au composant LINK TSB12LV01A. The interfacing means 103 contains memories of the FIFO type, which are used during the transfer of data packets of type conforming to the IEEE 1394 standard. It comprises two FIFO memories of transmission known as ATF
Figure img00180002

("Asynchronous Transfer FIFO" in Anglo-Saxon terminology) and ITF ("Isochronous Transfer FIFO" in Anglo-Saxon terminology) and a reception FIFO memory known as GRF ("General Receive FIFO" in Anglo-Saxon terminology). These FIFO memories are more widely described in the documentation associated with the LINK component TSB12LV01A.

Le module de contrôle 107 et le moyen d'interfaçage 103 gèrent le transfert

Figure img00180003

de données sur un bus 112 suivant des signaux de contrôle carl3. The control module 107 and the interfacing means 103 manage the transfer
Figure img00180003

data on a bus 112 according to control signals carl3.

Par ailleurs, le module de contrôle 107 contrôle l'unité de commutation 108, au moyen de signaux de contrôle ctrl 4, afin de transférer des données de l'unité de commutation vers l'unité de mémorisation 106 par l'intermédiaire d'un bus de données 113, et inversement.  Furthermore, the control module 107 controls the switching unit 108, by means of control signals ctrl 4, in order to transfer data from the switching unit to the storage unit 106 via a data bus 113, and vice versa.

L'unité de commutation 108 est connectée au moyen d'interface 104 par  The switching unit 108 is connected to the interface means 104 by

<Desc/Clms Page number 19> <Desc / Clms Page number 19>

Figure img00190001

l'intermédiaire d'un bus de données 114 et de signaux de contrôle curls.
Figure img00190001

via a data bus 114 and curls control signals.

L'unité d'ordonnancement des paquets de données 109, notée également SAR (connue en terminologie anglo-saxonne sous le terme de"Segmentation And Reassembling"), informe le module de contrôle 107 du ou des prochains paquets de données à transmettre, par l'intermédiaire de signaux de contrôle carl6. The data packet scheduling unit 109, also noted SAR (known in English terminology under the term "Segmentation And Reassembling"), informs the control module 107 of the next data packet (s) to be transmitted, by carl6 control signals.

En outre, l'unité d'ordonnancement 109 vérifie la réception des paquets de données, et gère l'allocation et la libération de zones mémoires (connues en terminologie anglo-saxonne sous le terme de"buffers") de l'unité de mémorisation 106.  In addition, the scheduling unit 109 checks the reception of the data packets, and manages the allocation and the release of memory areas (known in English terminology under the term of "buffers") of the storage unit. 106.

Les signaux de contrôle ctrl7 échangés entre le moyen d'interfaçage 104 et le module de contrôle 107 comprennent notamment les signaux d'horloges régénérés à partir de la réception des paquets 1355 sur chacun des trois ports du moyen d'interfaçage 104.  The control signals ctrl7 exchanged between the interface means 104 and the control module 107 include in particular the clock signals regenerated from the reception of the packets 1355 on each of the three ports of the interface means 104.

Un quartz à 49,152Mhz (non représenté) est connecté à la fois au moyen 104 pour l'émission des paquets 1355 et au module de contrôle 107 qui génère un signal d'horloge à 24,576 MHz +/-100 ppm, d'une part, pour l'unité d'ordonnancement des paquets de données 109, afin de cadencer l'émission des paquets 1355 et, d'autre part pour le moyen d'interfaçage 103, afin de cadencer l'émission des paquets 1394.  A quartz at 49.152 MHz (not shown) is connected both to the means 104 for transmitting the 1355 packets and to the control module 107 which generates a clock signal at 24.576 MHz +/- 100 ppm, on the one hand , for the data packet scheduling unit 109, in order to schedule the transmission of the 1355 packets and, on the other hand for the interfacing means 103, in order to schedule the transmission of the 1394 packets.

La figure 4 présente un synoptique détaillé du moyen de contrôle de flux de données 105, de l'interface 104 illustrés en regard de la figure 3, ainsi que leurs interconnexions.  FIG. 4 presents a detailed block diagram of the data flow control means 105, of the interface 104 illustrated with reference to FIG. 3, as well as their interconnections.

Quelques détails sur l'interface série 104 permettent de comprendre comment des paquets sont multiplexés sur le bus de données 114.  Some details on the serial interface 104 make it possible to understand how packets are multiplexed on the data bus 114.

L'interface série 104 comprend notamment : un moyen de contrôle de FIFO 120 décrit précédemment en regard de la figure 3 ; trois FIFOs d'entrée 121 (InPortO~FIFO), 122 (InPortl~FIFO) et
123 (InPort2~FIFO) ; un multiplexeur 127 ; et
The serial interface 104 notably comprises: a FIFO control means 120 described above with reference to FIG. 3; three input FIFOs 121 (InPortO ~ FIFO), 122 (InPortl ~ FIFO) and
123 (InPort2 ~ FIFO); a multiplexer 127; and

<Desc/Clms Page number 20> <Desc / Clms Page number 20>

Figure img00200001

des FIFO de sorties 124 (OutPortOFIFO), 125 (OutPortlFIFO) et 126 (OutPort2FIFO).
Figure img00200001

output FIFOs 124 (OutPortOFIFO), 125 (OutPortlFIFO) and 126 (OutPort2FIFO).

Les FIFO 121,122 et123 sont utilisées pour la mémorisation de paquets entrants, alors que les FIFO 124 à 126 sont utilisées pour la mémorisation des paquets sortants.  FIFOs 121, 122 and 123 are used for storing incoming packets, while FIFOs 124 to 126 are used for storing outgoing packets.

Une paire de FIFO est reliée à chaque port de l'interface 104 IEEE 1355.  A pair of FIFOs is connected to each port of the 104 IEEE 1355 interface.

Ainsi, par exemple : les FIFO 121 et 124 sont utilisées pour le port 0 ; les FIFO 122 et 125 pour le port 1 ; et les FIFO 123 et 126 pour le port 2. Thus, for example: FIFOs 121 and 124 are used for port 0; FIFOs 122 and 125 for port 1; and FIFOs 123 and 126 for port 2.

Le bus de données 114, illustré en regard de la figure 3, se décompose en deux bus sur la figure 4 : un bus 44 RxDI[l7 : 0] de réception des données destinées à l'unité de commutation 108 et transmises par l'interface 104 ; et un bus 41 TxDO[17 :0] d'émission des données à partir de l'unité de commutation 108, vers l'interface 104.  The data bus 114, illustrated with reference to FIG. 3, is broken down into two buses in FIG. 4: a bus 44 RxDI [17: 0] for receiving data intended for the switching unit 108 and transmitted by the interface 104; and a bus 41 TxDO [17: 0] for transmitting data from the switching unit 108, to the interface 104.

Après leur écriture dans l'une des FIFO d'entrée 121,122 et 123, les paquets entrants sont multiplexés à travers le multiplexeur 127 avant d'être renvoyés vers l'unité de commutation 108 à travers le bus 44.  After being written to one of the input FIFOs 121, 122 and 123, the incoming packets are multiplexed through the multiplexer 127 before being sent back to the switching unit 108 through the bus 44.

Les données sortantes de l'unité de commutation 108 sont émises à travers le bus de données 41 pour être stockées dans l'une des FIFO de sortie 124,125 ou 126.  The outgoing data from the switching unit 108 is sent through the data bus 41 to be stored in one of the output FIFOs 124, 125 or 126.

On rappelle que le moyen de contrôle de flux de données 105 comprend notamment : le module de contrôle 107 ; l'unité de commutation 108 ; et

Figure img00200002

l'unité de mémorisation à double port ou DPRAM 106. It will be recalled that the data flow control means 105 comprises in particular: the control module 107; the switching unit 108; and
Figure img00200002

the dual port memory unit or DPRAM 106.

Le signal de contrôle Curls, illustré en regard de la figure 3, se décompose en trois signaux sur la figure 4 : un signal de contrôle 51 ; The Curls control signal, illustrated with reference to FIG. 3, breaks down into three signals in FIG. 4: a control signal 51;

<Desc/Clms Page number 21> <Desc / Clms Page number 21>

Figure img00210001

un signal de contrôle 43 TxFIFOfull [O : 2J ; et un signal de contrôle 42 WnTYF7FO//2./.
Figure img00210001

a control signal 43 TxFIFOfull [O: 2J; and a control signal 42 WnTYF7FO // 2. /.

Les signaux de contrôle 51, TxFIFOfull[O : 2J 42 et WriteTXFIFO[O : 2J 43 permettent au moyen de contrôle 120 de la FIFO de gérer le transfert des paquets de données entre l'unité de commutation 108 et l'interface 104 de liaison série, à travers les bus de données 44 et 41. The control signals 51, TxFIFOfull [O: 2J 42 and WriteTXFIFO [O: 2J 43 allow the FIFO control means 120 to manage the transfer of data packets between the switching unit 108 and the link interface 104 serial, through data buses 44 and 41.

Le traitement des signaux de contrôle dans l'unité de commutation 108 sera décrit ultérieurement en regard de la figure 5.  The processing of the control signals in the switching unit 108 will be described later with reference to FIG. 5.

Le signal Ctrl4, illustré en regard de la figure 3, entre l'unité de commutation 108 et le module de contrôle 107, se décompose en au moins quatre signaux sur la figure 4 : - deux signaux de contrôle 53 et 54 ;

Figure img00210002

- un signal de contrôle IntRxTxEOP .: /45a ; - un signal de données 7Y/7.-07 45b. The signal Ctrl4, illustrated with reference to FIG. 3, between the switching unit 108 and the control module 107, breaks down into at least four signals in FIG. 4: - two control signals 53 and 54;
Figure img00210002

- an IntRxTxEOP. control signal: / 45a; - a data signal 7Y / 7.-07 45b.

Le signal 45b est un bus de données reliant les éléments 106, 107 et 108. The signal 45b is a data bus connecting the elements 106, 107 and 108.

Le module de contrôle lit les en-têtes paquets à partir de ce bus 45b. The control module reads the packet headers from this bus 45b.

Les signaux de contrôle 53, 54 et 45a permettent la gestion de transfert de données 7RxTY/\ ? 7.'û/45b entre la mémoire double port 106 et l'unité de commutation 108. The control signals 53, 54 and 45a allow the management of data transfer 7RxTY / \? 7.'û / 45b between the dual port memory 106 and the switching unit 108.

Dans certains cas, notamment lors du traitement d'en-tête de paquet, les données du paquet sont envoyées au module de contrôle 107 plutôt qu'à l'unité de mémorisation 106 pour une analyse ultérieure.  In some cases, notably during packet header processing, the packet data is sent to the control module 107 rather than to the storage unit 106 for later analysis.

Le bus de données 45b est représenté sur la figure 3 par le bus de données 113.  The data bus 45b is represented in FIG. 3 by the data bus 113.

La figure 5 représente un schéma électronique du module de commutation 108 de la figure 2.  FIG. 5 represents an electronic diagram of the switching module 108 of FIG. 2.

Le module de commutation 108 comprend notamment : un moyen 60 d'arbitrage ; un moyen 20 de génération de cycle ; des moyens chargés de la réception et de l'émission des données en  The switching module 108 comprises in particular: an arbitration means 60; cycle generation means 20; means responsible for receiving and transmitting data in

<Desc/Clms Page number 22><Desc / Clms Page number 22>

provenance ou à destination de l'interface 104 (soient les données en provenance ou à destination d'un réseau commuté IEEE1355) ; et des moyens chargés de la réception des données en provenance de la mémoire DPRAM 106 (soient les données en provenance d'un bus IEEE1394) ; et des moyens chargés de l'émission des données vers la mémoire DPRAM
106 (soient les données à destination d'un bus IEEE1394) ;.
coming from or going to the interface 104 (either the data coming from or going to an IEEE1355 switched network); and means responsible for receiving the data coming from the DPRAM memory 106 (ie the data coming from an IEEE1394 bus); and means responsible for transmitting data to the DPRAM memory
106 (ie the data destined for an IEEE1394 bus);

Les moyens chargés de la réception et de l'émission des données en provenance de ou vers l'interface 104 comprennent notamment : un moyen 18 de modification d'en-tête ; un moyen 19 d'analyse d'en-tête en réception ; deux mémoires volatiles 15 et 16 de réception agencées en FIFO ; et un moyen 17 de contrôle des FIFOs de réception 15 et 16.  The means responsible for receiving and transmitting data from or to the interface 104 include in particular: means 18 for modifying the header; a means 19 for header analysis on reception; two volatile reception memories 15 and 16 arranged in FIFO; and a means 17 for controlling the reception FIFOs 15 and 16.

Les moyens chargés de la réception des données en provenance de la mémoire DPRAM 106 comprennent notamment : quatre FIFOs d'entrée 9,10, 11 et 12 ; un moyen 130 de contrôle des FIFOs d'entrée ; un multiplexeur 50 ; et un moyen 13 d'analyse d'en-tête de transmission.  The means responsible for receiving data from the DPRAM memory 106 include in particular: four input FIFOs 9, 10, 11 and 12; means 130 for controlling the input FIFOs; a multiplexer 50; and a means 13 for analyzing the transmission header.

Les moyens chargés de l'émission des données vers la mémoire DPRAM 106 comprennent notamment : trois mémoires d'assemblage 22,23 ou 24 ; trois FIFOs de sortie 25,26 et 27 ; un moyen de contrôle 84 des FIFOs de sortie ; et un multiplexeur 28.  The means responsible for transmitting the data to the DPRAM memory 106 include in particular: three assembly memories 22, 23 or 24; three output FIFOs 25, 26 and 27; a control means 84 of the output FIFOs; and a multiplexer 28.

Ces éléments faisant partie du module de commutation 108 sont reliés par des éléments de liaisons décrits ci-après. On note néanmoins que la plupart des échanges se font autour du moyen 60 d'arbitrage avec utilisation de deux bus de données principaux, TxBus 70 et RxBux 80 dont les accès sont gérés par le moyen d'arbitrage 60.  These elements forming part of the switching module 108 are connected by connection elements described below. It should nevertheless be noted that most of the exchanges are around the arbitration means 60 with the use of two main data buses, TxBus 70 and RxBux 80, the accesses of which are managed by the arbitration means 60.

<Desc/Clms Page number 23> <Desc / Clms Page number 23>

L'utilisation des deux bus internes, les bus de transmission TxBus 70 et de réception RxBus 80, qui permettent de traiter les transferts de données entre les ports va maintenant être détaillée.  The use of the two internal buses, the TxBus 70 transmission bus and the RxBus 80 reception bus, which make it possible to process data transfers between the ports, will now be detailed.

Les paquets sortants vers le bus 41 sont transmis à travers le bus de transmission TxBus 70.  Outgoing packets to bus 41 are transmitted through the TxBus transmission bus 70.

Les paquets sortants vers le bus 45 sont transmis à travers le bus interne de réception RxBus 80.  The outgoing packets towards bus 45 are transmitted through the internal reception bus RxBus 80.

Le moyen 60 d'arbitrage est en charge de la gestion des accès en écriture sur le bus TxBus 70 contrôlant l'ouverture : de registres à trois états 1,2, 3 et 4 grâce à des signaux

Figure img00230001

OpenTxTT[O :33Lon Rx 40 pour les données issues des FIFO d'entrée 9, 10, 11 et 12 ; et de registres à trois états 14 grâce à des signaux de contrôle OpenRxTS~onTx 33 pour les données issues de la mémoire 16. The arbitration means 60 is in charge of managing the write accesses on the TxBus bus 70 controlling the opening: of three-state registers 1,2, 3 and 4 thanks to signals
Figure img00230001

OpenTxTT [O: 33Lon Rx 40 for data from input FIFOs 9, 10, 11 and 12; and three-state registers 14 using OpenRxTS ~ onTx 33 control signals for the data from memory 16.

Les opérations de lecture du bus TxBus 70 vers un port de sortie de l'interface 104 sont gérées par le moyen d'arbitrage 60 en fonction du signal de contrôle vers les FIFO associées à chaque port T. xF7F < 9/MO.'2 43 et WriteTxFIFO [0: 2] 42. The read operations from the TxBus bus 70 to an output port of the interface 104 are managed by the arbitration means 60 according to the control signal to the FIFOs associated with each port T. xF7F <9 / MO.'2 43 and WriteTxFIFO [0: 2] 42.

Le moyen d'arbitrage 60 gère aussi les accès en écriture vers le bus RxBus 80 en contrôlant l'ouverture : de registres à trois états 5,6, 7 et 8 à travers des signaux
OpenTxTs : 3LonRx 39 pour les données issues des FIFO d'entrée 9,10,
11 et 12 ; et d'un registre à trois états 21 à travers des signaux de contrôle
OpenRxTs~onRx 34 pour les données issues de la mémoire 15.
The arbitration means 60 also manages the write accesses to the RxBus bus 80 by controlling the opening: of three-state registers 5, 6, 7 and 8 through signals
OpenTxTs: 3LonRx 39 for data from input FIFOs 9,10,
11 and 12; and a three-state register 21 through control signals
OpenRxTs ~ onRx 34 for data from memory 15.

Le moyen d'arbitrage 60 effectue aussi les opérations de lecture de données sur le bus RxBus 80 pour une écriture vers l'une des mémoires d'assemblage 22,23 ou 24 (en anglais"assembly buffers"). L"assembly buffer" sert de tampon pour la conversion des données entre le bus 80, sur lequel les données sont exprimées sur 18 bits (16 bits de données et 2 bits de contrôle), et les  The arbitration means 60 also performs the operations of reading data on the RxBus bus 80 for writing to one of the assembly memories 22, 23 or 24 (in English "assembly buffers"). The "assembly buffer" serves as a buffer for the conversion of data between bus 80, on which the data is expressed in 18 bits (16 data bits and 2 control bits), and the

<Desc/Clms Page number 24> <Desc / Clms Page number 24>

Figure img00240001

a~FIPas 25, 26 et 27, dans lesquelles les données sont exprimées sur 34 bits) (32 bits de données et 2 bits de contrôle).
Figure img00240001

a ~ FIPas 25, 26 and 27, in which the data is expressed in 34 bits) (32 data bits and 2 control bits).

Ces tailles de bus sont liées à des contraintes physiques. Le module 84 transmet au moyen d'arbitrage 60 un signal de contrôle Rx FIFOfull[0 '2] 83, indiquant le degré de remplissage des FIFO 25,26 et 27. Le moyen d'arbitrage 60 génère un signal de contrôle WriteOFIFF [2 : 0] 35 à destination d'un module 84 de contrôle des FIFO de sortie, en fonction du degré de remplissage des FIFOS 25,26 et 27. These bus sizes are linked to physical constraints. The module 84 transmits to the arbitration means 60 a control signal Rx FIFOfull [0 '2] 83, indicating the degree of filling of the FIFOs 25, 26 and 27. The arbitration means 60 generates a control signal WriteOFIFF [2 : 0] 35 to a module 84 for controlling the output FIFOs, depending on the degree of filling of the FIFOS 25, 26 and 27.

Le moyen d'arbitrage 60 pour le multiplexage des données sur les bus 70 de transmission TxBus et 80 de réception RxBus utilise des signaux 46 de cycle EN~cycle[0:2]. C'est le moyen 20 de génération de cycle, par exemple un compteur de Johnson, qui génère ces signaux 46.  The arbitration means 60 for the multiplexing of the data on the buses 70 of transmission TxBus and 80 of reception RxBus uses signals 46 of cycle EN ~ cycle [0: 2]. It is the cycle generation means 20, for example a Johnson counter, which generates these signals 46.

Le traitement des données entrantes va maintenant être détaillé en fonction de l'origine de ces données : le bus 44 ; le bus 45.  The processing of incoming data will now be detailed according to the origin of this data: bus 44; bus 45.

Les données entrantes en provenance du bus 44 RxDI [17 : 01 ou du bus 45 seront routées vers le commutateur pour aller : vers le bus 41 TxD0[17 :0] soit en direction de l'interface 104 ; ou vers le bus 45 soit en direction de la DPRAM 106.  Incoming data from bus 44 RxDI [17: 01 or bus 45 will be routed to the switch to go: to bus 41 TxD0 [17: 0] either in the direction of interface 104; or to bus 45 either towards DPRAM 106.

Le traitement des données entrantes en provenance du bus 44 va maintenant être exposé.  The processing of incoming data from bus 44 will now be explained.

Les échanges de données sur le bus 44 sont gérés à travers le moyen 18 de modification d'en-tête et le moyen de contrôle de FIFO 120 de l'interface série, grâce aux signaux de contrôle 51. Les signaux de contrôle 51 comprennent un signal d'écriture vers le moyen 18 de modification d'en-tête et des signaux de contrôle de flux du module 18, correspondant chacun à des ports d'entrées du moyen d'interfaçage 104.  The data exchanges on the bus 44 are managed through the header modification means 18 and the FIFO control means 120 of the serial interface, thanks to the control signals 51. The control signals 51 comprise a write signal to the header modification means 18 and module 18 flow control signals, each corresponding to input ports of the interfacing means 104.

Les morceaux de paquets entrant en provenance du bus 44 parviennent d'abord à un moyen de modification d'en-tête 18 pour un traitement relatif aux  The pieces of packets entering from the bus 44 first arrive at a header modification means 18 for processing relating to the

<Desc/Clms Page number 25><Desc / Clms Page number 25>

en-têtes de paquet.  packet headers.

Les morceaux de paquets sont ensuite stockés : dans la mémoire 15 lorsqu'ils sont adressés au bus de réception 80
RxBus ; et dans la mémoirel6 lorsqu'ils sont adressés au bus de transmission
70 TxBus.
The pieces of packets are then stored: in the memory 15 when they are addressed to the reception bus 80
RxBus; and in memory 6 when addressed to the transmission bus
70 TxBus.

Lorsqu'ils sont adressés vers les deux bus, les morceaux de paquets sont adressés aux deux bus simultanément pour être stockés dans deux moyens de stockage simultanément.  When they are addressed to the two buses, the packet pieces are addressed to the two buses simultaneously to be stored in two storage means simultaneously.

De même, le moyen 17 de contrôle de FIFO de réception contrôle les opérations de stockage dans les deux mémoires 15 et 16.  Likewise, the reception FIFO control means 17 controls the storage operations in the two memories 15 and 16.

Les mémoires 15 et 16 sont des mémoires à double port, découpées en trois zones indépendantes, chacune étant gérée comme une FIFO.  The memories 15 and 16 are dual-port memories, divided into three independent zones, each being managed like a FIFO.

Les signaux synchrones sont gérés suivant un certain rythme correspondant à une succession de phases constituées de quatre cycles d'horloge.  The synchronous signals are managed at a certain rate corresponding to a succession of phases consisting of four clock cycles.

Dans une phase à quatre cycles, au cours de chacun des trois premiers cycles d'horloge de la phase, on effectue à la fois une opération d'écriture et une opération en lecture vers deux adresses de chacune des RAM (mémoires volatiles) 15 ou 16. Ces adresses pointent respectivement : vers le dernier élément (queue) de l'une des FIFO dans chacune des
RAM 15 et 16 ; et vers le premier élément (head) de l'une des FIFO dans chacune des
RAM 15 et 16.
In a four-cycle phase, during each of the first three clock cycles of the phase, both a write operation and a read operation are carried out at two addresses of each of the RAMs (volatile memories) 15 or 16. These addresses point respectively: to the last element (tail) of one of the FIFOs in each of the
RAM 15 and 16; and to the first element (head) of one of the FIFOs in each of the
RAM 15 and 16.

Aucune opération de lecture ou d'écriture vers les RAM 15 et 16 n'est effectuée au cours du quatrième cycle d'horloge dans une phase à quatre cycles.  No read or write operation to the RAMs 15 and 16 is carried out during the fourth clock cycle in a four-cycle phase.

Chaque opération de lecture effective de FIFO (définies lorsque le signal 32 de sortie Rx[iLread est activé durant un cycle et est suivi par un signal d'entrée AllData used [il activé durant un cycle, i correspondant à un numéro de la FIFO d'entrée) modifie l'adresse pointant sur l'en-tête de FIFO.  Each effective FIFO read operation (defined when the Rx output signal 32 [iLread is activated during a cycle and is followed by an AllData used input signal [it activated during a cycle, i corresponding to a FIFO number d 'entry) changes the address pointing to the FIFO header.

Des opérations effectives d'écriture de FIFO (basées sur le même  Effective FIFO write operations (based on the same

<Desc/Clms Page number 26><Desc / Clms Page number 26>

mécanisme que les opérations de lecture, utilisant ici le signal 52 illustré en regard de la figure 3) modifient l'adresse pointant sur la queue de la FIFO.  mechanism that the read operations, here using the signal 52 illustrated with reference to FIG. 3) modify the address pointing to the tail of the FIFO.

Ainsi, durant trois cycles, chaque partie de FIFO correspondant à chacun des ports d'entrée est traitée : les opérations d'écriture de données par les moyens 18 de modification d'en-tête sont séquentiellement adressées vers les parties correspondantes 15 et 16, chacun des morceaux de paquets entrant de chacun des ports d'entrée 121,122 et 123 de l'interface 104.  Thus, during three cycles, each part of FIFO corresponding to each of the input ports is processed: data writing operations by the header modification means 18 are sequentially addressed to the corresponding parts 15 and 16, each of the pieces of packets entering from each of the input ports 121, 122 and 123 of the interface 104.

D'une manière similaire, les données lues à partir des mémoires 15 et 16 sont traitées respectivement par les bus RxBus 80 et TxBus 70.  In a similar manner, the data read from memories 15 and 16 are processed respectively by the RxBus 80 and TxBus 70 buses.

Le moyen 17 de contrôle de FIFO de réception est en charge de la lecture et de l'écriture effective des FIFO contenues dans les mémoires 15 et 16.  The reception FIFO control means 17 is in charge of reading and actually writing the FIFOs contained in the memories 15 and 16.

Le signal 52 de contrôle informe le moyen de modification d'en-tête 18 qu'une FIFO est pleine dans l'une des mémoires 15 ou 16 et qu'il y a aussi une requête d'écriture pour une FIFO dans l'une des mémoires 15 ou 16.  The control signal 52 informs the header modification means 18 that a FIFO is full in one of the memories 15 or 16 and that there is also a write request for a FIFO in one memories 15 or 16.

Le moyen de contrôle de FIFO de réception informe le module 60 d'arbitrage qu'une nouvelle donnée a été lue à partir de l'une des mémoires 15 ou 16 grâce au signal Rx {O : 2} read 32.  The reception FIFO control means informs the arbitration module 60 that a new datum has been read from one of the memories 15 or 16 thanks to the signal Rx {O: 2} read 32.

Les mêmes données sont lues à chaque phase de quatre cycles lorsqu'elles ne sont pas lues de manière effective en les plaçant simplement, soit sur le bus RxBus, soit sur le bus TxBus, soit sur les deux, en fonction du routage du paquet.  The same data is read in each phase of four cycles when they are not effectively read by simply placing them, either on the RxBus bus, or on the TxBus bus, or on both, depending on the packet routing.

Ainsi, les mêmes données sont présentées tous les quatre cycles, jusqu'à ce qu'elles aient été réellement lues par la ou les destinations.  Thus, the same data is presented every four cycles, until it has actually been read by the destination (s).

Le moyen 60 d'arbitrage gère l'ouverture du registre à trois états 14 grâce

Figure img00260001

aux signaux de contrôle OpenRxTs~onTx 33, pour placer les données en lecture de la mémoire 16 sur le bus de transmission TxBus 70. The arbitration means 60 manages the opening of the three-state register 14 thanks to
Figure img00260001

to the OpenRxTs ~ onTx 33 control signals, to place the data in read mode from memory 16 on the TxBus 70 transmission bus.

Le moyen 60 gère également l'ouverture du registre à trois états 21, grâce aux signaux de contrôle OpenRxTs~onRx 34 pour mettre les données lues de la mémoire 15 vers le bus de réception RxBus 80. The means 60 also manages the opening of the three-state register 21, thanks to the control signals OpenRxTs ~ onRx 34 for putting the data read from the memory 15 to the reception bus RxBus 80.

Le moyen d'arbitrage 60 gère aussi le contrôle des signaux

Figure img00260002

allRxData~used < K/û.'27 pour indiquer au moyen 17 de contrôle des FIFO de The arbitration means 60 also manages the control of the signals
Figure img00260002

allRxData ~ used <K / û.'27 to indicate by means 17 of FIFO control of

<Desc/Clms Page number 27><Desc / Clms Page number 27>

réception que la prochaine donnée sera lue par une partie correspondante dans l'une des mémoires 15 ou 16.
Le moyen 19 d'analyse d'en-tête de paquets reçus commande la forme du signal 47 vers le moyen 60 d'arbitrage.
reception that the next data will be read by a corresponding part in one of memories 15 or 16.
The means 19 for analyzing the header of received packets controls the shape of the signal 47 to the arbitration means 60.

Lorsqu'un nouveau paquet en provenance de l'un des ports d'entrée 121,

Figure img00270001

122 ou 123 est traité dans le moyen 18 de modification d'en-tête, le signal 47 70.'27Wû'0.'. 3/ permet la requête d'une connexion : vers l'un des ports de sortie de l'interface 104 à travers le bus multiplex 41 ; ou vers l'une des FIFO internes 25,26 ou 27 à travers le bus multiplexé 45.
Lorsque la fin du paquet est traitée dans le moyen 18 de modification d'entête, le signal 47 RxEOP[0:2] informe le moyen d'arbitrage 60 de la fin d'une connexion. When a new packet from one of the input ports 121,
Figure img00270001

122 or 123 is processed in the means 18 for modifying the header, the signal 47 70.'27Wû'0. '. 3 / allows the request for a connection: to one of the output ports of the interface 104 through the multiplex bus 41; or to one of the internal FIFOs 25, 26 or 27 through the multiplexed bus 45.
When the end of the packet is processed in the header modification means 18, the signal 47 RxEOP [0: 2] informs the arbitration means 60 of the end of a connection.

On note que le moyen 18 de modification d'en-tête émet un signal représentatif d'une information de routage à destination du moyen 19 d'analyse d'en-tête en réception.  Note that the header modification means 18 emits a signal representative of routing information intended for the header analysis means 19 on reception.

En ce qui concerne la connexion et la déconnexion vers l'interface série

Figure img00270002

IEEE 1355, le moyen 60 d'arbitrage gère les signaux 81 RO [0 :c < ?onnected émis vers le moyen 17 de contrôle de FIFO de réception pour indiquer le statut de la connexion associée à chaque port. Regarding connection and disconnection to the serial interface
Figure img00270002

IEEE 1355, the arbitration means 60 manages the 81 RO [0: c <? Onnected signals transmitted to the reception FIFO control means 17 to indicate the status of the connection associated with each port.

De même, le moyen 60 d'arbitrage gère les signaux 70.'2/c6'necJ 82 vers le moyen 130 de contrôle des FIFO d'entrée 9,10, 11 et 12 pour les données en provenance de la DPRAM 106. Similarly, the arbitration means 60 manages the signals 70.'2 / c6'necJ 82 to the means 130 for controlling the input FIFOs 9, 10, 11 and 12 for the data coming from the DPRAM 106.

Les données échangées sur le bus 45 sont gérées : par le moyen 84 de contrôle des FIFO de sortie 0~FIFO et le module de contrôle 107 par l'intermédiaire du signal 53 ; et par le moyen 13 de contrôle des FIFO d'entrée I-FIFO et le module de contrôle 107 par l'intermédiaire du signal 54.  The data exchanged on the bus 45 are managed: by the means 84 for controlling the output FIFOs 0 ~ FIFO and the control module 107 by means of the signal 53; and by the means 13 for controlling the I-FIFO input FIFOs and the control module 107 by means of the signal 54.

Le multiplexeur 28 autorise la sélection d'une FIFO de sortie FIFO parmi les trois FIFO 25,26 ou 27 pour des opérations de lecture de FIFO de  Multiplexer 28 authorizes the selection of a FIFO output FIFO from the three FIFOs 25, 26 or 27 for FIFO read operations of

<Desc/Clms Page number 28><Desc / Clms Page number 28>

données destinées à la mémoire de stockage double port 106. Cette opération de sélection est gérée par le moyen 84 de contrôle de FIFO de sortie 0FIFO grâce à un signal 85.  data intended for the dual-port storage memory 106. This selection operation is managed by the means 84 for controlling FIFO of output 0FIFO by means of a signal 85.

Par ailleurs, les moyens 130 de contrôle de FIFO d'entrées f7FO contrôlent des opérations d'écriture de la mémoire de stockage 106 vers l'une des quatre FIFO 7F7FIFO d'entrée 9,10, 11 ou 12 grâce aux signaux 90.  Furthermore, the means 130 for controlling the FIFO of inputs f7FO control operations for writing the storage memory 106 to one of the four FIFOs 7F7FIFO for input 9, 10, 11 or 12 by means of the signals 90.

C'est uniquement le cas pour le bus 42 où les signaux de contrôle 43 et 42 attachés au moyen de mémorisation des ports de sorties sont directement connectés vers les moyens 60 d'arbitrage.  This is only the case for the bus 42 where the control signals 43 and 42 attached to the storage means of the output ports are directly connected to the arbitration means 60.

En d'autres termes, le bus 41 est le seul bus dont les signaux de contrôle (42 et 43) sont directement reliés à l'arbitre 60.  In other words, the bus 41 is the only bus whose control signals (42 and 43) are directly connected to the arbiter 60.

Le traitement des données entrantes en provenance du bus 45 va maintenant être détaillé.  The processing of incoming data from bus 45 will now be detailed.

Les morceaux de paquets provenant du bus 45 sont démultiplexés vers chaque FIFO d'entrée 9,10, 11 et 12. Ainsi, quatre paquets (un par FIFO d'entrée) peuvent être traités simultanément.  The packet pieces from bus 45 are demultiplexed to each input FIFO 9, 10, 11 and 12. Thus, four packets (one per input FIFO) can be processed simultaneously.

Chaque FIFO d'entrée est connectée à deux bus internes 70 et 80 à travers les registres à trois états 1 à 8.  Each input FIFO is connected to two internal buses 70 and 80 through the three-state registers 1 to 8.

Le moyen 60 d'arbitrage est en charge de gérer : les accès en écriture sur le bus TxBus 70 contrôlant alternativement l'ouverture des registres trois états, 1 à 4 grâce aux signaux OpenTx7[0 :33LonTx 40, chacun des registres 1 à 4 étant affecté à une
FIFO d'entrée 9 à 12 ; et les accès en écriture sur le bus RxBus 80 contrôlant alternativement l'ouverture des registres trois états 5 à 8 grâce aux signaux
OpenTxTs[0 :3]~onRx 39, chacun des registres 5 à 8 étant affecté à une
FIFO d'entrée 9 à 12.
The arbitration means 60 is responsible for managing: the write accesses on the TxBus bus 70 alternately controlling the opening of the three state registers, 1 to 4 thanks to the OpenTx7 signals [0: 33LonTx 40, each of the registers 1 to 4 being assigned to a
Input FIFO 9 to 12; and write accesses on the RxBus 80 bus alternately controlling the opening of the three-state registers 5 to 8 thanks to the signals
OpenTxTs [0: 3] ~ onRx 39, each of registers 5 to 8 being assigned to a
Input FIFO 9 to 12.

Les opérations d'écriture sur le bus RxBus 70 sont indépendantes des opérations d'écriture sur le bus TxBus 80.  The write operations on the RxBus 70 bus are independent of the write operations on the TxBus 80 bus.

Le moyen d'arbitrage 60 génère aussi des signaux de contrôle aTxData  The arbitration means 60 also generates control signals aTxData

<Desc/Clms Page number 29> <Desc / Clms Page number 29>

Figure img00290001

M0 ; / 37, qui autorisent la lecture sur l'une des FIFO d'entrées 9 à 12, grâce aux moyens de contrôle des FIFO d'entrée 130.
Figure img00290001

M0; / 37, which authorize the reading on one of the input FIFOs 9 to 12, by means of the control of the input FIFOs 130.

Le moyen 130 de contrôle des FIFO d'entrée informe le moyen 60 d'arbitrage de la réussite d'une opération de lecture, effectuée par l'une des FIFO d'entrée, grâce au signal de contrôle 38 Tx[O : 3LRead.  The means 130 for controlling the input FIFOs informs the arbitration means 60 of the success of a read operation, carried out by one of the input FIFOs, by means of the control signal 38 Tx [O: 3LRead.

Les données d'en-tête de paquet sont multiplexées par un multiplexeur 50 de l'une des FIFO de sorties 9 à 12 pour être émises vers le moyen 13 d'analyse d'en-tête.  The packet header data is multiplexed by a multiplexer 50 from one of the output FIFOs 9 to 12 to be sent to the header analysis means 13.

Le moyen 13 d'analyse d'en-tête de paquet transmis analyse les données issues des FIFO d'entrée 9,10, 11 et 12 pour générer le signal 36

Figure img00290002

7jc/.'JVï : 3 à destination du moyen d'arbitrage 60. The transmitted packet header analysis means 13 analyzes the data from the input FIFOs 9, 10, 11 and 12 to generate the signal 36
Figure img00290002

7d /. 'JVï: 3 for the arbitration means 60.

Lorsqu'un nouveau paquet est traité dans l'une des FIFO d'entrée 9 à 12, le signal 36 70.'WMO.'37 permet la requête d'une connexion : vers l'un des ports de sortie du moyen d'interfaçage 104 par un bus
41 multiplexé ; ou vers l'une des FIFO de sortie 25,26 ou 27 par un bus 45 multiplexé.
When a new packet is processed in one of the input FIFOs 9 to 12, the signal 36 70.'WMO.'37 allows the request for a connection: to one of the output ports of the means of interfacing 104 by a bus
41 multiplexed; or to one of the output FIFOs 25, 26 or 27 by a multiplexed bus 45.

Lorsque la fin du paquet est traitée dans l'une des FIFO d'entrée 9 à 12, le signal 36 TxEOP (3P.'3 permet d'informer le moyen d'arbitrage 60 d'une fin de connexion.  When the end of the packet is processed in one of the input FIFOs 9 to 12, the signal 36 TxEOP (3P.'3 makes it possible to inform the arbitration means 60 of an end of connection.

La figure 6 illustre l'architecture du bloc O-FIFO présenté en figure 5. Le bloc O-FIFO met en oeuvre trois FIFO de sortie 25,26 et 27, associées chacune à un port interne. Une FIFO de sortie O-FIFO sera décrite plus en détails en relation avec la figure 7.  FIG. 6 illustrates the architecture of the O-FIFO block presented in FIG. 5. The O-FIFO block implements three output FIFOs 25, 26 and 27, each associated with an internal port. An O-FIFO output FIFO will be described in more detail in relation to FIG. 7.

Des signaux de contrôle 203 en provenance du bus de réception 80 Rx-bus sont traités par les moyens logiques RXBUS20F 204. Ces moyens logiques ont pour tâche d'adresser l'une des trois FIFO 25 à 27, en fonction des signaux de contrôle 203. La logique RXBUS20F 204 est également en charge de la conversion des données de 16 à 32 bits. Une telle conversion est effectuée en mettant en oeuvre les commandes we-low et we-high des FIFO. Enfin, une  Control signals 203 coming from the reception bus 80 Rx-bus are processed by the logic means RXBUS20F 204. These logic means have the task of addressing one of the three FIFOs 25 to 27, as a function of the control signals 203 The RXBUS20F 204 logic is also in charge of converting data from 16 to 32 bits. Such a conversion is carried out by implementing the we-low and we-high commands of the FIFOs. Finally, a

<Desc/Clms Page number 30><Desc / Clms Page number 30>

fonction supplémentaire de cette logique est de décoder les indicateurs eop/eom (end of packet/end of message pour, en français, fin de paquet/fin de message) en provenance du bus de réception 80 Rx~bus, et de générer la commande we~eop 228 des FIFO.

Figure img00300001
additional function of this logic is to decode the eop / eom indicators (end of packet / end of message for, in French, end of packet / end of message) coming from the reception bus 80 Rx ~ bus, and generate the command we ~ eop 228 of FIFOs.
Figure img00300001

Le multiplexeur 28 alimente le bus intrx~tx~data 45 à l'aide de données en provenance de l'une des FIFO, selon le signal intrx-datarequest [2 : 01 214. Le multiplexeur 28 détecte également la lecture d'une fin de paquet ou d'une fin de message (eop/eom) depuis les FIFO, de manière à générer le signal eop-alout-pins 205. The multiplexer 28 feeds the intrx ~ tx ~ data 45 bus using data from one of the FIFOs, according to the intrx-datarequest signal [2: 01 214. The multiplexer 28 also detects the reading of an end packet or end of message (eop / eom) from the FIFOs, so as to generate the signal eop-alout-pins 205.

La figure 7 illustre l'architecture d'une FIFO de sortie O~FIFO 25,26 ou 27.

Figure img00300002
FIG. 7 illustrates the architecture of an output FIFO O ~ FIFO 25, 26 or 27.
Figure img00300002

Une O~FIFO est réalisée à l'aide de deux compteurs 206 et 207, une mémoire volatile à double port 210 à 212, un générateur d'indicateurs 208 qui sera décrit plus en détails en relation avec la figure 9, et un détecteur de fin de paquet ou de fin de message 209 qui sera décrit plus en détails en relation avec la figure 8. An O ~ FIFO is performed using two counters 206 and 207, a volatile dual-port memory 210 to 212, an indicator generator 208 which will be described in more detail in relation to FIG. 9, and a detector of end of packet or end of message 209 which will be described in more detail in relation to FIG. 8.

Le compteur en écriture 206 est utilisé pour générer des adresses d'écriture dans les mémoires volatiles à double port 210 à 212, lorsque des données arrivent par le bus de réception 80 Rx~bus. Ce compteur 206 est commandé par le signal de chargement 213 push généré par la logique RXBUS20F 204, ainsi qu'illustré en figure 6. Ce signal de chargement 213 est généré à chaque fois que deux mots de 16 bits et un mot de contrôle de 2 bits sont écrits dans les mémoires volatiles à double port 210 à 212, soit à chaque fois qu'un mot de 34 bits est écrit.  The write counter 206 is used to generate write addresses in the volatile dual-port memories 210 to 212, when data arrives via the reception bus 80 Rx ~ bus. This counter 206 is controlled by the loading signal 213 push generated by the logic RXBUS20F 204, as illustrated in FIG. 6. This loading signal 213 is generated each time two words of 16 bits and a control word of 2 bits are written in the dual-port volatile memories 210 to 212, that is to say each time a 34-bit word is written.

Le compteur en lecture 207 est utilisé pour générer des adresses en lecture dans les mémoires volatiles à double port 210 à 212, lorsqu'une demande de

Figure img00300003

données est émise à travers le signal intrx~datarequest 214. The read counter 207 is used to generate read addresses in the dual-port volatile memories 210 to 212, when a request for
Figure img00300003

data is sent through the intrx ~ datarequest 214 signal.

Le signal almostfull 226 est obtenu en réalisant un OU logique entre le signal û/MO/M 223 généré par le générateur d'indicateur flag-gen 208 et le signal eop-in i o 224 généré par le module de détection de fin de paquet ~ff top-detect 209, ainsi qu'illustré précédemment en relation avec la figure 2. The almostfull signal 226 is obtained by performing a logical OR between the signal û / MO / M 223 generated by the flag-gen indicator generator 208 and the eop-in signal io 224 generated by the end of packet detection module ~ ff top-detect 209, as illustrated previously in relation to FIG. 2.

<Desc/Clms Page number 31> <Desc / Clms Page number 31>

Figure img00310001
Figure img00310001

Les figures 8 et 9 illustrent plus en détails des réalisations possibles du détecteur de fin de paquet eop~detect 209 et du générateur d'indicateur ?aggen 208. Figures 8 and 9 illustrate in more detail the possible embodiments of the end of packet detector eop ~ detect 209 and the indicator generator? Aggen 208.

Le module eop~detect 209 est un compteur 227 qui comptabilise le nombre d'apparitions d'une fin de paquet ou d'une fin de message (eop/eom) dans la FIFO. Ce compteur 227 est incrémenté lorsque le signal we~eop 228 est validé, c'est-à-dire lors d'une écriture dans la mémoire volatile à double port 212 des bits 32 et 33. The eop ~ detect 209 module is a counter 227 which counts the number of occurrences of an end of packet or of an end of message (eop / eom) in the FIFO. This counter 227 is incremented when the signal we ~ eop 228 is validated, that is to say during a writing in the volatile dual-port memory 212 of bits 32 and 33.

Ce compteur 227 est décrémenté lorsque le signal eop~at~out~pins 205 est validé. Un tel signal 205 est généré par le multiplexeur 28 quand une fin de paquet ou de message (eop/eom) est lue depuis la FIFO.  This counter 227 is decremented when the signal eop ~ at ~ out ~ pins 205 is validated. Such a signal 205 is generated by the multiplexer 28 when an end of packet or message (eop / eom) is read from the FIFO.

De manière évidente, lorsque ces deux conditions sont vérifiées (eop~at~outpins 205 et we~eop 228 validés simultanément), le compteur demeure inchangé.  Obviously, when these two conditions are satisfied (eop ~ at ~ outpins 205 and we ~ eop 228 validated simultaneously), the counter remains unchanged.

Ainsi qu'illustré en figure 9, le générateur d'indicateur 208 est également un compteur, qui compte le nombre d'ensemble de 34 bits dans la 0FIFO.  As illustrated in FIG. 9, the indicator generator 208 is also a counter, which counts the set number of 34 bits in the 0FIFO.

Claims (37)

REVENDICATIONS 1. Procédé d'optimisation de l'utilisation d'un moyen de stockage, mettant en oeuvre au moins un indicateur de remplissage, la valeur dudit indicateur étant modifiée lorsque l'espace de stockage disponible dans ledit moyen de stockage dépasse au moins un seuil prédéterminé, caractérisé en ce que la valeur dudit indicateur est modifiée également lorsque les données contenues dans ledit moyen de stockage remplissent au moins une condition prédéterminée.  CLAIMS 1. Method for optimizing the use of a storage means, using at least one filling indicator, the value of said indicator being modified when the storage space available in said storage means exceeds at least one predetermined threshold, characterized in that the value of said indicator is also modified when the data contained in said storage means meet at least one predetermined condition. 2. Procédé selon la revendication 1, caractérisé en ce qu'une desdites conditions prédéterminées est la réception, dans ledit moyen de stockage, d'une information de fin de transmission d'un ensemble de données. 2. Method according to claim 1, characterized in that one of said predetermined conditions is the reception, in said storage means, of information on the end of transmission of a set of data. 3. Procédé selon la revendication 2, caractérisé en ce que lesdits ensembles de données appartiennent au groupe comprenant : des paquets ; des unités de protocole ; des trames ; des messages. 3. Method according to claim 2, characterized in that said data sets belong to the group comprising: packets; protocol units; frames; messages. 4. Procédé selon l'une quelconque des revendications 1 à 3, caractérisé en ce que ledit moyen de stockage comprend au moins une mémoire de type FIFO. 4. Method according to any one of claims 1 to 3, characterized in that said storage means comprises at least one FIFO type memory. 5. Procédé selon la revendication 4, caractérisé en ce que la ou lesdites mémoires FIFO sont associées à des ports d'entrée de moyen de commutation. 5. Method according to claim 4, characterized in that the said FIFO memory or memories are associated with input ports of switching means. 6. Procédé selon l'une quelconque des revendications 1 à 5, caractérisé en ce que la modification de ladite valeur entraîne le transfert d'au moins une partie desdites données contenues dans ledit moyen de stockage. 6. Method according to any one of claims 1 to 5, characterized in that the modification of said value results in the transfer of at least part of said data contained in said storage means. 7. Procédé selon la revendication 6, caractérisé en ce que ledit transfert est activé par des moyens de contrôle de logique en cascade (en anglais"pipelined logic"). 7. Method according to claim 6, characterized in that said transfer is activated by means of cascade logic control (in English "pipelined logic"). 8. Procédé selon la revendication 7, caractérisé en ce que la valeur dudit indicateur est fonction d'un temps de réaction desdits moyens de contrôle. 8. Method according to claim 7, characterized in that the value of said indicator is a function of a reaction time of said control means. 9. Procédé selon l'une quelconque des revendications 1 à 7, caractérisé en ce 9. Method according to any one of claims 1 to 7, characterized in that <Desc/Clms Page number 33><Desc / Clms Page number 33> que la valeur dudit indicateur est modifiée lorsque ledit moyen de stockage est presque plein (en anglais"almost full").  that the value of said indicator is modified when said storage means is almost full (in English "almost full"). 10. Procédé selon la revendication 8, caractérisé en ce que la valeur dudit indicateur est modifiée lorsque le taux de remplissage dudit moyen de stockage est supérieur à N-x, où : N représente la taille dudit moyen de stockage ; x représente la profondeur du pipeline, ledit transfert reposant sur une logique en cascade. 10. Method according to claim 8, characterized in that the value of said indicator is modified when the filling rate of said storage means is greater than N-x, where: N represents the size of said storage means; x represents the depth of the pipeline, said transfer being based on a cascade logic. 11. Procédé selon l'une quelconque des revendications 1 à 10, caractérisé en ce qu'il comprend les étapes suivantes : surveillance du taux de remplissage dudit moyen de stockage ; modification de la valeur dudit indicateur si lesdites données alimentant le moyen de stockage remplissent au moins une condition prédéterminée ; prise en compte de ladite modification de ladite valeur, entraînant un transfert d'au moins une partie des données contenues dans ledit moyen de stockage. 11. Method according to any one of claims 1 to 10, characterized in that it comprises the following steps: monitoring the filling rate of said storage means; modification of the value of said indicator if said data supplying the storage means meet at least one predetermined condition; taking into account of said modification of said value, resulting in a transfer of at least part of the data contained in said storage means. 12. Procédé selon l'une quelconque des revendications 1 à 11, caractérisé en ce que il comprend une étape de transfert de données entre deux moyens de stockage selon un mode combinant les techniques de transfert en rafale et en pipeline en fonction la valeur dudit indicateur. 12. Method according to any one of claims 1 to 11, characterized in that it comprises a step of transferring data between two storage means according to a mode combining the techniques of burst and pipeline transfer depending on the value of said indicator . 13. Dispositif d'optimisation de l'utilisation d'un moyen de stockage, comprenant des moyens de génération d'au moins un indicateur de remplissage, et des moyens de modification de la valeur dudit indicateur lorsque l'espace de stockage disponible dans ledit moyen de stockage dépasse au moins un seuil prédéterminé, caractérisé en ce qu'il comprend en outre des moyens de modification de la valeur dudit indicateur lorsque les données contenues dans ledit moyen de stockage remplissent au moins une condition prédéterminée. 13. Device for optimizing the use of a storage means, comprising means for generating at least one filling indicator, and means for modifying the value of said indicator when the storage space available in said storage means exceeds at least a predetermined threshold, characterized in that it further comprises means for modifying the value of said indicator when the data contained in said storage means meet at least one predetermined condition. 14. Dispositif selon la revendication 13, caractérisé en ce qu'une desdites 14. Device according to claim 13, characterized in that one of said <Desc/Clms Page number 34><Desc / Clms Page number 34> conditions prédéterminées est la réception, dans ledit moyen de stockage, d'une information de fin de transmission d'un ensemble de données.  predetermined conditions is the reception, in said storage means, of information on the end of transmission of a set of data. 15. Dispositif selon l'une quelconque des revendications 13 et 14, caractérisé en ce que ledit moyen de stockage comprend au moins une mémoire de type FIFO. 15. Device according to any one of claims 13 and 14, characterized in that said storage means comprises at least one FIFO type memory. 16. Dispositif selon la revendication 15, caractérisé en ce que la ou lesdites mémoires FIFO sont associées à des ports d'entrée de moyen de commutation. 16. Device according to claim 15, characterized in that the said FIFO memory or memories are associated with input ports of switching means. 17. Dispositif selon l'une quelconque des revendications 13 à 16, caractérisé en ce qu'il comprend des moyens de contrôle de logique en cascade (en anglais "pipelined logic") assurant le transfert d'au moins une partie desdites données contenues dans ledit moyen de stockage, lorsque ladite valeur est modifiée. 17. Device according to any one of claims 13 to 16, characterized in that it comprises cascade logic control means (in English "pipelined logic") ensuring the transfer of at least part of said data contained in said storage means, when said value is modified. 18. Dispositif selon la revendication 17, caractérisé en ce que la valeur dudit indicateur est fonction d'un temps de réaction desdits moyens de contrôle. 18. Device according to claim 17, characterized in that the value of said indicator is a function of a reaction time of said control means. 19. Dispositif selon l'une quelconque des revendications 13 à 18, caractérisé en ce que la valeur dudit indicateur est modifiée lorsque ledit moyen de stockage est presque plein (en anglais"almost full"). 19. Device according to any one of claims 13 to 18, characterized in that the value of said indicator is modified when said storage means is almost full (in English "almost full"). 20. Dispositif de commutation, caractérisé en ce qu'il comprend des moyens d'optimisation de l'utilisation d'un moyen de stockage interne, lesdits moyens d'optimisation comprenant des moyens de génération d'au moins un indicateur de remplissage, et des moyens de modification de la valeur dudit indicateur lorsque l'espace de stockage disponible dans ledit moyen de stockage dépasse au moins un seuil prédéterminé, et/ou lorsque les données contenues dans ledit moyen de stockage remplissent au moins une condition prédéterminée. 20. Switching device, characterized in that it comprises means for optimizing the use of an internal storage means, said optimization means comprising means for generating at least one filling indicator, and means for modifying the value of said indicator when the storage space available in said storage means exceeds at least a predetermined threshold, and / or when the data contained in said storage means meet at least one predetermined condition. 21. Dispositif de commutation selon la revendication 20, caractérisé en ce qu'il comprend un dispositif d'optimisation de l'utilisation d'un moyen de stockage selon l'une quelconque des revendications 13 à 20. 21. Switching device according to claim 20, characterized in that it comprises a device for optimizing the use of a storage means according to any one of claims 13 to 20. 22. Dispositif de commutation selon l'une quelconque des revendications 20 et 21, caractérisé en ce qu'une desdites conditions prédéterminées est la réception, dans ledit moyen de stockage, d'une information de fin de transmission d'un ensemble de données. 22. Switching device according to any one of claims 20 and 21, characterized in that one of the said predetermined conditions is the reception, in the said storage means, of information on the end of transmission of a set of data. <Desc/Clms Page number 35><Desc / Clms Page number 35> 23. Dispositif de commutation selon l'une quelconque des revendications 20 à 22, caractérisé en ce que ledit moyen de stockage comprend au moins une mémoire de type FIFO.  23. Switching device according to any one of claims 20 to 22, characterized in that said storage means comprises at least one memory of the FIFO type. 24. Dispositif de commutation selon l'une quelconque des revendications 20 à 23, caractérisé en ce qu'il comprend des moyens de contrôle de logique en cascade (en anglais"pipelined logic") assurant le transfert d'au moins une partie desdites données contenues dans ledit moyen de stockage, lorsque ladite valeur est modifiée. 24. Switching device according to any one of claims 20 to 23, characterized in that it comprises cascade logic control means (in English "pipelined logic") ensuring the transfer of at least part of said data contained in said storage means, when said value is modified. 25. Dispositif de commutation selon la revendication 24, caractérisé en ce que la valeur dudit indicateur est fonction d'un temps de réaction desdits moyens de contrôle. 25. Switching device according to claim 24, characterized in that the value of said indicator is a function of a reaction time of said control means. 26. Dispositif de commutation selon l'une quelconque des revendications 20 à 25, caractérisé en ce que la valeur dudit indicateur est modifiée lorsque ledit moyen de stockage est presque plein (en anglais"almost full"). 26. Switching device according to any one of claims 20 to 25, characterized in that the value of said indicator is modified when said storage means is almost full (in English "almost full"). 27. Signal représentatif d'un indicateur de remplissage d'un moyen de stockage pouvant véhiculer au moins deux valeurs distinctes, au moins une première valeur associée à un état sensiblement vide dudit moyen de stockage, et au moins une deuxième valeur associée à un état sensiblement plein dudit moyen de stockage, caractérisé en ce que ledit signal prend également ladite deuxième valeur lorsque les données contenues dans ledit moyen de stockage remplissent au moins une condition prédéterminée. 27. Signal representative of an indicator for filling a storage means that can convey at least two distinct values, at least a first value associated with a substantially empty state of said storage means, and at least a second value associated with a state substantially full of said storage means, characterized in that said signal also takes said second value when the data contained in said storage means meet at least one predetermined condition. 28. Signal selon la revendication 27, caractérisé en ce qu'une desdites conditions prédéterminées est la réception, dans ledit moyen de stockage, d'une information de fin de transmission d'un ensemble de données. 28. Signal according to claim 27, characterized in that one of said predetermined conditions is the reception, in said storage means, of information on the end of transmission of a set of data. 29. Signal selon l'une quelconque des revendications 27 et 28, caractérisé en ce que ledit moyen de stockage comprend au moins une mémoire de type FIFO. 29. Signal according to any one of claims 27 and 28, characterized in that said storage means comprises at least one memory of FIFO type. 30. Signal selon l'une quelconque des revendications 27 à 28, caractérisé en ce que la modification de ladite valeur entraîne le transfert d'au moins une partie desdites données contenues dans ledit moyen de stockage. 30. Signal according to any one of claims 27 to 28, characterized in that the modification of said value results in the transfer of at least part of said data contained in said storage means. 31. Signal selon l'une quelconque des revendications 27 à 30, caractérisé en ce 31. Signal according to any one of claims 27 to 30, characterized in that <Desc/Clms Page number 36><Desc / Clms Page number 36> que la valeur dudit indicateur est fonction d'un temps de réaction desdits moyens de contrôle. that the value of said indicator is a function of a reaction time of said control means. 32. Signal selon l'une quelconque des revendications 27 à 31, caractérisé en ce que la valeur dudit indicateur est modifiée lorsque ledit moyen de stockage est presque plein (en anglais"almost full"). 32. Signal according to any one of claims 27 to 31, characterized in that the value of said indicator is modified when said storage means is almost full (in English "almost full"). 33. Signal selon la revendication 32, caractérisé en ce que la valeur dudit indicateur est modifiée lorsque le taux de remplissage dudit moyen de stockage est supérieur à N-x, où : N représente la taille dudit moyen de stockage ; x représente la profondeur du pipeline, ledit transfert reposant sur une logique en cascade. 33. Signal according to claim 32, characterized in that the value of said indicator is modified when the filling rate of said storage means is greater than N-x, where: N represents the size of said storage means; x represents the depth of the pipeline, said transfer being based on a cascade logic. 34. Noeud de commutation comprenant au moins deux moyens de stockage et un moyen de transfert entre au moins deux desdits moyens de stockage, et des moyens de génération d'au moins un indicateur de remplissage, et des moyens de modification de la valeur dudit indicateur lorsque l'espace de stockage disponible dans au moins un desdits moyens de stockage dépasse au moins un seuil prédéterminé, caractérisé en ce qu'il comprend en outre des moyens de modification de la valeur dudit indicateur lorsque les données contenues dans ledit moyen de stockage remplissent au moins une condition prédéterminée. 34. Switching node comprising at least two storage means and a transfer means between at least two of said storage means, and means for generating at least one filling indicator, and means for modifying the value of said indicator when the storage space available in at least one of said storage means exceeds at least a predetermined threshold, characterized in that it further comprises means for modifying the value of said indicator when the data contained in said storage means fill at least one predetermined condition. 35. Noeud de commutation selon la revendication 34, caractérisé en ce qu'il comprend un moyen de contrôle activant le transfert de données entre deux desdits moyens de stockage selon un mode combinant les techniques de transfert en rafale et en pipeline selon la valeur dudit indicateur. 35. Switching node according to claim 34, characterized in that it comprises a control means activating the transfer of data between two of said storage means according to a mode combining the techniques of transfer in burst and in pipeline according to the value of said indicator . 36. Noeud de commutation selon l'une quelconque des revendications 34 et 35, caractérisé en ce qu'il comprend au moins un dispositif d'optimisation de l'utilisation d'un moyen de stockage selon l'une quelconque des revendications 13 à20. 36. Switching node according to any one of claims 34 and 35, characterized in that it comprises at least one device for optimizing the use of a storage means according to any one of claims 13 to 20. 37. Application du procédé selon l'une quelconque des revendications 1 à 12 à l'un au moins des domaines appartenant au groupe comprenant : 37. Application of the method according to any one of claims 1 to 12 to at least one of the fields belonging to the group comprising: <Desc/Clms Page number 37><Desc / Clms Page number 37> la commutation à haut débit ; la transmission de données numériques ; la réception de données numériques ; les applications audio ; la transmission d'images en temps réel. high speed switching; transmission of digital data; reception of digital data; audio applications; real-time image transmission.
FR0102034A 2001-02-14 2001-02-14 METHOD FOR OPTIMIZING THE USE OF A STORAGE MEANS, SWITCHING DEVICE, SIGNAL, AND CORRESPONDING APPLICATIONS Expired - Fee Related FR2820845B1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
FR0102034A FR2820845B1 (en) 2001-02-14 2001-02-14 METHOD FOR OPTIMIZING THE USE OF A STORAGE MEANS, SWITCHING DEVICE, SIGNAL, AND CORRESPONDING APPLICATIONS
GB0202519A GB2375196B (en) 2001-02-14 2002-02-04 Method for optimizing the use of a storage means and devices and switching nodes for implementing the same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
FR0102034A FR2820845B1 (en) 2001-02-14 2001-02-14 METHOD FOR OPTIMIZING THE USE OF A STORAGE MEANS, SWITCHING DEVICE, SIGNAL, AND CORRESPONDING APPLICATIONS

Publications (2)

Publication Number Publication Date
FR2820845A1 true FR2820845A1 (en) 2002-08-16
FR2820845B1 FR2820845B1 (en) 2003-05-16

Family

ID=8860027

Family Applications (1)

Application Number Title Priority Date Filing Date
FR0102034A Expired - Fee Related FR2820845B1 (en) 2001-02-14 2001-02-14 METHOD FOR OPTIMIZING THE USE OF A STORAGE MEANS, SWITCHING DEVICE, SIGNAL, AND CORRESPONDING APPLICATIONS

Country Status (2)

Country Link
FR (1) FR2820845B1 (en)
GB (1) GB2375196B (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0551191A1 (en) * 1992-01-09 1993-07-14 Digital Equipment Corporation Apparatus and method for transferring data to and from host system
US5434892A (en) * 1994-09-16 1995-07-18 Intel Corporation Throttling circuit for a data transfer system
US6092071A (en) * 1997-11-04 2000-07-18 International Business Machines Corporation Dedicated input/output processor method and apparatus for access and storage of compressed data

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2482806A1 (en) * 1980-05-19 1981-11-20 France Etat METHOD AND DEVICE FOR SYNCHRONIZING A DIGITAL SIGNAL
FR2594277B1 (en) * 1986-02-13 1993-04-23 Houdoin Thierry DOUBLE LOOP PACKET SYNCHRONIZATION WITH PHASE LOCK
DE4104957A1 (en) * 1991-02-18 1992-08-20 Siemens Ag CIRCUIT TO CONNECT A MICROPROCESSOR SYSTEM TO A COMMUNICATION CHANNEL
KR950015189B1 (en) * 1993-10-28 1995-12-23 대우전자주식회사 Error detecting apparatus of wide-width fifo buffer
EP0752642B1 (en) * 1995-07-07 2001-09-26 Sun Microsystems, Inc. Method and apparatus for dynamically calculating degrees of fullness of a synchronous fifo
US5859980A (en) * 1996-02-08 1999-01-12 Advanced Micro Devices, Inc. Network interface having adaptive transmit start point for each packet to avoid transmit underflow
FR2769387B1 (en) * 1997-10-07 2001-08-10 Sat Sa De Telecomm METHOD FOR MANAGING AN ELASTIC MEMORY AND DEVICE FOR IMPLEMENTING THE METHOD

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0551191A1 (en) * 1992-01-09 1993-07-14 Digital Equipment Corporation Apparatus and method for transferring data to and from host system
US5434892A (en) * 1994-09-16 1995-07-18 Intel Corporation Throttling circuit for a data transfer system
US6092071A (en) * 1997-11-04 2000-07-18 International Business Machines Corporation Dedicated input/output processor method and apparatus for access and storage of compressed data

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
KEELE UNIVERSITY: "APPLICATION NOTE AN001 USING THE CW 1355 C111 INTERFACE", XP002185258, Retrieved from the Internet <URL:http://www.walker.demon.co.uk/c111app-pdf> [retrieved on 20011201] *

Also Published As

Publication number Publication date
FR2820845B1 (en) 2003-05-16
GB2375196A (en) 2002-11-06
GB0202519D0 (en) 2002-03-20
GB2375196B (en) 2003-12-17

Similar Documents

Publication Publication Date Title
EP1701274B1 (en) Communication node architecture in a globaly asynchronous network on-chip system
EP1701273B1 (en) Globally asynchronous communication architecture for on-chip system
FR2820921A1 (en) DEVICE AND METHOD FOR TRANSMISSION IN A SWITCH
EP0349371B1 (en) Computer system having a central interconnection
FR2961048A1 (en) CHIP NETWORK WITH QUALITY-OF-SERVICE CHARACTERISTICS
FR2773935A1 (en) COMMUNICATION METHODS BETWEEN COMPUTER SYSTEMS AND DEVICES USING THE SAME
EP0524070A1 (en) Universal coupling device between a computer bus and a controller of a group of peripherals
FR2824434A1 (en) Digital packet switched network broadcasting nodes/links having nodes broadcasting simultaneously several links and recovery path calculation minimising links per node.
CA2006831C (en) System with a single hdlc circuit and a conversion buffer memory for transmitting hdlc frames over a pcm channel
EP1531589B1 (en) System and method for transmission of a message sequence in an interconnection network
EP0410860B1 (en) Interface for connecting a computer bus to a fibre-optic ring network
EP0587468A2 (en) Photonic connection network with multicast capability
FR2820845A1 (en) METHOD OF OPTIMIZING THE USE OF A STORAGE MEDIA, SWITCHING DEVICE, SIGNAL, AND CORRESPONDING APPLICATIONS
FR2774242A1 (en) Composite digital word cell asynchronous switching technique
FR2827995A1 (en) Method and device for controlling a memory store of type First-In First-Out (FIFO)
FR3001310A1 (en) CHIP NETWORK INTERFACE PROVIDED WITH ADAPTIVE DATA SENDING INITIATION SYSTEM
WO2015177452A1 (en) Digital frame switch
EP0470875B1 (en) Communication controller between a computer and a plurality of ISDN terminals
WO2020109733A2 (en) Data management for storing data frames in the memory of a data transmission system
FR2827996A1 (en) Method and device for controlling a memory store comprising at least one First-In First-Out (FIFO) memory of variable size
FR2826535A1 (en) Switching network digital packet transmission having communications network branches and descriptor header detailing recover branch path/broadcasting following header description.
FR2848056A1 (en) Audiovisual domestic digital bus heterogeneous network destination node information synchronization having input node second synchronization packet set following first packet and inserting synchronization mark second packet
EP0481896B1 (en) Communication controller between a computer and a plurality of terminals belonging to a network of the CSMA/CD type
EP0589743A1 (en) Modular device for coupling and multiplexing different type buses
EP0274327B1 (en) Information exchange system between a memory and peripheral devices

Legal Events

Date Code Title Description
ST Notification of lapse

Effective date: 20141031