Communication method and communication device

JPWO2025089062A1Undetermined Publication Date: 2025-05-01
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
JP · JP
Patent Type
Applications
Filing Date
2024-10-09
Publication Date
2025-05-01

AI Technical Summary

Technical Problem

In communication systems where multiple types of data are transmitted over a single physical wiring, there is a risk of collisions in same-directional communication, particularly affecting synchronization signals used for frame synchronization.

Method used

The communication method involves inserting interrupt control data into the first data being transmitted, allowing for interruption transmission of the second data, thereby avoiding collisions. This is achieved by prioritizing the second data for upper-layer transfer based on interrupt information stored in its packet header.

Benefits of technology

This approach effectively prevents collisions in same-directional communication over a single physical wiring, ensuring reliable transmission of synchronization signals and maintaining the synchronization period.

✦ Generated by Eureka AI based on patent content.
Patent Text Reader

Abstract

The present disclosure relates to a communication method and a communication device that make it possible to avoid collision of same-direction communication on a single physical wire. When second data is input during transmission of first data through a physical layer capable of transmitting a plurality of types of data to / from a communication partner device on a single physical wire, a communication device according to the present disclosure interrupts the transmission and transmits the second data by inserting interrupt control data into the first data. The present disclosure can be applied to, for example, a communication system to which an in-vehicle camera is connected.
Need to check novelty before this filing date? Find Prior Art

Description

Communication method and communication device

[0001] The present disclosure relates to a communication method and a communication device, and more particularly to a communication method and a communication device that can avoid collisions of simultaneous communications on a single physical wiring.

[0002] One of the standards defined by the Mobile Industry Processor Interface (MIPI) Alliance is the Automotive PHY (A-PHY) standard (see, for example, Non-Patent Document 1). A-PHY is a standard related to the physical layer of an in-vehicle SerDes (Serializer Deserializer).

[0003] MIPI Alliance Specification for A-PHY, version 1.1, MIPI Alliance, Inc., 9 August 2021.

[0004] In conventional communication systems where a physical wiring is assigned to each signal, communication control can be performed at each timing. However, in systems where multiple types of data are transmitted between communication partners over a single physical wiring, there is a risk of collisions occurring in the same direction.

[0005] The present disclosure has been made in view of such circumstances, and aims to prevent collisions between simultaneous communications on a single physical wiring.

[0006] A communication method according to a first aspect of the present disclosure is a communication method in which, when second data is input while a communication device is transmitting first data via a physical layer capable of transmitting multiple types of data between a communication partner device and a communication device over a single physical wiring, the second data is transmitted as an interrupt by inserting interrupt control data into the first data.

[0007] A communication device according to a first aspect of the present disclosure is a communication device having a communication unit that, when second data is input while first data is being transmitted via a physical layer capable of transmitting multiple types of data between a communication partner device over a single physical wiring, transmits the second data as an interrupt by inserting interrupt control data into the first data.

[0008] A communication device according to a second aspect of the present disclosure is a communication device that includes a communication unit that, when receiving second data that has been transmitted in an interrupt manner while receiving first data via a physical layer capable of transmitting multiple types of data between communication partners over a single physical wiring, transfers the second data to a higher layer on a priority basis based on interrupt information stored in the packet header of the second data, which indicates that the second data has been transmitted in an interrupt manner.

[0009] In a first aspect of the present disclosure, when second data is input while first data is being transmitted via a physical layer capable of transmitting multiple types of data between communication partners over a single physical wiring, interrupt control data is inserted into the first data, thereby causing the second data to be transmitted as an interrupt.

[0010] In a second aspect of the present disclosure, when second data that has been transmitted as an interrupt while first data is being received by a physical layer capable of transmitting multiple types of data between communication partners over a single physical wiring, the second data is preferentially transferred to a higher layer based on interrupt information stored in the packet header of the second data, which indicates that the second data has been transmitted as an interrupt.

[0011] 1 is a diagram illustrating an example of a conventional communication system and a future communication system. FIG. 1 is a diagram illustrating the flow of SYNC in a conventional communication system. FIG. 1 is a diagram illustrating the flow of SYNC in a future communication system. FIG. 2 is a diagram illustrating an example configuration of a communication system to which the technology of the present disclosure is applied. FIG. 2 is a diagram illustrating an example configuration of an A-packet. FIG. 3 is a diagram illustrating interrupt transmission of a SYNC packet. FIG. 4 is a diagram illustrating an example of a CN (Control Nibbles). FIG. 4 is a diagram illustrating an example configuration of a conventional CN. FIG. 5 is a diagram illustrating an example configuration of a CN used as interrupt control data. FIG. 6 is a diagram illustrating an example configuration of a CN used as interrupt control data. FIG. 7 is a diagram illustrating delay in the transmission timing of a SYNC packet. FIG. 8 is a diagram illustrating delay in the transmission timing of a SYNC packet. FIG. 9 is a diagram illustrating transfer of a received SYNC packet to an upper layer. FIG. 10 is a diagram illustrating an example of an Interrupt Indication. FIG. 11 is a diagram illustrating adjustment of transfer timing to an upper layer. FIG. 12 is a diagram illustrating an example configuration of an error notification packet. FIG. 13 is a diagram illustrating a specific example of calculation of a timestamp difference. FIG. 14 is a diagram illustrating a specific example of adjustment of a timestamp difference. FIG. 15 is a diagram illustrating an example configuration of a sink-source capable of handling data interrupts. FIG. 16 is a flowchart illustrating transmission processing of a SYNC packet. FIG. 17 is a flowchart illustrating reception processing of a packet.

