WO2021058123A1 - Slave device, bus system, and methods - Google Patents

Slave device, bus system, and methods Download PDF

Info

Publication number
WO2021058123A1
WO2021058123A1 PCT/EP2020/000153 EP2020000153W WO2021058123A1 WO 2021058123 A1 WO2021058123 A1 WO 2021058123A1 EP 2020000153 W EP2020000153 W EP 2020000153W WO 2021058123 A1 WO2021058123 A1 WO 2021058123A1
Authority
WO
WIPO (PCT)
Prior art keywords
bus
slave device
slave
collision
identification
Prior art date
Application number
PCT/EP2020/000153
Other languages
German (de)
French (fr)
Inventor
Christof Michenthaler
Leo Aichriedler
Thomas Hafner
Dirk Hammerschmidt
Original Assignee
Infineon Technologies Ag
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 Infineon Technologies Ag filed Critical Infineon Technologies Ag
Priority to CN202080061799.9A priority Critical patent/CN114341827A/en
Priority to US17/761,300 priority patent/US20220353108A1/en
Priority to EP20775182.7A priority patent/EP4035314A1/en
Publication of WO2021058123A1 publication Critical patent/WO2021058123A1/en

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/40Bus networks
    • H04L12/407Bus networks with decentralised control
    • H04L12/413Bus networks with decentralised control with random access, e.g. carrier-sense multiple-access with collision detection (CSMA-CD)
    • 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/40Bus networks
    • H04L12/403Bus networks with centralised control, e.g. polling

Definitions

  • the present application relates to slave devices, bus systems and corresponding methods.
  • Bus systems enable several bus participants to communicate with one another.
  • One application example is sensor systems in which several sensors communicate as slave devices with a control unit as master device, for example in an automobile system.
  • a control unit as master device, for example in an automobile system.
  • FIG. 2 is a flow diagram for illustrating methods according to some exemplary embodiments.
  • FIG. 6 shows a diagram of a system according to a further exemplary embodiment.
  • the communication can take place via a CAN bus, and apart from the described address allocation and associated features and components, the communication can take place as in conventional communication via a CAN bus.
  • FIG. 2 explained.
  • the method of FIG. 2 can be carried out, for example, in the system 10 of FIG. 1 or subsequent systems, and is described with reference to FIG. 1 for a better understanding.
  • the method of FIG. 2 can, however, also be carried out in other systems.
  • the slave devices 12 all have a predetermined identification (identification) that was programmed in during manufacture, for example.
  • a unique 32-bit sequence can be used, other sequence lengths also being possible.
  • a possible number of different identifications is selected in such a way that each slave device produced can be assigned a unique identification. Different areas of identifications can be reserved for different manufacturers of slave devices.
  • the slave devices detect a collision on the bus. From the perspective of a slave device, a collision has occurred if the value on the bus, e.g. voltage level, does not correspond to the identification sent by it. In the above exemplary embodiment with dominant and recessive states, this occurs when another slave sends a "more dominant" identification than the slave that recognizes a collision.
  • the value on the bus e.g. voltage level
  • slave devices that detect a collision are then eliminated at 23 from the present "initialization round", that is, the loop of FIG no other slave device is driving a "more dominant” level).
  • the master device then assigns an address to this slave device at 24.
  • This slave device is thus configured with regard to the address and is eliminated from the initialization at 25, e.g. by being muted.
  • FIG. 3 a situation is assumed in which a low bus level is dominant and a high bus level is recessive, so that if one participant wants to send a low bus level and another participant wants to send a high bus level, the bus level is low overall. This is the case, for example, with a CAN bus.
  • Different manufacturers of slave devices can be assigned different areas of identifications that they can use for their products. Some of the bits can be assigned a code that specifies the manufacturer.
  • Initialization phase when the identification is sent the corresponding value on the bus 63 is looped back as a receive signal to the receive line RxD.
  • a collision can be detected if the reception signal deviates from the transmission signal (for example if the sensor 67 sends a recessive value and another sensor sends a dominant value). In this way, collisions can be detected.
  • a transmission speed when sending the identification is selected in such a way that collision detection can also take place in the event of a loop delay when looping back.
  • This delay depends, for example, on the length of the cable used. It should again be noted that the signals of FIG. 7 are only an example and are not to be regarded as limiting.
  • the master device (for example the master device 51 in FIG. 5 or the master device 61 in FIG. 6) first sends an initialization signal (for example at 21 in FIG. 2).
  • the slave devices After the completion of the initialization signal, the slave devices respond with their identifications. These begin with a start bit followed by a 4-byte (32-bit) long identification, the 4 bytes being separated from each other by a stop bit.
  • the 1st byte with the most significant bits (MSB) for both slave devices is 00011011, so that there is no collision here.
  • the next byte of the identification (referred to as the 3rd byte in FIG. 7) is 11111000 for the first slave and 11111001 for the second slave, so that there is a collision with the last bit. It is again assumed that the 0 is dominant compared to the 1, so that a level corresponding to a 0 is present on the bus.
  • the second slave recognizes a collision (it wants to drive a 1 onto the bus, but the bus shows a 0) and is eliminated and switches to mute, for example to the recessive state. This is identified by the reference numeral 70 in FIG. 7.
  • Example 1 A method comprising: in a slave device,
  • Example 2 The method of example 1, wherein checking whether there is a collision on the bus comprises determining that there is a collision if a level on the bus does not correspond to an expected value based on the identification sent.
  • Example 3 The method according to example 1 or 2, wherein the bus has a dominant level or a recessive level, and wherein there is a collision on the bus if the recessive level is set on the bus by the slave device when the identification is sent and on the Bus the dominant level is present.
  • Example 5 Method according to one of Examples 1 to 4, the checking of whether a collision is present on the bus being carried out on the basis of a signal on a transmission line of the slave device.
  • Example 7 The method according to Example 5 or 6, wherein the slave device uses a push-pull driver to send the identification, one push transistor or push-pull transistor of the push-pull driver being weaker than the other of the push-pull driver. Transistor or pull transistor.
  • Example 8 The method according to one of Examples 1 to 7, wherein the checking for whether a collision is present is based on a signal on a receiving line of the slave device.
  • Example 9 The method according to one of Examples 1 to 8, further comprising sending the initialization signal by a master device and sending the address by the master device.
  • Example 15 Slave device according to one of Examples 11 to 14, the checking of whether there is a collision on the bus being carried out on the basis of a signal on a transmission line of the slave device.
  • Example 16 Slave device according to Example 15, the slave device being arranged in a slave cluster in which several slave devices share a bus interface.

Abstract

The invention relates to methods and slave devices in which addresses are assigned to slave devices by means of collision detection.

Description

