WO2012132217A1 - Can通信システム、can送信装置、can受信装置、およびcan通信方法 - Google Patents

Can通信システム、can送信装置、can受信装置、およびcan通信方法 Download PDF

Info

Publication number
WO2012132217A1
WO2012132217A1 PCT/JP2012/001281 JP2012001281W WO2012132217A1 WO 2012132217 A1 WO2012132217 A1 WO 2012132217A1 JP 2012001281 W JP2012001281 W JP 2012001281W WO 2012132217 A1 WO2012132217 A1 WO 2012132217A1
Authority
WO
WIPO (PCT)
Prior art keywords
bit
logical value
data
transmission
bits
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.)
Ceased
Application number
PCT/JP2012/001281
Other languages
English (en)
French (fr)
Inventor
雅高 八ヶ代
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.)
Renesas Electronics Corp
Original Assignee
Renesas Electronics Corp
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 Renesas Electronics Corp filed Critical Renesas Electronics Corp
Priority to JP2013507103A priority Critical patent/JPWO2012132217A1/ja
Priority to US14/006,892 priority patent/US20140016654A1/en
Publication of WO2012132217A1 publication Critical patent/WO2012132217A1/ja
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/407Bus networks with decentralised control
    • H04L12/413Bus networks with decentralised control with random access, e.g. carrier-sense multiple-access with collision detection [CSMA-CD]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J3/00Time-division multiplex systems
    • H04J3/02Details
    • H04J3/06Synchronising arrangements
    • H04J3/0635Clock or time synchronisation in a network
    • H04J3/0638Clock or time synchronisation among nodes; Internode synchronisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J3/00Time-division multiplex systems
    • H04J3/02Details
    • H04J3/06Synchronising arrangements
    • H04J3/0635Clock or time synchronisation in a network
    • H04J3/0638Clock or time synchronisation among nodes; Internode synchronisation
    • H04J3/0658Clock or time synchronisation among packet nodes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/20Arrangements for detecting or preventing errors in the information received using signal quality detector
    • H04L1/205Arrangements for detecting or preventing errors in the information received using signal quality detector jitter monitoring
    • 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/40006Architecture of a communication node
    • H04L12/40013Details regarding a bus controller