[0012] Modes for carrying out the present disclosure (hereinafter referred to as embodiments) will be described below in the following order.

[0013] 1. Comparison between conventional and future communication systems 2. Communication system to which the technology disclosed herein is applied 3. Interrupt transmission of SYNC packets and delay in transmission timing 4. Transfer of received SYNC packets to upper layers and adjustment of transfer timing 5. Configuration and operation of sink-source capable of handling data interrupts

[0014] <1. Comparison between conventional and future communication systems> Conventionally, in communication systems where a physical wiring is assigned to each signal, communication control can be performed at each timing. However, in the future, the physical wiring of each signal is expected to be integrated into a high-speed interface consisting of a single physical wiring.

[0015] Fig. 1 is a diagram showing an example of a communication system in which an ECU (Electronic Control Unit), which is a computer (host) that controls a vehicle, is connected to a sensor such as an image sensor mounted on an in-vehicle camera. Diagram A of Fig. 1 shows a conventional communication system, and diagram B shows a future communication system that is expected to be developed in the future.

[0016] In both the conventional communication system shown in Figure 1A and the future communication system shown in Figure 1B, image data and GPIO (General Purpose Input / Output) signals are transmitted from the sensor to the ECU, and commands of various standards such as SYNC / GPIO (synchronization signal), CAN (Controller Area Network), and I2C (Inter-Integrated Circuit) are transmitted from the ECU to the sensor.

[0017] In conventional communication systems, a physical wiring is assigned for each piece of data transmitted between a sensor and a SerDes (Serializer Deserializer) on the ECU side. On the other hand, in future communication systems, the physical wiring for each piece of data transmitted between a sensor and a Des (Deserializer) on the ECU side will be integrated into a single physical wiring that complies with the A-PHY standard, for example.

[0018] If transmission from the ECU (host) to the sensor is defined as uplink, and transmission from the sensor to the ECU (host) is defined as downlink, the communication method for simultaneous uplink / downlink transmission and reception is specified in the communication standard for automotive use.

[0019] For example, the MIPI A-PHY standard uses frequency division duplex (FDD) to enable simultaneous uplinking from an ECU to a sensor and downlinking from the sensor to an ECU, while the Automotive SerDes Alliance (ASA) standard uses time division duplex (TDD) to prevent signal collisions between the uplink from an ECU to a sensor and the downlink from the sensor to an ECU.

[0020] Fig. 2 is a diagram for explaining the flow of SYNC in the conventional communication system shown in Fig. 1A. SYNC is a synchronization signal used in a sensor that is a communication partner device of the host (ECU).

[0021] 2 shows how a command and SYNC are uplink transmitted from the host (ECU) to the sensor's PHY via the Des's PHY (a communication unit that processes A-PHY). In FIG. 2, commands conforming to CAN or I2C are represented by multiple bytes of data.

[0022] As described above, in conventional communication systems, a physical wiring is assigned to each piece of data, so commands and SYNC are transmitted in parallel over their respective communication paths. Therefore, as shown in the dashed box C1 in Figure 2, even if the transmission timing of SYNC and I2C commands from the host overlaps, the sensor can receive each piece of data in parallel.

[0023] FIG. 3 is a diagram for explaining the flow of SYNC in the future communication system shown in FIG. 1B.

[0024] 3, like FIG. 2, also shows how a command and SYNC are uplink transmitted from the host (ECU) to the sensor's PHY via the Des's PHY. As shown in FIG. 3, a command transmitted in multibyte format is packetized, then chunked into a predetermined size, and transmitted (divided and transmitted) to the sensor. At the sensor, the received data is depacketized and transferred to a higher layer.

[0025] As described above, in future communication systems, the physical wiring that transmits each type of data will be integrated into a single physical wiring that conforms to the A-PHY standard, for example. Therefore, commands and SYNC signals will be transmitted serially over a single communication path. In particular, under the A-PHY standard, commands and SYNC / GPIO signals have the same priority, with the data input first taking priority. Therefore, in the example shown in FIG. 3, SYNC signals are scheduled and packetized so that they are transmitted after the command transmission is complete. Therefore, as shown in the dashed-line box C2 in FIG. 3, if the transmission timing of a SYNC signal from the host and an I2C command overlap, the sensor will receive SYNC signals after receiving the command. The next SYNC signal will be transmitted at the original timing. As a result, the SYNC period cannot be maintained.

[0026] In this way, in a system that transmits multiple types of data between communication partners over a single physical wiring, there is a risk of collisions occurring in the same direction. In particular, the SYNC (synchronization signal) transmitted from the ECU to the sensor is used for frame synchronization in the sensor, so it is necessary to consider the transmission timing.

[0027] In contrast, in the technology disclosed herein, a physical layer capable of transmitting multiple types of data over a single physical wiring is used, and when second data is input while first data is being transmitted, interrupt control data is inserted into the first data to transmit the second data as an interrupt, thereby avoiding collisions of same-directional communications over a single physical wiring.

[0028] 2. Communication System to which the Technology According to the Present Disclosure is Applied FIG. 4 is a diagram illustrating an example configuration of a communication system to which the technology according to the present disclosure is applied.