Beschreibung description
Slaveeinrichtung, Bussystem und Verfahren Slave device, bus system and method
TECHNISCHES GEBIET TECHNICAL AREA
Die vorliegende Anmeldung betrifft Slaveeinrichtungen, Bussysteme sowie entsprechende Verfahren. The present application relates to slave devices, bus systems and corresponding methods.
HINTERGRUND BACKGROUND
Bussysteme ermöglichen eine Kommunikation mehrerer Busteilnehmer untereinander. Ein Anwendungsbeispiel sind Sensorsysteme, bei denen mehrere Sensoren als Slaveeinrichtungen mit einer Steuereinheit als Mastereinrichtung kommunizieren, beispielsweise in einem Automobilsystem. Bei manchen Anwendungen ist es dabei nötig, den verschiedenen Sensoren eindeutige Adressen zuzuordnen, sodass die Steuereinheit die Sensoren einzeln über einen gemeinsamen Bus ansteuern kann. Bus systems enable several bus participants to communicate with one another. One application example is sensor systems in which several sensors communicate as slave devices with a control unit as master device, for example in an automobile system. In some applications it is necessary to assign unique addresses to the various sensors so that the control unit can control the sensors individually via a common bus.
Bei manchen herkömmlichen Herangehensweisen werden derartige Adressen Slaves wie beispielsweise Sensoren oft am Ende der Produktion oder im Rahmen einer Konfiguration beim Aufbau eines Bussystems fest zugewiesen. Es werden dann also entsprechend vorkonfigurierte Slaveeinrichtungen verwendet. Dies ist relativ unflexibel und kann zudem in Fällen, in denen mehrere Sensoren eine einzige physikalische Schnittstelle teilen, nur mit großem Aufwand durchführbar sein . In some conventional approaches, such addresses are often permanently assigned to slaves such as sensors at the end of production or as part of a configuration when building a bus system. Accordingly, preconfigured slave devices are then used. This is relatively inflexible and, in addition, in cases in which several sensors share a single physical interface, it can only be carried out with great effort.
KURZFASSUNG SHORT VERSION
Es werden ein Verfahren nach Anspruch 1, eine Slaveeinrichtung nach Anspruch 11 sowie ein Bussystem nach Anspruch 16 bereitgestellt. Die Unteransprüche definieren weitere Ausführungsformen. There are a method according to claim 1, a slave device according to claim 11 and a bus system according to Claim 16 provided. The subclaims define further embodiments.
Gemäß einem Ausführungsbeispiel wird ein Verfahren bereitgestellt, umfassend: in einer Slaveeinrichtung, According to one embodiment, a method is provided, comprising: in a slave device,
-Empfangen eines Initialisierungssignals, -Receiving an initialization signal,
-in Antwort auf das Initialisierungssignal, Senden einer Identifizierung der Slaveeinrichtung über einen Bus,-in response to the initialization signal, sending an identification of the slave device via a bus,
Prüfen, ob beim Senden der Initialisierungsidentifizierung eine Kollision auf dem Bus auftritt, Check whether a collision occurs on the bus when sending the initialization identification,
-wenn eine Kollision auftritt, Setzen der Slaveeinrichtung in einen inaktiven Zustand, und -if a collision occurs, put the slave device in an inactive state, and
-wenn keine Kollision auftritt, Empfangen einer Adresse für die Slaveeinrichtung nach dem Senden der Identifizierung. -if no collision occurs, receive an address for the slave device after sending the identification.
Gemäß einem weiteren Ausführungsbeispiel wird eine Slaveeinrichtung bereitgestellt, umfassend: eine Kommunikationsschaltung zum Senden von Signalen zu einem Bus und zum Empfangen von Signalen von einem Bus, wobei die Slaveeinrichtung eingerichtet ist zum: According to a further exemplary embodiment, a slave device is provided, comprising: a communication circuit for sending signals to a bus and for receiving signals from a bus, the slave device being set up to:
-Empfangen eines Initialisierungssignals, -Receiving an initialization signal,
-in Antwort auf das Initialisierungssignal, Senden einer Identifizierung der Slaveeinrichtung, über einen Bus,-in response to the initialization signal, sending an identification of the slave device via a bus,
Prüfen, ob beim Senden der Identifizierung eine Kollision auf dem Bus auftritt, Check whether a collision occurs on the bus when the identification is sent,
-wenn eine Kollision auftritt, Setzen der Slaveeinrichtung in einen inaktiven Zustand, und -if a collision occurs, put the slave device in an inactive state, and
-wenn keine Kollision auftritt, Empfangen einer Adresse für die Slaveeinrichtung nach dem Senden der Identifizierung. -if no collision occurs, receive an address for the slave device after sending the identification.
Die obige Kurzfassung dient lediglich als kurzer Überblick über manche Ausführungsbeispiele und ist nicht als einschränkend auszulegen. Insbesondere können andere Ausführungsbeispiele andere Merkmale als die oben diskutierten Merkmale aufweisen. KURZE BESCHREIBUNG DER ZEICHNUNGEN The above summary serves only as a brief overview of some exemplary embodiments and is not to be interpreted as restrictive. In particular, other exemplary embodiments may have other features than the features discussed above. BRIEF DESCRIPTION OF THE DRAWINGS
Fig. 1 ist ein Diagramm eines Bussystems gemäß einem Ausführungsbeispiel . 1 is a diagram of a bus system according to an embodiment.
Fig. 2 ist ein Flussdiagramm zur Veranschaulichung von Verfahren gemäß mancher Ausführungsbeispiele. FIG. 2 is a flow diagram for illustrating methods according to some exemplary embodiments.
Fig. 3 zeigt Beispiele für Signale zur Veranschaulichung von Ausführungsbeispielen . 3 shows examples of signals to illustrate exemplary embodiments.
Fig. 4 zeigt eine Treiberschaltung mit Kollisionserkennung, wie sie in manchen Ausführungsbeispielen verwendet wird. 4 shows a driver circuit with collision detection as used in some exemplary embodiments.
Fig. 5 zeigt ein Diagramm eines Systems gemäß einem weiteren Ausführungsbeispiel . 5 shows a diagram of a system according to a further exemplary embodiment.
Fig. 6 zeigt ein Diagramm eines Systems gemäß einem weiteren Ausführungsbeispiel . 6 shows a diagram of a system according to a further exemplary embodiment.
Fig. 7 zeigt Beispielsignale zur Veranschaulichung mancher Ausführungsbeispiele. 7 shows example signals to illustrate some exemplary embodiments.
DETAILLIERTE BESCHREIBUNG DETAILED DESCRIPTION
Im Folgenden werden verschiedene Ausführungsbeispiele detailliert erläutert. Diese Ausführungsbeispiele dienen lediglich der Veranschaulichung und sind nicht als einschränkend auszulegen. So können in den beschriebenen Ausführungsbeispielen Merkmale oder Komponenten durch alternative Merkmale oder Komponenten ersetzt werden oder auch weggelassen werden. Zusätzlich zu den beschriebenen Merkmalen und Komponenten können auch weitere Merkmale oder Komponenten vorhanden sein. Various exemplary embodiments are explained in detail below. These exemplary embodiments are used for illustration purposes only and are not to be construed as restrictive. In the described exemplary embodiments, features or components can be replaced by alternative features or components or can also be omitted. In addition to the features and components described, further features or components can also be present.
Insbesondere beziehen sich die nachfolgend beschriebenen Ausführungsbeispiele primär auf eine Adressvergabe an Slaveeinrichtungen eines Bussystems bei einer Initialisierung. Andere Merkmale des Kommunikationssystems wie beispielsweise Einzelheiten der Signalisierung, verwendete Protokolle und dergleichen, können in jeder herkömmlichen für Bussysteme bekannten Weise implementiert sein und werden daher nicht speziell erläutert. In particular, the exemplary embodiments described below relate primarily to address allocation Slave devices of a bus system during initialization. Other features of the communication system, such as details of the signaling, protocols used and the like, can be implemented in any conventional manner known for bus systems and are therefore not specifically explained.
Beispielsweise kann die Kommunikation bei manchen Ausführungsbeispielen über einen CAN-Bus stattfinden, und abgesehen von der beschriebenen Adressvergabe und damit verknüpfter Merkmale und Komponenten kann die Kommunikation wie bei einer herkömmlichen Kommunikation über einen CAN-Bus erfolgen . For example, in some exemplary embodiments, the communication can take place via a CAN bus, and apart from the described address allocation and associated features and components, the communication can take place as in conventional communication via a CAN bus.
Merkmale und Komponenten verschiedener Ausführungsbeispiele können kombiniert werden. So können beispielsweise Variationen und Abwandlungen, die für eines der Ausführungsbeispiele beschrieben werden, auch auf andere Ausführungsbeispiele angewendet werden und werden daher nicht wiederholt erläutert. Features and components of different exemplary embodiments can be combined. For example, variations and modifications that are described for one of the exemplary embodiments can also be applied to other exemplary embodiments and are therefore not explained repeatedly.
Die Fig. 1 zeigt ein Blockdiagramm eines Systems 10 gemäß einem Ausführungsbeispiel. Das System der Fig. 10 umfasst eine Mastereinrichtung 11 und mehrere Slaveeinrichtungen 12, die über einen Bus 13 verbunden sind. Als Beispiel sind drei Slaveeinrichtungen 12A, 12B, 12C dargestellt. Die Anzahl von drei Slaveeinrichtungen 12 dient dabei lediglich als Beispiel, und es kann auch eine andere Anzahl von Slaveeinrichtungen bereitgestellt sein. Der Bus 13 kann ein beliebiger drahtgebundener Bus sein, beispielsweise ein CAN- Bus, ein FlexRay-Bus oder dergleichen. Der Bus 13 kann in verschiedenen Konfigurationen bereitgestellt sein, beispielsweise einer Sternkonfiguration, einer anderen verzweigten Konfiguration wie der dargestellten Komponente, einer Daisy Chain-Konfiguration und dergleichen. 1 shows a block diagram of a system 10 according to an exemplary embodiment. The system of FIG. 10 comprises a master device 11 and a plurality of slave devices 12 which are connected via a bus 13. Three slave devices 12A, 12B, 12C are shown as an example. The number of three slave devices 12 serves only as an example, and a different number of slave devices can also be provided. The bus 13 can be any wired bus, for example a CAN bus, a FlexRay bus or the like. The bus 13 can be provided in various configurations, for example a star configuration, another branched configuration such as the illustrated component, a daisy chain configuration, and the like.
In manchen Ausführungsbeispielen können, wie später näher erläutert werden wird, auch mehrere Slaveeinrichtungen in einem Cluster angeordnet sein. Als Beispiel sind die Slaves 12A und 12B in einem Cluster 14 angeordnet, das einen einzigen Anschluss für den Bus 13 aufweist. Dabei kann eine Umsetzung von dem Bus 13 auf eine andere Kommunikation innerhalb des Clusters 14 erfolgen. Beispiele hierfür werden ebenfalls später näher erläutert. In some exemplary embodiments, as will be explained in more detail later, a plurality of slave devices in be arranged in a cluster. As an example, the slaves 12A and 12B are arranged in a cluster 14 which has a single connection for the bus 13. In this case, the bus 13 can be converted to another communication within the cluster 14. Examples of this are also explained in more detail later.
Bei manchen Ausführungsbeispielen sind die Slaveeinrichtungen 12 Sensoren, und die Mastereinrichtung 11 ist eine Steuereinheit. Bei manchen Ausführungsbeispielen ist das System 10 in einem Fahrzeug, beispielsweise einem Kraftfahrzeug, angeordnet. In diesem Fall können die Slaveeinrichtungen 12 beispielsweise Sensoren des Kraftfahrzeuges sein. Die Mastereinrichtung kann auch kurz als Master bezeichnet werden, und Slaveeinrichtungen können kurz als Slaves bezeichnet werden. In some exemplary embodiments, the slave devices 12 are sensors and the master device 11 is a control unit. In some exemplary embodiments, the system 10 is arranged in a vehicle, for example a motor vehicle. In this case, the slave devices 12 can be, for example, sensors of the motor vehicle. The master device can also be referred to as the master for short, and slave devices can be referred to as slaves for short.
In einer Initialisierungsphase des Systems 10 vergibt die Mastereinrichtung 11 Adressen an die Slaveeinrichtungen 12, um diese jeweils separat adressieren zu können, beispielsweise um im Fall von Sensoren einzelne Sensoren gezielt auslesen oder ansteuern zu können. Ein Verfahren für eine derartige Adressvergabe gemäß manchenIn an initialization phase of the system 10, the master device 11 assigns addresses to the slave devices 12 in order to be able to address them separately, for example in order to be able to read out or control individual sensors in a targeted manner in the case of sensors. A method for such an address allocation according to some
Ausführungsbeispielen wird nunmehr unter Bezugnahme auf Fig. Embodiments will now be described with reference to FIG.
2 erläutert. Das Verfahren der Fig. 2 kann beispielsweise in dem System 10 der Fig. 1 oder nachfolgenden Systemen durchgeführt werden, und wird zum besseren Verständnis unter Bezugnahme auf die Fig. 1 beschrieben. Das Verfahren der Fig. 2 kann aber auch in anderen Systemen durchgeführt werden. 2 explained. The method of FIG. 2 can be carried out, for example, in the system 10 of FIG. 1 or subsequent systems, and is described with reference to FIG. 1 for a better understanding. The method of FIG. 2 can, however, also be carried out in other systems.
Das Verfahren der Fig. 2 beginnt bei 20. Bei 21 sendet eine Mastereinrichtung, beispielsweise die Mastereinrichtung 11 auf Fig. 1, ein Initialisierungssignal über den Bus, beispielsweise den Bus 13 der Fig. 1. DasThe method of FIG. 2 begins at 20. At 21, a master device, for example the master device 11 in FIG. 1, sends an initialization signal via the bus, for example the bus 13 of FIG
Initialisierungssignal signalisiert den Slaveeinrichtungen, beispielsweise den Slaveeinrichtungen 12 der Fig. 1, dass die Initialisierung nunmehr beginnt. Das Initialisierungssignal kann jede vorbestimmte Signalfolge, beispielsweise eine vorbestimmte Abfolge von Werten, die einer logischen 0, und Werten, die einer logischen 1 entsprechen, sein, die es den Slaveeinrichtungen ermöglicht, zu erkennen, dass nunmehr die Initialisierung beginnen soll. The initialization signal signals to the slave devices, for example the slave devices 12 of FIG. 1, that the initialization is now beginning. The initialization signal can be any predetermined signal sequence, for example a predetermined sequence of values which correspond to a logical 0 and values which correspond to a logical 1, which enables the slave devices to recognize that the initialization should now begin.
Die Slaveeinrichtungen 12 weisen alle eine vorbestimmte Identifizierung (Identifizierung) auf, die beispielsweise bei der Herstellung einprogrammiert wurde. Bei manchen Ausführungsbeispielen kann eine eindeutige 32 Bit-Sequenz verwendet werden, wobei auch andere Sequenzlängen möglich sind. Eine mögliche Anzahl verschiedener Identifizierungen wird dabei so gewählt, dass jeder hergestellten Slaveeinrichtung eine eindeutige Identifizierung zugeordnet werden kann. Für verschiedene Hersteller von Slaveeinrichtungen können dabei verschiedene Bereiche von Identifizierungen reserviert werden. The slave devices 12 all have a predetermined identification (identification) that was programmed in during manufacture, for example. In some exemplary embodiments, a unique 32-bit sequence can be used, other sequence lengths also being possible. A possible number of different identifications is selected in such a way that each slave device produced can be assigned a unique identification. Different areas of identifications can be reserved for different manufacturers of slave devices.
Bei 22 antworten alle Slaves gleichzeitig mit der ihnen zugeordneten Identifizierung. Beispielsweise senden alle Slaves die ihnen jeweils zugeordnete Bitfolge. At 22 all slaves respond simultaneously with the identification assigned to them. For example, all slaves send the bit sequence assigned to them.
Dabei wird bei Ausführungsbeispielen einIn the case of exemplary embodiments, a
Kommunikationsprotokoll verwendet, welches zwei mögliche Pegel auf dem Bus aufweist, die einer logischen 0 und einer logischen 1 zugeordnet sind. Einer der Pegel ist dabei gegenüber dem anderen Pegel dominant, das heißt wenn verschiedene Busteilnehmer verschiedene Pegel treiben, „gewinnt" der dominante Pegel. Bei CAN-Bussen kann dies beispielsweise realisiert sein, indem einer der Pegel aktiv getrieben wird (in diesem Fall eine Spannungsdifferenz zwischen den Busleitungen über einen Schwellenwert entsprechend einer logischen 0), während der andere Wert einer Spannungsdifferenz bei oder nahe 0 entspricht, welche sich durch eine Verbindung der Busleitungen über einen Widerstand passiv einstellt und einer logischen 1 entspricht. Bei dieser Zuordnung ist die logische 0 dominant gegenüber der logischen 1. Im Rahmen dieser Anmeldung wird auch davon gesprochen, dass eine Slaveeinrichtung einen Pegel auf einen Bus „setzt". Dies kann je nach Implementierung durch ein aktives Treiben oder auch durch ein „einstellen lassen", indem die Slaveeinrichtung passiv ist und sich beispielsweise der Pegel über einen Widerstand ohne aktives Treiben einstellt, geschehen. Communication protocol used, which has two possible levels on the bus, which are assigned a logical 0 and a logical 1. One of the levels is dominant over the other level, that is, if different bus participants drive different levels, the dominant level "wins". In CAN buses, this can be implemented, for example, by actively driving one of the levels (in this case a voltage difference between the bus lines via a threshold value corresponding to a logic 0), while the other value corresponds to a voltage difference at or near 0, which is passively established by connecting the bus lines via a resistor and corresponds to a logic 1. In this assignment, logic 0 is dominant across from logical 1. In the context of this application, it is also said that a slave device “sets” a level on a bus. Depending on the implementation, this can either be set by an active drive or by a “setting” in which the slave device is passive and itself for example, the level is set via a resistor without active driving.
Bei 23 detektieren die Slaveeinrichtungen eine Kollision auf dem Bus. Eine Kollision liegt aus Sicht einer Slaveeinrichtung vor, wenn der auf dem Bus vorliegende Wert, z.B. Spannungspegel nicht der von ihm gesendeten Identifizierung entspricht. In dem obigen Ausführungsbeispiel mit dominanten und rezessiven Zuständen tritt dies auf, wenn ein anderer Slave eine „dominantere" Identifizierung sendet als der Slave, der eine Kollision erkennt. At 23 the slave devices detect a collision on the bus. From the perspective of a slave device, a collision has occurred if the value on the bus, e.g. voltage level, does not correspond to the identification sent by it. In the above exemplary embodiment with dominant and recessive states, this occurs when another slave sends a "more dominant" identification than the slave that recognizes a collision.
Diejenigen Slaveeinrichtungen, die eine Kollision detektieren, scheiden dann bei 23 aus der vorliegenden „Initialisierungsrunde", das heißt der Schleife der Figur 2, die gerade durchlaufen wird, aus. Eine der Slaveeinrichtungen wird dabei keine Kollision detektieren (z.B. weil während des Sendens der Identifizierungen nie eine andere Slaveeinrichtung einen „dominanteren" Pegel treibt). Dieser Slaveeinrichtung teilt die Mastereinrichtung dann bei 24 eine Adresse zu. Diese Slaveeinrichtung ist somit hinsichtlich der Adresse konfiguriert und scheidet bei 25 aus der Initialisierung aus, z.B. indem sie stumm geschaltet wird. Those slave devices that detect a collision are then eliminated at 23 from the present "initialization round", that is, the loop of FIG no other slave device is driving a "more dominant" level). The master device then assigns an address to this slave device at 24. This slave device is thus configured with regard to the address and is eliminated from the initialization at 25, e.g. by being muted.
Bei 26 wird überprüft, ob alle Slaveeinrichtungen eine Adresse erhalten haben. Ist dies der Fall, endet das Verfahren bei 27, ansonsten springt das Verfahren für die nächste Initialisierungsrunde zunächst zu 21. At 26 it is checked whether all slave devices have received an address. If this is the case, the method ends at 27, otherwise the method first jumps to 21 for the next initialization round.
Ein Beispiel für eine solche Kollisionserkennung wird nun unter Bezugnahme auf die Fig. 3 kurz erläutert. In der Fig. 3 dargestellte Signale dienen dabei lediglich als einfaches Beispiel zur besseren Veranschaulichung und sind nicht als einschränkend auszulegen, da je nach Implementierung Signalformen voneinander abweichen können. An example of such a collision detection will now be briefly explained with reference to FIG. 3. Signals shown in FIG. 3 serve only as simple ones Example for better illustration and are not to be interpreted as restrictive, since signal forms may differ depending on the implementation.
In Fig. 3 wird von einer Situation ausgegangen, in der ein niedriger Buspegel dominant und ein hoher Buspegel rezessiv ist, sodass, wenn ein Teilnehmer einen niedrigen Buspegel und ein anderer Teilnehmer einen hohen Buspegel senden will, der Buspegel insgesamt niedrig ist. Dies ist beispielsweise bei einem CAN-Bus der Fall. In FIG. 3, a situation is assumed in which a low bus level is dominant and a high bus level is recessive, so that if one participant wants to send a low bus level and another participant wants to send a high bus level, the bus level is low overall. This is the case, for example, with a CAN bus.
Bei dem Beispiel der Fig. 3 wird von drei Slaveeinrichtungen (in Fig. 1 mit Slave 1, Slave 2, Slave 3 bezeichnet) ausgegangen. Von dem Slave 1 gesendete Daten sind durch eine Kurve 30 veranschaulicht, von dem Slave 2 gesendete Daten sind durch eine Kurve 31 veranschaulicht und die von einem Slave 3 gesendeten Daten sind durch eine Kurve 32 veranschaulicht. Eine Kurve 33 zeigt den Pegel auf einem Bus. In the example of FIG. 3, three slave devices (designated slave 1, slave 2, slave 3 in FIG. 1) are assumed. Data sent by slave 1 are illustrated by curve 30, data sent by slave 2 are illustrated by curve 31, and the data sent by slave 3 are illustrated by curve 32. A curve 33 shows the level on a bus.
Nach dem Erhalt des Initialisierungssignals (beispielsweise bei 21 der Fig. 2) beginnen alle Teilnehmer, ihre Identifizierung zu senden. Diese Phase wird auch als Arbitrierungsphase bezeichnet. Bei dem Beispiel von Fig. 3 erfolgt dies zunächst mit einem ersten Bit, welches den Beginn eines Datenrahmens anzeigt (SOF, start of frame), bei dem alle Slaveeinrichtungen den Bus auf einen niedrigen Pegel ziehen. Der Buspegel ist daher hier niedrig. Dann senden alle Teilnehmer ihre Identifizierung, welche bei dem Beispiel der Fig. 311 Bits umfasst. Dabei wird bei dem Beispiel der Fig. After receiving the initialization signal (for example at 21 in FIG. 2), all participants begin to send their identification. This phase is also known as the arbitration phase. In the example of FIG. 3, this is done initially with a first bit which indicates the beginning of a data frame (SOF, start of frame) in which all slave devices pull the bus to a low level. The bus level is therefore low here. Then all participants send their identification, which in the example of FIG. 311 comprises bits. In the example of Fig.
3 mit dem höchstwertigsten Bit Nummer 10 begonnen, bis zum niedrigstwertigsten Bit 0. 3 started with the most significant bit number 10, up to the least significant bit 0.
Der Fachmann wird unmittelbar erkennen, dass bei einem CAN Bus die Arbitrierung dazu führt, dass für die niedrigste Identifizierung eine maximale Priorisierung des Buszugriffsverfahrens realisiert wird, wie im Folgenden auch erläutert wird. Der Teilnehmer mit der höchsten Priorität (dargestellt durch eine dominante Adresse) setzt sich gegen alle anderen Teilnehmer durch und darf senden. Dieses Verfahren wird auch als CSMA-CR (Carrier Sense Multiple Access - Collision Resolution) bezeichnet und hier dazu benutzt, die Adressvergabe durchzuführen. Es ist also möglich, abgestufte Prioritäten für einzelne Teilnehmer zu vergeben . A person skilled in the art will immediately recognize that in the case of a CAN bus, the arbitration leads to a maximum prioritization of the bus access method being implemented for the lowest identification, as will also be explained below. The participant with the highest priority (represented by a dominant address) asserts itself against all other participants and is allowed to send. This process is also known as CSMA-CR (Carrier Sense Multiple Access - Collision Resolution) and is used here to assign addresses. It is therefore possible to assign graduated priorities for individual participants.
In dem Beispiel der Fig. 3 beginnt für alleIn the example of Fig. 3 begins for all
Slaveeinrichtungen die Adresse 1 mit der Bitfolge 11001, das heißt für die Bits 10 und 9 senden die Slaveeinrichtungen einen hohen Pegel, für die Bits 8 und 7 einen niedrigen Pegel und für das Bit 6 wieder auf einen hohen Pegel. Slave devices send address 1 with bit sequence 11001, that is, the slave devices send a high level for bits 10 and 9, a low level for bits 8 and 7 and a high level again for bit 6.
Dementsprechend ist auch der Bus für die Bits 10 und 9 auf einem hohen Pegel, für die Bits 8 und 7 auf einem niedrigen Pegel und für das Bit 6 wieder auf einem hohen Pegel. Accordingly, the bus is also at a high level for bits 10 and 9, at a low level for bits 8 and 7 and at a high level again for bit 6.
Die Identifizierung von Slave 1 und Slave 3 setzt sich bei Bit 5 mit einer 0 entsprechend einem niedrigen Pegel fort, während sich für den Slave 2 die Identifizierung mit einer 1, das heißt einem hohen Pegel, fortsetzt. Da wie oben erwähnt in dem Beispiel der Fig. 3 der niedrige Pegel dominant ist, ist der Buspegel bei Bit 5 niedrig. Der Slave 2 kann somit bei 35, das heißt beim Bit 5, eine Kollision erkennen, da der Buspegel nicht seiner gesendeten Identifizierung entspricht. Der Slave 2 scheidet somit aus, wie für 23 bei Fig. 2 erläutert. In diesem Beispiel bleibt der Slave 2 auf dem rezessiven Zustand, das heißt dem hohen Pegel. The identification of slave 1 and slave 3 continues with bit 5 with a 0 corresponding to a low level, while the identification of slave 2 continues with a 1, i.e. a high level. Since, as mentioned above, the low level is dominant in the example of FIG. 3, the bus level at bit 5 is low. The slave 2 can thus detect a collision at 35, that is to say at bit 5, since the bus level does not correspond to the identification it sent. The slave 2 is thus eliminated, as explained for 23 in FIG. 2. In this example, slave 2 remains in the recessive state, that is to say the high level.
Die Identifizierung von Slave 1 und 3 setzt sich bei den Bits 4 und 3 mit der Bitfolge 11, das heißt hohem Pegel, fort, und auch der Buspegel ist hoch. Beim nächsten Bit (Bit 2) ist der Bitwert für den Slave 1 gleich 1 (hoher Pegel) und für den Slave 3 niedrig (niedriger Pegel). Der Buspegel ist somit niedrig, und wie durch einen Pfeil 34 angedeutet, erkennt nun der Slave 1 eine Kollision (niedriger Buspegel, während er einen hohen Buspegel entsprechend dem Bit 1 senden will) und scheidet ebenso aus. Der Slave 3 hat somit diese Runde „gewonnen" und sendet seine vollständige Identifizierung (0 beim Bit 1 und 1 beim Bit 0), gefolgt von einem Abschlussbit (RPR) mit einem Wert 0. The identification of slaves 1 and 3 continues with bits 4 and 3 with the bit sequence 11, i.e. high level, and the bus level is also high. With the next bit (bit 2), the bit value for slave 1 is equal to 1 (high level) and low for slave 3 (low level). The bus level is thus low, and as indicated by an arrow 34, the slave 1 now detects a collision (low bus level while it wants to send a high bus level corresponding to bit 1) and also ruled out. The slave 3 has thus "won" this round and sends its complete identification (0 for bit 1 and 1 for bit 0), followed by a completion bit (RPR) with a value of 0.
Darauffolgend wird dem Slave 3, bei dem als einziger keine Kollision festgestellt wird, mittels Steuerdaten (control) und Datenbytes (data) eine Adresse zugewiesen (entsprechend 24 der Fig. 2). Für die nächste Runde wird dann der Slave 3 stumm geschaltet, und nur noch die Slave 1 und 2 senden ihre Identifizierungen. In diesem Fall wird als nächstes der Slave 1 gewinnen, da der Slave 2 wiederum bei 35 eine Kollision erkennen wird. Als letztes wird dann dem Slave 2 eine Adresse zugeordnet. Wie zu erkennen ist, „gewinnt" bei der in Fig. 3 dargestellten Herangehensweise , bei der die 0 dominant ist und das höchstwertige Bit zuerst gesendet wird, immer die Slaveeinrichtung mit der niedrigsten Identifizierung. Bei anderen Ausführungsbeispielen kann auch das niederwertigste Bit zuerst gesendet werden, wobei dann nicht automatisch die niedrigste Adresse „gewinnt". Subsequently, slave 3, which is the only one in which no collision is detected, is assigned an address by means of control data (control) and data bytes (data) (corresponding to 24 of FIG. 2). Slave 3 is then muted for the next round, and only slaves 1 and 2 send their identifications. In this case, slave 1 will win next, since slave 2 will again recognize a collision at 35. Finally, slave 2 is assigned an address. As can be seen, with the approach shown in FIG. 3, in which the 0 is dominant and the most significant bit is sent first, the slave device with the lowest identification always "wins". In other exemplary embodiments, the least significant bit can also be sent first , in which case the lowest address does not automatically "win".
Auch wenn die Identifizierung in Fig. 3 als 11-Bit-Werte (Bits 0 bis 10) gezeigt ist, können auch mehr oder weniger Bits verwendet werden. Bei manchen Ausführungsbeispielen kann beispielsweise ein 32-Bit-Wert verwendet werden, was über 4.000.000.000 mögliche Identifizierungen ergibt. Although the identification is shown in Figure 3 as 11-bit values (bits 0-10), more or fewer bits can be used. In some exemplary embodiments, for example, a 32-bit value can be used, which results in over 4,000,000,000 possible identifications.
Verschiedenen Herstellern von Slaveeinrichtungen können dabei verschiedene Bereiche von Identifizierungen zugeordnet werden, die sie für ihre Produkte verwenden können. Hier kann ein Teil der Bits mit einem Code belegt werden, der den Hersteller angibt. Different manufacturers of slave devices can be assigned different areas of identifications that they can use for their products. Some of the bits can be assigned a code that specifies the manufacturer.
Im Folgenden werden verschiedene Möglichkeiten zur Kollisionsdetektion und entsprechende Systeme noch näher erläutert. Die Fig. 4 zeigt eine Sende- undVarious options for collision detection and corresponding systems are explained in more detail below. Fig. 4 shows a transmission and
Kollisionsdetektionsschaltung mit Kollisionsdetektion über eine Sendeleitung TxD, auf der ein Sendesignal von einer Slaveeinrichtung gesendet wird, insbesondere die Identifizierung. Das Sendesignal kann dann durch einen Leitungstreiber (line driver) auf ein Bussignal umgesetzt werden. Collision detection circuit with collision detection via a transmission line TxD, on which a transmission signal from a Slave device is sent, in particular the identification. The transmission signal can then be converted to a bus signal by a line driver.
Bei der Schaltung der Fig. 4 ist ein PMOS-Transistor 42 zwischen einem Sendeanschluss 47 und eine positive Versorgungsspannung 45 geschaltet, und ein NMOS-Transistor 43 ist zwischen den Sendeanschluss 47 und Masse 46 geschaltet.In the circuit of FIG. 4, a PMOS transistor 42 is connected between a transmission connection 47 and a positive supply voltage 45, and an NMOS transistor 43 is connected between the transmission connection 47 and ground 46.
Im normalen Betrieb (nach der oben beschriebenen Initialisierungsphase) dient der PMOS-Transistor 42 als Push- Transistor und NMOS-Transistor 43 als Pull-Transistor, um den Sendeanschluss 47 wahlweise auf die positiveIn normal operation (after the initialization phase described above), the PMOS transistor 42 is used as a push transistor and NMOS transistor 43 is used as a pull transistor in order to selectively switch the transmission connection 47 to the positive
Versorgungsspannung 45 oder Masse 46 zu legen. Beispielsweise kann die positive Versorgungsspannung 45 einer logischen 1 und Masse 46 einer 0 entsprechen. Dabei weist der Transistor 42 ein ähnliches Verhalten, beispielsweise durch entsprechende Dimensionierung, wie der Transistor 43 auf, sodass in diesem Fall Push-Transistor und Pull-Transistor näherungsweise gleich stark sind, d.h. eine ähnliche Stromtreibfähigkeit aufweisen. To put supply voltage 45 or ground 46. For example, the positive supply voltage 45 can correspond to a logical 1 and ground 46 to a 0. In this case, the transistor 42 has a similar behavior, for example due to corresponding dimensioning, as the transistor 43, so that in this case the push transistor and pull transistor are approximately the same strength, i.e. have a similar current driving capability.
Für das Senden der Identifizierung während der Initialisierungsphase wird statt dem PMOS-Transistor 42 ein PMOS-Transistor 41 verwendet, welcher ebenfalls zwischen die positive Versorgungsspannung 45 und den Sendeausgang 47 geschaltet ist. Der PMOS-Transistor 41 ist schwächer dimensioniert als der PMOS-Transistor 42, das heißt mit geringerer Stromleitfähigkeit und/oder höherem Widerstand Ron in eingeschaltetem Zustand. Dies bedeutet, dass beim Senden der Identifizierungen der als Push-Transistor dienende PMOS- Transistor 45 schwächer ist als der als Pull-Transistor dienende NMOS-Transistor 43. Wenn nun eine Sendeschaltung wie in Fig. 4 gezeigt während der Identifizierung eine logische 1 entsprechend einem hohen Pegel der Versorgungsspannung 45 sendet (durch Schließen des Transistors 45 und Öffnen des Transistors 43) und ein anderer Slave mittels einer derartigen Sendeschaltung eine logische 0 entsprechend dem niedrigen Pegel der Masse 46 sendet (durch Schließen des entsprechenden Transistors 43 und Öffnen des Transistors 41), liegt auf der Sendeleitung TxD insgesamt eine logische 0 entsprechend dem Massepegel vor (da der hier verwendete Transistor 45 schwächer ist). In demjenigen Slave, der die logische 1 sendet, wird dies mittels einerFor sending the identification during the initialization phase, a PMOS transistor 41 is used instead of the PMOS transistor 42, which is also connected between the positive supply voltage 45 and the transmission output 47. The PMOS transistor 41 is dimensioned to be weaker than the PMOS transistor 42, that is to say with a lower current conductivity and / or a higher resistance Ron in the switched-on state. This means that when the identifications are sent, the PMOS transistor 45 serving as a push transistor is weaker than the NMOS transistor 43 serving as a pull transistor. If a transmission circuit as shown in FIG high level of the supply voltage 45 sends (by closing the transistor 45 and opening the transistor 43) and another slave by means of a such a transmission circuit sends a logic 0 corresponding to the low level of the ground 46 (by closing the corresponding transistor 43 and opening the transistor 41), there is a total of a logic 0 on the transmission line TxD corresponding to the ground level (since the transistor 45 used here is weaker) . In the slave that sends the logical 1, this is done by means of a
Kollisionsdetektionsschaltung 40, 44 als Kollision erkannt. Insbesondere wird durch einen Inverter 40 einem Logikgatter 44 eine invertierte Version des Signals auf der Liste Sendeleitung TxD sowie ein Steuersignal s, welches zum Steuern der Transistoren 41,43 dient, zugeführt. Das Logikgatter 44 stellt dann fest, ob der Pegel auf der Sendeleitung TxD dem anhand des Steuersignals s beabsichtigten Pegel entspricht. Collision detection circuit 40, 44 recognized as a collision. In particular, an inverted version of the signal on the list transmission line TxD and a control signal s, which is used to control the transistors 41, 43, are fed to a logic gate 44 by an inverter 40. The logic gate 44 then determines whether the level on the transmission line TxD corresponds to the level intended on the basis of the control signal s.
Insbesondere steuert im Falle einer Kollision das Signal s den Transistor 41 an, geschlossen zu sein und den Transistor 43 an, geöffnet zu sein, und an dem Sendeausgang 47 liegt dennoch eine niedrige Spannung entsprechend Massepotenzial vor. In diesem Fall gibt das Logikgatter 44 ein entsprechendes Kollisionssignal c aus. In particular, in the event of a collision, the signal s controls the transistor 41 to be closed and the transistor 43 to be open, and a low voltage corresponding to ground potential is still present at the transmission output 47. In this case, the logic gate 44 outputs a corresponding collision signal c.
Zu bemerken ist, dass grundsätzlich bei anderen Ausführungsformen auch eine umgekehrte Logik, mit einem schwächeren Pull-Transistor, der während der Initialisierung den Transistor 43 ersetzt, möglich ist. It should be noted that, in principle, in other embodiments, a reverse logic is also possible, with a weaker pull transistor which replaces the transistor 43 during the initialization.
Das Unterscheiden zwischen der Initialisierungsphase und einer späteren Betriebsphase, in der dann der Transistor 42 verwendet wird, kann beispielsweise mittels eines Adressflags in einer Slaveeinrichtung erfolgen. Sobald der Slaveeinrichtung eine Adresse zugeteilt wurde, wird das Adressflag gesetzt, und der Transistor 42 wird statt des Transistors 41 verwendet. 13 The differentiation between the initialization phase and a later operating phase, in which the transistor 42 is then used, can take place, for example, by means of an address flag in a slave device. Once the slave device has been assigned an address, the address flag is set and transistor 42 is used in place of transistor 41. 13th
Die Sende- und Kollisionsdetektionsschaltung der Fig. 4 kann insbesondere in Fällen verwendet werden, in denen mehrere Slaveeinrichtungen in einem Cluster angeordnet sind, die einen einzigen Leitungstreiber für einen Bus, beispielsweise einen CAN-Bus, teilen. Ein Beispiel für ein derartiges System 50 ist in Fig. 5 dargestellt. The transmission and collision detection circuit of FIG. 4 can be used in particular in cases in which several slave devices are arranged in a cluster which share a single line driver for a bus, for example a CAN bus. An example of such a system 50 is shown in FIG.
Das System 50 der Fig. 5 umfasst eine Mastereinrichtung 51 und mehrere Slavecluster 52, von denen ein erstes Slavecluster 52A und ein zweites Slavecluster 52B dargestellt ist. Die Anzahl von zwei Slaveclustern 52A, 52B ist dabei nur als Beispiel zu verstehen, und es kann auch nur ein Slavecluster oder es können mehr als zwei Slavecluster bereitgestellt sein. Die Slavecluster 52 können beispielsweise jeweils auf einem einzigen Chip implementiert sein. The system 50 of FIG. 5 comprises a master device 51 and a plurality of slave clusters 52, of which a first slave cluster 52A and a second slave cluster 52B are shown. The number of two slave clusters 52A, 52B is only to be understood as an example, and only one slave cluster or more than two slave clusters can be provided. The slave clusters 52 can each be implemented on a single chip, for example.
Die Mastereinrichtung 51 ist mit den Slaveclustern 52 über einen Bus 53 verbunden. Im Beispiel der Fig. 5 ist der Bus 53 ein CAN-Bus mit zwei Leitungen BusH, BusL. The master device 51 is connected to the slave clusters 52 via a bus 53. In the example in FIG. 5, the bus 53 is a CAN bus with two lines BusH, BusL.
Die Mastereinrichtung 51 weist eine Mikrosteuerung 54 (microcontroller , MC) und einen Leitungstreiber (line driver) 55 zum Treiben der Leitungen BusH, BusL des Busses 53 auf.The master device 51 has a microcontroller 54 (microcontroller, MC) and a line driver (line driver) 55 for driving the lines BusH, BusL of the bus 53.
Die Mikrosteuerung 54 sendet zu sendende Daten über eine Sendeleitung TxD und Empfang an den Leitungstreiber 55 und empfängt empfangene Daten über eine Empfangsleitung RxD von dem Leitungstreiber. Die gesendeten Daten umfassen dabei das bei 21 in Fig. 2 gesendete Initialisierungssignal sowie die bei 24 in Fig. 2 zugeteilte Adresse, und die empfangenen Daten umfassen die von den Slaveeinrichtungen gesendeten Identifizierungen . The microcontroller 54 sends data to be transmitted via a transmission line TxD and reception to the line driver 55 and receives received data from the line driver via a reception line RxD. The data sent include the initialization signal sent at 21 in FIG. 2 and the address assigned at 24 in FIG. 2, and the data received include the identifications sent by the slave devices.
In dem Ausführungsbeispiel der Fig. 2 sind die Slavecluster 52A und 52B im Wesentlichen gleich ausgestaltet. Daher wird im Folgenden nur der Slavecluster 52A detailliert beschrieben, und die Ausführungen gelten für den Slavecluster 52A entsprechend. Bei anderen Ausführungen können verschiedene Slavecluster auch verschieden ausgestaltet sein, beispielsweise unterschiedliche Anzahlen oder Typen von Slaveeinrichtungen umfassen. In the exemplary embodiment in FIG. 2, the slave clusters 52A and 52B are designed essentially the same. Therefore, only the slave cluster 52A is described in detail below, and the explanations apply to the slave cluster 52A accordingly. In other embodiments, different slave clusters can also be configured differently, for example they can comprise different numbers or types of slave devices.
Der Slavecluster 52A weist einen Leitungstreiber 56 zur Kommunikation über den Bus 53 sowie eine Anzahl von Sensoren 57 auf, die als Beispiel für Slaveeinrichtungen dienen. In dem Beispiel der Fig. 5A umfasst der Slavecluster 52A einen ersten Sensor 57A und einen zweiten Sensor 57B. In anderen Ausführungsbeispielen können auch mehr als zwei Sensoren 57 bereitgestellt sein. Die Sensoren 57A und 57B kommunizieren mit dem Leitungstreiber 56 über eine Sendeleitung TxD und eine Empfangsleitung RxD. Über die Sendeleitung TxD werden beispielsweise über den Bus 53 zu sendende Daten übertragen, wie die oben erläuterte Identifizierung. Über die Empfangsleitung RxD werden Daten über den Bus 53 empfangen, beispielsweise das Initialisierungssignal, welches die Mastereinrichtung 51 bei 21 der Fig. 2 sendet, sowie die zugeteilte Adresse (24 der Fig. 2). The slave cluster 52A has a line driver 56 for communication via the bus 53 and a number of sensors 57, which serve as examples for slave devices. In the example of FIG. 5A, the slave cluster 52A comprises a first sensor 57A and a second sensor 57B. In other exemplary embodiments, more than two sensors 57 can also be provided. The sensors 57A and 57B communicate with the line driver 56 via a transmission line TxD and a reception line RxD. Via the transmission line TxD, for example, data to be sent are transmitted via the bus 53, such as the identification explained above. Data are received via the bus 53 via the receiving line RxD, for example the initialization signal which the master device 51 sends at 21 in FIG. 2, as well as the assigned address (24 in FIG. 2).
Senden die Sensoren 57A, 57B verschiedene Pegel auf der Sendeleitung TxD, kann dies wie unter Bezugnahme auf Fig. 4 erläutert mit der dortigen Sende-undIf the sensors 57A, 57B send different levels on the transmission line TxD, this can be done as explained with reference to FIG
Kollisionsdetektionsschaltung erkannt werden. Für Slaves verschiedener Slavecluster 52 wird die Kollisionserkennung ebenso durchgeführt, wobei über die Leitungstreiber 56 der Slavecluster 52 der entsprechende Pegel, den ein Slave eines Slaveclusters sendet, auch auf die Sendeleitungen TxD der anderen Slavecluster 52 (im Beispiel der Fig. 5 mit zwei Slaveclustern des anderen Slaveclusters) übertragen wird. Collision detection circuit can be detected. The collision detection is also carried out for slaves of different slave clusters 52, with the corresponding level that a slave of a slave cluster sends via the line driver 56 of the slave cluster 52 to the transmission lines TxD of the other slave clusters 52 (in the example of FIG. 5 with two slave clusters of the other slave cluster).
Die mit dem hier diskutierten Verfahren zugeteilten Adressen werden dann in jeweiligen Adressregistern 58A, 58B der Sensoren 57A, 57B gespeichert. Bei anderen Ausführungsbeispielen kann eine Kollisionsdetektion durch eine Rückkopplungsfunktion erfolgen, in dem das an den Bus gesendete Sendesignal auf Empfangsleitungen rückgekoppelt wird. Die Kollisionsdetektion kann dann durch einen Vergleich des gesendeten Signals mit dem Signal auf der Empfangsleitung erfolgen. Ein Beispielsystem hierfür ist in Fig. 6 dargestellt. The addresses assigned using the method discussed here are then stored in respective address registers 58A, 58B of the sensors 57A, 57B. In other exemplary embodiments, a collision detection can take place by means of a feedback function, in which the transmission signal sent to the bus is fed back to receiving lines. The collision detection can then take place by comparing the transmitted signal with the signal on the receiving line. An example system for this is shown in FIG. 6.
Ein System 60 der Fig. 6 umfasst eine Mastereinrichtung 61 und eine Vielzahl von Slaveeinrichtungen 62, von denen als Beispiel vier Slaveeinrichtungen 62A, 62B, 62C und 62D dargestellt sind. Die Slaveeinrichtungen 62 sind mit der Mastereinrichtung 61 über einen Bus 63 verbunden, welcher im Beispiel der Fig. 6 als Zwei-Draht-Bus mit zwei Busleitungen BusH, BusL, insbesondere als CAN-Bus, ausgestaltet ist. A system 60 of FIG. 6 comprises a master device 61 and a multiplicity of slave devices 62, of which four slave devices 62A, 62B, 62C and 62D are shown as an example. The slave devices 62 are connected to the master device 61 via a bus 63 which, in the example in FIG. 6, is designed as a two-wire bus with two bus lines BusH, BusL, in particular as a CAN bus.
Die Mastereinrichtung 61 weist eine Mikrosteuerung 64 und einen Leitungstreiber 65 auf, welche wie die Mikrosteuerung 54 unter Leitungstreiber 55 der Mastereinrichtung 51 der Fig. 5 arbeiten und daher nicht nochmals detailliert beschrieben werden . The master device 61 has a microcontroller 64 and a line driver 65 which, like the microcontroller 54, operate under the line driver 55 of the master device 51 of FIG. 5 and are therefore not described again in detail.
In dem System 60 sind die Slaveeinrichtungen 62A bis 62D gleich ausgestaltet. Daher wird im Folgenden nur die Slaveeinrichtung 62A näher erläutert, und die Beschreibung gilt für die Slaveeinrichtungen 62B bis 62D entsprechend. Bei anderen Ausführungsbeispielen können die Slaveeinrichtungen auch unterschiedlich ausgestaltet sein. In the system 60, the slave devices 62A to 62D are configured in the same way. Therefore, only the slave device 62A is explained in more detail below, and the description applies accordingly to the slave devices 62B to 62D. In other exemplary embodiments, the slave devices can also be configured differently.
Die Slaveeinrichtung 62A umfasst einen Leitungstreiber 66 und einen Sensor 67. Bei anderen Ausführungen können statt des Sensors 67 auch andere Komponenten bereitgestellt sein. The slave device 62A comprises a line driver 66 and a sensor 67. In other embodiments, instead of the sensor 67, other components can also be provided.
Der Sensor 67 sendet zusendende Signale über eine Sendeleitung TxD an den Leitungstreiber 66 und empfängt Empfangssignale über eine Empfangsleitung RxD von dem Leitungstreiber 66, der entsprechend Signale zwischen den Bus 63 und den Leitungen TxD, RxD umsetzt. Insbesondere sendet der Sensor 67 in Antwort auf ein Initialisierungssignal wie bei 21 der Fig. 2 seine Identifizierung (bei 22 in Fig. 2) und empfängt, wenn er keine Kollision detektiert, eine ihm zugewiesene Adresse (zum Beispiel bei 24 der Fig. 2). Diese Adresse wird dann in einem Adressregister 68 gespeichert. The sensor 67 sends signals to be sent via a transmission line TxD to the line driver 66 and receives reception signals via a reception line RxD from the line driver 66, the corresponding signals between the bus 63 and the lines TxD, RxD. In particular, in response to an initialization signal, as at 21 in FIG. 2, the sensor 67 sends its identification (at 22 in FIG. 2) and, if it does not detect a collision, receives an address assigned to it (for example at 24 in FIG. 2). . This address is then stored in an address register 68.
Zur Kollisionsdetektion wird während derFor collision detection, during the
Initialisierungsphase beim Senden der Identifizierung der entsprechende Wert auf dem Bus 63 als Empfangssignal auf die Empfangsleitung RxD zurückgeschleift. Durch einen Vergleich eines Sendesignals auf der Sendeleitung TxD mit diesem Empfangssignal kann eine Kollision detektiert werden, wenn das Empfangssignal von dem Sendesignal abweicht (wenn beispielsweise der Sensor 67 einen rezessiven Wert sendet und ein anderer Sensor einen dominanten Wert). Auf diese Weise können Kollisionen detektiert werden. Dabei wird eine Sendegeschwindigkeit beim Senden der Identifizierung so gewählt, dass auch bei einer Schleifenverzögerung bei dem Zurückschleifen einer Kollisionsdetektion erfolgen kann. Initialization phase when the identification is sent, the corresponding value on the bus 63 is looped back as a receive signal to the receive line RxD. By comparing a transmission signal on the transmission line TxD with this reception signal, a collision can be detected if the reception signal deviates from the transmission signal (for example if the sensor 67 sends a recessive value and another sensor sends a dominant value). In this way, collisions can be detected. A transmission speed when sending the identification is selected in such a way that collision detection can also take place in the event of a loop delay when looping back.
Diese Verzögerung hängt z.B. von der verwendeten Leistungslänge ab. Wiederum ist zu bemerken, dass die Signale der Fig. 7 nur ein Beispiel sind und nicht als einschränkend anzusehen sind. This delay depends, for example, on the length of the cable used. It should again be noted that the signals of FIG. 7 are only an example and are not to be regarded as limiting.
Zur weiteren Veranschaulichung zeigt die Fig. 7 ein detaillierteres Beispiel von Signalen, wie sie beispielsweise in dem System von der Fig. 6 vorliegen können. Zur Vereinfachung werden dabei die Signale für eine Mastereinrichtung und zwei Slaveeinrichtungen dargestellt. For further illustration, FIG. 7 shows a more detailed example of signals such as can be present in the system of FIG. 6, for example. To simplify matters, the signals for a master device and two slave devices are shown.
Im Beispiel von Fig. 7 sendet die Mastereinrichtung (beispielsweise die Mastereinrichtung 51 der Fig. 5 oder die Mastereinrichtung 61 der Fig. 6) zunächst ein Initialisierungssignal (beispielsweise bei 21 der Fig. 2).In the example of FIG. 7, the master device (for example the master device 51 in FIG. 5 or the master device 61 in FIG. 6) first sends an initialization signal (for example at 21 in FIG. 2).
Bei dem Beispiel der Fig. 7 wird als Initialisierungssignal dreimal der Hexadezimalwert 0x55h entsprechend 3 Bytes abwechselnd mit Werten 1 und 0 gesendet, jeweils getrennt durch einen Start-/Stoppbit. Durch die dreimalige Wiederholung wird eine Redundanz erzeugt, falls ein Slave das Initialisierungssignal nicht beim ersten Mal korrekt identifiziert. Es kann jedoch auch jede andere Bitfolge, welche eindeutig von den Slaveeinrichtungen als Initialisierungssignal identifiziert werden kann, verwendet werden. Während dieser Phase, in Fig. 7 mit Master bezeichnet, liegt dann ein entsprechendes Signal auf dem Bus vor. In the example of FIG. 7, the hexadecimal value 0x55h corresponding to 3 bytes is used three times as the initialization signal sent alternately with values 1 and 0, each separated by a start / stop bit. The three repetitions create redundancy if a slave does not correctly identify the initialization signal the first time. However, any other bit sequence that can be clearly identified by the slave devices as an initialization signal can also be used. During this phase, designated as master in FIG. 7, a corresponding signal is then present on the bus.
Nach dem Abschluss des Initialisierungssignals antworten die Slaveeinrichtungen mit ihren Identifizierungen. Diese beginnen mit einem Startbit gefolgt von einer 4 Byte (32 Bit) langen Identifizierung, wobei die 4 Bytes voneinander durch ein Stoppbit getrennt sind. In dem Beispiel der Fig. 7 ist das 1. Byte mit den höchstwertigen Bits (MSB) für beide Slaveeinrichtungen 00011011, sodass hier keine Kollision vorliegt. Das nächste Byte der Identifizierung (in Fig. 7 als 3. Byte bezeichnet) ist für den ersten Slave 11111000 und für den zweiten Slave 11111001, sodass beim letzten Bit eine Kollision vorliegt. Wieder wird davon ausgegangen, dass die 0 gegenüber der 1 dominant ist, sodass hier ein Pegel entsprechend einer 0 auf dem Bus vorliegt. Der zweite Slave erkennt somit eine Kollision (er will eine 1 auf den Bus treiben, der Bus zeigt aber eine 0) und scheidet somit aus und schaltet stumm, beispielsweise auf den rezessiven Zustand. Dies ist in Fig. 7 mit dem Bezugszeichen 70 gekennzeichnet . After the completion of the initialization signal, the slave devices respond with their identifications. These begin with a start bit followed by a 4-byte (32-bit) long identification, the 4 bytes being separated from each other by a stop bit. In the example in FIG. 7, the 1st byte with the most significant bits (MSB) for both slave devices is 00011011, so that there is no collision here. The next byte of the identification (referred to as the 3rd byte in FIG. 7) is 11111000 for the first slave and 11111001 for the second slave, so that there is a collision with the last bit. It is again assumed that the 0 is dominant compared to the 1, so that a level corresponding to a 0 is present on the bus. The second slave recognizes a collision (it wants to drive a 1 onto the bus, but the bus shows a 0) and is eliminated and switches to mute, for example to the recessive state. This is identified by the reference numeral 70 in FIG. 7.
Der erste Slave fährt fort, seine Identifizierung zu senden (in Fig. 7 mit 2. Byte und 1. Byte bezeichnet) und bekommt dann seine Adresse zugewiesen, wie dies bereits erläutert wurde. Der erste Slave scheidet dann in der nachfolgenden Runde aus, sodass dann im Falle von zwei Slaveeinrichtungen wie in Fig. 7 der zweiten Slaveeinrichtung eine Adresse zugewiesen wird. Somit kann mit den hier diskutierten Ausführungsbeispielen eine Adressvergabe an eine Vielzahl von Slaves erfolgen, wobei durch eine Kollisionsdetektion sichergestellt wird, dass immer nur ein Slave eine Identifizierung erhält. The first slave continues to send its identification (labeled 2nd byte and 1st byte in FIG. 7) and is then assigned its address, as has already been explained. The first slave is then eliminated in the following round, so that in the case of two slave devices, as in FIG. 7, the second slave device is assigned an address. Thus, with the exemplary embodiments discussed here, addresses can be assigned to a large number of slaves, with collision detection ensuring that only one slave at a time receives an identification.
Einige Ausführungsbeispiele werden durch die nachfolgenden Beispiele definiert: Some embodiments are defined by the following examples:
Beispiel 1. Verfahren, umfassend: in einer Slaveeinrichtung, Example 1. A method comprising: in a slave device,
-Empfangen eines Initialisierungssignals, -Receiving an initialization signal,
-in Antwort auf das Initialisierungssignal, Senden einer Identifizierung der Slaveeinrichtung über einen Bus,-in response to the initialization signal, sending an identification of the slave device via a bus,
Prüfen, ob beim Senden der Initialisierungsidentifizierung eine Kollision auf dem Bus auftritt, Check whether a collision occurs on the bus when sending the initialization identification,
-wenn eine Kollision auftritt, Setzen der Slaveeinrichtung in einen inaktiven Zustand, und -if a collision occurs, put the slave device in an inactive state, and
-wenn keine Kollision auftritt, Empfangen einer Adresse für die Slaveeinrichtung nach dem Senden der Identifizierung. -if no collision occurs, receive an address for the slave device after sending the identification.
Beispiel 2. Verfahren nach Beispiel 1, wobei das Prüfen, ob eine Kollision auf dem Bus vorliegt, umfasst, festzustellen, dass eine Kollision vorliegt, wenn ein Pegel auf dem Bus nicht einem auf Basis der gesendeten Identifizierung erwarteten Wert entspricht. Example 2. The method of example 1, wherein checking whether there is a collision on the bus comprises determining that there is a collision if a level on the bus does not correspond to an expected value based on the identification sent.
Beispiel 3. Verfahren nach Beispiel 1 oder 2, wobei der Bus einen dominanten Pegel oder einen rezessiven Pegel aufweist, und wobei eine Kollision auf dem Bus vorliegt, wenn beim Senden der Identifizierung der rezessive Pegel auf dem Bus von der Slaveeinrichtung gesetzt wird und auf dem Bus der dominante Pegel vorliegt. Example 3. The method according to example 1 or 2, wherein the bus has a dominant level or a recessive level, and wherein there is a collision on the bus if the recessive level is set on the bus by the slave device when the identification is sent and on the Bus the dominant level is present.
Beispiel 4. Verfahren nach Beispiel 3, wobei das Verfahren ein Senden einer weiteren Identifizierung durch eine weitere Slaveeinrichtung in Antwort auf das Initialisierungssignal umfasst, und wobei die Kollision auf dem Bus vorliegt, wenn die weitere Slaveeinrichtung den dominanten Pegel auf dem Bus setzt. Example 4. The method according to example 3, wherein the method involves sending a further identification by a further slave device in response to the initialization signal comprises, and wherein the collision is present on the bus when the further slave device sets the dominant level on the bus.
Beispiel 5. Verfahren nach einem der Beispiele 1 bis 4, wobei das Prüfen, ob eine Kollision auf dem Bus vorliegt, auf Basis eines Signals auf einer Sendeleitung der Slaveeinrichtung erfolgt. Example 5. Method according to one of Examples 1 to 4, the checking of whether a collision is present on the bus being carried out on the basis of a signal on a transmission line of the slave device.
Beispiel 6. Verfahren nach einem der Beispiele 1 bis 5, wobei die Slaveeinrichtung in einem Slavecluster angeordnet ist, in dem sich mehrere Slaveeinrichtungen eine Busschnittstelle teilen. Example 6. Method according to one of Examples 1 to 5, wherein the slave device is arranged in a slave cluster in which several slave devices share a bus interface.
Beispiel 7. Verfahren nach Beispiel 5 oder 6, wobei die Slaveeinrichtung zum Senden der Identifizierung einen Push- Pull-Treiber benutzt, wobei ein Push-Transistor oder Push- Pull-Transistor des Push-Pull-Treibers schwächer ist als der andere des Push-Transistors oder Pull-Transistors. Example 7. The method according to Example 5 or 6, wherein the slave device uses a push-pull driver to send the identification, one push transistor or push-pull transistor of the push-pull driver being weaker than the other of the push-pull driver. Transistor or pull transistor.
Beispiel 8. Verfahren nach einem der Beispiele 1 bis 7, wobei das Prüfen, ob eine Kollision vorliegt, basierend auf einem Signal auf einer Empfangsleitung der Slaveeinrichtung erfolgt . Example 8. The method according to one of Examples 1 to 7, wherein the checking for whether a collision is present is based on a signal on a receiving line of the slave device.
Beispiel 9. Verfahren nach einem der Beispiele 1 bis 8, weiter umfassend Senden des Initialisierungssignals durch eine Mastereinrichtung und Senden der Adresse durch die Mastereinrichtung . Example 9. The method according to one of Examples 1 to 8, further comprising sending the initialization signal by a master device and sending the address by the master device.
Beispiel 10. Verfahren nach einem der Beispiele 1 bis 9, wobei das Verfahren mindestens so lange wiederholt wird, bis der Slaveeinrichtung eine Adresse zugewiesen wird. Example 10. Method according to one of Examples 1 to 9, wherein the method is repeated at least until an address is assigned to the slave device.
Beispiel 11. Slaveeinrichtung, umfassend: eine Kommunikationsschaltung zum Senden von Signalen zu einem Bus und zum Empfangen von Signalen von dem Bus, wobei die Slaveeinrichtung eingerichtet ist zum: Example 11. Slave device comprising: a communication circuit for sending signals to a bus and for receiving signals from the bus, wherein the slave device is arranged to:
-Empfangen eines Initialisierungssignals, -Receiving an initialization signal,
-in Antwort auf das Initialisierungssignal, Senden einer Identifizierung der Slaveeinrichtung, über den Bus,-in response to the initialization signal, sending an identification of the slave device via the bus,
Prüfen, ob beim Senden der Identifizierung eine Kollision auf dem Bus auftritt, Check whether a collision occurs on the bus when the identification is sent,
-wenn eine Kollision auftritt, Setzen der Slaveeinrichtung in einen inaktiven Zustand, und -if a collision occurs, put the slave device in an inactive state, and
-wenn keine Kollision auftritt, Empfangen einer Adresse für die Slaveeinrichtung nach dem Senden der Identifizierung. -if no collision occurs, receive an address for the slave device after sending the identification.
Beispiel 12. Slaveeinrichtung nach Beispiel 11, wobei das Prüfen, ob eine Kollision auf dem Bus vorliegt, umfasst, festzustellen, dass eine Kollision vorliegt, wenn ein Pegel auf dem Bus nicht einem auf Basis der gesendeten Identifizierung erwarteten Wert entspricht. Example 12. Slave device according to example 11, wherein checking whether there is a collision on the bus comprises determining that there is a collision if a level on the bus does not correspond to an expected value based on the identification sent.
Beispiel 13. Slaveeinrichtung nach Beispiel 11 oder 12, wobei der Bus einen dominanten Pegel oder einen rezessiven Pegel aufweist, und wobei eine Kollision auf dem Bus vorliegt, wenn beim Senden der Identifizierung der rezessive Pegel auf dem Bus von der Slaveeinrichtung eingestellt wird und auf dem Bus der dominante Pegel vorliegt. Example 13. Slave device according to example 11 or 12, wherein the bus has a dominant level or a recessive level, and where there is a collision on the bus if the recessive level on the bus is set by the slave device when the identification is sent and on the Bus the dominant level is present.
Beispiel 14. Slaveeinrichtung nach Beispiel 13, wobei eine Kollision auf dem Bus vorliegt, wenn die weitere Slaveeinrichtung den dominanten Pegel auf dem Bus setzt. Example 14. Slave device according to example 13, with a collision on the bus when the further slave device sets the dominant level on the bus.
Beispiel 15. Slaveeinrichtung nach einem der Beispiele 11 bis 14, wobei das Prüfen, ob eine Kollision auf dem Bus vorliegt, auf Basis eines Signals auf einer Sendeleitung der Slaveeinrichtung erfolgt. Beispiel 16. Slaveeinrichtung nach Beispiel 15, wobei die Slaveeinrichtung in einem Slavecluster angeordnet ist, in dem sich mehrere Slaveeinrichtungen eine Busschnittstelle teilen. Example 15. Slave device according to one of Examples 11 to 14, the checking of whether there is a collision on the bus being carried out on the basis of a signal on a transmission line of the slave device. Example 16. Slave device according to Example 15, the slave device being arranged in a slave cluster in which several slave devices share a bus interface.
Beispiel 17. Slaveeinrichtung nach Beispiel 15 oder 16, wobei die Slaveeinrichtung zum Senden der Identifizierung einen Push-Pull-Treiber umfasst, wobei ein Push-Transistor oder Push-Pull-Transistors des Push-Pull-Treibers schwächer ist als der andere des Push-Transistors oder Pull- Transistors . Example 17. Slave device according to Example 15 or 16, wherein the slave device for sending the identification comprises a push-pull driver, one push transistor or push-pull transistor of the push-pull driver being weaker than the other of the push-pull driver. Transistor or pull transistor.
Beispiel 18. Slaveeinrichtung nach einem der Beispiele 11 bis 17, wobei das Prüfen, ob eine Kollision vorliegt, basierend auf einem Signal auf einer Empfangsleitung der Slaveeinrichtung erfolgt. Example 18. Slave device according to one of Examples 11 to 17, the checking of whether a collision is occurring based on a signal on a receiving line of the slave device.
Beispiel 19. System, umfassend eine Slaveeinrichtung nach einem der Beispiele 11 bis 18, und eine Mastereinrichtung, welche zum Senden des Initialisierungssignals und zum Senden der Adresse eingerichtet ist. Example 19. A system comprising a slave device according to one of Examples 11 to 18, and a master device which is set up to send the initialization signal and to send the address.
Beispiel 20. System nach Beispiel 19, umfassend mehrere Slaveeinrichtungen, wobei die Mastereinrichtung eingerichtet ist, nach dem Senden der Adresse erneut das Initialisierungssignal zu senden, bis allen Slaveeinrichtungen einer Adresse zugeordnet ist. Example 20. The system according to example 19, comprising a plurality of slave devices, wherein the master device is set up to send the initialization signal again after the address has been sent until an address has been assigned to all slave devices.
Obgleich in dieser Beschreibung spezifische Ausführungsbeispiele illustriert und beschrieben wurden, werden Personen mit üblichem Fachwissen erkennen, dass eine Vielzahl von alternativen und/oder äquivalenten Implementierung als Substitution für die spezifischen Ausführungsbeispiele, die in dieser Beschreibung gezeigt und beschrieben sind, ohne von dem Umfang der gezeigten Erfindung abzuweichen, gewählt werden können. Es ist die Intention, dass diese Anmeldung alle Adaptionen oder Variationen der spezifischen Ausführungsbeispiele, die hier diskutiert werden, abdeckt. Daher ist es beabsichtigt, dass diese Erfindung nur durch die Ansprüche und die Äquivalente der Ansprüche beschränkt ist. Although specific exemplary embodiments have been illustrated and described in this specification, those of ordinary skill in the art will recognize that a variety of alternative and / or equivalent implementations may be substituted for the specific exemplary embodiments shown and described in this specification without departing from the scope of that shown Invention differ, can be chosen. It is the intention that this application cover all adaptations or variations of the specific embodiments discussed herein are covered. Therefore, it is intended that this invention be limited only by the claims and the equivalents of the claims.