Definitions

  • the present invention relates to a CAN communication system, a CAN transmission device, a CAN reception device, and a CAN communication method.
  • Patent Document 1 discloses a CAN (Controller Area Network) basic patent.
  • CAN Controller Area Network
  • data transmission / reception between the transmission side and the reception side is synchronized by performing resynchronization during communication between the transmission side and the reception side.
  • the mechanism of resynchronization in the CAN protocol will be specifically described.
  • FIG. 13 is a diagram showing a change in data length per bit when jitter occurs in the CAN protocol.
  • the data per bit in the CAN protocol bitstream includes a synchronization segment SYNC, a propagation time segment PROP, a phase buffer segment PHASE1, and a phase buffer segment PHASE2. Between the phase buffer segment PHASE1 and the phase buffer segment PHASE2, there is a sample point for sampling data.
  • the upper diagram of FIG. 13 shows the data length per bit recognized based on an ideal clock.
  • the lower diagram of FIG. 13 shows the data length per bit recognized based on the clock delayed by jitter.
  • df shown in the lower diagram of FIG. 13 indicates a jitter ratio based on an ideal clock length.
  • Bit stuffing is a protocol in which one bit is inserted after inverting the logical value when the same logical value continues for 5 bits on the bitstream. Thereby, continuation of the same logical value can be suppressed.
  • Patent Document 2 discloses a technique related to resynchronization.
  • the vehicular data transmission system according to this technique detects a period in which the same logic continues, and sets a resynchronization range of the data signal according to the detected period.
  • the bit stuffing mechanism inserts a stuff bit that takes the inverted value of the logical value when the same logical value continues for 5 bits on the bit stream.
  • the resynchronization interval is 10 bits at the longest.
  • the width from when a low stuff bit is inserted after 5 low bits are inserted continuously until a falling edge is formed after a low stuff bit is inserted after 5 high bits again. This is because the width is 10 bits.
  • the CAN communication system provides bit data in which a plurality of bits each taking either a first logical value or a second logical value obtained by inverting the first logical value are consecutive.
  • bit data in which a stuff bit having an inverted value of the same logical value is inserted next to the bit data having a predetermined number of consecutive consecutive logical values.
  • a receiving device that executes synchronization processing for synchronizing transmission and reception of the transmission data with the transmitting device, wherein the transmitting device includes the bit data In the bit data, one bit of the predetermined number minus 1 bit is continuously added to the first logical value after the bit following the predetermined number of consecutive bits in the bit data. And a transmission control unit for rewriting the data.
  • the CAN transmission device is based on a CAN (Controller Area Network) protocol from a second logical value obtained by inverting a first logical value in received data to the first logical value.
  • a plurality of bits each taking either the first logical value or the second logical value are continuous in a receiving apparatus that executes a synchronization process for synchronizing the transmission and reception of data in response to detection of an edge.
  • bit data When transmitting bit data, based on the CAN protocol, transmission data in which a stuff bit having an inverted value of the same logical value is inserted next to a predetermined number of consecutive bits having the same logical value in the bit data
  • a transmission device that transmits instead of the bit data, wherein when transmitting the bit data, a predetermined number of the first logical values are consecutive in the bit data.
  • a control unit that rewrites any one of the predetermined number minus 1 bit to the first logical value in succession from the bit next to the succeeding bit.
  • the transmitting device has a plurality of consecutive bits each taking either the first logical value or the second logical value obtained by inverting the first logical value.
  • a stuff bit that takes the inverted value of the same logical value is next to a bit in which the same logical value continues for a predetermined number of times in the bit data.
  • the inserted transmission data is received from the transmission device instead of the bit data, and an edge from the second logical value to the first logical value in the transmission data is detected based on the CAN protocol.
  • a receiving device that executes a synchronization process for synchronizing transmission and reception of the transmission data with the transmitting device, wherein the receiving device detects the second logical value.
  • the edge to the first logical value follows from the second logical value after the bit in which the first logical value continues for a predetermined number of times in the bit data when the transmitting device transmits the bit data. Including an edge to the first logical value in which any one of the predetermined number minus 1 bit is rewritten.
  • bit data in which a plurality of bits each taking either the first logical value or the second logical value obtained by inverting the first logical value is stored.
  • transmission data in which a stuff bit having an inverted value of the same logical value is inserted next to the bit data having a predetermined number of consecutive consecutive logical values In response to detection of an edge from the second logical value to the first logical value in the transmission data transmitted from the transmission device based on the CAN protocol, based on the CAN protocol.
  • the stuff bit taking the inverted value of the second logical value is inserted.
  • An edge from the second logical value to the first logical value can be generated at a position before the first. Therefore, the worst value of the resynchronization interval can be shortened.
  • a CAN communication system a CAN transmission device, a CAN reception device, and a CAN communication method that can construct a CAN communication system at low cost using a low-accuracy clock are provided. be able to.
  • FIG. 1 is a configuration diagram of a CAN communication system 101 according to the first embodiment of the present invention. In the present embodiment, a case where the CAN communication system 101 is applied to an automobile is illustrated.
  • the CAN communication system 101 includes a body system control node 102, a safety system control node 103, an information system control node 104, an engine system control node 105, and a chassis system control node 106.
  • the nodes 102 to 106 are connected to each other by a CAN bus, and can transmit / receive arbitrary data to / from each other.
  • the body system control node 102 controls body systems such as a headlamp, an air conditioner, and a door based on data received from other nodes.
  • the safety system control node 103 controls safety devices such as sensors and airbags based on data received from other nodes.
  • the information system control node 104 controls information system devices such as car audio, car radio, and car television based on data received from other nodes.
  • the engine system control node 105 controls the engine and engine system devices such as AT (Automatic Transmission) based on data received from other nodes.
  • the chassis control node 106 controls chassis devices such as steering and brakes based on data received from other nodes. Further, each of the nodes 102 to 106 transmits data based on the control result to other nodes as necessary.
  • FIG. 2 is a configuration diagram of the node 100 according to the first exemplary embodiment of the present invention.
  • each of the nodes 102 to 106 has the same configuration as that of the node 100.
  • the node 100 includes a CAN controller LSI (Large Scale Integration) 10 and a bus transceiver 14.
  • the CAN controller LSI 10 includes a CAN controller module 1, a CPU (Central Processing Unit) 11, other peripheral modules 12, and an SSCG (Spread Spectrum Model Clock Generator 13).
  • the CAN controller module 1 includes a bit stream control unit 2, an error management unit 3, an extended stuff bit control unit 4, a message handler 5, and a message buffer memory 6.
  • the CAN controller module 1, the CPU 11, and the other peripheral modules 12 are connected to each other by a local bus 21 and can transmit / receive arbitrary data to / from each other.
  • the CAN controller module 1 is accessed from the CPU 11 via the local bus 21.
  • the CAN controller module 1 is connected to the CAN bus via the bus transceiver 14.
  • the CAN controller module 1 transmits / receives data to / from other nodes in response to a request from the CPU 11.
  • the bit stream control unit 2 calculates a CRC (Cyclic Redundancy Check) based on the transmission frame data 24 output from the extended stuff bit control unit 4.
  • the bit stream control unit 2 adds a CRC to the transmission frame data 24 in accordance with the CAN protocol frame format.
  • the bit stream control unit 2 inserts stuff bits into transmission frame data to which a CRC is added based on bit stuffing defined by the CAN protocol. That is, a stuff bit having a logical value inverted from the logical value is inserted after five consecutive bits having the same logical value.
  • the bit stream control unit 2 outputs the transmission frame data in which the stuff bit is inserted to the bus transceiver 14 as a transmission data output (TxD) 31.
  • TxD transmission data output
  • the bit stream control unit 2 removes the stuff bits defined by the CAN protocol from the received data input (RxD) 30 output from the bus transceiver 14.
  • the bit stream control unit 2 performs a CRC check based on the received frame data from which the stuff bits are removed from the received data input (RxD) 30.
  • the bit stream control unit 2 detects an abnormality in the CRC check
  • the bit stream control unit 2 outputs an abnormality notification signal 26 for notifying the abnormality to the error management unit 3.
  • the bit stream control unit 2 removes the CRC from the received frame data after the CRC check.
  • the bit stream control unit 2 outputs the received frame data 25 from which the CRC has been removed to the extended stuff bit control unit 4.
  • bitstream control unit 2 performs resynchronization defined by the CAN protocol. That is, when the falling edge is detected in the received data input (RxD) 30, the bit stream control unit 2 causes the phase buffer segment PHASE 1 or the phase buffer segment PHASE 2 so that the falling edge is positioned in the synchronization segment SYNC. Is changed by the jump width setting value SJW to adjust the sample point.
  • the error management unit 3 performs processing according to the output of the abnormality notification signal 26 from the bit stream control unit 2. This process is, for example, a process in which the error management unit 3 further notifies the CPU 11 of the abnormality, so that the CPU 11 responds to this notification to recover from the abnormality or other peripheral module 12 to recover from the abnormality. You may make it perform control of.
  • the extended stuff bit control unit 4 overwrites the extended stuff bit on the transmission frame data 22 output from the message handler 5 based on a method described later. At this time, the extended stuff bit control unit 4 records the original logical value before overwriting the extended stuff bit in the redundant data area of the transmission frame data 24 and stores the transmission frame data 24 after overwriting the extended stuff bit. Output to the bitstream control unit 2.
  • the extended stuff bit control unit 4 applies the extended stuff bit to the received frame data 25 output from the bit stream control unit 2 according to the original logical value recorded in the redundant data area based on the method described later. Correct to the original logical value.
  • the extended stuff bit control unit 4 outputs the received frame data 23 after correction to the original logical value to the message handler 5.
  • the message handler 5 acquires the transmission frame data 22 stored in the transmission buffer of the message buffer memory 6 and transfers it to the extended stuff bit control unit 4. Further, the message handler 5 stores the received frame data 23 output from the extended stuff bit control unit 4 in the reception buffer of the message buffer memory 6.
  • the message buffer memory 6 has a reception buffer and a transmission buffer.
  • the transmission buffer stores transmission frame data to be transmitted to other nodes.
  • the reception buffer stores transmission frame data received from other nodes.
  • the message buffer memory 6 has a storage device for constituting a reception buffer and a transmission buffer.
  • the storage device is, for example, a register and a memory.
  • the CAN controller LSI 10 controls devices included in the node 100. For example, when the node 100 is the engine system control node 105, the engine system device is controlled.
  • the CPU 11 controls the devices included in the node 100 by outputting control instruction data for instructing other peripheral modules to control the devices included in the node 100 via the local bus 21.
  • CPU11 determines the control content of the apparatus contained in the node 100 based on the data received from the other node, for example.
  • the CPU 11 acquires data transmitted from other nodes from the reception buffer of the message buffer memory 6 via the local bus 21.
  • the CPU 11 stores data to be transmitted to other nodes via the local bus 21 in the transmission buffer of the message buffer memory 6.
  • the other peripheral module 12 controls the devices included in the node 100 based on the control instruction data output from the CPU 11.
  • the SSCG 13 supplies each of the clocks 41 to 43 to each circuit such as the CAN controller module 1, the CPU 11, and the other peripheral modules 12 in the CAN controller LSI 10. That is, in this Embodiment 1, the case where SSCG13 is multi-output SSCG is illustrated. As illustrated in FIG. 3, the SSCG 13 adds jitter to the clock in order to reduce noise in the clock. FIG. 3 illustrates a case where the clock 41 is an ideal clock and the clock 42 and the clock 43 are delayed by jitter. Thus, although the SSCG 13 is low EMI (Electro Magnetic Interference), the accuracy of the clock is lowered.
  • EMI Electro Magnetic Interference
  • the bus transceiver 14 transmits the transmission data output 31 output from the bit stream control unit 2 to another node as a bit stream.
  • the bus transceiver 14 outputs the bit stream received from another node to the bit stream control unit 2 as the reception data input 30.
  • FIG. 4 is a configuration diagram of the extended stuff bit control unit 4 according to the first embodiment of the present invention.
  • the extended stuff bit control unit 4 includes an identical logical value count unit 401, an extended stuff bit overwrite control unit 402, a redundant data area transmission register 403, a transmission frame register 404, a redundant data area reception register 409, an identical logical value count unit 410, A data restoration control unit 411 and a reception frame register 412 are included.
  • the same logical value counting unit 401 counts the number of consecutive identical logical values in the transmission frame bit read value 406 obtained by sequentially reading the transmission frame data 22 stored in the transmission frame register 404 bit by bit from the top.
  • the same logical value count unit 401 detects bits having the same logical value for 5 consecutive bits, it outputs a 5-bit continuous identical logical value detection signal 405 to the extended stuff bit overwrite control unit 402.
  • the extended stuff bit overwrite control unit 402 receives the same logical value of the transmission frame data 22 stored in the transmission frame register 404 in response to the output of the 5-bit consecutive identical logical value detection signal 405 from the identical logical value count unit 401. Reads the logical value of the next 5 consecutive bits and writes it to the corresponding bit in the redundant data area transmission register 403. Then, the extended stuff bit overwrite control unit 402 overwrites the same logical value of 5 consecutive bits with the next bit of the 5 consecutive bits of the same logical value. That is, the logical value before overwriting is stored in the redundant data area transmission register 403. Further, the overwritten bit becomes an extended stuff bit.
  • the redundant data area transmission register 403 stores the logical values before the overwriting of the extended stuff bits as many as the number of extended stuff bits in the transmission frame data 22.
  • the extended stuff bit control unit 4 stores the transmission frame data after overwriting the extended stuff bits stored in the transmission frame register 404 and the redundant data area transmission register 403 after the processing on the entire transmission frame data 22 is completed. Data obtained by concatenating the logical values before overwriting of the extended stuff bits is output to the bit stream control unit 2 as transmission frame data 24.
  • a portion corresponding to the logical value before overwriting in the transmission frame data 24 is referred to as a redundant data area.
  • the redundant data area transmission register 403 stores a logical value before the extension stuff bit is overwritten.
  • the redundant data area transmission register 403 stores a logical value before overwriting corresponding to each of the extended stuff bits included in the transmission frame data 22.
  • the transmission frame register 407 stores the transmission frame data 22 output from the message handler 5.
  • the redundant data area reception register 409 stores redundant data area data among the received frame data 25 output from the bit stream control unit 2. That is, the redundant data area reception register 409 stores the logical value before overwriting corresponding to each of the extended stuff bits included in the reception frame data 25.
  • the same logical value count unit 410 counts the number of consecutive identical logical values for the received frame bit read value 413 obtained by reading the data stored in the received frame register 412 bit by bit from the top in order.
  • the same logical value count unit 410 detects bits of the same logical value for 5 consecutive bits, it outputs a 5-bit continuous identical logical value detection signal 414 to the original data restoration control unit 411.
  • the original data restoration control unit 411 responds to the 5-bit consecutive identical logical value detection signal 414 from the identical logical value count unit 410, and among the logical values of the redundant data area output from the redundant data area reception register 409, A logical value 415 before overwriting of the next extended stuff bit of 5 bits having consecutive logical values is acquired. Then, the original data restoration control unit 411 overwrites the acquired logical value 415 on the extended stuff bit of the reception frame register 412. As a result, the logical value of the extended stuff bit is restored to the original logical value.
  • the same logical value count unit 410 and the original data restoration control unit 411 perform this process on the entire data stored in the reception frame register 412.
  • the extended stuff bit control unit 4 outputs the restored data stored in the reception frame register 412 to the message handler 5 as reception frame data 23 after the processing on the entire data stored in the reception frame register 412 is completed.
  • the received frame register 412 stores data corresponding to the original received frame data 23 excluding the redundant data area in the received frame data 25 output from the bit stream control unit 2.
  • FIG. 5 is a flowchart showing a transmission process of the extended stuff bit control unit 4 according to the first embodiment of the present invention.
  • the extended stuff bit control unit 4 acquires the transmission frame data 22 from the transmission buffer of the message buffer memory 6 via the message handler 5, and stores it in the transmission frame register 404 (S1).
  • the same logical value counting unit 401 reads one bit from the transmission frame data 22 stored in the transmission frame register 404 (S2). Note that 1-bit reading in step S2 and step S6 described later is performed in order from the top of the transmission frame data 22. Therefore, at the first reading, the first bit of the transmission frame data 22 is read. When the bit has already been read, the bit next to the bit read immediately before is read. Here, the order from the top of the transmission frame data 22 is equal to the transmission order of the bits included in the transmission frame data 22. The same logical value counting unit 401 determines whether or not all the transmission frame data 22 stored in the transmission frame register 404 has been read (S3).
  • the extended stuff bit control unit 4 executes the process of step S12 described later.
  • the same logical value counting unit 401 When it is determined that all the transmission frame data 22 has not been read (S3: No), the same logical value counting unit 401 initializes the count value of the counter to “1” (S4). The same logical value counting unit 401 sets the bit read immediately before as a reference bit that serves as a reference for counting whether or not the same logical value continues for 5 bits (S5). The same logical value counting unit 401 reads one bit from the transmission frame data 22 stored in the transmission frame register 404 (S6). The same logical value counting unit 401 determines whether or not all the transmission frame data 22 stored in the transmission frame register 404 has been read (S7).
  • the extended stuff bit control unit 4 executes a process of step S12 described later.
  • the same logical value counting unit 401 determines whether or not the reference bit and the bit read immediately before have the same logical value (S8).
  • the same logical value count unit 401 restarts the process from step S4. In this case, the same logical value is not continuous. Therefore, the process returns to step S4, and the counting of whether or not the same logical value continues for 5 bits is restarted with the bit read immediately before as the reference bit.
  • the same logical value count unit 401 counts up the counter (S9).
  • the same logical value counting unit 401 determines whether or not the counter value has reached the threshold value “5” (S10).
  • step S6 If the counter value is not equal to the threshold value “5” (S10: No), the same logical value counting unit 401 restarts the process from step S6. In this case, the same logical value continues from the reference bit to the bit read immediately before, but the same logical value has not yet continued for 5 bits. Therefore, returning to step S6, the logical value of the next bit is confirmed.
  • the extended stuff bit overwrite control unit 402 reads the logical value of the extended stuff bit next to the bit read immediately before, and writes it in the bit corresponding to the extended stuff bit in the redundant data area transmission register 403. Then, the extended stuff bit overwrite control unit 402 overwrites the extended stuff bit with a logical value of 5 consecutive bits (S11).
  • step S2 reads the next extended stuff bit (S2), sets it as a reference bit (S5), and restarts counting whether the same logical value is 5 bits continuous. .
  • step S 12 the extended stuff bit control unit 4 generates transmission frame data 24 based on the data stored in the transmission frame register 404 and the data stored in the redundant data area transmission register 403, and sends it to the bit stream control unit 2. Output (S12).
  • the transmission process of the extended stuff bit control unit 4 according to the first embodiment of the present invention has been described above. If the process is to overwrite the next five extended stuff bits with the same logical value, the above-described process is performed. It is not limited to a processing procedure, You may change suitably. For example, the reference bit is set and the logical value of the reference bit is compared with the logical value of the bit read immediately before, but the logical value of the bit read immediately before and the bit read before that bit You may make it compare with the logical value of. Further, for example, the execution order of the processes of step S4 and step S5 may be reversed.
  • FIG. 6 is a flowchart showing a reception process of the extended stuff bit control unit 4 according to the first embodiment of the present invention.
  • the extended stuff bit control unit 4 acquires the reception frame data 25 output from the bit stream control unit 2, and stores the redundant data area data in the received reception frame data 25 in the redundant data area reception register 409. The other data is stored in the reception frame register 412 (S21).
  • the same logical value counting unit 410 reads 1 bit from the received frame data 25 stored in the received frame register 412 (S22). Note that 1-bit reading in step S22 and steps S26 and S31 described later is performed in order from the top of the received frame data 25. Therefore, at the first reading, the first bit of the received frame data 25 is read. When the bit has already been read, the bit next to the bit read immediately before is read. Here, the order from the head of the reception frame data 25 is equal to the reception order of the bits included in the reception frame data 25. The same logical value counting unit 410 determines whether all the data stored in the reception frame register 412 has been read (S23).
  • the extended stuff bit control unit 4 executes a process of step S33 described later.
  • the same logical value counting unit 410 When it is determined that all the data stored in the reception frame register 412 has not been read (S23: No), the same logical value counting unit 410 initializes the count value of the counter to “1” (S24). The same logical value counting unit 410 sets the bit read immediately before as a reference bit that serves as a reference for counting whether or not the same logical value continues for 5 bits (S25). The same logical value counting unit 410 reads one bit from the data stored in the reception frame register 412 (S26). The same logical value counting unit 410 determines whether all the data stored in the reception frame register 412 has been read (S27).
  • the extended stuff bit control unit 4 executes a process of step S33 described later.
  • the same logical value counting unit 410 determines whether or not the reference bit and the bit read immediately before have the same logical value. (S28).
  • the same logical value count unit 410 restarts the process from step S24. In this case, the same logical value is not continuous. Therefore, the process returns to step S24, and the counting of whether or not the same logical value continues for 5 bits is restarted with the bit read immediately before as the reference bit.
  • the same logical value count unit 410 counts up the counter (S29). The same logical value counting unit 410 determines whether or not the counter value has reached the threshold value “5” (S30).
  • step S26 If the counter value is not equal to the threshold value “5” (S30: No), the same logical value counting unit 410 restarts the process from step S26. In this case, the same logical value continues from the reference bit to the bit read immediately before, but the same logical value has not yet continued for 5 bits. Therefore, the process returns to step S26 to confirm the logical value of the next bit.
  • the same logical value continues for 5 bits from the reference bit to the bit read immediately before. That is, the bit next to the bit read immediately before is an extended stuff bit.
  • the same logical value count unit 410 reads one bit of the next extended stuff bit from the received frame data 25 stored in the received frame register 412 before the extended stuff bit is restored to the logical value before being overwritten ( S31).
  • the original data restoration control unit 411 reads the logical value before overwriting stored in the bit corresponding to the extended stuff bit in the redundant data area reception register 409. Then, the original data restoration control unit 411 overwrites the extended stuff bit of the reception frame register 412 with the read logical value before overwriting (S32).
  • step S23 uses the bit read immediately before as the reference bit (S25), and restarts counting whether or not the same logical value continues for 5 bits.
  • step S33 the extended stuff bit control unit 4 stores the received frame data 23 generated by returning the extended stuff bit of the received frame data 25 stored in the received frame register 412 to the logical value before overwriting. 5 (S33).
  • the reception process of the extended stuff bit control unit 4 according to the first embodiment of the present invention has been described above, but the process of restoring the logical value before overwriting to the next 5-bit extended stuff bit in which the same logical value is continuous
  • the reference bit is set and the logical value of the reference bit is compared with the logical value of the read bit.
  • the logical value of the bit read immediately before and the logical value of the bit read before that bit are compared. You may make it compare with a value.
  • the execution order of the processes of step S24 and step S25 may be reversed.
  • Low of the same logical value is forcibly set to the next bit of the 5 bits.
  • the bit next to the stuff bit can be set to Low. That is, the falling edge which is the resynchronization edge defined by the CAN protocol is created by overwriting the extended stuff bit immediately after the stuff bit to Low.
  • the worst value of the resynchronization interval can be shortened from 10 bits to 6 bits. Therefore, as illustrated with reference to FIG. 3, even if the system is constructed by SSCG, a clock oscillator, or the like that generates a low-accuracy clock, the influence can be reduced. That is, even if an SSCG or a clock oscillator that generates a low-cost but low-accuracy clock is used, a CAN communication system can be constructed. Therefore, according to the first embodiment, a CAN communication system can be constructed at a low cost using a low-accuracy clock.
  • the SSCG that intentionally generates a jitter-added clock is effective in reducing EMI noise, but has a problem that it cannot be used easily because the clock error between nodes becomes large. .
  • noise can be reduced.
  • the frequency band of FM (Frequency Modulation) radio overlaps with the operating frequency of a general MCU (Micro Control Unit), so that it is possible to reduce noise mixed in and improve sound quality. become.
  • MCU Micro Control Unit
  • harmonic noise has an adverse effect on the UHF (Ultra High Frequency) band.
  • UHF Ultra High Frequency
  • the next bit of 5 bits having the same logical value is used as an extended stuff bit, and the same logical value having 5 bits is overwritten so that the edge is overwritten.
  • the worst value of the resynchronization interval is 10
  • the bit can be shortened to 9 bits. That is, in the transmission frame data 22, 4 bits (7th to 10th bits in FIG. 7) are consecutive from the next extended stuff bit of 5 bits (the 1st to 5th bits in FIG. 7) having the same logical value.
  • the worst value of the resynchronization interval can be shortened by overwriting any one of the bits) with the same logical value of 5 consecutive bits.
  • the redundant data area of the transmission frame data 24 and the reception frame data 25 is indicated by the redundant data area of the transmission frame data 24 and the reception frame data 25.
  • a 3-byte redundant data area is defined for transmission frame data 22 having a maximum size of 79 bits.
  • the transmission frame data 22 includes a start of frame, an arbitration field Arb, a control field CTRL, and a data field DATA in a CAN protocol data frame.
  • the logical value before overwriting is stored so as to correspond to each of the extended stuff bits of the transmission frame data.
  • the logical value before overwriting the extended stuff bits is recorded in the maximum 15-bit redundant data area.
  • the logical values before overwriting of the extended stuff bits in the order from the beginning to the end of the transmission frame data are stored in the respective bits in the order from the beginning to the end of the redundant data area.
  • the present invention is not limited to this as long as the extended stuff bit corresponds to the logical value before overwriting. Note that the order from the beginning to the end is the order of transmission in the case of transmission as a bit stream.
  • every 4 bits are provided with a bit whose logical value is the inverted value of the left adjacent bit. That is, in the redundant data area, a bit having an inverted value of the previous bit is provided for every 4 bits. According to this, it is possible to prevent 5 bits of the same logical value from continuing in the redundant data area and to prevent stuff bits from being inserted into the redundant data area. The reason for this is that if it becomes necessary to provide extended stuff bits in the redundant data area, a redundant data area corresponding to the extended stuff bit is required. Further, according to this, the resynchronization interval can be shortened.
  • the redundant data area has the maximum 15-bit logical value bit before overwriting and the bit having the logical value of the inverted value of the previous bit every 4 bits. Are defined as 3 bytes long. Note that the size of the redundant data area is limited to the size exemplified here as long as all of these bits can be recorded even when the number of extended stuff bits is the largest based on the maximum size of the transmission frame data 22. I can't.
  • FIG. 10 is a configuration diagram of the node 200 according to the second embodiment of the present invention. Note that description of the same contents as those of the node 100 according to the first embodiment is omitted. Moreover, since the structure of the CAN communication system concerning Embodiment 2 of this invention is the same as that of Embodiment 1, description is abbreviate
  • the node 200 is different from the node 100 according to the first embodiment in that the node 200 does not include the extended stuff bit control unit 4 but includes the bit stream control unit 7 instead of the bit stream control unit 2.
  • the bitstream control unit 7 further performs resynchronization at the rising edge. That is, the bit stream control unit 7 performs resynchronization at the rising edge in addition to resynchronization at the falling edge determined by the CAN protocol. Further, the message handler 5 transmits and receives transmission frame data 22 and reception frame data between the bit stream control unit 7 and the message buffer memory 6.
  • FIG. 11 is a configuration diagram of the bit stream control unit 7 according to the second embodiment of the present invention.
  • the bit stream control unit 7 includes a CRC encoding unit 701, a frame format shaping output control unit 702, a transmission shift register 703, both rising and falling edge detection circuits 704, a bit resynchronization control unit 705, a bit sampling unit 706, a reception shift register 707, a CRC decoding and stuff bit removing unit 708, a flip-flop group 709, and a protocol control state machine 710.
  • the CRC encoding unit 701 generates a CRC based on the transmission frame data 22 output from the transmission shift register 703.
  • the CRC encoding unit 701 outputs the generated CRC to the transmission shift register 703.
  • the frame format shaping output control unit 702 inserts stuff bits into the data 711 output from the transmission shift register 703 and outputs the data 711 to the bus transceiver 14 as a transmission data output (TXD) 31.
  • the transmission shift register 703 sequentially outputs the transmission frame data 22 output from the message handler 5 to the CRC encoding unit 701 and the sequential frame format shaping output control unit 702 bit by bit. Also, the transmission shift register 703 continues the transmission frame data 22 and sequentially outputs the CRC output from the CRC encoding unit 701 to the frame format shaping output control unit 702 bit by bit.
  • the rising / falling edge detection circuit 704 detects the rising edge and the falling edge of the received data input (RxD) 30.
  • the rising / falling edge detection circuit 704 outputs a bit resynchronization trigger signal 713 to the bit resynchronization control unit 705 when detecting either a rising edge or a falling edge.
  • the rising / falling edge detection circuit 704 uses an XOR circuit to perform XOR between the logical value of an arbitrary bit of the received data input (RxD) 30 and the logical value of the bit next to that bit. By performing the operation, the logical value of each bit is different, and it is detected that a rising edge or a falling edge has occurred.
  • both the rising and falling edge detection circuit 704 inputs the logical value of each bit to the XOR circuit, and resynchronizes the high signal output from the XOR circuit when the logical value of each bit is different.
  • the trigger signal 713 is output to the bit resynchronization control unit 705.
  • the bit resynchronization control unit 705 outputs a bit timing signal 714 to the bit sampling unit 706 for each sample point. Further, the bit resynchronization control unit 705 performs resynchronization in accordance with the bit resynchronization trigger signal 713 output from the rising / falling edge detection circuit 704. In other words, the bit resynchronization control unit 705 corrects the sample point based on the output timing of the bit resynchronization trigger signal 713 using the output of the bit resynchronization trigger signal 713 from the rising and falling edge detection circuit 704 as a trigger. To do. According to this, in the second embodiment, resynchronization can be performed at the rising edge in addition to the falling edge.
  • the bit sampling unit 706 samples the logical value 712 of the bit output from the flip-flop group 709 in the received data input (RxD) 30. To do.
  • the bit sampling unit 706 sequentially outputs the sampled logical values 715 to the reception shift register 707. That is, the reception data input (RxD) 30 sampled by the bit sampling unit 706 is sequentially output to the reception shift register 707 bit by bit.
  • the reception shift register 707 sequentially outputs the reception data input (RxD) 30 output from the bit sampling unit 706 to the CRC decoding and stuff bit removal unit 708 bit by bit.
  • the CRC decoding and stuff bit removing unit 708 removes the stuff bits defined by the CAN protocol from the reception data input (RxD) 30 output from the reception shift register 707.
  • the CRC decoding and stuff bit removing unit 708 performs a CRC check based on the received frame data from which the stuff bits are removed from the received data input (RxD) 30.
  • the CRC decoding and stuff bit removing unit 708 detects an abnormality in the CRC check
  • the CRC decoding and stuff bit removing unit 708 outputs an abnormality notification signal 716 for notifying the abnormality to the protocol control state machine 710.
  • the CRC decoding and stuff bit removing unit 708 removes the CRC from the received frame data after the CRC check.
  • the CRC decoding and stuff bit removing unit 708 outputs the received frame data 23 from which the CRC has been removed to the extended stuff bit control unit 4.
  • the flip-flop group 709 includes a plurality of flip-flops for preventing metastable propagation.
  • the flip-flop group 709 sequentially outputs the received data input (RxD) 30 output from the bus transceiver 14 to the both rising and falling edge detection circuits 704 and the bit sampling unit 706 bit by bit.
  • the protocol control state machine 710 outputs the abnormality notification signal 26 to the error management unit 3 in response to the output of the abnormality notification signal 716 from the CRC decoding and stuff bit removal unit 708.
  • the mechanism and effect of the second embodiment will be described with reference to FIG.
  • the resynchronization interval is worst in the CAN protocol according to Patent Document 1 because the resynchronization is performed only at the falling edge.
  • the value was 10 bits.
  • the worst value of the resynchronization interval can be shortened to 5 bits by resynchronizing even at the rising edge.
  • the present invention is not limited to the above-described embodiment, and can be appropriately changed without departing from the spirit of the present invention.
  • the first embodiment and the second embodiment may be implemented in combination.
  • the present invention is not limited to this.
  • the present invention may be applied to ships and industrial equipment.
  • the case where stuff bit insertion and extended stuff bit specification are performed in response to detection of five consecutive bits of the same logical value is exemplified, but the number of bits is not limited to five bits. .
  • the case where all the extended stuff bits are overwritten is exemplified, but the present invention is not limited to this.
  • the overwriting may not be performed.
  • the present invention is not limited to this.
  • the interval between the rising edges can be shortened even if the processing related to the extended stuff bit described above is performed, so that the resynchronization interval can be shortened. it can.
  • the extended stuff bit when resynchronization is performed in response to detection of a falling edge based on the CAN protocol, the extended stuff bit is overwritten even if any of the High and Low bits is continued for 5 bits.
  • the extended stuff bit is overwritten when five Low bits are consecutive among High and Low. Good.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Quality & Reliability (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)
  • Time-Division Multiplex Systems (AREA)
  • Communication Control (AREA)