[0029] The communication system 1 shown in Fig. 4 is composed of a communication device 10 and a communication device 20. The communication devices 10 and 20 exchange data via a communication path 30, which is composed of a single cable or the like. In the communication system 1, data is transmitted between the communication devices 10 and 20 via an A-PHY network. A-PHY is a standard defined by the MIPI Alliance as a physical layer for in-vehicle SerDes. Here, the standard defined by the MIPI Alliance is referred to as the MIPI standard.

[0030] The communication device 10 includes a processing unit 11 and a communication unit 12. The processing unit 11 is composed of a chip that performs processing related to the Protocol Adaptation Layer (PAL), a CPU (Central Processing Unit) that controls the operation of each unit of the communication device 10, and the like. The communication unit 12 is composed of a chip that performs processing related to data transmission, and the like. The communication unit 12 performs processing related to A-PHY (mainly PHY layer processing). The processing unit 11 performs processing related to the upper layer that is the layer above A-PHY.

[0031] The communication device 20 includes a processing unit 21 and a communication unit 22. The processing unit 21 is composed of a chip that performs PAL-related processing, a CPU that controls the operation of each unit of the communication device 20, and the like. The communication unit 22 is composed of a chip that performs data transmission-related processing, and the like. The communication unit 22 performs A-PHY-related processing. The processing unit 21 performs processing related to the upper layer, which is the layer above A-PHY.

[0032] In the communication system 1, one of the communication devices 10 and 20 serves as a source and the other as a sink. The source and sink are defined in the MIPI standard, and the following example illustrates a case in which the communication device 10 serves as a sink corresponding to the Des in FIG. 3 and the communication device 20 serves as a source corresponding to the sensor in FIG. 3. Furthermore, transmission from the source to the sink is called a downlink, and transmission from the sink to the source is called an uplink. The transmission speed (communication speed) differs between the downlink and the uplink, with the downlink being faster than the uplink.

[0033] Here, it is assumed that in the communication system 1, an A-packet is transmitted from the sink-side communication device 10 to the source-side communication device 20 by serial communication via the communication path 30. In this case, the processing unit 11 processes data in various formats such as GPIO, I2C, and CAN. The processing unit 11 generates an A-packet from data in various formats.

[0034] The communication unit 12 transmits the A-packet generated by the processing unit 11. At this time, the communication unit 12 adds an MC (Message Counter) number to the A-packet to be transmitted. For example, the MC number is a value from 0 to 255, and a different number is added to each A-packet. In this example, the starting value is 0, and the MC number is incremented for each A-packet, and when the value reaches 255, it returns to 0, so that the MC number can continue to be added. The communication unit 12 can also add a timestamp to the A-packet to be transmitted.

[0035] FIG. 5 is a diagram showing an example of the configuration of an A-packet.

[0036] As shown in FIG. 5, an A-Packet is composed of an A-Packet Header, an A-Packet Payload, and an A-Packet Tail.

[0037] The A-packet header includes the following fields: an 8-bit Adaptation Descriptor, an 8-bit Service Descriptor, an 8-bit Placement Descriptor, an 8-bit PHY2, an 8-bit Target Address, an 8-bit PHY3, an 8-bit Payload Length, and an 8-bit PHY Header CRC.

[0038] The A-packet payload can include a Timestamp field, where a timestamp is placed.

[0039] When an A-packet is transmitted from the source-side communication device 20 to the sink-side communication device 10, the same processing is basically performed, except that the above-described processing on the sink side and source side is reversed.

[0040] 3. Interrupt Transmission of SYNC Packets and Delay in Transmission Timing Here, an interrupt transmission of SYNC packets and a delay in transmission timing, which are realized in the above-described communication system 1, will be described.

[0041] (Interrupt Transmission of SYNC Packets) FIG. 6 is a diagram illustrating interrupt transmission of SYNC packets, which is realized in the communication system 1. In FIG.

[0042] 6 shows how a command and SYNC are uplink transmitted from the host (ECU) on the sink side to the PHY of the sensor (communication device 20) on the source side via the PHY of the Des (communication device 10). Here, it is assumed that data is transmitted and received according to the A-PHY standard.

[0043] First, while a command (byte data) is being sent from the host side, at timing T11, the processing unit 11 of the communication device 10 generates an interrupt flag when SYNC (a synchronization signal used for frame synchronization in the sensor) is input.

[0044] The communication unit 12 of the communication device 10 inserts interrupt control data (INT1, INT2) at timing T12 when the A-packet of the command being transmitted has been output in accordance with the interrupt flag. The interrupt control data is data including a control code indicating that a packet is to be transmitted as an interrupt.

[0045] At the next timing T13, the communication unit 12 of the communication device 10 transmits the SYNC A-packet as an interrupt following the interrupt control data. At this time, the SYNC A-packet may be added with the timestamp described above.

[0046] After the interrupt transmission of the SYNC A-packet, at timing T14, the communication unit 12 of the communication device 10 continues to transmit A-packets of unsent commands.

[0047] In the uplink of A-PHY, each request and packet is transmitted by continuously transmitting a CM (Control Mark) and a CN (Control Nibbles). In communication system 1, CM and CN are used as interrupt control data (INT1, INT2), and a new format for the interrupt transmission of A-packets is defined in CN.

[0048] FIG. 7 is a diagram showing an example of newly defined CN (Control Nibbles).

