ES2982992T3 - Estación de suscripción a un sistema de bus en serie y método de comunicación en dicho sistema - Google Patents
Estación de suscripción a un sistema de bus en serie y método de comunicación en dicho sistema Download PDFInfo
- Publication number
- ES2982992T3 ES2982992T3 ES20817300T ES20817300T ES2982992T3 ES 2982992 T3 ES2982992 T3 ES 2982992T3 ES 20817300 T ES20817300 T ES 20817300T ES 20817300 T ES20817300 T ES 20817300T ES 2982992 T3 ES2982992 T3 ES 2982992T3
- Authority
- ES
- Spain
- Prior art keywords
- frame
- bits
- bit
- subscriber station
- bus
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L12/40006—Architecture of a communication node
- H04L12/40013—Details regarding a bus controller
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
- H03M13/09—Error detection only, e.g. using cyclic redundancy check [CRC] codes or single parity bit
- H03M13/095—Error detection codes other than CRC and single parity bit codes
- H03M13/096—Checksums
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/0001—Systems modifying transmission characteristics according to link quality, e.g. power backoff
- H04L1/0006—Systems modifying transmission characteristics according to link quality, e.g. power backoff by adapting the transmission format
- H04L1/0007—Systems modifying transmission characteristics according to link quality, e.g. power backoff by adapting the transmission format by modifying the frame length
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0056—Systems characterized by the type of code used
- H04L1/0061—Error detection codes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L12/40052—High-speed IEEE 1394 serial bus
- H04L12/40071—Packet processing; Packet format
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L12/40052—High-speed IEEE 1394 serial bus
- H04L12/40084—Bus arbitration
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L12/4013—Management of data rate on the bus
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/22—Parsing or analysis of headers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/34—Bits, or blocks of bits, of the telegraphic message being interchanged in time
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L2001/0092—Error control systems characterised by the topology of the transmission link
- H04L2001/0094—Bus
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L2012/40208—Bus networks characterized by the use of a particular bus standard
- H04L2012/40215—Controller Area Network CAN
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Detection And Prevention Of Errors In Transmission (AREA)
- Small-Scale Networks (AREA)
Abstract
La invención se refiere a una estación de abonado (10; 30) para un sistema de bus serie (1) y a un procedimiento para la comunicación en un sistema de bus serie (1). La estación de abonado (10; 30) presenta un controlador de comunicación (11; 31) para controlar una comunicación entre la estación de abonado (10; 30) y al menos otra estación de abonado (10; 20; 30) del sistema de bus (1) y un transceptor (12; 32) que está diseñado para transmitir en serie una señal de transmisión (TXD) generada por el controlador de comunicación (11; 31) a un bus (40) del sistema de bus (1) y para recibir en serie señales del bus (40) del sistema de bus (1). El controlador de comunicación (11; 31) está diseñado para generar la señal de transmisión (TXD) de acuerdo con una trama (450) e insertar una suma de comprobación de encabezado (HCRC) en la trama (450), en donde solo los bits de un encabezado de trama que está dispuesto delante de un campo de datos (455) previsto para datos de usuario en la trama (450) se calculan en la suma de comprobación de encabezado. Para calcular la suma de comprobación de encabezado (HCRC), el controlador de comunicación (11; 31) está diseñado para utilizar un valor de inicio especificado (R_S) y un polinomio de suma de comprobación especificado (CRC_P) con los cuales el resultado intermedio del cálculo de la suma de comprobación de encabezado (HCRC) no es igual a un vector nulo para la parte de encabezado de trama en la que se utilizan bits de relleno dinámico. (Traducción automática con Google Translate, sin valor legal)
Description
DESCRIPCIÓN
Estación de suscripción a un sistema de bus en serie y método de comunicación en dicho sistema
Área técnica
La presente invención se refiere a una estación de suscripción para un sistema de bus en serie y a un método para la comunicación en un sistema de bus en serie que trabaja con altas velocidades de datos además de una gran flexibilidad y alta robustez ante errores.
Estado de la técnica
Los sistemas de bus para la comunicación entre sensores y dispositivos de control, por ejemplo, en vehículos, deberían permitir la transmisión de una gran cantidad de datos en función del número de funciones de un sistema técnico o de un vehículo. Esto requiere a menudo que los datos se transfieran del emisor al receptor más rápidamente que antes y, en caso necesario, que también se puedan transferir grandes paquetes de datos.
Para los vehículos, actualmente se encuentra en fase de introducción un sistema de bus en el que los datos se transmiten como mensajes según el estándar ISO11898-1:2015 como especificación del protocolo CAN con CAN FD. Los mensajes se transmiten entre los participantes del sistema de bus, como sensores, dispositivos de control, codificadores, etc. La mayoría de los fabricantes utilizan CAN FD en el vehículo en el primer paso con una velocidad de bits de datos de 2 Mbit/s y una velocidad de bits de arbitraje de 500 kbit/s.
El documento WO 2019/030214 describe un desarrollo adicional de la especificación del protocolo CAN con CAN FD, que pretende evitar los inconvenientes de la comunicación IP en el sector del vehículo. Para ello se combina con Ethernet un arbitraje específico basado en prioridades y dependiente del contenido. Durante la comunicación se utilizan tramas en las que se inserta una suma de verificación después de un campo de datos destinado a los datos del usuario en la trama. La suma de comprobación se calcula mediante un campo de inicio, un campo de arbitraje, un campo de control y el campo de datos.
Para permitir velocidades de datos aún mayores, actualmente se está desarrollando un sistema de bus sucesor del CAN FD, al que nos referiremos en lo sucesivo como CAN XL. Además del simple transporte de datos a través del bus<c>A<n>, CAN XL también debe soportar otras funciones como la seguridad funcional, la seguridad de los datos y la calidad de servicio (QoS = Quality of Service). Estas son propiedades elementales que se necesitan en un vehículo autónomo.
Es muy ventajoso que CAN XL y CAN FD, así como el CAN clásico, sean compatibles. En tal caso, el bit res en la trama cA n f D se utiliza para diferenciar entre las tramas CAN FD y CAN Xl . Debido a la compatibilidad, las reglas para bits de relleno dinámico que se utilizan para el campo de arbitraje CAN FD también deben aplicarse a CAN XL hasta este bit res.
Para la seguridad funcional de un sistema es muy ventajoso e importante que la probabilidad de error residual sea lo más baja posible. Un error de clase 1, es decir, bits invertidos incorrectamente (bit flips), y/o un error de clase 2, es decir, errores de bits acumulados localmente (errores de ráfaga), se pueden detectar con suficiente probabilidad mediante una suma de comprobación (CRC = Cyclic Redundancy Check). Cabe señalar que una estación de abonado receptor realiza también una comprobación del formato de la trama. Esto ayuda especialmente a detectar errores de ráfaga. La calidad de la detección de errores se puede expresar mediante la probabilidad de error residual. La probabilidad de error residual indica la probabilidad de que una trama sea aceptada como correcta a pesar de un error en una estación de abonado receptor (nodo receptor) del sistema de bus que no es emisor de la trama.
Con CAN clásico, el cálculo de CRC tiene la siguiente desventaja. Con CAN clásico, los bits de relleno dinámico no se incluyen en el cálculo de CRC. Por este motivo, el CAN clásico tiene un error de clase 3, que la suma de comprobación (CRC) no puede detectar de forma fiable. Este error (Clase 3) se produce al invertir solo dos bits, también conocido como inversión de bits. Aquí, un cambio de bit crea una condición de relleno dinámico y el otro cambio de bit cancela una condición de relleno dinámico. El orden de los cambios de bits en los bits transmitidos en serie (flujo de bits) no importa. Por lo tanto, es muy poco probable que el cálculo CRC detecte dicho error, incluso si el cálculo CRC puede detectar de manera confiable cinco cambios de bits (errores de clase 1) en CAN clásico. Por tanto, un error de Clase 3 es un caso particularmente problemático o un error crítico.
Para ser robusto contra errores de clase 3 en CAN FD, los bits de relleno dinámico se incluyen en el cálculo de CRC en CAN FD. Sin embargo, más tarde resultó que aquí hay un error de clase 4 que no es reconocido por el CAN FD CRC. Este error de clase 4 es una caída o inserción de un solo bit en el flujo de datos de la estación del abonado receptor bajo una condición de relleno dinámico. Esto significa que, debido a una resincronización incorrecta, la estación del abonado receptor ve un bit más o un bit menos de lo que realmente transmite la estación del abonado emisor (nodo transmisor). Sin embargo, esto no se nota porque los bits dinámicos en CAN sólo se insertan después de 5 bits idénticos con el mismo valor.
La inclusión de bits de relleno dinámicos en el cálculo de CRC para CAN FD requiere un "contador de bits de relleno" en el campo CRC. Este "contador de bits" reduce la probabilidad de que un error de Clase 4 no se detecte, pero no resuelve completamente el problema. Un “contador de bits de relleno” de este tipo también genera complejidad y sobrecarga de datos, lo que reduce la velocidad de datos útiles transferibles.
Además, en CAN FD no existe ninguna suma de comprobación del encabezado (header CRC). Esto significa que no se puede detectar un error en el código del campo de longitud de datos (DLC = DataLengthCode).
Por lo tanto, un error de bit en el código del campo de longitud de datos puede provocar que una estación de abonado receptora (nodo de recepción) del sistema de bus, que no es emisora de la trama CAN FD, decodifique una longitud de trama incorrecta en la trama CAN FD. Por lo tanto, la estación de abonado receptor (nodo receptor) comprueba la suma de comprobación (CRC) en el lugar equivocado.
Si el cálculo del CRC para CAN XL se realizara del mismo modo que para CAN FD, CAN XL tendría las mismas desventajas que CAN FD.
Divulgación de la invención.
Por lo tanto, el objetivo de la presente invención es proporcionar una estación de abonado para un sistema de bus en serie y un método para la comunicación en un sistema de bus en serie que resuelva los problemas antes mencionados. En particular, deben estar previstas una estación de abonado para un sistema de bus en serie y un método para la comunicación en un sistema de bus en serie, en el que se detecten con un alto grado de seguridad errores en relación con bits de relleno dinámicos en un flujo de bits, incluso con altas velocidades de transferencia de datos y un aumento en la cantidad de datos de usuario por trama para lograr un alto nivel de robustez contra errores en la comunicación.
La tarea se resuelve mediante una estación de abonado para un sistema de bus en serie con las características de la reivindicación 1. La estación de abonado tiene un dispositivo de control de comunicación para controlar la comunicación entre la estación de abonado y al menos otra estación de abonado del sistema de bus, y un dispositivo de transmisión/recepción que está diseñado para enviar en serie una señal de transmisión generada por el dispositivo de control de comunicación a un bus del sistema de bus, y que está diseñado para recibir en serie señales desde el bus del sistema de bus, estando diseñado el dispositivo de control de comunicación para generar la señal de transmisión de acuerdo con una trama y para insertar una suma de control de encabezado en la trama, en el que solo se incluyen bits de un encabezado de trama, que está dispuesto delante de un campo de datos que es para datos de carga útil que se proporcionan en la trama, en el que el dispositivo de control de comunicación está diseñado para insertar bits de relleno dinámicos en el encabezado de trama de tal manera que después de 5 bits idénticos seguidos, se inserta un bit de relleno inverso en el flujo de bits de la trama, y en el que el dispositivo de control de comunicación está diseñado para usar un valor inicial predeterminado y un polinomio de suma de verificación predeterminado para el cálculo de la suma de verificación del encabezado, con lo cual el resultado intermedio del cálculo de la suma de control del encabezado para la parte del encabezado de la trama en la que se utilizan bits de relleno dinámico no es igual a un vector cero.
El diseño de la estación de abonado permite una alta probabilidad de detección de errores al calcular la suma de comprobación del encabezado para CAN XL. Esto permite minimizar los errores en la suma de comprobación del encabezado HCRC asociados con bits de relleno dinámico. De este modo se pueden detectar de forma rápida y fiable errores de comunicación en el sistema de bus.
En general, la estación de abonado descrita puede evitar muy bien gracias a su diseño los dos inconvenientes mencionados del CAN FD en relación con los bits de relleno. Esto significa que la estación de abonado puede detectar con suficiente seguridad un error al escanear el código de longitud de datos. Además, debido a su diseño, la estación de abonado puede guardar opcionalmente campos adicionales en la trama para aumentar la tasa de datos de usuario transferibles. De este modo, por ejemplo, en la estación de abonado descrita anteriormente no es absolutamente necesario un "cómputo de relleno" como en el CAN FD.
De este modo, incluso si se aumenta la cantidad de datos útiles por trama, la estación de abonado puede garantizar que las tramas se envíen y reciban con gran seguridad funcional, gran flexibilidad con respecto a los acontecimientos actuales en el funcionamiento del sistema de bus y con una baja tasa de error.
Con la estación de abonado en el sistema de bus es posible, en particular, mantener en una primera fase de comunicación un arbitraje conocido de CAN y aun así aumentar considerablemente la velocidad de transmisión en comparación con CAN o CAN FD.
El procedimiento realizado por la estación de abonado también se puede utilizar si en el sistema de bus también hay al menos una estación de abonado CAN y/o al menos una estación de abonado CAN FD que envía mensajes según el protocolo CAN y/o el protocolo CAN FD.
Otras configuraciones ventajosas de la estación de abonado se indican en las reivindicaciones dependientes.
El valor inicial predeterminado puede ser igual a (1,0,0,0,0,0,0,0,0,0,0,0,0).
Alternativamente, el valor inicial predeterminado es (0,0,1,1,0,0,0,0,0,0,0,0,0).
Es imaginable que el dispositivo de control de la comunicación esté diseñado para utilizar al menos un elemento de conmutación de un circuito eléctrico para calcular la suma de control principal, que se puede ajustar al valor inicial predeterminado y que implementa un polinomio de suma de control predeterminado.
Posiblemente el polinomio de suma de comprobación predeterminado (CRC_P) sea x13 x12 x11 x8 x7 x6 x5 x2 x1 1.
Para compatibilidad opcional con CAN FD, el dispositivo de control de comunicación está diseñado para insertar bits de relleno dinámico solo en la primera parte del encabezado de la trama.
Según una opción, el dispositivo de control de comunicación está diseñado para insertar un campo en la trama en la que está codificado el número de bits de relleno dinámico, en donde el dispositivo de control de comunicación está diseñado para insertar al menos un campo antes de un campo de datos donde se encuentran insertados datos de usuario en la trama.
Opcionalmente, el dispositivo de transmisión/recepción para enviar en serie una señal de transmisión generada por el dispositivo de control de comunicación a un bus del sistema de bus está diseñado de tal manera que para un mensaje que se intercambia entre estaciones de abonado del sistema de bus, el tiempo de bit de un mensaje enviado al bus en una primera fase de comunicación se puede distinguir de un tiempo de bit de una señal enviada en una segunda fase de comunicación.
Es posible que la trama formada para el mensaje esté diseñada para ser compatible con CAN FD, negociándose en una primera fase de comunicación cuál de las estaciones de abonado del sistema de bus tendrá al menos temporalmente acceso al de forma exclusiva y libre de colisiones en una posterior segunda fase de comunicación.
La estación de abonado descrita anteriormente puede formar parte de un sistema de bus, que incluye un bus y al menos dos estaciones de abonado, que están conectadas entre sí a través del bus de tal manera que pueden comunicarse entre sí en serie. Al menos una de las al menos dos estaciones de abonado es una estación de abonado descrita anteriormente.
La tarea antes mencionada también se logra mediante un método de comunicación en un sistema de bus en serie según la reivindicación 11. El método se lleva a cabo con una estación de abonado del sistema de bus, que tiene un dispositivo de control de comunicación y un dispositivo de transmisión/recepción, teniendo el método las etapas de controlar, con el dispositivo de control de comunicación, la comunicación de la estación de abonado con al menos un otra estación de abonado del sistema de bus, y transmitir con el dispositivo transmisor/receptor una señal de transmisión generada por el dispositivo de control de comunicación en un bus del sistema de bus, en donde el dispositivo transmisor/receptor también está diseñado para recibir en serie señales desde el bus del sistema de bus, generando, con el dispositivo de control de comunicación, la señal de transmisión de acuerdo con una trama, en donde el dispositivo de control de comunicación inserta una suma de control de encabezado en la trama, en la que solo se incluyen bits de un encabezado de trama, que está dispuesto en frente a un campo de datos que está destinado a datos de usuario en la trama, el dispositivo de control de comunicación inserta bits de relleno dinámicos en el encabezado de la trama de tal manera que después de 5 bits iguales en secuencia, se inserta un bit de relleno inverso en el flujo de bits de la trama, y en donde el dispositivo de control de comunicación usa un valor inicial predeterminado y un polinomio de suma de verificación predeterminado para calcular la suma de verificación del encabezado, en donde el dispositivo de control de comunicación usa un valor inicial predeterminado y un polinomio de suma de verificación predeterminado para calcular la suma de verificación del encabezado, con el cual el resultado intermedio de calcular la suma de comprobación del encabezado para la parte del encabezado de la trama en la que se utilizan bits de relleno dinámico no es igual a un vector cero.
El método ofrece las mismas ventajas mencionadas anteriormente con respecto a la estación de abonado.
Otras posibles implementaciones de la invención incluyen también combinaciones de características o formas de realización descritas anteriormente o a continuación con respecto a los ejemplos de realización que no se mencionan explícitamente. El experto en la materia añadirá también aspectos individuales a la respectiva forma básica de la invención como mejora o complemento.
Figuras
La invención se describe a continuación con más detalle haciendo referencia a las figuras adjuntas y utilizando ejemplos de realización. Se observan:
La figura 1 muestra un diagrama de bloques simplificado de un sistema de bus según una primera realización ejemplar;
La figura 2 es un diagrama para ilustrar la estructura de un mensaje enviado desde una estación de abonado de un sistema de bus que se puede enviar según el primer ejemplo de realización;
La figura 3 muestra un diagrama de bloques esquemático simplificado de una estación de abonado del sistema de bus según la primera realización ejemplar;
La figura 4 muestra un desarrollo temporal de las señales de bus CAN-XL_H y CAN-XL_L en la estación de abonado según la primera realización ejemplar;
La figura 5 muestra un desarrollo temporal de una tensión diferencial VDIFF de las señales de bus CAN-XL_H y CAN-XL_L en la estación de abonado según el primer ejemplo de realización;
La figura 6 es un diagrama de circuito de un circuito eléctrico para calcular la suma de comprobación del encabezado según una segunda realización ejemplar; y
La figura 7 es un diagrama para ilustrar la estructura de un mensaje que puede enviarse desde una estación de abonado del sistema de bus según una tercera realización ejemplar.
En las figuras, los elementos idénticos o funcionalmente idénticos están provistos de los mismos números de referencia a menos que se indique lo contrario.
Descripción de los ejemplos de realización
La figura 1 muestra un ejemplo de un sistema de bus 1, que está diseñado en particular fundamentalmente para un sistema de bus CAN, un sistema de bus CAN FD, un sistema de bus<c>A<n>XL y/o modificaciones de los mismos, como se describe a continuación. El sistema de bus 1 se puede utilizar en un vehículo, en particular en un automóvil, en un avión, etc., o en un hospital, etc.
En la Figura 1, el sistema de bus 1 tiene un gran número de estaciones de abonado 10, 20, 30, cada una de las cuales está conectada a un bus 40 con un primer cable de bus 41 y un segundo cable de bus 42. Los cables de bus 41, 42 también pueden denominarse Ca N_H y CAN_L o Ca N-XL_H y CAN-XL_L y se utilizan para la transmisión de señales eléctricas después del acoplamiento en los niveles dominantes o la generación de niveles recesivos u otros niveles para una señal en el estado de transmisión. Los mensajes 45, 46 se pueden transmitir en serie en forma de señales entre las distintas estaciones de abonado 10, 20, 30 a través del bus 40. Si se produce un error durante la comunicación en el bus 40, como se muestra mediante la flecha de bloque negro dentado en la Figura 1, opcionalmente se puede enviar una trama de error 47 (indicador de error). Las estaciones de abonado 10, 20, 30 son, por ejemplo, dispositivos de control, sensores, dispositivos de visualización, etc. de un automóvil.
Como se muestra en la figura 1, la estación de abonado 10 tiene un dispositivo de control de comunicación 11, un dispositivo de transmisión/recepción 12 y un módulo de verificación de trama 15. La estación de abonado 20 tiene un dispositivo de control de comunicación 21 y un dispositivo de transmisión/recepción 22. La estación de abonado 30 tiene un dispositivo de control de comunicación 31, un dispositivo de transmisión/recepción 32 y un módulo de verificación de trama 35. Los dispositivos de transmisión/recepción 12, 22, 32 de las estaciones de abonado 10, 20, 30 están cada uno conectado directamente al bus 40, incluso si este no es ilustrado en la figura 1.
Los dispositivos de control de comunicación 11, 21, 31 sirven en cada caso para controlar la comunicación entre la respectiva estación de abonado 10, 20, 30 a través del bus 40 con al menos otra estación de abonado de las estaciones de abonado 10, 20, 30 conectadas al bus. 40.
Los dispositivos de control de comunicación 11, 31 crean y leen primeros mensajes 45, que son, por ejemplo, mensajes CAN modificados 45. En este caso, los mensajes CAN modificados 45 se construyen sobre la base de un formato CAN XL, que se describe con más detalle con referencia a la figura 2, y en el que se utiliza el respectivo módulo de verificación de tramas 15, 35. Los dispositivos de control de comunicación 11, 31 también pueden diseñarse para proporcionar o recibir un mensaje CAN XL 45 o un mensaje CAN FD 46 para el dispositivo transmisor/receptor 32 según sea necesario. Aquí también se utilizan los respectivos módulos de prueba de tramas 15, 35. Por lo tanto, los dispositivos de control de comunicación 11,31 crean y leen un primer mensaje 45 o un segundo mensaje 46, diferenciándose el primer y segundo mensaje 45, 46 en su estándar de transmisión de datos, a saber, en este caso CAN XL o CAN FD.
El dispositivo de control de comunicación 21 puede diseñarse como un controlador CAN convencional según ISO 11898-1:2015, es decir, como un controlador CAN clásico tolerante CAN FD o un controlador CAN FD. El dispositivo de control de comunicación 21 crea y lee segundos mensajes 46, por ejemplo, mensajes CAN FD 46. Los mensajes CAN FD 46 pueden contener un número de 0 a 64 bytes de datos, que también tienen una velocidad de datos significativamente más rápida que la transmitida en un mensaje CAN clásico. En particular, el dispositivo de control de comunicación 21 está diseñado como un controlador CAN FD convencional.
El dispositivo transmisor/receptor 22 puede diseñarse como un transceptor CAN convencional según ISO 11898-1:2015 o un transceptor CAN FD. Los dispositivos de transmisión/recepción 12, 32 pueden diseñarse para proporcionar, según sea necesario, mensajes 45 según el formato CAN XL o mensajes 46 según el formato CAN FD actual para el dispositivo de control de comunicación asociado 11, 31 o para recibirlos desde el último.
Con las dos estaciones de abonado 10, 30 se produce una formación y luego se puede realizar una transmisión de mensajes 45 con el formato CAN XL, así como la recepción de dichos mensajes 45.
La Figura 2 muestra una trama CAN XL 450 para el mensaje 45, proporcionada por el dispositivo de control de comunicación 11 para el dispositivo transmisor/receptor 12 para enviar al bus 40. Aquí, el dispositivo de control de comunicación 11 crea la trama 450 en la presente realización ejemplar como compatible con CAN FD, como también se ilustra en la figura 2. Lo mismo se aplica de manera análoga al dispositivo de control de comunicación 31 y al dispositivo de transmisión/recepción 32 de la estación de abonado 30.
Según la Figura 2, la trama CAN XL 450 para la comunicación CAN en el bus 40 se divide en diferentes fases de comunicación 451, 452, a saber, una fase de arbitraje 451 y una fase de datos 452. La trama 450 tiene un campo de arbitraje 453, un campo de control 454, un campo de datos 455, un campo de suma de verificación 456 para una suma de verificación FCRC y una secuencia de conmutación ADS y un campo de confirmación 457.
En la fase de arbitraje 451, se usa un identificador (ID) en el campo de arbitraje 453 para negociar bit a bit entre las estaciones de abonado 10, 20, 30 qué estación de abonado 10, 20, 30 quiere enviar el mensaje 45, 46 con la prioridad más alta y, por lo tanto, para el siguiente momento de envío en la siguiente fase de datos 452, obtiene acceso exclusivo al bus 40 del sistema de bus 1. En la fase de arbitraje 451, se utiliza una capa física como CAN y CAN-FD. La capa física corresponde a la capa física o capa 1 del conocido modelo<o>S<i>(Open Systems Interconnection Model).
Un punto importante durante la fase 451 es que se utiliza el método CSMA/CR conocido, que permite el acceso simultáneo de las estaciones de abonado 10, 20, 30 al bus 40 sin que se destruya el mensaje de mayor prioridad 45, 46. Esto hace que sea relativamente fácil añadir estaciones de abonado de bus 10, 20, 30 adicionales al sistema de bus 1, lo cual es muy ventajoso.
Según el método CSMA/CR, en el bus 40 deben existir los llamados estados recesivos, que pueden ser sobrescritos por otras estaciones de abonado 10, 20, 30 con estados dominantes en el bus 40. En el estado recesivo existen en las estaciones individuales de abonado 10, 20, 30 condiciones de alta resistencia óhmica, lo que en combinación con los parásitos en el circuito del bus da como resultado constantes de tiempo más largas. Esto lleva a una limitación de la velocidad de bits máxima de la capa física CAN FD actual a alrededor de 2 megabits por segundo en el uso real de vehículos.
En la fase de datos 452, se envían además de una parte del campo de control 454, los datos de usuario de la trama CAN-XL o el mensaje 45 del campo de datos 455 así como el campo de suma de control 456 para la suma de control FCRC y también un campo DAS, que se utilizan para cambiar de la fase de datos 452 a la fase de arbitraje 451.
Un remitente del mensaje 45 sólo comienza a enviar bits de la fase de datos 452 al bus 40 cuando la estación de abonado 10 como remitente ha ganado el arbitraje y la estación de abonado 10 como remitente tiene por tanto acceso exclusivo para envío al bus 40 del sistema de bus 1.
En general, en el sistema de bus con CAN XL se pueden conseguir las siguientes propiedades diferentes en comparación con CAN o CAN FD:
a) Adoptar y, en su caso, adaptar propiedades probadas que sean responsables de la robustez y la facilidad de uso de CAN y CAN FD, en particular la estructura de la trama con identificador y arbitraje según los procedimientos CSMA/CR,
b) aumentar la velocidad neta de transferencia de datos, en particular hasta unos 10 megabits por segundo, c) aumentar el tamaño de los datos de carga útil por trama, en particular a alrededor de 4 kbytes o cualquier otro valor.
Como se muestra en la Figura 2, en la fase de arbitraje 451 la estación de abonado 10 utiliza parcialmente, en particular hasta el bit FDF (inclusive), un formato conocido de CAN/CAN-FD de acuerdo con<i>S<o>11898-1:2015 como primera fase de comunicación. Por el contrario, la estación de abonado 10 utiliza un formato CAN XL a partir del bit FDF en la primera fase de comunicación y en la segunda fase de comunicación, la fase de datos 452, que se describe a continuación.
En el presente ejemplo de realización, CAN XL y CAN FD son compatibles. Para conmutar del formato CAN FD al formato<c>A<n>XL se utiliza el bit res conocido de CAN FD, en lo sucesivo denominado bit XLF. Por lo tanto, los formatos de trama de CAN FD y CAN XL son los mismos hasta el bit de resolución. Un receptor sólo reconoce el formato en el que se envía la trama cuando recibe el bit de resolución. Una estación de abonado CAN XL, es decir, las estaciones de abonado 10, 30 en este caso, también soporta CAN FD.
Como alternativa a la trama 450 mostrada en la figura 2, en la que se usa un identificador con 11 bits, es opcionalmente posible un formato de trama extendido CAN XL, en el que se usa un identificador con 29 bits. Esto es idéntico al conocido formato de trama extendido CAN FD desde ISO11898-1:2015 hasta el bit FDF.
Según la figura 2, la trama 450 desde el bit SOF hasta el bit FDF inclusive es idéntica al formato de trama base CAN FD según ISO11898-1:2015. Por lo tanto, la estructura conocida no se explica más aquí. Los bits mostrados con una línea en negrita en su línea inferior en la figura 2 se envían en la trama 450 como dominante o '0'. Los bits mostrados con una línea en negrita en su línea superior en la figura 2 se envían en la trama 450 como recesivos o '1'. En la fase de datos CAN XL 452, se utilizan niveles '1' y '0' simétricos en lugar de niveles recesivos y dominantes.
En general, se aplican dos reglas de relleno diferentes al crear la trama 450. La regla de relleno dinámico de bits CAN FD se aplica hasta el bit XLF en el campo de control 454, de modo que se debe insertar un bit de relleno inverso después de 5 bits idénticos seguidos. Estos bits de relleno también se denominan bits de relleno dinámico. Se aplica una regla de relleno fija después de un bit resXL en el campo de control 454, de modo que se debe insertar un bit de relleno fijo después de un número fijo de bits. Alternativamente, en lugar de sólo un bit de relleno, se pueden insertar dos o más bits como bits de relleno fijos, como se describe con más detalle más adelante.
En la trama 450, el bit XLF sigue inmediatamente después del bit FDF, que corresponde en posición al "bit res" en el formato de trama base CAN FD, como se mencionó anteriormente. Si el bit XLF se envía como 1, es decir, recesivo, identifica la trama 450 como una trama CAN XL. Para una trama CAN FD, el dispositivo de control de comunicación 11 establece el bit XLF en 0, es decir, dominante.
El bit XLF es seguido en la trama 450 por un bit resXL, que es un bit dominante para uso futuro. El resXL debe enviarse como 0, es decir, dominante, para la trama 450. Sin embargo, si la estación de abonado 10 recibe un bit resXL como 1, es decir, recesivo, la estación de abonado receptor 10 entra, por ejemplo, en un estado de excepción de protocolo, como es el caso con un mensaje CAN FD 46 para res=1. Alternativamente, el bit resXL podría definirse exactamente de la manera opuesta, lo que significa que debe enviarse como 1, es decir, recesivo. En este caso, la estación del abonado receptor entra en el estado de excepción de protocolo si el bit resXL es dominante.
Después del bit resXL, sigue una secuencia ADS (Arbitration Data Switch) en la trama 450, en la que se codifica una secuencia de bits predeterminada. Esta secuencia de bits permite un cambio simple y seguro de la velocidad de bits de la fase de arbitraje 451 (velocidad de bits de arbitraje) a la velocidad de bits de la fase de datos 452 (velocidad de bits de datos). La secuencia de bits de la secuencia ADS se compone, por ejemplo, de un bit AL1 que se envía de forma dominante, es decir, 0. El bit AL1 es el último bit de la fase de arbitraje 451. En otras palabras, el bit AL1 es el último bit antes de cambiar a la fase de datos de bits cortos 452. La capa física en el dispositivo transmisor/receptor 12, 22, 32 se conmuta dentro del bit AL1. El bit AL1 también podría tener el valor 1, dependiendo de qué valor (0 o 1) sea más adecuado para conmutar la capa física en el dispositivo transmisor/receptor 12, 32 (transceptor). Los siguientes dos bits DH1 y DL1 ya se envían a la velocidad de bits de datos. Los bits DH1 y DL1 en CAN XL son, por tanto, bits cortos de la fase de datos 452.
Después de la secuencia ADS, sigue un campo PT en la trama 450, que identifica el contenido del campo de datos 455. El contenido indica qué tipo de información está contenida en el campo de datos 455. Por ejemplo, el campo PT indica si hay una trama de "Protocolo de Internet" (IP) en el campo de datos 455, o una trama de Ethernet tunelizada, o algo más.
Al campo PT le sigue un campo DLC en el que se inserta el código de longitud de datos (DLC = Código de longitud de datos), que indica el número de bytes en el campo de datos 455 de la trama 450. El código de longitud de datos (DLC) puede tomar cualquier valor desde 0 hasta la longitud máxima del campo de datos 455 o la longitud del campo de datos. En particular, si la longitud máxima del campo de datos es 2048 bits, el código de longitud de datos (DLC) requiere un número de 11 bits bajo el supuesto de que DLC = 0 significa una longitud de campo de datos con un número de 1 byte y DLC = 2047 significa una longitud del campo de datos con un número de 2048 bytes de longitud del campo de datos. Alternativamente, se podría permitir un campo de datos 455 de longitud 0, como con CAN. Por ejemplo, DLC = 0 codificaría la longitud del campo de datos con el número de 0 bytes. La longitud máxima del campo de datos codificable es, por ejemplo, 11 bits, entonces (2A11)-1 = 2047.
En el ejemplo de la figura 2, un campo SBC sigue al campo DLC en la trama 450. La abreviatura SBC significa "Stuff Bit Count". El campo SBC codifica el número de bits de relleno dinámico en el encabezado de la trama 450. El campo SBC puede, en principio, estar en cualquier punto del encabezado de la trama 450 entre el campo ADS y el final del encabezado de la trama 450. Es ventajoso colocar el campo SBC delante de una suma de verificación de encabezado HCRC de modo que el campo SBC pueda protegerse mediante la suma de verificación de encabezado HCRC.
Después del campo SBC, sigue una suma de verificación de encabezado HCRC en la trama 450 de la figura 2. La suma de verificación del encabezado HCRC es una suma de verificación para asegurar el encabezado de la trama 450, es decir, todos los bits relevantes desde el comienzo de la trama 450 con el bit SOF hasta el comienzo de la suma de verificación del encabezado HCRC, incluyendo todo el relleno dinámico y opcionalmente fijo hasta el inicio de la suma de comprobación del encabezado HCRC. Los bits relevantes sólo incluyen los bits del encabezado de la trama que tienen un valor modificable. En otras palabras, los bits relevantes no incluyen bits que siempre tienen un valor fijo en la trama 450. Estos bits con valores no modificables no están protegidos porque tienen un valor fijo. La longitud de la suma de comprobación del encabezado HCRC y, por tanto, del polinomio de la suma de comprobación según la comprobación por redundancia cíclica (CRC), debe seleccionarse en función de la distancia de Hamming deseada, que es una medida de la diversidad de cadenas de caracteres. La Mal o la distancia de Hamming indica qué tan grande es el número de posiciones diferentes en dos cadenas de caracteres o dos flujos de bits de la misma longitud. La palabra de datos que debe protegerse mediante la suma de comprobación del encabezado HCRC tiene más de 27 bits con un código de longitud de datos (DLC) de 11 bits. Por lo tanto, para lograr una distancia de Hamming de 6, el polinomio de suma de comprobación principal HCRC debe tener al menos 13 bits de longitud. El cálculo de la suma de control del encabezado HCRC se describe con más detalle con referencia a la figura 3.
Después de la suma de verificación del encabezado HCRC, el campo de datos 455 (Campo de datos) sigue en la trama 450. El campo de datos 455 consta de 1 a n bytes de datos, donde n es, por ejemplo, 2048 bytes o 4096 bytes o cualquier otro valor. Alternativamente es posible una longitud de campo de datos de 0. La longitud del campo de datos 455 se codifica en el campo DLC como se describió anteriormente.
Después del campo de datos 455, sigue una suma de verificación de trama FCRC en la trama 450. La suma de verificación de trama FCRC consta de los bits de la suma de verificación de trama FCRC. La longitud de la suma de control de la trama FCRC y, por tanto, del polinomio CRC, debe seleccionarse según la distancia de Hamming deseada. La suma de control de la trama FCRC asegura toda la trama 450. Alternativamente, sólo el campo de datos 455 está opcionalmente asegurado con la suma de verificación de trama FCRC.
Después de la suma de comprobación de trama FCRC, sigue la secuencia DAS (Conmutación de Arbitraje de Datos) en la trama 450, en la que se codifica una secuencia de bits predeterminada. Esta secuencia de bits permite un cambio simple y seguro de la velocidad de bits de datos de la fase de datos 452 a la velocidad de bits de arbitraje de la fase de arbitraje 451. Por ejemplo, la secuencia de bits comienza con los bits de datos DH2, DH3 que se envían como 1 y los bits de datos DL2, DL3 que se envían como 0, como se muestra en la figura 2. Estos son los últimos 4 bits de la fase de datos 452. El bit DL3 es, por tanto, el último bit corto, es decir, el último bit antes de pasar a la fase de arbitraje 451 con los bits largos. Los bits van seguidos de un bit AH1 con el valor 1 de la fase de arbitraje 451. La capa física en el dispositivo transmisor/receptor 12, 32 (transceptor) se conmuta dentro del bit a H1. Alternativamente, el bit AH1 podría tener el valor 0, dependiendo de qué valor (0 o 1) sea más adecuado para conmutar la capa física en el dispositivo transmisor/receptor 12, 32 (transceptor). Una estación de abonado RX 10, 30, que es sólo el destinatario de la trama 450, es decir, no ha enviado la trama recibida 450, utiliza la secuencia de bits DH2, DH3, DL2, DL3 no sólo para la sincronización, sino también como patrón de verificación de formato. Con esta secuencia de bits, la estación de abonado RX 10, 30 puede reconocer si está muestreando el flujo de bits recibido del bus 40 desplazado, por ejemplo, en 1 bit o 2 bits, etc. Según otro ejemplo, el campo DAS tiene tres bits, es decir, el bit<d>H2, el bit DL2 y un bit AH1. De los bits, el primero y el último bit se envían como 1 y el bit del medio se envía como 0.
En los ejemplos anteriores, la velocidad de bits se puede cambiar en el borde entre el bit DH3 y el bit DL2 o el bit DH2 y el bit DL2 en la estación de abonado receptor, se realizará la última sincronización antes de cambiar de la fase de datos 452 a la fase de arbitraje 451.
Así, en el presente ejemplo de realización, la secuencia DAS contiene un patrón de verificación de formato (FCP = Format Check Pattern), con el que las estaciones de abonado 10, 30, en particular sus módulos de verificación de trama 15, 35, pueden detectar un desplazamiento de detectar el flujo de bits en una trama recibida 450, incluso si las estaciones de abonado asociadas 10, 30 no son un transmisor, sino sólo un receptor de la trama 450. Cuanto más largo sea el patrón de bits del campo FCP, mayor o más fuerte será el desplazamiento que se puede detectar en la estación de abonado receptora 10, 30. El patrón de bits más ventajoso para la detección de desplazamiento contiene un número par de M bits, donde los primeros M/2 bits contienen un 1 y los siguientes M/2 bits contienen un 0. En el ejemplo de la Figura 2 con un campo FCP de 4 bits, los dos primeros bits se envían como recesivos, es decir, 1. Los dos últimos bits del campo FCP se envían como dominantes, es decir, 0. Así, el campo FCP con cuatro bits según la figura 2 se diferencia de los dos bits habituales al principio del campo FCP por los bits adicionales DH3, DL3. Sin embargo, el borde recesivo a dominante en el campo FCP de la figura 2 puede realizar la misma función que en un campo DAS que no tiene los bits DH3, DL3.
En general, es posible que en el campo FCP los primeros bits M/2 contengan un 0 y los siguientes bits M/2 contengan un 1. Se puede detectar un desplazamiento de M-1 con el campo FCP. Esto se describe con más detalle a continuación con referencia a la figura 3.
La secuencia DAS es seguida en la trama 450 por el campo de confirmación 457, que comienza con un campo RP. Un patrón de sincronización (patrón de sincronización) se almacena en el campo RP, lo que permite a una estación de abonado receptor 10, 30 reconocer el inicio de la fase de arbitraje 451 después de la fase de datos 452. El patrón de sincronización permite sincronizar las estaciones de abonado receptoras 10, 30 que no conocen la longitud correcta del campo de datos 455, por ejemplo debido a una suma de comprobación de cabecera HCRC incorrecta. Estas estaciones de abonado pueden enviar entonces un “acuse de recibo negativo” para informar de una recepción incorrecta. Esto es particularmente importante si CAN XL no permite tramas de error 47 (indicadores de error) en el campo de datos 455.
Después del campo RP, siguen varios bits en el campo de confirmación (campo ACK) 457 para confirmar o no la recepción correcta de la trama 450. En el ejemplo de la figura 2, se anticipan un bit ACK, un bit ACK-dlm, un bit N<a>C<k>y un bit NACK-dlm. El bit NACK y el bit NACK dlm son bits opcionales. Las estaciones de abonado receptoras 10, 30 envían el bit ACK como dominante si han recibido correctamente la trama 450. La estación de abonado emisor envía el bit ACK como recesivo. Por lo tanto, el bit enviado originalmente en el bus 40 en la trama 450 puede ser sobrescrito por las estaciones de abonado receptoras 10, 30. El bit ACK-dlm se envía como un bit recesivo, lo que sirve para separarlo de otros campos. El bit NACK y el bit NACK-dlm se utilizan para permitir que una estación de abonado receptor señale la recepción incorrecta de la trama 450 en el bus 40. La función de los bits es como la del bit ACK y el bit ACK-dlm.
Después del campo de confirmación (campo ACK) 457, sigue un campo de fin (EOF = Fin de trama) en la trama 450. La secuencia de bits del campo final (EOF) se usa para identificar el final de la trama 450. El campo final (EOF) garantiza que se envíen un número de 8 bits recesivos al final de la trama 450. Esta es una secuencia de bits que no puede ocurrir dentro de la trama 450. Como resultado, las estaciones de abonado 10, 20, 30 pueden reconocer de forma fiable el final de la trama 450.
El campo final (EOF) tiene una longitud que varía dependiendo de si se vio un bit dominante o un bit recesivo en el bit NACK. Si la estación de abonado emisor recibió el bit NACK como dominante, entonces el campo final (EOF) tiene un número de 7 bits recesivos. De lo contrario, el campo final (EOF) tiene sólo 5 bits recesivos de longitud.
Después del campo final (EOF), hay un espacio entre tramas (IFS - Inter Frame Space) en la trama 450, que no se muestra en la figura 2. Esta distancia entre tramas (IFS) está diseñada como CAN FD de acuerdo con ISO11898-1:2015.
La figura 3 muestra la estructura básica de la estación de abonado 10 con el dispositivo de control de comunicaciones 11, el dispositivo de transmisión/recepción 12 y el módulo de verificación de trama 15, que forma parte del dispositivo de control de comunicaciones 11. La estación de abonado 30 está construida de manera similar a la que se muestra en la figura 3, pero el módulo de verificación de trama 35 según la figura 1 está dispuesto por separado del dispositivo de control de comunicación 31 y del dispositivo de transmisión/recepción 32 según la figura 3. Por lo tanto, la estación de abonado 30 no se describirá por separado.
Como se muestra en la figura 3, la estación de abonado 10 presenta, además del dispositivo de control de comunicación 11 y el dispositivo de transmisión/recepción 12, un microcontrolador 13, al que está asignado el dispositivo de control de comunicación 11, y un sistema ASIC 16 (ASIC = circuito integrado específico de la aplicación), que alternativamente es un sistema básico del sistema (SBC), en el que se resumen varias funciones necesarias para un montaje electrónico de la estación de abonado 10. Además del dispositivo de transmisión/recepción 12, en el sistema ASIC 16 está instalado un dispositivo de suministro de energía 17, que suministra energía eléctrica al dispositivo de transmisión/recepción 12. El dispositivo de alimentación 17 suministra normalmente una tensión CAN_Supply de 5 V. Sin embargo, según las necesidades, el dispositivo de alimentación 17 puede suministrar otra tensión con un valor diferente. Adicional o alternativamente, el dispositivo de suministro de energía 17 puede estar diseñado como fuente de energía.
El módulo de verificación de trama 15 tiene un bloque de inserción 151 y un bloque de evaluación 152. El bloque de evaluación 152 usa un circuito eléctrico predeterminado 1521 para implementar un polinomio CRC predeterminado CRC_P para calcular la suma de verificación del encabezado HCRC. El bloque de evaluación 152 inicializa el cálculo de la suma de comprobación del encabezado HCRC para cada trama 450 con un valor inicial R_S. El módulo de verificación de trama 15, en particular su bloque de evaluación 152, se utiliza por lo tanto para formar y verificar la suma de verificación del encabezado y la suma de verificación de la trama, así como para verificar el número de bits de relleno dinámico. El módulo de prueba de trama 15 se describe con más detalle a continuación.
El dispositivo transmisor/receptor 12 también tiene además un módulo transmisor 121 y un módulo receptor 122. Incluso si a continuación siempre se hace referencia al dispositivo transmisor/receptor 12, es posible alternativamente proporcionar el módulo receptor 122 en un dispositivo separado externo al módulo transmisor 121. El módulo de transmisión 121 y el módulo de recepción 122 pueden construirse como un dispositivo de transmisión/recepción 22 convencional. El módulo de transmisión 121 puede presentar en particular al menos un amplificador operacional y/o un transistor. El módulo receptor 122 puede presentar en particular al menos un amplificador operacional y/o un transistor.
El dispositivo transmisor/receptor 12 está conectado al bus 40, más precisamente a su primer cable de bus 41 para CAN_H o CAN-XL_H y su segundo cable de bus 42 para CAN_L o CAN-XL_L. La alimentación de tensión para el dispositivo de suministro de energía 17 se realiza a través de al menos una conexión 43 para alimentar el primer y segundo conductor de bus 41,42 con energía eléctrica, en particular con la tensión de alimentación<c>An . La conexión a tierra o CAN_GND se realiza a través de una conexión 44. El primero y el segundo cable 41, 42 de bus están terminados con una resistencia terminal 49.
El primero y el segundo cable 41,42 de bus están conectados en el dispositivo de transmisión/recepción 12 no sólo al módulo de transmisión 121, que también se denomina transmisor, sino también al módulo de recepción 122, que también se denomina receptor, incluso si por simplicidad la conexión no se muestra en la figura 3.
Durante el funcionamiento del sistema de bus 1, el módulo de transmisión 121 convierte una señal de transmisión TXD o TxD desde el dispositivo de control de comunicación 11 en señales correspondientes CAN-XL_H y CAN-XL_L para los cables de bus 41, 42 y envía estas señales CAN-XL_H y CAN-XL_L a las conexiones para CAN_H y CAN_L en el bus 40.
El módulo de recepción 122 genera una señal de recepción RXD o RxD a partir de las señales CAN-XL_H y CAN-XL_L recibidas del bus 40 según la figura 4 y la transmite al dispositivo de control de comunicación 11, como se muestra en la figura 3. Con la excepción de un estado inactivo o en espera (inactivo o en espera), el dispositivo transmisor/receptor 12 con el módulo receptor 122 siempre escucha una transmisión de datos o mensajes 45, 46 en el bus 40 durante el funcionamiento normal, independientemente de si el dispositivo de transmisión/recepción 12 es el remitente del mensaje 45 o no.
Según el ejemplo de la figura 4, las señales CAN-XL_H y CAN-XL_L tienen, al menos en la fase de arbitraje 451, los niveles de bus dominante y recesivo 401, 402, como se conoce por CAN. En el bus 40 se forma una señal de diferencia VDIFF = CAN-XL_H - CAN-XL_L, que se muestra en la figura 5. Los distintos bits de la señal VDIFF con el tiempo de bit t_bt se pueden reconocer con una pinza de recepción de 0,7 V. En la fase de datos 452, los bits de las señales CAN-XL_H y CAN-XL_L se envían más rápido, es decir, con un tiempo de bit más corto t_bt, que en la fase de arbitraje 451. Las señales CAN-XL_H y CAN-XL_L se diferencian por lo tanto en la fase de datos 452 al menos en su velocidad de bits más rápida de las señales convencionales CAN_H y CAN_L.
La secuencia de estados 401, 402 para las señales CAN-XL_H, CAN-XL_L en la figura 4 y el resultante desarrollo de la tensión VDIFF de la figura 5 sólo sirve para ilustrar el funcionamiento de la estación de abonado 10. La secuencia de estados de datos para los estados de bus 401, 402 se puede seleccionar según sea necesario.
En otras palabras, en un primer modo de funcionamiento según la figura 4, el módulo de transmisión 121 genera un primer estado de datos como estado de bus 402 con diferentes niveles de bus para dos cables de bus 41, 42 de la línea de bus y un segundo estado de datos como un estado de bus 401 con el mismo nivel de bus para los dos cables de bus 41,42 de la línea de bus 40.
Además, el módulo de transmisión 121 envía los bits a una velocidad de bits más alta al bus 40 para los perfiles de tiempo de las señales CAN-XL_H, CAN-XL_L en un segundo modo operativo, que incluye la fase de datos 452. El CAN-XL_H y las señales CAN-XL_L también se pueden generar en la fase de datos 452 con una capa física diferente a<c>A<n>FD. Esto permite aumentar la velocidad de bits en la fase de datos 452 incluso más que con CAN FD.
El módulo de verificación de trama 15 de la Figura 3, en particular su bloque de inserción 151, se usa para insertar el campo SBC y el campo FCP en la trama 450 cuando la estación de abonado 10 actúa como remitente de la trama 450. Además, el módulo de verificación de trama 15 de la Figura 3, en particular su bloque de evaluación 152, está diseñado para usar el valor inicial predeterminado R_S para calcular la suma de verificación del encabezado HCRC cuando la estación de abonado 10 actúa como transmisor o receptor de la trama 450. El valor inicial predeterminado R_S también se denomina valor de inicialización (valor inicial). El bloque de evaluación 152 está diseñado para calcular la suma de verificación del encabezado HCRC basándose en este valor inicial R_S y para usar el polinomio CRC predeterminado CRC_P, como se mencionó anteriormente.
En la presente realización ejemplar, el módulo de verificación de trama 15 de la figura 3 está diseñado de tal manera que el campo SBC tiene tres bits, es decir, un BitO, un Bit1 y un Bit2. Como resultado, el campo SBC genera la menor sobrecarga de datos (overhead de datos) posible. En el campo SBC, el módulo de verificación de trama 15 ingresa el número de bits de relleno dinámico en los bits Bit0 y Bit1 y la paridad de los dos primeros bits en Bit2.
El bloque de inserción 151 inserta el campo SBC antes de la suma de comprobación del encabezado HCRC en la trama 450 en la presente realización. El módulo de verificación de trama 15, en particular el bloque de evaluación 152, también utiliza el campo SBC al formar la suma de verificación de encabezado HCRC así como todos los bits de relleno dinámico del encabezado de trama. Como resultado, se pueden detectar errores de clase 3 y 4.
El bloque de evaluación 152 en la estación de abonado receptor puede comparar el número de bits de relleno dinámico recibidos en el encabezado de trama con el valor en el campo SBC y así detectar una desviación, es decir, un error, en comparación con el número real en el encabezado de trama.
Por el contrario, el bloque de evaluación 152 omite los bits de relleno dinámico al formar la suma de comprobación de trama FCRC. Sin embargo, el bloque de evaluación 152 calcula los otros bits del encabezado de la trama, tales como el bit de ID, el bit RRS, etc., en la suma de comprobación de la trama FCRC. Por tanto, estos bits están doblemente protegidos. De este modo, los errores de clase 3 y 4 que se producen en relación con bits de relleno dinámicos se pueden detectar con una probabilidad muy alta con el módulo de prueba de trama 15, en particular con su bloque de evaluación 152.
Para calcular la suma de comprobación del encabezado HCRC, el bloque de evaluación 152 comienza desde el valor inicial predeterminado R_S. El valor inicial predeterminado R_S es R_S = (1,0,0,0,0,0,0,0,0,0,0,0,0,0). El bloque de evaluación 152 presenta como elemento de circuito del circuito eléctrico 1521, en particular, un registro de desplazamiento de realimentación correspondiente a las propiedades (coeficientes) del polinomio CRC CRC_P. El valor en el registro de desplazamiento se denominará en lo sucesivo Vector R. Con este registro de desplazamiento de realimentación se puede realizar un cálculo bit a bit de la suma de comprobación del encabezado. El bloque de evaluación 152 inicializa el registro de desplazamiento R con el valor inicial R_S al comienzo de cada trama. El único '1' en Vector R_S está en la posición menos significativa, también llamada posición LSB.
El valor inicial predeterminado R_S evita un caso de error B. En el caso de error B se produce una pérdida de bits (caída de bits) o una inserción de bits (inserción de bits) en el flujo de datos de la estación de abonado receptora (nodo receptor) con una condición de relleno dinámico, donde el valor temporal del cálculo CRC de la suma de verificación del encabezado HCRC es un vector cero R = "0...0". El caso de error B puede ocurrir debido a una resincronización incorrecta, en la que el nodo receptor ve un bit más o un bit menos de lo que realmente transmite el nodo emisor.
Un ejemplo de caída de bit es: 100000i se convierte en 100001 ejemplo de inserción de bit: 100001 se convierte en 100000i.
En estos ejemplos, i representa un bit de relleno dinámico con el valor 1.
Si al calcular la suma de control del encabezado HCRC, en el que se incluyen bits de relleno dinámico en el cálculo, el resultado intermedio en los ejemplos mencionados resulta en el vector R="0...0", manteniéndose el vector R="0... 0" en un valor de registro de desplazamiento de realimentación, siempre y cuando sólo se introduzcan 0 bits para el cálculo de CRC en el bloque de evaluación 152. En otras palabras, el resultado del cálculo de la suma de comprobación del encabezado HCRC sigue siendo el mismo si se introduce un 0 más o un 0 menos en el cálculo del CRC. Por tanto, el cálculo de CRC del bloque de evaluación 152 sin el valor inicial predeterminado R_S es ciego a este caso, el caso de error B, que tiene que ver con bits de relleno dinámicos. Incluso un solo error de este tipo significa que la verificación<c>R<c>no puede detectar el error.
El valor inicial predeterminado R_S = (1,0,0,0,0,0,0,0,0,0,0,0,0,0) se elige considerando que el caso de error B sólo pude producirse en los primeros 17 bits de una trama 450 enviada en serie. La razón de esto es que sólo en esta parte del encabezado de la trama 450 se utilizan bits de relleno dinámico. Esta primera parte del encabezado de la trama 450 consta de 14 bits (SOF, ID, RRS, IDE) más un máximo de 3 bits de relleno dinámico, es decir, un máximo de 17 bits en total. Por tanto, esta parte del encabezado de la trama 450 es muy corta.
Dado que el valor inicial predeterminado R_S = (1,0,0,0,0,0,0,0,0,0,0,0,0) es utilizado por el bloque de evaluación 152 para calcular la suma de comprobación del encabezado HCRC, no se puede presentar el error B. Este valor inicial predeterminado R_S significa que el vector R no puede adoptar el valor R = "0...0" en los primeros 14 a 17 bits. Aquí se aplica la limitación de 14 bits si no hay bits de relleno dinámico. La limitación de 17 bits se aplica si se producen bits de relleno dinámico. Este resultado para el valor del vector R se logra para cada secuencia de bits válida de una trama 450 CAN, es decir, por ejemplo, independientemente del valor del identificador (ID) transmitido en la trama 450. Esto utiliza la parte del encabezado de trama considerado por el bloque de evaluación 152 que puede tener teóricamente 2 elevado a 17 posibles secuencias de bits, pero de estas secuencias de bits teóricamente posibles algunas secuencias de bits no pueden ocurrir porque se insertan los bits de relleno dinámico.
Si los siguientes bits del encabezado de la trama 450 se incluyen en el cálculo de la suma de control del encabezado HCRC, es decir, los bits del identificador (ID), el bit RRS y los bits de relleno dinámico, entonces el valor inicial predeterminado R_S antes mencionado logra el efecto deseado, es decir, prevenir el caso de error B.
Alternativamente, los dos bits (SOF, IDE) con un valor constante también pueden incluirse en el cálculo de la suma de comprobación del encabezado HCRC. También en este caso se mantiene el efecto de prevención del caso de error B. Estos son todos los bits, incluidos los bits de relleno dinámico, comenzando con el bit SOF y hasta el bit de relleno dinámico después del bit IDE.
Como resultado, el valor inicial predeterminado R_S impide que el vector R tome el valor "0...0" como resultado del cálculo de la suma de control del encabezado HCRC durante los primeros 17 bits del encabezado.
Al calcular la suma de comprobación del encabezado HCRC, el bloque de evaluación 152 utiliza adicionalmente un polinomio CRC predeterminado CRC_P, que tiene una alta probabilidad de detección de errores. A continuación, se proporciona el polinomio CRC para la suma de comprobación del encabezado HCRC con una longitud CRC de 13. La longitud de la suma de comprobación del encabezado HCRC resultante es de 13 bits.
El polinomio generador de CRC CRC_P se puede representar en notación hexadecimal según varias convenciones. Por ejemplo, el polinomio CRC_P se puede representar de la siguiente manera
El polinomio generador de CRC CRC_P se puede escribir en notación hexadecimal según varias convenciones diferentes. Por ejemplo, el polinomio CRC_P se puede representar de la siguiente manera:
1. Como polinomio
x13 x12 x11 x8 x7 x6 x5 x2 x1 1
= (x 1) • (x12 x10 x9 x8 x6 x4 x3 x2 1)
2. Con todos los coeficientes (hexadecimal): 0x39E7 (desde el más significativo x13 hasta el menos significativo x0)
3. Representación normal (hexadecimal): 0x19E7 (se omite el coeficiente más significativo x13)
4. Representación de Koopman (hexadecimal): 0x1CF3 (se omite el coeficiente de menor valor x0)
El polinomio CRC predeterminado CRC_P mencionado anteriormente tiene propiedades particularmente buenas, a saber:
a) Distancia de Hamming: HD 6
b) número máximo de bits útiles que se pueden asegurar: 52
c) probabilidad de error residual alcanzable particularmente pequeña en comparación con otros polinomios CRC con HD6
De este modo, la estación de abonado receptora (nodo de recepción) 10, en particular su módulo de verificación de tramas 15 y más precisamente su bloque de evaluación 152, puede detectar con una alta probabilidad los errores de las clases 1 a 4, así como el caso de error B. Estos errores pueden detectarse con una probabilidad especialmente alta mediante el polinomio CRC seleccionado y su valor inicial R_S, como se describió anteriormente.
El bloque de evaluación 152 envía un mensaje correspondiente al dispositivo de control de comunicación 11. Esto permite descartar la trama recibida 450 en caso de error. Como resultado, el dispositivo de control de comunicación 11 puede enviar una trama de error 47 al bus 40.
Sin embargo, si se utiliza un campo "recuento de relleno", como el campo SBC, se reduce aún más la probabilidad de error residual. Como resultado, resulta aún menos probable que una trama 450 errónea sea aceptada como válida.
Por lo tanto, el uso del campo SBC "recuento de relleno", que codifica el número de bits de relleno dinámicos en la trama transmitida, es opcional.
Si no se requiere compatibilidad con CAN FD, se pueden utilizar los llamados bits de relleno fijo (bits de relleno que siempre están ahí) en lugar de bits de relleno dinámico. Sin bits de relleno dinámico, no pueden ocurrir errores de clase 3 y clase 4. Además, se puede omitir un campo "recuento de relleno", como el campo SBC. Esto da como resultado que se transmitan menos bits y que se tenga una complejidad aún menor.
Según una primera modificación del primer ejemplo de realización, el módulo de verificación de trama 15, en particular el bloque de evaluación 152, está diseñado para omitir los bits de relleno dinámico al formar la suma de verificación de encabezado HCRC. Por el contrario, el módulo de verificación de trama 15, en particular el bloque de evaluación 152, utiliza los bits de relleno dinámico al formar la suma de verificación de trama FCRC. Aquí, el módulo de verificación de trama 15, en particular el bloque de evaluación 152, calcula los otros bits del encabezado de trama, tales como el bit de ID, el bit RRS, etc., de nuevo en la suma de verificación de trama FCRC. De este modo también se pueden detectar con suficiente fiabilidad los errores especiales de las clases 3 y 4. La detección se puede informar con una trama de error 47 cuando se utilizan tramas de error 47.
Según una segunda modificación del primer ejemplo de realización, el módulo de verificación de trama 15, en particular el bloque de evaluación 152, está diseñado para no incluir los bits de relleno dinámico en ninguna de las sumas de verificación HCRC, FCRC. De esta manera también se pueden detectar con suficiente fiabilidad errores de las clases 3 y 4. La razón de esto es que los bits de relleno dinámico sólo pueden ocurrir desde el bit SOF hasta antes del bit FDF. Esta pequeña área puede contener un máximo de tres bits de relleno dinámico. Por consiguiente, el error de ráfaga, que es una perturbación bloque a bloque del flujo de bits y que puede generar un error de clase 3, tiene una longitud limitada. En consecuencia, existe una alta probabilidad de que el CRC del encabezado pueda detectar este error de ráfaga. La detección se puede informar con una trama de error 47 cuando se utilizan tramas de error 47.
Según una tercera modificación del primer ejemplo de realización, el bloque de inserción 151 está diseñado para tener el valor R_S = (0,0,1,1,0,0,0,0,0,0,0,0,0) como valor inicial predeterminado R_S para calcular la suma de comprobación del encabezado HCRC. El bloque de evaluación 152 inicializa el circuito eléctrico 1521, en particular el registro de desplazamiento R, etc., con el valor inicial R_S al comienzo de cada trama 450. Aquí, el '0' en el lado izquierdo del valor inicial predeterminado R_S es, por ejemplo, la posición LSB, es decir, en la posición de menor valor al calcular la suma de comprobación del encabezado HCRc utilizando el registro de desplazamiento de retroalimentación.
Si los siguientes bits del encabezado de la trama 450 se incluyen en el cálculo de la suma de verificación del encabezado HCRC, concretamente los bits del identificador (ID), el bit RRS y los bits de relleno dinámico, entonces dicho valor inicial predeterminado R_S de la presente modificación logra el efecto deseado, es decir, evitar el caso de error B.
La ventaja del valor inicial predeterminado R_S = (0,0,1,1,0,0,0,0,0,0,0,0,0) es que también se aplica a los dos bits siguientes al último bit de relleno dinámico utilizados en el cálculo de la suma de verificación del encabezado HCRC que garantiza que el vector R de la suma de verificación del encabezado HCRC no pueda asumir el valor R = “0...0”. Por ejemplo, estos dos bits siguientes son el bit 7 y el bit 6 del tipo de carga útil.
Según una cuarta modificación del primer ejemplo de realización, no es obligatorio que el polinomio generador de CRC CRC_P se utilice únicamente con uno de los valores iniciales predeterminados R_S antes mencionados. Alternativamente se puede utilizar otro valor inicial R_S, en el que el vector R de la suma de control del encabezado HCRC toma como resultado intermedio el valor R = "0...0". Con una modificación de este tipo se puede evitar el caso de error B con una probabilidad algo menor que en el primer ejemplo de realización. Es posible detectar el caso de error B a través del campo SBC.
La figura 6 muestra, según un segundo ejemplo de realización, otro ejemplo de la configuración del circuito eléctrico 1521 de la figura 3. Por lo demás, la estación de abonado 10 está construida de la misma manera en los dos ejemplos de realización.
Los flip-flops F0 a F12 en la Fig. 6 están todos construidos de la misma manera, incluso si los flip-flops F0 a F6 en la Fig. 6 tienen salidas reflejadas en comparación con los flip-flops F7 a F12 en la Fig. 6.
El circuito 1521 de la figura 6 está construido como un circuito lógico con puertas U1, U2, puertas XOR X0 a X12 y circuito multivibradores F0 a F12 con salidas Q y salidas inversas Q. Los flip-flops F0 a F12 en la Fig. 6 están todos construidos de la misma manera, incluso si los flip-flops F0 a F6 en la Fig. 6 tienen salidas reflejadas en comparación con los flip-flops F7 a F12 en la Fig. 6 para simplificar la representación de la conexión con la puerta U2. El circuito multivibrador F en la parte superior de la figura 6 muestra la conexión de la entrada D y el ingreso de señal de sincronización, así como las salidas Q, Q de los circuitos multivibradores F0 a F6 en la figura 6. El circuito multivibrador F en la parte inferior de la figura 6 muestra la conexión de la entrada D y el ingreso de señal de sincronización, así como las salidas Q, Q de los circuitos multivibradores F7 a F12 en la figura 6.
En el circuito 1521, los circuitos multivibradores individuales F0 a F12 se configuran o reinician primero usando la señal CRC_INIT de modo que el registro de desplazamiento, que consta de los circuitos multivibradores F0 a F12, contenga el valor inicial R_S. El flujo de datos en serie se introduce en el circuito 1521 como señal CRC_I. Además, se alimenta una señal de sincronización S_CLK al circuito 1521 y una señal de cálculo S_CC. La señal de cálculo S_CC indica si el circuito debe realizar un paso de cálculo o no. En una salida se emite una señal CRC_A, que se introduce en el campo HCRC para la suma de comprobación del encabezado HCRC cuando el circuito eléctrico 1521 es utilizado por la estación de abonado 10 como transmisor de una trama 450. Si se produce un error en el cálculo de la suma de comprobación del encabezado HCRC cuando se utiliza el circuito eléctrico 1521 para una trama 450 recibida desde la estación de abonado 10, se emite una señal S_E, como se describió previamente con respecto a la primera realización ejemplar.
Para calcular la suma de control del encabezado HCRC, los circuitos multivibradores F0 a F12 se llevan a su posición inicial mediante la señal CRC_INIT, más precisamente al valor inicial R_S. Por ejemplo, con el valor inicial R_S = (1,0,0,0,0,0,0,0,0,0,0,0,0) solo el circuito multivibrador F0 para el bit menos significativo (LSB) se establece en '1'. Sin embargo, todos los demás circuitos multivibradores F1 a F12 se establecen en el valor '0'.
Un paso de trabajo del circuito 1521 se activa combinando la señal de sincronización S_CLK con la señal S_CC. La operación Y se realiza con la puerta Y U1. No se realiza ningún paso de trabajo para los bits que no deberían incluirse en el cálculo de CRC. Para la suma de control de cabecera HCRC, estos son los bits que tienen un valor fijo, como se describió anteriormente con respecto al primer ejemplo de realización.
Desde el comienzo del campo de suma de control del encabezado HCRC, el transceptor 12 envía la señal CRC_A al bus 40 si la estación de abonado 10 es el transmisor de la trama 450. Si la estación de abonado 10 es sólo un receptor, es decir, no un transmisor, de la trama 450, la señal CRC_A no se envía, pero la señal S_E se usa para determinar si hay o no un error en la suma de comprobación en el campo HCRC de la trama 450.
La señal CRC_E se genera en el circuito de la figura 6 mediante una puerta NAND U2 de 13 canales, que une las salidas de circuitos multivibradores (Q). La señal CRC_E se transmite en una estación de abonado receptora 10 evaluado después de la recepción completa del HCRC.
Si no hay errores, todas las salidas Q de los CRC-FF al final del campo de suma de verificación del encabezado HCRC tienen el valor "0". En este caso la salida o señal CRC_E tiene el valor “0”.
Si una salida inversa Q tiene el valor '0', entonces la señal CRC_E indica el valor '1' para informar al dispositivo de control de comunicación 11 sobre el error.
La figura 7 muestra una trama 4500 según una tercera realización ejemplar, en la que CAN XL y CAN FD no son compatibles. En esta realización ejemplar, la trama 4500 y, por tanto, el formato de trama CAN XL difieren de la trama 450 de la figura 2. Aquí sólo se describen las diferencias con la trama 450 de la figura 2. Por lo demás, las tramas 450, 4500 de las dos realizaciones ejemplares son las mismas.
En general, cuando se genera la trama 4500 según la presente realización ejemplar, sólo se usa la regla de relleno fijo, de modo que se debe insertar un bit de relleno fijo después de un número fijo de bits. Alternativamente, en lugar de sólo un bit de relleno, se pueden insertar dos o más bits como bits de relleno fijos. Esto conduce a una longitud de trama constante o una longitud constante de la trama 4500 si se conoce el valor del código de longitud de datos (DLC). Esto evita varios problemas causados por bits de relleno dinámicos. En consecuencia, no es necesario un campo SBC en el encabezado de la trama 4500.
En la trama 4500 según la presente realización ejemplar, el identificador (ID) ya no está limitado a un número de 11 bits o 29 bits como en CAN FD. El número k de bits del identificador (ID) se puede elegir libremente. Sin embargo, el número k también puede establecerse en un valor fijo. Para una velocidad de datos neta alta, tiene sentido un ID con k = 8 bits. Esto es suficiente para que cada estación de abonado 10, 20, 30 del sistema de bus 1 tenga un número suficiente de prioridades de acceso al bus. Por supuesto, se puede seleccionar otra persona para k, dependiendo de las necesidades y del número de prioridades diferentes en el sistema de bus 1.
Los bits RRS, IDE, FDF, XLF de la trama 450 de la FIG. 2 ya no son necesarios en la trama 4500 y se omiten. Esto ahorra 4 bits para reducir el exceso de trama. Esto aumenta la velocidad de datos neta en el sistema de bus 1.
El campo final (EOF) en la trama 4500 solo tiene un número de cinco bits si el bit NACK es dominante. Sin embargo, si el bit NACK es recesivo, el campo final (EOF) tiene un número de tres bits. Esto asegura que se envíen seis bits recesivos al final de la trama 4500. Este número de bits recesivos no puede ocurrir en ningún otro lugar de una trama válida 4500 si se inserta un bit de relleno fijo después de cinco bits idénticos en la fase de arbitraje 451. Alternativamente, podría tener más de seis bits. En particular, el número de bits EOF debe adaptarse al número de bits tras los cuales se inserta un bit de relleno fijo.
La distancia entre tramas (IFS) no requiere una longitud mínima en la trama 4500. En particular, la distancia entre tramas (IFS) puede tener una longitud de 0. En tal caso, se envían dos tramas 4500 sin interrupciones, una tras otra. Sin embargo, una separación entre tramas (IFS) con un número de, por ejemplo, 1 bit también es útil para aumentar la robustez del sistema de bus 1 en comparación con el caso mencionado anteriormente. Gracias a los ahora siete bits recesivos entre dos tramas 4500, una nueva estación de abonado en el bus 40 puede sincronizarse de forma más fiable.
Todas las configuraciones descritas anteriormente de las estaciones de abonado 10, 20, 30, del sistema de bus 1 y del procedimiento realizado en el mismo se pueden utilizar individualmente o en todas las combinaciones posibles. En particular, todas las características de los ejemplos de realización descritos anteriormente y/o sus modificaciones pueden combinarse de cualquier manera. De forma adicional o alternativa son especialmente concebibles las siguientes modificaciones.
Aunque la invención se ha descrito anteriormente utilizando el ejemplo del sistema de bus CAN, la invención se puede utilizar en cualquier red de comunicación y/o método de comunicación en el que se utilicen dos fases de comunicación diferentes, en las que los estados del bus que se generan para las diferentes fases de comunicación difieren. En particular, la invención se puede utilizar en el desarrollo de otras redes de comunicación en serie, como Ethernet y/o Ethernet 100 Base-T1, sistemas de bus de campo, etc.
En particular, el sistema de bus 1 según los ejemplos de realización puede ser una red de comunicación en la que se pueden transmitir datos en serie con dos velocidades de bits diferentes. Es ventajoso, pero no un requisito indispensable, que en el sistema de bus 1 se garantice un acceso exclusivo y sin colisiones de una estación de abonado 10, 20, 30 a un canal común, al menos durante determinados periodos de tiempo.
El número y la disposición de las estaciones de abonado 10, 20, 30 en el sistema de bus 1 de los ejemplos de realización son arbitrarios. En particular, se puede prescindir de la estación de abonado 20 en el sistema de bus 1. Es posible que una o varias de las estaciones de abonado 10 o 30 estén presentes en el sistema de bus 1. Es imaginable que todas las estaciones de abonado en el sistema de bus 1 estén diseñadas de la misma manera, es decir, que sólo estén presentes la estación de abonado 10 o sólo la estación de abonado 30.
Claims (11)
1. Estación de abonado (10; 30) para un sistema de bus en serie (1), con
un dispositivo de control de comunicación (11; 31) para controlar la comunicación entre la estación de abonado (10; 30) y al menos otra estación de abonado (10; 20; 30) del sistema de bus (1), y
un dispositivo transmisor/receptor (12; 32), que está diseñado para transmitir en serie una señal de transmisión (TXD) generada por el dispositivo de control de comunicación (11; 31) a un bus (40) del sistema de bus (1), y para recibir en serie señales desde el bus (40) del sistema de bus (1),
en donde el dispositivo de control de comunicación (11; 31) está diseñado para generar la señal de transmisión (TXD) de acuerdo con una trama (450) y en la trama (450) una suma de verificación de encabezado (HCRC) para insertar, en la que solo se incluyen bits de un encabezado de trama, que está dispuesta delante de un campo de datos (455) que está destinado a datos útiles en la trama (450),
caracterizado porque el dispositivo de control de comunicación (11; 31) está diseñado en el encabezado de la trama para insertar bits de relleno dinámicos de tal manera que se inserta un bit de relleno inverso en el flujo de bits de la trama (450) después de 5 bits idénticos seguidos, y
en el que el dispositivo de control de comunicación (11; 31) está diseñado para calcular la suma de comprobación del encabezado (HCRC) para utilizar un valor inicial predeterminado (R_S) y un polinomio de suma de comprobación predeterminado (CRC_P), con el que se obtiene el resultado intermedio del cálculo de la suma de comprobación del encabezado (HCRC) para la parte del encabezado de la trama en la que se utilizan bits de relleno dinámico diferentes a un vector cero.
2. Estación de abonado (10; 30) según la reivindicación 1, en la que el valor inicial predeterminado (R_S) es igual a (1,0,0,0,0,0,0,0,0,0,0,0, 0).
3. Estación de abonado (10; 30) según la reivindicación 1, en la que el valor inicial predeterminado (R_S) es igual a (0,0,1,1,0,0,0,0,0,0,0,0, 0).
4. Estación de abonado (10; 30) según una de las reivindicaciones anteriores, en la que el dispositivo de control de comunicación (11; 31) está diseñado para utilizar al menos un elemento de conmutación (F0 a F12) de un circuito eléctrico (1521) para calcular la suma de verificación del encabezado (HCRC), que se puede establecer en el valor inicial predeterminado (R_S), y que implementa un polinomio de suma de verificación predeterminado (CRC_P).
5. Estación de abonado (10; 30) según una de las reivindicaciones anteriores, en la que el polinomio de suma de control predeterminado (CRC_P) es igual a x13 x12 x11 x8 x7 x6 x5 x2 x1 1.
6. Estación de abonado (10; 30) según una de las reivindicaciones anteriores, en la que el dispositivo de control de comunicación (11; 31) está diseñado para insertar bits de relleno dinámicos sólo en una primera parte del encabezado de trama.
7. Estación de abonado (10; 30) según una de las reivindicaciones anteriores,
en el que el dispositivo de control de comunicación (11; 31) está diseñado para insertar un campo (SBC) en la trama (450) en la que se codifica el número de bits de relleno dinámico, y
en el que el dispositivo de control de comunicación (11; 31) está diseñado para insertar al menos un campo (SBC) delante del campo de datos (455) en el que se insertan los datos de usuario de la trama (450).
8. Estación de abonado (10; 30) según una de las reivindicaciones anteriores, en la que el dispositivo de transmisión/recepción (12; 32) para transmitir en serie una señal de transmisión (TXD) generada por el dispositivo de control de comunicación (11; 31) en un bus (40) del sistema de bus (1) está diseñado de tal manera que para un mensaje (45) que se intercambia entre estaciones de abonado (10, 20, 30) del sistema de bus (1), el tiempo de bit (t_bt) enviada al bus (40) en la primera fase de comunicación (451) se puede distinguir de un tiempo de bit (t_bt) de una señal enviada en una segunda fase de comunicación (452).
9. Estación de abonado (10; 30) según una de las reivindicaciones anteriores,
en la que la trama (450) formada para el mensaje (45) está construida para que sea compatible con CAN FD, y en una primera fase de comunicación (451) se negocia cuál de las estaciones de abonado (10, 20, 30) del sistema de bus (1) en una segunda fase de comunicación (452) posterior obtiene al menos temporalmente acceso exclusivo y libre de colisiones al autobús (40).
10. Sistema de bus (1), con
un bus (40) y al menos dos estaciones de abonado (10; 20; 30), que están conectadas entre sí a través del bus (40) de tal manera que pueden comunicarse entre sí en serie y de las cuales al menos una estación de abonado (10; 30) es una estación de abonado (10; 30) según una de las reivindicaciones anteriores.
11. Método de comunicación en un sistema de bus serie (1), donde el método se lleva a cabo con una estación de abonado (10; 30) del sistema de bus (1), que tiene un dispositivo de control de comunicación (11; 31) y un dispositivo de transmisión/recepción (12; 32), teniendo el método los pasos de,
controlar, con el dispositivo de control de comunicación (11; 31), una comunicación entre la estación de abonado (10; 30) y al menos otra estación de abonado (10; 20; 30) del sistema de bus (1), y
transmitir con el transmisor /dispositivo receptor (12; 32), una señal de transmisión (TXD) generada por el dispositivo de control de comunicación (11; 31) a un bus (40) del sistema de bus (1), utilizándose el dispositivo transmisor/receptor (12; 32) también para recibir en serie señales desde el bus (40) del sistema de bus (1), generando, con el dispositivo de control de comunicación (11; 31), la señal de transmisión (TXD) según una trama (450),
donde el dispositivo de control de comunicación (11; 31) inserta en la trama (450) una suma de verificación de encabezado (HCRC), en la que solo se incluyen bits de un encabezado de trama, que está dispuesta delante de un campo de datos (455) que está destinado a datos de usuario en la trama (450),
caracterizado porque el dispositivo de control de comunicación (11; 31) inserta bits de relleno dinámicos en el encabezado de la trama de tal manera que después de 5 bits idénticos seguidos, se inserta un bit de relleno inverso en el flujo de bits de la trama (450), y
donde el dispositivo de control de comunicación (11; 31) utiliza un valor inicial predeterminado (R_S) y un polinomio de suma de control predeterminado (CRC_P) para el cálculo de la suma de control del encabezado (HCRC), con el que se obtiene el resultado intermedio del cálculo de la suma de control del encabezado (HCRC) para la parte de la trama del encabezado en el que se utilizan bits de relleno dinámico diferente a un vector cero.
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| DE102019218715.3A DE102019218715A1 (de) | 2019-12-02 | 2019-12-02 | Teilnehmerstation für ein serielles Bussystem und Verfahren zur Kommunikation in einem seriellen Bussystem |
| PCT/EP2020/084122 WO2021110675A1 (de) | 2019-12-02 | 2020-12-01 | Teilnehmerstation für ein serielles bussystem und verfahren zur kommunikation in einem seriellen bussystem |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| ES2982992T3 true ES2982992T3 (es) | 2024-10-21 |
Family
ID=73695024
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| ES20817300T Active ES2982992T3 (es) | 2019-12-02 | 2020-12-01 | Estación de suscripción a un sistema de bus en serie y método de comunicación en dicho sistema |
Country Status (9)
| Country | Link |
|---|---|
| US (1) | US11962410B2 (es) |
| EP (1) | EP4070511B1 (es) |
| JP (1) | JP7462044B2 (es) |
| KR (1) | KR102909545B1 (es) |
| CN (1) | CN114731308B (es) |
| DE (1) | DE102019218715A1 (es) |
| ES (1) | ES2982992T3 (es) |
| TW (1) | TWI851854B (es) |
| WO (1) | WO2021110675A1 (es) |
Families Citing this family (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| DE102019218714A1 (de) * | 2019-12-02 | 2021-06-02 | Robert Bosch Gmbh | Teilnehmerstation für ein serielles Bussystem und Verfahren zur Kommunikation in einem seriellen Bussystem |
| US12506638B2 (en) * | 2023-08-11 | 2025-12-23 | Hyundai Motor Company | Synching control area network (CAN) databases using remote transmission requests to control CAN communication in a vehicle |
Family Cites Families (15)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2008522493A (ja) | 2004-11-24 | 2008-06-26 | クゥアルコム・インコーポレイテッド | デジタルデータインタフェースデバイス |
| JPWO2012132217A1 (ja) * | 2011-03-31 | 2014-07-24 | ルネサスエレクトロニクス株式会社 | Can通信システム、can送信装置、can受信装置、およびcan通信方法 |
| RU2597501C2 (ru) | 2011-06-29 | 2016-09-10 | Роберт Бош Гмбх | Способ и устройство для последовательной передачи данных с гибким размером сообщений и переменной длительностью бита |
| RU2603534C2 (ru) * | 2011-06-29 | 2016-11-27 | Роберт Бош Гмбх | Способ и устройство для последовательной передачи данных с гибким размером сообщений и переменной длительностью бита |
| CN202194654U (zh) * | 2011-07-11 | 2012-04-18 | 中国石油集团长城钻探工程有限公司 | 基于FlexRay总线的测井总线系统 |
| DE102012224024A1 (de) * | 2012-12-20 | 2014-06-26 | Robert Bosch Gmbh | Datenübertragung unter Nutzung eines Protokollausnahmezustands |
| KR101578065B1 (ko) * | 2013-11-01 | 2015-12-16 | (주)티에이치엔 | Can 패킷을 패키징하는 방법과 이를 이용하는 장치들 |
| DE102013020522A1 (de) * | 2013-12-11 | 2015-06-11 | Lukusa Didier Kabulepa | Kommunikationssystem, Testeinrichtung und Vorrichtung zur Prüfung von fehlererkennenden Sicherheitsmechanismen eines Kommunikationsteilnehmers |
| JP6267596B2 (ja) * | 2014-07-14 | 2018-01-24 | 国立大学法人名古屋大学 | 通信システム、通信制御装置及び不正情報送信防止方法 |
| DE102015209201A1 (de) | 2014-09-03 | 2016-03-03 | Robert Bosch Gmbh | Verfahren zur seriellen Übertragung eines Rahmens über ein Bussystem von einem Sender zu mindestens einem Empfänger und Teilnehmerstation für ein Bussystem |
| DE102015209196A1 (de) | 2014-09-08 | 2016-03-10 | Robert Bosch Gmbh | Verfahren zur seriellen Übertragung eines Rahmens über ein Bussystem von einem Sender zu mindestens einem Empfänger und Teilnehmern eines Bussystems |
| WO2016054245A1 (en) * | 2014-09-30 | 2016-04-07 | Concio Holdings LLC | Confirming data accuracy in a distributed control system |
| DE102017211860B3 (de) * | 2017-07-11 | 2018-09-20 | Volkswagen Aktiengesellschaft | Verfahren zur Übertragung von Daten über einen seriellen Kommunikationsbus, entsprechend ausgelegte Busschnittstelle sowie entsprechend ausgelegtes Computerprogramm |
| WO2019030214A1 (de) * | 2017-08-08 | 2019-02-14 | Volkswagen Aktiengesellschaft | Verfahren zur übertragung von daten über einen seriellen kommunikationsbus, entsprechend ausgelegte busschnittstelle sowie entsprechend ausgelegtes computerprogramm |
| JP7030742B2 (ja) * | 2019-05-27 | 2022-03-07 | 本田技研工業株式会社 | 通信システム、および通信制御方法 |
-
2019
- 2019-12-02 DE DE102019218715.3A patent/DE102019218715A1/de active Pending
-
2020
- 2020-12-01 ES ES20817300T patent/ES2982992T3/es active Active
- 2020-12-01 US US17/777,369 patent/US11962410B2/en active Active
- 2020-12-01 CN CN202080083437.XA patent/CN114731308B/zh active Active
- 2020-12-01 JP JP2022532780A patent/JP7462044B2/ja active Active
- 2020-12-01 EP EP20817300.5A patent/EP4070511B1/de active Active
- 2020-12-01 WO PCT/EP2020/084122 patent/WO2021110675A1/de not_active Ceased
- 2020-12-01 KR KR1020227022450A patent/KR102909545B1/ko active Active
- 2020-12-02 TW TW109142420A patent/TWI851854B/zh active
Also Published As
| Publication number | Publication date |
|---|---|
| WO2021110675A1 (de) | 2021-06-10 |
| CN114731308B (zh) | 2024-02-13 |
| EP4070511C0 (de) | 2024-04-17 |
| EP4070511B1 (de) | 2024-04-17 |
| TWI851854B (zh) | 2024-08-11 |
| JP2023503377A (ja) | 2023-01-27 |
| JP7462044B2 (ja) | 2024-04-04 |
| KR102909545B1 (ko) | 2026-01-09 |
| TW202133597A (zh) | 2021-09-01 |
| US20220407619A1 (en) | 2022-12-22 |
| EP4070511A1 (de) | 2022-10-12 |
| US11962410B2 (en) | 2024-04-16 |
| DE102019218715A1 (de) | 2021-06-02 |
| CN114731308A (zh) | 2022-07-08 |
| KR20220101741A (ko) | 2022-07-19 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| ES2727623T3 (es) | Procedimiento para la transmisión en serie de una trama mediante un sistema de bus, desde un emisor hacia al menos un receptor, y participantes de un sistema de bus | |
| ES3055159T3 (en) | Subscriber station for a serial bus system, and method for communicating in a serial bus system | |
| ES2957415T3 (es) | Estación de abonado para un sistema de bus serie y procedimiento de comunicación en un sistema de bus serie | |
| ES3056893T3 (en) | Subscriber station for a serial bus system and method for communication in a serial bus system | |
| CN114144997B (zh) | 用于串行总线系统的用户站的错误识别测试装置和用于对在串行总线系统中的通信中用于错误识别的机制进行测试的方法 | |
| ES2875282T3 (es) | Estación suscriptora en un sistema de bus y procedimiento para operar una estación suscriptora | |
| ES2982992T3 (es) | Estación de suscripción a un sistema de bus en serie y método de comunicación en dicho sistema | |
| ES2978382T3 (es) | Estación de suscripción a un sistema de bus serial y método de comunicación en un sistema de bus serial | |
| ES2980705T3 (es) | Estación de abonado para un sistema de bus serie y procedimiento para la comunicación en un sistema de bus serie | |
| JP7345640B2 (ja) | シリアルバスシステム用の加入者局およびシリアルバスシステムでの通信方法 | |
| ES2981928T3 (es) | Estación participante para un sistema de bus en serie y procedimiento para la comunicación en un sistema de bus en serie | |
| CN115552848B (zh) | 用于串行总线系统的用户站和用于在串行总线系统中通信的方法 |