Abstract

 本発明にかかるCAN通信システムは、それぞれが第1の論理値又は第1の論理値を反転した第2の論理値のいずれかをとる複数のビットが連続するビットデータを送信するときに、CANプロトコルに基づき、ビットデータにおいて同一の論理値が所定数連続するビットの次に、同一の論理値の反転値をとるスタッフビットを挿入した送信データを、ビットデータに代えて送信する送信装置と、CANプロトコルに基づき、送信データにおける第2の論理値から第1の論理値へのエッジの検出に応じて、送信装置との間で送信データの送受信の同期をとる受信装置を備える。送信装置は、ビットデータを送信するときに、ビットデータにおいて第1の論理値が所定数連続するビットの次のビットから連続して所定数-1ビットのうち、いずれかのビットを第1の論理値に書き換える。

Description

CAN通信システム、CAN送信装置、CAN受信装置、およびCAN通信方法
 本発明は、CAN通信システム、CAN送信装置、CAN受信装置、およびCAN通信方法に関する。
 特許文献1には、CAN(Controller Area Network)基本特許が開示されている。このCANプロトコルでは、送信側と受信側との間での通信中に、再同期を行うことによって、送信側と受信側との間でのデータの送受信の同期をとる。以下、CANプロトコルにおける再同期の仕組みについて、具体的に説明する。
 図13は、CANプロトコルにおいて、ジッタが発生した場合における1ビット当たりのデータ長の変化を示す図である。図13に示すように、CANプロトコルのビットストリームにおける1ビット当たりのデータは、シンクロナイゼーションセグメントSYNC、プロパゲーションタイムセグメントPROP、フェーズバッファセグメントPHASE1、及びフェーズバッファセグメントPHASE2を含む。フェーズバッファセグメントPHASE1とフェーズバッファセグメントPHASE2との間に、データをサンプリングするサンプルポイントがある。
 図13の上図は、理想的なクロックに基づいて認識される1ビット当たりのデータ長を示している。そして、図13の下図は、ジッタによって遅延したクロックに基づいて認識される1ビット当たりのデータ長を示している。ここで、図13の下図に示すdfは、理想のクロック長を基準としたジッタの割合を示している。このように、受信側がジッタによって遅延したクロックに基づいて動作して受信したデータを認識する場合、図13の下図に示すようにサンプルポイントが遅延してしまう。
 このような遅延が蓄積すると、図14に示すように、本来データをサンプリンすべきタイミングでサンプリングを行うことができなくなってしまうという問題がある。具体的には、図14に例示するように、10ビット目のデータとして、Highをサンプリングすべきであるのに、Lowをサンプリングしてしまうようになってしまう。しかし、コストを下げるためには、低コストのクロック発振子やSSCG(Spread Spectrum Clock Generator)等を使用して、精度の低いクロックでも動作できるようにすることが望ましい。
 このような問題を解決するために、CANプロトコルでは、ビットストリームの立下りエッジの受信時に立下りエッジがシンクロナイゼーションセグメントSYNCからずれている場合、ジャンプ幅設定値SJWだけ、サンプルポイントを補正する再同期を行う。これによって、送信側と受信側のクロック誤差を吸収することができる。具体的には、図15に示すように、立下りエッジを早く検出した場合には、フェーズバッファセグメントPHASE2からジャンプ幅設定値SJW分の長さを減らすことで、シンクロナイゼーションセグメントSYNCに立下りエッジが位置するように誤差を調整して同期をとる。また、逆に、立下りエッジを遅れて検出した場合には、フェーズバッファセグメントPHASE1にジャンプ幅設定値SJW分の長さを加えることで、シンクロナイゼーションセグメントSYNCに立下りエッジが位置するように誤差を調整して同期をとる。
 このように、CANプロトコルでは、上述したように立下りエッジの検出に応じて、再同期を行うようにしている。しかし、立下りエッジの検出に応じた再同期では、同一論理値のビットが続くほど再同期を行う契機が減り、クロック誤差にシビアになってしまう。そこで、特許文献1に開示の技術には、同一論理値の継続を抑える仕組みとして、ビットスタッフィングが組み込まれている。
 ビットスタッフィングとは、ビットストリーム上に同一論理値が5ビット続いたところで、その論理値を反転したビットを1ビット挿入するプロトコルである。これによって、同一論理値の継続を抑えることができる。
 なお、特許文献2に、再同期に関する技術が開示されている。この技術にかかる車両用データ伝送システムは、同一論理が連続する期間を検出して、検出した期間に応じて、データ信号の再同期範囲を設定する。