[0049] In FIG. 7 , Null, PS (Packet Start), PE (Packet End), RRS (Ret. Req. Start), RE (Req. End), GRS (Gap Req. Start), RTR (Re-Train Req.), CMR (sCMax Req.), INT (Interrupt) / PC (Packet Continue), and ACK (Ack Indication) are CNs defined in the previous method. In FIG. 7 , PINT (Packet Interrupt) is a CN newly defined in this disclosure, indicating that a packet is to be transmitted as an interrupt. The PINT code can now use, for example, 1110, which was unused in the previous method. This allows the use of new CM and CN formats as interrupt control data. The CN is 1-byte data consisting of two 4-bit nibbles, CN1 and CN2.

[0050] FIG. 8 is a diagram showing an example of the configuration of a conventional CN.

[0051] Diagram A of Figure 8 shows an example of CN when a retransmission request occurs during data transmission. In this case, INT (Interrupt), indicating an interrupt, is set in CN1, and RRS (Ret. Req. Start), indicating a retransmission request, is set in CN2. Specifically, INT is first set in CN1 to cause the request to interrupt, and then RRS is set in CN2. The byte data that follows is determined according to the contents of CN. In this example, the byte data following CN consists of an MC number, which indicates the packet number for which retransmission is requested, and a CRC (Cyclic Redundancy Check), which is used for error checking.

[0052] 8B shows an example of CN when transmitting an ACK signal in I2C or the like. In this case, CN1 is ignored, and CN2 is set to ACK (Ack Indication), which indicates a positive response. In this example, the byte data following CN consists of an MC number indicating the packet number for which the next ACK is returned, and a CRC used for error checking.

[0053] The INT symbol indicating an interrupt, which was explained with reference to Figure 8A, simply specifies that byte information is to be transmitted as an interrupt. In other words, in conventional CNs, the transmission of packets as an interrupt is not specified.

[0054] On the other hand, in the present disclosure, PINT (Packet Interrupt), which indicates that a packet is to be transmitted as an interrupt, is set in the CN used as interrupt control data.

[0055] FIG. 9 is a diagram showing an example of the structure of a CN used as interrupt control data.

[0056] 9 shows an example in which interrupt control data (CM, CN) is inserted after the output of commands from byte 1 to byte N. In this case, CN1 is set to INT (Interrupt), indicating an interrupt, and CN2 is set to PINT (Packet Interrupt), indicating that a packet is to be transmitted as an interrupt. As a result, a SYNC packet is transmitted as an interrupt following CN. Furthermore, after the interrupt transmission of the SYNC packet, interrupt control data (CM, CN) is inserted, and commands from the (N+1)th byte to the final byte, which have not yet been transmitted, are transmitted in succession.

[0057] As shown in FIG. 10, the command from 1 byte to N bytes sent before the interrupt transmission of the SYNC packet may be discarded, and after the interrupt transmission of the SYNC packet, the command may be resent from the beginning (1 byte).

[0058] As described above, a PINT is newly defined as a CN, indicating that a packet is to be sent as an interrupt. When a SYNC packet is input during command transmission, a CN with a PINT set is inserted, allowing the SYNC packet to be sent as an interrupt. This makes it possible to avoid collisions in unidirectional communications on a single physical wiring that complies with the A-PHY standard, for example. This also makes it possible to maintain the SYNC period.

[0059] (Delay in SYNC Packet Transmission Timing) In the interrupt transmission of a SYNC packet described with reference to Fig. 6, the SYNC packet is inserted after the command being transmitted has been output and the interrupt control data has been inserted, so a certain delay occurs from the time the SYNC packet is input until it is transmitted via an interrupt. This delay does not occur if there is no need for subsequent interrupt transmission of a SYNC packet, so the time intervals between SYNC packets (SYNC intervals) will not be aligned.

[0060] Therefore, an example in which the transmission timing of subsequent SYNC packets that have been interrupt-transmitted is delayed will be described.

[0061] FIG. 11 is a diagram illustrating a delay in the transmission timing of a SYNC packet, which is realized in the communication system 1. In FIG.

[0062] As in FIG. 6 , FIG. 11 also shows how a command and SYNC are uplink transmitted from the host (ECU) on the sink side to the PHY of the sensor (communication device 20) on the source side via the PHY of the Des (communication device 10).

[0063] In FIG. 11, the delay time from timing T21 when SYNC is input until the SYNC packet is interrupt-transmitted after the interrupt control data is inserted is set to t.

[0064] In this case, even if interrupt transmission of the next SYNC packet is not necessary, the communication unit 12 of the communication device 10 delays the transmission timing by the delay time t from the timing T22 when the next SYNC is input until the transmission. The communication unit 12 of the communication device 10 also delays the transmission timing of subsequent SYNC packets by the delay time t in the same manner.

[0065] The transmission timing of the SYNC packet may be adjusted according to the transmission speed in A-PHY.

[0066] As described above, the transmission timing of all SYNC packets is adjusted in accordance with the delay time during interrupt transmission of SYNC packets, so that the SYNC intervals can be aligned.

[0067] 12, if a new command is input during the delay period from the timing T22 at which the next SYNC is input until it is transmitted (during the lapse of delay time t), the scheduler schedules the command to be transmitted after the SYNC packet. As described above, in the A-PHY standard, data that is input first takes priority, so in this case, the command is scheduled and packetized so that it is transmitted after the transmission of the SYNC packet is completed.

[0068] 4. Transfer of Received SYNC Packets to Upper Layers and Adjustment of Transfer Timing The above describes the processing on the transmitting side that transmits SYNC packets. Hereinafter, as processing on the receiving side that receives SYNC packets, transfer of SYNC packets received in the physical layer to upper layers and adjustment of transfer timing will be described.

