Method and corresponding apparatus for the automatic detection of the bit rate of a network, particularly of type CAN (Controller Area Network), and for the configuration of the network at the detected bit rate
18 claims: 2 independent, 16 dependent
- 1Procédé de détection automatique du débit d'un réseau et de configuration au débit détecté par un dispositif (2 1 ) connecté au réseau (1), caractérisé en ce qu' il comprend :* une phase d'initialisation (51) comprenant les étapes suivantes : - on place le dispositif dans un mode d'écoute, dans lequel il peut recevoir des messages provenant du réseau mais ne peut pas émettre de messages sur le réseau ;- on initialise le dispositif avec une configuration de débit initiale ;- on déclenche une première temporisation (timeout CAN) ;* une phase de traitement itératif (52) comprenant, pour chaque itération, les étapes suivantes : - si au moins une condition d'adaptation de débit est vérifiée (57), on interrompt la phase de traitement itératif, on valide la configuration de débit courante et on place le dispositif dans un mode normal (58) ;- si au moins une condition de non-adaptation de débit est vérifiée (55) ou si la première temporisation expire sans qu'une condition d'adaptation de débit ou une condition de non-adaptation de débit ait été vérifiée (56), on réinitialise la première temporisation (59) et on remplace la configuration de débit courante par une nouvelle configuration de débit obtenue par mise en oeuvre d'un mécanisme d'obtention d'une pluralité de configurations de débit possibles, sans connaissance d'une fréquence horloge f h du dispositif et sans hypothèse sur le débit du réseau (510 à 518).
- 2Procédé selon la revendication 1, caractérisé en ce que ladite au moins une condition de non-adaptation de débit est la détection par le dispositif d'une erreur, dite erreur de bit, sur au moins un bit d'un message reçu par le dispositif.
- 3Procédé selon l'une quelconque des revendications 1 et 2, caractérisé en ce que ladite au moins une condition d'adaptation de débit est l'acquittement par le dispositif d'un message reçu.
- 4Procédé selon l'une quelconque des revendications 1 à 3, caractérisé en ce que ledit mécanisme permet d'obtenir successivement toutes les configurations de débit possibles du dispositif.
- 5Procédé selon l'une quelconque des revendications 1 à 4, caractérisé en ce que la phase d'initialisation comprend en outre une étape de déclenchement d'une deuxième temporisation (timeout Autobaud), et en ce que la phase de traitement itératif comprend en outre, pour chaque itération, une étape (54) d'interruption du procédé si la deuxième temporisation expire sans qu'une configuration de débit courante ait été validée.
- 6Procédé selon l'une quelconque des revendications 1 à 5, caractérisé en ce que le réseau (1) est un bus CAN, et en ce que le dispositif (2 1 ) comprend un contrôleur CAN complété (34) par rapport à un contrôleur CAN classique (31) de façon à mettre en oeuvre le procédé selon l'invention de détection automatique du débit du réseau et de configuration au débit détecté.
- 7Procédé selon la revendication 6, chacun des bits compris dans un message possédant un temps nominal défini par les paramètres suivants :- un scalaire BRP, tel que : TQ = BRP / f h , avec TQ une unité de temps et f h la fréquence horloge du dispositif ;- la longueur L PRS , exprimée en nombre d'unité de temps TQ, d'un segment de propagation visant à compenser le délai physique sur le bus CAN ;- les longueurs L PHS1 et L PHS2 , exprimées en nombre d'unité de temps TQ, de premier et second segments de phase permettant de positionner un point d'échantillonnage. caractérisé en ce que , pour chacune de la pluralité de configurations de débit possibles, ledit mécanisme détermine des valeurs pour le scalaire BRP et les longueurs L PRS , L PHS1 et L PHS2 , sans connaissance de la fréquence horloge f h du dispositif et sans hypothèse sur le débit du réseau.
- 8Procédé selon la revendication 7, caractérisé en ce que ledit mécanisme met en oeuvre une boucle d'incrémentation de la longueur L PHS2 , elle-même incluse dans une boucle d'incrémentation de la longueur L PHS1 , elle-même incluse dans une boucle d'incrémentation de la longueur L PRS , elle-même incluse dans une boucle d'incrémentation du scalaire BRP, et en ce que les boucles d'incrémentation des longueurs L PRS , L PHS1 et L PHS2 sont telles que les longueurs L PRS , L PHS1 et L PHS2 sont incrémentées de façon homogène.
- 9Dispositif destiné à être connecté à un réseau, caractérisé en ce qu' il comprend des moyens de détection automatique du débit du réseau et de configuration au débit détecté, comprenant eux-mêmes :* des moyens d'initialisation comprenant : - des moyens de basculement d'un mode normal à un mode d'écoute, dans lequel sont activés des moyens de blocage de messages émis par le dispositif vers le réseau, le dispositif continuant à recevoir des messages provenant du réseau ;- des moyens d'initialisation du dispositif avec une configuration de débit initiale ;- des moyens de déclenchement d'une première temporisation ;* des moyens de traitement itératif comprenant les moyens suivants, activés lors de chaque itération : - des premiers moyens de détection qu'au moins une condition d'adaptation de débit est vérifiée, les moyens suivants étant activés en cas de détection positive par les premiers moyens de détection : des moyens d'interruption du traitement itératif, des moyens de validation de la configuration de débit courante et des moyens de basculement du mode d'écoute au mode normal ;- des seconds moyens de détection qu'au moins une condition de non-adaptation de débit est vérifiée ou que la première temporisation expire sans qu'une condition d'adaptation de débit ou une condition de non-adaptation de débit ait été vérifiée, les moyens suivants étant activés en cas de détection positive par les seconds moyens de détection : des moyens de réinitialisation de la première temporisation et des moyens de remplacement de la configuration de débit courante par une nouvelle configuration de débit obtenue par mise en oeuvre d'un mécanisme d'obtention d'une pluralité de configurations de débit possibles, sans connaissance d'une fréquence horloge f h du dispositif et sans hypothèse sur le débit du réseau.
- 10Dispositif selon la revendication 9, caractérisé en ce que ladite au moins une condition de non-adaptation de débit est la détection par le dispositif d'une erreur, dite erreur de bit, sur au moins un bit d'un message reçu par le dispositif.
- 11Dispositif selon l'une quelconque des revendications 9 et 10, caractérisé en ce que ladite au moins une condition d'adaptation de débit est l'acquittement par le dispositif d'un message reçu.
- 12Dispositif selon l'une quelconque des revendications 9 à 11, caractérisé en ce que ledit mécanisme permet d'obtenir successivement toutes les configurations de débit possibles du dispositif.
- 13Dispositif selon l'une quelconque des revendications 9 à 12, caractérisé en ce que les moyens d'initialisation comprennent en outre des moyens de déclenchement d'une deuxième temporisation, et en ce que les moyens de traitement itératif comprennent en outre des troisièmes moyens de détection, activés lors de chaque itération, permettant de détecter si la deuxième temporisation expire sans qu'une configuration de débit courante ait été validée, des moyens d'interruption du procédé étant activés en cas de détection positive par les troisièmes moyens de détection.
- 14Dispositif selon l'une quelconque des revendications 9 à 13, caractérisé en ce que le réseau est un bus CAN, et en ce que le dispositif comprend un contrôleur CAN complété comprenant lui-même lesdits moyens de détection automatique du débit du réseau et de configuration au débit détecté.
- 15Dispositif selon la revendication 14, chacun des bits compris dans un message possédant un temps nominal défini par les paramètres suivants :- un scalaire BRP, tel que : TQ = BRP / f h , avec TQ une unité de temps et f h la fréquence horloge du dispositif ;- la longueur L PRS , exprimée en nombre d'unité de temps TQ, d'un segment de propagation visant à compenser le délai physique sur le bus CAN ;- les longueurs L PHS1 et L PHS2 , exprimées en nombre d'unité de temps TQ, de premier et second segments de phase permettant de positionner un point d'échantillonnage. caractérisé en ce que , pour chacune de la pluralité de configurations de débit possibles, ledit mécanisme détermine des valeurs pour le scalaire BRP et les longueurs L PRS , L PHS1 et L PHS2 , sans connaissance de la fréquence horloge f h du dispositif et sans hypothèse sur le débit du réseau.
- 16Dispositif selon la revendication 15, caractérisé en ce que ledit mécanisme met en oeuvre une boucle d'incrémentation de la longueur L PHS2 , elle-même incluse dans une boucle d'incrémentation de la longueur L PHS1 , elle-même incluse dans une boucle d'incrémentation de la longueur L PRS , elle-même incluse dans une boucle d'incrémentation du scalaire BRP, et en ce que les boucles d'incrémentation des longueurs L PRS , L PHS1 et L PHS2 sont telles que les longueurs L PRS , L PHS1 et L PHS2 sont incrémentées de façon homogène.
- 17Dispositif selon l'une quelconque des revendications 14 à 16, caractérisé en ce que les moyens de basculement du mode normal au mode d'écoute comprennent des moyens génération d'un signal de sélection de mode (Autobaud), prenant la valeur « 0 » ou « 1 » selon que le dispositif doit fonctionner dans le mode normal ou d'écoute respectivement, en ce que le contrôleur CAN complété comprend un contrôleur CAN classique modifié pour comprendre lui-même lesdits moyens de détection automatique du débit du réseau et de configuration au débit détecté, hormis lesdits moyens de blocage de messages émis, et en ce que les moyens de blocage de messages émis comprennent des moyens de réalisation de la fonction logique « OU » entre le signal de sélection de mode et le signal d'émission (TxDC') du contrôleur CAN classique, le signal de sortie des moyens de réalisation de la fonction logique « OU » constituant le signal d'émission (TxDC) du contrôleur CAN complété.
- 18Dispositif selon la revendication 17, caractérisé en ce que le contrôleur CAN complété comprend en outre des moyens de rebouclage de la sortie sur l'entrée du contrôleur CAN classique, comprenant :- des moyens de réalisation de la fonction logique « ET » entre le signal d'émission (TxDC') du contrôleur CAN classique et le signal de réception (RxDC) du contrôleur CAN complété ;- des moyens de multiplexage recevant sur une première entrée le signal de sortie des moyens de réalisation de la fonction logique « ET » et sur une deuxième entrée le signal de réception (RxDC) du contrôleur CAN complété, le signal de sortie des moyens de multiplexage constituant le signal de réception (RxDC') du contrôleur CAN classique, les moyens de multiplexage étant commandés par le signal de sélection de mode de façon que la première ou la seconde entrée soit sélectionnée selon que le signal de sélection de mode prend la valeur « 1 » ou « 0 » respectivement.
Independent claims18
80 paragraphs, as filed
p0001The field of the invention is that of communications networks.
p0002More specifically, the invention relates to an automatic detection method, a device connected to a network, the flow rate of the network and device configuration to the detected flow. The invention also relates to the device implementing this method.
p0003The invention is particularly, but not exclusively, in the case where the network is kind of CAN bus.
p0004By way of illustration and for the sake of simplicity, we now present the technique of the prior art and its drawbacks in the above case where the network is the type of CAN bus.
p0005Recall that a CAN ( "Controller Area Network") is a serial bus for connecting a plurality of devices, called "control units" and each including a CAN controller. This type of bus is now mainly used in the field of industry and in the automotive field.
p0006Typically, in a car, two CAN buses are used. One says high speed CAN (up to 1 Mb / s) provides interconnected control units on or following features: dashboard, engine, braking (anti-lock), active suspension, transmission, etc. The other, said low-speed CAN (up to 125 kb / s), used to interconnect control units on or following features: dashboard, lighting, air conditioning, airbags, door locks , power windows, etc.
p0007Each CAN bus implements a protocol of the same name (CAN protocol), which is a serial communication protocol that supports real-time systems with a high level of reliability in a limited and harsh environment such as a factory, a workshop, a car. .. the CAN protocol covers two of the seven layers of the OSI model interconnection open systems ISO, namely the physical layer (layer 1) and the data link layer (layer 2). For more information on the CAN bus, one may refer to ISO 11898.
p0008The CAN protocol data link layer is such that each control unit can transmit and receive data. The data is transmitted on the bus in the form of packets (also called frames or messages) asynchronous defined but variable and limited length format. As soon as the bus is free, any control unit connected to the bus can transmit a new packet. A switching mechanism for the priority packets is provided, and an arbitration mechanism for resolving conflicts resulting from simultaneous transmission of multiple packets on the bus when it is free. See also documents<patcit id="pcit0001" dnum="EP1187373A1"><text>EP-A1-1187373</text></patcit> and <patcit id="pcit0002" dnum="US6049888A"><text>US-A-6049888</text></patcit>.
p0009Traditionally, when you want to connect to a CAN bus a new control unit (that is to say a new device including a CAN controller running an application (layer 7 of the OSI model)), the procedure is as follows. The application developer executed by the CAN controller must know the CAN controller clock frequency (eg 12 MHz). It also assumes that the network throughput takes one of a limited number of values (three values generally). For example, it assumes that the network throughput is 100, 250 or 500 kb / s. For each of the three assumed values of the network throughput, it determines a priori, and from the knowledge of the CAN controller clock frequency, a rate configuration for the CAN controller. It then develops the application so that, in operation, the application loads a first rate configuration associated with a first assumed value of the network throughput; if the application receives error messages, it loads a second rate configuration associated with a second assumed value of the network throughput; and so on in order to test (if required) the predetermined different speed configurations.
p0010A disadvantage of the aforementioned known technique is that it can not be implemented in situations where we do not know the frequency CAN controller clock.
p0011Another drawback of the aforementioned known technique is that it does not work if no assumptions about the network speed is correct.
p0012Yet another drawback of the abovementioned known technique is that, when several possible flow configurations are tested successively, the CAN controller actually disturb the CAN bus. This can even lead to ejection of CAN controller CAN bus.
p0013The invention particularly aims to overcome these various disadvantages of the prior art.
p0014More specifically, one of the objectives of the present invention is to provide a method and a device for automatically detecting the throughput of a network configuration and the sensed flow, does not require knowledge of the clock frequency of the device, nor assumptions about the network throughput.
p0015The invention also aims to provide such a method and device does not disturb the network.
p0016Another object of the invention is to provide such a method and device which are simple to implement and inexpensive.
p0017These various objectives, and others which will become apparent hereinafter are achieved according to the invention using an automatic method for detecting the flow of a network configuration and the speed detected by a device connected to the network , said method comprising:<ul><li>* An initialization phase comprising the steps of:<ul><li>the device is placed in a listening mode, where it can receive messages from the network but can not send messages over the network;</li><li>the device is initialized with an initial rate configuration;</li><li>a first timer is started;</li></ul></li><li>* An iterative processing step comprising, for each iteration, the following steps:<ul><li>if at least one rate matching condition is satisfied, the iterative processing is interrupted phase current flow in the configuration is valid and the device is placed in a normal mode;</li><li>if at least one non flow-adaptation condition is verified or if the first timer expires without a rate matching condition or debit mismatching condition has been verified, it resets the first timer and replaced the configuration of current flow by a new configuration of flow obtained by implementing a mechanism for obtaining a plurality of possible flow configurations, without knowledge of a clock frequency f<sub>h</sub> of the device and without hypothesis on network throughput.</li></ul></li></ul>
p0018The general principle of the invention therefore is to test, in a listening mode to avoid disturbing the network, a plurality of flow configurations obtained without knowledge of the clock frequency of the device and without hypothesis on network throughput.
p0019Advantageously, said at least one flow mismatching condition is the detection by the error of a device, said bit error, on at least one bit of a message received by the device.
p0020Advantageously, said at least one rate matching condition is the acknowledgment by the device of a received message.
p0021Preferably, said mechanism provides successively all possible speed configurations of the device.
p0022According to an advantageous characteristic, the initializing phase further comprises a step of initiating a second time delay, and the iterative processing step comprises, for each iteration, a process interrupt step if the second timer expires without a configuration of current flow has been validated.
p0023In an advantageous embodiment of the invention, the network is a CAN bus, and the device comprises a CAN controller completed relative to a conventional CAN controller so as to implement the method according to the invention automatically detecting the flow network configuration and the detected flow rate.
p0024Each of the bits included in a message for example has a nominal time defined by the following parameters:<ul><li>scalar BRP, such as: TQ = BRP / f<sub>h</sub>With TQ a unit of time and f<sub>h</sub> the clock frequency of the device;</li><li>the length L<sub>PRS</sub>, Expressed in number of TQ time unit, a propagation segment to compensate for the physical delay on the CAN bus; </li><li>the lengths L<sub>PHS1</sub> and I<sub>PHS2</sub>Expressed in number of TQ time unit, first and second phase segments for positioning a sampling point.</li></ul>
p0025In this case, advantageously, for each of the plurality of possible flow configurations, said mechanism determines values for the scalar BRP and the lengths L<sub>PRS</sub>, L<sub>PHS1</sub> and I<sub>PHS2</sub>Without knowledge of the clock frequency f<sub>h</sub> of the device and without hypothesis on network throughput.
p0026Advantageously, said mechanism implements an incrementing loop length L<sub>PHS2</sub>, Itself included in an incrementing loop length L<sub>PHS1</sub>, Itself included in an incrementing loop length L<sub>PRS</sub>Itself included in an incrementing loop scalar BRP. The loops increment lengths L<sub>PRS</sub>, L<sub>PHS1</sub> and I<sub>PHS2</sub> are such that the lengths L<sub>PRS</sub>, L<sub>PHS1</sub> and I<sub>PHS2</sub> are incremented evenly.
p0027The invention also relates to a device intended to be connected to a network, characterized in that it comprises automatic means for detecting the network throughput and setup sensed flow, themselves comprising:<ul><li>* Initializing means comprising:<ul><li>tilting means for a normal mode to a listening mode, which is enabled for messages locking means emitted by the device to the network, the device continuing to receive messages from the network;</li><li>initialization means of the device with an initial rate configuration;</li><li>triggering means for a first time delay;</li></ul></li><li>* Iterative processing means comprising the following means, activated during each iteration:<ul><li>first detecting means at least one rate matching condition is satisfied, the following means being activated in case of positive detection by the first detecting means: means for interruption of the iterative processing, validation means the configuration of current flow and tilting means listening mode to normal mode;</li><li>second means for detecting at least one flow mismatching condition is satisfied or that the first timer expires without a rate matching condition or flow mismatching condition has been checked, the means following being activated in the event of positive detection by the second detecting means: reset means of the first time delay means and replacement of the configuration of current flow by a new configuration of flow obtained by implementing a mechanism obtaining a plurality of possible flow configurations, without knowledge of a clock frequency f<sub>h</sub> of the device and without hypothesis on network throughput.</li></ul></li></ul>
p0028Advantageously, said at least one flow mismatching condition is the detection by the error of a device, said bit error, on at least one bit of a message received by the device.
p0029Advantageously, said at least one rate matching condition is the acknowledgment by the device of a received message.
p0030Preferably, said mechanism provides successively all possible speed configurations of the device.
p0031According to an advantageous characteristic, the initialization means further comprises means of triggering a second timer. Furthermore, the iterative processing means further comprises third means of detection, is enabled at each iteration, for detecting whether the second timer expires with no other configuration of current flow has been validated, the process interruption means being activated in the event of positive detection by the third detecting means.
p0032In one advantageous embodiment of the invention, the network is a CAN bus, and the device includes a CAN controller completed itself comprising said automatic detection means of the network speed and configuration of the detected flow.
p0033Each of the bits included in a message for example has a nominal time defined by the following parameters:<ul><li>scalar BRP, such as: TQ = BRP / f<sub>h</sub>With TQ a unit of time and f<sub>h</sub> the clock frequency of the device; </li><li>the length L<sub>PRS</sub>, Expressed in number of TQ time unit, a propagation segment to compensate for the physical delay on the CAN bus;</li><li>the lengths L<sub>PHS1</sub> and I<sub>PHS2</sub>Expressed in number of TQ time unit, first and second phase segments for positioning a sampling point.</li></ul>
p0034In this case, advantageously, for each of the plurality of possible flow configurations, said mechanism determines values for the scalar BRP and the lengths L<sub>PRS</sub>, L<sub>PHS1</sub> and I<sub>PHS2</sub>Without knowledge of the clock frequency f<sub>h</sub> of the device and without hypothesis on network throughput.
p0035Advantageously, said mechanism implements an incrementing loop length L<sub>PHS2</sub>, Itself included in an incrementing loop length L<sub>PHS1</sub>, Itself included in an incrementing loop length L<sub>PRS</sub>Itself included in an incrementing loop scalar BRP. The loops increment lengths L<sub>PRS</sub>, L<sub>PHS1</sub> and I<sub>PHS2</sub> are such that the lengths L<sub>PRS</sub>, L<sub>PHS1</sub> and I<sub>PHS2</sub> are incremented evenly.
p0036Advantageously, the tilting means from normal mode to listening mode generation means include a mode selection signal (Autobaud), taking the value "0" or "1" depending on whether the device is to operate in the normal mode or listening respectively. In addition, the completed CAN controller includes a conventional CAN controller modified to include himself said automatic detection means of the network speed and configuration of the detected speed, apart said transmitted message blocking means. Finally, the transmitted message blocking means comprises means for implementing the logical "OR" function between the mode selection signal and the transmission signal (TxDC ') of the conventional CAN controller, the output signal means realization of logic "OR" function constituting the transmission signal (TXDC) completed the CAN controller.
p0037Advantageously, the completed CAN controller further includes loopback means the output to the input of conventional CAN controller, including:<ul><li>realization means of logic "AND" function between the transmission signal (TxDC ') of conventional CAN controller and the reception signal (RXDC) completed the CAN controller; </li><li>multiplexing means receiving at a first input the output signal of the means for implementing the logical "AND" function, and on a second input the received signal (RXDC) CAN controller completed, the output signal of the multiplexing means constituting the reception signal (RXDC ') of conventional CAN controller, the multiplexing means being controlled by the mode select signal so that the first or the second input is selected by the mode select signal takes the value "1 "or" 0 "respectively.</li></ul>
p0038Other characteristics and advantages of the invention will appear on reading the following description of a preferential embodiment of the invention, given by way of indicative and nonlimiting example, and the accompanying drawings, in which:<ul><li>the <figref idrefs="f0001">figure 1</figref> shows a block diagram of a known system for interconnecting a plurality of devices via a CAN bus system in which can be implemented the method according to the invention detection and automatic flow configuration;</li><li>the <figref idrefs="f0001">2</figref> illustrates the known structure of each bit included in a message carried on a CAN bus;</li><li>the <figref idrefs="f0001">3</figref> shows a functional block diagram of an embodiment of a device appearing on the <figref idrefs="f0001">figure 1</figref> and allowing implementation of the method according to the invention;</li><li>the <figref idrefs="f0001">4</figref> presents a particular embodiment of the electronic adaptation block appearing on the <figref idrefs="f0001">3</figref> ;</li><li>the <figref idrefs="f0002">5</figref> is a flowchart of a particular embodiment of the method according to the invention.</li></ul>
p0039The invention therefore relates to a method and a device for automatically detecting the throughput of a network configuration and the sensed flow.
p0040In the following description, one considers only the case where the network is a CAN bus. It is clear however that the invention is also applicable to other types of network.
p0041As already mentioned above and illustrated in the block diagram of <figref idrefs="f0001"><b><u>figure 1</u></b></figref>, 1 CAN bus is a serial bus for connecting a plurality of devices 2<sub>1</sub>, 2<sub>2</sub>... 2<sub>not</sub>Called "control units" and each including a CAN controller.
p0042We now briefly recall some essential features of the CAN protocol is a serial communication protocol implemented by a CAN bus. For more information on the CAN protocol and the CAN bus, one may refer to ISO 11898, inserted by reference.
p0043The CAN protocol distinguishes four types of CAN messages:<ul><li>the data message (Data Frame), the standard format (11-bit identifier) or extended (29-bit identifier);</li><li>the data request message (Remote Frame);</li><li>error messages (Error Frame);</li><li>network delay message (Overload Frame).</li></ul>
p0044A standard CAN message includes:<ul><li>a start of frame field;</li><li>an arbitration field, which consists of an ID and a bit "Data Request" used to distinguish a data message (Data Frame), a request message (Remote Frame);</li><li>a control field, which contains an "extended identifier" bit (IDE) and a number of data (DLC) indicating the number of data bytes following in the data field. In a request message, the DLC number is the number of requested data byte;</li><li>a data field of up to eight bytes of data;</li><li>a check (CRC) field, ensuring message integrity;</li><li>an acknowledgment field (ACK), consisting of a slot and an acknowledgment delimiter. The bit in the acknowledgment segment is sent to a recessive level and crashed at a dominant level by receiving devices that have at this time received the data correctly;</li><li>a field message end (EOF);</li><li>an inter-message field (IFS), which is a minimum number of bits between two consecutive messages.</li></ul>
p0045The CAN protocol distinguishes five types of errors, which are not mutually exclusive:<ul><li>a bit error ( "bit error") when the bit itself is vitiated by error;</li><li>a jam error ( "bit stuff error");</li><li>an error acknowledgment ( "ACK error");</li><li>a verification error ( "CRC error");</li><li>a structural error.</li></ul>
p0046A device connected to the CAN bus and detects an error condition is responsible for the report by sending an error message. These features make a device that plugs into a CAN bus must have a proper flow configuration, the risk to the existing CAN bus endangered or be excluded from the CAN bus.
p0047Will now be described in connection with the <figref idrefs="f0001"><b><u>2</u></b></figref>, The known structure ( "CAN Bit Timing"), and defined in the CAN protocol, each bit included in a message conveyed on a CAN bus.
p0048The nominal time for each bit (or NTB for "Nominal Bit Time" in English) is defined by a structure made up of four distinct segments 21 to 24. Each of these four segments is composed of an integral number of time unit (or TQ, for "Time Quanta" in English). The length of this unit time TQ is defined from the clock frequency f<sub>h</sub> of the device and a device to own scalar BRP TQ = BRP / f<sub>h</sub>. The total number of time units TQ in one bit must be between 8 and 25.
p0049The first segment is a sync segment 21 ( "synchronization segment") whose length is fixed to a unit of time TQ.
p0050The second segment 22 is a propagation segment ( "segment spread"). Its role is to compensate for the physical delay induced by the CAN bus. Its length L<sub>PRS</sub> is programmable between one and eight time units TQ.
p0051The third and fourth segments 23, 24 ( "segment Phase 1" and "segment Phase 2") are phase segments, used to position a sampling point. Their lengths L<sub>PHS1</sub> and I<sub>PHS2</sub> are also programmable.
p0052It has now, in connection with the <figref idrefs="f0001"><b><u>3</u></b></figref>, An embodiment of a device appearing on the <figref idrefs="f0001">figure 1</figref> (For example the one referenced 2<sub>1</sub>) And enabling the implementation of the method according to the invention.
p0053Usually, the device 2<sub>1</sub> includes a controller (or microcontroller) Classic CAN 31 and a transmitter / receiver circuit 33 CAN ( "CAN transceiver"). 33 This is specific to the physical layer CAN protocol and is designed to interface between the conventional CAN controller 31 (who works at the logical level) and one CAN bus (who works at the physical level). The conventional CAN controller 31 sends a signal 35 (hereinafter referred to as transmission signal TxDC ') and receives another 36 (hereinafter referred to as reception signal RXDC').
p0054According to the present invention, the conventional CAN controller 31 is amended by:<ul><li>it executes a detection algorithm and automatic flow configuration (method of the invention, described in detail below in connection with <figref idrefs="f0002">5</figref>);</li><li>it generates a mode selection signal 37 (Autobaud).</li></ul>
p0055Device 2<sub>1</sub> is also modified in that it further comprises an electronic matching block 32, interfacing between the conventional CAN controller 31 and the transmitter / receiver circuit 33. The CAN controller 31 and CAN vector electronic adaptation block 32 together form a CAN controller completed 34 specific to the present invention. Thus, the electronic adaptation block 32:<ul><li>one side receives the transmission signal TxDC 'and the mode selection signal 37 (Autobaud) emitted by the conventional CAN controller 3, and outputs the received signal RXDC' received by the conventional CAN controller 3;</li><li>on the other, emits the transmission signal TxDC CAN controller completed 4 and receives the reception signal RXDC 'CAN controller completed 4.</li></ul>
p0056The electronic adaptation block 32 is controlled by the mode selection signal 37 (Autobaud) so that, during the execution of the aforementioned algorithm, the device 2<sub>1</sub> switches from one to the other of the following modes:<ul><li>a normal mode in which the conventional CAN controller 31 can send or receive messages to or from the CAN bus; </li><li>a listening mode, in which the conventional CAN controller 31 can receive messages from the CAN bus but can not transmit on the CAN bus, and in which the conventional CAN controller 31 can receive any messages it sends to CAN bus (which as previously indicated are blocked before they get there).</li></ul>
p0057Will now be described in connection with the <figref idrefs="f0001"><b><u>4</u></b></figref>A particular embodiment of the electronic adaptation block 32 appearing on the <figref idrefs="f0001">3</figref>.
p0058It includes messages locking means emitted by the conventional CAN controller 31 and loopback means of the output to the input of the conventional CAN controller 31.
p0059The mode selection signal 37 (Autobaud) takes the value "0" if the device 2<sub>1</sub> must operate in normal mode, or "1" for operation in the listening mode.
p0060The transmitted message blocking means comprise an OR gate 41, realizing the logic function "OR" between the mode selection signal 37 (Autobaud) and the transmission signal (TxDC ') of conventional CAN controller 31. The signal output of the OR gate 41 is the transmission signal (TxDC) CAN controller completed 34.
p0061Thus, when the mode selection signal 37 (Autobaud) takes the value "0" (normal mode), the transmission signal (TxDC ') of conventional CAN controller 31 is coincident with the transmission signal (TxDC) of CAN controller completed 34, and the device 2<sub>1</sub> can therefore transmit messages on the CAN bus.
p0062However, when the mode selection signal 37 (Autobaud) takes the value "1" (listen mode), the transmission signal (TxDC) completed the CAN controller 34 is always "1", which corresponds to a device of the resting state (since "1" is the recessive state of the CAN bus) and therefore no message is sent by the device 2<sub>1</sub> on the CAN bus.
p0063The loopback means of the output to the input of the conventional CAN controller 31 include:<ul><li>an AND gate 42, realizing the logic function "AND" between the transmission signal (TxDC ') of conventional CAN controller 31 and the reception signal (RXDC) CAN controller completed 34; </li><li>a multiplexer 43 receiving at a first input the output signal of the AND gate 42 and on a second input the received signal (RXDC) supplemented CAN controller 34. The multiplexer output signal is the received signal (RXDC ') the classic CAN controller 31. the multiplexer is controlled by the mode select signal 37 (Autobaud) so that the first or the second input is selected by the mode select signal takes the value "1" or "0 " respectively.</li></ul>
p0064Thus, when the mode selection signal 37 (Autobaud) takes the value "0" (normal mode), the received signal (RXDC ') of conventional CAN controller 31 is coincident with the received signal (RXDC) CAN controller 34 completed, and the device 2<sub>1</sub> therefore receives messages from the CAN bus.
p0065However, when the mode selection signal 37 (Autobaud) takes the value "1" (listen mode), the received signal (RXDC ') of conventional CAN controller 31 is a combination (AND function) of the signal issue (TxDC ') of conventional CAN controller 31 and the reception signal (RXDC) completed the CAN controller 34. Since "1" is the recessive state of the CAN bus, this allows you to enjoy both messages from the CAN bus as messages (error or acknowledgment message including) emitted by the conventional CAN controller 31.
p0066Now be presented in connection with the flowchart <figref idrefs="f0002"><b><u>5</u></b></figref>, A particular embodiment of the process according to the invention detection and automatic flow configuration.
p0067One distinguishes an initialization phase 51 and an iterative processing step 52.
p0068Each flow configuration is defined by the values given to the following parameters (see above description of the <figref idrefs="f0001">2</figref>):<ul><li>the scalar BRP (rated "prescaler" on <figref idrefs="f0002">5</figref>);</li><li>the length L<sub>PRS</sub> (Denoted "L propagation segment" on the <figref idrefs="f0002">5</figref>), Expressed in time units TQ, the propagation segment 22;</li><li>the lengths L<sub>PHS1</sub> and I<sub>PHS2</sub> (Denoted "L Phase segment 1" and "L Phase Segment 2 'respectively on the <figref idrefs="f0002">5</figref>), Also expressed in units of time TQ, the first and second phase segments 23, 24.</li></ul>
p0069The initialization phase 51 comprises: <ul><li>place the device in the listening mode ( "listening mode" in English), with the value "1" in the mode selection signal (Autobaud) (see discussion above);</li><li>initialize the device with a flow rate of initial configuration, corresponding to a minimum flow rate value. For this example we give the initial value "1" to the scalar BRP ( "prescaler") "3" to the length L<sub>PRS</sub> ( "The propagation segment") and "2" at each length L<sub>PHS1</sub> and I<sub>PHS2</sub> ( "L segment Phase 1" and "L PHASE2 segment");</li><li>trigger (that is to say, delete) a first timer (denoted "CAN timeout" on <figref idrefs="f0002">5</figref>);</li><li>trigger a second time (denoted "Autobaud timeout" on <figref idrefs="f0002">5</figref>).</li></ul>
p0070The first and second time delays are managed by such counters that are specific to the CAN controller 34 completed.
p0071The first time ( "CAN timeout") is used to change the flow configuration if a first predetermined time after the classic CAN controller 31 has issued (and therefore received since its input is looped to its output) or a message bit error, nor a message received acknowledgment message.
p0072The second delay ( "timeout Autobaud") is used to stop the execution of the process on a failure if after a second predetermined time no flow configuration could not be validated. This avoids an endless loop.
p0073now details the steps performed at each iteration of the iterative processing stage 52.
p0074During the step referenced 53, it is detected whether the second timer ( "timeout Autobaud") has elapsed. If so, it stops the execution of the process on a failure ( "autobaud KO"), referenced in step 54.
p0075Otherwise, proceed to the step referenced 55, in which it is detected whether the conventional CAN controller issued a 31 bit error message. If this is not the case, it is detected whether the first time delay ( "CAN timeout") has elapsed, in step referenced 56.
p0076If the first timer ( "CAN timeout") has not elapsed, control passes to step referenced 57, in which it is detected whether the conventional CAN controller 31 has issued an acknowledgment message from a previously received message . If this is the case, in step referenced 58 is stopped executing the method on a success ( "autobaud OK"), in validating the configuration of current flow and by placing the device in the normal mode. If the conventional CAN controller 31 has not issued acknowledgment message, it returns to the step referenced 53 (new iteration).
p0077If the conventional CAN controller issued a 31 bit error message or if the first time ( 'timeout CAN ") has passed, it goes to step referenced 59, in which it resets the first time (' timeout CAN "). Then, at the step referenced 510, it is detected whether the scalar BRP ( "prescaler") is less than a predetermined maximum scalar ( "prescaler max"). If this is not the case, control passes to step referenced 511, in which it is detected whether the current length of the second phase segment ( "L PHASE2 segment") is less than the current length of the segment of spread ( "The propagation segment"). If the answer to the step referenced 511, we increment the current length of the second phase segment, during the step referenced 512 and returns to the step referenced 53 (new iteration). If the answer to the step referenced 511, proceed to step referenced 513, at which it is detected whether the current length of the first phase segment ( "segment L Phase 1") is less than the current length the propagation segment ( "the propagation segment"). If the answer to the step referenced 513, we increment the current length of the first phase segment, during the step referenced 514 and returns to the step referenced 53 (new iteration). If the answer to the step referenced 513, proceed to the step referenced 515, at which it is detected whether the current length of the propagation segment ( "The propagation segment") is less than eight (maximum value of this length). If the answer to the step referenced 515, proceed to the step referenced 516, in which is incremented the current length of the propagation segment and then returns to the step referenced 53 (new iteration). If the answer to the step referenced 515, proceed to step referenced 517, at which it increments the value of the scalar BRP ( "prescaler") and restores their initial values ( "2", "2 "and" 3 "respectively) to the lengths of first and second phase segments (" L-phase segment 1 "and" L phase segment 2 ') and the length of the propagation segment ( "L propagation segment"), and then returns referenced in step 53 (new iteration).
p0078If during the step referenced 510, it is detected that the scalar BRP ( "prescaler") is not less than the maximum scalar ( "prescaler max"), proceed to the step referenced 518, in which we restores their initial values ( "1", "2", "2" and "3" respectively) to the set of parameters (scalar BRP ( "prescaler") lengths of the first and second phase segments ( "L-phase segment 1 "and" L Phase segment 2 ") and length of the propagation segment (" the propagation segment ")) and then returns to the step referenced 53 (new iteration).
p0079Note that incrementing loop length of the propagation segment and the lengths of the first and second phase segments are such that these three lengths are incremented homogeneously.
p0080The method according to the invention, detection and automatic flow configuration can be realized in software (software) or hardware (hardware).
2 sheets
Sheet 1 Sheet 2
Every citation, both ways
| Document | Relation | Office |
|---|---|---|
| EP1187373A | Cites | European Patent Office (EPO) |
| EP1206092A | Cites | European Patent Office (EPO) |
| US6049888A | Cites | United States of America |
| US2003058894A1 | Cites | United States of America |
6 members in 3 offices; this record represents the family
Priority claims2
| Document | Office | Kind | Date |
|---|---|---|---|
| 0310941 | France | – | |
| 0310941 | France | A |
Members6
| Document | Office | Kind | |
|---|---|---|---|
| FR2859853A1 | France | A1 | |
| EP1517474A1 | European Patent Office (EPO) | A1 | |
| US2005094570A1 | United States of America | A1 | |
| FR2859853B1 | France | B1 | |
| US7359436B2 | United States of America | B2 | |
| EP1517474B1This record | European Patent Office (EPO) | B1 |
33 legal events, as 4 offices reported them to INPADOC
Over the term
Point at a mark for the eventEvents
| Event | Code | Office | |
|---|---|---|---|
| Lapsed in a contracting state [announced via postgrant information from national office to epo]LapsedPG25 | PG25 | EP | |
| Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal feeWithdrawnR119 | R119 | DE | |
| Annual fee paid to national office [announced via postgrant information from national office to epo]GrantedPGFP | PGFP | EP | |
| Lapsed in a contracting state [announced via postgrant information from national office to epo]LapsedPG25 | PG25 | EP | |
| Gb: european patent ceased through non-payment of renewal feeCeasedGBPC | GBPC | EP | |
| No opposition filed against granted patent, or epo opposition proceedings concluded without decisionGrantedR097 | R097 | DE | |
| Lapsed in a contracting state [announced via postgrant information from national office to epo]LapsedPG25 | PG25 | EP | |
| No opposition filedOpposition26N | 26N | EP | |
| No opposition filed within time limitOppositionORIGINAL CODE: 0009261PLBE | PLBE | EP | |
| Information on the status of an ep patent application or granted ep patentGrantedSTATUS: NO OPPOSITION FILED WITHIN TIME LIMITSTAA | STAA | EP | |
| Change of applicant/patenteeR081 | R081 | DE | |
| Change of applicant/patenteeR081 | R081 | DE | |
| Change of applicant/patenteeR081 | R081 | DE | |
| Change of applicant/patenteeR081 | R081 | DE | |
| Change of representativeR082 | R082 | DE | |
| Change of representativeR082 | R082 | DE | |
| Lapsed in a contracting state [announced via postgrant information from national office to epo]LapsedPG25 | PG25 | EP | |
| Change of representativeR082 | R082 | DE | |
| Discontinued in the netherlands as no translation has been filedVDEP | VDEP | NL | |
| Lapsed in a contracting state [announced via postgrant information from national office to epo]LapsedPG25 | PG25 | EP | |
| Dpma publication of mentioned ep patent grantGrantedR096 | R096 | DE | |
| Designated contracting statesAK | AK | EP | |
| European patent grantedGrantedNOT ENGLISHFG4D | FG4D | GB | |
| (expected) grantORIGINAL CODE: 0009210GRAA | GRAA | EP | |
| Grant fee paidORIGINAL CODE: EPIDOSNIGR3GRAS | GRAS | EP | |
| Party data changed (applicant data changed or rights of an application transferred)RAP1 | RAP1 | EP | |
| Despatch of communication of intention to grant a patentORIGINAL CODE: EPIDOSNIGR1GRAP | GRAP | EP | |
| First examination report despatched17Q | 17Q | EP | |
| Designation fees paidAKX | AKX | EP | |
| Request for examination filed17P | 17P | EP | |
| Designated contracting statesAK | AK | EP | |
| Request for extension of the european patentAX | AX | EP | |
| Public reference made under article 153(3) epc to a published international application that has entered the european phaseORIGINAL CODE: 0009012PUAI | PUAI | EP |
Numbers
- Publication
- 1517474
- Application
- 43640598
Titles3
- German
- Verfahren und korrespondierende Vorrichtung zur automatischen Erkennung der Bitrate eines Netzwerks, insbesondere vom Typ CAN (Controller Area Network), und zur Konfiguration des Netzwerks bei der erkannten Bitrate
- English
- Method and corresponding apparatus for the automatic detection of the bit rate of a network, particularly of type CAN (Controller Area Network), and for the configuration of the network at the detected bit rate
- French
- Procédé et dispositif correspondant de détection automatique du débit d'un réseau, notamment de type CAN (Controller Area Network), et de configuration du réseau au débit détecté
Classification
- CPC, 4
- H04L41/0869
- H04L12/4013
- H04L2012/40215
- H04L41/00
- IPC, 1
- H04L12 24
Designated states5
- Contracting states, 5
- Germany
- Spain
- United Kingdom
- Italy
- Netherlands (Kingdom of the)