米国特許第5001642号明細書 特開平06-319172号公報
 上述したように、ビットスタッフィングという仕組みは、ビットストリーム上に同一論理値が5ビット続いたところで、その論理値の反転値をとるスタッフビットを挿入するようにしている。しかし、これは再同期間隔が最長で10ビットとなることを意味している。具体的には、Lowのビットが5ビット連続してHighのスタッフビットが挿入されてから、再びHighのビットが5ビット連続してLowのスタッフビットが挿入されて立下りエッジができるまでの幅が、10ビット分の幅となるからである。
 しかし、このように、再同期間隔が長くなればなるほど、クロック誤差の累積値が大きくなるため、クロックに高い精度が要求されるようになってしまう。つまり、低精度のクロックを使用して低コストでシステム構築を行うためには、再同期間隔の最悪値をより短くすることが課題となっている。
 本発明の第1の態様にかかるCAN通信システムは、それぞれが第1の論理値又は当該第1の論理値を反転した第2の論理値のいずれかをとる複数のビットが連続するビットデータを送信するときに、CAN(Controller Area Network)プロトコルに基づき、前記ビットデータにおいて同一の論理値が所定数連続するビットの次に、当該同一の論理値の反転値をとるスタッフビットを挿入した送信データを、前記ビットデータに代えて送信する送信装置と、前記CANプロトコルに基づき、前記送信装置から送信された送信データにおける前記第2の論理値から前記第1の論理値へのエッジの検出に応じて、前記送信装置との間で前記送信データの送受信の同期をとる同期処理を実行する受信装置と、を備え、前記送信装置は、前記ビットデータを送信するときに、前記ビットデータにおいて前記第1の論理値が所定数連続するビットの次のビットから連続して前記所定数-1ビットのうち、いずれかのビットを前記第1の論理値に書き換える送信制御部を有するものである。
 本発明の第2の態様にかかるCAN送信装置は、CAN(Controller Area Network)プロトコルに基づき、受信したデータにおける第1の論理値を反転した第2の論理値から前記第1の論理値へのエッジの検出に応じて、前記データの送受信の同期をとる同期処理を実行する受信装置に、それぞれが前記第1の論理値又は前記第2の論理値のいずれかをとる複数のビットが連続するビットデータを送信するときに、前記CANプロトコルに基づき、前記ビットデータにおいて同一の論理値が所定数連続するビットの次に、当該同一の論理値の反転値をとるスタッフビットを挿入した送信データを、前記ビットデータに代えて送信する送信装置であって、前記ビットデータを送信するときに、前記ビットデータにおいて前記第1の論理値が所定数連続するビットの次のビットから連続して前記所定数-1ビットのうち、いずれかのビットを前記第1の論理値に書き換える制御部を有するものである。
 本発明の第3の態様にかかるCAN受信装置は、送信装置が、それぞれが第1の論理値又は当該第1の論理値を反転した第2の論理値のいずれかをとる複数のビットが連続するビットデータを送信するときに、CAN(Controller Area Network)プロトコルに基づき、前記ビットデータにおいて同一の論理値が所定数連続するビットの次に、当該同一の論理値の反転値をとるスタッフビットを挿入した送信データを、前記送信装置から前記ビットデータに代えて受信して、前記CANプロトコルに基づき、当該送信データにおける前記第2の論理値から前記第1の論理値へのエッジの検出に応じて、前記送信装置との間で前記送信データの送受信の同期をとる同期処理を実行する受信装置であって、前記受信装置が検出する前記第2の論理値から前記第1の論理値へのエッジは、前記第2の論理値から、前記送信装置が、前記ビットデータを送信するときに前記ビットデータにおいて前記第1の論理値が所定数連続するビットの次のビットから連続して前記所定数-1ビットのうち、いずれかのビットを書き換えた第1の論理値へのエッジを含むものである。
 本発明の第4の態様にかかるCAN通信方法は、それぞれが第1の論理値又は当該第1の論理値を反転した第2の論理値のいずれかをとる複数のビットが連続するビットデータを送信するときに、CAN(Controller Area Network)プロトコルに基づき、前記ビットデータにおいて同一の論理値が所定数連続するビットの次に、当該同一の論理値の反転値をとるスタッフビットを挿入した送信データを、前記ビットデータに代えて送信する送信装置と、前記CANプロトコルに基づき、前記送信装置から送信された送信データにおける前記第2の論理値から前記第1の論理値へのエッジの検出に応じて、前記送信装置との間で前記送信データの送受信の同期をとる同期処理を実行する受信装置との間のCAN通信方法であって、前記送信装置が、前記ビットデータを送信するときに、前記ビットデータにおいて前記第1の論理値が所定数連続するビットの次のビットから連続して前記所定数-1ビットのうち、いずれかのビットを前記第1の論理値に書き換えるものである。
 本発明の上述した各態様によれば、第2の論理値のスタッフビットから第2の論理値が連続する場合であっても、その第2の論理値の反転値をとるスタッフビットが挿入されるよりも前の位置で第2の論理値から第1の論理値へのエッジを生成することができる。そのため、再同期間隔の最悪値を短縮することができる。
 本発明の上述した各態様によれば、低精度のクロックを使用して低コストでCAN通信システムを構築することができるCAN通信システム、CAN送信装置、CAN受信装置、およびCAN通信方法を提供することができる。