[0069] (Transfer of Received SYNC Packet to Upper Layer) FIG. 13 is a diagram illustrating transfer of a received SYNC packet to an upper layer, which is realized in the communication system 1. In FIG.

[0070] As in FIG. 11, FIG. 13 shows how a command and SYNC are transmitted uplink from the host (ECU) side to the sensor side, and also how the transmitted command and SYNC are transferred from the sensor's PHY to a higher layer.

[0071] As described above, on the host (ECU) side, when a SYNC is input during transmission of a command, a SYNC packet can be transmitted as an interrupt by inserting interrupt control data into the command.

[0072] At this time, the SYNC packet is assigned the MC number next to the command sent as an interrupt, but the order of the MC number of the SYNC packet and the MC number of the A-packet of the unsent command sent after the interrupt transmission may be reversed. In this case, on the sensor side, the SYNC packet will be transferred to the upper layer in the order of the MC numbers, after the A-packets of all the commands sent as an interrupt. At this time, the sensor will no longer be able to maintain the SYNC period.

[0073] Therefore, as shown in FIG. 13, when the PHY of the sensor (the communication unit 22 of the communication device 20) receives the SYNC packet transmitted via interrupt at timing T31, the SYNC packet is made to be preferentially forwarded to the upper layer.

[0074] Specifically, interrupt information indicating that an interrupt has been sent is defined and stored in the SYNC packet that is sent as an interrupt. Based on the interrupt information stored in the SYNC packet, the PHY of the sensor transfers the SYNC packet to a higher layer with priority.

[0075] FIG. 14 is a diagram showing an example of an Interrupt Indication defined as interrupt information.

[0076] Fig. 14 shows details of the Adaptation Descriptor, Service Descriptor, and Placement Descriptor fields included in the A-packet header, in addition to the configuration of the A-packet described with reference to Fig. 5. Of these, the Service Descriptor currently includes fields for 2-bit PHY1, 2-bit Priority (Prio), 2-bit Quality of Service (QoS), and 1-bit Bad Indication (BAD), with the remaining bits being Reserved (Res).

[0077] Therefore, in the present disclosure, an Interrupt Indication defined as interrupt information is stored in Reserved (Res) included in the Service Descriptor in the SYNC packet (A-packet header). The Interrupt Indication may be stored on the host side (communication unit 12 of communication device 10) when a SYNC packet is transmitted as an interrupt.

[0078] As described above, on the sensor side, based on the interrupt information included in the received SYNC packet, the SYNC packet is preferentially transferred to the upper layer regardless of the order of the MC numbers. This makes it possible to maintain the SYNC period on the sensor side as well.

[0079] (Adjusting transfer timing to upper layer) In the transfer of a SYNC packet to an upper layer described with reference to Figure 13, the transfer timing of the SYNC packet to the upper layer may be adjusted based on the timestamp included in the SYNC packet.

[0080] 15, the PHY of the sensor (communication unit 22 of the communication device 20) calculates the difference (time interval) between the timestamp included in the SYNC packet received at timing T41 and the timestamp included in the SYNC packet received at timing T42. Then, based on the calculated timestamp difference, the PHY of the sensor adjusts the timing of transfer of the SYNC packet received at timing T42 to an upper layer.

[0081] Furthermore, if the difference between the timestamps exceeds a predetermined threshold, the PHY of the sensor may return a packet containing error notification information (error notification packet) to the host at timing T43.

[0082] FIG. 16 is a diagram illustrating an example of the configuration of an error notification packet.

[0083] The error notification packet shown in Fig. 16 is basically configured in the same manner as the A-packet described with reference to Fig. 5. However, the error notification packet in Fig. 16 differs from the A-packet in Fig. 5 in that the A-packet payload includes BAD or DROP and MC number fields in addition to a Timestamp field. BAD or DROP is a field in which a damaged / defective flag is placed, indicating that the SYNC packet (error packet) whose timestamp is abnormal is a damaged (BAD) or defective (DROP) packet. MC number is a field in which the MC number of the error packet is placed.

[0084] On the host side (communication device 10) that receives such an error notification packet, the communication unit 12 notifies the processing unit 11 of the MC number of the SYNC packet (error packet) included in the received error notification packet, thereby enabling the host side (communication device 10) to detect that there is an abnormality in the SYNC period.

[0085] Here, the calculation of the timestamp difference and the adjustment thereof will be specifically described.

[0086] FIG. 17 is a diagram showing a specific example of calculation of the difference between timestamps.

[0087] The upper part of Fig. 17 shows five frames of SYNC packets received by the GPIO on the sensor side. The rectangles representing each SYNC packet indicate counter values ​​indicating the timestamps added to the SYNC packets. Assuming that the SYNC packets for frames 0 to 4 are shown from the left in the figure, the timestamp (counter value) of the SYNC packet for frame 0 is 10, and the timestamp (counter value) of the SYNC packet for frame 1 is 5010. Similarly, the timestamp of the SYNC packet for frame 2 is 10006, the timestamp of the SYNC packet for frame 3 is 14992, and the timestamp (counter value) of the SYNC packet for frame 4 is 19962.

[0088] The bottom row of Fig. 17 shows the interval (SYNC width) between SYNC packets of each frame, expressed as the difference from the timestamp of the SYNC packet of the previous frame. That is, the SYNC width of frame 0 is 5010-10=5000, and the SYNC width of frame 1 is 10006-5010=4996. Similarly, the SYNC width of frame 2 is 14992-10006=4986, and the SYNC width of frame 3 is 19962-14992=4970.

