FR2819668A1 - Digital word transfer across two series bus interconnecting bridge having memorised write request reception date and determining first future date write response/sending local system prior date. - Google Patents

Digital word transfer across two series bus interconnecting bridge having memorised write request reception date and determining first future date write response/sending local system prior date. Download PDF

Info

Publication number
FR2819668A1
FR2819668A1 FR0100677A FR0100677A FR2819668A1 FR 2819668 A1 FR2819668 A1 FR 2819668A1 FR 0100677 A FR0100677 A FR 0100677A FR 0100677 A FR0100677 A FR 0100677A FR 2819668 A1 FR2819668 A1 FR 2819668A1
Authority
FR
France
Prior art keywords
date
bridge
local system
write
local
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
FR0100677A
Other languages
French (fr)
Other versions
FR2819668B1 (en
Inventor
Mohamed Braneci
Pascal Rousseau
Patrice Nezou
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 FR0100677A priority Critical patent/FR2819668B1/en
Publication of FR2819668A1 publication Critical patent/FR2819668A1/en
Application granted granted Critical
Publication of FR2819668B1 publication Critical patent/FR2819668B1/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4604LAN interconnection over a backbone network, e.g. Internet, Frame Relay
    • H04L12/462LAN interconnection over a bridge based backbone
    • H04L12/4625Single bridge functionality, e.g. connection of two networks over a single bridge

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Transfer Systems (AREA)

Abstract

The communications process between a local system connects to a first series and a remote system across a bridge. There are steps of reception (E501,E503,E507,E513) of a write request from a remote determination distance (E509) , determining adaptation. The write request reception date in the bridge is memorized (E527) and the first future date (E529) determined corresponding to the latest sending of the write response satisfying a time condition. A write response is sent to the local system before the determined date is passed.

Description

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

La présente invention concerne de manière générale le transfert de données au travers d'un pont d'interconnexion de deux bus séries.  The present invention relates generally to the transfer of data through an interconnection bridge of two serial buses.

Plus particulièrement, l'invention concerne un procédé de communication entre un système local connecté à un premier bus série, et un système distant connecté à un second bus série, au travers d'un pont d'interconnexion, ledit système local étant non adapté à l'échange d'informations au travers du pont interconnectant les deux bus précités.  More particularly, the invention relates to a method of communication between a local system connected to a first serial bus, and a remote system connected to a second serial bus, through an interconnection bridge, said local system not being suitable for the exchange of information across the bridge interconnecting the two aforementioned buses.

L'invention concerne en particulier la communication entre des systèmes au travers d'un pont défini selon le standard IEEE 1394 reliant deux bus série locaux tels que définis par le standard IEEE 1394.  The invention relates in particular to communication between systems through a bridge defined according to the IEEE 1394 standard connecting two local serial buses as defined by the IEEE 1394 standard.

L'invention concerne également un appareil adapté à la mise en oeuvre d'un tel procédé de communication.  The invention also relates to an apparatus suitable for implementing such a communication method.

Le standard IEEE 1394 (ci-après parfois désigné par"IEEE 1394") définit une technologie de bus série destiné à interconnecter des produits d'électronique grand public et des systèmes informatiques, tels que par exemple des télévisions numériques, des ordinateurs personnels, des magnétoscopes numériques, des caméscopes numériques, des imprimantes, des télécopieurs, etc. IEEE 1394 (parfois désigné par firewire) définit des modes de communication isochrone et asynchrone pour le transfert de données, ce qui le rend idéalement adapté aux applications multimédia.  The IEEE 1394 standard (hereinafter sometimes referred to as "IEEE 1394") defines a serial bus technology intended to interconnect consumer electronics products and computer systems, such as for example digital televisions, personal computers, digital video recorders, digital camcorders, printers, fax machines, etc. IEEE 1394 (sometimes referred to as firewire) defines isochronous and asynchronous communication modes for data transfer, which makes it ideally suited for multimedia applications.

IEEE 1394 autorise une longueur ou distance maximum câblée de 4,5 mètres. Par conséquent, intrinsèquement un bus série IEEE 1394 peut seulement être utilisé pour interconnecter des éléments qui sont relativement  IEEE 1394 allows a maximum cable length or distance of 4.5 meters. Therefore, intrinsically an IEEE 1394 serial bus can only be used to interconnect elements that are relatively

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

proches les uns des autres. Un tel système pour interconnecter des éléments qui sont proches les uns des autres est couramment désigné par segment ou grappe (en anglais cluster).  close to each other. Such a system for interconnecting elements which are close to each other is commonly designated by segment or cluster.

Par ailleurs, l'architecture de bus IEEE 1394 limite à 63 le nombre de noeuds (c. -à-d. systèmes connectés) sur un bus donné. Il existe actuellement plusieurs solutions pour étendre les capacités d'un bus IEEE 1394 dans le cadre d'une infrastructure câblée. Une solution majeure, actuellement toujours en cours de discussion au sein du sous-groupe IEEE p1394. 1 (ci-après désigné par"p1394. 1" ou"IEEE p1394. 1"), permet déjà d'étendre le bus série haute performance (High Performance Serial Bus-IEEE 1394-1995) au delà du bus local, au moyen d'un dispositif particulier : le pont. Selon IEEE p1394. 1, cette solution consiste à créer un"pont" (bridge) câblé entre deux segments (grappes) différents à base de bus série. Le pont d'interconnexion tel que défini par le sous-groupe IEEE p1394. 1, sera dans la suite de la description désigné par"pont IEEE1394". Un tel pont sera décrit plus loin en liaison avec la FIG. 1.  Furthermore, the IEEE 1394 bus architecture limits the number of nodes (ie connected systems) on a given bus to 63. There are currently several solutions for expanding the capabilities of an IEEE 1394 bus as part of a wired infrastructure. A major solution, currently still under discussion within the IEEE p1394 subgroup. 1 (hereinafter referred to as "p1394. 1" or "IEEE p1394. 1"), already makes it possible to extend the high performance serial bus (High Performance Serial Bus-IEEE 1394-1995) beyond the local bus, by means of a particular device: the bridge. According to IEEE p1394. 1, this solution consists in creating a "bridge" (bridge) wired between two different segments (clusters) based on serial bus. The interconnection bridge as defined by the IEEE p1394 subgroup. 1, will be in the following description designated by "IEEE1394 bridge". Such a bridge will be described later in connection with FIG. 1.

Selon IEEE p1394. 1, deux types de systèmes ou noeuds sont définis par rapport au pont précité. D'une part, les systèmes qui sont adaptés au pont (en anglais bridge aware devices), et d'autre part, ceux qui ne sont pas adaptés à un tel pont (en anglais non bridge aware devices), appelés"legacy

Figure img00020001

devices"en anglais. Dans la suite de la description, le terme anglais"legacy", qui pourrait être traduit en français par"existant", sera repris dans le présent mémoire afin d'éviter tout contresens avec le sens donné à ce terme, en anglais, dans l'état de la technique. According to IEEE p1394. 1, two types of systems or nodes are defined with respect to the above-mentioned bridge. On the one hand, the systems which are adapted to the bridge (in English bridge aware devices), and on the other hand, those which are not adapted to such a bridge (in English non bridge aware devices), called "legacy
Figure img00020001

devices "in English. In the remainder of the description, the English term" legacy ", which could be translated into French as" existent ", will be used in this brief in order to avoid any misinterpretation with the meaning given to this term, in English, in the state of the art.

Selon IEEE p1394. 1, les systèmes legacy peuvent réussir à fonctionner dans un environnement de pont avec cependant certaines restrictions. En effet, selon p1394. 1, les systèmes legacy sont supposés n'être seulement que des demandeurs en lecture (write-only requesters). A ce titre, ils sont limités à la génération de transactions d'écriture à distance (remote write transactions). Ainsi, les transactions de lecture ou de verrouillage à distance (remote read and lock transactions) sont interdites et donc rejetées.  According to IEEE p1394. 1, legacy systems can successfully operate in a bridge environment with certain restrictions. Indeed, according to p1394. 1, legacy systems are assumed to be only write-only requesters. As such, they are limited to the generation of remote write transactions. Thus, remote read and lock transactions are prohibited and therefore rejected.

Cependant, les ponts n'offrent qu'une compatibilité limitée avec les transactions d'écriture à distance émises par des systèmes legacy. En effet,  However, bridges offer only limited compatibility with remote write transactions issued by legacy systems. Indeed,

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

lorsqu'un système legacy envoie une requête d'écriture à distance (remote write transaction request), le pont-plus exactement son port d'entrée (inbound porta/)-accepte la requête et renvoie au système legacy une réponse automatique (write transaction response), indiquant que la requête d'écriture s'est terminée de manière réussie, avant même que cette requête d'écriture ne soit parvenue à sa destination. Lorsque la requête d'écriture atteint finalement le noeud destinataire, celui-ci renvoie une réponse d'écriture (write transaction response) qui est filtrée au niveau du pont et non traitée.  when a legacy system sends a remote write transaction request, the bridge-more precisely its input port (inbound porta /) - accepts the request and sends an automatic response to the legacy system (write transaction response), indicating that the write request ended successfully, even before this write request reached its destination. When the write request finally reaches the destination node, the latter sends a write transaction response which is filtered at the bridge level and not processed.

La finalité de ce processus est d'éviter que la durée de temporisation de transaction (split transaction timeout) au noeud source (le système legacy) ne soit expirée avant que la réponse issue du noeud de destination ne soit reçue dans le noeud source. En d'autres termes, ce qui est visé, c'est la compatibilité avec une durée de temporisation apparemment courte au niveau du système legacy. En effet, les systèmes legacy ne sont pas conçus pour initier des transactions à distance. Lorsqu'un tel système envoie une requête de transaction d'écriture (write transaction request), il active une temporisation locale (split timeout) dont la durée est de 100 millisecondes (ms) au minimum, définissant ainsi l'intervalle de temps minimum à respecter avant d'élaborer une nouvelle requête. Cette temporisation est bien adaptée à une transaction locale. Pour une transaction à distance, le noeud source doit prendre en compte les retards introduits par le pont. C'est la raison pour laquelle le port d'entrée (inbound portal) du pont renvoie immédiatement au noeud local un message indiquant que l'écriture s'est bien déroulée (write response OKpacket).

Figure img00030001
The purpose of this process is to prevent the split transaction timeout at the source node (the legacy system) from expiring before the response from the destination node is received at the source node. In other words, what is aimed at is compatibility with an apparently short delay time in the legacy system. Legacy systems are not designed to initiate remote transactions. When such a system sends a write transaction request, it activates a local timeout (split timeout) of at least 100 milliseconds (ms) duration, thereby defining the minimum time interval to respect before developing a new request. This time delay is well suited to a local transaction. For a remote transaction, the source node must take into account the delays introduced by the bridge. This is the reason why the bridge's inbound portal immediately sends a message to the local node indicating that the writing has been successful (write response OKpacket).
Figure img00030001

Au contraire, les systèmes conçus pour être adaptés aux ponts IEEE1394 (bridge aware devices), définissent une temporisation à distance (remote timeout) qui prend en compte les retards introduits par les ponts. La temporisation à distance est au moins le double de la temporisation locale. On the contrary, systems designed to be adapted to IEEE1394 bridges (bridge aware devices), define a remote timeout which takes into account the delays introduced by the bridges. The remote time delay is at least double the local time delay.

D'autre part, la temporisation à distance est dépendante du chemin suivi, et un message spécial de gestion du pont détermine la temporisation distante pour chaque noeud distant. On the other hand, the remote timing is dependent on the path followed, and a special bridge management message determines the remote timing for each remote node.

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

Figure img00040001
Figure img00040001

Le processus d'écriture à distance par un système legacy au travers d'un pont IEEE1394, tel que défini supra, présente un certain nombre d'inconvénients. Ainsi, lorsque des erreurs interviennent dans la communication entre le pont et le noeud distant (destinataire), ces erreurs ne pourront être détectées qu'au niveau application du noeud source ou bien du noeud de destination. D'autre part, le fait que le noeud local (émetteur) reçoive immédiatement et automatiquement une réponse (write transaction response) signifiant que la transaction de lecture s'est bien déroulée, permet au noeud local d'émettre de nouvelles transactions d'écriture, ce qui peut, dans le cas où le chemin entre le pont et le noeud se trouve dans une situation de congestion, provoquer une surcharge ou dépassement de capacité (butter overflow) dans le pont. Ce processus d'écriture à distance interdit donc la gestion d'erreurs (error management) et la gestion du débordement de tampon (buffer overflow management) dans le pont. The process of remote writing by a legacy system through an IEEE1394 bridge, as defined above, has a number of drawbacks. Thus, when errors occur in the communication between the bridge and the remote node (recipient), these errors can only be detected at the application level of the source node or of the destination node. On the other hand, the fact that the local node (sender) immediately and automatically receives a response (write transaction response) meaning that the read transaction has gone smoothly, allows the local node to issue new write transactions , which can, in the case where the path between the bridge and the node is in a situation of congestion, cause an overload or overflow of capacity (butter overflow) in the bridge. This remote writing process therefore prohibits error management and the management of buffer overflow management in the bridge.

Le but de la présente invention est par conséquent de résoudre les inconvénients précités liés au processus, tel que défini présentement par IEEE p1394. 1, pour effectuer une transaction d'écriture à distance depuis un noeud local legacy vers un noeud distant, au travers d'un pont.  The aim of the present invention is therefore to solve the aforementioned drawbacks linked to the process, as currently defined by IEEE p1394. 1, to perform a remote write transaction from a local legacy node to a remote node, across a bridge.

A cet effet la présente invention concerne, selon un premier aspect, un procédé de communication entre un système local connecté à un premier bus série, et un système distant connecté à un second bus série, au travers d'un pont interconnectant les deux bus, le système local pouvant ne pas être adapté pour échanger des informations au travers du pont. Le procédé comporte les étapes préalables de réception d'une requête d'écriture émise par le système local à destination du système distant et de détermination du type du système local émetteur de la requête d'écriture. Le procédé est remarquable en ce que, si le système local est déterminé comme n'étant pas adapté pour échanger des informations au travers du pont, il comporte les étapes suivantes : - mémorisation de la date de réception (Date-Réception) de la requête d'écriture dans le pont ; - détermination d'une première date future (DateMax) définie par rapport à ladite date de réception (Date-Réception), et correspondant à la date  To this end, the present invention relates, according to a first aspect, to a communication method between a local system connected to a first serial bus, and a remote system connected to a second serial bus, through a bridge interconnecting the two buses, the local system may not be suitable for exchanging information across the bridge. The method includes the prior steps of receiving a write request sent by the local system to the remote system and determining the type of the local system sending the write request. The method is remarkable in that, if the local system is determined not to be suitable for exchanging information across the bridge, it comprises the following steps: - memorization of the date of reception (Date-Reception) of the request writing in the bridge; - determination of a first future date (DateMax) defined in relation to said date of receipt (Date-Receipt), and corresponding to the date

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

la plus tardive à laquelle envoyer au système local une réponse d'écriture, de manière à satisfaire une condition de temporisation prédéterminée pour le système local ; - envoi d'une réponse d'écriture au système local, au plus tard lorsque la première date (DateMax) est passée.  the later one to send a write response to the local system, so as to satisfy a predetermined timeout condition for the local system; - sending a write response to the local system, at the latest when the first date (DateMax) has passed.

De cette façon, en déterminant une limite temporelle future

Figure img00050001

(DateMax) à partir de la réception de la requête d'écriture, pour l'envoi d'une réponse d'écriture au système local, on laisse un laps de temps plus important pour donner, par exemple, la possibilité au destinataire d'envoyer une réponse réelle. In this way, by determining a future time limit
Figure img00050001

(DateMax) from the receipt of the write request, for sending a write response to the local system, a longer period of time is left to give, for example, the recipient the possibility of send an actual response.

Dans un mode préféré de réalisation de l'invention, le pont et les bus sont conformes au standard 1 EEE p1394. 1 ; et le système local, qui n'est pas adapté à l'échange d'informations au travers du pont, est de type"legacy" au sens du standard IEEE p1394. 1.  In a preferred embodiment of the invention, the bridge and the buses conform to the 1 EEE p1394 standard. 1; and the local system, which is not suitable for the exchange of information across the bridge, is of the "legacy" type within the meaning of the IEEE p1394 standard. 1.

Le standard IEEE p1394. 1 est en effet particulièrement adapté pour la mise en oeuvre de l'invention.  The IEEE p1394 standard. 1 is in fact particularly suitable for implementing the invention.

Le pont d'interconnexion comprend un port d'entrée connecté au premier bus et un port de sortie connecté au second bus. Selon une implémentation préférée de l'invention, l'étape d'envoi d'une réponse d'écriture au système local comporte les étapes suivantes : - vérification que la première date (DateMax) est passée ou non ; - si c'est le cas, envoi d'une réponse d'écriture au système local ; - sinon, déterminer une seconde date future (DateMax2) comprise entre la date de réception (Date-Réception) de la requête d'écriture et la première date (Date~Max), la seconde date étant d'autant plus proche de la date de réception de la requête que le flux de données entre le port d'entrée et le port de sortie du pont est faible ; - envoi d'une réponse d'écriture au système local, au plus tard lorsque la seconde date (Date~Max2) est passée.  The interconnect bridge includes an input port connected to the first bus and an output port connected to the second bus. According to a preferred implementation of the invention, the step of sending a write response to the local system comprises the following steps: - verification that the first date (DateMax) has passed or not; - if so, sending a write response to the local system; - otherwise, determine a second future date (DateMax2) between the date of receipt (Date-Reception) of the write request and the first date (Date ~ Max), the second date being all the closer to the date receiving the request that the data flow between the input port and the output port of the bridge is weak; - sending a write response to the local system, at the latest when the second date (Date ~ Max2) has passed.

En recalculant la date future (Datemax2) la plus tardive à laquelle envoyer une réponse au système local, en fonction de l'intensité du trafic (flux de données) entre le port d'entrée et le port de sortie du pont, cela permet  By recalculating the latest future date (Datemax2) to which to send a response to the local system, according to the intensity of the traffic (data flow) between the input port and the output port of the bridge, this allows

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

"d'asservir"la rapidité d'envoi de la réponse au système local en fonction de ce trafic, tout en respectant la condition de temporisation codée pour le système local.  "slave" the speed of sending the response to the local system as a function of this traffic, while respecting the time-out condition coded for the local system.

De manière pratique, la condition de temporisation prédéterminée pour le système local (legacy) est définie par une valeur de temporisation locale (DTV) prédéterminée pour ce système et déterminant l'intervalle de temps maximal entre la réception de la requête d'écriture par le port d'entrée et l'envoi par celui-ci d'une réponse d'écriture au système local.  In practical terms, the predetermined timeout condition for the local system (legacy) is defined by a local timeout value (DTV) predetermined for this system and determining the maximum time interval between the reception of the write request by the port of entry and sending a write response to the local system.

Selon un mode de réalisation préféré de l'invention, la première date (Date~Max) déterminée par le port d'entrée du pont, est obtenue par l'équation suivante : Date-maux = Date-Réception + DTV où DTV représente la valeur prédéterminée de temporisation locale affectée au système local, et Date-Réception est la date de réception de la requête d'écriture dans le pont.  According to a preferred embodiment of the invention, the first date (Date ~ Max) determined by the input port of the bridge, is obtained by the following equation: Date-evils = Date-Reception + DTV where DTV represents the predetermined local timeout value assigned to the local system, and Date-Receive is the date of receipt of the write request to the bridge.

D'autre part, la seconde date (Date~Max2) est obtenue par l'équation suivante : Date~Max2 = Date-maux + (k-1). DTV
Où k est un nombre réel compris entre 0 et 1, dont la valeur est fonction de l'importance du flux de données entre le port d'entrée et le port de sortie du pont.
On the other hand, the second date (Date ~ Max2) is obtained by the following equation: Date ~ Max2 = Date-evils + (k-1). DTV
Where k is a real number between 0 and 1, the value of which depends on the size of the data flow between the input port and the output port of the bridge.

Selon un mode de réalisation préféré de l'invention, le flux de données entre le port d'entrée et le port de sortie du pont est mesuré par le calcul du taux de remplissage d'une file d'attente destinée à stocker temporairement les paquets de données destinés à être transférés du port d'entrée vers le port de sortie du pont.  According to a preferred embodiment of the invention, the data flow between the input port and the output port of the bridge is measured by calculating the filling rate of a queue intended to temporarily store the packets data intended to be transferred from the input port to the bridge output port.

Le choix de cette file d'attente, comme indicateur de l'intensité du trafic de paquets entre le port d'entrée et le port de sortie du pont, permet d'estimer ce trafic de manière fidèle par rapport à la réalité.  The choice of this queue, as an indicator of the intensity of the packet traffic between the port of entry and the port of exit of the bridge, makes it possible to estimate this traffic in a faithful manner compared to reality.

D'autre part, selon une caractéristique particulière de réalisation, le nombre k est choisi égal au taux de remplissage de cette file d'attente.  On the other hand, according to a particular embodiment characteristic, the number k is chosen equal to the filling rate of this queue.

Selon une variante de réalisation, le nombre k est choisi égal à une valeur de seuil prédéterminée, lorsque celle-ci est atteinte par le taux de remplissage de la file d'attente.  According to an alternative embodiment, the number k is chosen equal to a predetermined threshold value, when this is reached by the filling rate of the queue.

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

Selon un autre mode de réalisation préféré de l'invention, on pourra prévoir de surveiller dans le pont, la réception d'une réponse d'écriture en provenance du système destinataire distant, et transmettre cette réponse d'écriture immédiatement au système local, avant même que la première date (DateMax) soit passée ou bien avant que la seconde date (Date~Max2), lorsqu'elle est déterminée, soit passée.  According to another preferred embodiment of the invention, provision may be made to monitor in the bridge, the reception of a write response from the remote recipient system, and to transmit this write response immediately to the local system, before even if the first date (DateMax) has passed or before the second date (Date ~ Max2), when determined, has passed.

Ainsi, la réception d'une réponse d'écriture réelle en provenance du noeud destinataire, déclenche immédiatement la transmission de cette réponse au système local.  Thus, the reception of an actual write response from the destination node, immediately triggers the transmission of this response to the local system.

Corrélativement, selon un deuxième aspect, la présente invention concerne un dispositif de communication mis en oeuvre dans un pont, pour la communication entre un système local connecté à un premier bus série, et un système distant connecté à un second bus série, au travers du pont interconnectant les deux bus, le système local pouvant ne pas être adapté pour échanger des informations au travers du pont. Ce dispositif est remarquable en ce qu'il comporte des moyens adaptés à la mise en oeuvre d'un procédé de communication tel que succinctement défini supra.  Correlatively, according to a second aspect, the present invention relates to a communication device implemented in a bridge, for communication between a local system connected to a first serial bus, and a remote system connected to a second serial bus, through the bridge interconnecting the two buses, the local system may not be suitable for exchanging information across the bridge. This device is remarkable in that it comprises means adapted to the implementation of a communication method as succinctly defined above.

L'invention vise également un pont d'interconnexion comportant des moyens adaptés à la mise en oeuvre du procédé de communication selon l'invention.  The invention also relates to an interconnection bridge comprising means suitable for implementing the communication method according to the invention.

La présente invention concerne encore un programme d'ordinateur apte à mettre en oeuvre le procédé de communication tel que brièvement défini plus haut, lorsque le programme est chargé et exécuté dans un système d'ordinateur incorporé au pont d'interconnexion.  The present invention also relates to a computer program capable of implementing the communication method as briefly defined above, when the program is loaded and executed in a computer system incorporated in the interconnection bridge.

L'invention vise aussi un support d'informations, tel que par exemple, une disquette ou un compact disque (CD) contenant un tel programme d'ordinateur.  The invention also relates to an information medium, such as for example, a floppy disk or a compact disc (CD) containing such a computer program.

Les avantages de ce dispositif, pont d'interconnexion, programme d'ordinateur, et de ce support d'informations, sont identiques à ceux du procédé de communication tels que succinctement exposés supra.  The advantages of this device, interconnection bridge, computer program, and of this information medium, are identical to those of the communication method as succinctly explained above.

D'autres particularités et avantages de l'invention apparaîtront encore dans la description ci-après.  Other features and advantages of the invention will appear in the description below.

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

Aux dessins annexés, donnés à titre d'exemples de réalisation non limitatifs : -la Figure 1 est un diagramme blocs représentant l'architecture d'un pont IEEE1394 permettant d'interconnecter deux sous-réseaux bâtis chacun autour d'un bus série IEEE1394 ; - la Figure 2 représente le format de l'identificateur d'un noeud sur un bus série IEEE1394 ; - la Figure 3 représente le format d'un paquet de données définissant une transaction asynchrone selon le standard IEEE 1394 ; - la Figure 4 illustre, selon le standard IEEE p1394. 1, le processus de traitement par un pont IEEE1394 d'une requête d'écriture distante émise par un système legacy ; - la Figure 5 est un organigramme représentant, en conformité avec l'invention, le processus de traitement d'un paquet asynchrone (tel que représenté à la FIG. 3) reçu dans un port d'entrée d'un pont IEEE1394 ; - la Figure 6 est un organigramme représentant le processus, selon l'invention, de détermination d'une date d'envoi par un port d'entrée d'un pont IEEE1394 d'une réponse d'écriture à un système legacy.  In the accompanying drawings, given by way of nonlimiting exemplary embodiments: FIG. 1 is a block diagram representing the architecture of an IEEE1394 bridge making it possible to interconnect two subnetworks each built around an IEEE1394 serial bus; - Figure 2 shows the format of the identifier of a node on an IEEE1394 serial bus; - Figure 3 shows the format of a data packet defining an asynchronous transaction according to the IEEE 1394 standard; - Figure 4 illustrates, according to the IEEE p1394 standard. 1, the process of processing by an IEEE1394 bridge a remote write request sent by a legacy system; - Figure 5 is a flowchart representing, in accordance with the invention, the process of processing an asynchronous packet (as shown in FIG. 3) received in an input port of an IEEE1394 bridge; - Figure 6 is a flowchart representing the process, according to the invention, of determining a date of sending by an input port of an IEEE1394 bridge of a write response to a legacy system.

On va d'abord décrire, en référence à la Figure 1, l'architecture d'un pont IEEE1394 permettant d'interconnecter deux sous-réseaux bâtis chacun autour d'un bus série IEEE1394. L'ensemble : pont (1)-sous-réseaux (2,3), constitue un réseau désigné ici par réseau IEEE1394.  We will first describe, with reference to Figure 1, the architecture of an IEEE1394 bridge to interconnect two subnets each built around an IEEE1394 serial bus. The assembly: bridge (1) -subnets (2,3), constitutes a network designated here by IEEE1394 network.

Comme représenté à la FIG. 1, un pont 1 d'interconnexion de bus série IEEE 1394, est utilisé pour interconnecter deux sous-réseaux 2 et 3 bâtis respectivement autour d'un bus série IEEE1394, 21, et d'un bus IEEE1394, 31.  As shown in FIG. 1, an IEEE 1394 serial bus interconnection bridge 1, is used to interconnect two subnets 2 and 3 built respectively around an IEEE1394, 21 serial bus and an IEEE1394, 31 bus.

Le sous-réseau 1 comporte un système tEEE1394,"noeud 1" (20), connecté au bus 21, alors que le sous-réseau 3 comporte un système tEEE1394,"noeud 2" (30), connecté au bus 31. Le pont 1 permet l'interconnexion entre les 2 bus 21 et 31. Subnet 1 includes a tEEE1394 system, "node 1" (20), connected to bus 21, while subnet 3 includes a tEEE1394 system, "node 2" (30), connected to bus 31. The bridge 1 allows interconnection between the 2 buses 21 and 31.

Le pont 1 comporte deux ports (porta4 entrée/sortie (E/S) 11 et 12. Chacun des ports 11 et 12 comporte des fonctionnalités de réception, de transmission et de gestion des paquets de données. Ces fonctionnalités sont  Bridge 1 has two ports (porta4 input / output (I / O) 11 and 12. Each of ports 11 and 12 has functions for receiving, transmitting and managing data packets. These functions are

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

réparties dans différentes couches fonctionnelles : couche physique (111, 121), couche de liaison (112, 122) et couche de transaction (113, 123). Ces couches peuvent être constituées d'éléments matériel (hardware) et/ou logiciel (software). Chacun des ports 11 et 12 comporte également une unité de contrôle de port (114,124) rassemblant une série de registres de contrôle et d'état pour le port considéré ainsi que pour les couches fonctionnelles précitées.  distributed in different functional layers: physical layer (111, 121), link layer (112, 122) and transaction layer (113, 123). These layers can consist of hardware (hardware) and / or software (software) elements. Each of the ports 11 and 12 also includes a port control unit (114, 124) gathering a series of control and status registers for the port considered as well as for the abovementioned functional layers.

Le pont 1 comporte également une unité de commutation 13 (switching fabric) pouvant utiliser une technologie câblée (wired technology) telle que, par exemple, celle définie par le standard IEEE 1394b ; ou une technologie sans fil (wireless technology) telle que, par exemple, celle définie selon le standard connu sous"HiperLAN 2", ou celle définie par le standard IEEE 802. 11a.  The bridge 1 also comprises a switching unit 13 (switching fabric) which can use a wired technology such as, for example, that defined by the IEEE 1394b standard; or a wireless technology such as, for example, that defined according to the standard known as "HiperLAN 2", or that defined by the IEEE 802 standard. 11a.

L'unité de commutation 13 est associée à des files d'attente (queues) 131,132 de type FIFO (first-in-first-out) pour mettre en file d'attente des paquets de données de type asynchrones ou isochrones. L'unité de commutation permet ainsi aux deux ports E/S 11 et 12 de communiquer.  The switching unit 13 is associated with queues (queues) 131,132 of FIFO type (first-in-first-out) to queue data packets of asynchronous or isochronous type. The switching unit thus allows the two I / O ports 11 and 12 to communicate.

Le pont 1 comporte en outre une unité de cycle d'horloge (clock cycle) 115 qui permet de définir une méthode pour distribuer l'horloge aux 2 ports E/S 11 et 12. Le pont 1 comporte également une table de routage 116 et une mémoire de configuration 117 de type mémoire ROM (read only memory).  Bridge 1 further comprises a clock cycle unit 115 which makes it possible to define a method for distributing the clock to the 2 I / O ports 11 and 12. Bridge 1 also comprises a routing table 116 and a configuration memory 117 of ROM memory type (read only memory).

A chaque port 11,12 du pont 1, il est associé une adresse qui l'identifie de manière unique sur le bus (21,31) auquel il est connecté. Chacun des ports 11,12 est conçu pour répondre à différents types de requêtes émises par des systèmes IEEE1394 connectés au bus correspondant. Ces requêtes sont par exemple des requêtes de lecture, d'écriture, et de verrouillage (read, write, lock requests). A cet effet, chaque port (11,12) utilise des tables de routages mémorisées dans l'unité 116 pour déterminer les transactions qui doivent être transmises, au travers de l'unité de commutation 13, à l'autre port du pont. L'unité de commutation 13 est ainsi capable de transférer n'importe quelle transaction depuis un port vers l'autre port du pont.  Each port 11,12 of the bridge 1 is associated with an address which uniquely identifies it on the bus (21,31) to which it is connected. Each of the ports 11, 12 is designed to respond to different types of requests sent by IEEE1394 systems connected to the corresponding bus. These requests are, for example, read, write, and lock requests. For this purpose, each port (11,12) uses routing tables stored in the unit 116 to determine the transactions which must be transmitted, through the switching unit 13, to the other port of the bridge. The switching unit 13 is thus capable of transferring any transaction from one port to the other port of the bridge.

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

Figure img00100001
Figure img00100001

Chaque noeud'1EEE1394", tel que le noeud 1 ou le noeud 2, est défini sur le bus (21, 31) auquel il est connecté, par un identificateur de noeud "node/D"qui inclut un identificateur de bus (10 bits de long),"bus ID", identifiant le bus sur lequel il est connecté, et un identificateur physique (6 bits de ong), "phy~ID", identifiant physiquement le noeud sur le bus. La Figure 2 représente le format d'un tel identificateur de noeud sur un bus IEEE1394. Each node "1EEE1394", such as node 1 or node 2, is defined on the bus (21, 31) to which it is connected, by a node identifier "node / D" which includes a bus identifier (10 bits long), "bus ID", identifying the bus to which it is connected, and a physical identifier (6 bits of ong), "phy ~ ID", physically identifying the node on the bus. Figure 2 represents the format d such a node identifier on an IEEE1394 bus.

Dans le cadre de la présente invention, on considère l'échange de paquets asynchrones au travers d'un pont IEEE1394. En effet, un noeud ou système IEEE1394 (21,31) peut échanger des paquets de données asynchrones, appelés transactions.  In the context of the present invention, the exchange of asynchronous packets is considered over an IEEE1394 bridge. Indeed, an IEEE1394 node or system (21,31) can exchange asynchronous data packets, called transactions.

La Figure 3 représente le format d'un paquet de données définissant une transaction asynchrone selon le standard IEEE 1394. Comme on peut le voir sur cette figure, l'en-tête d'un paquet asynchrone inclus entre autres : - un champ"Source/D" (16 bits) contenant l'identificateur de noeud (node~ID) identifiant le noeud émetteur de la transaction ;

Figure img00100002

- un champ"Destination/D" (16 bits) contenant l'identificateur de noeud (node/D) identifiant le noeud destinataire de la transaction ; - un champ"tcode" (transaction code) définissant le type de la transaction (lecture, écriture...) ; - un champ "tl" (transaction label) destiné à recevoir une étiquette permettant d'identifier la transaction considérée parmi d'autres transactions. Figure 3 represents the format of a data packet defining an asynchronous transaction according to the IEEE 1394 standard. As we can see in this figure, the header of an asynchronous packet includes among others: - a "Source" field / D "(16 bits) containing the node identifier (node ~ ID) identifying the node sending the transaction;
Figure img00100002

- a "Destination / D" field (16 bits) containing the node identifier (node / D) identifying the node receiving the transaction; - a "tcode" field (transaction code) defining the type of transaction (read, write ...); - a "tl" field (transaction label) intended to receive a label making it possible to identify the transaction considered among other transactions.

Un pont IEEE1394 ignore toutes les transactions qui s'opèrent entre noeuds ayant une adresse locale sur un même bus, mais surveille et ne prend en compte que les transactions à distance entre deux noeuds ou systèmes dont les identificateurs de noeuds (node-ID) indiquent (champ bu(s/D) un bus d'appartenance différent.  An IEEE1394 bridge ignores all transactions that take place between nodes with a local address on the same bus, but monitors and takes into account only remote transactions between two nodes or systems whose node identifiers (node-ID) indicate (field bu (s / D) a bus of different membership.

Selon le standard IEEE p1394. 1, un pont IEEE1394 est capable de connaître l'état de chacun des noeuds connectés sur chacun des bus série locaux qu'il interconnecte. Dans ce but, un processus de découverte de systèmes legacy (legacy device discovery) est exécuté dans chaque port du pont considéré, après chaque procédure de réinitialisation (reset) de bus. Au  According to the IEEE p1394 standard. 1, an IEEE1394 bridge is capable of knowing the state of each of the nodes connected to each of the local serial buses which it interconnects. For this purpose, a legacy device discovery process is executed in each port of the considered bridge, after each bus reset procedure. At

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

cours de ce processus, chaque port du pont récupère, de la part de chacun des noeuds connectés au bus local auquel il est connecté, un paquet de données d'identification du noeud (Self lD packet), permettant au port de connaître l'identificateur physique (phy ID) du noeud, ainsi que ses fonctionnalités. En particulier, le port considéré du pont lit et mémorise pour chaque noeud un bloc d'information de bus (BIB-bus information block) permettant d'en identifier le caractère"legacy'ou adapté (bridge aware) tel que défini plus haut. Le bloc d'information de bus (BIB) est lu dans une mémoire de configuration de type ROM présente dans chacun des noeuds connectés au bus local considéré. Le bloc BIB comporte notamment un bit"b"déterminant le caractère"/egacy"du noeud considéré, lorsque ce bit prend la valeur"0".  during this process, each port of the bridge retrieves, from each of the nodes connected to the local bus to which it is connected, a packet of node identification data (Self lD packet), allowing the port to know the identifier physical (phy ID) of the node, as well as its functionality. In particular, the considered port of the bridge reads and stores for each node a bus information block (BIB-bus information block) making it possible to identify its "legacy 'or adapted (bridge aware) character as defined above. The bus information block (BIB) is read in a ROM-type configuration memory present in each of the nodes connected to the local bus considered.The block BIB notably includes a bit "b" determining the character "/ egacy" of the node considered, when this bit takes the value "0".

Après avoir identifié tous les systèmes de type legacy, le port (portal) considéré doit lire le contenu d'un registre présent dans chacun des systèmes legacy identifiés. Ce registre, désigné par"registre de temporisation locale" (STR-split timeout register) contient une valeur de temporisation par défaut (default timeout value-DTV), applicable à la détection d'erreurs de transactions locales (split transaction errors), c. -à-d. des transactions effectuées entre deux noeuds attachés au même bus. Lorsque chacun des ports d'E/S du pont d'interconnexion a recueilli et mémorisé localement (dans son unité de contrôle) la valeur de temporisation locale (split timeout value) pour chaque noeud sur le bus local correspondant, le transfert de données au travers du pont peut être initié et les ports peuvent alors filtrer les transactions ayant pour origine un système legacy.  After having identified all legacy systems, the port (portal) considered must read the content of a register present in each of the identified legacy systems. This register, designated by "local timeout register" (STR-split timeout register) contains a default timeout value (DTV), applicable to the detection of local transaction errors (split transaction errors), c . -to-d. transactions made between two nodes attached to the same bus. When each of the I / O ports of the interconnect bridge has collected and stored locally (in its control unit) the local timeout value (split timeout value) for each node on the corresponding local bus, the data transfer to the across the bridge can be initiated and ports can then filter transactions originating from a legacy system.

Comme mentionné plus haut, la valeur de temporisation locale par défaut (default timeout value), mémorisée dans le registre STR de chaque système legacy, est à l'origine adaptée aux transactions locales (sur le même bus), et, de ce fait, elle est relativement faible (de l'ordre de 100 ms).  As mentioned above, the default local timeout value, stored in the STR register of each legacy system, is originally suitable for local transactions (on the same bus), and therefore it is relatively low (around 100 ms).

Cependant, selon le standard ! EEE p1394. 1 cette valeur de temporisation locale est également utilisée pour les transactions à distance au travers d'un pont. Plus précisément, pour un système legacy donné ayant envoyé une requête de transaction à distance, la valeur de temporisation locale par défaut (default timeout va/ue-DTV) définit la période de temps à l'intérieur de laquelle However, according to the standard! EEA p1394. 1 this local timeout value is also used for remote transactions across a bridge. More specifically, for a given legacy system having sent a remote transaction request, the default local timeout value (default timeout va / ue-DTV) defines the period of time within which

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

Figure img00120001

la réponse à cette requête doit être reçue par le système legacy. Après cette période de temps, le noeud émetteur de la requête est sensé terminer la transaction, et peut, si nécessaire, envoyer une requête de"nouvel essai" (retry request).
Figure img00120001

the response to this request must be received by the legacy system. After this period of time, the node sending the request is supposed to complete the transaction, and can, if necessary, send a "retry request".

La présente invention concerne la communication à distance, au travers d'un pont IEEE1394, entre un premier système legacy connecté à un premier bus IEEE1394 et un second système connecté à un second bus IEEE1394. Ainsi dans la FIG. 1, on considère, dans la suite de la description, que le noeud 20 connecté au bus 21 est un système de type legacy, émettant des requêtes de transaction vers le noeud 30 connecté au bus 31, au travers du pont d'interconnexion 1. Avec le sens de la communication ainsi défini, c.-à-d. du noeud 2 vers le noeud 3, le port d'E/S 11 du pont 1 est appelé"port d'entrée" (inbound portal) et le port d'E/S 12 est appelé"port de sortie" (outbound portal).  The present invention relates to remote communication, through an IEEE1394 bridge, between a first legacy system connected to a first IEEE1394 bus and a second system connected to a second IEEE1394 bus. Thus in FIG. 1, it is considered, in the following description, that the node 20 connected to the bus 21 is a legacy type system, transmitting transaction requests to the node 30 connected to the bus 31, through the interconnection bridge 1. With the sense of communication thus defined, i.e. from node 2 to node 3, I / O port 11 of bridge 1 is called "inbound portal" and I / O port 12 is called "outbound portal" ).

Comme mentionné plus haut, chaque port du pont surveille les transactions qui sont émises sur le bus local auquel il est rattaché. Le port 11 par exemple, filtre les requêtes de transaction qui sont émises sur le bus local 21 en analysant les champs "Source~ID" et "Destination~ID" présents dans l'en-tête d'un paquet de données asynchrone (cf. FIG. 3) transitant sur le bus local 21. Une transaction est alors interprétée comme une transaction à distance (remote transaction) si le champ Destination-in ne correspond pas au port considéré.  As mentioned above, each port on the bridge monitors the transactions that are sent on the local bus to which it is attached. Port 11 for example, filters the transaction requests which are sent on the local bus 21 by analyzing the "Source ~ ID" and "Destination ~ ID" fields present in the header of an asynchronous data packet (cf. FIG 3) transiting on the local bus 21. A transaction is then interpreted as a remote transaction if the Destination-in field does not correspond to the port considered.

La Figure 4 illustre, selon le standard IEEE p1394. 1, le processus de traitement par un pont IEEE1394 d'une requête d'écriture distante émise par un système legacy. Comme représenté à la FIG. 4, dès que le système legacy 420 (demandeur legacy) envoie une requête d'écriture distante 401 à destination d'un noeud distant 435, il déclenche le décompte de la temporisation (defaulttimeout value) définie dans son registre de temporisation locale (STR).  Figure 4 illustrates, according to the IEEE p1394 standard. 1, the process of processing by an IEEE1394 bridge a remote write request sent by a legacy system. As shown in FIG. 4, as soon as the legacy system 420 (legacy requester) sends a remote write request 401 to a remote node 435, it triggers the countdown of the timeout (defaulttimeout value) defined in its local timeout register (STR) .

Lorsque la requête d'écriture 401 est reçue par le port d'entrée (inbound portal) 425, celui-ci envoie aussitôt au demandeur legacy un message 402 signifiant "acquittement en cours" (acknowledgment pending). Puis le port d'entrée 425 génère et envoie, avant l'expiration de la temporisation 409 (par ex. 100ms), au système legacy une réponse d'écriture 403 (write transaction response) When the write request 401 is received by the input port (inbound portal) 425, the latter immediately sends to the legacy requester a message 402 signifying "acknowledgment in progress" (acknowledgment pending). Then the input port 425 generates and sends, before the expiration of timer 409 (eg 100ms), to the legacy system a write response 403 (write transaction response)

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

"artificielle"indiquant que la requête s'est terminée de manière réussie, alors qu'elle n'a pas encore été reçue par le noeud destinataire (435). Le système legacy recevant cette réponse d'écriture artificielle, avant l'expiration de la temporisation, réplique par un message 404 signifiant"acquittement complet" (Acknowledgment complete) terminant ainsi la transaction d'écriture.  "artificial" indicating that the request has ended successfully, although it has not yet been received by the destination node (435). The legacy system receiving this artificial write response, before the timeout expires, replies with a message 404 signifying "Acknowledgment complete" thus terminating the write transaction.

La requête d'écriture 401, quant à elle, est traitée de la façon suivante par le pont. La requête est d'abord transmise au port de sortie (outbound portaf) 430, via l'unité de commutation (FIG. 1,13). Le port de sortie 430 transmet alors la requête 401, via le bus auquel il est connecté, au système destinataire 435. Ce dernier reçoit alors la requête 401 après un temps de retard dû à la transmission. Le standard IEEE p1394. 1 prévoit alors deux possibilités 410,411 pour la suite du traitement.  The write request 401, for its part, is processed in the following manner by the bridge. The request is first transmitted to the output port (outbound portaf) 430, via the switching unit (FIG. 1,13). The output port 430 then transmits the request 401, via the bus to which it is connected, to the destination system 435. The latter then receives the request 401 after a delay time due to the transmission. The IEEE p1394 standard. 1 then provides two possibilities 410,411 for further processing.

Selon une première possibilité (410), le noeud destinataire 435 réplique au port de sortie (430) par un message 405"acquittement complet" (Acknowledgment complete) signifiant que la requête de traitement a été bien reçue ; le port de sortie 435 génère alors une réponse de transaction d'écriture 407 qui est ensuite transmise au port d'entrée 425. Le système étant de type legacy, cette réponse d'écriture est finalement ignorée par le port d'entrée.  According to a first possibility (410), the destination node 435 replies to the output port (430) with a message 405 "Acknowledgment complete" signifying that the processing request has been received; the output port 435 then generates a write transaction response 407 which is then transmitted to the input port 425. The system being of legacy type, this write response is finally ignored by the input port.

Selon une seconde possibilité 411, le noeud destinataire, après réception de la requête d'écriture, réplique par l'envoi d'un message 406 "acquittement en cours" (acknowlegment pending). Après avoir traité la requête d'écriture, le noeud destinataire génère une réponse d'écriture 407 qu'il transmet (via le bus) au port de sortie. Ce dernier reçoit la réponse et réplique par l'envoi d'un message"acquittement complet"408 au noeud destinataire.  According to a second possibility 411, the recipient node, after receiving the write request, replies by sending a message 406 "acknowledgment in progress" (acknowlegment pending). After processing the write request, the destination node generates a write response 407 which it transmits (via the bus) to the output port. The latter receives the response and replies by sending a "complete acknowledgment" message 408 to the destination node.

Puis, le port de sortie 430 transfère la réponse d'écriture 407 au port d'entrée 425 du pont qui la reçoit. Comme selon la première possibilité, le port d'entrée 425 ignore la réponse d'écriture 407 qui lui a été transmise par le port de sortie. Then, the output port 430 transfers the write response 407 to the input port 425 of the bridge that receives it. As in the first possibility, the input port 425 ignores the write response 407 transmitted to it by the output port.

En effet, dans les deux cas, le port d'entrée 425 avait déjà généré et envoyé au noeud demandeur 420, une réponse d'écriture"artificielle"403, avant que la temporisation, codée dans le registre de temporisation locale (STR) du système legacy 420, ne soit expirée. In fact, in both cases, the input port 425 had already generated and sent to the requesting node 420, an "artificial" write response 403, before the timer, coded in the local timer register (STR) of the legacy system 420, is not expired.

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

Il est à noter que la distinction port d'entrée/port de sortie du pont n'est faite que relativement au sens de transmission de la requête de transaction d'écriture initiale.  It should be noted that the distinction between the input port / output port of the bridge is only made relative to the direction of transmission of the initial write transaction request.

Chaque système de type legacy ou non, connecté à un bus donné, comporte en outre un registre, dit"registre de temps de cycle" (cycle time register-CTR) contenant une valeur de temps permettant de définir une date commune à tous les noeuds présents sur le bus. Ce registre CTR est cadencé par une horloge matérielle à base de quartz présente dans le dispositif. Dans une implémentation préférée, cette horloge possède une fréquence de 24,576 MHz. Périodiquement la valeur de temps contenue dans chaque registre CTR est synchronisée par un système maître d'horloge (clock master) présent sur le bus. De cette façon, chaque système présent sur le bus possède la même référence de temps. De même, chacun des ports du pont possède un registre CTR mémorisant la valeur de temps courante.  Each legacy or non-legacy type system, connected to a given bus, further includes a register, called "cycle time register-CTR" containing a time value making it possible to define a date common to all the nodes. present on the bus. This CTR register is clocked by a quartz-based hardware clock present in the device. In a preferred implementation, this clock has a frequency of 24.576 MHz. Periodically the time value contained in each CTR register is synchronized by a clock master system (clock master) present on the bus. In this way, each system present on the bus has the same time reference. Likewise, each of the bridge ports has a CTR register storing the current time value.

En liaison avec la Figure 5, on va maintenant décrire le processus selon l'invention de traitement d'un paquet asynchrone (tel que représenté à la FIG. 3) reçu dans un port d'entrée d'un pont IEEE1394.  In connection with FIG. 5, we will now describe the process according to the invention for processing an asynchronous packet (as shown in FIG. 3) received in an input port of an IEEE1394 bridge.

Le processus de traitement d'un paquet commence par la réception d'un paquet (étape E501) dans le port d'entrée du port, le paquet provenant du bus IEEE1394 attaché au port d'entrée du pont. Après réception du paquet, l'en-tête du paquet (cf. FIG. 3) est analysé de manière à déterminer la nature de la transaction objet du paquet. Ainsi la transaction est de type distante, si le champ Destination-in ne correspond pas au port d'entrée. Par ailleurs, la nature de la transaction (requête ou réponse) est déterminée par l'analyse du champ tcode de l'en-tête du paquet. Enfin par l'analyse du champ Source-in de l'en-tête du paquet, le type (legacy ou non) du noeud émetteur du paquet peut être déterminé. La réception des paquets dans le port d'entrée, de même que l'envoi de paquets, est assurée par des moyens de réception/émission incorporés dans la couche fonctionnelle de transaction 113 du port d'entrée.  The process of processing a packet begins with the reception of a packet (step E501) in the input port of the port, the packet coming from the IEEE1394 bus attached to the input port of the bridge. After reception of the packet, the header of the packet (cf. FIG. 3) is analyzed so as to determine the nature of the transaction which is the subject of the packet. Thus the transaction is of remote type, if the Destination-in field does not correspond to the input port. Furthermore, the nature of the transaction (request or response) is determined by analyzing the tcode field of the packet header. Finally by analyzing the Source-in field of the packet header, the type (legacy or not) of the packet sender node can be determined. The reception of packets in the input port, as well as the sending of packets, is ensured by reception / transmission means incorporated in the functional transaction layer 113 of the input port.

De retour à la FIG. 5, à l'étape E503, après analyse de l'en-tête du paquet, si la transaction n'est pas une transaction distante, c. -à-d. s'adressant à  Back to FIG. 5, in step E503, after analysis of the packet header, if the transaction is not a remote transaction, c. -to-d. speaking to

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

un noeud accessible via le second bus IEEE1394 attaché au port de sortie du pont, on détermine (E505) si la destination est le port d'entrée lui-même. Si c'est le cas, le paquet est transféré (E521) vers la couche de transaction (FIG.  a node accessible via the second IEEE1394 bus attached to the output port of the bridge, it is determined (E505) if the destination is the input port itself. If so, the packet is transferred (E521) to the transaction layer (FIG.

1,113) du port d'entrée pour y être traité. Si ce n'est pas le cas, il peut s'agir alors d'une erreur d'acheminement du paquet, le paquet est alors supprimé (discarded) (E519). 1,113) from the port of entry for treatment. If this is not the case, it may be a packet routing error, the packet is then discarded (E519).

A l'inverse, si la transaction objet du paquet est une transaction distante (E503, branche OUI), alors selon que la transaction est de type "requête"ou non (E507) un traitement différent est appliqué. Ainsi, si la transaction n'est pas une requête mais une réponse (E511, branche OUI), le paquet est transféré vers le port de sortie du pont pour être acheminé (E517) à sa destination. Si la transaction n'est ni une requête ni une réponse (E511, branche NON), il s'agit alors certainement d'un message erroné et le paquet est supprimé (E519).  Conversely, if the transaction object of the packet is a remote transaction (E503, branch YES), then depending on whether the transaction is of the "request" type or not (E507) different processing is applied. Thus, if the transaction is not a request but a response (E511, YES branch), the packet is transferred to the output port of the bridge to be routed (E517) to its destination. If the transaction is neither a request nor a response (E511, branch NO), then it is certainly an erroneous message and the packet is deleted (E519).

Si au contraire la transaction est de type requête (E507, OUI), il est alors déterminé si le noeud émetteur du paquet est un système legacy ou non. Le port d'entrée du pont (unbound portal) dispose dans ce but d'une table localisée dans son unité de contrôle (114), dans laquelle sont mémorisés les identificateurs (node/D) de tous les noeuds de type legacy connectés au bus attaché au port d'entrée.  If on the contrary the transaction is of request type (E507, YES), it is then determined whether the sending node of the packet is a legacy system or not. The bridge input port (unbound portal) has for this purpose a table located in its control unit (114), in which are stored the identifiers (node / D) of all legacy type nodes connected to the bus attached to the port of entry.

Si le noeud émetteur n'est pas un système de type legacy (E509, NON), la requête est alors transférée (E515) vers le port de sortie (outbound portal) du pont pour être acheminée à son destinataire.  If the sending node is not a legacy type system (E509, NO), the request is then transferred (E515) to the bridge's outbound portal to be routed to its recipient.

Si le noeud émetteur est un système legacy (E509, OUI) alors on détermine (E513) si la requête est une requête d'écriture (write transaction request). Si ce n'est pas le cas, on supprime le paquet (E523) car seules les requêtes d'écriture des dispositifs legacy peuvent être traitées par le pont.  If the sending node is a legacy system (E509, YES) then it is determined (E513) if the request is a write transaction request. If this is not the case, the packet (E523) is deleted because only write requests from legacy devices can be processed by the bridge.

Si, au contraire, il s'agit d'une requête d'écriture (E513, OUI), alors on commence par transférer la requête vers le port de sortie (E525) pour que la requête soit acheminée à son destinataire. Puis, à l'étape E527, conformément à l'invention, il est procédé à la détermination et à la mémorisation de la date de réception de la requête d'écriture dans le port d'entrée du pont. Dans ce but, la  If, on the contrary, it is a write request (E513, YES), then we begin by transferring the request to the output port (E525) so that the request is forwarded to its recipient. Then, in step E527, in accordance with the invention, the determination and storage of the date of reception of the write request is carried out in the input port of the bridge. To this end, the

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

date courante notée"Date~Courante"est lue dans le registre CTR du port d'entrée, c.-à-d. le registre"de temps de cycle" (cycle time register) contenant la valeur de temps courante commune à tous les noeuds présents sur le bus. Le registre CTR est localisé dans l'unité de contrôle du port (114). La date courante"Date~Courante"lue qui correspond à la date de réception de la requête est ensuite mémorisée dans une variable notée"Date~Réception". La détermination et la mémorisation de la date de réception de la requête d'écriture sont réalisées par des moyens adaptés, en pratique des moyens logiciels (programmes) dont le code est stocké dans l'unité de contrôle (114) du port.  current date noted "Date ~ Current" is read in the CTR register of the port of entry, ie. the "cycle time register" containing the current time value common to all the nodes present on the bus. The CTR register is located in the port control unit (114). The current date "Date ~ Current" read which corresponds to the date of reception of the request is then memorized in a variable noted "Date ~ Reception". The determination and storage of the date of reception of the write request are carried out by suitable means, in practice software means (programs) whose code is stored in the control unit (114) of the port.

Toujours à l'étape E527, il est procédé à la lecture de la valeur de temporisation par défaut DTV (default timeout value), concernant le noeud legacy à l'origine de la requête d'écriture. Comme mentionné précédemment, cette valeur de temporisation DTV est lue à partir d'un emplacement mémoire situé dans l'unité de contrôle du port d'entrée. Cette valeur de temporisation est issue initialement du registre STR (split timeout register) contenu dans le système legacy émetteur.  Still at step E527, the default timeout value DTV is read, relating to the legacy node at the origin of the write request. As mentioned earlier, this DTV timer value is read from a memory location located in the input port control unit. This timeout value initially comes from the STR (split timeout register) register contained in the sending legacy system.

A l'étape suivante (E529), conformément à l'invention, il est procédé à la détermination d'une date future notée"Date~Max"correspondant à la date la plus tardive à laquelle envoyer au système local (c. -à-d. le noeud legacy émetteur de la requête d'écriture) une réponse d'écriture, de manière à satisfaire la condition de temporisation prédéterminée pour le système local. La détermination de la date future est, en pratique, réalisée par des moyens logiciels (c. -à-d. programmes) dont le code est mémorisé dans l'unité de contrôle (114) du port.  In the next step (E529), in accordance with the invention, a future date noted "Date ~ Max" corresponding to the latest date to which to send to the local system is determined (ie -d. the legacy node sending the write request) a write response, so as to satisfy the predetermined time-out condition for the local system. The determination of the future date is, in practice, carried out by software means (ie programs), the code of which is stored in the control unit (114) of the port.

En d'autres termes, conformément à l'invention, la réponse d'écriture est envoyée au système local, au plus tard lorsque la date "Date~Max"est passée. La condition de temporisation prédéterminée pour le système local émetteur est définie par la valeur prédéterminée de temporisation locale (DTV), stockée initialement dans le registre STR du système, déterminant l'intervalle de temps maximal entre la réception de la requête  In other words, according to the invention, the write response is sent to the local system, at the latest when the date "Date ~ Max" has passed. The predetermined timeout condition for the sending local system is defined by the predetermined local timeout value (DTV), initially stored in the system's STR register, determining the maximum time interval between receipt of the request.

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

d'écriture par le port d'entrée et l'envoi par ce dernier d'une réponse d'écriture au système local.  write by the input port and send by the latter a write response to the local system.

Conformément à l'invention, la date future"DateMax"est obtenue en ajoutant à la date de réception (Date-Réception) obtenue la valeur de temporisation DTV relative au système local. Ainsi, la date future

Figure img00170001

"DateMax"est obtenue par l'équation suivante : Date-maux = Date-Réception + DTV (1)
A l'étape finale E531, L'en-tête du paquet, permettant d'identifier de manière unique la requête d'écriture, est stockée dans une file d'attente localisée dans l'unité de contrôle 114 du port d'entrée. Cette file d'attente est appelée ici"file d'attente legacy". En pratique il s'agit d'une file d'attente de type
Figure img00170002

FIFO (first in first out). La date"Date~Max"est également sauvegardée, associée avec l'en-tête de la requête, dans la file d'attente legacy. La file d'attente legacy mémorise ainsi temporairement un identificateur (en-tête du paquet associé à la date Date-maux correspondante) de chaque requête d'écriture distante en cours de traitement, dont l'émetteur est en dispositif legacy. According to the invention, the future date "DateMax" is obtained by adding to the date of reception (Date-Reception) obtained the time value DTV relating to the local system. So the future date
Figure img00170001

"DateMax" is obtained by the following equation: Date-evils = Date-Reception + DTV (1)
In the final step E531, the packet header, making it possible to uniquely identify the write request, is stored in a queue located in the control unit 114 of the input port. This queue is called here "legacy queue". In practice, this is a type queue
Figure img00170002

FIFO (first in first out). The date "Date ~ Max" is also saved, associated with the request header, in the legacy queue. The legacy queue thus temporarily stores an identifier (header of the packet associated with the corresponding date-bad date) of each remote write request being processed, the transmitter of which is in legacy device.

La file d'attente legacy est testée de manière périodique par l'unité de contrôle (114) du port d'entrée, par exemple tous les instants correspondant à 10% de la valeur de temporisation locale par défaut (DTR) d'un système legacy, de manière à déterminer pour chaque requête d'écriture identifiée dans la file d'attente, le moment (c.-à-d. la date) auquel envoyer une réponse d'écriture au noeud à l'origine de la requête d'écriture.  The legacy queue is periodically tested by the control unit (114) of the input port, for example every time corresponding to 10% of the default local timeout value (DTR) of a system. legacy, so as to determine for each write request identified in the queue, the time (i.e. date) at which to send a write response to the node making the request d 'writing.

En référence à la Figure 6, on va maintenant décrire de façon détaillée, le processus selon l'invention de détermination d'une date d'envoi optimale, par le port d'entrée du pont, de la réponse d'écriture au système legacy.  Referring to Figure 6, we will now describe in detail, the process according to the invention for determining an optimal date of sending, by the input port of the bridge, of the write response to the legacy system. .

Ce processus commence par une étape de test E601, dans laquelle il est déterminé si la file d'attente legacy est vide ou non. Si c'est le cas (OUI) on reste dans l'état de test de la file d'attente. Dans le cas contraire, si la file d'attente n'est pas vide, on sélectionne à l'étape suivante (E603) une requête d'écriture identifiée dans la file d'attente (par son en-tête).  This process begins with a test step E601, in which it is determined whether the legacy queue is empty or not. If this is the case (YES), we remain in the queue test state. Otherwise, if the queue is not empty, in the next step (E603), a write request is identified identified in the queue (by its header).

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

Figure img00180001
Figure img00180001

Ensuite, à l'étape E605, on lit la date courante (Date-Courante) dans le registre CTR du port d'entrée, et on lit, dans la file d'attente, la date Date-maux associée à l'en-tête de la requête d'écriture identifiée. Then, in step E605, we read the current date (Current Date) in the CTR register of the input port, and we read, in the queue, the date Date-evils associated with the head of the identified write request.

A l'étape qui suit (E607), on vérifie que la date Date~Max déterminée pour la requête d'écriture identifiée est passée ou non. Dans ce but, on compare la date courante, lue à l'étape précédente, à la date Date~Max. Si la date Date-maux est passée, c. -à-d. si la date courante est supérieure ou égale à Datetvtax, alors on envoie (E609) une réponse d'écriture au système local émetteur de la requête d'écriture. En réalité, deux cas peuvent se produire : soit une réponse d'écriture est déjà arrivée en provenance du noeud destinataire, auquel cas on envoie cette réponse au système local ; soit aucune réponse n'a été reçue de la part du noeud destinataire, et dans ce cas le port d'entrée génère lui-même une réponse d'écriture comme si cette réponse provenait du noeud destinataire.  In the following step (E607), it is verified that the date Date ~ Max determined for the identified write request has passed or not. For this purpose, the current date, read in the previous step, is compared to the Date ~ Max date. If the date Date-evils has passed, c. -to-d. if the current date is greater than or equal to Datetvtax, then a write response is sent (E609) to the local system sending the write request. In reality, two cases can occur: either a write response has already arrived from the destination node, in which case this response is sent to the local system; or no response has been received from the destination node, and in this case the input port itself generates a write response as if this response came from the destination node.

Ensuite, on détermine, à l'étape E617, si la requête d'écriture en cours de traitement (requête d'écriture courante) est la dernière de la file d'attente. Si c'est le cas, on retourne à l'étape E601 pour tester l'état de la file d'attente. Dans la négative, on retourne à l'étape E603 pour sélectionner une autre requête d'écriture identifiée dans la file d'attente legacy.  Then, it is determined, in step E617, whether the write request being processed (current write request) is the last one in the queue. If this is the case, we return to step E601 to test the state of the queue. If not, we return to step E603 to select another write request identified in the legacy queue.

De retour à l'étape E607, si la date Date-maux correspondant à la requête d'écriture courante n'est pas encore passée (date courante inférieure à Date~Max), alors au cours des étapes qui suivent, E611 et E613, on détermine une seconde date future, notée"Date~Max2", comprise entre la date de réception (Date-Réception) de la requête d'écriture en cours et la date Data~Max. Comme cela va être détaillé ci-après, cette seconde date, Date~Max2, est d'autant plus proche de la date de réception de la requête d'écriture, que le flux de données entre le port d'entrée et le port de sortie du pont est faible.  Back to step E607, if the date Date-evils corresponding to the current writing request has not yet passed (current date less than Date ~ Max), then during the following steps, E611 and E613, a second future date is determined, denoted "Date ~ Max2", between the date of reception (Date-Reception) of the current writing request and the date Data ~ Max. As will be detailed below, this second date, Date ~ Max2, is all the closer to the date of receipt of the write request, as the data flow between the input port and the port of exit from the bridge is weak.

Dans ce but, à l'étape E611, on calcule d'abord un coefficient k (k nombre réel compris entre 0 et 1) dont la valeur est fonction de l'importance du flux de données circulant entre le port d'entrée et le port de sortie du pont. A  To this end, in step E611, a coefficient k is first calculated (k real number between 0 and 1) whose value is a function of the importance of the data flow circulating between the input port and the bridge exit port. AT

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

Figure img00190001

l'étape suivante, E613, on calcule la date Date~Max2, en appliquant l'équation suivante : Date~Max2 = Date-maux + (k-1). DTV (2) où DTV représente la valeur prédéterminée de temporisation locale affectée au système local.
Figure img00190001

the next step, E613, the date Date ~ Max2 is calculated, by applying the following equation: Date ~ Max2 = Date-evils + (k-1). DTV (2) where DTV represents the predetermined local timeout value assigned to the local system.

Selon un mode de réalisation préféré de l'invention, le flux de données entre le port d'entrée et le port de sortie du pont est mesuré par le calcul du taux de remplissage d'une file d'attente (distincte de la file d'attente legacy) dont la fonction est de stocker temporairement les paquets de données destinés à être transférés du port d'entrée vers le port de sortie du pont. According to a preferred embodiment of the invention, the data flow between the input port and the output port of the bridge is measured by calculating the filling rate of a queue (distinct from the queue d 'legacy wait') whose function is to temporarily store the data packets intended to be transferred from the input port to the output port of the bridge.

Dans ce mode de réalisation, selon une première variante de réalisation, la valeur du coefficient k est déterminée comme étant égale au taux de remplissage de la file d'attente précitée, implémentée entre le port d'entrée et le port de sortie du pont. In this embodiment, according to a first alternative embodiment, the value of the coefficient k is determined to be equal to the filling rate of the aforementioned queue, implemented between the input port and the output port of the bridge.

Selon une seconde variante de réalisation la valeur du coefficient k est déterminée comme étant égale à une valeur de seuil prédéterminée, lorsque cette dernière est atteinte par le taux de remplissage de la file d'attente. Par exemple, si le taux de remplissage de la file d'attente est mesuré comme étant supérieur à 0, 5 (valeur de seuil choisie) alors la valeur du coefficient k est égale à cette valeur de seuil : 0, 5. Dans le cas contraire, c.-à-d. si le taux de remplissage est inférieur à 0, 5, alors la valeur de k est fixée à zéro. According to a second alternative embodiment, the value of the coefficient k is determined to be equal to a predetermined threshold value, when the latter is reached by the filling rate of the queue. For example, if the filling rate of the queue is measured as being greater than 0.5, (threshold value chosen) then the value of the coefficient k is equal to this threshold value: 0, 5. In the case otherwise, i.e. if the filling rate is less than 0.5, then the value of k is set to zero.

De retour à la FIG. 6, une fois que la seconde date, DateMax2 a été calculée (étape E613), à l'étape suivante, E615, on détermine si la date Date~Max2 est passée ou non. Pour cela, on compare Date~Max2 avec la date courante (issue du registre CTR). Si la date courante (Date-Courante) est supérieure ou égale à la date Date~Max2, alors cela signifie que celle-ci vient de passer, dans ce cas on passe à nouveau à l'étape E609 pour envoyer une réponse d'écriture au système local. Comme précédemment, deux cas peuvent se produire : soit une réponse d'écriture est déjà arrivée en provenance du noeud destinataire, auquel cas on envoie cette réponse au système local ; soit aucune réponse n'a été reçue de la part du noeud destinataire, et dans ce cas le port d'entrée génère lui-même une réponse d'écriture comme si cette Back to FIG. 6, once the second date, DateMax2 has been calculated (step E613), in the next step, E615, it is determined whether the date Date ~ Max2 has passed or not. For this, we compare Date ~ Max2 with the current date (from the CTR register). If the current date (Current Date) is greater than or equal to the date Date ~ Max2, then this means that it has just passed, in this case we go again to step E609 to send a write response to the local system. As before, two cases can occur: either a write response has already arrived from the destination node, in which case this response is sent to the local system; either no response has been received from the destination node, and in this case the input port itself generates a write response as if this

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

réponse provenait du noeud destinataire. De cette façon, on envoie une réponse d'écriture au système local, au plus tard lorsque la seconde date DateMax2 est passée.  response came from the recipient node. In this way, a write response is sent to the local system, at the latest when the second date DateMax2 has passed.

Si au contraire, la date Date~Max2 n'est pas encore passée (Date-Courante inférieure à DateMax2), alors on n'envoie pas encore de réponse d'écriture, et on passe à l'étape E617 pour déterminer si la requête d'écriture en cours de traitement (requête d'écriture courante) est la dernière de la file d'attente, comme expliqué plus haut.  If on the contrary, the date Date ~ Max2 has not yet passed (Current Date less than DateMax2), then we do not yet send a write response, and we go to step E617 to determine if the request write in progress (current write request) is the last in the queue, as explained above.

Selon un autre mode de réalisation préféré, on surveille dans le pont l'arrivée dans le port de sortie d'une réponse d'écriture en provenance du noeud destinataire. Dès que l'arrivée de cette réponse est détectée, avant même que la première date (Date~Max) soit passée ou bien avant que la seconde date (Date~Max2), lorsqu'elle est déterminée, soit passée, la réponse d'écriture est immédiatement transmise au système local émetteur de la requête d'écriture initiale.  According to another preferred embodiment, a write response from the destination node is monitored in the bridge for the arrival in the output port. As soon as the arrival of this response is detected, even before the first date (Date ~ Max) has passed or before the second date (Date ~ Max2), when it is determined, has passed, the response of write is immediately transmitted to the local system issuing the initial write request.

Bien entendu, de nombreuses modifications peuvent être apportées aux modes de réalisation de l'invention décrits ci-dessus sans sortir du cadre de l'invention. En particulier, bien que les modes de réalisation décrits ici s'appliquent au standard IEEE 1394, l'invention s'applique généralement à tout autre standard de bus série et de pont d'interconnexion de bus, dont le mode de communication d'informations est similaire à celui décrit dans le cadre du standard IEEE 1394. Of course, many modifications can be made to the embodiments of the invention described above without departing from the scope of the invention. In particular, although the embodiments described here apply to the IEEE 1394 standard, the invention generally applies to any other standard of serial bus and bus interconnection bridge, including the mode of communication of information is similar to that described in the context of the IEEE 1394 standard.

Claims (15)

de la requête d'écriture dans le pont ; - détermination (E529) d'une première date future (DateMax) définie par rapport à ladite date de réception (Date-Réception), et correspondant à la date la plus tardive à laquelle envoyer audit système local une réponse d'écriture, de manière à satisfaire une condition de temporisation prédéterminée pour ledit système local ; - envoi d'une réponse d'écriture audit système local, au plus tard lorsque ladite première date (Date~Max) est passée.  the request to write to the bridge; - determination (E529) of a first future date (DateMax) defined with respect to said reception date (Date-Reception), and corresponding to the latest date on which to send a write response to said local system, satisfying a predetermined timeout condition for said local system; - sending a write response to said local system, at the latest when said first date (Date ~ Max) has passed.
Figure img00210001
Figure img00210001
REVENDICATIONS 1. Procédé de communication entre un système local (20) connecté à un premier bus série (21), et un système distant (30) connecté à un second bus série (31), au travers d'un pont (1) interconnectant lesdits bus, ledit système local (20) pouvant ne pas être adapté pour échanger des informations au travers dudit pont, le procédé comportant les étapes préalables de réception (E501, E503, E507, E513) d'une requête d'écriture émise par ledit système local à destination dudit système distant et de détermination (E509) du type dudit système local émetteur de la requête d'écriture, le procédé étant caractérisé en ce que, si le système local est déterminé comme n'étant pas adapté à l'échange d'informations au travers dudit pont, il comporte les étapes suivantes : - mémorisation (E527) de la date de réception (Date~Réception)  CLAIMS 1. Communication method between a local system (20) connected to a first serial bus (21), and a remote system (30) connected to a second serial bus (31), through an interconnecting bridge (1) said buses, said local system (20) possibly not being suitable for exchanging information across said bridge, the method comprising the prior steps of receiving (E501, E503, E507, E513) of a write request sent by said local system intended for said remote system and for determining (E509) the type of said local system sending the write request, the method being characterized in that, if the local system is determined as not being suitable for the exchange of information through said bridge, it comprises the following stages: - memorization (E527) of the date of reception (Date ~ Reception)
2. Procédé selon la revendication 1, caractérisé en ce que ledit pont et lesdits bus sont conformes au standard IEEE p1394. 1 et ledit système local, qui est non adapté à l'échange d'informations au travers dudit pont, est de type"legacy"au sens du standard IEEE p1394. 1.  2. Method according to claim 1, characterized in that said bridge and said buses conform to the IEEE p1394 standard. 1 and said local system, which is not suitable for exchanging information through said bridge, is of the "legacy" type within the meaning of the IEEE p1394 standard. 1. 3. Procédé selon la revendication 1 ou 2, dans lequel ledit pont comprend un port d'entrée connecté audit premier bus et un port de sortie  3. The method of claim 1 or 2, wherein said bridge comprises an input port connected to said first bus and an output port <Desc/Clms Page number 22><Desc / Clms Page number 22> connecté audit second bus, caractérisé en ce que l'étape d'envoi d'une réponse d'écriture audit système local comporte les étapes suivantes : - vérification (E607) que ladite première date (Datetvtax) est passée ou non ; - si c'est le cas, envoi (E609) d'une réponse d'écriture au système local ; - sinon, déterminer (E611, E613) une seconde date future (Date~Max2) comprise entre ladite date de réception (Date-Réception) de la requête d'écriture et ladite première date (Date~Max), ladite seconde date étant d'autant plus proche de ladite date de réception de la requête que le flux de données entre le port d'entrée et le port de sortie du pont est faible ; - envoi (E617, E609) d'une réponse d'écriture audit système local, au plus tard lorsque ladite seconde date (Date~Max2) est passée.  connected to said second bus, characterized in that the step of sending a write response to said local system comprises the following steps: - checking (E607) that said first date (Datetvtax) has passed or not; - if this is the case, sending (E609) a write response to the local system; - otherwise, determine (E611, E613) a second future date (Date ~ Max2) between said date of receipt (Date-Reception) of the writing request and said first date (Date ~ Max), said second date being d 'the closer the said date of receipt of the request that the data flow between the input port and the output port of the bridge is weak; - sending (E617, E609) of a write response to said local system, at the latest when said second date (Date ~ Max2) has passed. 4. Procédé selon l'une quelconque des revendications 1 à 3, caractérisée en ce que si une réponse d'écriture est reçue dans le pont en provenance dudit système distant, avant que ladite première date (DateMax) soit passée ou bien avant que ladite seconde date (Date~Max2), lorsqu'elle est déterminée, soit passée, la réponse d'écriture est immédiatement transmise au système local.  4. Method according to any one of claims 1 to 3, characterized in that if a write response is received in the bridge from said remote system, before said first date (DateMax) has passed or before said second date (Date ~ Max2), when it is determined or passed, the write response is immediately transmitted to the local system. 5. Procédé selon l'une quelconque des revendications 1 à 4, caractérisé en ce que ladite condition de temporisation prédéterminée pour ledit système local est définie par une valeur prédéterminée de temporisation locale (DTV) déterminant l'intervalle de temps maximal entre la réception de la requête d'écriture par le port d'entrée et l'envoi par ce dernier d'une réponse d'écriture au système local.  5. Method according to any one of claims 1 to 4, characterized in that said predetermined timeout condition for said local system is defined by a predetermined local timeout value (DTV) determining the maximum time interval between the reception of the write request by the input port and the sending by the latter of a write response to the local system. 6. Procédé selon la revendication 5, caractérisé en ce que ladite première date (DateMax) est obtenue par l'équation suivante : Date~Max = Date-Réception + DTV où :  6. Method according to claim 5, characterized in that said first date (DateMax) is obtained by the following equation: Date ~ Max = Date-Reception + DTV where: <Desc/Clms Page number 23> <Desc / Clms Page number 23>
Figure img00230001
Figure img00230001
DTV représente la valeur prédéterminée de temporisation locale affectée au système local, et Date-Réception est la date de réception de la requête d'écriture dans le pont. DTV represents the predetermined local timeout value assigned to the local system, and Date-Receive is the date of receipt of the write request to the bridge.
7. Procédé selon la revendication 6, caractérisé en ce que ladite seconde date (DateMax2) est obtenue par l'équation suivante : Date~Max2 = Date-maux + (k-1). DTV où : 7. Method according to claim 6, characterized in that said second date (DateMax2) is obtained by the following equation: Date ~ Max2 = Date-maux + (k-1). DTV where: DTV représente la valeur prédéterminée de temporisation locale affectée au système local, et k est un nombre réel compris entre 0 et 1, dont la valeur est fonction de l'importance du flux de données entre le port d'entrée et le port de sortie du pont. DTV represents the predetermined local timeout value assigned to the local system, and k is a real number between 0 and 1, the value of which depends on the amount of data flow between the input port and the output port of the bridge. 8. Procédé selon l'une quelconque des revendications 3 à 7, caractérisé en ce que le flux de données entre le port d'entrée et le port de sortie du pont est mesuré par le calcul du taux de remplissage d'une file d'attente destinée à stocker temporairement les paquets de données destinés à être transférés du port d'entrée vers le port de sortie du pont.  8. Method according to any one of claims 3 to 7, characterized in that the data flow between the input port and the output port of the bridge is measured by calculating the filling rate of a queue of standby intended to temporarily store the data packets intended to be transferred from the input port to the output port of the bridge. 9. Procédé selon la revendication 8, caractérisé en ce que le nombre k est égal au taux de remplissage de ladite file d'attente.  9. Method according to claim 8, characterized in that the number k is equal to the filling rate of said queue. 10. Procédé selon la revendication 8, caractérisé en ce que le nombre k est égal à une valeur de seuil prédéterminée, lorsque celle-ci est atteinte par le taux de remplissage de ladite file d'attente.  10. Method according to claim 8, characterized in that the number k is equal to a predetermined threshold value, when this is reached by the filling rate of said queue. 11. Dispositif de communication mis en oeuvre dans un pont, pour la communication entre un système local (20) connecté à un premier bus série (21), et un système distant (30) connecté à un second bus série (31), au travers dudit pont (1) interconnectant lesdits bus, ledit système local (20) pouvant ne  11. Communication device implemented in a bridge, for communication between a local system (20) connected to a first serial bus (21), and a remote system (30) connected to a second serial bus (31), at across said bridge (1) interconnecting said buses, said local system (20) possibly not <Desc/Clms Page number 24><Desc / Clms Page number 24> (Date~Réception) de la requête d'écriture dans le pont ; - des moyens de détermination (113) d'une première date future (DateMax), définie comme étant la date la plus tardive à laquelle envoyer audit système local une réponse d'écriture, de manière à satisfaire une condition de temporisation prédéterminée pour ledit système local ; - des moyens d'envoi (113) d'une réponse d'écriture audit système local, au plus tard lorsque ladite première date (Datetvtax) est passée.  (Date ~ Receipt) of the write request in the bridge; means for determining (113) a first future date (DateMax), defined as being the latest date on which to send a write response to said local system, so as to satisfy a predetermined timeout condition for said system local; - Means for sending (113) a write response to said local system, at the latest when said first date (Datetvtax) has passed.
Figure img00240001
Figure img00240001
pas être adapté pour échanger des informations au travers du pont, ledit dispositif étant caractérisé en ce qu'il comporte : - des moyens de réception (113) d'une requête d'écriture émise par ledit système local à destination dudit système distant et de détermination (113) du type dudit système local émetteur de la requête d'écriture ; - des moyens de mémorisation (114) de la date de réception  not be suitable for exchanging information across the bridge, said device being characterized in that it comprises: - means for receiving (113) a write request sent by said local system intended for said remote system and for determining (113) the type of said local system sending the write request; - means for memorizing (114) the date of receipt
12. Dispositif selon la revendication 11, caractérisé en ce que ledit pont et lesdits bus sont conformes au standard IEEE p1394. 1 et ledit système local, qui est non adapté à l'échange d'informations au travers dudit pont, est de type"legacy"au sens du standard IEEE p1394. 1.  12. Device according to claim 11, characterized in that said bridge and said buses conform to the IEEE p1394 standard. 1 and said local system, which is not suitable for exchanging information through said bridge, is of the "legacy" type within the meaning of the IEEE p1394 standard. 1. 13. Dispositif selon la revendication 11 ou 12, caractérisé en ce qu'il comporte des moyens adaptés à la mise en oeuvre d'un procédé tel que revendiqué dans les revendications 3 à 10.  13. Device according to claim 11 or 12, characterized in that it comprises means suitable for the implementation of a method as claimed in claims 3 to 10. 14. Pont d'interconnexion de bus série IEEE 1394, caractérisé en ce qu'il comporte un dispositif en conformité avec l'une quelconque des revendications 11 à 13.  14. IEEE 1394 serial bus interconnection bridge, characterized in that it comprises a device in accordance with any one of claims 11 to 13. 15. Pont d'interconnexion de bus série IEEE 1394, caractérisé en ce qu'il comporte des moyens adaptés à la mise en oeuvre d'un procédé de communication conforme à l'une quelconque des revendications 1 à 10. 15. IEEE 1394 serial bus interconnection bridge, characterized in that it includes means suitable for implementing a communication method according to any one of claims 1 to 10.
FR0100677A 2001-01-18 2001-01-18 COMMUNICATION METHOD AND DEVICE BETWEEN A LOCAL NODE CONNECTED TO A FIRST IEEE 1394 SERIES BUS AND A REMOTE NODE CONNECTED TO A SECOND IEEE 1394 SERIES BUS THROUGH A BUS INTERCONNECTION BRIDGE Expired - Fee Related FR2819668B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
FR0100677A FR2819668B1 (en) 2001-01-18 2001-01-18 COMMUNICATION METHOD AND DEVICE BETWEEN A LOCAL NODE CONNECTED TO A FIRST IEEE 1394 SERIES BUS AND A REMOTE NODE CONNECTED TO A SECOND IEEE 1394 SERIES BUS THROUGH A BUS INTERCONNECTION BRIDGE

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
FR0100677A FR2819668B1 (en) 2001-01-18 2001-01-18 COMMUNICATION METHOD AND DEVICE BETWEEN A LOCAL NODE CONNECTED TO A FIRST IEEE 1394 SERIES BUS AND A REMOTE NODE CONNECTED TO A SECOND IEEE 1394 SERIES BUS THROUGH A BUS INTERCONNECTION BRIDGE

Publications (2)

Publication Number Publication Date
FR2819668A1 true FR2819668A1 (en) 2002-07-19
FR2819668B1 FR2819668B1 (en) 2003-03-28

Family

ID=8858977

Family Applications (1)

Application Number Title Priority Date Filing Date
FR0100677A Expired - Fee Related FR2819668B1 (en) 2001-01-18 2001-01-18 COMMUNICATION METHOD AND DEVICE BETWEEN A LOCAL NODE CONNECTED TO A FIRST IEEE 1394 SERIES BUS AND A REMOTE NODE CONNECTED TO A SECOND IEEE 1394 SERIES BUS THROUGH A BUS INTERCONNECTION BRIDGE

Country Status (1)

Country Link
FR (1) FR2819668B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2004045152A1 (en) * 2002-11-12 2004-05-27 Koninklijke Philips Electronics N.V. Method and apparatus for efficient timeout message management

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0889621A2 (en) * 1997-06-30 1999-01-07 Sun Microsystems, Inc. System and method for message transmission between network nodes
EP1014650A2 (en) * 1998-10-13 2000-06-28 STMicroelectronics, Inc. Network interface for a data communication system

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0889621A2 (en) * 1997-06-30 1999-01-07 Sun Microsystems, Inc. System and method for message transmission between network nodes
EP1014650A2 (en) * 1998-10-13 2000-06-28 STMicroelectronics, Inc. Network interface for a data communication system

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2004045152A1 (en) * 2002-11-12 2004-05-27 Koninklijke Philips Electronics N.V. Method and apparatus for efficient timeout message management

Also Published As

Publication number Publication date
FR2819668B1 (en) 2003-03-28

Similar Documents

Publication Publication Date Title
US6512767B1 (en) Transmission medium connecting device, controlling device, controlled device, and storage medium
EP2793431B1 (en) Distributed method for data acquisition in an AFDX network
FR2913156A1 (en) METHOD FOR ALLOCATING TRANSMISSION RESOURCES OF DATA CONTENT, COMPUTER PROGRAM PRODUCT, STORAGE MEDIUM, AND CORRESPONDING DEVICE
US9894124B2 (en) Rapid startup with dynamic reservation capabilities for network communication systems
FR2804812A1 (en) METHOD AND DEVICE FOR COMMUNICATION BETWEEN A FIRST AND A SECOND NETWORK
EP1560372A1 (en) Method and device for automatically detecting the bit rate of a CAN bus network
JP2001168915A (en) Ip packet transfer system
EP1306689A1 (en) Method and system for recording and synchronized reading of data coming from a plurality of terminals
FR2998125A1 (en) METHOD FOR TRANSMITTING DATA PACKETS BETWEEN TWO COMMUNICATION MODULES AND TRANSMITTER MODULE AND RECEIVER MODULE
FR2819668A1 (en) Digital word transfer across two series bus interconnecting bridge having memorised write request reception date and determining first future date write response/sending local system prior date.
EP0558126A1 (en) Synchronous system for controlling the attached modems and modems suitable for use in such a system
EP1074117B1 (en) Method for managing objects in a communication network and implementing device
FR2766938A1 (en) Serial interface circuit and associated signal processing method
FR2790892A1 (en) METHOD AND DEVICE FOR CONTROLLING THE SYNCHRONIZATION BETWEEN TWO SERIAL COMMUNICATION BUSES OF A NETWORK
FR2785408A1 (en) METHOD AND DEVICE FOR COMMUNICATING DIGITAL INFORMATION AND APPARATUSES USING THE SAME
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
WO2002007436A1 (en) Method and device for reading mpeg recorded data transmitted on an ieee 1394 bus
FR2832827A1 (en) Management of isochronous data transmission on non-dedicated carriers, uses determination of content of packets to prevent transmission of empty packets between sub-networks
FR2816146A1 (en) METHOD AND DEVICE FOR MANAGING A COMMUNICATION NETWORK
FR2908577A1 (en) Quality of service resource managing method for e.g. domestic network, involves sending information representing accepted value to receiver device to initialize transmission of content based on window size equal to accepted value
FR2823041A1 (en) Serial bus packet handling procedure purges link layer without marker transmission is fast
FR2794918A1 (en) Data packet transfer system uses header and data field system with header modified during transfer through bridges
FR3001311A1 (en) NETWORK INTERFACE OF A SOC INCLUDING AN IMPROVED COMMUNICATION CONTROLLER
FR2839227A1 (en) Video data transmission procedure uses proportion of correctly transmitted packets determined at each frame start to adjust rate for wired to radio network transfer
EP1467535B1 (en) Data flow control method and device for the management of a temporary storage means

Legal Events

Date Code Title Description
ST Notification of lapse

Effective date: 20140930