本発明の実施の形態1にかかるCAN通信システムの構成図である。 本発明の実施の形態1にかかるノードの構成図である。 本発明の実施の形態1にかかるSSCGによって生成されるクロックの一例を示す図である。 本発明の実施の形態1にかかる拡張スタッフビット制御部の構造を示す図である。 本発明の実施の形態1にかかる拡張スタッフビット制御部の送信処理を示すフローチャートである。 本発明の実施の形態1にかかる拡張スタッフビット制御部の受信処理を示すフローチャートである。 本発明の実施の形態1にかかるメカニズム及び効果を説明するための図である。 本発明の実施の形態1にかかる送信データフレームと冗長データ領域との関係を示す図である。 本発明の実施の形態1にかかる冗長データ領域の構成図である。 本発明の実施の形態1にかかるノードの構成図である。 本発明の実施の形態2にかかるビットストリーム制御部の構成図である。 本発明の実施の形態2にかかるメカニズム及び効果を説明するための図である。 CANプロトコルにおいて、ジッタが発生した場合における1ビット当たりのデータ長の変化を示す図である。 サンプルポイントのずれを説明するための図である。 CANプロトコルにおける再同期を説明するための図である。
発明の実施の形態1.
 図1を参照して、本発明の実施の形態1にかかるCAN通信システム101の構成について説明する。図1は、本発明の実施の形態1にかかるCAN通信システム101の構成図である。本実施の形態では、CAN通信システム101を自動車に適用した場合について例示する。
 CAN通信システム101は、ボディ系制御ノード102、安全系制御ノード103、情報系制御ノード104、エンジン系制御ノード105、及びシャーシ系制御ノード106を有する。各ノード102~106は、CANバスによって相互に接続されており、任意のデータを相互に送受信することができる。
 ボディ系制御ノード102は、他のノードから受信したデータに基づいて、ヘッドランプ、エアコン及びドア等のボディ系の装置の制御を行う。安全系制御ノード103は、他のノードから受信したデータに基づいて、センサ及びエアバック等の安全系の装置の制御を行う。情報系制御ノード104は、他のノードから受信したデータに基づいて、カーオーディオ、カーラジオ及びカーテレビ等の情報系の装置の制御を行う。エンジン系制御ノード105は、他のノードから受信したデータに基づいて、エンジン及びAT(Automatic Transmission)等のエンジン系の装置の制御を行う。シャーシ系制御ノード106は、他のノードから受信したデータに基づいて、ステアリング及びブレーキ等のシャーシ系の装置の制御を行う。また、各ノード102~106のそれぞれは、必要に応じて制御結果に基づいたデータを、他のノードに送信する。
 続いて、図2を参照して、本発明の実施の形態1にかかるノード100の構成について説明する。図2は、本発明の実施の形態1にかかるノード100の構成図である。本実施の形態1では、各ノード102~106が、ノード100と同様の構成であるものとする。
 ノード100は、CANコントローラLSI(Large Scale Integration)10及びバストランシーバ14を有する。CANコントローラLSI10は、CANコントローラモジュール1、CPU(Central Processing Unit)11、他周辺モジュール12、及びSSCG(Spread Spectrum Clock Generator)13を有する。CANコントローラモジュール1は、ビットストリーム制御部2、エラー管理部3、拡張スタッフビット制御部4、メッセージハンドラ5、及びメッセージバッファメモリ6を有する。CANコントローラモジュール1、CPU11及び他周辺モジュール12は、ローカルバス21によって相互に接続されており、任意のデータを相互に送受信することができる。
 CANコントローラモジュール1は、ローカルバス21を介して、CPU11からアクセスされる。CANコントローラモジュール1は、バストランシーバ14を介して、CANバスに接続されている。CANコントローラモジュール1は、CPU11からの要求に応じて、他のノードとの間でデータを送受信する。
 ビットストリーム制御部2は、拡張スタッフビット制御部4から出力された送信フレームデータ24に基づいてCRC(Cyclic Redundancy Check)を算出する。ビットストリーム制御部2は、CANプロトコルのフレームフォーマットに従って、CRCを送信フレームデータ24に付加する。ビットストリーム制御部2は、CRCが付加された送信フレームデータに、CANプロトコルで定められたビットスタッフィングに基づいてスタッフビットを挿入する。つまり、同一論理値が連続した5ビットの次に、その論理値とは反転した論理値をとるスタッフビットが挿入される。ビットストリーム制御部2は、スタッフビットを挿入した送信フレームデータを送信データ出力(TxD)31としてバストランシーバ14に出力する。
 また、ビットストリーム制御部2は、バストランシーバ14から出力された受信データ入力(RxD)30から、CANプロトコルで定義されたスタッフビットを除去する。ビットストリーム制御部2は、受信データ入力(RxD)30からスタッフビットを除去した受信フレームデータに基づいてCRCチェックを行う。ビットストリーム制御部2は、CRCチェックで異常を検出した場合、異常を通知する異常通知信号26をエラー管理部3に出力する。ビットストリーム制御部2は、CRCチェック後に、受信フレームデータからCRCを除去する。ビットストリーム制御部2は、CRCを除去した受信フレームデータ25を拡張スタッフビット制御部4に出力する。
 また、ビットストリーム制御部2は、CANプロトコルで定義された再同期を行う。つまり、ビットストリーム制御部2は、受信データ入力(RxD)30において、立下りエッジを検出した場合、シンクロナイゼーションセグメントSYNCに立下りエッジが位置するように、フェーズバッファセグメントPHASE1又はフェーズバッファセグメントPHASE2の長さをジャンプ幅設定値SJW分変更することで、サンプルポイントを調整する。
 エラー管理部3は、ビットストリーム制御部2からの異常通知信号26の出力に応じた処理を行う。この処理は、例えば、エラー管理部3がさらにCPU11に異常を通知する処理とすることで、CPU11がこの通知に応じて、異常から復帰するための処理又は異常から復帰するための他周辺モジュール12の制御を行うようにしてもよい。
 拡張スタッフビット制御部4は、メッセージハンドラ5から出力された送信フレームデータ22に対して、後述する方式に基づいて拡張スタッフビットを上書きする。このとき、拡張スタッフビット制御部4は、送信フレームデータ24の冗長データ領域に、拡張スタッフビットを上書きする前の本来の論理値を記録して、拡張スタッフビットの上書き後の送信フレームデータ24をビットストリーム制御部2に出力する。
 また、拡張スタッフビット制御部4は、ビットストリーム制御部2から出力された受信フレームデータ25に対して、後述する方式に基づいて冗長データ領域に記録された本来の論理値によって、拡張スタッフビットを本来の論理値に補正する。拡張スタッフビット制御部4は、本来の論理値への補正後の受信フレームデータ23をメッセージハンドラ5に出力する。
 メッセージハンドラ5は、メッセージバッファメモリ6の送信バッファに格納された送信フレームデータ22を取得して拡張スタッフビット制御部4に転送する。また、メッセージハンドラ5は、拡張スタッフビット制御部4から出力された受信フレームデータ23をメッセージバッファメモリ6の受信バッファに格納する。
 メッセージバッファメモリ6は、受信バッファ及び送信バッファを有する。送信バッファは、他のノードに送信する送信フレームデータが格納される。受信バッファは、他のノードから受信した送信フレームデータが格納される。メッセージバッファメモリ6は、受信バッファ及び送信バッファを構成するための記憶装置を有する。記憶装置は、例えば、レジスタ及びメモリ等である。
 CANコントローラLSI10は、ノード100に含まれる装置の制御を行う。例えば、ノード100がエンジン系制御ノード105である場合、エンジン系の装置の制御を行う。
 CPU11は、ローカルバス21を介して、他周辺モジュールに対して、ノード100に含まれる装置の制御を指示する制御指示データを出力することによって、ノード100に含まれる装置を制御する。CPU11は、例えば、他のノードから受信したデータに基づいて、ノード100に含まれる装置の制御内容を決定する。CPU11は、ローカルバス21を介して、他のノードから送信されたデータをメッセージバッファメモリ6の受信バッファから取得する。CPU11は、ローカルバス21を介して、他のノードに送信するデータをメッセージバッファメモリ6の送信バッファに格納する。
 他周辺モジュール12は、CPU11から出力された制御指示データに基づいて、ノード100に含まれる装置を制御する。
 SSCG13は、CANコントローラLSI10内のCANコントローラモジュール1、CPU11、及び他周辺モジュール12等の各回路に、クロック41~43のそれぞれを供給する。つまり、本実施の形態1では、SSCG13が、多出力のSSCGである場合について例示している。SSCG13は、図3に例示するように、クロックにおけるノイズを低減するために、クロックにジッタを加える。図3では、クロック41が理想的なクロックであり、クロック42及びクロック43がジッタによって遅延している場合について例示している。このように、SSCG13は、低EMI(Electro Magnetic Interference)ではあるが、クロックの精度が低くなってしまう。
 バストランシーバ14は、ビットストリーム制御部2から出力された送信データ出力31をビットストリームとして他のノードに送信する。バストランシーバ14は、他のノードから受信したビットストリームを受信データ入力30としてビットストリーム制御部2に出力する。
 続いて、図4を参照して、本発明の実施の形態1にかかる拡張スタッフビット制御部4の構成について説明する。図4は、本発明の実施の形態1にかかる拡張スタッフビット制御部4の構成図である。
 拡張スタッフビット制御部4は、同一論理値カウント部401、拡張スタッフビット上書き制御部402、冗長データ領域送信レジスタ403、送信フレームレジスタ404、冗長データ領域受信レジスタ409、同一論理値カウント部410、元データ復元制御部411、及び受信フレームレジスタ412を有する。
 同一論理値カウント部401は、送信フレームレジスタ404に格納された送信フレームデータ22を先頭から1ビットずつ順番に読み出した送信フレームビット読み出し値406において、同一論理値が連続する数をカウントする。同一論理値カウント部401は、5ビット連続して同一論理値のビットを検出した場合、5ビット連続同一論理値検出信号405を拡張スタッフビット上書き制御部402に出力する。
 拡張スタッフビット上書き制御部402は、同一論理値カウント部401からの5ビット連続同一論理値検出信号405の出力に応じて、送信フレームレジスタ404に格納された送信フレームデータ22のうち、同一論理値が連続した5ビットの次のビットの論理値を読み出して冗長データ領域送信レジスタ403の対応するビットに書き込む。そして、拡張スタッフビット上書き制御部402は、その5ビット連続した同一論理値を、同一論理値が連続した5ビットの次のビットに上書きする。つまり、上書き前の論理値は、冗長データ領域送信レジスタ403に格納されることになる。また、この上書きされたビットが拡張スタッフビットとなる。同一論理値カウント部401及び拡張スタッフビット上書き制御部402は、この処理を送信フレームレジスタ404に格納された送信フレームデータ22の全体に対して行う。よって、送信フレームデータ22における拡張スタッフビットの数だけ、冗長データ領域送信レジスタ403に拡張スタッフビットの上書き前の論理値が格納される。
 拡張スタッフビット制御部4は、送信フレームデータ22の全体に対する処理の終了後に、送信フレームレジスタ404に格納された拡張スタッフビットを上書き後の送信フレームデータと、冗長データ領域送信レジスタ403に格納された拡張スタッフビットの上書き前の論理値とを連結したデータを送信フレームデータ24としてビットストリーム制御部2に出力する。ここで、送信フレームデータ24のうち、上書き前の論理値に該当する部分を、冗長データ領域と言う。
 冗長データ領域送信レジスタ403は、拡張スタッフビットの上書き前の論理値が格納される。冗長データ領域送信レジスタ403は、送信フレームデータ22に含まれる拡張スタッフビットのそれぞれに対応する上書き前の論理値が格納される。
 送信フレームレジスタ407は、メッセージハンドラ5から出力された送信フレームデータ22が格納される。
 冗長データ領域受信レジスタ409は、ビットストリーム制御部2から出力された受信フレームデータ25のうち、冗長データ領域のデータが格納される。つまり、冗長データ領域受信レジスタ409は、受信フレームデータ25に含まれる拡張スタッフビットのそれぞれに対応する上書き前の論理値が格納される。
 同一論理値カウント部410は、受信フレームレジスタ412に格納されたデータを先頭から1ビットずつ順場に読み出した受信フレームビット読み出し値413について、同一論理値が連続する数をカウントする。同一論理値カウント部410は、5ビット連続して同一論理値のビットを検出した場合、5ビット連続同一論理値検出信号414を元データ復元制御部411に出力する。
 元データ復元制御部411は、同一論理値カウント部410からの5ビット連続同一論理値検出信号414に応じて、冗長データ領域受信レジスタ409から出力されている冗長データ領域の論理値のうち、同一論理値が連続した5ビットの次の拡張スタッフビットの上書き前の論理値415を取得する。そして、元データ復元制御部411は、取得した論理値415を受信フレームレジスタ412の拡張スタッフビットに上書きする。これによって、拡張スタッフビットの論理値が、本来の論理値に復元される。同一論理値カウント部410及び元データ復元制御部411は、この処理を受信フレームレジスタ412に格納されたデータの全体に対して行う。これによって、受信フレームレジスタ412に格納されるデータに含まれる拡張スタッフビットの全てが、本来の論理値に復元されることになる。拡張スタッフビット制御部4は、受信フレームレジスタ412に格納されたデータの全体に対する処理の終了後に、受信フレームレジスタ412に格納された復元後のデータを受信フレームデータ23としてメッセージハンドラ5に出力する。
 受信フレームレジスタ412は、ビットストリーム制御部2から出力された受信フレームデータ25のうち、冗長データ領域を除く本来の受信フレームデータ23に該当する部分のデータが格納される。
 続いて、図5を参照して、本発明の実施の形態1にかかる拡張スタッフビット制御部4の送信処理について説明する。図5は、本発明の実施の形態1にかかる拡張スタッフビット制御部4の送信処理を示すフローチャートである。
 拡張スタッフビット制御部4は、メッセージハンドラ5を介して、メッセージバッファメモリ6の送信バッファから送信フレームデータ22を取得して送信フレームレジスタ404に格納する(S1)。
 同一論理値カウント部401は、送信フレームレジスタ404に格納された送信フレームデータ22から1ビット読み出す(S2)。なお、このステップS2及び後述するステップS6における1ビットの読み出しは、送信フレームデータ22の先頭から順番に行われていく。よって、最初の読み出しでは、送信フレームデータ22の先頭の1ビットが読み出され、既にビットの読み出しを行っている場合は、直前に読み出したビットの次のビットが読み出される。ここで、送信フレームデータ22の先頭からの順番とは、送信フレームデータ22に含まれるビットの送信順と等しい。同一論理値カウント部401は、送信フレームレジスタ404に格納された送信フレームデータ22を全て読み出したか否かを判定する(S3)。
 送信フレームデータ22を全て読み出したと判定した場合(S3:Yes)、拡張スタッフビット制御部4は、後述するステップS12の処理を実行する。
 送信フレームデータ22を全て読み出していないと判定した場合(S3:No)、同一論理値カウント部401は、カウンタのカウント値を「1」に初期化する(S4)。同一論理値カウント部401は、直前に読み出したビットを、同一論理値が5ビット連続するか否かをカウントする基準となる基準ビットとして設定する(S5)。同一論理値カウント部401は、送信フレームレジスタ404に格納された送信フレームデータ22から1ビット読み出す(S6)。同一論理値カウント部401は、送信フレームレジスタ404に格納された送信フレームデータ22を全て読み出したか否かを判定する(S7)。
 送信フレームデータ22を全て読み出した場合(S7:Yes)、拡張スタッフビット制御部4は、後述するステップS12の処理を実行する。
 送信フレームデータ22を全て読み出していない場合(S7:No)、同一論理値カウント部401は、基準ビットと、直前に読み出したビットとが同一論理値であるか否かを判定する(S8)。
 読み出したビットが同一論理値でない場合(S8:No)、同一論理値カウント部401は、ステップS4から処理を再開する。この場合、同一論理値が連続していないことになる。そのため、ステップS4に戻って、直前に読み出したビットを基準ビットとして、同一論理値が5ビット連続するか否かのカウントを再開する。
 読み出したビットが同一論理値である場合(S8:Yes)、同一論理値カウント部401は、カウンタをカウントアップする(S9)。同一論理値カウント部401は、カウンタ値が閾値「5」になったか否かを判定する(S10)。
 カウンタ値が閾値「5」になっていない場合(S10:No)、同一論理値カウント部401は、ステップS6から処理を再開する。この場合、基準ビットから直前に読み出したビットまで同一論理値が連続しているが、まだ同一論理値が5ビット連続していないことになる。そのため、ステップS6に戻って、次のビットの論理値の確認を行う。
 カウンタ値が閾値「5」になった場合(S10:Yes)、基準ビットから直前に読み出したビットまで同一論理値が5ビット連続することになる。つまり、直前に読み出したビットと、そのビットの次のビットの間には、スタッフビットが挿入されることになる。そのため、拡張スタッフビット上書き制御部402は、直前に読み出したビットの次の拡張スタッフビットの論理値を読み出して、冗長データ領域送信レジスタ403のうちのその拡張スタッフビットに対応するビットに書き込む。そして、拡張スタッフビット上書き制御部402は、5ビット連続した論理値で拡張スタッフビットを上書きする(S11)。このようにすることで、スタッフビットを挿入したときに、スタッフビットと拡張スタッフビットとの論理値が異なることになるため、スタッフビットと拡張スタッフビットとの間にエッジが生成されることになる。そして、同一論理値カウント部401は、ステップS2に戻って、次の拡張スタッフビットを読み出して(S2)基準ビットとし(S5)、同一論理値が5ビット連続するか否かのカウントを再開する。
 ステップS12では、拡張スタッフビット制御部4は、送信フレームレジスタ404に格納されたデータ及び冗長データ領域送信レジスタ403に格納されたデータに基づいて送信フレームデータ24を生成してビットストリーム制御部2に出力する(S12)。
 以上に、本発明の実施の形態1にかかる拡張スタッフビット制御部4の送信処理について説明したが、同一論理値が連続した5ビットの次の拡張スタッフビットを上書きする処理であれば、上述した処理手順には限定されず、適宜変更してもよい。例えば、基準ビットを設定して、基準ビットの論理値と直前に読み出したビットの論理値とを比較するようにしているが、直前に読み出したビットの論理値とそのビットの前に読み出したビットの論理値とを比較するようにしてもよい。また、例えば、ステップS4とステップS5の処理の実行順序を逆にしてもよい。
 続いて、図6を参照して、本発明の実施の形態1にかかる拡張スタッフビット制御部4の受信処理について説明する。図6は、本発明の実施の形態1にかかる拡張スタッフビット制御部4の受信処理を示すフローチャートである。
 拡張スタッフビット制御部4は、ビットストリーム制御部2から出力された受信フレームデータ25を取得して、取得した受信フレームデータ25のうち、冗長データ領域のデータを冗長データ領域受信レジスタ409に格納し、その他のデータを受信フレームレジスタ412に格納する(S21)。
 同一論理値カウント部410は、受信フレームレジスタ412に格納された受信フレームデータ25から1ビット読み出す(S22)。なお、このステップS22及び後述するステップS26、S31における1ビットの読み出しは、受信フレームデータ25の先頭から順番に行われていく。よって、最初の読み出しでは、受信フレームデータ25の先頭の1ビットが読み出され、既にビットの読み出しを行っている場合は、直前に読み出したビットの次のビットが読み出される。ここで、受信フレームデータ25の先頭からの順番とは、受信フレームデータ25に含まれるビットの受信順と等しい。同一論理値カウント部410は、受信フレームレジスタ412に格納されたデータを全て読み出したか否かを判定する(S23)。
 受信フレームレジスタ412に格納されたデータを全て読み出したと判定した場合(S23:Yes)、拡張スタッフビット制御部4は、後述するステップS33の処理を実行する。
 受信フレームレジスタ412に格納されたデータを全て読み出していないと判定した場合(S23:No)、同一論理値カウント部410は、カウンタのカウント値を「1」に初期化する(S24)。同一論理値カウント部410は、直前に読み出したビットを、同一論理値が5ビット連続するか否かをカウントする基準となる基準ビットとして設定する(S25)。同一論理値カウント部410は、受信フレームレジスタ412に格納されたデータから1ビット読み出す(S26)。同一論理値カウント部410は、受信フレームレジスタ412に格納されたデータを全て読み出したか否かを判定する(S27)。
 受信フレームレジスタ412に格納されたデータを全て読み出した場合(S27:Yes)、拡張スタッフビット制御部4は、後述するステップS33の処理を実行する。
 受信フレームレジスタ412に格納されたデータを全て読み出していない場合(S27:No)、同一論理値カウント部410は、基準ビットと、直前に読み出したビットとが同一論理値であるか否かを判定する(S28)。
 読み出したビットが同一論理値でない場合(S28:No)、同一論理値カウント部410は、ステップS24から処理を再開する。この場合、同一論理値が連続していないことになる。そのため、ステップS24に戻って、直前に読み出したビットを基準ビットとして、同一論理値が5ビット連続するか否かのカウントを再開する。
 読み出したビットが同一論理値である場合(S28:Yes)、同一論理値カウント部410は、カウンタをカウントアップする(S29)。同一論理値カウント部410は、カウンタ値が閾値「5」になったか否かを判定する(S30)。
 カウンタ値が閾値「5」になっていない場合(S30:No)、同一論理値カウント部410は、ステップS26から処理を再開する。この場合、基準ビットから直前に読み出したビットまで同一論理値が連続しているが、まだ同一論理値が5ビット連続していないことになる。そのため、ステップS26に戻って、次のビットの論理値の確認を行う。
 カウンタ値が閾値「5」になった場合(S30:Yes)、基準ビットから直前に読み出したビットまで同一論理値が5ビット連続することになる。つまり、直前に読み出したビットの次のビットは、拡張スタッフビットとなる。このとき、同一論理値カウント部410は、拡張スタッフビットが上書き前の論理値に復元される前に、受信フレームレジスタ412に格納された受信フレームデータ25から次の拡張スタッフビットを1ビット読み出す(S31)。元データ復元制御部411は、冗長データ領域受信レジスタ409のうちのその拡張スタッフビットに対応するビットに格納された上書き前の論理値を読み出す。そして、元データ復元制御部411は、読み出した上書き前の論理値で受信フレームレジスタ412のその拡張スタッフビットを上書きする(S32)。これによって、拡張スタッフビットが上書き前の論理値に復元される。そして、同一論理値カウント部401は、ステップS23に戻って、直前に読み出したビットを基準ビットとし(S25)、同一論理値が5ビット連続するか否かのカウントを再開する。
 ステップS33では、拡張スタッフビット制御部4は、受信フレームレジスタ412に格納されている、受信フレームデータ25の拡張スタッフビットを上書き前の論理値に戻すことによって生成された受信フレームデータ23をメッセージハンドラ5に出力する(S33)。
 以上に、本発明の実施の形態1にかかる拡張スタッフビット制御部4の受信処理について説明したが、同一論理値が連続した5ビットの次の拡張スタッフビットに上書き前の論理値を復元する処理であれば、上述した処理手順には限定されず、適宜変更してもよい。例えば、基準ビットを設定して、基準ビットの論理値と読み出したビットの論理値とを比較するようにしているが、直前に読み出したビットの論理値とそのビットの前に読み出したビットの論理値とを比較するようにしてもよい。また、例えば、ステップS24とステップS25の処理の実行順序を逆にしてもよい。
 続いて、図7を参照して、本実施の形態1のメカニズム及び効果について説明する。ここでは、同一論理値としてLowが5ビット連続した場合について説明する。
 上述した本実施の形態1によれば、同一論理値としてLowが5ビット連続した場合には、その5ビットの次のビットに同一論理値のLowが強制的に設定されることになる。このようにすることで、この後に、送信フレームデータにおいて、Lowが連続した5ビットの次にHighのスタッフビットが挿入された場合に、スタッフビットの次のビットをLowとすることができる。つまり、スタッフビットの直後の拡張スタッフビットをLowに上書きすることによって、CANプロトコルで定義された再同期エッジである立下りエッジを作り出している。
 これによれば、再同期間隔の最悪値を10ビットから6ビットに短縮することができる。よって、図3を参照して例示したように、低精度のクロックを生成するSSCGやクロック発振子等によってシステムを構築したとしても、その影響を低減することができる。つまり、低コストだが低精度のクロックを生成するSSCGやクロック発振子を使用したとしても、CAN通信システムを構築することが可能となる。そのため、本実施の形態1によれば、低精度のクロックを使用して低コストでCAN通信システムを構築することができる。
 ここで、わざとジッタを加えたクロックを生成するSSCGは、EMIノイズを減少させるのに効果的であったが、ノード間のクロック誤差が大きくなるため、なかなか使用することができないという問題があった。それに対して、本実施の形態1では、上述したように、SSCGを使用することができるようになるため、ノイズを低減することができる。例えば、車載アプリケーションならFM(Frequency Modulation)ラジオの周波数帯が一般的なMCU(Micro Control Unit)の動作周波数と重複しているので、これに混入するノイズを低減して音質を高めることができるようになる。また、動作周波数の高速化に伴い、UHF(Ultra High Frequency)帯にも高調波ノイズが悪影響を及ぼすことが考えられる。それに対して、本実施の形態1では、SSCGによってそのノイズを低減することができるため、カーナビゲーションのフルセグテレビ受信を安定化させることができる。
 なお、上述した本実施の形態1では、送信フレームデータ22において、同一論理値が連続した5ビットの次のビットを拡張スタッフビットとして、5ビット連続した同一論理値を上書きすることで、エッジを生成するようにしたが、これに限られない。言い換えると、直前にスタッフビットが挿入されるビットを拡張スタッフビットとして、スタッフビットの論理値の反転値を上書きすることで、エッジを生成するようにしたが、これに限られない。例えば、同一論理値が連続した5ビットの次のビットから連続して4(=同一論理が連続した場合にスタッフビットを挿入するビット数「5」-スタッフビット数「1」)ビットのうち、いずれかのビットを拡張スタッフビットとして、5ビット連続した同一論理値で上書きするようにしてもよい。このようにしても、再同期間隔の最悪値を10ビットから短縮することができる。
 具体的に例を挙げて説明すると、図7において、6ビット目のスタッフビットからHighの論理値が続く場合、10ビット目のビットをLowに上書きしても、再同期間隔の最悪値を10ビットから9ビットに短縮することができる。つまり、送信フレームデータ22において、同一の論理値が連続した5ビット(図7の1ビット目~5ビット目)の次の拡張スタッフビットから連続して4ビット(図7の7ビット目~10ビット目)のうち、いずれかのビットを、5ビット連続した同一論理値で上書きするようにしても、再同期間隔の最悪値を短縮することができる。
 また、上書きされた拡張スタッフビットの本来の論理値が何であるかは、送信フレームデータ24及び受信フレームデータ25の冗長データ領域によって示される。例えば、図8に示すように、最大で79ビットのサイズとなる送信フレームデータ22に対して、3バイトの冗長データ領域を定義する。ここで、送信フレームデータ22は、CANプロトコルのデータフレームにおけるスタートオブフレーム、アービトレーションフィールドArb、コントロールフィールドCTRL、及びデータフィールドDATAからなる。
 図8に示すように、CANプロトコルのデータフレームにおいて、本来ならデータフィールドDATAとして使用される最大で8バイトの領域のうち、3バイトの領域を冗長データ領域として使用する。そのため、送信フレームデータ22は、1ビットのスタートオブフレームと、最大で32(=11+1+1+18+1)ビットのアービトレーションフィールドArbと、6(=1+1+4)ビットのコントロールフィールドCTRLと、最大で40ビット(=8バイト-3バイト)のデータフィールドDATAと、からなる最大で79ビットのデータとなる。
 続いて、図9を参照して、冗長データ領域の構成について説明する。冗長データ領域は、送信フレームデータの拡張スタッフビットのそれぞれに対応するように、上書き前の論理値が格納される。ここで、同一の論理値のビットが5ビット連続する毎にスタッフビットが1つ挿入されることになるため、79ビットの送信フレームデータ22に対しては、最大で15ビットのスタッフビットが挿入される。よって、スタッフビット挿入後の送信フレームデータの先頭から冗長データ領域の手前までのサイズは、図9に示すように最大で94(=79+15)ビットとなる。また、拡張スタッフビットはスタッフビットと同数となるため、最大で15ビットの拡張スタッフビットが設定されることになる。そのため、図9に示すように、拡張スタッフビットの上書き前の論理値が最大で15ビット冗長データ領域に記録されることになる。なお、図9では、送信フレームデータの先頭から末尾に向かった順の拡張スタッフビットのそれぞれの上書き前の論理値を、冗長データ領域の先頭から末尾に向かった順のビットのそれぞれに格納するようにしているが、拡張スタッフビットと上書き前の論理値とが対応付いていれば、これに限られない。なお、先頭から末尾に向かった順とは、ビットストリームとして送信した場合における送信順のことである。
 さらに、図9に示すように、冗長データ領域内においては、4ビット毎に左隣のビットの反転値を論理値とするビットを設けるようにしている。つまり、冗長データ領域においては、4ビット毎に1つ前のビットの反転値のビットを設けるようにしている。これによれば、冗長データ領域中に同一論理値が5ビット連続することを防止して、冗長データ領域中にスタッフビットが挿入されることを防止することができる。このようにしている理由としては、冗長データ領域に拡張スタッフビットを設ける必要が出てしまうと、さらにそれに対応する冗長データ領域が必要となってしまうからである。また、これによれば、再同期間隔を短縮することもできる。
 このように、本実施の形態1では、冗長データ領域を、最大で15ビットとなる上書き前の論理値のビットと、4ビット毎に1つ前のビットの反転値を論理値とするビットと、を含むことができるサイズとして、3バイト長で定義している。なお、冗長データ領域のサイズは、送信フレームデータ22の最大サイズに基づいて、拡張スタッフビットが最も多くなった場合でも、これらのビットを全て記録できるサイズであれば、ここで例示したサイズに限られない。