[0089] As described above, in the example of FIG. 17, the SYNC width varies from 5000, 4996, 4986, and 4970, and therefore, it is necessary to reduce this variation.

[0090] FIG. 18 is a diagram showing a specific example of calculation of the difference between timestamps.

[0091] The upper row of Fig. 18 shows the SYNC packets of frames 0 to 4, as in Fig. 17, and below that, the difference (one SYNC interval) from the timestamp of the SYNC packet of the previous frame is shown. Further below that, the difference in one SYNC interval is shown. Specifically, the difference in the SYNC interval between frames 0 and 1 is 4996-5000 = "-4", the difference in the SYNC interval between frames 1 and 2 is 4986-4996 = "-10", and the difference in the SYNC interval between frames 2 and 3 is 4970-4986 = "-16".

[0092] Here, as thresholds for the difference in SYNC intervals, a first threshold (dead band threshold) that determines whether or not the difference in timestamp from the previous frame needs to be corrected, and a second threshold (error threshold) that determines whether or not an error notification packet needs to be returned are defined. If the difference in SYNC intervals exceeds the dead band threshold, the average value of the difference in SYNC intervals from the previous frame is output as the SYNC width of the current frame, and the transfer timing of the SYNC packet to the upper layer is adjusted. Furthermore, if the difference in SYNC intervals exceeds the error threshold, an error notification packet is sent to the host.

[0093] For example, if the dead band threshold is set to ±5 and the error threshold is set to ±12, the SYNC intervals of 5000 and 4996 for frames 0 and 1 are output as the SYNC widths for frames 0 and 1 as they are.

[0094] On the other hand, the difference "-10" between the SYNC intervals of frames 1 and 2 exceeds the dead band threshold. In this case, the SYNC interval of frame 2 needs to be corrected, and the average value Ave (4996, 4986) = 4991 of the SYNC intervals of frames 1 and 2, 4996 and 4986, respectively, is replaced with the SYNC width of frame 2. This reduces the variation in the SYNC widths of frames 0 to 2, making it possible to transfer the SYNC packet to the upper layer. At this time, in internal counter A, which counts the SYNC width of each frame, the SYNC width of frame 3 is counted from 14497.

[0095] Furthermore, the difference "-16" between the SYNC intervals of frames 2 and 3 exceeds the error threshold. In this case, an error notification packet must be returned, and is sent to the host. At this time, the SYNC interval of frame 3 is not corrected, and the value based on internal counter A, 19962-14497 = "4965", is output as is as the SYNC width of frame 3.

[0096] In this way, the timing of transferring the SYNC packet to the upper layer is adjusted based on the timestamp included in the SYNC packet, thereby making it possible to more reliably maintain the SYNC period on the sensor side.

[0097] 5. Configuration and Operation of a Sink-Source Capable of Responding to Data Interrupts The configuration and operation of a sink-source capable of responding to the above-described data interrupts will be described with reference to FIGS.

[0098] (Configuration of Sink-Source) FIG. 19 is a diagram showing an example of the configuration of a sink-source that can handle a data interrupt.

[0099] FIG. 19 shows the configuration of a sink 100 corresponding to the Des on the host (ECU) side and a source 200 corresponding to the sensor.

[0100] The sink 100 is configured to include a data link layer 110 and an A-PHY port 120 .

[0101] The data link layer 110 realizes data transmission with the source 200 by providing functions and procedures for sending and receiving data via the A-PHY port 120. The data link layer 110 has a port function 111. The port function 111 converts various input signals into A-packets, and also converts the A-packets into signals of various standards and outputs them.

[0102] 1, and performs A-PHY-related processing. The A-PHY port 120 is composed of an RTS (Retransmission) 121 that performs processing related to retransmission, a PCS (Physical Coding Sub-Layer) 122 that scrambles and encodes signals to be transmitted and decodes and descrambles received signals, and a PMD (Physical Medium Dependent) 123 that connects to the physical wiring that serves as the communication path.

[0103] Of these, the RTS 121 includes a timing adjustment circuit 131 , a transmission buffer 132 , a scheduler 133 , a request manager 134 , and a CRC addition circuit 135 .

[0104] The timing adjustment circuit 131 adjusts the output timing of packets supplied from the data link layer 110. The transmission buffer 132 stores packets that have already been transmitted and packets that are scheduled to be transmitted. The scheduler 133 schedules the transmission of packets stored in the transmission buffer 132. The request manager 134 controls the transmission buffer 132 and the scheduler 133, and manages various requests from the communication partner device (source 200). The CRC addition circuit 135 adds a CRC to the packet to be transmitted and outputs it to the PCS 122.

[0105] The source 200 is configured to include an A-PHY port 210 and a data link layer 220 .

[0106] The A-PHY port 210 corresponds to, for example, the communication unit 22 included in the communication device 20 in FIG. 1, and performs processing related to A-PHY.

[0107] The A-PHY port 210 is composed of a PMD 211 that connects to the physical wiring that serves as the communication path, a PCS 212 that decodes and descrambles received signals and scrambles and encodes signals to be transmitted, and an RTS 213 that performs processing related to retransmission, etc.

[0108] Of these, the RTS 213 includes a CRC check circuit 231 and a receiving buffer 232 .

[0109] The CRC check circuit 231 performs error detection using the CRC added to the packet decoded and descrambled by the PCS 212 .

