ES2548408T3 - Método y dispositivo para la transmisión en serie de datos con un tamaño flexible de mensajes y una longitud de bits variable - Google Patents

Método y dispositivo para la transmisión en serie de datos con un tamaño flexible de mensajes y una longitud de bits variable Download PDF

Info

Publication number
ES2548408T3
ES2548408T3 ES12730924.3T ES12730924T ES2548408T3 ES 2548408 T3 ES2548408 T3 ES 2548408T3 ES 12730924 T ES12730924 T ES 12730924T ES 2548408 T3 ES2548408 T3 ES 2548408T3
Authority
ES
Spain
Prior art keywords
identification
bit
data
bus
edl
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
Application number
ES12730924.3T
Other languages
English (en)
Inventor
Florian Hartwich
Christian Horst
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Robert Bosch GmbH
Original Assignee
Robert Bosch GmbH
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Robert Bosch GmbH filed Critical Robert Bosch GmbH
Application granted granted Critical
Publication of ES2548408T3 publication Critical patent/ES2548408T3/es
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4282Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
    • G06F13/4291Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus using a clocked protocol
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4282Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/0078Avoidance of errors by organising the transmitted data in a format specifically designed to deal with errors, e.g. location
    • H04L1/0083Formatting with frames or packets; Protocol or part of protocol for error control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/40169Flexible bus arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L2001/0092Error control systems characterised by the topology of the transmission link
    • H04L2001/0094Bus
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L2012/40208Bus networks characterized by the use of a particular bus standard
    • H04L2012/40215Controller Area Network CAN
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/36Flow control; Congestion control by determining packet size, e.g. maximum transfer unit [MTU]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Small-Scale Networks (AREA)
  • Communication Control (AREA)

Abstract

Método para la transmisión en serie de datos en un sistema de bus con al menos dos participantes del bus que intercambian mensajes mediante el bus, donde los mensajes enviados presentan una estructura lógica según la norma CAN ISO 11898-1, caracterizado porque al estar presente una primera identificación (EDL), desviándose de la norma CAN ISO 11898-1, el campo de control de los mensajes puede comprender más de seis bits y al estar presente la primera identificación (EDL), desviándose de la norma CAN ISO 11898-1, el campo de control de los mensajes puede comprender más de ocho bytes, donde para determinar el tamaño del campo de datos los valores de los cuatro bits del código de longitud de datos se interpretan desviándose al menos parcialmente de la norma CAN ISO 11898-1, y porque al estar presente una segunda identificación (BRS), la longitud de bits para al menos un área predeterminada o predeterminable dentro del mensaje asume un valor más reducido en comparación con la longitud de bits utilizada antes de estar presente la segunda identificación, donde el área comienza como muy pronto con la segunda identificación y como muy tarde con el delimitador de CRC, donde la segunda identificación (BRS) sólo aparece al estar presente la primera identificación (EDL) y se efectúa en el campo de control de los mensajes que comprende más de seis bits, desviándose de la norma CAN ISO 11898-1.

Description