発明の実施の形態2.
 続いて、図10を参照して、本発明の実施の形態2にかかるノード200の構成について説明する。図10は、本発明の実施の形態2にかかるノード200の構成図である。なお、実施の形態1にかかるノード100と同様の内容については説明を省略する。また、本発明の実施の形態2にかかるCAN通信システムの構成は、実施の形態1と同様であるため、説明を省略する。
 ノード200は、拡張スタッフビット制御部4を有さず、ビットストリーム制御部2に換えてビットストリーム制御部7を有する点が、実施の形態1にかかるノード100と異なる。
 ビットストリーム制御部7は、実施の形態1にかかるビットストリーム制御部2における処理に加えてさらに、立ち上りエッジでも再同期を行う。つまり、ビットストリーム制御部7は、CANプロトコルで定められた立下りエッジでの再同期に加えて、立ち上がりエッジでも再同期を行う。また、メッセージハンドラ5は、ビットストリーム制御部7とメッセージバッファメモリ6との間で送信フレームデータ22及び受信フレームデータを送受信することになる。
 続いて、図11を参照して、本発明の実施の形態2にかかるビットストリーム制御部7の構成について説明する。図11は、本発明の実施の形態2にかかるビットストリーム制御部7の構成図である。
 ビットストリーム制御部7は、CRCエンコード部701、フレームフォーマット整形出力制御部702、送信シフトレジスタ703、立ち上がり・立下り両エッジ検出回路704、ビット再同期制御部705、ビットサンプリング部706、受信シフトレジスタ707、CRCデコード及びスタッフビット除去部708、フリップフロップ群709、並びにプロトコル制御ステートマシン710を有する。
 CRCエンコード部701は、送信シフトレジスタ703から出力された送信フレームデータ22に基づいてCRCを生成する。CRCエンコード部701は、生成したCRCを送信シフトレジスタ703に出力する。
 フレームフォーマット整形出力制御部702は、送信シフトレジスタ703から出力されたデータ711に、スタッフビットを挿入して送信データ出力(TXD)31としてバストランシーバ14に出力する。
 送信シフトレジスタ703は、メッセージハンドラ5から出力された送信フレームデータ22を1ビットずつ順次CRCエンコード部701及び順次フレームフォーマット整形出力制御部702に出力する。また、送信シフトレジスタ703は、送信フレームデータ22を続けてCRCエンコード部701から出力されたCRCを1ビットずつ順次フレームフォーマット整形出力制御部702に出力する。
 立ち上がり・立下り両エッジ検出回路704は、受信データ入力(RxD)30の立ち上がりエッジ及び立下りエッジのそれぞれを検出する。立ち上がり・立下り両エッジ検出回路704は、立ち上がりエッジ及び立下りエッジのいずれかを検出した場合に、ビット再同期トリガ信号713をビット再同期制御部705に出力する。図11に示すように、立ち上がり・立下り両エッジ検出回路704は、XOR回路によって、受信データ入力(RxD)30の任意のビットの論理値と、そのビットの次のビットの論理値とのXOR演算を行うことで、それぞれのビットの論理値が異なり、立ち上がりエッジ又は立下りエッジが発生していることを検出する。つまり、立ち上がり・立下り両エッジ検出回路704は、それぞれのビットの論理値をXOR回路に入力して、それぞれのビットの論理値が異なる場合にXOR回路から出力されるHighの信号をビット再同期トリガ信号713としてビット再同期制御部705に出力する。
 ビット再同期制御部705は、サンプルポイント毎にビットタイミング信号714をビットサンプリング部706に出力する。また、ビット再同期制御部705は、立ち上がり・立下り両エッジ検出回路704から出力されたビット再同期トリガ信号713に応じて、再同期を行う。つまり、ビット再同期制御部705は、立ち上り・立下り両エッジ検出回路704からのビット再同期トリガ信号713の出力をトリガとして、ビット再同期トリガ信号713の出力タイミングに基づいて、サンプルポイントを補正する。これによれば、本実施の形態2では、立下りエッジに加えて、立ち上がりエッジにおいても再同期を行うことができる。
 ビットサンプリング部706は、ビット再同期制御部705からビットタイミング信号714が出力されたときに、受信データ入力(RxD)30のうち、フリップフロップ群709から出力されているビットの論理値712をサンプリングする。ビットサンプリング部706は、サンプリングした論理値715を順次受信シフトレジスタ707に出力する。つまり、ビットサンプリング部706によってサンプリングされた受信データ入力(RxD)30が1ビットずつ順次受信シフトレジスタ707に出力される。
 受信シフトレジスタ707は、ビットサンプリング部706から出力された受信データ入力(RxD)30を1ビットずつ順次CRCデコード及びスタッフビット除去部708に出力する。
 CRCデコード及びスタッフビット除去部708は、受信シフトレジスタ707から出力された受信データ入力(RxD)30から、CANプロトコルで定義されたスタッフビットを除去する。CRCデコード及びスタッフビット除去部708は、受信データ入力(RxD)30からスタッフビットを除去した受信フレームデータに基づいてCRCチェックを行う。CRCデコード及びスタッフビット除去部708は、CRCチェックで異常を検出した場合、異常を通知する異常通知信号716をプロトコル制御ステートマシン710に出力する。CRCデコード及びスタッフビット除去部708は、CRCチェック後に、受信フレームデータからCRCを除去する。CRCデコード及びスタッフビット除去部708は、CRCを除去した受信フレームデータ23を拡張スタッフビット制御部4に出力する。
 フリップフロップ群709は、メタステーブル伝搬防止用のフリップフロップを複数含む。フリップフロップ群709は、バストランシーバ14から出力された受信データ入力(RxD)30を1ビットずつ順次立ち上がり・立下り両エッジ検出回路704及びビットサンプリング部706に出力する。
 プロトコル制御ステートマシン710は、CRCデコード及びスタッフビット除去部708からの異常通知信号716の出力に応じて、異常通知信号26をエラー管理部3に出力する。
 続いて、図12を参照して、本実施の形態2のメカニズム及び効果について説明する。図12に示すように、スタッフビットの後にも同一論理値が5ビット連続してしまう最悪ケースの場合、特許文献1にかかるCANプロトコルでは立下りエッジのみでの再同期だったため再同期間隔の最悪値が10ビットであった。それに対して、本実施の形態2では、立ち上がりでも再同期することによって、再同期間隔の最悪値を5ビットに短縮することができる。
 よって、低精度のクロックを生成するSSCGやクロック発振子等によってシステムを構築したとしても、その影響を低減することができる。そのため、本実施の形態2によっても、低精度のクロックを使用して低コストでCAN通信システムを構築することができる。
 なお、本発明は上記実施の形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。例えば、本実施の形態1及び本実施の形態2は、組み合わせて実施するようにしてもよい。
 本実施の形態では、CAN通信システムを自動車に適用した場合について例示したが、これに限られない。例えば、船舶及び産業機器等にも適用してもよい。
 本実施の形態1では、スタッフビットの挿入及び拡張スタッフビットの特定を、同一論理値の5ビット連続しての検出に応じて行う場合について例示したが、このビット数は5ビットに限られない。
 本実施の形態1では、全ての拡張スタッフビットを上書きする場合について例示したが、これに限られない。例えば、拡張スタッフビットの上書き前の論理値が上書きする論理値と同一である場合、上書きをしないようにしてもよい。
 本実施の形態1では、CANプロトコルに基づいて立下りエッジの検出に応じて、再同期を行う場合について例示したが、これに限られない。立ち上がりエッジの検出に応じて、再同期を行う場合において、上述した拡張スタッフビットに関する処理を実施するようにしても、立ち上りエッジの間隔を短縮することができるため、再同期間隔を短縮することができる。
 本実施の形態1では、CANプロトコルに基づいて立下りエッジの検出に応じて、再同期を行う場合において、High及びLowのいずれのビットが5ビット連続しても、拡張スタッフビットを上書きするようにしているが、これに限られない。例えば、CANプロトコルに基づいて立下りエッジの検出に応じて、再同期を行う場合において、High及びLowのうち、Lowのビットが5ビット連続した場合に、拡張スタッフビットを上書きするようにしてもよい。
 この出願は、2011年3月31日に出願された日本出願特願2011-077032を基礎とする優先権を主張し、その開示の全てをここに取り込む。