[0110] The receiving buffer 232 stores received packets. The packets stored in the receiving buffer 232 are transferred to the data link layer 220 in the order of the MC numbers, for example.

[0111] The data link layer 220 provides functions and procedures for transmitting and receiving data via the A-PHY port 210, thereby realizing data transmission with the sink 100. The data link layer 220 has a port function 221. The port function 221 converts input signals of various standards into A-packets, and also converts the A-packets into signals of various standards and outputs them.

[0112] The above description has mainly focused on a configuration for realizing an uplink from the sink 100 to the source 200. In reality, the A-PHY port 120 in the sink 100 and the A-PHY port 210 in the source 200 each have similar functions, and a downlink from the source 200 to the sink 100 can also be realized.

[0113] (Operation of the sink) The transmission process of a SYNC packet by the sink 100 will be described with reference to the flowchart of Fig. 20. The process of Fig. 20 is executed in a state where a SYNC / GPIO signal and commands of various standards such as CAN and I2C can be input to the data link layer 110.

[0114] In step S101, the data link layer 110 determines whether or not a SYNC signal has been input. Step S101 is repeated until it is determined that a SYNC signal has been input, and if it is determined that a SYNC signal has been input, the process proceeds to step S102. At this time, the port function 111 of the data link layer 110 converts the input SYNC signal into an A-packet and outputs the resulting SYNC packet to the A-PHY port 120.

[0115] In step S102, the port function 111 generates an interrupt flag and notifies the request manager 134 of the A-PHY port 120 that a SYNC signal has been input.

[0116] In step S103, the request manager 134 determines, based on the packets stored in the transmission buffer 132, whether or not there is conflicting data when transmitting the SYNC packet.

[0117] If it is determined in step S103 that there is conflicting data, the process proceeds to step S104, where the scheduler 133, under the control of the request manager 134, stops the transfer of the conflicting data and inserts interrupt control data (CM, CN (INT, PINT)).

[0118] In step S 105 , the A-PHY port 120 transmits the SYNC packet following the interrupt control data inserted by the scheduler 133 .

[0119] Then, in step S106, the A-PHY port 120 transmits the remaining data whose transfer has been stopped by the scheduler 133.

[0120] On the other hand, if it is determined in step S103 that there is no conflicting data, the A-PHY port 120 transmits the SYNC packet as is. At this time, the A-PHY port 120 may delay the transmission timing of the SYNC packet by a delay time t, if necessary.

[0121] According to the above process, when a SYNC packet is input during transmission of data such as a command, the SYNC packet is transmitted as an interrupt by inserting interrupt control data. This makes it possible to avoid collisions between simultaneous communications on a single physical wiring that complies with the A-PHY standard, for example.

[0122] (Operation of Source) A packet reception process by the source 200 will be described with reference to the flowchart in Fig. 21. The process in Fig. 21 is executed every time the A-PHY port 210 receives a packet from the sink 100.

[0123] In step S201, the A-PHY port 210 determines whether or not an Interrupt Indication, which is defined as interrupt information, is included in the packet header of the received packet. If an Interrupt Indication is included in the packet header, the received packet is determined to be a SYNC packet.

[0124] If it is determined in step S201 that an Interrupt Indication has been detected, the process proceeds to step S202, where the A-PHY port 210 transfers the SYNC packet to the upper layer (data link layer 220) with the highest priority.

[0125] Then, in step S203, the data link layer 220 (port function 221) generates and outputs a SYNC signal for frame synchronization based on the transferred SYNC packet.

[0126] On the other hand, if it is determined in step S201 that there is no Interrupt Indication, the process proceeds to step S204, where the A-PHY port 210 transfers the packets to the upper layer (data link layer 220) in the order of the MC numbers added.

[0127] According to the above process, the SYNC packets are transferred to the upper layer with priority based on the Interrupt Indication included in the received SYNC packets, regardless of the order of the MC numbers. This makes it possible to maintain the SYNC period even on the source 200 side.

[0128] The sink and source described above transmit data of various standards using physical wiring conforming to the A-PHY standard as a communication path, but the communication path is not limited to the A-PHY standard and may be physical wiring conforming to other standards such as the ASA standard. In this case, the control code indicating the interrupt transmission of a packet may be set in predetermined control data equivalent to CN (Control Nibbles).

[0129] Furthermore, the command that is interrupted by the SYNC packet is not limited to CAN or I2C, but may also be data conforming to standards such as I3C (Improved Inter-Integrated Circuits), CSI2 (Camera Serial Interface 2), and SPI (Serial Peripheral Interface).

[0130] Furthermore, the data to be transmitted via interruption is not limited to SYNC packets, but may be data converted from a signal with a high degree of urgency.

[0131] In this specification, a system refers to a collection of multiple components (devices, modules (components), etc.), regardless of whether all of the components are contained in the same housing. Therefore, multiple devices housed in separate housings and connected via a network, and a single device housed in a single housing with multiple modules, are both systems.

[0132] Furthermore, the embodiments to which the technology according to the present disclosure is applied are not limited to the above-described embodiments, and various modifications are possible within the scope that does not deviate from the gist of the technology according to the present disclosure.