5
10
15
20
25
30
35
40
45
50
E12730924
25-09-2015
DESCRIPCIÓN
Método y dispositivo para la transmisión en serie de datos con un tamaño flexible de mensajes y una longitud de bits variable.
Estado del arte
La presente invención hace referencia a un método, así como a un dispositivo, para la transmisión en serie de datos entre al menos dos participantes en un sistema de bus en serie.
A modo de ejemplo, por las normas de la clase ISO 11898-1 a -5 se conoce la red de controladores de área (Controller Area Network, CAN), así como una ampliación de CAN denominada como "CAN activado en el tiempo" ("Time Triggered CAN", TTCAN), denominada a continuación también como norma CAN. El método de control de acceso a los medios utilizado en CAN se basa en un arbitraje de bit a bit. En el arbitraje de bit a bit, varias estaciones participantes pueden transmitir datos al mismo tiempo mediante el canal del sistema bus, sin que por ello la transmisión de datos resulte perjudicada. Al enviar un bit mediante el canal, las estaciones participantes pueden determinar además el estado lógico (0 ó 1) del canal. Si el valor del bit enviado no corresponde al estado lógico determinado del canal, entonces la estación participante finaliza el acceso al canal. En el caso de CAN, el arbitraje bit a bit se efectúa generalmente mediante un identificador dentro de un mensaje que debe ser transmitido mediante el canal. Después de que una estación participante ha enviado el identificador completamente al canal, dicha estación advierte que tiene acceso exclusivo al canal. De este modo, el final de la transmisión del identificador corresponde a un inicio de un intervalo de autorización, dentro del cual la estación participante puede utilizar el canal de forma exclusiva. De acuerdo con la especificación del protocolo de CAN, otras estaciones participantes no pueden acceder mientras tanto al canal, es decir enviar datos al canal, hasta que la estación participante emisora haya transmitido un campo de suma de comprobación (campo CRC) del mensaje. De este modo, un punto de finalización de la transmisión del campo CRC corresponde a un final del intervalo de autorización.
A través del arbitraje bit a bit, mediante el canal, se logra por tanto una transmisión no destructiva de aquel mensaje que fue obtenido por el método de arbitraje. Los protocolos de CAN son especialmente adecuados para transmitir avisos breves bajo condiciones en tiempo real, donde a través de la asignación adecuada de los identificadores puede asegurarse que mensajes particularmente importantes casi siempre sean obtenidos en el arbitraje y sean enviados de forma exitosa.
Con las crecientes comunicaciones en redes de los vehículos de motor modernos y la introducción de sistemas adicionales para mejorar por ejemplo la seguridad de conducción o el confort de conducción han crecido las demandas en cuanto a la cantidad de datos que deben ser transmitidos y a los tiempos de latencia admisibles durante la transmisión. A modo de ejemplo pueden mencionarse sistemas de control dinámico de conducción, como por ejemplo el programa electrónico de estabilidad ESP, los sistemas de asistencia al conductor, como por ejemplo el control de distancia automático ACC o sistemas de información para el conductor, como por ejemplo la detección de señales de tráfico (véanse por ejemplo descripciones en el manual "Bosch Kraftfahrtechnisches Handbuch", edición 27, 2011, de la editorial Vieweg+Teubner).
En la solicitud DE 103 11 395 A1 se describe un sistema en donde una comunicación asíncrona, en serie, puede efectuarse de forma alternativa mediante un protocolo CAN físico asimétrico o mediante el protocolo CAN físico simétrico, de manera que con ello es posible alcanzar una tasa de transmisión de datos o una seguridad de la transmisión de datos más elevadas para la comunicación asíncrona.
En la solicitud DE 10 2007 051 657 A1 se sugiere aplicar una transmisión de datos asíncrona, rápida, no acorde a CAN, en las ventanas temporales exclusivas del protocolo TTCAN para incrementar la cantidad de datos transmitida.
G. Cena y A. Valenzano, en "Overclocking of controller area networks" (Electronics Letters, Vol. 35, Nº 22 (1999), S. 1924) tratan el tema de los efectos de un incremento de la frecuencia (overclocking) del bus en algunas partes de los mensajes a la tasa de datos alcanzada de forma efectiva.
En la solicitud US 2010/158045 se describe un método según el preámbulo de la reivindicación 1.
Puede observarse que el estado del arte no arroja resultados satisfactorios en todos los aspectos.
Descripción de la invención
A continuación, la presente invención con sus ventajas se describen mediante dibujos y ejemplos de ejecución. El objeto de la invención no se limita a los ejemplos de ejecución representados y explicados.
Ventajas de la invención
10
15
20
25
30
35
40
45
50
55
E12730924
25-09-2015
La presente invención proporciona un método para la transmisión en serie de datos en un sistema de bus con al menos dos participantes del bus que intercambian mensajes mediante el bus, donde los mensajes enviados presentan una estructura lógica según la norma CAN ISO 11898-1. Es decir, que los mensajes que transmiten datos están constituidos en base a un bit "de inicio de trama" conductor individual y a una sucesión de campos (field) en base a varios bits, a saber, el campo de arbitraje, el campo de control, el campo de datos, el campo CRC, el campo de acuse de recibo y el campo de fin de trama.
El método se caracteriza porque al estar presente una primera identificación, desviándose de la norma CAN ISO 11898-1, el campo de control de los mensajes comprende más de seis bits y, desviándose de la norma CAN ISO 11898-1, el campo de control de los mensajes puede comprender más de ocho bytes, donde para determinar el tamaño del campo de datos los valores de los cuatro bits del código de longitud de datos se interpretan desviándose al menos parcialmente de la norma CAN ISO 11898-1. Además, al estar presente una segunda identificación, la longitud de bits para al menos un área predeterminada o predeterminable dentro del mensaje asume un valor más reducido en comparación con la longitud de bits utilizada antes de estar presente la segunda identificación, donde el área comienza como muy pronto con la segunda identificación y como muy tarde con el delimitador de CRC, donde la segunda identificación sólo aparece al estar presente la primera identificación y se efectúa en el campo de control de los mensajes que comprende más de seis bits, desviándose de la norma CAN ISO 11898-1. En comparación con los métodos conocidos por el estado del arte, lo mencionado presenta la ventaja de que a través de la conmutación en dos etapas -por una parte del tamaño del campo de datos y, por otra parte, de la longitud de datos en partes del mensaje -respectivamente con una identificación separada pueden aprovecharse también de forma separada las ventajas de las dos medidas, dependiendo de la situación. A modo de ejemplo, incluso cuando debido a la topología del bus no es posible conmutar a una longitud de bits más reducida, son enviados mensajes con una cantidad de datos más elevada. También en el caso de que se produzcan errores en los mensajes con una longitud de bits reducida puede conmutarse a la longitud de bits normal sin renunciar a las ventajas de la ampliación del área de datos.
Se considera especialmente ventajoso que la primera identificación (EDL) se efectúe a través de un bit recesivo en el campo de control, puesto que allí se encuentran disponibles bits que siempre se envían de forma dominante en mensajes según la norma CAN. Además, el borde entre la identificación recesiva y un bit dominante siguiente es usado con el fin de una sincronización cuando, tal como se prevé en una forma de ejecución preferente, el bit recesivo de la primera identificación (EDL) es seguido al menos por un bit dominante en todos los mensajes de datos.
A fines de la identificación y la sincronización se considera además ventajoso que la segunda identificación (BRS) se efectúe igualmente a través de un bit recesivo en el campo de datos que es transmitido temporalmente después del bit de la primera identificación (EDL), en particular que el mismo se encuentre separado del bit recesivo de la primera identificación a través de al menos un bit dominante.
Al estar presente la primera identificación, de manera ventajosa, el borde entre el bit recesivo de la primera identificación y al menos un bit dominante siguiente puede usarse para la re-sincronización o sincronización forzada de la temporización de los bits de los participantes del bus, lo cual aumenta la fiabilidad y la seguridad en cuanto a errores de la transmisión de datos, en particular en el caso de una conmutación posterior de la longitud de bits.
Se considera también ventajoso que en función del valor de la primera condición de conmutación, cada una de las combinaciones posibles de valores de los cuatro bits del código de longitud de datos sea asociada a uno de los tamaños admisibles del campo de datos. Gracias a ello se crea una posibilidad transparente y flexible para utilizar numerosos tamaños diferentes del campo de datos.
De manera ventajosa, la primera identificación es evaluada en los participantes del bus y en función de la primera identificación el proceso de recepción es adaptado al tamaño del campo de datos y a los sucesivos componentes del mensaje, en particular del campo CRC. También la segunda identificación es evaluada en los participantes del bus al estar presente la primera identificación y, en función del valor de la segunda identificación, el proceso de recepción es adaptado a los diferentes valores de la longitud de bits dentro de un mensaje. Debido a ello se mantiene la elevada probabilidad de detección de errores en el caso de que se produzcan errores durante la transmisión, donde dicha probabilidad es característica del bus CAN, ya que en función de la identificación todos los participantes pueden verificar el cumplimiento de las especificaciones del protocolo.
De manera ventajosa, reduciéndose la inversión para la implementación, al menos dos valores diferentes de la longitud temporal del bit son realizados dentro de un mensaje a través de la utilización de al menos dos factores de escala diferentes para ajustar la unidad temporal del bus relativamente con respecto a la unidad de tiempo menor o al ciclo del oscilador durante la operación.
Al estar presente otra identificación que puede coincidir con la primera identificación (EDL), en una variante ventajosa, el campo CRC de los mensajes presenta una cantidad de bits que se desvía de la norma CAN ISO 11898-1 y/o se utiliza al menos un polinomio generador que se desvía de la norma CAN ISO 11898-1, de manera
10
15
20
25
30
35
40
45
E12730924
25-09-2015
que en el caso de campos de datos transmitidos más grandes también se alcanza la probabilidad de detección de errores deseada. También el valor de la otra identificación se determina en los participantes del bus y, en función del valor de la otra identificación y/o del contenido del código de longitud de datos, el proceso de recepción se adapta al tamaño del campo CRC.
Se considera especialmente ventajoso que al inicio de un mensaje acorde a la invención el cálculo de al menos dos sumas de verificación CRC comience de forma paralela mediante polinomios generadores diferentes y, cuando en base a la identificación se determina qué método de verificación CRC debe aplicarse para transmitir el mensaje se decide qué resultado de un cálculo CRC iniciado de forma paralela se utiliza.
De manera ventajosa, el método puede utilizarse durante el funcionamiento normal de un vehículo de motor para transmitir datos entre al menos dos dispositivos de control del vehículo de motor, donde dichos dispositivos se encuentran conectados el uno al otro mediante un bus de datos adecuado. Sin embargo, de manera igualmente ventajosa, es posible utilizarlo durante la producción o el mantenimiento de un vehículo de motor para transmitir datos entre una unidad de programación conectada a un bus de datos adecuado con el fin de una programación y al menos un dispositivo de control del vehículo de motor que se encuentra conectado al bus de datos.
Otra ventaja reside en el hecho de que un controlador de la norma CAN sólo debe ser modificado mínimamente para poder operar conforme a la invención. Un controlador de comunicación acorde a la invención, el cual puede operar también como controlador de la norma CAN, sólo es apenas más grande que un controlador de la norma CAN convencional. El respectivo programa de aplicación no debe ser modificado, de manera que ya así se alcanzan ventajas en cuanto a la velocidad de la transmisión de datos.
De manera ventajosa pueden adoptarse gran parte de las pruebas de conformidad de CAN (ISO 16845). En una variante ventajosa, el método de transmisión acorde a la invención puede combinarse con los complementos de TTCAN (ISO 11898-4).
Dibujos
A continuación, la presente invención se explica en detalle mediante los dibujos.
Figura 1a: muestra dos alternativas para la estructura de mensajes de datos según la norma CAN ISO 11898-1, el formato estándar CAN y el formato extendido CAN.
Figura 1b: muestra dos ejemplos del formato de mensajes "CAN FD Long" modificados según la invención, con un campo de control modificado y un tamaño flexible del campo de datos y del campo CRC. Se representa tanto una modificación de un mensaje CAN estándar, así como también una modificación de un mensaje CAN extendido.
Figura 2: representa diferentes posibilidades de cómo el contenido del código de longitud de datos, de acuerdo con la invención, puede interpretarse como desviado con respecto a la norma CAN ISO 11898-1.
Figura 3: representa esquemáticamente un ejemplo de ejecución del proceso de recepción en una estación participante del tipo "CAN FD Long" del sistema bus.
Figura 4: muestra otros ejemplos de mensajes del tipo "CAN FD Fast" modificados según la invención, en donde, en comparación con la figura 1b, se encuentran determinadas áreas adicionales dentro del mensaje, en donde de acuerdo con la invención se utiliza una longitud de bits diferente.
Figura 5: representa esquemáticamente un ejemplo de ejecución del proceso de recepción acorde a la invención en una estación participante del tipo "CAN FD Fast" del sistema bus.
Descripción de los ejemplos de ejecución
En la figura 1a se representa la estructura de mensajes tal como se utilizan en un bus CAN para la transmisión de datos. Se representan los dos formatos diferentes "estándar" y "extendido". El método acorde a la invención puede aplicarse en los dos formatos en formas de ejecución adecuadas.
El mensaje comienza con un bit de "inicio de trama" (SOF) que señaliza el inicio del mensaje. Continúa una sección que en primer lugar sirve para identificar el mensaje, mediante la cual los participantes del sistema bus deciden si reciben el mensaje o no. Esta sección se denomina "campo de arbitraje" y contiene el identificador. Sigue un "campo de control" que, entre otras cosas, contiene el código de longitud de datos. El código de longitud de datos contiene información sobre el tamaño del campo de datos del mensaje. A continuación se encuentra el campo de datos propiamente dicho "campo de datos" que contiene los datos que deben ser intercambiados entre los participantes
10
15
20
25
30
35
40
45
50
55
E12730924
25-09-2015
del sistema bus. Sigue el "campo CRC" con la suma de verificación que contiene 15 bits y un delimitador, y a continuación dos "bits de acuse de recibo" (ACK) que sirven para señalizar a los emisores la recepción exitosa de un mensaje. El mensaje finaliza con una "secuencia de fin de trama" (EOF).
En el caso del método de transmisión CAN, según la norma, el campo de datos puede contener como máximo 8 bytes, es decir 64 bits de datos. El código de longitud de datos según la norma comprende cuatro bits, es decir que puede adoptar 16 valores diferentes. En los sistemas bus actuales, de este rango de valores se utilizan sólo ocho valores diferentes para los distintos tamaños del campo de datos, de 1 hasta 8 bytes. En la norma CAN no se recomienda un campo de datos de 0 bytes y no se admiten más de 8 bytes. En la figura 2, la asociación de los valores del código de longitud de datos a los tamaños del campo de datos se representa en la columna de la norma CAN.
En la figura 1b, en una representación análoga, se oponen los mensajes modificados que deben ser transmitidos conforme a la invención, respectivamente derivados de los dos formatos de la norma. Éstos se diferencian de los mensajes acordes a la norma según la figura 1a a través del complemento de algunos bits adicionales en el campo de control, los cuales se denominan como EDL, BRS, ESI, cuyo fin se explicará a continuación. Además, los mensajes acordes a la invención se diferencian por el tamaño variable del campo de datos y el campo CRC. Los mensajes llevan la identificación "CAN FD Long".
En el método de transmisión modificado conforme a la invención, el campo de datos puede contener también más de 8 bytes, a saber, en la variante representada hasta K bytes. De modo diferente en comparación con la norma CAN, los otros valores que puede adoptar el código de longitud de datos se utilizan para identificar campos de datos de mayor tamaño. A modo de ejemplo, los cuatro bits del código de longitud de datos pueden utilizarse para representar los valores desde cero hasta 15 bytes. Sin embargo, pueden efectuarse también otras asociaciones, donde por ejemplo una posibilidad consiste en utilizar el valor del código de longitud de datos DLC = 0b0000, no utilizado generalmente en los mensajes CAN actuales, para otro tamaño posible del campo de datos, por ejemplo para el tamaño de 16 bytes.
Estas dos posibilidades se representan en la figura 2 en forma de tabla como DLC 1 y DLC 2. El tamaño máximo del campo de datos K posee en esos casos el valor 15 ó 16. Otra posibilidad consiste en que para los valores del código de longitud de datos mayores a 0b1000 y hasta 0b1111 se acrecientan los respectivos tamaños del campo de datos a un incremento mayor. Un ejemplo de ese caso se representa en la tabla como DLC 3. El tamaño máximo del campo de datos K alcanza en esta variante el valor de 64 bytes. Naturalmente otra opción es posible, por ejemplo un incremento de respectivamente 4 bytes.
Para garantizar que un controlador de comunicación de este tipo pueda determinar de qué modo debe interpretar los contenidos del código de longitud de datos, se considera ventajoso que éste detecte de forma automática si la comunicación del sistema bus se desarrolla según la norma CAN o según el método acorde a la invención. Una posibilidad consiste en emplear para la identificación un bit dentro del campo de arbitraje o del campo de control que en la norma CAN siempre trasmite un valor fijo, de manera que a partir de esa primera identificación el controlador de comunicación pueda deducir una primera condición de conmutación, en función de la cual dicho controlador seleccione el método de transmisión.
Identificación en el direccionamiento estándar:
El segundo bit del campo de control de mensajes de datos de la norma CAN se envía siempre de forma dominante en el formato estándar, tal como se representa en la figura 1a, en la parte superior, y se denomina r0. En el ejemplo de un mensaje acorde a la invención con direccionamiento estándar (es decir, con un campo de arbitraje según el formato CAN estándar), representado en la figura 1b en la parte superior, ese segundo bit del campo de control se utiliza para identificar, enviándose de forma recesiva. Por lo tanto, un valor recesivo del segundo bit del campo de control en un mensaje de ese tipo indica que a continuación se transmitirá el formato de mensaje que se desvía de la norma. Ese segundo bit transmitido de forma recesiva, del campo de control de un mensaje con campo de arbitraje estándar, se denomina EDL (Extended Data Length -longitud de dato extendida). El bit r0 transmitido siempre de forma dominante en la norma CAN en los mensajes acordes a la invención es reemplazado por el bit EDL recesivo, o en los mensajes acordes a la invención se corre una posición hacia atrás, al lugar entre el bit EDL recesivo y el bit BRS igualmente recesivo al conmutar la longitud de bits. Además, en el campo de control pueden agregarse aún bits adicionales. En la figura 1b se representa por ejemplo un bit llamado ESI, el cual se tratará más adelante. En ese sitio podrían agregarse también dos o más bits, sin afectar el método acorde a la invención. Por tanto, la secuencia de bits en el campo de control de mensajes de la norma CAN estándar {IDE, r0, DLC3, DLC2, DLC1, DLC0} en mensajes acordes a la invención en total se reemplaza por {IDE, EDL, N bits adicionales DLC3, DLC2, DLC1, DLC0}. En el ejemplo representado en la figura 1b aplica N=3, con los bits agregados r0, BRS, ESI. Sin embargo N podría adoptar también cualquier otro valor superior a cero. Eventualmente -debido a motivos que se explicarán más adelante -el bit BRS debe agregarse después de un bit transmitido siempre de forma dominante, por ejemplo en combinación con el bit r0 y directamente después del mismo.
10
15
20
25
30
35
40
45
50
55
E12730924
25-09-2015
Identificación en el direccionamiento extendido:
Los dos primeros bits del campo de control de mensajes de datos de la norma CAN se envían siempre de forma dominante en el formato extendido, tal como se representa en la figura 1a, en la parte inferior, y se denominan r1 y r0. En el ejemplo de un mensaje acorde a la invención con direccionamiento extendido (es decir, con un campo de arbitraje según el formato CAN extendido), representado en la figura 1b en la parte inferior, el primer bit r1 del campo de control se utiliza para identificar, enviándose de forma recesiva. En ese caso, un valor recesivo del primer bit del campo de control en un mensaje de ese tipo indica que a continuación se transmitirá el formato de mensaje que se desvía de la norma. También aquí ese bit transmitido de forma recesiva del campo de control se denomina EDL (Extended Data Length -longitud de dato extendida). Éste reemplaza el bit r1 dominante reservado de los mensajes de la norma CAN con formato extendido. De modo alternativo, el bit r1 dominante podría también mantenerse y correrse un lugar hacia atrás, de manera que el bit EDL se agregaría como bit adicional entre RTR y r1. Igualmente sería posible agregar el bit EDL (recesivo) como bit adicional entre r1 (dominante) y r0 (dominante). A continuación, en ese caso pueden agregarse en el campo de control también otros bits adicionales. En la figura 1b se representa por ejemplo nuevamente el bit llamado ESI, el cual se tratará más adelante. Podrían agregarse también dos o más bits, sin afectar el método acorde a la invención. Por tanto, la secuencia de bits en el campo de control de mensajes de la norma CAN extendida {r1, r0, DLC3, DLC2, DLC1, DLC0} en mensajes acordes a la invención en total se reemplaza por {EDL, N bits adicionales, DLC3, DLC2, DLC1, DLC0} o {r1, EDL, M bits adicionales, DLC3, DLC2, DLC1, DLC0}. El ejemplo representado en la figura 1b muestra la variante mencionada en primer lugar donde N =3, a saber, con los bits r0, BRS, ESI agregados. Sin embargo N, así como M, podrían adoptar también cualquier otro valor superior a cero. Eventualmente -debido a motivos que se explicarán más adelante -también aquí el bit BRS debe agregarse después de un bit transmitido siempre de forma dominante, por ejemplo en combinación con el bit r0 y directamente después del mismo.
De manera alternativa también es posible aplicar el método en controladores de comunicación adecuados que tampoco están diseñados para la comunicación CAN conforme al estándar. En este caso puede suprimirse también la determinación de la primera condición de conmutación mencionada, por ejemplo en función de una identificación adecuada de los mensajes. En este caso, los controladores de comunicación operan más bien exclusivamente según uno de los métodos descritos y pueden emplearse de forma correspondiente sólo en sistemas bus en los cuales exclusivamente se utilizan controladores de comunicación acordes a la invención de ese tipo.
Si el campo de datos de mensajes se amplía, tal como se prevé en la presente invención, entonces puede ser conveniente adaptar también el método utilizado a la prueba de redundancia cíclica (CRC) para alcanzar una seguridad suficiente contra fallos. En particular puede ser ventajoso utilizar otro polinomio CRC, por ejemplo de un orden superior, y de forma correspondiente proporcionar un campo CRC con un tamaño diferente en los mensajes modificados conforme a la invención. En la figura 1b esto se representa de manera que el campo CRC de los mensajes acordes a la invención presenta una longitud de bits L en el ejemplo representado, donde L, desviándose de la norma CAN, puede ser diferente, en especial superior a 15.
La utilización de un método modificado para calcular la suma de verificación CRC puede ser señalizada a los participantes del bus a través de otra identificación que representa otra tercera condición de conmutación. En una forma de ejecución preferente, esa otra identificación puede coincidir con la primera identificación y/o condición de conmutación.
En los controladores de la norma CAN, el código CRC de mensajes CAN a ser enviados es generado mediante un registro de desplazamiento con retroalimentación (feedback), en cuya entrada se ingresan secuencialmente los bits del mensaje enviados en forma de serie. El ancho del registro de desplazamiento corresponde al orden del polinomio CRC. La codificación CRC se efectúa vinculando el contenido del registro al polinomio CRC durante las operaciones de desplazamiento. Cuando se reciben mensajes CAN, los bits del mensaje recibidos en forma de serie son movidos al registro de desplazamiento CRC de forma correspondiente. La prueba CRC es exitosa cuando al final del campo CRC todos los bits del registro de desplazamiento se encuentran en cero. La generación del código CRC en el caso de un envío y la prueba CRC en el caso de una recepción tienen lugar en el hardware, sin que sea necesario interferir en el software. Por tanto, una modificación de la codificación CRC no produce ningún efecto sobre el software de la aplicación.
En una forma de ejecución especialmente ventajosa, el controlador de comunicación está diseñado de manera que presenta compatibilidad con respecto a la norma CAN, es decir que opera en un sistema bus CAN conforme al estándar, mientras que en un sistema bus modificado conforme a la invención, por una parte, se admiten campos de datos más grandes en los mensajes y, por otra parte, se realiza también el cálculo adaptado y la prueba del código CRC.
Puesto que al inicio de un mensaje aún no es certero si se va a recibir un mensaje CAN conforme al estándar o un mensaje modificado conforme a la invención, en un controlador de comunicación acorde a la invención se implementan dos registros de desplazamiento CRC que trabajan de forma paralela. Después de la recepción del delimitador CRC, cuando el código CRC se evalúa en el receptor, debido a la otra identificación acorde a la
10
15
20
25
30
35
40
45
50
E12730924
25-09-2015
invención, se establece qué método de transmisión fue utilizado, y se evalúa entonces el registro de desplazamiento asociado a ese método de transmisión. Del modo antes representado, la otra identificación puede coincidir con la primera identificación que hace referencia al tamaño del campo de datos y a la interpretación del código de longitud de datos.
Al inicio del envío de un mensaje para el emisor ya es certero qué método de transmisión debe ser enviado. No obstante, puesto que puede ocurrir que el arbitraje se pierda al acceder al bus y el mensaje iniciado no sea enviado sino, en su lugar, otro mensaje sea recibido, aquí también los dos registros de desplazamiento CRC son activados de forma paralela.
La implementación descrita de dos registros de desplazamiento CRC que operan de forma paralela posibilita también otra mejora:
El polinomio CRC del protocolo de la norma CAN (x15 + x14 + x10 + x8 + x7 + x4 + x3 + 1) está diseñado para una longitud de los mensajes menor a 127 bits. Si los mensajes transmitidos conforme a la invención utilizan también campos de datos más largos, entonces es conveniente utilizar otro polinomio CRC, en particular más largo, para mantener la seguridad de la transmisión. Conforme a ello, los mensajes transmitidos de acuerdo con la invención obtienen un campo CRC modificado, en particular más largo. Durante el funcionamiento, los controladores de comunicación cambian dinámicamente entre los dos registros de desplazamiento CRC, es decir entre el registro de desplazamiento según la norma CAN y el registro de desplazamiento según la invención, para utilizar el polinomio respectivamente adecuado.
Naturalmente pueden utilizarse también más de dos registros de desplazamiento y, de forma correspondiente, más de dos polinomios CRC de forma escalonada en función de la longitud del campo de datos o de la seguridad de transmisión deseada. En ese caso, siempre que deba mantenerse una compatibilidad con respecto a la norma CAN, debe adaptarse la identificación correspondiente y la condición de conmutación asociada a la misma. A modo de ejemplo, el segundo bit del campo de control podría representar una primera identificación que identifique una conmutación a campos de datos más largos, por ejemplo según DLC 1 de la figura 2, y un segundo polinomio CRC correspondiente. Para mensajes que contienen campos de datos más largos y están identificados a través de la primera identificación podría agregarse por ejemplo un bit adicional en el campo de control, el cual identifique la conmutación a otro registro de tamaños del campo de datos, por ejemplo DLC de la figura 2, y un tercer polinomio CRC. La incorporación de bits adicionales en el campo de control de mensajes que presentan la primera identificación es posible, ya que aquí de todos modos se utiliza un proceso modificado de emisor y receptor en el controlador de comunicación, considerando con ello las modificaciones de esa clase. La compatibilidad con la norma CAN se da debido a la ausencia de la primera identificación, donde en el ejemplo mostrado, es decir en el caso de un segundo bit dominante del campo de control, la estructura de los mensaje sigue exactamente las especificaciones de la norma ISO 11898-1.
La figura 3, en una representación simplificada, muestra una parte del proceso de recepción acorde a la invención, tal como se desarrolla en una estación participante del sistema bus. Se representa aquí el caso en donde se alcanza una compatibilidad con respecto a la norma CAN, adecuando el comportamiento del controlador de comunicación en función de la primera condición de conmutación. Si bien en la figura 3 se seleccionó una representación habitual para la descripción de ejecuciones de programas en software, el método es adecuado en su totalidad para ser implementado en hardware.
La estación participante se encuentra en primer lugar en un estado de exploración del bus, hasta que en el bus no haya ningún tráfico de comunicación. La consulta 302 espera por tanto a un bit dominante en el bus. Ese bit indica el comienzo de un nuevo mensaje (inicio de trama).
Tan pronto como fue determinado el inicio de un nuevo mensaje, en el bloque 304 comienza el cálculo de al menos dos sumas de verificación que deben ser calculadas de forma paralela.
La primera suma de verificación corresponde al cálculo CRC de la norma CAN, mientras que la segunda suma de verificación se calcula según el nuevo método.
A continuación, a partir de la etapa 306, se reciben los otros bits del mensaje que siguen al bit SOF, iniciando con el campo de arbitraje. En el caso de que varios participantes del bus deseen enviar un mensaje, según el método habitual en base a la norma CAN, se acuerda qué participante del bus obtiene el acceso al bus. El bloque 306 representado indica la recepción de todos los bits hasta que la primera identificación ha sido recibida, así como hasta que la primera condición de conmutación ha sido determinada. En el ejemplo representado se determina la primera condición de conmutación desde el campo de control, por ejemplo en base al segundo bit del mismo (véase la figura 1). A continuación, en el bloque 308 pueden recibirse aún otros bits del mensaje, hasta que a partir de un bit determinado del mensaje se procede de forma diferente en función de la primera condición de conmutación
10
15
20
25
30
35
40
45
50
55
E12730924
25-09-2015
determinada. Esta división en diferentes modos de proceder se garantiza a través de una consulta o bifurcación 310 correspondiente, tal como se representa a continuación a modo de ejemplo.
Si en la bifurcación 310, por ejemplo después de recibir el segundo bit del campo de control como bit r0 dominante, se encuentra presente la información que indica que, de acuerdo con la primera identificación, la comunicación se efectúa según la norma CAN (la ruta indicada con "1" en la figura 3), entonces en la etapa 312 son leídos los otros bits del campo de control. De acuerdo con la norma CAN, en base a esos bits se evalúa el código de longitud de datos y a continuación, en la etapa 316, se recibe la respectiva cantidad de datos, como máximo 8 bytes, en correspondencia con el campo de datos. En la etapa 320 se recibe después el campo CRC que comprende 15 bits. Si en la bifurcación 324 se encuentra presente la información que indica que la suma de verificación transmitida por el emisor y la suma de verificación CRC determinada por el propio receptor coinciden, entonces en el bloque 328 se envía un bit de acuse de recibo dominante. Debe tenerse en cuenta que en este caso la suma de verificación CRC acorde a la norma es comparada, ya que la comunicación se efectúa según la norma CAN. Si no se determina ninguna coincidencia, entonces el bit de acuse de recibo se envía de forma recesiva (bloque 330). A continuación, en la etapa 332, así como 334, siguen el delimitador ACK y los bits EOF. Con ello finaliza un proceso de recepción de un mensaje.
Por el contrario, si en la bifurcación 310, por ejemplo después de recibir el segundo bit del campo de control como bit EDL recesivo, se encuentra presente la información que indica que debe aplicarse el método de comunicación modificado según la invención (la ruta indicada con "2" en la figura 3), entonces en el bloque 314 son leídos los otros bits del campo de control. Aquí pueden leerse por ejemplo también bits adicionales, completados en el campo de control, los cuales por ejemplo pueden servir para conmutar a otro polinomio CRC diferente, o también para conmutar la longitud de bits, para sincronizar o para otros fines. Dicho aspecto se abordará de forma aún más detallada. En base al resultado, el código de longitud de datos se determina según la nueva interpretación, para la cual en la figura 2 se representan algunos ejemplos en forma de una tabla. En el bloque 318 se recibe la cantidad de datos correspondiente, es decir, para el ejemplo DLC 1 en la tabla de la figura 2 hasta 15 bytes, para el ejemplo DLC 2 hasta 16 bytes, para el ejemplo DLC 3 hasta 64 bytes de datos. En el bloque 322 se recibe el campo CRC que presenta una desviación, de forma acorde a la invención, en particular un campo más largo. Si en la bifurcación 324 se encuentra presente la información que indica que la suma de verificación transmitida por el emisor y la suma de verificación CRC determinada por el propio receptor coinciden, donde en ese caso la comparación se basa en la suma de verificación CRC que presenta una desviación, de forma acorde a la invención, entonces en el bloque 328 se envía un bit de acuse de recibo dominante. De lo contrario se envía el bit de acuse de recibo recesivo (bloque 330). A continuación, en la etapa 332, así como 334, siguen el delimitador ACK y los bits EOF. Con ello finaliza un proceso de recepción de un mensaje.
En la figura 3 se representa el caso en donde la otra identificación, la cual determina el CRC que debe ser utilizado, coincide con la primera identificación que hace referencia al tamaño del campo de datos y a la interpretación del código de longitud de datos. Antes de la recepción 320, así como 322, de las sumas de verificación CRC, no se consultó nuevamente qué CRC debe ser recibido y evaluado para la bifurcación 324 según la otra identificación. A través de una simple modificación del diagrama de la figura 3, esa consulta adicional puede incluirse igualmente en la secuencia.
La figura 4 muestra otros dos ejemplos de mensajes modificados de acuerdo con la invención, en donde en comparación con la figura 1b se determinan áreas adicionales dentro del mensaje, en las cuales, de acuerdo con la invención, se utiliza una longitud de bits diferente, transmitiendo con ello los bits individuales más rápido mediante el bus. Los mensajes llevan por tanto la identificación "CAN FD Fast". En la figura 4 se ilustran áreas para las dos variantes posibles de direccionamiento de mensajes, el formato estándar y el formato extendido, en donde se conmuta entre dos estados, denominados como arbitraje fast-CAN y datos fast-CAN. Esta conmutación entre los dos estados tiene como consecuencia que, para la parte correspondiente del mensaje, la longitud de bits se reduce y, con ello, los bits individuales se transmiten más rápido mediante el bus. Gracias a ello, puede reducirse el tiempo de transmisión para un mensaje, en comparación con el método conforme al estándar. El respectivo cambio de la longitud temporal de bits, a modo de ejemplo, puede realizarse a través de al menos dos factores de escala diferentes para ajustar la unidad de tiempo del bus, relativamente con respecto a la unidad de tiempo menor o al ciclo del oscilador durante la operación. La conmutación de la longitud de bits, así como la modificación correspondiente del factor de escala, se representan en la figura 4 igualmente a modo de ejemplo.
El paso entre los estados de arbitraje fast-CAN y datos fast-CAN se efectúa en mensajes que presentan la primera identificación EDL, en función de una segunda identificación que señaliza a los participantes de la transmisión de datos que se aplica la longitud de bits reducida. En el ejemplo de ejecución aquí representado, la posición de esa identificación es un bit adicional en el campo de control, denominado BRS (Bit Rate Switch). En el ejemplo mostrado se transmite como cuarto bit del campo de control.
En el caso representado, en donde la segunda identificación BRS sigue a la primera identificación EDL, en el método de transmisión acorde a la invención se transmiten mensajes cuya longitud de bits se encuentra marcadamente reducida, cuyo tamaño de los campos de datos puede extenderse a valores superiores a 8 bytes, y
10
15
20
25
30
35
40
45
50
55
E12730924
25-09-2015
cuyo CRC se encuentra adaptado al campo de datos de mayor tamaño. De este modo se alcanza un incremento considerable de la capacidad de transmisión mediante el sistema bus, al mismo tiempo que una seguridad mejorada de la transmisión.
En el ejemplo representado, la transmisión más rápida comienza inmediatamente después de enviar la respectiva identificación y finaliza inmediatamente después de alcanzar el bit determinado para la conmutación de retorno o cuando fue detectado un motivo para iniciar una trama de error.
En comparación con la figura 3, la figura 5 muestra un proceso de recepción modificado, en donde adicionalmente se conmuta entre los estados de arbitraje fast-CAN y datos fast-CAN en función de la segunda identificación BRS. Si en la bifurcación 310, por ejemplo después de recibir el segundo bit del campo de control como bit EDL recesivo, se encuentra presente información sobre que debe aplicarse el método de comunicación conforme a la invención, entonces en el bloque 408 se leen los siguientes bits del campo de control. Si el bit que se utiliza para la segunda identificación, por ejemplo el cuarto bit BRS del campo de control ampliado conforme a la invención, se recibe con el valor previsto, por ejemplo de forma recesiva, entonces en el punto de muestra de ese bit se adopta por ejemplo el estado de datos fast-CAN, es decir que se pasa a la longitud de bits reducida (ruta "C"). Si el respectivo bit presenta el valor inverso, es decir el valor dominante en este ejemplo, entonces no tiene lugar una reducción de la longitud de bits (ruta "B"). En los bloques 412, así como 414, tiene lugar la recepción de los bits restantes del campo de control, inclusive del código de longitud de datos, y la recepción del campo de datos según la información de los tamaños, en base al código de longitud de datos. En el bloque 412 se recepciona con una longitud de bits normal, en el bloque 414 con la longitud de bits reducida. En los bloques 416, así como 418, se lee el campo CRC desviado, acorde a la invención, en particular más largo. En el último bit del campo CRC, en el delimitador CRC, en el bloque 418, se conmuta nuevamente al estado de arbitraje fast CAN con la tasa de bits habitual. A continuación, en la bifurcación 324, de forma análoga a la figura 3, se controla si la suma de verificación transmitida por el emisor y la suma de verificación CRC determinada por el propio receptor coinciden y se procede en función de ello, del mismo modo que en la figura 3.
El bit r0 siempre dominante que sigue al bit recesivo de la primera identificación EDL en los mensajes acordes a la invención (así como eventualmente r1 en el caso del direccionamiento extendido), conduce a un borde dominante recesivo en todos los mensajes de datos acordes a la invención, tal como puede observarse a modo de ejemplo en las figuras 1b y 4. Ese borde puede utilizarse para mejorar la sincronización entre los participantes del bus, lo cual se considera ventajoso en particular en el caso de la conmutación prevista a longitudes de bits más reducidas.
Cuando todos los participantes del bus en la red están sincronizados en el participante emisor puede conmutarse sin dificultades a la longitud de bits más reducida. No obstante, puede suceder que en el bit previsto para la sincronización no todos los participantes estén sincronizados en el participante emisor, por ejemplo cuando un primer participante emisor al final del campo de arbitraje envía la secuencia de bits "dominante-dominante" y un segundo participante emisor, que aún dentro del marco del arbitraje desea lograr acceder al bus, envía la secuencia de bits "dominante-recesivo". El segundo participante emisor pierde el arbitraje en el bit recesivo y se convierte en receptor. Hasta el bit recesivo los dos emisores poseían la misma secuencia de bits. Puesto que los dos transmisores, debido a los tiempos de ejecución mediante el bus CAN, y los transceptores, perciben los bordes respectivamente enviados por sí mismos, desde recesivo a dominante, antes que los enviados por el otro respectivo emisor, ninguno se sincroniza con respecto al otro. Si se conmuta entonces la longitud de bits antes de que el nuevo participante devenido en receptor se haya sincronizado con respecto al emisor restante, la sincronización tiene lugar por tanto después de la conmutación, en el área de la longitud de bits más reducida. El desplazamiento de las fases a través de la sincronización es relativamente mayor con respecto a la longitud de bits. Dependiendo del tiempo de ejecución de la señal entre los dos participantes, el desplazamiento de las fases puede ser tan grande que se produce una sincronización errónea y un bit se explora de forma errónea. El receptor no reconocerá entonces el mensaje recibido como válido y lo eliminará con una trama de error.
En la comunicación de la norma CAN no se presenta dicho problema, ya que allí el segmento de propagación del temporizador de bits CAN compensa entre los participantes del bus los desplazamientos de las fases provocados por los tiempos de ejecución de la señal. Sin embargo, en la configuración para una longitud de bits más reducida, el segmento de propagación puede minimizarse u omitirse por completo para reducir la longitud de bits.
Para evitar la sincronización errónea después de la conmutación de la longitud de bits debe garantizarse una sincronización antes de la conmutación de la longitud de bits, a través de medidas adecuadas. Esto puede lograrse gracias a que en el borde de EDL (recesivo) hacia r0, así como r1 (dominante), se realiza una sincronización. En particular, puede realizarse una sincronización forzada en lugar de la re-sincronización de lo contrario habitual dentro de una trama. Dicha sincronización puede realizarse por ejemplo también en el bit de inicio de trama, compensando completamente de forma segura los posibles desplazamientos de las fases. En el caso de la re-sincronización, de lo contrario habitual dentro de una trama, puede permanecer un error residual cuando el error de las fases es más grande que la distancia de salto configurada de la re-sincronización (SJW).
10
15
20
25
30
35
40
45
E12730924
25-09-2015
Como una variante del método representado, la conmutación a longitudes de bits más reducidas, en función del valor de la segunda identificación BRS, puede acoplarse al valor dominante del bit r0 transmitido previamente, de manera que sólo se conmuta a la longitud de bits más reducida cuando r0 fue transmitido de forma dominante. Este complemento del método permite utilizar una secuencia de bits, en la cual a un bit EDL recesivo sigue un bit recesivo en lugar del bit r0 dominante, para otros formatos de mensajes futuros, como por ejemplo para una codificación del bit que se desvía de la norma en algunas partes del mensaje.
La posibilidad de agregar bits adicionales en el campo de control de los mensajes acordes a la invención puede utilizarse además para facilitar la detección de participantes del bus que se encuentran en el estado de "Error Passive". Un participante del bus con controladores del bus del estado del arte adopta el estado "Error Passive" cuando el Transmit o el Receive Error Count es 128 o más. Si el participante del bus se encuentra en el estado "Error Passive, entonces no puede enviar ningún "Active Error Flag" (seis bits dominantes consecutivos). Si el participante del bus detecta un error envía un "Passive Error Flag" (seis bits recesivos consecutivos). Sin embargo, un "Passive Error Flag" en el bus CAN no puede diferenciarse del nivel de reposo. Eventualmente, otros participantes del bus pueden por tanto detectar sólo de forma indirecta que un participante del bus se encuentra en el estado "Error Passive".
En comparación con lo mencionado, la ventaja del método aquí descrito reside en el hecho de que con ese método los participantes del bus que se encuentran en el estado "Error Passive" pueden ser identificados por otros participantes del bus de forma unívoca. Hasta el momento esto no es posible mediante la recepción de un "Passive Error Flag". En el estado del arte, el estado "Error passive" sólo puede ser detectado por el microprocesador conectado de forma local en el controlador CAN, y puede ser informado a los otros participantes del bus por ejemplo a través de un mensaje de estado correspondiente. A través del nuevo método, para el microprocesador no es necesario enviar un mensaje de estado. Asimismo, en este caso, la información sobre el estado de "Error Passive" es actual con respecto al momento de emisión, mientras que al enviar un mensaje de estado, entre la creación del mensaje de estado a través del microprocesador y el momento de emisión, el estado puede haberse modificado.
En el método aquí descrito, la información sobre el estado "Error Passive" de un controlador de comunicación se integra en los mensajes enviados por el participante del bus. Para ello, el campo de control del mensaje se amplía en un bit adicional (ESI). Ese bit, tal como se representa en la figura 1b, se inserta después de la primera identificación (EDL) y antes de DLC, por ejemplo directamente antes o directamente después del bit BRS. Un participante del bus que se encuentra en el estado "Error Passive" envía ese bit por ejemplo de forma dominante, mientras que en caso contrario envía el bit de forma recesiva. Una lógica inversa es igualmente posible.
El método de transmisión presentado es adecuado durante el funcionamiento normal de un vehículo de motor para transmitir datos entre al menos dos dispositivos de control del vehículo de motor, donde dichos dispositivos se encuentran conectados el uno al otro mediante un bus de datos adecuado. Sin embargo, de manera igualmente ventajosa, es posible utilizarlo durante la producción o el mantenimiento de un vehículo de motor para transmitir datos entre una unidad de programación conectada a un bus de datos adecuado con el fin de una programación y al menos un dispositivo de control del vehículo de motor que se encuentra conectado al bus de datos.
En conjunto, el método representa un método de transmisión que se caracteriza porque un controlador de la norma CAN sólo debe ser modificado mínimamente para poder operar conforme a la invención. Un controlador de comunicación acorde a la invención, el cual puede operar también como controlador de la norma CAN, sólo es apenas más grande que un controlador de la norma CAN convencional. El respectivo programa de aplicación no debe ser modificado, de manera que ya así se alcanzan ventajas en cuanto a la velocidad de la transmisión de datos. A través de la utilización del tamaño ampliado del campo de datos y de los respectivos DLC y RLC puede incrementarse aún más la velocidad de la transmisión de datos; las adaptaciones en los softwares de la aplicación son mínimas. Es posible adoptar gran parte de las pruebas de conformidad de CAN (ISO 16845). También es posible combinar el método de transmisión acorde a la invención con los complementos de TTCAN (ISO 11898-4).