1  CANコントローラモジュール
2、7  ビットストリーム制御部
3  エラー管理部
4  拡張スタッフビット制御部
5  メッセージハンドラ
6  メッセージバッファメモリ
10  CANコントローラLSI
11  CPU
12  他周辺モジュール
13  SSCG
14  バストランシーバ
21  ローカルバス
22、24  送信フレームデータ
23、25  受信フレームデータ
26  異常通知信号
30  受信データ入力
31  送信データ出力
41、42、43  クロック
100、200  ノード
101  CAN通信システム
102  ボディ系制御ノード
103  安全系制御ノード
104  情報系制御ノード
105  エンジン系制御ノード
106  シャーシ系制御ノード
401、410  同一論理値カウント部
402  拡張スタッフビット上書き制御部
403  冗長データ領域送信レジスタ
404  送信フレームレジスタ
405、414    5ビット連続同一論理値検出信号
406  送信フレームビット読み出し値
409  冗長データ領域受信レジスタ
411  元データ復元制御部
412  受信フレームレジスタ
413  受信フレームビット読み出し値
415  上書き前の論理値
701  CRCエンコード部
702  フレームフォーマット整形出力制御部
703  送信シフトレジスタ
704  
705  ビット再同期制御部
706  ビットサンプリング部
707  受信シフトレジスタ
708  CRCデコード及びスタッフビット除去部
709  フリップフロップ群
710  プロトコル制御ステートマシン
711  送信シフトレジスタからの出力データ
712  受信データ入力のビットの論理値712
713  ビット再同期トリガ信号
714  ビットタイミング信号
715  サンプリングした論理値
716  異常通知信号