[0133] Furthermore, the present disclosure may have the following configurations: (1) A communication method in which, when second data is input while a communication device is transmitting first data via a physical layer capable of transmitting multiple types of data with a communication partner device over a single physical wiring, the communication device transmits the second data as an interrupt by inserting interrupt control data into the first data. (2) The communication method described in (1), in which the interrupt control data includes a control code indicating that a packet is to be transmitted as an interrupt. (3) The communication method described in (2), in which the second data is a synchronization signal used by the communication partner device. (4) The communication method described in (3), in which, after the interrupt transmission of the second data, the untransmitted first data is transmitted continuously. (5) The communication method described in (3), in which the first data transmitted before the interrupt transmission of the second data is discarded, and after the interrupt transmission of the second data, the first data is retransmitted from the beginning. (6) The communication method described in any of (3) to (5), in which the transmission timing of the subsequently transmitted second data is delayed based on the time from when the second data was input to when the second data was transmitted as an interrupt. (7) The communication method according to (6), in which the transmission timing of the second data is adjusted according to the transmission rate in the physical layer. (8) The communication method according to (7), in which, if the first data is input during a delay period of the transmission timing of the second data, the first data is scheduled to be transmitted after the second data. (9) The communication method according to any of (3) to (8), in which interrupt information indicating that the second data has been transmitted as an interrupt is stored in a packet header of the second data. (10) The communication method according to (9), in which, if the communication partner device receives the second data while receiving the first data, the second data is preferentially transferred to an upper layer based on the interrupt information. (11) The communication method according to (10), in which the communication partner device adjusts the transfer timing of the second data to the upper layer based on a timestamp included in the second data.(12) The communication method according to (11), wherein the communication partner device returns a packet including error notification information to the communication device when the time interval between the timestamps exceeds a threshold. (13) The communication method according to any of (1) to (12), wherein the physical layer is an A-PHY standard of MIPI (Mobile Industry Processor Interface). (14) The communication method according to (13), wherein the interrupt control data is set to a CN out of a CM (Control Mark) and a CN (Control Nibbles) that are transmitted consecutively. (15) A communication device comprising: a communication unit that, when second data is input during transmission of first data via a physical layer capable of transmitting multiple types of data with a communication partner device over a single physical wiring, inserts interrupt control data into the first data to transmit the second data as an interrupt. (16) A communication device comprising: a communication unit that, when second data is received while first data is being received via a physical layer capable of transmitting multiple types of data between communication partners on a single physical wiring, transfers the second data to a higher layer with priority based on interrupt information stored in the packet header of the second data, which indicates that the second data has been sent as an interrupt.

[0134] 1 Communication system, 10 Communication device, 11 Processing unit, 12 Communication unit, 20 Communication device, 21 Processing unit, 22 Communication unit, 30 Communication path, 100 Sink, 110 Data link layer, 111 Port Function, 120 A-PHY port, 121 RTS, 122 PCS, 123 PMD, 131 Timing adjustment circuit, 132 Transmission buffer, 133 Scheduler, 134 Request manager, 135 CRC addition circuit, 200 Source, 210 A-PHY port, 211 PMD, 212 PCS, 213 RTS, 220 Data link layer, 221 Port Function, 231 CRC check circuit, 232 Reception buffer

Claims

1. A communications method in which, when second data is input while a communications device is transmitting first data via a physical layer capable of transmitting multiple types of data between a communications partner device over a single physical wiring, the communications device transmits the second data as an interrupt by inserting interrupt control data into the first data.

2. The communication method according to claim 1, wherein the interrupt control data includes a control code that indicates that a packet is to be transmitted as an interrupt.

3. The communication method according to claim 2, wherein the second data is a synchronization signal used in the communication partner device.

4. The communication method according to claim 3, further comprising the step of: transmitting the untransmitted first data successively after the interrupt transmission of the second data.

5. The communication method according to claim 3, further comprising discarding the first data transmitted before the interrupt transmission of the second data, and retransmitting the first data from the beginning after the interrupt transmission of the second data.

6. The communication method according to claim 3, further comprising delaying the transmission timing of the second data to be subsequently transmitted based on the time from when the second data is input to when the second data is transmitted as an interrupt.

7. The communication method according to claim 6, further comprising adjusting the transmission timing of the second data in accordance with a transmission speed in the physical layer.

8. The communication method according to claim 7, further comprising the step of: if the first data is input during a delay period of the transmission timing of the second data, scheduling is performed so that the first data is transmitted after the second data.

9. The communication method according to claim 3, further comprising storing interrupt information indicating that the second data has been transmitted as an interrupt in a packet header of the second data.

10. The communication method according to claim 9, wherein, when the communication partner device receives the second data while receiving the first data, the communication partner device transfers the second data to a higher layer with priority based on the interrupt information.

11. The communication method according to claim 10, wherein the communication partner device adjusts a timing for transferring the second data to the upper layer based on a timestamp included in the second data.

12. The communication method according to claim 11, wherein the communication partner device returns a packet including error notification information to the communication device when the time interval between the time stamps exceeds a threshold value.

13. The communication method according to claim 1, wherein the physical layer is an A-PHY standard of the Mobile Industry Processor Interface (MIPI).

14. The communication method according to claim 13, wherein the interrupt control data is set in a CN out of a CM (Control Mark) and a CN (Control Nibbles) which are transmitted successively.

15. A communication device having a communication unit that, when second data is input while first data is being transmitted via a physical layer capable of transmitting multiple types of data between a communication partner device over a single physical wiring, transmits the second data as an interrupt by inserting interrupt control data into the first data.

16. A communications device having a communications unit that, when second data is received while first data is being received via a physical layer capable of transmitting multiple types of data between a communications partner device over a single physical wiring, transfers the second data to a higher layer with priority based on interrupt information stored in the packet header of the second data, which indicates that the second data has been sent as an interrupt.