Claims (15)

  1. 5
    10
    15
    20
    25
    30
    35
    40
    45
    REIVINDICACIONES
    1.
    Método para la transmisión en serie de datos en un sistema de bus con al menos dos participantes del bus que intercambian mensajes mediante el bus, donde los mensajes enviados presentan una estructura lógica según la norma CAN ISO 11898-1, caracterizado porque al estar presente una primera identificación (EDL), desviándose de la norma CAN ISO 11898-1, el campo de control de los mensajes puede comprender más de seis bits y al estar presente la primera identificación (EDL), desviándose de la norma CAN ISO 11898-1, el campo de control de los mensajes puede comprender más de ocho bytes, donde para determinar el tamaño del campo de datos los valores de los cuatro bits del código de longitud de datos se interpretan desviándose al menos parcialmente de la norma CAN ISO 11898-1, y porque al estar presente una segunda identificación (BRS), la longitud de bits para al menos un área predeterminada o predeterminable dentro del mensaje asume un valor más reducido en comparación con la longitud de bits utilizada antes de estar presente la segunda identificación, donde el área comienza como muy pronto con la segunda identificación y como muy tarde con el delimitador de CRC, donde la segunda identificación (BRS) sólo aparece al estar presente la primera identificación (EDL) y se efectúa en el campo de control de los mensajes que comprende más de seis bits, desviándose de la norma CAN ISO 11898-1.
  2. 2.
    Método según la reivindicación 1, caracterizado porque la primera identificación (EDL) se efectúa a través de un bit recesivo en el campo de control.
  3. 3.
    Método según la reivindicación 2, caracterizado porque al estar presente la primera identificación el bit recesivo de la primera identificación (EDL) es seguido al menos por un bit dominante en todos los mensajes de datos.
  4. 4.
    Método según una de las reivindicaciones 1 a 3, caracterizado porque la segunda identificación (BRS) se efectúa a través de un bit recesivo en el campo de control, el cual es transmitido temporalmente después del bit de la primera identificación (EDL).
  5. 5.
    Método según la reivindicación 4, caracterizado porque al estar presente la segunda identificación el bit recesivo de la segunda identificación (BRS) es separado del bit recesivo de la primera identificación (EDL) a través de al menos un bit dominante.
  6. 6.
    Método según una de las reivindicaciones 3 a 5, caracterizado porque al estar presente la primera identificación el borde entre el bit recesivo de la primera identificación (EDL) y al menos un bit dominante siguiente es usado para la re-sincronización o sincronización forzada de la temporización de los bits de los participantes del bus.
  7. 7.
    Método según una de las reivindicaciones 1 a 6, caracterizado porque eventualmente, en función del valor de la primera condición de conmutación, cada una de las combinaciones posibles de valores de los cuatro bits del código de longitud de datos es asociada a uno de los tamaños admisibles del campo de datos.
  8. 8.
    Método según una de las reivindicaciones 1 a 7, caracterizado porque la primera identificación (EDL) es evaluada en los participantes del bus y en función de la primera identificación el proceso de recepción es adaptado al tamaño del campo de datos.
  9. 9.
    Método según una de las reivindicaciones 1 a 8, caracterizado porque la segunda identificación (BRS) es evaluada en los participantes del bus al estar presente la primera identificación y, en función del valor de la segunda identificación, el proceso de recepción es adaptado a los diferentes valores de la longitud de bits dentro de un mensaje.
  10. 10.
    Método según una de las reivindicaciones 1 a 9, caracterizado porque al menos dos valores diferentes de la longitud temporal de bits son realizados dentro de un mensaje a través de la utilización de al menos dos factores de escala diferentes para ajustar la unidad temporal del bus relativamente con respecto a la unidad de tiempo menor o al ciclo del oscilador durante la operación.
  11. 11.
    Método según una de las reivindicaciones 1 a 10, caracterizado porque al estar presente otra identificación el campo CRC de los mensajes presenta una cantidad de bits que se desvía de la norma CAN ISO 11898-1 y/o se utiliza al menos un polinomio generador que se desvía de la norma CAN ISO 11898-1, donde la otra identificación puede coincidir con la primera identificación (EDL).
  12. 12.
    Método según la reivindicación 11, caracterizado porque el valor de la otra identificación se determina en los participantes del bus y, en función del valor de la otra identificación y/o del contenido del código de longitud de datos, el proceso de recepción se adapta al tamaño del campo CRC.
    11
  13. 13. Método según una de las reivindicaciones 11 a 12, caracterizado porque al inicio de un mensaje el cálculo de al menos dos sumas de verificación CRC comienza de forma paralela mediante polinomios generadores diferentes y, en función del valor de la otra identificación, se decide qué resultado de un cálculo CRC iniciado de forma paralela se utiliza.
    5 14. Dispositivo para la transmisión en serie de datos en un sistema de bus con al menos dos participantes del bus que intercambian mensajes mediante el bus, donde los mensajes enviados presentan una estructura lógica según la norma CAN ISO 11898-1, caracterizado porque al estar presente una primera identificación (EDL), desviándose de la norma CAN ISO 11898-1, el campo de control de los mensajes puede comprender más de seis bits y al estar presente la primera identificación (EDL), desviándose de la norma CAN ISO 11898-1, el campo de control de los
    10 mensajes puede comprender más de ocho bytes, donde para determinar el tamaño del campo de datos los valores de los cuatro bits del código de longitud de datos se interpretan desviándose al menos parcialmente de la norma CAN ISO 11898-1, y porque al estar presente una segunda identificación (BRS), la longitud de bits para al menos un área predeterminada o predeterminable dentro del mensaje asume un valor más reducido en comparación con la longitud de bits utilizada antes de estar presente la segunda identificación, donde el área comienza como muy pronto
    15 con la segunda identificación y como muy tarde con el delimitador de CRC, donde la segunda identificación (BRS) sólo aparece al estar presente la primera identificación (EDL) y se efectúa en el campo de control de los mensajes que comprende más de seis bits, desviándose de la norma CAN ISO 11898-1.
  14. 15. Dispositivo según la reivindicación 14, caracterizado porque el dispositivo, a través de medios adecuados, está configurado para ejecutar al menos uno de los métodos para transmitir datos según las reivindicaciones 2 a 13.
    20 16. Utilización del método según una de las reivindicaciones 1 a 13 en el funcionamiento normal de un vehículo de motor para transmitir datos entre al menos dos dispositivos de control del vehículo de motor, los cuales se encuentran conectados mediante un bus de datos adecuado.
  15. 17. Utilización del método según una de las reivindicaciones 1 a 13 durante la producción o el mantenimiento de un vehículo de motor para transmitir datos entre una unidad de programación conectada a un bus de datos adecuado
    25 con el fin de una programación y al menos un dispositivo de control del vehículo de motor que se encuentra conectado al bus de datos.
    12