Claims (10)

  1.  それぞれが第1の論理値又は当該第1の論理値を反転した第2の論理値のいずれかをとる複数のビットが連続するビットデータを送信するときに、CAN(Controller Area Network)プロトコルに基づき、前記ビットデータにおいて同一の論理値が所定数連続するビットの次に、当該同一の論理値の反転値をとるスタッフビットを挿入した送信データを、前記ビットデータに代えて送信する送信装置と、
     前記CANプロトコルに基づき、前記送信装置から送信された送信データにおける前記第2の論理値から前記第1の論理値へのエッジの検出に応じて、前記送信装置との間で前記送信データの送受信の同期をとる同期処理を実行する受信装置と、を備え、
     前記送信装置は、前記ビットデータを送信するときに、前記ビットデータにおいて前記第1の論理値が所定数連続するビットの次のビットから連続して前記所定数-1ビットのうち、いずれかのビットを前記第1の論理値に書き換える送信制御部を有する、
     CAN通信システム。
  2.  前記送信制御部は、前記いずれかのビットの前記第1の論理値に書き換え前の論理値を、前記送信データとともに送信し、
     前記受信装置は、
     前記送信装置から送信された送信データからスタッフビットを除去して、当該スタッフビットを除去したビットデータにおいて前記第1の論理値に書き換えられたビットを、前記送信データとともに送信された書き換え前の論理値に戻す受信制御部を有する、
     請求項1に記載のCAN通信システム。
  3.  前記受信装置は、
     前記送信データにおける前記第2の論理値から前記第1の論理値へのエッジを検出し、当該エッジの検出に応じてエッジ検出信号を出力するエッジ検出部と、
     前記エッジ検出部からのエッジ検出信号の出力に応じて、前記同期処理を実行する同期制御部と、をさらに備え、
     前記エッジ検出部は、さらに、前記送信データにおける前記第1の論理値から前記第2の論理値へのエッジを検出し、当該エッジの検出に応じて前記エッジ検出信号を出力する、
     請求項1又は2に記載のCAN通信システム。
  4.  前記送信制御部は、前記いずれかのビットとして、前記ビットデータにおいて前記第1の論理値が所定数連続するビットの次のビットを、前記第1の論理値に書き換える、
     請求項1乃至3のいずれか1項に記載のCAN通信システム。
  5.  前記送信制御部は、前記いずれかのビットが前記第2の論理値である場合、当該ビットを前記第1の論理値への書き換えを抑止する、
     請求項1乃至4のいずれか1項に記載のCAN通信システム。
  6.  前記ビットデータは、前記CANプロトコルにおいて定義されるデータフレームのうち、スタートオブフレームからデータフィールドまでの79ビット以下のデータである、
     請求項1乃至5のいずれか1項に記載のCAN通信システム。
  7.  前記第1の論理値は、Lowであり、
     前記第2の論理値は、Highである、
     請求項1乃至6のいずれか1項に記載のCAN通信システム。
  8.  CAN(Controller Area Network)プロトコルに基づき、受信したデータにおける第1の論理値を反転した第2の論理値から前記第1の論理値へのエッジの検出に応じて、前記データの送受信の同期をとる同期処理を実行する受信装置に、それぞれが前記第1の論理値又は前記第2の論理値のいずれかをとる複数のビットが連続するビットデータを送信するときに、前記CANプロトコルに基づき、前記ビットデータにおいて同一の論理値が所定数連続するビットの次に、当該同一の論理値の反転値をとるスタッフビットを挿入した送信データを、前記ビットデータに代えて送信する送信装置であって、
     前記ビットデータを送信するときに、前記ビットデータにおいて前記第1の論理値が所定数連続するビットの次のビットから連続して前記所定数-1ビットのうち、いずれかのビットを前記第1の論理値に書き換える制御部を有する、
     CAN送信装置。
  9.  送信装置が、それぞれが第1の論理値又は当該第1の論理値を反転した第2の論理値のいずれかをとる複数のビットが連続するビットデータを送信するときに、CAN(Controller Area Network)プロトコルに基づき、前記ビットデータにおいて同一の論理値が所定数連続するビットの次に、当該同一の論理値の反転値をとるスタッフビットを挿入した送信データを、前記送信装置から前記ビットデータに代えて受信して、前記CANプロトコルに基づき、当該送信データにおける前記第2の論理値から前記第1の論理値へのエッジの検出に応じて、前記送信装置との間で前記送信データの送受信の同期をとる同期処理を実行する受信装置であって、
     前記受信装置が検出する前記第2の論理値から前記第1の論理値へのエッジは、前記第2の論理値から、前記送信装置が、前記ビットデータを送信するときに前記ビットデータにおいて前記第1の論理値が所定数連続するビットの次のビットから連続して前記所定数-1ビットのうち、いずれかのビットを書き換えた第1の論理値へのエッジを含む、
     CAN受信装置。
  10.  それぞれが第1の論理値又は当該第1の論理値を反転した第2の論理値のいずれかをとる複数のビットが連続するビットデータを送信するときに、CAN(Controller Area Network)プロトコルに基づき、前記ビットデータにおいて同一の論理値が所定数連続するビットの次に、当該同一の論理値の反転値をとるスタッフビットを挿入した送信データを、前記ビットデータに代えて送信する送信装置と、前記CANプロトコルに基づき、前記送信装置から送信された送信データにおける前記第2の論理値から前記第1の論理値へのエッジの検出に応じて、前記送信装置との間で前記送信データの送受信の同期をとる同期処理を実行する受信装置との間のCAN通信方法であって、
     前記送信装置が、前記ビットデータを送信するときに、前記ビットデータにおいて前記第1の論理値が所定数連続するビットの次のビットから連続して前記所定数-1ビットのうち、いずれかのビットを前記第1の論理値に書き換える、
     CAN通信方法。
PCT/JP2012/001281 2011-03-31 2012-02-24 Can通信システム、can送信装置、can受信装置、およびcan通信方法 Ceased WO2012132217A1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2013507103A JPWO2012132217A1 (ja) 2011-03-31 2012-02-24 Can通信システム、can送信装置、can受信装置、およびcan通信方法
US14/006,892 US20140016654A1 (en) 2011-03-31 2012-02-24 Can communication system, can transmission apparatus, can reception apparatus, and can communication method

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2011-077032 2011-03-31
JP2011077032 2011-03-31

Publications (1)

Publication Number Publication Date
WO2012132217A1 true WO2012132217A1 (ja) 2012-10-04

Family

ID=46930013

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2012/001281 Ceased WO2012132217A1 (ja) 2011-03-31 2012-02-24 Can通信システム、can送信装置、can受信装置、およびcan通信方法

Country Status (3)

Country Link
US (1) US20140016654A1 (ja)
JP (1) JPWO2012132217A1 (ja)
WO (1) WO2012132217A1 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112087418A (zh) * 2020-07-23 2020-12-15 北京经纬恒润科技股份有限公司 计算报文数据填充位的方法及装置
KR20220101741A (ko) * 2019-12-02 2022-07-19 로베르트 보쉬 게엠베하 직렬 버스 시스템용 가입자국 및 직렬 버스 시스템에서의 통신 방법
WO2025104828A1 (ja) * 2023-11-14 2025-05-22 Astemo株式会社 車両制御システム、車両制御装置および通信線の劣化検知方法

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9298529B2 (en) * 2014-05-29 2016-03-29 Freescale Semiconductor, Inc. Indicating internal transmitter errors in a controller area network (CAN)
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
EP3926904A1 (en) * 2020-06-15 2021-12-22 Nxp B.V. Controller area network apparatus
DE102021200080A1 (de) * 2021-01-07 2022-07-07 Robert Bosch Gesellschaft mit beschränkter Haftung Kommunikationssteuereinrichtung für eine Teilnehmerstation für ein serielles Bussystem und Verfahren zur Kommunikation in einem seriellen Bussystem
IT202100015488A1 (it) * 2021-06-14 2022-12-14 St Microelectronics Srl Microcontrollore e procedimento di funzionamento corrispondente
EP4213448B1 (en) * 2022-01-18 2025-05-07 Nxp B.V. Controller area network module and method for the module

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0556052A (ja) * 1991-08-23 1993-03-05 Furukawa Electric Co Ltd:The 多重伝送方式の受信応答方法
JPH06236333A (ja) * 1985-02-22 1994-08-23 Robert Bosch Gmbh データ処理装置に対する伝送すべきメッセージの処理方法
JPH06319172A (ja) * 1993-04-16 1994-11-15 Honda Motor Co Ltd 車両用データ伝送システム
JP2010124086A (ja) * 2008-11-18 2010-06-03 Daihatsu Motor Co Ltd 車載ネットワークの通信情報形成方法

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CH504818A (de) * 1968-12-11 1971-03-15 Standard Telephon & Radio Ag Verfahren zur Datenübertragung über einen Kanal einer PCM-Nachrichtenanlage
US4095053A (en) * 1977-09-01 1978-06-13 Bell Telephone Laboratories, Incorporated Quasi-pulse stuffing synchronization
US5638411A (en) * 1991-05-23 1997-06-10 Mitsubishi Denki Kabushiki Kaisha Stuff bit synchronization system
US5680422A (en) * 1995-04-27 1997-10-21 Adtran Method and apparatus for reducing waiting time jitter in pulse stuffing synchronized digital communications
SE533636C2 (sv) * 2004-10-25 2010-11-16 Xinshu Man L L C Anordning vid bussförbindelse i CAN-system
KR101135101B1 (ko) * 2005-10-17 2012-04-16 엘지전자 주식회사 캔에서의 데이터 길이 코드를 이용한 데이터 필드 패딩방법
EP2339790A1 (en) * 2009-12-28 2011-06-29 Nxp B.V. Definition of wakeup bus messages for partial networking

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06236333A (ja) * 1985-02-22 1994-08-23 Robert Bosch Gmbh データ処理装置に対する伝送すべきメッセージの処理方法
JPH0556052A (ja) * 1991-08-23 1993-03-05 Furukawa Electric Co Ltd:The 多重伝送方式の受信応答方法
JPH06319172A (ja) * 1993-04-16 1994-11-15 Honda Motor Co Ltd 車両用データ伝送システム
JP2010124086A (ja) * 2008-11-18 2010-06-03 Daihatsu Motor Co Ltd 車載ネットワークの通信情報形成方法

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20220101741A (ko) * 2019-12-02 2022-07-19 로베르트 보쉬 게엠베하 직렬 버스 시스템용 가입자국 및 직렬 버스 시스템에서의 통신 방법
KR102909545B1 (ko) 2019-12-02 2026-01-09 로베르트 보쉬 게엠베하 직렬 버스 시스템용 가입자국 및 직렬 버스 시스템에서의 통신 방법
CN112087418A (zh) * 2020-07-23 2020-12-15 北京经纬恒润科技股份有限公司 计算报文数据填充位的方法及装置
CN112087418B (zh) * 2020-07-23 2022-08-09 北京经纬恒润科技股份有限公司 计算报文数据填充位的方法及装置
WO2025104828A1 (ja) * 2023-11-14 2025-05-22 Astemo株式会社 車両制御システム、車両制御装置および通信線の劣化検知方法

Also Published As

Publication number Publication date
US20140016654A1 (en) 2014-01-16
JPWO2012132217A1 (ja) 2014-07-24

Similar Documents

Publication Publication Date Title
WO2012132217A1 (ja) Can通信システム、can送信装置、can受信装置、およびcan通信方法
US10326865B2 (en) Filter or bridge for communications between CAN and CAN-FD protocol modules
JP5233165B2 (ja) データ伝送装置
US8566632B2 (en) Multi-rate sampling for network receiving nodes using distributed clock synchronization
US7549072B2 (en) Method and device for synchronizing the global time of a plurality of buses and a corresponding bus system
US9461937B2 (en) Method and device for a serial data transmission with additionally inserted data
Hartwich et al. The configuration of the CAN bit timing
US20140325107A1 (en) Reception apparatus, information processing apparatus and method of receiving data
CN105578585B (zh) 一种确定链路延时的方法、装置和通信设备
US11144088B2 (en) Clocking synchronization method and apparatus
CN107148760B (zh) 将帧经由总线系统从发送器串行传输至至少一个接收器的方法和用于总线系统的参与站
WO2002054262A2 (en) Low latency synchronization of asynchronous data
CN107517069B (zh) 跳频同步的方法、装置、接收机以及发射机
KR102204954B1 (ko) Can 컨트롤러 및 이를 이용한 데이터 전송 방법
US8320437B2 (en) Method and device for decoding a signal
US12355672B2 (en) Communication control device, information processing device, communication control method, and information processing method
Akpinar et al. Improved clock synchronization algorithms for the controller area network (CAN)
US9111042B1 (en) 1588 deterministic latency with gearbox
US20180034748A1 (en) Multi-function, multi-protocol fifo for high-speed communication
US10728064B2 (en) Interface circuit
US7366207B1 (en) High speed elastic buffer with clock jitter tolerant design
US6434705B1 (en) Method and apparatus for interfacing isochronous communication systems
JP3085448B2 (ja) 通信システム
JP6738028B2 (ja) 受信回路及び半導体集積回路
JP4612688B2 (ja) 受信装置

Legal Events

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

Ref document number: 12763073

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2013507103

Country of ref document: JP

Kind code of ref document: A

WWE Wipo information: entry into national phase

Ref document number: 14006892

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 12763073

Country of ref document: EP

Kind code of ref document: A1