Claims

Ansprüche Expectations
1. Verfahren, umfassend: in einer Slaveeinrichtung (12A, 12B, 12C; 57A, 57B; 62A, 62B, 62C, 62D), 1. A method comprising: in a slave device (12A, 12B, 12C; 57A, 57B; 62A, 62B, 62C, 62D),
-Empfangen eines Initialisierungssignals, -Receiving an initialization signal,
-in Antwort auf das Initialisierungssignal, Senden einer Identifizierung der Slaveeinrichtung (12A, 12B, 12C; 57A,-in response to the initialization signal, sending an identification of the slave device (12A, 12B, 12C; 57A,
57B; 62A, 62B, 62C, 62D) über einen Bus (13; 53; 63),57B; 62A, 62B, 62C, 62D) via a bus (13; 53; 63),
Prüfen, ob beim Senden der Initialisierungsidentifizierung eine Kollision auf dem Bus (13; 53; 63) auftritt, Check whether a collision occurs on the bus (13; 53; 63) when sending the initialization identification,
-wenn eine Kollision auftritt, Setzen der Slaveeinrichtung (12A, 12B, 12C; 57A, 57B; 62A, 62B, 62C, 62D) in einen inaktiven Zustand, und - if a collision occurs, setting the slave device (12A, 12B, 12C; 57A, 57B; 62A, 62B, 62C, 62D) in an inactive state, and
-wenn keine Kollision auftritt, Empfangen einer Adresse für die Slaveeinrichtung (12A, 12B, 12C; 57A, 57B; 62A, 62B, 62C, 62D) nach dem Senden der Identifizierung. -if no collision occurs, receiving an address for the slave device (12A, 12B, 12C; 57A, 57B; 62A, 62B, 62C, 62D) after sending the identification.
2. Verfahren nach Anspruch 1, wobei das Prüfen, ob eine Kollision auf dem Bus (13; 53; 63) vorliegt, umfasst, festzustellen, dass eine Kollision vorliegt, wenn ein Pegel auf dem Bus (13; 53; 63) nicht einem auf Basis der gesendeten Identifizierung erwarteten Wert entspricht. The method of claim 1, wherein checking whether there is a collision on the bus (13; 53; 63) comprises determining that there is a collision if a level on the bus (13; 53; 63) is not one corresponds to the expected value based on the identification sent.
3. Verfahren nach Anspruch 1 oder 2, wobei der Bus (13; 53; 63) einen dominanten Pegel oder einen rezessiven Pegel aufweist, und wobei eine Kollision auf dem Bus (13; 53; 63) vorliegt, wenn beim Senden der Identifizierung der rezessive Pegel auf dem Bus (13; 53; 63) von der Slaveeinrichtung (12A, 12B, 12C; 57A, 57B; 62A, 62B, 62C, 62D) gesetzt wird und auf dem Bus (13; 53; 63) der dominante Pegel vorliegt. 3. The method of claim 1 or 2, wherein the bus (13; 53; 63) has a dominant level or a recessive level, and wherein there is a collision on the bus (13; 53; 63) if the identification of the recessive level is set on the bus (13; 53; 63) by the slave device (12A, 12B, 12C; 57A, 57B; 62A, 62B, 62C, 62D) and the dominant level is set on the bus (13; 53; 63) is present.
4. Verfahren nach Anspruch 3, wobei das Verfahren ein Senden einer weiteren Identifizierung durch eine weitere Slaveeinrichtung (12A, 12B, 12C; 57A, 57B; 62A, 62B, 62C,4. The method according to claim 3, wherein the method involves sending a further identification by a further slave device (12A, 12B, 12C; 57A, 57B; 62A, 62B, 62C,
62D) in Antwort auf das Initialisierungssignal umfasst, und wobei die Kollision auf dem Bus (13; 53; 63) vorliegt, wenn die weitere Slaveeinrichtung (12A, 12B, 12C; 57A, 57B; 62A, 62B, 62C, 62D) den dominanten Pegel auf dem Bus (13; 53; 63) setzt . 62D) in response to the initialization signal, and wherein the collision is on the bus (13; 53; 63) if the further slave device (12A, 12B, 12C; 57A, 57B; 62A, 62B, 62C, 62D) sets the dominant level on the bus (13; 53; 63).
5. Verfahren nach einem der Ansprüche 1 bis 4, wobei das5. The method according to any one of claims 1 to 4, wherein the
Prüfen, ob eine Kollision auf dem Bus (13; 53; 63) vorliegt, auf Basis eines Signals auf einer Sendeleitung (TxD) derCheck whether there is a collision on the bus (13; 53; 63) based on a signal on a transmission line (TxD) of the
Slaveeinrichtung (12A, 12B, 12C; 57A, 57B; 62A, 62B, 62C,Slave device (12A, 12B, 12C; 57A, 57B; 62A, 62B, 62C,
62D) erfolgt. 62D) takes place.
6. Verfahren nach einem der Ansprüche 1 bis 5, wobei die6. The method according to any one of claims 1 to 5, wherein the
Slaveeinrichtung (12A, 12B, 12C; 57A, 57B; 62A, 62B, 62C,Slave device (12A, 12B, 12C; 57A, 57B; 62A, 62B, 62C,
62D) in einem Slavecluster (52A, 52B) angeordnet ist, in dem sich mehrere Slaveeinrichtungen (12A, 12B, 12C; 57A, 57B;62D) is arranged in a slave cluster (52A, 52B) in which a plurality of slave devices (12A, 12B, 12C; 57A, 57B;
62A, 62B, 62C, 62D) eine Busschnittstelle (56) teilen. 62A, 62B, 62C, 62D) share a bus interface (56).
7. Verfahren nach Anspruch 5 oder 6, wobei die7. The method of claim 5 or 6, wherein the
Slaveeinrichtung (12A, 12B, 12C; 57A, 57B; 62A, 62B, 62C,Slave device (12A, 12B, 12C; 57A, 57B; 62A, 62B, 62C,
62D) zum Senden der Identifizierung einen Push-Pull-Treiber benutzt, wobei ein Push-Transistor oder Push-Pull-Transistor des Push-Pull-Treibers schwächer ist als der andere des Push- Transistors oder Pull-Transistors. 62D) uses a push-pull driver to send the identification, whereby one push transistor or push-pull transistor of the push-pull driver is weaker than the other of the push transistor or pull transistor.
8. Verfahren nach einem der Ansprüche 1 bis 7, wobei das Prüfen, ob eine Kollision vorliegt, basierend auf einem Signal auf einer Empfangsleitung (RxD) der Slaveeinrichtung (12A, 12B, 12C; 57A, 57B; 62A, 62B, 62C, 62D) erfolgt. 8. The method according to any one of claims 1 to 7, wherein checking whether a collision is present based on a signal on a receiving line (RxD) of the slave device (12A, 12B, 12C; 57A, 57B; 62A, 62B, 62C, 62D) ) he follows.
9. Verfahren nach einem der Ansprüche 1 bis 8, weiter umfassend Senden des Initialisierungssignals durch eine Mastereinrichtung (11; 51; 61) und Senden der Adresse durch die Mastereinrichtung (11; 51; 61). 9. The method according to any one of claims 1 to 8, further comprising sending the initialization signal by a master device (11; 51; 61) and sending the address by the master device (11; 51; 61).
10. Verfahren nach einem der Ansprüche 1 bis 9, wobei das Verfahren mindestens so lange wiederholt wird, bis der Slaveeinrichtung (12A, 12B, 12C; 57A, 57B; 62A, 62B, 62C,10. The method according to any one of claims 1 to 9, wherein the method is repeated at least until the slave device (12A, 12B, 12C; 57A, 57B; 62A, 62B, 62C,
62D) eine Adresse zugewiesen wird. 62D) an address is assigned.
11. Slaveeinrichtung (12A, 12B, 12C; 57A, 57B; 62A, 62B,11. Slave device (12A, 12B, 12C; 57A, 57B; 62A, 62B,
62C, 62D), umfassend: eine Kommunikationsschaltung zum Senden von Signalen zu einem Bus (13; 53; 63) und zum Empfangen von Signalen von dem Bus (13; 53; 63), wobei die Slaveeinrichtung (12A, 12B, 12C; 57A, 57B; 62A, 62B, 62C, 62D) eingerichtet ist zum: 62C, 62D) comprising: a communication circuit for sending signals to a bus (13; 53; 63) and for receiving signals from the bus (13; 53; 63), the slave device (12A, 12B, 12C; 57A , 57B; 62A, 62B, 62C, 62D) is set up for:
-Empfangen eines Initialisierungssignals, -Receiving an initialization signal,
-in Antwort auf das Initialisierungssignal, Senden einer Identifizierung der Slaveeinrichtung (12A, 12B, 12C; 57A,-in response to the initialization signal, sending an identification of the slave device (12A, 12B, 12C; 57A,
57B; 62A, 62B, 62C, 62D), über den Bus (13; 53; 63),57B; 62A, 62B, 62C, 62D), via the bus (13; 53; 63),
Prüfen, ob beim Senden der Identifizierung eine Kollision auf dem Bus (13; 53; 63) auftritt, Check whether a collision occurs on the bus (13; 53; 63) when sending the identification,
-wenn eine Kollision auftritt, Setzen der Slaveeinrichtung (12A, 12B, 12C; 57A, 57B; 62A, 62B, 62C, 62D) in einen inaktiven Zustand, und - if a collision occurs, setting the slave device (12A, 12B, 12C; 57A, 57B; 62A, 62B, 62C, 62D) in an inactive state, and
-wenn keine Kollision auftritt, Empfangen einer Adresse für die Slaveeinrichtung (12A, 12B, 12C; 57A, 57B; 62A, 62B, 62C, 62D) nach dem Senden der Identifizierung. -if no collision occurs, receiving an address for the slave device (12A, 12B, 12C; 57A, 57B; 62A, 62B, 62C, 62D) after sending the identification.
12. Slaveeinrichtung (12A, 12B, 12C; 57A, 57B; 62A, 62B,12. Slave device (12A, 12B, 12C; 57A, 57B; 62A, 62B,
62C, 62D) nach Anspruch 11, wobei das Prüfen, ob eine62C, 62D) according to claim 11, wherein checking whether a
Kollision auf dem Bus (13; 53; 63) vorliegt, umfasst, festzustellen, dass eine Kollision vorliegt, wenn ein Pegel auf dem Bus (13; 53; 63) nicht einem auf Basis der gesendeten Identifizierung erwarteten Wert entspricht. There is a collision on the bus (13; 53; 63), comprises determining that a collision has occurred if a level on the bus (13; 53; 63) does not correspond to a value expected on the basis of the identification sent.
13. Slaveeinrichtung (12A, 12B, 12C; 57A, 57B; 62A, 62B,13. Slave device (12A, 12B, 12C; 57A, 57B; 62A, 62B,
62C, 62D) nach Anspruch 11 oder 12, wobei der Bus (13; 53;62C, 62D) according to claim 11 or 12, wherein the bus (13; 53;
63) einen dominanten Pegel oder einen rezessiven Pegel aufweist, und wobei eine Kollision auf dem Bus (13; 53; 63) vorliegt, wenn beim Senden der Identifizierung der rezessive Pegel auf dem Bus (13; 53; 63) von der Slaveeinrichtung (12A, 12B, 12C; 57A, 57B; 62A, 62B, 62C, 62D) eingestellt wird und auf dem Bus (13; 53; 63) der dominante Pegel vorliegt. 63) has a dominant level or a recessive level, and wherein there is a collision on the bus (13; 53; 63) if, when the identification is sent, the recessive level on the bus (13; 53; 63) from the slave device (12A , 12B, 12C; 57A, 57B; 62A, 62B, 62C, 62D) is set and the dominant level is present on the bus (13; 53; 63).
14. Slaveeinrichtung (12A, 12B, 12C; 57A, 57B; 62A, 62B,14. Slave device (12A, 12B, 12C; 57A, 57B; 62A, 62B,
62C, 62D) nach Anspruch 13, wobei eine Kollision auf dem Bus62C, 62D) according to claim 13, wherein a collision occurs on the bus
(13; 53; 63) vorliegt, wenn die weitere Slaveeinrichtung(13; 53; 63) is present when the further slave device
(12A, 12B, 12C; 57A, 57B; 62A, 62B, 62C, 62D) den dominanten Pegel auf dem Bus (13; 53; 63) setzt. (12A, 12B, 12C; 57A, 57B; 62A, 62B, 62C, 62D) sets the dominant level on the bus (13; 53; 63).
15. Slaveeinrichtung (12A, 12B, 12C; 57A, 57B; 62A, 62B,15. Slave device (12A, 12B, 12C; 57A, 57B; 62A, 62B,
62C, 62D) nach einem der Ansprüche 11 bis 14, wobei das Prüfen, ob eine Kollision auf dem Bus (13; 53; 63) vorliegt, auf Basis eines Signals auf einer Sendeleitung (TxD) der Slaveeinrichtung (12A, 12B, 12C; 57A, 57B; 62A, 62B, 62C,62C, 62D) according to one of claims 11 to 14, wherein checking whether a collision is present on the bus (13; 53; 63) is based on a signal on a transmission line (TxD) of the slave device (12A, 12B, 12C; 57A, 57B; 62A, 62B, 62C,
62D) erfolgt. 62D) takes place.
16. Slaveeinrichtung (12A, 12B, 12C; 57A, 57B; 62A, 62B,16. Slave device (12A, 12B, 12C; 57A, 57B; 62A, 62B,
62C, 62D) nach Anspruch 15, wobei die Slaveeinrichtung (12A, 12B, 12C; 57A, 57B; 62A, 62B, 62C, 62D) in einem Slavecluster (52A, 52B) angeordnet ist, in dem sich mehrere Slaveeinrichtungen (12A, 12B, 12C; 57A, 57B; 62A, 62B, 62C, 62D) eine Busschnittstelle (56) teilen. 62C, 62D) according to claim 15, wherein the slave device (12A, 12B, 12C; 57A, 57B; 62A, 62B, 62C, 62D) is arranged in a slave cluster (52A, 52B) in which a plurality of slave devices (12A, 12B , 12C; 57A, 57B; 62A, 62B, 62C, 62D) share a bus interface (56).
17. Slaveeinrichtung (12A, 12B, 12C; 57A, 57B; 62A, 62B,17. Slave device (12A, 12B, 12C; 57A, 57B; 62A, 62B,
62C, 62D) nach Anspruch 15 oder 16, wobei die Slaveeinrichtung (12A, 12B, 12C; 57A, 57B; 62A, 62B, 62C,62C, 62D) according to claim 15 or 16, wherein the slave device (12A, 12B, 12C; 57A, 57B; 62A, 62B, 62C,
62D) zum Senden der Identifizierung einen Push-Pull-Treiber umfasst, wobei ein Push-Transistor oder Push-Pull-Transistors des Push-Pull-Treibers schwächer ist als der andere des Push- Transistors oder Pull-Transistors. 62D) comprises a push-pull driver for sending the identification, wherein one push transistor or push-pull transistor of the push-pull driver is weaker than the other of the push transistor or pull transistor.
18. Slaveeinrichtung (12A, 12B, 12C; 57A, 57B; 62A, 62B,18. Slave device (12A, 12B, 12C; 57A, 57B; 62A, 62B,
62C, 62D) nach einem der Ansprüche 11 bis 17, wobei das Prüfen, ob eine Kollision vorliegt, basierend auf einem Signal auf einer Empfangsleitung (RxD) der Slaveeinrichtung (12A, 12B, 12C; 57A, 57B; 62A, 62B, 62C, 62D) erfolgt. 62C, 62D) according to one of claims 11 to 17, wherein checking whether a collision is present is based on a signal on a receiving line (RxD) of the slave device (12A, 12B, 12C; 57A, 57B; 62A, 62B, 62C, 62D) takes place.
19. System (10; 50; 60), umfassend eine Slaveeinrichtung19. A system (10; 50; 60) comprising a slave device
(12A, 12B, 12C; 57A, 57B; 62A, 62B, 62C, 62D) nach einem der(12A, 12B, 12C; 57A, 57B; 62A, 62B, 62C, 62D) according to one of the
Ansprüche 11 bis 18, und eine Mastereinrichtung (11; 51; 61), welche zum Senden des Initialisierungssignals und zum Senden der Adresse eingerichtet ist. Claims 11 to 18, and a master device (11; 51; 61), which is set up to send the initialization signal and to send the address.
20. System (10; 50; 60) nach Anspruch 19, umfassend mehrere Slaveeinrichtungen (12A, 12B, 12C; 57A, 57B; 62A, 62B, 62C,20. System (10; 50; 60) according to claim 19, comprising a plurality of slave devices (12A, 12B, 12C; 57A, 57B; 62A, 62B, 62C,
62D), wobei die Mastereinrichtung (11; 51; 61) eingerichtet ist, nach dem Senden der Adresse erneut das Initialisierungssignal zu senden, bis allen Slaveeinrichtungen (12A, 12B, 12C; 57A, 57B; 62A, 62B, 62C, 62D) einer Adresse zugeordnet ist. 62D), the master device (11; 51; 61) being set up to send the initialization signal again after the address has been sent until all slave devices (12A, 12B, 12C; 57A, 57B; 62A, 62B, 62C, 62D) have one Address is assigned.
PCT/EP2020/000153 2019-09-23 2020-09-09 Slave device, bus system, and methods WO2021058123A1 (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN202080061799.9A CN114341827A (en) 2019-09-23 2020-09-09 Slave device, bus system and method
US17/761,300 US20220353108A1 (en) 2019-09-23 2020-09-09 Slave device, bus system, and methods
EP20775182.7A EP4035314A1 (en) 2019-09-23 2020-09-09 Slave device, bus system, and methods

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE102019125493.0 2019-09-23
DE102019125493.0A DE102019125493A1 (en) 2019-09-23 2019-09-23 Slave device, bus system and method

Publications (1)

Publication Number Publication Date
WO2021058123A1 true WO2021058123A1 (en) 2021-04-01

Family

ID=72561742

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/EP2020/000153 WO2021058123A1 (en) 2019-09-23 2020-09-09 Slave device, bus system, and methods

Country Status (5)

Country Link
US (1) US20220353108A1 (en)
EP (1) EP4035314A1 (en)
CN (1) CN114341827A (en)
DE (1) DE102019125493A1 (en)
WO (1) WO2021058123A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116955265A (en) * 2023-09-20 2023-10-27 合肥创发微电子有限公司 I2C bus system communication method, device, equipment and medium

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20010030904A1 (en) * 1990-04-18 2001-10-18 Michael Farmwald Memory device having a programmable register
DE102010041810A1 (en) * 2010-09-30 2012-04-05 Robert Bosch Gmbh Method for automatic address assignment to similar bus subscribers
DE102010063528A1 (en) * 2010-12-20 2012-06-21 Dspace Digital Signal Processing And Control Engineering Gmbh Method for connecting three bus participations of controller area network (CAN) bus system used in automobile industry, involves selectively switching multiplexer in preset time such that any two bus participations are connected
DE102017130933B3 (en) * 2017-12-21 2019-05-02 Infineon Technologies Ag Edge-based communication with a plurality of slave devices using timers

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5499242A (en) * 1995-01-31 1996-03-12 National Semiconductor Corporation Circuit for distributed collision detection
US6779046B1 (en) * 1999-03-30 2004-08-17 Kawasaki Microelectronics, Inc. Serial-data transfer system which has a normal mode and a local mode and devices for the same
US6636904B2 (en) * 1999-11-18 2003-10-21 Hewlett-Packard Development Company, L.P. Dynamic PCI device identification redirection on a configuration space access conflict
JP2008539497A (en) * 2005-04-29 2008-11-13 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ Device identification coding of slave devices between integrated circuits
DE102007004779A1 (en) * 2007-01-31 2008-08-07 Oerlikon Textile Gmbh & Co. Kg Cheese-making textile machine as well as component
KR101720134B1 (en) * 2011-12-21 2017-03-28 한국전자통신연구원 Bus bridge apparatus
CN104603573B (en) * 2012-09-05 2017-07-04 赫克斯冈技术中心 Measuring machine communication with automatic address distribution
CN103279434B (en) * 2013-05-10 2016-06-29 青岛海信宽带多媒体技术有限公司 From device address amending method and device
DE102013225706A1 (en) * 2013-12-12 2015-06-18 Bayerische Motoren Werke Aktiengesellschaft Addressing of control units
EP3016351B1 (en) * 2014-11-03 2018-03-07 Pepperl + Fuchs GmbH Method for operating a sensor arrangement with multiple sensor devices, sensor device, sensor arrangement and sensor system
CN104410547B (en) * 2014-12-03 2017-09-29 合肥工大高科信息科技股份有限公司 A kind of address conflict detecting method in dcs
CN104516851B (en) * 2014-12-31 2017-11-21 福州瑞芯微电子股份有限公司 A kind of system and method for RS485 slave units address distribution
US9990316B2 (en) * 2015-09-21 2018-06-05 Qualcomm Incorporated Enhanced serial peripheral interface

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20010030904A1 (en) * 1990-04-18 2001-10-18 Michael Farmwald Memory device having a programmable register
DE102010041810A1 (en) * 2010-09-30 2012-04-05 Robert Bosch Gmbh Method for automatic address assignment to similar bus subscribers
DE102010063528A1 (en) * 2010-12-20 2012-06-21 Dspace Digital Signal Processing And Control Engineering Gmbh Method for connecting three bus participations of controller area network (CAN) bus system used in automobile industry, involves selectively switching multiplexer in preset time such that any two bus participations are connected
DE102017130933B3 (en) * 2017-12-21 2019-05-02 Infineon Technologies Ag Edge-based communication with a plurality of slave devices using timers

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116955265A (en) * 2023-09-20 2023-10-27 合肥创发微电子有限公司 I2C bus system communication method, device, equipment and medium
CN116955265B (en) * 2023-09-20 2023-12-05 合肥创发微电子有限公司 I2C bus system communication method, device, equipment and medium

Also Published As

Publication number Publication date
US20220353108A1 (en) 2022-11-03
CN114341827A (en) 2022-04-12
DE102019125493A1 (en) 2021-03-25
EP4035314A1 (en) 2022-08-03

Similar Documents

Publication Publication Date Title
EP2622826B1 (en) Method for automatically assigning addresses to identical bus users
EP2263102B1 (en) Ultrasound-based driver assistance system
DE102013008308B4 (en) System and method for addressing devices connected to a bus system, in particular a LIN bus
WO2004059917A1 (en) Automatic addressing on bus systems
EP2090031B1 (en) Method and arrangement for communication on an lin bus
EP2948857A1 (en) Bus node and bus system and method for identifying the bus nodes of the bus system
DE10030987A1 (en) Initializing system for controlling/regulating motor vehicle operating processes involves sensors of same type sending responses back to controller with time offset after transmit request
DE102014101338A1 (en) Communication network and method for communicating in a communication network
DE102019130502A1 (en) Vehicle and method for in-vehicle message transmission
DE60305731T2 (en) AUTOMATICALLY CONFIGURED LIN BUS NODES
EP3172871B1 (en) Access method with access slots and priority resolution
DE102020106264A1 (en) MULTIPLE CONTROL UNIT FOR A VEHICLE
WO2020126754A1 (en) Device for a subscriber station of a serial bus system and method for communication in a serial bus system
EP3108603A1 (en) Participant station for a bus system, and method for increasing the data rate of a bus system
WO2021058123A1 (en) Slave device, bus system, and methods
DE102021104422A1 (en) Method for operating a communication system, communication system and computing system
EP2012469A1 (en) Method for operating a quasi bus for a personal protection system, control device for controlling a personal protection system and device for transferring data from sensors through at least one quasi bus to a control device for controlling a personal protection system
EP2534582B1 (en) Novel circuit and method for communicating via a single line
DE102020100425B3 (en) Device for auto-configuration of automotive ultrasonic sensors on various data buses and corresponding method
DE102007028387A1 (en) Textile technical bus system
WO2019121383A1 (en) Method for self-testing, data bus arrangement and use
DE102019103222B3 (en) Device for auto-configuration of automotive ultrasonic sensors on different data buses in different applications and corresponding method
DE102019103223B4 (en) Device and method for signaling a data bus failure by an ultrasonic measuring device
DE102017117225B3 (en) Communication system with bus and coding line
EP1515237B1 (en) Interface for a UART-based bus system

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 20775182

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2020775182

Country of ref document: EP

Effective date: 20220425