ES12730924.3T 2011-06-29 2012-06-26 Método y dispositivo para la transmisión en serie de datos con un tamaño flexible de mensajes y una longitud de bits variable Active ES2548408T3 (es)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
DE102011078266 2011-06-29
DE102011078266A DE102011078266A1 (de) 2011-06-29 2011-06-29 Verfahren und Vorrichtung zur seriellen Datenübertragung mit flexibler Nachrichtengröße und variabler Bitlänge
PCT/EP2012/062342 WO2013000902A1 (de) 2011-06-29 2012-06-26 VERFAHREN UND VORRICHTUNG ZUR SERIELLEN DATENÜBERTRAGUNG MIT FLEXIBLER NACHRICHTENGRÖßE UND VARIABLER BITLÄNGE

Publications (1)

Publication Number Publication Date
ES2548408T3 true ES2548408T3 (es) 2015-10-16

Family

ID=46420161

Family Applications (1)

Application Number Title Priority Date Filing Date
ES12730924.3T Active ES2548408T3 (es) 2011-06-29 2012-06-26 Método y dispositivo para la transmisión en serie de datos con un tamaño flexible de mensajes y una longitud de bits variable

Country Status (12)

Country Link
US (1) US9864724B2 (es)
EP (1) EP2726998B1 (es)
JP (2) JP5734515B2 (es)
KR (1) KR102029978B1 (es)
CN (1) CN103827844B (es)
AU (1) AU2012277890B2 (es)
BR (1) BR112013033821B1 (es)
DE (1) DE102011078266A1 (es)
ES (1) ES2548408T3 (es)
RU (1) RU2602353C2 (es)
TW (3) TWI559152B (es)
WO (1) WO2013000902A1 (es)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102010041223A1 (de) * 2010-09-22 2012-03-22 Robert Bosch Gmbh Verfahren und Vorrichtung zur seriellen Datenübertragung mit umschaltbarer Datenrate
CN107943611B (zh) * 2017-11-08 2021-04-13 天津国芯科技有限公司 一种快速产生crc的控制装置
US20230060218A1 (en) * 2020-02-11 2023-03-02 Ciphersip Systems Ltd. High bandwidth can-derivative communication

Family Cites Families (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02171054A (ja) * 1988-12-23 1990-07-02 Mitsubishi Electric Corp データ通信システム
DE4129205A1 (de) * 1991-03-28 1992-10-01 Bosch Gmbh Robert Verfahren zum aufbau von botschaften fuer den datenaustausch und/oder fuer die synchronisation von prozessen in datenverarbeitungsanlagen
US5469150A (en) * 1992-12-18 1995-11-21 Honeywell Inc. Sensor actuator bus system
US5854454A (en) * 1996-09-16 1998-12-29 Otis Elevator Company Message routing in control area network (CAN) protocol
US6695906B2 (en) * 2000-04-12 2004-02-24 Millennium Inorganic Chemicals, Inc. Continuous processes for producing titanium dioxide pigments
JP3770053B2 (ja) 2000-05-26 2006-04-26 三菱ふそうトラック・バス株式会社 車両用ネットワークの通信復帰判定方法
JP2004032467A (ja) * 2002-06-27 2004-01-29 Sharp Corp パケット通信装置
DE10311395A1 (de) 2003-03-13 2004-09-23 Robert Bosch Gmbh Kommunikationsvorrichtung mit asynchroner Datenübertragung über eine symmetrische serielle Schnittstelle
DE10345359B4 (de) 2003-09-29 2006-11-02 Berghof Labor- Und Automationstechnik Gmbh Serieller Datenbus, Bewegungssystem sowie Verfahren zur ereignisgesteuerten Übertragung von Nachrichten
IL163092A (en) 2004-07-19 2010-11-30 Veraz Networks Ltd Processing of packets forwarded in communication networks
DE102004055684A1 (de) 2004-11-18 2006-05-24 Innotec Gmbh Verfahren zur Absicherung des Datentransferns in einem sicheren Netzwerk mit CRC`s variabler Länge
US7349484B2 (en) 2004-12-22 2008-03-25 Rambus Inc. Adjustable dual-band link
CA2934724C (en) 2005-03-18 2019-04-09 Gatekeeper Systems, Inc. Two-way communication system for tracking locations and statuses of wheeled vehicles
KR101135101B1 (ko) * 2005-10-17 2012-04-16 엘지전자 주식회사 캔에서의 데이터 길이 코드를 이용한 데이터 필드 패딩방법
KR100781266B1 (ko) 2005-10-20 2007-11-30 엘지전자 주식회사 통신 기기 및 처리 방법
CN100471156C (zh) 2007-03-07 2009-03-18 今创集团有限公司 数据总线桥接器及其工作方法
JP5057304B2 (ja) 2007-06-08 2012-10-24 国立大学法人名古屋大学 車載通信システム及び車載通信方法
US8288997B2 (en) 2007-08-24 2012-10-16 Alexander Choi Providing power based on state of charge
DE102007051657A1 (de) 2007-10-26 2009-04-30 Robert Bosch Gmbh Kommunikationssystem mit einem CAN-Bus und Verfahren zum Betreiben eines solchen Kommunikationssystems
TWI448111B (zh) 2008-03-18 2014-08-01 Icm Inc Automobile detection and control integration device and method thereof
JP5308802B2 (ja) * 2008-12-16 2013-10-09 ルネサスエレクトロニクス株式会社 Canノード
KR20100073846A (ko) * 2008-12-23 2010-07-01 한국전자통신연구원 Can 프로토콜에서의 데이터프레임 송신방법 및 수신방법
CN101873299B (zh) 2009-04-24 2013-08-14 北京大豪科技股份有限公司 串行总线和通信方法及系统
JP2010258990A (ja) 2009-04-28 2010-11-11 Autonetworks Technologies Ltd 制御システム及び制御プログラム更新方法
JP2010272971A (ja) * 2009-05-19 2010-12-02 Nagoya Univ 制御システム及び制御プログラム書換方法
US20110093639A1 (en) * 2009-10-19 2011-04-21 Microchip Technology Incorporated Secure Communications Between and Verification of Authorized CAN Devices
CN101814230A (zh) * 2010-04-01 2010-08-25 青岛海信电器股份有限公司 串口数据通信传输方法及装置
RU2597501C2 (ru) 2011-06-29 2016-09-10 Роберт Бош Гмбх Способ и устройство для последовательной передачи данных с гибким размером сообщений и переменной длительностью бита

Also Published As

Publication number Publication date
AU2012277890A1 (en) 2014-02-20
US9864724B2 (en) 2018-01-09
TWI605695B (zh) 2017-11-11
CN103827844A (zh) 2014-05-28
KR102029978B1 (ko) 2019-10-08
KR20140058517A (ko) 2014-05-14
JP5734515B2 (ja) 2015-06-17
TW201310246A (zh) 2013-03-01
DE102011078266A1 (de) 2013-01-03
RU2014102638A (ru) 2015-08-10
TWI559152B (zh) 2016-11-21
EP2726998B1 (de) 2015-09-09
JP5902844B2 (ja) 2016-04-13
AU2012277890B2 (en) 2017-06-29
TW201306523A (zh) 2013-02-01
JP2014518485A (ja) 2014-07-28
TW201304482A (zh) 2013-01-16
WO2013000902A1 (de) 2013-01-03
TWI558145B (zh) 2016-11-11
BR112013033821B1 (pt) 2021-07-13
EP2726998A1 (de) 2014-05-07
CN103827844B (zh) 2016-08-17
JP2015159592A (ja) 2015-09-03
US20140244871A1 (en) 2014-08-28
RU2602353C2 (ru) 2016-11-20
BR112013033821A2 (pt) 2017-02-14

Similar Documents

Publication Publication Date Title
ES2548410T3 (es) Método y dispositivo para la transmisión en serie de datos con un tamaño flexible de mensajes y una longitud de bits variable
ES2548409T3 (es) Método y dispositivo para la transmisión en serie de datos con un tamaño flexible de mensajes y una longitud de bits variable
ES2549640T3 (es) Método y dispositivo de transmisión en serie de datos adaptada a la capacidad de memoria
ES2538234T3 (es) Método y dispositivo para incrementar la capacidad de transmisión de datos en un sistema de bus en serie
ES2595155T3 (es) Método y dispositivo para adaptar la seguridad de transmisión de datos en un sistema de bus en serie
ES2639585T3 (es) Método y dispositivo para la transmisión de datos en serie con una tasa de datos conmutable
ES2957415T3 (es) Estación de abonado para un sistema de bus serie y procedimiento de comunicación en un sistema de bus serie
ES2548408T3 (es) Método y dispositivo para la transmisión en serie de datos con un tamaño flexible de mensajes y una longitud de bits variable
JP2014531781A (ja) メッセージの大きさがフレキシブルでビット長が可変的な直列データ伝送のための方法及び装置