WO2023210325A1 - Transmission apparatus, transmission method, reception apparatus, reception method, program, and transmission system - Google Patents
Transmission apparatus, transmission method, reception apparatus, reception method, program, and transmission system Download PDFInfo
- Publication number
- WO2023210325A1 WO2023210325A1 PCT/JP2023/014556 JP2023014556W WO2023210325A1 WO 2023210325 A1 WO2023210325 A1 WO 2023210325A1 JP 2023014556 W JP2023014556 W JP 2023014556W WO 2023210325 A1 WO2023210325 A1 WO 2023210325A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- information
- data
- security
- functional safety
- unit
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1408—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/22—Parsing or analysis of headers
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1004—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's to protect a block of data words, e.g. CRC or checksum
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/55—Detecting local intrusion or implementing counter-measures
- G06F21/554—Detecting local intrusion or implementing counter-measures involving event detection and direct action
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/43—Assembling or disassembling of packets, e.g. segmentation and reassembly [SAR]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/12—Applying verification of the received information
- H04L63/123—Applying verification of the received information received data contents, e.g. message integrity
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N23/00—Cameras or camera modules comprising electronic image sensors; Control thereof
- H04N23/70—Circuitry for compensating brightness variation in the scene
- H04N23/73—Circuitry for compensating brightness variation in the scene by influencing the exposure time
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N23/00—Cameras or camera modules comprising electronic image sensors; Control thereof
- H04N23/70—Circuitry for compensating brightness variation in the scene
- H04N23/743—Bracketing, i.e. taking a series of images with varying exposure conditions
Definitions
- the present technology particularly relates to a transmission apparatus, a transmission method, a reception apparatus, a reception method, a program, and a transmission system capable of adding and outputting information used for implementing functional safety and security for each piece of data in units of frames.
- SLVS-EC scalable low voltage signaling-embedded clock
- An SLVS-EC transmission method is a method in which data is transmitted in a form in which a clock is superimposed on a transmission side, and the clock is reproduced on a reception side to demodulate/decrypt the data.
- SLVS-EC data transmission is used, for example, for data transmission between an image sensor and a digital signal processor (DSP) serving as a host.
- DSP digital signal processor
- the present technology has been made in view of such a situation, and enables addition and output of information used for implementing functional safety and security for each data in units of frames.
- a transmission apparatus includes a controller that is configured to generate frame data corresponding to output data generated by a sensor.
- the frame data is generated according to a frame format that includes at least one of first security information or first functional safety information.
- the controller generates packets based on the frame data, with individual packets respectively including individual lines of image data in the frame data.
- Embodiments can be applicable, for example, to SLVS-EC standard communication.
- a reception apparatus includes: a signal processing unit that receives a packet that stores data of each line included in frame data in which at least one of security information or functional safety information is added to output data in units of frames output by a sensor, the security information being information used for implementing security, and the functional safety information being information used for implementing functional safety; and an information processing unit that performs processing of implementing security on the basis of the security information and performs processing of implementing functional safety on the basis of the functional safety information.
- frame data is generated by adding at least one of security information or functional safety information to output data in units of frames output by a sensor, the security information being information used for implementing security, and the functional safety information being information used for implementing functional safety, and data of each line included in the frame data is stored in each packet and the packet is transmitted.
- a packet that stores data of each line included in frame data in which at least one of security information or functional safety information is added to output data in units of frames output by a sensor is received, the security information being information used for implementing security, and the functional safety information being information used for implementing functional safety, and processing of implementing security is performed on the basis of the security information and processing of implementing functional safety is performed on the basis of the functional safety information.
- Fig. 1 is a diagram illustrating an example of a configuration of a transmission system according to an embodiment of the present technology.
- Fig. 2 is a block diagram illustrating an example of configurations of a transmission unit and a reception unit.
- Fig. 3 is a diagram illustrating an example of a format used for transmission of image data of each frame.
- Fig. 4 is a diagram illustrating a data structure of a packet.
- Fig. 5 is a diagram illustrating an example of a frame format according to an embodiment of the present technology.
- Fig. 6 is a diagram illustrating an example of a content of each piece of information.
- Fig. 7 is a diagram illustrating an example of authentication using a message authentication code (MAC) value.
- MAC message authentication code
- Fig. 8 is a diagram illustrating an example of encryption and decryption of image data.
- Fig. 9 is a diagram illustrating an example of a packet used for transmitting each piece of information.
- Fig. 10 is a diagram illustrating an example of another frame format.
- Fig. 11 is a block diagram illustrating an example of a functional configuration of an application layer processing unit.
- Fig. 12 is a diagram illustrating an example of allocation of each bit included in header information.
- Fig. 13 is a diagram illustrating the example of the allocation of each bit included in the header information.
- Fig. 14 is a diagram illustrating an example of values of Safety Info and Security Info.
- Fig. 15 is a diagram illustrating an example of a value of the header information.
- Fig. 9 is a diagram illustrating an example of a packet used for transmitting each piece of information.
- Fig. 10 is a diagram illustrating an example of another frame format.
- Fig. 11 is a block diagram illustrating an example of
- Fig. 16 is a flowchart for explaining processing in an image sensor.
- Fig. 17 is a flowchart for explaining processing in a digital signal processor (DSP).
- Fig. 18 is a diagram illustrating a first modification of the frame format.
- Fig. 19 is a diagram illustrating a second modification of the frame format.
- Fig. 20 is a diagram illustrating a third modification of the frame format.
- Fig. 21 is a block diagram illustrating an example of a functional configuration of an application layer processing unit.
- Fig. 22 is a diagram illustrating a fourth modification of the frame format.
- Fig. 23 is a diagram illustrating an example of configurations of the transmission unit and the reception unit.
- Fig. 24 is a diagram illustrating an example of payload data.
- Fig. 25 is a diagram illustrating another example of the payload data.
- Fig. 26 is a diagram illustrating an example of the payload data to which a parity is inserted.
- Fig. 27 is a diagram illustrating a state in which a header is added to the payload data.
- Fig. 28 is a diagram illustrating a state in which the header and a footer are added to the payload data.
- Fig. 29 is a diagram illustrating a state in which the header is added to the payload data to which the parity is inserted.
- Fig. 30 is a diagram illustrating an example of allocation of packet data.
- Fig. 31 is a diagram illustrating an example of a control code.
- Fig. 32 is a diagram illustrating an example of the packet data after inserting the control code.
- Fig. 33 is a diagram illustrating an example of correction of data skew.
- Fig. 34 is a diagram illustrating an example of target ranges of message authentication code (MAC) computation.
- Fig. 35 is a diagram illustrating an example of target ranges of cyclic redundancy check (CRC) computation.
- Fig. 36 is a diagram illustrating an example of the target ranges of the MAC computation and the CRC computation.
- Fig. 37 is a block diagram illustrating an example of a configuration of an application layer processing unit.
- Fig. 38 is a diagram illustrating an example of a value of a data type (DT) region.
- Fig. 39 is a diagram illustrating another example of the value of the DT region.
- Fig. 34 is a diagram illustrating an example of correction of data skew.
- Fig. 34 is a diagram illustrating an example of target ranges of message authentication code (MAC) computation.
- Fig. 35 is a diagram illustrating an example of target ranges of
- Fig. 40 is a diagram illustrating an example of a transmission timing of data of scalable low voltage signaling (SLVS)/sub low-voltage differential signaling (SubLVDS).
- Fig. 41 is a block diagram illustrating an example of a configuration of the image sensor.
- Fig. 42 is a diagram illustrating an example of the header information used for transmission of a long-accumulated image and a short-accumulated image.
- Fig. 43 is a block diagram illustrating an example of a configuration of a computer.
- Fig. 1 is a diagram illustrating an example of a configuration of a transmission system according to an embodiment of the present technology.
- a transmission system 1 of Fig. 1 includes an image sensor 11 and a digital signal processor (DSP) 12.
- the image sensor 11 and the DSP 12 are provided in the same apparatus having an imaging function, such as a camera or a smartphone.
- the image sensor 11 includes an imaging unit 21 and a transmission unit 22, and the DSP 12 includes a reception unit 31 and an image processing unit 32.
- the imaging unit 21 of the image sensor 11 includes an imaging element such as a complementary metal oxide semiconductor (CMOS) image sensor, and performs photoelectric conversion of light received via a lens.
- CMOS complementary metal oxide semiconductor
- the imaging unit 21 performs A/D conversion or the like of a signal obtained by photoelectric conversion, and sequentially outputs pixel data included in an image of one frame to the transmission unit 22, for example, data of one pixel at a time.
- the transmission unit 22 allocates the data of each pixel supplied from the imaging unit 21 to a plurality of transmission paths, and transmits the pieces of data to the DSP 12 in parallel via the plurality of transmission paths.
- the pixel data is transmitted using eight transmission paths.
- the transmission path between the image sensor 11 and the DSP 12 may be a wired transmission path or a wireless transmission path.
- the transmission path between the image sensor 11 and the DSP 12 is appropriately referred to as a lane.
- the reception unit 31 of the DSP 12 receives the pixel data transmitted from the transmission unit 22 via the eight lanes, and sequentially outputs the data of each pixel to the image processing unit 32.
- the image processing unit 32 generates an image of one frame on the basis of the pixel data supplied from the reception unit 31, and performs various types of image processing using the generated image.
- the image data transmitted from the image sensor 11 to the DSP 12 is, for example, raw data.
- various types of processing such as compression of image data, display of an image, and recording of image data on a recording medium are performed.
- JPEG data and additional data other than the pixel data may be transmitted from the image sensor 11 to the DSP 12.
- transmission and reception of data using a plurality of lanes are performed between the transmission unit 22 provided in the image sensor 11 of the transmission system 1 and the reception unit 31 provided in the DSP 12 serving as an information processing unit on a host side.
- the transmission and reception of data between the transmission unit 22 and the reception unit 31 are performed, for example, according to scalable low voltage signaling-embedded clock (SLVS-EC) which is a standard of a communication interface (IF).
- SLVS-EC scalable low voltage signaling-embedded clock
- an application layer, a link layer, and a physical (PHY) layer are defined according to a content of signal processing.
- Signal processing of each layer is performed in each of the transmission unit 22 on a transmission side (Tx) and the reception unit 31 on a reception side (Rx).
- Fig. 2 is a block diagram illustrating an example of configurations of the transmission unit 22 and the reception unit 31.
- the transmission unit 22 includes an application layer processing unit 41, a link layer signal processing unit 42, and a physical layer signal processing unit 43.
- the transmission unit 22 includes a signal processing unit that performs signal processing in the link layer on the transmission side and a signal processing unit that performs signal processing in the physical layer on the transmission side.
- the application layer processing unit 41 acquires the pixel data output from the image sensor 11 and performs application layer processing on output data as a transmission target. In the application layer processing unit 41, the application layer processing is performed using the image data of each frame as the output data. Frame data having a predetermined format is generated by the application layer processing. The application layer processing unit 41 outputs data included in the frame data to the link layer signal processing unit 42.
- the link layer signal processing unit 42 performs link layer signal processing on the data supplied from the application layer processing unit 41.
- the link layer signal processing unit 42 at least generation of a packet that stores the frame data and processing of distributing packet data to the plurality of lanes are performed in addition to the above-described processing.
- a packet that stores data included in the frame data is output from the link layer signal processing unit 42.
- the physical layer signal processing unit 43 performs physical layer signal processing on the packet supplied from the link layer signal processing unit 42.
- processing including processing of inserting a control code into the packet distributed to each lane is performed in parallel for each lane.
- a data stream of each lane is output from the physical layer signal processing unit 43 and transmitted to the reception unit 31.
- the application layer processing unit 41, the link layer signal processing unit 42 and the physical layer signal processing unit 43 are examples of a controller in the present disclosure.
- the reception unit 31 includes a physical layer signal processing unit 51, a link layer signal processing unit 52, and an application layer processing unit 53.
- the reception unit 31 includes a signal processing unit that performs signal processing in the physical layer on the reception side and a signal processing unit that performs signal processing in the link layer on the reception side.
- the physical layer signal processing unit 51 receives the data stream transmitted from the physical layer signal processing unit 43 of the transmission unit 22, and performs the physical layer signal processing on the received data stream. In the physical layer signal processing unit 51, processing including symbol synchronization processing and control code removal is performed in parallel for each lane in addition to the above-described processing. A data stream including the packet that stores the data included in the frame data is output from the physical layer signal processing unit 51 by using the plurality of lanes.
- the link layer signal processing unit 52 performs link layer signal processing on the data stream of each lane supplied from the physical layer signal processing unit 51. In the link layer signal processing unit 52, at least processing of integrating the data streams of the plurality of lanes into single system data and processing of acquiring a packet included in the data stream are performed. Data extracted from the packet is output from the link layer signal processing unit 52.
- the application layer processing unit 53 performs application layer processing on the frame data including the data supplied from the link layer signal processing unit 52. As the application layer processing, processing for implementing functional safety and implementing security is performed. The application layer processing unit 53 outputs output data after the application layer processing to the image processing unit 32 in the subsequent stage. The application layer processing performed on the transmission side in order to perform the application layer processing on the reception side is also processing for implementing functional safety and implementing security.
- Fig. 3 is a diagram illustrating an example of a format used for transmission of the image data of each frame.
- a valid pixel region A1 is a region of valid pixels of an image of one frame captured by the imaging unit 21.
- a margin region A2 is set on the left side of the valid pixel region A1.
- a front dummy region A3 is set above the valid pixel region A1.
- embedded data is inserted to the front dummy region A3.
- the embedded data includes information of a set value related to imaging by the imaging unit 21, such as a shutter speed, an aperture value, and a gain.
- the embedded data may also include contents, a format, a data size, and the like.
- a rear dummy region A4 is set below the valid pixel region A1.
- the embedded data may also be inserted to the rear dummy region A4.
- the valid pixel region A1, the margin region A2, the front dummy region A3, and the rear dummy region A4 constitute an image data region A11.
- a header is added ahead of each line included in the image data region A11, and Start Code is added ahead of the header. Furthermore, a footer is optionally added behind each line included in the image data region A11, and a control code such as End Code is added behind the footer. In a case where the footer is not added, the control code such as End Code is added behind each line included in the image data region A11.
- Data transmission is performed using frame data in the format illustrated in Fig. 3 for each image of one frame captured by the imaging unit 21.
- the upper band in Fig. 3 illustrates a structure of a packet used for transmission of the frame data illustrated on the lower side. Assuming that arrangement of data in a horizontal direction is a line, data constituting one line of the image data region A11 is stored in a payload of the packet. The entire frame data of one frame is transmitted using packets whose number is equal to or larger than the number of pixels of the image data region A11 in a vertical direction. Furthermore, transmission of the entire frame data of one frame is performed, for example, by transmitting a packet that stores data in units of lines in order from data arranged in the upper line.
- One packet is configured by adding the header and the footer to the payload in which data for one line is stored. At least Start Code and End Code which are the control codes are added to each packet.
- Fig. 4 is an enlarged view illustrating a data structure of the packet.
- the entire one packet includes the header and payload data that is data for one line included in the frame data.
- the header includes additional information of data stored in the payload, such as Frame Start, Frame End, Line Valid, Line Number, and ECC.
- Frame Start, Frame End, Line Valid, and Line Number are illustrated as the header information.
- Frame Start is 1-bit information indicating a head of a frame.
- a value of 1 is set for Frame Start of the header of the packet used for transmission of data of the first line of the frame data, and a value of 0 is set for Frame Start of the header of the packet used for transmission of data of another line.
- Frame End is 1-bit information indicating an end of the frame.
- a value of 1 is set for Frame End of the header of the packet including data of an end line of the frame data, and a value of 0 is set for Frame End of the header of the packet used for transmission of data of another line.
- Frame Start and Frame End are pieces of frame information that are information regarding the frame.
- Line Valid is 1-bit information indicating whether or not a line of data stored in the packet is a line of valid pixels.
- a value of 1 is set for Line Valid of the header of the packet used for transmission of pixel data of the line in the valid pixel region A1, and a value of 0 is set for Line Valid of the header of the packet used for transmission of data of another line.
- Line Number is 13-bit information indicating a line number of a line in which the data stored in the packet is arranged.
- Line Valid and Line Number are line information that is information regarding the line.
- the header information also includes information such as functional safety information and a flag indicating whether or not security information is included in the packet.
- Header ECC arranged following the header information includes a cyclic redundancy check (CRC) code which is a 2-byte error detection code calculated on the basis of 6-byte header information. Furthermore, Header ECC includes two pieces of information that are the same as 8-byte information that is a set of the header information and the CRC code, subsequent to the CRC code.
- CRC cyclic redundancy check
- Fig. 5 is a diagram illustrating an example of a frame format according to an embodiment of the present technology.
- the frame format illustrated in Fig. 5 is configured by arranging security-related information, functional-safety-related information, and the embedded data (EBD) in each line ahead of the image data (raw data) of one frame.
- the functional-safety-related information is arranged in a line next to the line in which the security-related information is arranged, and the EBD is arranged in a line next to the line in which the functional-safety-related information is arranged.
- the image data for one frame which is data of the plurality of lines, is arranged behind the line in which the EBD is arranged.
- the frame format illustrated in Fig. 5 is configured by arranging output data functional safety information and output data security information in each line behind the image data for one frame.
- the output data security information is arranged in a line next to the line in which the output data functional safety information is arranged.
- a line of Frame Start (FS) and a line of Frame End (FE) are arranged at the head and the end of the frame format, respectively.
- the line of Frame Start is a line of data in which a value of 1 is set for Frame Start of a packet header.
- the line of Frame End is a line of data in which a value of 1 is set for Frame End of the packet header.
- One or more lines may be set as a line in which each of the security-related information, the functional-safety-related information, the EBD, the output data security information, and the output data functional safety information is arranged.
- the packet header (PH) added to data of each line is illustrated at a left end of each line in Fig. 5. Note that, in Fig. 5, illustration of the margin region and the like described with reference to Fig. 3 is omitted.
- the security-related information is information used for implementing security of the image sensor 11.
- Information used for implementing security of communication between the image sensor 11 and the DSP 12 is also included in the security-related information.
- Information regarding a malicious action such as an attack on the image sensor 11 is included in the security-related information.
- the security-related information includes the following information. ⁇ Information of security error/warning of register communication ⁇ Information indicating detection of attack on inside of sensor ⁇ Information for analysis of security error/warning ⁇ Internal state information ⁇ Operation-mode-related information ⁇ Information for making notification that register communication has occurred ⁇ Frame counter ⁇ Information of data size of one frame
- the information of the security error/warning of the register communication is used as information for notifying the DSP 12 of the detection.
- the register communication via a predetermined signal line is performed between the image sensor 11 and the DSP 12.
- the information indicating the detection of the attack on the inside of the sensor is used as information for notifying the DSP 12 of the detection.
- the information for analysis of the security error/warning is information such as the number of times of occurrence of the failure.
- the DSP 12 performs the analysis of the security error and warning on the basis of the information such as the number of times of occurrence of the failure.
- the internal state information is information indicating the state of the image sensor 11. On/off of a security operation or the like is indicated by the internal state information.
- the security-related information and the output data security information are included in the frame data transmitted by the image sensor 11 by processing performed by the application layer processing unit 41 of the image sensor 11. Further, in a case where the security operation is turned on, the application layer processing unit 53 of the DSP 12 performs processing for implementing security by using the security-related information and the output data security information.
- the operation-mode-related information is information indicating an operation mode of the image sensor 11, such as how to read the pixel data and an angle of view.
- the information for making a notification that the register communication has occurred is a counter value of the number of times of occurrence of communication.
- the frame counter is a counter value of the number of frames.
- the information of the data size of one frame is information of the data size of one frame data.
- the functional-safety-related information is information used for implementing functional safety of the image sensor 11.
- the functional safety means achieving a state in which there is no unacceptable risk as a function of the image sensor 11.
- the information used for implementing functional safety of communication between the image sensor 11 and the DSP 12 is also included in the functional-safety-related information.
- the functional-safety-related information includes the following information. ⁇ Information of functional safety error/warning of register communication ⁇ Information of failure inside sensor ⁇ Information indicating detection of irregular operation of sensor ⁇ Information for analysis of functional safety error/warning ⁇ Internal state information ⁇ Operation-mode-related information ⁇ Information for making notification that register communication has occurred ⁇ Frame counter ⁇ Information of data size of one frame
- the internal state information, the operation-mode-related information, the information for making a notification that the register communication has occurred, the frame counter, and the information of the data size of one frame are information commonly included in the security-related information and the functional-safety-related information. An overlapping description will be omitted as appropriate.
- the information regarding the functional safety error/warning of the register communication is used as information for notifying the DSP 12 of the detection.
- a functional safety failure is detected.
- the information of the failure inside the sensor is information indicating that a failure of the image sensor 11 has occurred.
- the information indicating the detection of the irregular operation of the sensor is information indicating that the irregular operation has been performed in the image sensor 11.
- the information for analysis of the functional safety error/warning is information such as the number of times of occurrence of the failure and the irregular operation.
- the DSP 12 performs the analysis of the functional safety error and warning on the basis of the information such as the number of times of occurrence of the failure.
- On/off of the functional safety operation is indicated by the internal state information of the functional-safety-related information.
- the frame data transmitted by the image sensor 11 includes the functional-safety-related information and the output data functional safety information by processing performed by the application layer processing unit 41 of the image sensor 11.
- the application layer processing unit 53 of the DSP 12 performs processing for implementing functional safety by using the functional-safety-related information and the output data functional safety information.
- the output data functional safety information is information used for implementing functional safety of the output data (the image data as the transmission target) itself.
- a CRC value that is an error detection code obtained by computation using the output data is included in the output data functional safety information.
- Other information such as information indicating a computation mode of CRC computation may be included in the output data functional safety information.
- the output data security information is information used for implementing security of the output data itself.
- a message authentication code (MAC) value that is an authentication code obtained by computation using the output data and initialization vector (IV) information are included in the output data security information.
- Other information such as the information indicating the computation mode of the MAC computation may be included in the output data security information.
- Fig. 7 is a diagram illustrating an example of processing using the output data security information.
- Fig. 7 illustrates processing performed in the application layer processing unit 41 of the image sensor 11, and the right side of Fig. 7 illustrates processing performed in the application layer processing unit 53 of the DSP 12.
- a common key K is prepared for the application layer processing unit 41 and the application layer processing unit 53.
- the MAC computation using the common key K and IV N information is performed on image data of a frame N as the output data, and an MAC N value is generated.
- the IV N information and the MAC N value are added to the image data of the frame N as the output data security information, and are transmitted to the DSP 12.
- the MAC computation using the common key K and the IV N information added to the image data is performed on the image data of the frame N, and an MAC N value is generated.
- processing of comparing the MAC N value generated in the application layer processing unit 53 with the MAC N value added to the image data is performed as processing for implementing security of the image data of the frame N.
- Error detection processing using the CRC value that is the output data functional safety information is performed in a similar manner.
- the IV information is unnecessary. Note that the IV information is unnecessary also for the processing using the MAC value depending on the algorithm. In a case where Galois message authentication code (GMAC) is used as the MAC method, the IV information is necessary.
- GMAC Galois message authentication code
- Fig. 8 is a diagram illustrating an example of encryption and decryption of the output data.
- Fig. 8 illustrates processing performed in the application layer processing unit 41 of the image sensor 11, and the right side of Fig. 8 illustrates processing performed in the application layer processing unit 53 of the DSP 12.
- a common key K is prepared for the application layer processing unit 41 and the application layer processing unit 53.
- encryption processing using the common key K and the IV N information is applied to the image data of the frame N as the output data.
- the IV N information used for the encryption processing is added to encrypted data of the frame N obtained by the encryption processing and transmitted to the DSP 12.
- decryption processing using the common key K held by the application layer processing unit 53 and the IV N information added to the encrypted data is applied to the encrypted data of the frame N, and the image data of the frame N is decrypted.
- the MAC computation may be further performed.
- the encrypted data to which the MAC value is added is transmitted to the DSP 12.
- the MAC value can be generated in the application layer processing unit 41 as shown in Figure 7, and the image data can be encrypted as shown in Figure 8, and the INv information and the MAC value can be sent to the DSP 12 together with the encrypted image data.
- the security-related information and the functional-safety-related information are collectively referred to as related information.
- the output data functional safety information and the output data security information are collectively referred to as output data additional information in the sense of information added to the output data.
- security information a set of the security-related information and the output data security information
- functional safety information a set of the functional-safety-related information and the output data functional safety information
- Each piece of information is stored in one packet in units of lines as illustrated in A to D of Fig. 9 and transmitted from the image sensor 11 to the DSP 12.
- a flag used to identify information stored in each packet is set.
- the transmission system 1 of Fig. 1 information such as the CRC value and the MAC value is added to the image data of each frame as the output data.
- the DSP 12 that has received the frame data transmitted from the image sensor 11 can implement security and functional safety in units of frames.
- the related information and the output data additional information transmitted together with the image data of each frame are supplied to the application layer processing unit 53 of the DSP 12 by the physical layer processing and the link layer processing on the reception side of the SLVS-EC.
- the DSP 12 can implement security and functional safety in units of frames as the application layer processing.
- Fig. 10 is a diagram illustrating an example of another frame format.
- the EBD may be arranged in a line behind the image data of one frame.
- the EBD arranged in a line ahead of the image data of one frame is EBD 1
- the EBD arranged in a line behind the image data of one frame is EBD 2.
- Fig. 11 is a block diagram illustrating an example of a functional configuration of the application layer processing unit.
- Fig. 11 mainly illustrates configurations of the application layer processing unit 41 included in the transmission unit 22 of the image sensor 11 and the application layer processing unit 53 included in the reception unit 31 of the DSP 12.
- the application layer processing unit 41 of the image sensor 11 includes a related information generation unit 101, an image data processing unit 102, an EBD generation unit 103, and a functional safety/security additional information generation unit 104.
- the related information generation unit 101 generates the related information. That is, the related information generation unit 101 generates the security-related information in a case where the security operation is turned on, and generates the functional-safety-related information in a case where the functional safety operation is turned on. On/off of the security operation and on/off of the functional safety operation are set by a control unit (not illustrated). The related information generated by the related information generation unit 101 is supplied to the link layer signal processing unit 42.
- the image data processing unit 102 acquires the image data as the output data on the basis of the pixel data output from the imaging unit 21.
- the image data processing unit 102 encrypts the output data using the common key or the like and outputs the encrypted data to the link layer signal processing unit 42.
- the EBD generation unit 103 acquires information of the set value related to imaging and generates the EBD. Information other than the set value related to imaging may be included in the EBD.
- the EBD generated by the EBD generation unit 103 is supplied to the link layer signal processing unit 42.
- the functional safety/security additional information generation unit 104 generates the output data additional information. That is, the functional safety/security additional information generation unit 104 generates the output data security information in a case where the security operation is turned on, and generates the output data functional safety information in a case where the functional safety operation is turned on. As described above with reference to Fig. 7, the output data security information and the output data functional safety information are generated by performing computation using the common key or the like on the output data.
- the output data additional information generated by the functional safety/security additional information generation unit 104 is supplied to the link layer signal processing unit 42.
- the application layer processing unit 41 of the image sensor 11 including the related information generation unit 101, the image data processing unit 102, the EBD generation unit 103, and the functional safety/security additional information generation unit 104 functions as a generation unit that generates the frame data having the format as described with reference to Fig. 5.
- the link layer processing is performed on the frame data generated by the application layer processing unit 41 in the link layer signal processing unit 42, and the physical layer processing is performed on the frame data in the physical layer signal processing unit 43.
- the data stream obtained by the physical layer processing is transmitted to the DSP 12 as illustrated in a balloon.
- the packet header includes the header information and the CRC value of the header.
- One set of the header information and the CRC value of the header is 8-byte information.
- Figs. 12 and 13 are diagrams illustrating an example of allocation of each bit included in the header information.
- Fig. 12 illustrates 32 bits ([63:32]) from bit [63] that is the most significant bit to bit [32] among 64 bits included in one set of the header information and the CRC value of the header.
- Frame Start is allocated to one bit [63]
- Frame End is allocated to one bit [62].
- Line Valid is allocated to one bit [61]
- Line Number is allocated to 13 bits [60:48].
- EBD Line is allocated to one bit [47]
- Header Info Type is allocated to three bits [42:40].
- EBD Line is a flag indicating whether or not the data stored in the packet is the data of the line in which the EBD is arranged. For example, the value of EBD Line being 1 indicates that the EBD is stored in the packet to which the packet header including EBD Line is added. Further, the value of EBD Line being 0 indicates that the EBD is not stored in the packet to which the packet header including EBD Line is added.
- Header Info Type of bits [42:40] is information designating a content of bits [31:16].
- the meaning of bit [17]/bit [16] may be changed by the value of Header Info Type.
- Safety Info is allocated to one bit [17]
- Security Info is allocated to one bit [16].
- a of Fig. 13 illustrates allocation in a case where the value of Header Info Type is “000”
- B of Fig. 13 illustrates allocation in a case where the value of Header Info Type is “001”.
- Safety Info is a flag indicating whether or not the data stored in the packet is the data of the line in which the functional safety information is arranged.
- Security Info is a flag indicating whether or not the data stored in the packet is the data of the line in which the security information is arranged.
- Fig. 14 is a diagram illustrating an example of the values of Safety Info and Security Info.
- the value of Safety Info being 1 indicates that at least one of the functional-safety-related information or the output data functional safety information is stored in the packet to which the packet header including Safety Info is added.
- the fact that the value of Safety Info being 0 indicates that the functional safety related information and the output data functional safety information are not stored in the packet to which the packet header including Safety Info is added.
- the value of Security Info being 1 indicates that at least one of the security-related information or the output data security information is stored in the packet to which the packet header including Security Info is added.
- the value of Security Info being 0 indicates that the security-related information and the output data security information are not stored in the packet to which the packet header including Security Info is added.
- Fig. 15 is a diagram illustrating an example of a value of the header information.
- values of 1, 0, and 1 are respectively set for EBD Line (bit [47]), Safety Info (bit [17]), and Security Info (bit [16]) of the packet header added to the packet that stores the security-related information.
- values of 1, 1, and 0 are respectively set for EBD Line, Safety Info, and Security Info of the packet header added to the packet that stores the functional safety-related information.
- values of 1, 0, and 0 are respectively set for EBD Line, Safety Info, and Security Info of the packet header added to the packet that stores the EBD 1.
- the packet header in which a value of 1 is set as the value of EBD Line is added to the packet that stores the security-related information and the packet that stores the functional-safety-related information.
- the security-related information and the functional-safety-related information are processed as information similar to the EBD.
- values of 1, 0, and 0 are respectively set for EBD Line, Safety Info, and Security Info of the packet header added to the packet that stores the EBD 2.
- values of 0, 1, and 0 are respectively set for EBD Line, Safety Info, and Security Info of the packet header added to the packet that stores the output data functional safety related information.
- values of 0, 0, and 1 are respectively set for EBD Line, Safety Info, and Security Info of the packet header added to the packet that stores the output data security information.
- the packet header including the header information having the value as illustrated in Fig. 15 is generated by the link layer signal processing unit 42 under the control of the application layer processing unit 41.
- the frame format illustrated in Fig. 15 will be appropriately described as a basic format.
- the application layer processing unit 53 of the DSP 12 includes an identification unit 111, a functional safety/security processing unit 112, a processing target data extraction unit 113, a comparison target data extraction unit 114, and a computation unit 115.
- Data of each line included in the frame data obtained by performing the link layer processing in the link layer signal processing unit 52 is input to the identification unit 111.
- Information of the packet header added to each packet is also input to the identification unit 111.
- the physical layer processing is performed on the data transmitted from the image sensor 11 in the physical layer signal processing unit 51
- the link layer processing is performed on the data obtained by the physical layer processing in the link layer signal processing unit 52.
- the packet transmitted from the image sensor 11 is received by the physical layer signal processing unit 51 and the link layer signal processing unit 52.
- the identification unit 111 identifies and outputs the data supplied from the link layer signal processing unit 52 by referring to the header information or the like.
- the identification unit 111 identifies and outputs, as the security-related information, the data stored in the packet to which the packet header in which the values of EBD Line, Safety Info, and Security Info are 1, 0, and 1, respectively, is added. Similarly, the identification unit 111 identifies and outputs, as the functional safety-related information, the data stored in the packet to which the packet header in which the values of EBD Line, Safety Info, and Security Info are 1, 1, and 0, respectively, is added.
- the related information output from the identification unit 111 is supplied to the functional safety/security processing unit 112 and the processing target data extraction unit 113.
- the identification unit 111 identifies and outputs, as the EBD, the data stored in the packet to which the packet header in which the values of EBD Line, Safety Info, and Security Info are 1, 0, and 0, respectively, is added.
- the identification unit 111 outputs the image data identified on the basis of Line Valid, Line Number, and the like.
- the EBD and the image data output from the identification unit 111 are supplied to the computation unit 115.
- the identification unit 111 identifies and outputs, as the output data security information, the data stored in the packet to which the packet header in which the values of EBD Line, Safety Info, and Security Info are 0, 0, and 1, respectively, is added.
- the identification unit 111 identifies and outputs, as the output data functional safety information, the data stored in the packet to which the packet header in which the values of EBD Line, Safety Info, and Security Info are 0, 1, and 0, respectively, is added.
- the output data additional information output from the identification unit 111 is supplied to the comparison target data extraction unit 114.
- the functional safety/security processing unit 112 performs processing for implementing security on the basis of the security-related information supplied from the identification unit 111.
- the functional safety/security processing unit 112 analyzes whether or not the security error is caused by an external attack on the basis of the number of times of occurrence of the error. In a case where it is specified that the security error is caused by an external attack, the functional safety/security processing unit 112 performs processing such as invalidating the image data.
- the functional safety/security processing unit 112 performs processing for implementing functional safety on the basis of the functional-safety-related information supplied from the identification unit 111.
- the functional safety/security processing unit 112 analyzes whether or not a failure has occurred in the image sensor 11 on the basis of the number of times of occurrence of the irregular operation.
- the functional safety/security processing unit 112 also confirms whether or not a frame is missing on the basis of Frame Number included in the header information.
- the processing target data extraction unit 113 extracts the information and outputs the information to the computation unit 115.
- the related information includes information of the MAC value or information indicating the computation mode of the CRC value
- the information is output to the computation unit 115.
- the processing target data extraction unit 113 outputs the IV information extracted from the security-related information to the computation unit 115.
- the comparison target data extraction unit 114 extracts the information of the MAC value, which is comparison target data used for comparison with a computation result, from the output data security information supplied from the identification unit 111 and outputs the extracted information to the computation unit 115.
- the comparison target data extraction unit 114 outputs the IV information extracted from the output data security information to the computation unit 115.
- the comparison target data extraction unit 114 extracts the information of the CRC value, which is the comparison target data, from the output data functional safety information supplied from the identification unit 111 and outputs the extracted information to the computation unit 115.
- the computation unit 115 performs the MAC computation on the image data and the EBD supplied from the identification unit 111 as described with reference to Fig. 7.
- the computation unit 115 performs processing for implementing security of the output data by comparing the MAC value obtained by the computation with the MAC value supplied from the comparison target data extraction unit 114.
- the computation unit 115 performs the CRC computation on the image data and the EBD supplied from the identification unit 111.
- the computation unit 115 performs processing for implementing functional safety of the output data by comparing the CRC value obtained by the computation with the CRC value supplied from the comparison target data extraction unit 114.
- the functional safety/security processing unit 112 and the computation unit 115 function as an information processing unit that performs processing for implementing functional safety on the basis of the functional safety information and performs processing for implementing security on the basis of the security information.
- Fig. 16 The processing illustrated in Fig. 16 is started, for example, in a case where the pixel data output from the imaging unit 21 is input to the application layer processing unit 41 of the transmission unit 22.
- step S1 the image data processing unit 102 of the application layer processing unit 41 acquires the image data as the output data on the basis of the pixel data output from the imaging unit 21.
- step S2 the image data processing unit 102 encrypts the image data.
- step S3 the related information generation unit 101 generates the security-related information and the functional-safety-related information.
- the security operation and the functional safety operation are turned on.
- step S4 the functional safety/security additional information generation unit 104 generates the output data security information and the output data functional safety information on the basis of the image data.
- step S5 the EBD generation unit 103 acquires the information of the set value related to imaging and generates the EBD.
- the EBD may be generated before generation of the image data as the output data.
- step S6 the link layer signal processing unit 42 performs the link layer signal processing on the frame data including the data generated by each unit of the application layer processing unit 41.
- step S7 the physical layer signal processing unit 43 performs the physical layer signal processing on the data of each packet obtained by the link layer signal processing.
- step S8 the physical layer signal processing unit 43 transmits the data stream obtained by the physical layer processing. The above processing is repeated every time imaging is performed in the imaging unit 21.
- step S11 the physical layer signal processing unit 51 receives the data stream transmitted from the physical layer signal processing unit 43 of the transmission unit 22.
- step S12 the physical layer signal processing unit 51 performs the physical layer signal processing on the received data stream.
- step S13 the link layer signal processing unit 52 performs the link layer signal processing on the data stream on which the physical layer signal processing has been performed.
- the data of each packet obtained by the link layer signal processing is input to the application layer processing unit 53.
- step S14 the identification unit 111 of the application layer processing unit 53 identifies, by referring to the information of the packet header, the data stored in each packet on the basis of the respective values of EBD Line, Safety Info, and Security Info.
- step S15 the functional safety/security processing unit 112 performs processing for implementing functional safety on the basis of the functional-safety-related information. Furthermore, the functional safety/security processing unit 112 performs processing for implementing security on the basis of the security-related information.
- step S16 the processing target data extraction unit 113 extracts the processing target data from functional safety-related information and the security-related information identified by the identification unit 111.
- step S17 the comparison target data extraction unit 114 extracts the comparison target data from the output data functional safety information and the output data security information identified by the identification unit 111.
- step S18 the computation unit 115 computes the MAC value and the CRC value on the basis of the image data identified by the identification unit 111.
- the IV information extracted by the processing target data extraction unit 113 and the information such as the MAC value and the CRC value extracted by the comparison target data extraction unit 114 are appropriately used.
- step S19 the application layer processing unit 53 outputs the image data to be subjected to processing for implementing functional safety and processing for implementing security.
- the application layer processing unit 41 of the image sensor 11 can add the functional safety information used for implementing functional safety and the security information used for implementing security for each piece of image data in units of frames and transmit the image data to the DSP 12. Furthermore, the DSP 12 that has received the frame data transmitted from the image sensor 11 can implement security and functional safety in units of frames.
- Fig. 18 is a diagram illustrating a first modification of the frame format.
- a part of information included in the output data security information is arranged on the same line as that of the security-related information.
- the part of the information included in the output data security information is stored and transmitted in the same packet as that of the security-related information. For example, among the pieces of information included in the output data security information, the IV information and the like are transmitted prior to the image data by using the same packet as that of the security-related information.
- the values of 1, 0, and 1 are respectively set for EBD Line, Safety Info, and Security Info of the packet header added to the packet that stores the security-related information and the part of the information included in the output data security information.
- a part of information included in the output data functional safety information is arranged in the same line as that of the functional safety-related information.
- the part of the information included in the output data functional safety information is stored and transmitted in the same packet as that of the functional-safety-related information. For example, among the pieces of information included in the output data functional safety information, information indicating the computation mode of the CRC value and the like are transmitted prior to the image data by using the same packet as that of the functional-safety-related information.
- the values of 1, 1, and 0 are respectively set for EBD Line, Safety Info, and Security Info of the packet header added to the packet that stores the functional safety-related information and the part of the information included in the output data functional safety information.
- the application layer processing unit 53 of the DSP 12 can start the computation of the CRC value before acquiring the output data functional safety information.
- the application layer processing unit 53 can start the computation of the MAC value or start decryption of the image data before acquiring the output data security information.
- Fig. 19 is a diagram illustrating a second modification of the frame format.
- information common to the security-related information and the functional-safety-related information is arranged as the EBD 1.
- a region for arrangement of the common information is secured in a predetermined region of the EBD 1.
- the values of 1, 1, and 1 are respectively set for EBD Line, Safety Info, and Security Info of the packet header added to the packet that stores the EBD 1 including the common information.
- the internal state information, the operation-mode-related information, the information for making a notification that the register communication has occurred, the frame counter, and the information of the data size of one frame as the common information are information included in both the security-related information and the functional-safety-related information.
- the common information is appropriately used for both implementation of functional safety and implementation of security.
- the common information is transmitted as the EBD 1, it is not necessary to include the same information in the security-related information and the functional-safety-related information for transmission, and a data amount of the frame data can be suppressed.
- the part of the information included in the output data security information is included in the security-related information, but does not have to be included in the security-related information.
- the part of the information included in the output data functional safety information is included in the functional-safety-related information, but does not have to be included in the functional-safety-related information. The same applies to a frame format of Fig. 22 described later.
- Fig. 20 is a diagram illustrating a third modification of the frame format.
- the security-related information and the functional-safety-related information are arranged as the EBD 1.
- a region for arrangement of the security-related information and a region for arrangement of the functional-safety-related information are secured in the line in which the EBD 1 is arranged.
- a region for arrangement of the common information is secured separately from the region for arrangement of the security-related information and the functional-safety-related information other than the common information.
- Information indicating an arrangement position of each piece of information may be included in the EBD 1.
- the values of 1, 1, and 1 are respectively set for EBD Line, Safety Info, and Security Info of the packet header added to the packet that stores the EBD 1 including the security-related information and the functional safety-related information.
- the output data security information and the output data functional safety information are arranged as the EBD 2.
- a region for arrangement of the output data security information and a region for arrangement of the output data functional safety information are secured in the line in which the EBD 2 is arranged.
- the values of 1, 1, and 1 are respectively set for EBD Line, Safety Info, and Security Info of the packet header added to the packet that stores the EBD 2 including the output data security information and the output data functional safety information.
- the security information and the functional safety information can be transmitted in a state of being merged into the EBD.
- Fig. 21 is a block diagram illustrating an example of a functional configuration of an application layer processing unit in a case where the frame data having the format of Fig. 20 is transmitted.
- the same components as those described with reference to Fig. 11 are denoted by the same reference signs. An overlapping description will be omitted as appropriate.
- the related information generation unit 101 and the functional safety/security additional information generation unit 104 included in the application layer processing unit 41 of the image sensor 11 are implemented in the EBD generation unit 103.
- the EBD generation unit 103 generates the EBD including the related information generated by the related information generation unit 101 and the output data additional information generated by the functional safety/security additional information generation unit 104.
- the processing target data extraction unit 113 of the application layer processing unit 53 extracts and outputs the processing target data from the EBD 1 identified by the identification unit 111.
- the comparison target data extraction unit 114 extracts and outputs the comparison target data from the EBD 1 identified by the identification unit 111.
- Fig. 22 is a diagram illustrating a fourth modification of the frame format.
- the EBD 1 is arranged in a line ahead of the line in which the security-related information is arranged.
- the EBD1 includes, for example, format information indicating the type of the frame format.
- the values of 1, 0, and 0 are respectively set for EBD Line, Safety Info, and Security Info of the packet header added to the packet that stores the EBD 1 including the format information, similarly to the values in the basic format.
- the EBD 2 is arranged on the next line of the image data.
- the application layer processing unit 53 of the DSP 12 can specify the frame format on the basis of the EBD to be processed first.
- the fact that the format information is included in the EBD to be transmitted first is particularly effective in a case where the frame format used for data transmission is not determined in advance between the image sensor 11 and the DSP 12.
- a format different from the above format may be used as the format of the frame data.
- Fig. 23 is a diagram illustrating an example of configurations of the transmission unit 22 and the reception unit 31.
- the configuration surrounded by the broken line on the left side of Fig. 23 is the configuration of the transmission unit 22, and the configuration surrounded by the broken line on the right side is the configuration of the reception unit 31.
- Each of the transmission unit 22 and the reception unit 31 has a link layer configuration and a physical layer configuration.
- the configuration illustrated above a solid line L2 is the link layer configuration, and the configuration illustrated below the solid line L2 is the physical layer configuration.
- the configuration illustrated above the solid line L2 corresponds to the configuration of the link layer signal processing unit 42, and the configuration illustrated below the solid line L2 corresponds to the configuration of the physical layer signal processing unit 43.
- the configuration illustrated below the solid line L2 corresponds to the configuration of the physical layer signal processing unit 51
- the configuration illustrated above the solid line L2 corresponds to the configuration of the link layer signal processing unit 52.
- the configuration above the solid line L1 is an application layer configuration (the application layer processing unit 41 and the application layer processing unit 53).
- the link layer signal processing unit 42 includes a LINK-TX protocol management unit 151, a pixel-to-byte conversion unit 152, a payload ECC insertion unit 153, a packet generation unit 154, and a lane distribution unit 155 as the link layer configuration.
- the LINK-TX protocol management unit 151 includes a state control unit 161, a header generation unit 162, a data insertion unit 163, and a footer generation unit 164.
- the state control unit 161 of the LINK-TX protocol management unit 151 manages the state of the link layer of the transmission unit 22.
- the header generation unit 162 generates the packet header to be added to the payload in which data for one line is stored, and outputs the packet header to the packet generation unit 154.
- the header generation unit 162 generates the above-described header information including Safety Info, Security Info, and the like under the control of the application layer processing unit 41.
- the header generation unit 162 also calculates the CRC value of the packet header by applying the header information to a generator polynomial.
- the data insertion unit 163 generates data to be used for stuffing and outputs the data to the pixel-to-byte conversion unit 152 and the lane distribution unit 155.
- Payload stuffing data which is stuffing data supplied to the pixel-to-byte conversion unit 152, is added to the data after pixel-to-byte conversion and is used to adjust the data amount of the data stored in the payload.
- lane stuffing data which is stuffing data supplied to the lane distribution unit 155, is added to the data after lane allocation and is used for adjustment of the data amount between the lanes.
- the footer generation unit 164 calculates a 32-bit CRC value by applying the payload data to the generator polynomial, and outputs the CRC value obtained by the calculation to the packet generation unit 154 as the footer.
- the pixel-to-byte conversion unit 152 acquires the data supplied from the application layer processing unit 41 and performs pixel-to-byte conversion for converting the acquired data into data in units of one byte.
- the pixel value (RGB) of each pixel of the image captured by the imaging unit 21 is represented by a bit depth of any one of 8 bits, 10 bits, 12 bits, 14 bits, and 16 bits.
- Various types of data including the pixel data of each pixel are converted into data in units of one byte.
- the pixel-to-byte conversion unit 152 performs pixel-to-byte conversion for each pixel in order from a pixel at the left end of the line, for example. Furthermore, the pixel-to-byte conversion unit 152 generates the payload data by adding the payload stuffing data supplied from the data insertion unit 163 to data in byte unit obtained by pixel-to-byte conversion, and outputs the payload data to the payload ECC insertion unit 153.
- Fig. 24 is a diagram illustrating an example of the payload data.
- Fig. 24 illustrates the payload data including the pixel data obtained by pixel-to-byte conversion in a case where the pixel value of each pixel is represented by 10 bits.
- One block without color represents the pixel data in byte unit after pixel-to-byte conversion.
- one colored block represents the payload stuffing data generated by the data insertion unit 163.
- the pieces of pixel data after pixel-to-byte conversion are sequentially grouped into a predetermined number of groups.
- the respective pieces of pixel data are grouped into 16 groups, groups 0 to 15, the pixel data including the most significant bit (MSB) of a pixel P0 is allocated to the group 0, and the pixel data including the MSB of a pixel P1 is allocated to the group 1.
- the pixel data including the MSB of a pixel P2 is allocated to the group 2
- the pixel data including the MSB of a pixel P3 is allocated to the group 3
- the pixel data including the LSBs of the pixels P0 to P3 is allocated to the group 4.
- the pieces of pixel data after the pixel data including the MSB of a pixel P4 are also sequentially allocated to the groups after the group 5. Note that, among the blocks representing the pixel data, a block having three broken lines therein represents pixel data in byte unit generated in such a way as to include the LSBs of pixels N to +3 at the time of pixel-to-byte conversion.
- processing is performed in parallel for the pieces of pixel data at the same position in each group for each period defined by a clock signal. That is, as illustrated in Fig. 24, in a case where the pieces of pixel data are allocated to 16 groups, the processing of the pixel data is performed in such a way that 16 pieces of pixel data arranged in each column are processed within the same period.
- the pixel data for one line is included in the payload of one packet.
- the entire pixel data illustrated in Fig. 24 is the pixel data constituting one line.
- the processing of the pixel data of the valid pixel region A1 in Fig. 24 has been described.
- processing similar to the processing of the pixel data of the valid pixel region A1 is performed for data for other lines such as the security information and the functional safety information.
- the payload stuffing data is added in such a way that data lengths of the groups become the same.
- the payload stuffing data is 1-byte data.
- the payload stuffing data is not added to the pixel data of the group 0, and as indicated by a broken line, one piece of payload stuffing data is added to each pixel data of the groups 1 to 15 at an end.
- Fig. 25 is a diagram illustrating another example of the payload data.
- Fig. 25 illustrates the payload data including the pixel data obtained by pixel-to-byte conversion in a case where the pixel value of each pixel is represented by 12 bits.
- the payload data having such a configuration is supplied from the pixel-to-byte conversion unit 152 to the payload ECC insertion unit 153.
- the payload ECC insertion unit 153 calculates an error correction code used for error correction of the payload data on the basis of the payload data supplied from the pixel-to-byte conversion unit 152, and inserts a parity which is the error correction code into the payload data.
- Fig. 26 is a diagram illustrating an example of the payload data to which the parity is inserted.
- the payload data illustrated in Fig. 26 is the payload data including the pixel data obtained by pixel-to-byte conversion in a case where the pixel value of each pixel is represented by 12 bits described with reference to Fig. 25.
- a block indicated by hatching represents the parity.
- the payload ECC insertion unit 153 outputs the payload data to which the parity is inserted to the packet generation unit 154. In a case where the parity is not inserted, the payload data supplied from the pixel-to-byte conversion unit 152 to the payload ECC insertion unit 153 is output to the packet generation unit 154 as it is.
- the packet generation unit 154 generates the packet by adding the header generated by the header generation unit 162 to the payload data supplied from the payload ECC insertion unit 153. In a case where the footer generation unit 164 generates the footer, the packet generation unit 154 also adds the footer to the payload data.
- Fig. 27 is a diagram illustrating a state in which the header is added to the payload data.
- the header of one packet includes three sets of the pieces of header information and the CRC codes.
- the pieces of header data H7 to H2 are the header information (six bytes)
- the pieces of header data H1 and H0 are the CRC codes (two bytes).
- Fig. 28 is a diagram illustrating a state in which the header and the footer are added to the payload data.
- Fig. 29 is a diagram illustrating a state in which the header is added to the payload data to which the parity is inserted.
- the packet generation unit 154 outputs the packet data, which is the data included in one packet generated in this manner, to the lane distribution unit 155.
- the packet data including the header data and the payload data, the packet data including the header data, the payload data, and the footer data, or the packet data including the header data and the payload data to which the parity is inserted are supplied to the lane distribution unit 155.
- the lane distribution unit 155 allocates the packet data supplied from the packet generation unit 154 to each of lanes 0 to 7 used for data transmission in order from the head data.
- Fig. 30 is a diagram illustrating an example of allocation of the packet data.
- each piece of header data configuring three times of repetitions of the pieces of header data H7 to H0 is allocated to the lanes 0 to 7 in order from the head piece of header data.
- subsequent pieces of header data are sequentially allocated to each lane subsequent to the lane 0.
- Three pieces of the same header data are allocated to each of the lanes 0 to 7.
- the payload data is allocated to the lanes 0 to 7 in order from the head piece of payload data. Once certain payload data is allocated to the lane 7, subsequent pieces of payload data are sequentially allocated to each lane subsequent to the lane 0.
- Pieces of footer data F3 to F0 are allocated to the respective lanes in order from the head piece of footer data.
- the last piece of payload stuffing data included in the payload data is allocated to the lane 7, and the pieces of footer data F3 to F0 are allocated to the lanes 0 to 3 one by one.
- a black block represents the lane stuffing data generated by the data insertion unit 163.
- the pieces of lane stuffing data are allocated one by one to the lane 4 and subsequent lanes which are lanes with a small number of data allocations.
- An example of the allocation of the packet data in a case where data transmission is performed using six lanes from a lane 0 is indicated by a tip of an outlined arrow #2. Furthermore, an example of allocation of the packet data in a case where data transmission is performed using four lanes from a lane 0 is indicated by a tip of an outlined arrow #3.
- the lane distribution unit 155 outputs, to the physical layer, the packet data allocated to each lane in this manner.
- a case where data is transmitted using eight lanes from a lane 0 will be mainly described, but similar processing is performed even in a case where the number of lanes used for data transmission is another number.
- the physical layer signal processing unit 43 includes a PHY-TX state control unit 171, a clock generation unit 172, and signal processing units 173-0 to 173-N as the physical layer configuration.
- the signal processing unit 173-0 includes a control code insertion unit 181, an 8B10B symbol encoder 182, a synchronization unit 183, and a transmission unit 184.
- the packet data allocated to the lane 0 output from the lane distribution unit 155 is input to the signal processing unit 173-0, and the packet data allocated to the lane 1 is input to the signal processing unit 173-1. Furthermore, the packet data allocated to a lane N is input to the signal processing unit 173-N.
- the signal processing units 173-0 to 173-N are provided as many as the number of lanes, and the processing of the packet data transmitted using each lane is performed in each of the signal processing units 173-0 to 173-N in parallel.
- the configuration of the signal processing unit 173-0 will be described, and the signal processing units 173-1 to 173-N also have a similar configuration.
- the PHY-TX state control unit 171 controls each unit of the signal processing units 173-0 to 173-N. For example, a timing of each processing performed by the signal processing units 173-0 to 173-N is controlled by the PHY-TX state control unit 171.
- the clock generation unit 172 generates a clock signal and outputs the clock signal to the synchronization unit 183 of each of the signal processing units 173-0 to 173-N.
- the control code insertion unit 181 of the signal processing unit 173-0 adds a control code to the packet data supplied from the lane distribution unit 155.
- the control code is a code represented by one symbol selected from a plurality of types of symbols prepared in advance or a combination of a plurality of types of symbols.
- Each symbol inserted by the control code insertion unit 181 is 8-bit data.
- Fig. 31 is a diagram illustrating an example of the control code added by the control code insertion unit 181.
- the control code includes Idle Code, Start Code, End Code, Pad Code, Sync Code, Deskew Code, and Standby Code.
- Idle Code is a symbol group repeatedly transmitted in a period other than the time of transmission of the packet data.
- Start Code is a symbol group indicating the start of the packet. As described above, Start Code is added ahead of the packet.
- End Code is a symbol group indicating the end of the packet. End Code is added behind the packet.
- Pad Code is a symbol group inserted into the payload data to fill a gap between a pixel data band and a PHY transmission band.
- the pixel data band is a transmission rate of the pixel data output from the imaging unit 21 and input to the transmission unit 22, and the PHY transmission band is a transmission rate of the pixel data transmitted from the transmission unit 22 and input to the reception unit 31.
- Pad Code is inserted to adjust the gap between both bands in a case where the pixel data band is narrow and the PHY transmission band is wide. For example, as Pad Code is inserted, the gap between the pixel data band and the PHY transmission band is adjusted to fall within a certain range.
- Sync Code is a symbol group used to ensure bit synchronization and symbol synchronization between the transmission unit 22 and the reception unit 31. Sync Code is repeatedly transmitted, for example, in a training mode before transmission of the packet data is started between the transmission unit 22 and the reception unit 31.
- Deskew Code is a symbol group used to correct data skew between the lanes, that is, a difference in reception timing of data received in each lane of the reception unit 31.
- Standby Code is a symbol group used for notifying the reception unit 31 that the output of the transmission unit 22 is in a state such as High-Z (high impedance) and data transmission is not performed.
- the control code insertion unit 181 outputs the packet data to which such a control code is added to the 8B10B symbol encoder 182.
- Fig. 32 is a diagram illustrating an example of the packet data after inserting the control code.
- Start Code is added ahead of the packet data, and Pad Code is inserted to the payload data.
- End Code is added behind the packet data, and Deskew Code is added behind End Code.
- Idle Code is added behind Deskew Code.
- the 8B10B symbol encoder 182 performs 8B10B conversion on the packet data (the packet data to which the control code is added) supplied from the control code insertion unit 181, and outputs the packet data converted into data in units of 10 bits to the synchronization unit 183.
- the synchronization unit 183 outputs each bit of the packet data supplied from the 8B10B symbol encoder 182 to the transmission unit 184 according to the clock signal generated by the clock generation unit 172. Note that the synchronization unit 183 does not have to be provided in the transmission unit 22.
- the transmission unit 184 transmits the packet data supplied from the synchronization unit 183 to the reception unit 31 via a transmission path constituting the lane 0. In a case where the data transmission is performed using the eight lanes, the packet data is transmitted to the reception unit 31 also using the transmission paths constituting the lanes 1 to 7.
- the physical layer signal processing unit 51 includes a PHY-RX state control unit 201 and signal processing units 202-0 to 202-N as the physical layer configuration.
- the signal processing unit 202-0 includes a reception unit 211, a clock generation unit 212, a synchronization unit 213, a symbol synchronization unit 214, a 10B8B symbol decoder 215, a skew correction unit 216, and a control code removal unit 217.
- the packet data transmitted via the transmission path constituting the lane 0 is input to the signal processing unit 202-0
- the packet data transmitted via the transmission path constituting the lane 1 is input to the signal processing unit 202-1.
- the packet data transmitted via the transmission path constituting the lane N is input to the signal processing unit 202-N.
- the signal processing units 202-0 to 202-N are provided as many as the number of lanes, and the processing of the packet data transmitted using each lane is performed in each of the signal processing units 202-0 to 202-N in parallel.
- the configuration of the signal processing unit 202-0 will be described, and the signal processing units 202-1 to 202-N also have a similar configuration.
- the reception unit 211 receives a signal representing the packet data transmitted from the transmission unit 22 via the transmission path constituting the lane 0, and outputs the signal to the clock generation unit 212.
- the clock generation unit 212 performs bit synchronization by detecting an edge of the signal supplied from the reception unit 211, and generates the clock signal on the basis of an edge detection cycle.
- the clock generation unit 212 outputs the signal supplied from the reception unit 211 to the synchronization unit 213 together with the clock signal.
- the synchronization unit 213 samples the signal received by the reception unit 211 according to the clock signal generated by the clock generation unit 212, and outputs the packet data obtained by the sampling to the symbol synchronization unit 214.
- the clock generation unit 212 and the synchronization unit 213 implement a clock data recovery (CDR) function.
- CDR clock data recovery
- the symbol synchronization unit 214 performs symbol synchronization by detecting the control code included in the packet data or by detecting some symbols included in the control code. For example, the symbol synchronization unit 214 detects specific symbols included in Start Code, End Code, and Deskew Code, and performs symbol synchronization. The symbol synchronization unit 214 outputs the packet data in units of 10 bits representing each symbol to the 10B8B symbol decoder 215.
- the symbol synchronization unit 214 performs symbol synchronization by detecting a boundary of the symbol included in Sync Code repeatedly transmitted from the transmission unit 22 in the training mode before transmission of the packet data is started.
- the 10B8B symbol decoder 215 performs 10B8B conversion on the packet data in units of 10 bits supplied from the symbol synchronization unit 214, and outputs the packet data converted into data in units of eight bits to the skew correction unit 216.
- the skew correction unit 216 detects Deskew Code from the packet data supplied from the 10B8B symbol decoder 215. Information of a timing of detection of Deskew Code by the skew correction unit 216 is supplied to the PHY-RX state control unit 201.
- the skew correction unit 216 corrects data skew between the lanes in such a way that the timing of Deskew Code matches a timing indicated by the information supplied from the PHY-RX state control unit 201.
- Fig. 33 is a diagram illustrating an example of correcting data skew between the lanes using Deskew Code.
- transmission of Sync Code, Sync Code, ..., Idle Code, Deskew Code, Idle Code, ..., Idle Code, or Deskew Code is transmitted in each of the lanes 0 to 7, and each control code are received by the reception unit 31.
- a timing of reception of the same control code is different for each lane, and data skew between the lanes occurs.
- the skew correction unit 216 detects Deskew Code C1, which is the first Deskew Code, and corrects a timing of the head of Deskew Code C1 to match a time t1 indicated by the information supplied from the PHY-RX state control unit 201.
- the information of the time t1 at which Deskew Code C1 is detected in the lane 7, which is the latest timing among timings at which Deskew Code C1 is detected in the respective lanes 0 to 7, is supplied from the PHY-RX state control unit 201.
- the skew correction unit 216 detects Deskew Code C2, which is the second Deskew Code, and corrects a timing of the head of Deskew Code C2 to match a time t2 indicated by the information supplied from the PHY-RX state control unit 201.
- the information of the time t2 at which Deskew Code C2 is detected in the lane 7, which is the latest timing among timings at which Deskew Code C2 is detected in the respective lanes from the lane 0, is supplied from the PHY-RX state control unit 201.
- the skew correction unit 216 outputs the packet data of which data skew is corrected to the control code removal unit 217.
- the control code removal unit 217 removes the control code added to the packet data, and outputs, as the packet data, data between Start Code and End Code to the link layer.
- the PHY-RX state control unit 201 controls each unit of the signal processing units 202-0 to 202-N to correct data skew between the lanes.
- the link layer signal processing unit 52 includes a LINK-RX protocol management unit 221, a lane integration unit 222, a packet separation unit 223, a payload error correction unit 224, and a byte-to-pixel conversion unit 225 as the link layer configuration.
- the LINK-RX protocol management unit 221 includes a state control unit 231, a header error correction unit 232, a data removal unit 233, and a footer error detection unit 234.
- the lane integration unit 222 integrates the packet data supplied from the signal processing units 202-0 to 202-N of the physical layer by rearranging the packet data in an order reverse to that of distribution to each lane by the lane distribution unit 155 of the transmission unit 22.
- the packet data on the left side of Fig. 30 is acquired by integrating the pieces of packet data of the respective lanes.
- the lane integration unit 222 removes the lane stuffing data under the control of the data removal unit 233.
- the lane integration unit 222 outputs the integrated packet data to the packet separation unit 223.
- the packet separation unit 223 separates the packet data for one packet integrated by the lane integration unit 222 into the packet data constituting the header data and the packet data constituting the payload data.
- the packet separation unit 223 outputs the header data to the header error correction unit 232 and outputs the payload data to the payload error correction unit 224.
- the packet separation unit 223 separates data for one packet into the packet data constituting the header data, the packet data constituting the payload data, and the packet data constituting the footer data.
- the packet separation unit 223 outputs the header data to the header error correction unit 232 and outputs the payload data to the payload error correction unit 224.
- the packet separation unit 223 outputs the footer data to the footer error detection unit 234.
- the payload error correction unit 224 detects an error in the payload data by performing error correction computation on the basis of the parity, and corrects the detected error. For example, in a case where the parity is inserted as illustrated in Fig. 26, the payload error correction unit 224 uses two parities inserted at the end of the first basic block to perform error correction on 224 pieces of pixel data in front of the parity.
- the payload error correction unit 224 outputs the pixel data after error correction obtained by performing the error correction on each basic block and each extra block to the byte-to-pixel conversion unit 225. In a case where the parity is not inserted to the payload data supplied from the packet separation unit 223, the payload data supplied from the packet separation unit 223 is output to the byte-to-pixel conversion unit 225 as it is.
- the byte-to-pixel conversion unit 225 removes the payload stuffing data included in the payload data supplied from the payload error correction unit 224 under the control of the data removal unit 233.
- the byte-to-pixel conversion unit 225 performs byte-to-pixel conversion for converting each pixel data in byte unit obtained by removing the payload stuffing data into the pixel data in units of eight bits, 10 bits, 12 bits, 14 bits, or 16 bits. In the byte-to-pixel conversion unit 225, conversion reverse to the pixel-to-byte conversion by the pixel-to-byte conversion unit 152 of the transmission unit 22 is performed.
- the byte-to-pixel conversion unit 225 outputs the pixel data in units of eight bits, 10 bits, 12 bits, 14 bits, or 16 bits obtained by the byte-to-pixel conversion to the application layer processing unit 53.
- each line of valid pixels specified by Line Valid of the header information is generated on the basis of the pixel data obtained by the byte-to-pixel conversion unit 225, and each line is arranged according to Line Number of the header information, thereby generating the frame data including an image of one frame.
- the state control unit 231 of the LINK-RX protocol management unit 221 manages the state of the link layer of the reception unit 31.
- the header error correction unit 232 acquires a set of the header information and the CRC code on the basis of the header data supplied from the packet separation unit 223.
- the header error correction unit 232 performs error detection computation which is computation for detecting an error in the header information for each set of the header information and the CRC code, and outputs the header information after the error detection.
- the data removal unit 233 controls the lane integration unit 222 to remove the lane stuffing data, and controls the byte-to-pixel conversion unit 225 to remove the payload stuffing data.
- the footer error detection unit 234 acquires the CRC code stored in the footer on the basis of the footer data supplied from the packet separation unit 223.
- the footer error detection unit 234 performs error detection computation by using the acquired CRC code and detects an error in the payload data.
- the footer error detection unit 234 outputs an error detection result.
- the above processing is performed in each of the link layer signal processing unit 42 and the physical layer signal processing unit 43 of the transmission unit 22 included in the image sensor 11 and the physical layer signal processing unit 51 and the link layer signal processing unit 52 of the reception unit 31 included in the DSP 12.
- ⁇ Format 1 for On/Off of Functional Safety Operation and Security Operation Fig. 34 is a diagram illustrating an example of target ranges of the MAC computation.
- Fig. 34 illustrates the target range of the MAC computation in a case where the frame format described with reference to Fig. 19 is used. The same applies to a case where another frame format is used.
- the target ranges of the MAC computation are set as a range indicated by an arrow A1 including a line in which the security-related information is arranged and a range indicated by an arrow A2 from a line in which the EBD 1 is arranged to a line in which the EBD 2 is arranged.
- the functional safety information is information that is not subject to authentication using the MAC value.
- the target ranges of the MAC computation are the same, the same value is obtained by the MAC computation regardless of whether the functional safety operation is turned on or off as indicated by an arrow A3. Since the same MAC value can be used for authentication regardless of whether the functional safety operation is turned on or off, it is possible to cope with on/off of the functional safety operation by setting the target of the MAC computation as illustrated in Fig. 34.
- Fig. 35 is a diagram illustrating an example of target ranges of the CRC computation.
- the target ranges of the CRC computation are set as a range indicated by an arrow A11 from a line in which the functional-safety-related information is arranged to a line in which the EBD 2 is arranged.
- the security information is information that is not subject to error detection using the CRC value.
- the same value is obtained by the CRC computation regardless of whether the security operation is turned on or off as indicated by an arrow A12. Since the same CRC value can be used for error detection regardless of whether the security operation is turned on or off, it is possible to cope with on/off of the security operation by setting the target of the CRC computation as illustrated in Fig. 35.
- Fig. 36 is a diagram illustrating an example of the target ranges of the MAC computation and the CRC computation.
- the target ranges of the MAC computation are set as a range indicated by an arrow A21 including a line in which the security-related information is arranged and a range indicated by an arrow A22 from a line in which the functional-safety-related information is arranged to a line in which the output data functional safety information is arranged.
- the functional safety information is information that is not subjected to authentication using the MAC value.
- the line in which the functional-safety-related information is arranged is regarded as the line of the EBD 1, and processing similar to the processing for the EBD 1 is performed.
- the application layer processing unit 53 copes with an increase/decrease of the line of the EBD.
- the application layer processing unit 53 regards the line in which the functional-safety-related information is arranged as the line of the EBD 1, and performs the MAC computation by including the line in which the functional-safety-related information is arranged in the computation target. Furthermore, in a case where the functional safety operation is turned off, the application layer processing unit 53 performs the MAC computation processing by including the line of the EBD 1 and subsequent lines as the computation targets.
- the image sensor 11 may be able to select a target range of the MAC computation.
- the functional safety information is a target of authentication using the MAC value, but conversely, the security information may be a target of error detection using the CRC value.
- Fig. 37 is a block diagram illustrating an example of a configuration of the application layer processing unit 41 having a function of switching on/off of the functional safety operation and the security operation.
- the same components as those described above are denoted by the same reference signs. An overlapping description will be omitted as appropriate. Note that illustration of the EBD generation unit 103 is omitted.
- the application layer processing unit 41 illustrated in Fig. 37 includes a communication unit 121 and a fuse 122 in addition to the above-described configuration.
- the communication unit 121 communicates with an external apparatus via a communication IF such as I2C or SPI.
- the communication unit 121 receives setting information transmitted from the external apparatus, and outputs the setting information to the fuse 122.
- the setting information is information indicating a setting content of the fuse 122.
- the fuse 122 is a circuit having a one time programmable (OTP) function.
- OTP one time programmable
- Information indicating the setting content of on/off of the functional safety operation and the security operation is supplied from the fuse 122 to the related information generation unit 101 and the functional safety/security additional information generation unit 104.
- information designating the type of the frame format, information designating on/off of the line of the functional safety information and the line of the security information, and information designating the value of the header information are supplied from the fuse 122 to the link layer signal processing unit 42 (format generation unit).
- the application layer processing unit 41 functions as a generation unit that generates the frame data in which at least one of the security information or the functional safety information is added to image data of one frame.
- MIPI Mobile Industry Processor Interface
- the fact that the data stored in the packet is the data of the line in which the EBD is arranged is indicated by using the lower three bits of 0x12 (MIPI specification).
- the fact that the data stored in the packet is the data of the line in which the security-related information is arranged is expressed by using the lower three bits of 0x35.
- the fact that the data stored in the packet is the data of the line in which the functional-safety-related information is arranged is expressed by using the lower three bits of 0x36.
- the fact that the data stored in the packet is the data of the line in which the output data security information is arranged is expressed by using the lower three bits of 0x31.
- the fact that the data stored in the packet is the data of the line in which the output data functional safety information is arranged is expressed by using the lower three bits of 0x32.
- Fig. 38 is a diagram illustrating an example of a value of the DT region.
- Fig. 38 illustrates the frame format described with reference to Fig. 18.
- [EBD Line, Safety Info, Security Info] [1, 0, 1] indicating that the data is data of a line in which the security-related information and the part of the information included in the output data security information are arranged is expressed by using 0x35.
- [EBD Line, Safety Info, Security Info] [1, 0, 0] indicating that the data is data of a line in which the EBD 1 is arranged is expressed by using 0x12.
- the fact that the data is data of a line in which the EBD 2 is arranged is similarly expressed using 0x12.
- [EBD Line, Safety Info, Security Info] [0, 1, 0] indicating that the data is data of a line in which the output data functional safety information is arranged is expressed by using 0x32.
- [EBD Line, Safety Info, Security Info] [0, 0, 1] indicating that the data is data of a line in which the output data security information is arranged is expressed by using 0x31.
- Fig. 39 is a diagram illustrating another example of the value of the DT region.
- Fig. 39 illustrates the frame format described with reference to Fig. 19. A description overlapping with the description of Fig. 38 will be omitted.
- [EBD Line, Safety Info, Security Info] [1,1,1] indicating that the EBD including the common information for the functional-safety-related information and the security-related information is data of a line in which the EBD is arranged is expressed by using 0x37.
- the information of the DT region becomes insufficient.
- other bits such as bits of Reserve may be used, or the DT region to be used may be limited.
- the DT region to be used is limited, for example, the same DT region is used to indicate that data of the line in which the security-related information is arranged and data of the line in which the output data security information is arranged are data of the line in which the security-related information is arranged.
- the inclusion of the functional safety information/security information may be expressed by using 0x12 allocated to the EBD.
- SLVS and SubLVDS a format such as the packet header including information indicating the type of data of each line is not defined.
- 3-bit line information indicating the type of data of each line By adding 3-bit line information indicating the type of data of each line to the head of data arranged in each line, information similar to EBD Line, Safety Info, and Security Info may be transmitted.
- Fig. 40 is a diagram illustrating an example of a transmission timing of data of the SLVS/SubLVDS.
- lines in which the security-related information, the functional-safety-related information, the output data functional safety information, and the output data security information are arranged are prepared. As indicated by hatching, the line information indicating the type of data of each line is added to the head of each line.
- the above-described technology can be applied not only to the SLVS-EC but also to other standards of the communication IF such as the MIPI, the SLVS, and the SubLVDS.
- Fig. 41 is a block diagram illustrating an example of a configuration of the image sensor 11.
- the image sensor 11 illustrated in Fig. 41 is an image sensor capable of selecting a communication IF to be used for data transmission from among the MIPI, the SLVS-EC, and the SubLVDS.
- a signal processing unit corresponding to the MIPI, a signal processing unit corresponding to the SLVS-EC, and a signal processing unit corresponding to the SubLVDS are provided.
- Each of an MIPI link layer signal processing unit 42-1, an SLVS-EC link layer signal processing unit 42-2, and a SubLVDS link layer signal processing unit 42-3 performs link layer signal processing of the MIPI, the SLVS-EC, and the SubLVDS on the data supplied from the application layer processing unit 41. Note that a line information generation unit is also provided in the SubLVDS link layer signal processing unit 42-3.
- Each of the MIPI physical-layer signal processing unit 43-1, the SLVS-EC physical-layer signal processing unit 43-2, and the SubLVDS physical-layer signal processing unit 43-3 performs physical layer signal processing of the MIPI, the SLVS-EC, and the SubLVDS on data of the link layer signal processing result in the previous stage.
- the selection unit 44 selects data of a predetermined standard from among the pieces of data supplied from the MIPI physical-layer signal processing unit 43-1 to the SubLVDS physical-layer signal processing unit 43-3, and transmits the data to the DSP 12.
- the image sensor 11 and the DSP 12 can perform the link layer signal processing and the physical layer signal processing without being conscious of a difference in standard of the communication IF.
- Fig. 41 illustrates only the configuration on an image sensor 11 side
- the same configuration as the configuration described with reference to Fig. 11 and the like is provided on a DSP 12 side.
- the host side is implemented by using a field programmable gate array (FPGA)
- FPGA field programmable gate array
- ⁇ Others> ⁇ Example of Output of Long-Accumulated Image and Short-Accumulated Image
- the long-accumulated image is an image obtained by imaging with a long exposure time.
- the short-accumulated image is an image obtained by imaging with an exposure time shorter than the exposure time of the long-accumulated image. Transmission of the long-accumulated image and the short-accumulated image by the SLVS-EC is performed in such a way that, for example, data of one line of the long-accumulated image and data of one line of the short-accumulated image are alternately transmitted from the upper line.
- Fig. 42 is a diagram illustrating an example of the header information used for transmission of the long-accumulated image and the short-accumulated image.
- Fig. 42 illustrates the header information of the packet header added to the packet that stores data of each line of the long accumulation image.
- the right side illustrates the header information of the packet header added to the packet that stores data of each line of the short-accumulated image.
- Data ID (Fig. 12) of bit [45] is used to identify the long-accumulated image and the short-accumulated image.
- the value of bit [45] of 1 indicates that the data stored in the packet is the data of the short-accumulated image
- the value of 0 indicates that the data stored in the packet is the data of the long-accumulated image.
- the functional safety information and the security information can be transmitted in a form conforming to the SLVS-EC standard.
- the frame data is generated using the image data obtained by imaging by the image sensor 11 as the output data and transmitted to the DSP 12, other types of data in units of frames may be used as the output data.
- a distance image in which a distance to each position of a subject is the pixel value of each pixel can be used as the output data.
- the series of processing described above can be executed by hardware or can be executed by software.
- a program constituting the software in a program recording medium is installed in a computer incorporated in dedicated hardware, a general-purpose personal computer, or the like.
- Fig. 43 is a block diagram illustrating an example of a configuration of hardware of a computer executing the series of processing described above by using a program.
- a central processing unit (CPU) 1001, a read only memory (ROM) 1002, and a random access memory (RAM) 1003 are connected to one another by a bus 1004.
- an input/output interface 1005 is connected to the bus 1004.
- An input unit 1006 implemented by a keyboard, a mouse, or the like, and an output unit 1007 implemented by a display, a speaker, or the like are connected to the input/output interface 1005.
- a storage unit 1008 implemented by a hard disk, a non-volatile memory, or the like, a communication unit 1009 implemented by a network interface or the like, and a drive 1010 driving removable media 1011 are connected to the input/output interface 1005.
- the CPU 1001 loads, for example, a program stored in the storage unit 1008 to the RAM 1003 through the input/output interface 1005 and the bus 1004, and executes the program, such that the series of processing described above is performed.
- the program executed by the CPU 1001 is recorded in, for example, the removable media 1011, or is provided through a wired or wireless transmission medium such as a local area network, Internet, and digital broadcasting, and installed in the storage unit 1008.
- the program executed by the computer may be a program by which the pieces of processing are performed in time series in the order described in the present specification, or may be a program by which the pieces of processing are performed in parallel or at a necessary timing such as when a call is performed or the like.
- a system means a set of a plurality of components (apparatuses, modules (parts), or the like), and it does not matter whether or not all the components are in the same housing. Therefore, a plurality of apparatuses housed in separate housings and connected via a network and one apparatus in which a plurality of modules is housed in one housing are both systems.
- the embodiment of the present technology is not limited to that described above, and may be variously changed without departing from the gist of the present technology.
- each step described in the above-described flowchart can be performed by one apparatus or can be performed in a distributed manner by a plurality of apparatuses.
- the plurality of pieces of processing included in the one step can be performed by one apparatus or can be performed in a distributed manner by a plurality of apparatuses.
- a transmission apparatus including: a generation unit that generates frame data by adding at least one of security information or functional safety information to output data in units of frames output by a sensor, the security information being information used for implementing security, and the functional safety information being information used for implementing functional safety; and a signal processing unit that stores data of each line included in the frame data in each packet and transmits the packet.
- the generation unit generates the security information including security-related information and output data security information and generates the functional safety information including functional-safety-related information and output data functional safety information
- the security-related information being information used for implementing security of the sensor
- the output data security information being information used for implementing security of the output data
- the functional-safety-related information being information used for implementing functional safety of the sensor
- the output data functional safety information being information used for implementing functional safety of the output data.
- the transmission apparatus according to any one of (2) to (10), further including an additional information generation unit that generates, on the basis of the output data, authentication information as the output data security information and error detection information as the output data functional safety information.
- the transmission apparatus according to any one of (1) to (11), in which the output data is image data of one frame obtained by imaging by the sensor.
- a reception apparatus including: a signal processing unit that receives a packet that stores data of each line included in frame data in which at least one of security information or functional safety information is added to output data in units of frames output by a sensor, the security information being information used for implementing security, and the functional safety information being information used for implementing functional safety; and an information processing unit that performs processing of implementing security on the basis of the security information and performs processing of implementing functional safety on the basis of the functional safety information.
- the reception apparatus in which the signal processing unit receives the packet including, as the security information, security-related information and output data security information, and receives the packet including, as the functional safety information, functional-safety-related information and output data functional safety information, the security-related information being information used for implementing security of the sensor, the output data security information being information used for implementing security of the output data, the functional-safety-related information being information used for implementing functional safety of the sensor, and the output data functional safety information being information used for implementing functional safety of the output data.
- the reception apparatus according to (15) or (16), further including an identification unit that identifies the data stored in the packet on the basis of a first flag indicating whether or not the data stored in the packet is data of a line in which the security information is arranged and a second flag indicating whether or not the data stored in the packet is data of a line in which the functional safety information is arranged, the first flag and the second flag being included in a packet header.
- a reception method executed by a reception apparatus including: receiving a packet that stores data of each line included in frame data in which at least one of security information or functional safety information is added to output data in units of frames output by a sensor, the security information being information used for implementing security, and the functional safety information being information used for implementing functional safety; and performing processing of implementing security on the basis of the security information and performs processing of implementing functional safety on the basis of the functional safety information.
- a transmission system including: a transmission apparatus including a generation unit that generates frame data by adding at least one of security information or functional safety information to output data in units of frames output by a sensor, the security information being information used for implementing security, and the functional safety information being information used for implementing functional safety, and a signal processing unit that stores data of each line included in the frame data in each packet and transmits the packet; and a reception apparatus including a signal processing unit that receives the packet, and an information processing unit that performs processing of implementing security on the basis of the security information, and performs processing of implementing functional safety on the basis of the functional safety information.
- a transmission apparatus comprising: a controller configured to perform operations comprising: generating frame data corresponding to output data generated by a sensor, the frame data being generated according to a frame format that includes at least one of first security information or first functional safety information; generating a plurality of packets based on the frame data, each of the packets including one of a plurality of lines of image data in the frame data; and transmitting the packets.
- the frame format includes the first security information, the first functional safety information, a second security information and a second functional safety information.
- the transmission apparatus includes at least one of security error information of register communication, detection information of an attack on the sensor, or information for analysis of a security error
- the second security information includes at least one of Initialization Vector information or Message Authentication Code.
- the first functional safety information includes at least one of functional safety error information of register communication, failure information inside the sensor, detection information of irregular operation of the sensor or information for analysis of functional safety error
- the second functional safety information includes Cyclic Redundancy Check value.
- (A5) The transmission apparatus according to any one of (A2) to (A4), wherein the frame format includes the first security information and the first functional safety information in a header, and the second security information and the second functional safety information in a footer.
- (A6) The transmission apparatus according to any one of (A2) to (A5), wherein the frame format includes the first functional safety information in a first header line and the first security information in a second header line next to the first header line.
- (A7) The transmission apparatus according to any one of (A2) to (A6), wherein the frame format includes the second security information in a first footer line and the second functional safety information in a second footer line next to the first footer line.
- (A8) The transmission apparatus according to any one of (A2) to (A7), wherein the frame format includes a part of the second security information in a first header line together with the first security information, and a part of the second functional safety information in a second header line together with the first functional safety information.
- (A9) The transmission apparatus according to (A6), wherein the frame format includes a part of information common to the first security information and the first functional safety information in a third header line next to the second header line.
- (A10) The transmission apparatus according to (A6) or (A9), wherein the frame format includes format type information of the frame data in a fourth header line next to the first header line.
- each of the packets has a packet header including a first flag indicating that the first and second security information is present and a second flag indicating that the first and second functional safety information is present.
- the packet header includes a third flag indicating that embedded data is present, the embedded data being different from the first and second security information and the first and second functional safety information.
- the second security information is authentication information
- the second functional safety information is error detection information.
- (A14) The transmission apparatus according to (A13), wherein the authentication information and the error detection information are generated on a basis of the output data generated by the sensor.
- (A15) The transmission apparatus according to any one of (A1) to (A14), wherein the output data generated by the sensor is for one frame of image data generated by the sensor.
- (A16) The transmission apparatus according to any one of (A1) to (A15), wherein the frame data is generated by embedding the first and second security information and the first and second functional safety information to the output data generated by the sensor.
- a method comprising: generating frame data corresponding to output data generated by a sensor, the frame data being generated according to a frame format that includes at least one of first security information or first functional safety information; generating a plurality of packets based on the frame data, each of the packets including one of a plurality of lines of image data in the frame data; and transmitting the packets.
- the frame format includes the first security information, the first functional safety information, a second security information and a second functional safety information.
- a non-transitory computer redable medium storing program code, the program code being executable by a processor to perform operations comprising: generating frame data corresponding to output data generated by a sensor, the frame data being generated according to a frame format that includes at least one of first security information or first functional safety information; generating a plurality of packets based on the frame data, each of the packets including one of a plurality of lines of image data in the frame data; and transmitting the packets.
- processors may be provided through the use of dedicated hardware as well as hardware capable of executing software in association with appropriate software.
- the functions may be provided by a single dedicated processor, by a single shared processor, or by a plurality of individual processors, some of which may be shared.
- processor or “controller” should not be construed to refer exclusively to hardware capable of executing software, and may implicitly include, without limitation, digital signal processor (DSP) hardware, network processor, application specific integrated circuit (ASIC), field programmable gate array (FPGA), read only memory (ROM) for storing software, random access memory (RAM), logic circuitry, and nonvolatile storage. Other hardware, conventional and/or custom, may also be included.
- DSP digital signal processor
- ASIC application specific integrated circuit
- FPGA field programmable gate array
- ROM read only memory
- RAM random access memory
- RAM random access memory
- any switches shown in the figures are conceptual only. Their function may be carried out through the operation of program logic, through dedicated logic, through the interaction of program control and dedicated logic, or even manually, the particular technique being selectable by the implementer as more specifically understood from the context.
- Transmission system 11 Image sensor 12 DSP 21 Imaging unit 22 Transmission unit 31 Reception unit 32 Image processing unit 41 Application layer processing unit 42 Link layer signal processing unit 43 Physical layer signal processing unit 51 Physical layer signal processing unit 52 Link layer signal processing unit 53 Application layer processing unit
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Signal Processing (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Multimedia (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Software Systems (AREA)
- Communication Control (AREA)
- Studio Devices (AREA)
Abstract
Description
This application claims the benefit of Japanese Priority Patent Application JP 2022-074122 filed on April 28, 2022, the entire contents of which are incorporated herein by reference.
1. SLVS-EC Transmission System
2. Transmission of Functional Safety Information/Security Information
3. Example of Variations of Frame format
4. SLVS-EC
5. Application Example
<Configuration of Transmission System>
Fig. 1 is a diagram illustrating an example of a configuration of a transmission system according to an embodiment of the present technology.
1. Pixel Data-Byte Data Conversion
2. Error Correction of Payload Data
3. Transmission of Packet Data and Auxiliary Data
4. Error Correction of Payload Data Using Packet Footer
5. Lane Management
6. Protocol Management for Packet Generation
1. Generation and Extraction of Control Code
2. Control of Bandwidth
3. Control of Skew Between Lanes
4. Arrangement of Symbols
5. Symbol Coding for Bit Synchronization
6. Serializer/Deserializer (SERDES)
7. Generation and Reproduction of Clock
8. Transmission of Scalable Low Voltage Signaling (SLVS) Signal
Fig. 3 is a diagram illustrating an example of a format used for transmission of the image data of each frame.
<Frame Format>
Fig. 5 is a diagram illustrating an example of a frame format according to an embodiment of the present technology.
・Information of security error/warning of register communication
・Information indicating detection of attack on inside of sensor
・Information for analysis of security error/warning
・Internal state information
・Operation-mode-related information
・Information for making notification that register communication has occurred
・Frame counter
・Information of data size of one frame
・Information of functional safety error/warning of register communication
・Information of failure inside sensor
・Information indicating detection of irregular operation of sensor
・Information for analysis of functional safety error/warning
・Internal state information
・Operation-mode-related information
・Information for making notification that register communication has occurred
・Frame counter
・Information of data size of one frame
Fig. 11 is a block diagram illustrating an example of a functional configuration of the application layer processing unit. Fig. 11 mainly illustrates configurations of the application
The application
Here, details of the header information included in the packet header will be described. As described above with reference to Fig. 4, the packet header includes the header information and the CRC value of the header. One set of the header information and the CRC value of the header is 8-byte information.
Returning to the description of Fig. 11, the application
Here, processing in the
First, the processing in the
Next, the processing in the
Here, variations of the frame format will be described. For example, which frame format is used for data transmission is determined in advance between the
Fig. 18 is a diagram illustrating a first modification of the frame format.
Fig. 19 is a diagram illustrating a second modification of the frame format.
Fig. 20 is a diagram illustrating a third modification of the frame format.
Fig. 22 is a diagram illustrating a fourth modification of the frame format.
Here, the link layer processing and the physical layer processing of the SLVS-EC will be described.
First, the link layer configuration of the transmission unit 22 (the configuration of the link layer signal processing unit 42) will be described.
Next, a physical layer configuration of the transmission unit 22 (the configuration of the physical layer signal processing unit 43) will be described.
Next, a physical layer configuration of the reception unit 31 (the configuration of the physical layer signal processing unit 51) will be described.
Next, a link layer configuration of the reception unit 31 (the configuration of the link layer signal processing unit 52) will be described.
<Application to General-purpose Image Sensor>
In a case where the
Fig. 34 is a diagram illustrating an example of target ranges of the MAC computation.
Fig. 36 is a diagram illustrating an example of the target ranges of the MAC computation and the CRC computation.
On/off of each of the functional safety operation and the security operation is set, for example, at the time of manufacturing a product on which the
Although the frame format in the SLVS-EC data transmission has been described, the above-described technology is also applicable to other communication IFs that perform data transmission in units of frames.
In a region of 0x30 to 0x37 of the packet header of the MIPI, a data type (DT) region that can determine a use for each product, called user define, is prepared. The lower three bits of 0x30 to 0x37 are used as EBD Line, Safety Info, and Security Info.
In SLVS and SubLVDS, a format such as the packet header including information indicating the type of data of each line is not defined. By adding 3-bit line information indicating the type of data of each line to the head of data arranged in each line, information similar to EBD Line, Safety Info, and Security Info may be transmitted.
・Example of Output of Long-Accumulated Image and Short-Accumulated Image
As an imaging mode of the
The series of processing described above can be executed by hardware or can be executed by software. In a case where the series of processing is executed by software, a program constituting the software in a program recording medium is installed in a computer incorporated in dedicated hardware, a general-purpose personal computer, or the like.
Note that the present technology can also have the following configuration.
A transmission apparatus including:
a generation unit that generates frame data by adding at least one of security information or functional safety information to output data in units of frames output by a sensor, the security information being information used for implementing security, and the functional safety information being information used for implementing functional safety; and
a signal processing unit that stores data of each line included in the frame data in each packet and transmits the packet.
(2)
The transmission apparatus according to (1), in which
the generation unit generates the security information including security-related information and output data security information and generates the functional safety information including functional-safety-related information and output data functional safety information, the security-related information being information used for implementing security of the sensor, the output data security information being information used for implementing security of the output data, the functional-safety-related information being information used for implementing functional safety of the sensor, and the output data functional safety information being information used for implementing functional safety of the output data.
(3)
The transmission apparatus according to (2), in which
the generation unit generates the frame data having a format in which the security-related information and the functional-safety-related information are arranged ahead of the output data and the output data security information and the output data functional safety information are arranged behind the output data.
(4)
The transmission apparatus according to (3), in which
the generation unit generates the frame data in which the functional-safety-related information is arranged in a line next to a line in which the security-related information is arranged and the output data security information is arranged in a line next to a line in which the output data functional safety information is arranged.
(5)
The transmission apparatus according to any one of (2) to (4), in which
the generation unit generates the frame data in which partial information of the output data security information is arranged in the same line ahead of the output data together with the security-related information, and partial information of the output data functional safety information is arranged in the same line ahead of the output data together with the functional-safety-related information.
(6)
The transmission apparatus according to any one of (2) to (5), in which
the generation unit generates the frame data in which partial information common to the security-related information and the functional-safety-related information is arranged as embedded data in a line ahead of the output data.
(7)
The transmission apparatus according to (2) or (3), in which
the generation unit generates the frame data in which the security-related information and the functional-safety-related information are arranged as embedded data in a line ahead of the output data.
(8)
The transmission apparatus according to any one of (2) to (5), in which
the generation unit generates the frame data in which a line of embedded data including information indicating a format type of the frame data is arranged ahead of a line in which the security-related information is arranged.
(9)
The transmission apparatus according to any one of (2) to (8), in which
the signal processing unit generates the packet to which a packet header including a first flag indicating whether or not data stored in the packet is data of a line in which the security information is arranged and a second flag indicating whether or not data stored in the packet is data of a line in which the functional safety information is arranged is added.
(10)
The transmission apparatus according to (9), in which
the signal processing unit adds the packet header including a third flag in which a value indicating that data is data of a line in which the embedded data is arranged is set for the packet that stores data of a line in which the security-related information or the functional-safety-related information is arranged.
(11)
The transmission apparatus according to any one of (2) to (10), further including
an additional information generation unit that generates, on the basis of the output data, authentication information as the output data security information and error detection information as the output data functional safety information.
(12)
The transmission apparatus according to any one of (1) to (11), in which
the output data is image data of one frame obtained by imaging by the sensor.
(13)
A transmission method executed by a transmission apparatus, the transmission method including:
generating frame data by adding at least one of security information or functional safety information to output data in units of frames output by a sensor, the security information being information used for implementing security, and the functional safety information being information used for implementing functional safety; and
storing data of each line included in the frame data in each packet and transmitting the packet.
(14)
A program for causing a computer to perform processing of:
generating frame data by adding at least one of security information or functional safety information to output data in units of frames output by a sensor, the security information being information used for implementing security, and the functional safety information being information used for implementing functional safety; and
storing data of each line included in the frame data in each packet and transmitting the packet.
(15)
A reception apparatus including:
a signal processing unit that receives a packet that stores data of each line included in frame data in which at least one of security information or functional safety information is added to output data in units of frames output by a sensor, the security information being information used for implementing security, and the functional safety information being information used for implementing functional safety; and
an information processing unit that performs processing of implementing security on the basis of the security information and performs processing of implementing functional safety on the basis of the functional safety information.
(16)
The reception apparatus according to (15), in which
the signal processing unit receives the packet including, as the security information, security-related information and output data security information, and receives the packet including, as the functional safety information, functional-safety-related information and output data functional safety information, the security-related information being information used for implementing security of the sensor, the output data security information being information used for implementing security of the output data, the functional-safety-related information being information used for implementing functional safety of the sensor, and the output data functional safety information being information used for implementing functional safety of the output data.
(17)
The reception apparatus according to (15) or (16), further including
an identification unit that identifies the data stored in the packet on the basis of a first flag indicating whether or not the data stored in the packet is data of a line in which the security information is arranged and a second flag indicating whether or not the data stored in the packet is data of a line in which the functional safety information is arranged, the first flag and the second flag being included in a packet header.
(18)
A reception method executed by a reception apparatus, the reception method including:
receiving a packet that stores data of each line included in frame data in which at least one of security information or functional safety information is added to output data in units of frames output by a sensor, the security information being information used for implementing security, and the functional safety information being information used for implementing functional safety; and
performing processing of implementing security on the basis of the security information and performs processing of implementing functional safety on the basis of the functional safety information.
(19)
A program for causing a computer to execute processing of:
receiving a packet that stores data of each line included in frame data in which at least one of security information or functional safety information is added to output data in units of frames output by a sensor, the security information being information used for implementing security, and the functional safety information being information used for implementing functional safety; and
performing processing of implementing security on the basis of the security information and performs processing of implementing functional safety on the basis of the functional safety information.
(20)
A transmission system including:
a transmission apparatus including a generation unit that generates frame data by adding at least one of security information or functional safety information to output data in units of frames output by a sensor, the security information being information used for implementing security, and the functional safety information being information used for implementing functional safety, and a signal processing unit that stores data of each line included in the frame data in each packet and transmits the packet; and
a reception apparatus including a signal processing unit that receives the packet, and an information processing unit that performs processing of implementing security on the basis of the security information, and performs processing of implementing functional safety on the basis of the functional safety information.
(A1)
A transmission apparatus comprising:
a controller configured to perform operations comprising:
generating frame data corresponding to output data generated by a sensor, the frame data being generated according to a frame format that includes at least one of first security information or first functional safety information;
generating a plurality of packets based on the frame data, each of the packets including one of a plurality of lines of image data in the frame data; and
transmitting the packets.
(A2)
The transmission apparatus according to (A1), wherein
the frame format includes the first security information, the first functional safety information, a second security information and a second functional safety information.
(A3)
The transmission apparatus according to (A2), wherein
the first security information includes at least one of security error information of register communication, detection information of an attack on the sensor, or information for analysis of a security error, and
the second security information includes at least one of Initialization Vector information or Message Authentication Code.
(A4)
The transmission apparatus according to (A2) or (A3), wherein
the first functional safety information includes at least one of functional safety error information of register communication, failure information inside the sensor, detection information of irregular operation of the sensor or information for analysis of functional safety error, and
the second functional safety information includes Cyclic Redundancy Check value.
(A5)
The transmission apparatus according to any one of (A2) to (A4), wherein
the frame format includes the first security information and the first functional safety information in a header, and the second security information and the second functional safety information in a footer.
(A6)
The transmission apparatus according to any one of (A2) to (A5), wherein
the frame format includes the first functional safety information in a first header line and the first security information in a second header line next to the first header line.
(A7)
The transmission apparatus according to any one of (A2) to (A6), wherein
the frame format includes the second security information in a first footer line and the second functional safety information in a second footer line next to the first footer line.
(A8)
The transmission apparatus according to any one of (A2) to (A7), wherein
the frame format includes a part of the second security information in a first header line together with the first security information, and a part of the second functional safety information in a second header line together with the first functional safety information.
(A9)
The transmission apparatus according to (A6), wherein
the frame format includes a part of information common to the first security information and the first functional safety information in a third header line next to the second header line.
(A10)
The transmission apparatus according to (A6) or (A9), wherein
the frame format includes format type information of the frame data in a fourth header line next to the first header line.
(A11)
The transmission apparatus according to any one of (A2) to (A10), wherein
each of the packets has a packet header including a first flag indicating that the first and second security information is present and a second flag indicating that the first and second functional safety information is present.
(A12)
The transmission apparatus according to (A11), wherein
the packet header includes a third flag indicating that embedded data is present, the embedded data being different from the first and second security information and the first and second functional safety information.
(A13)
The transmission apparatus according to any one of (A2) to (A12), wherein
the second security information is authentication information, and
the second functional safety information is error detection information.
(A14)
The transmission apparatus according to (A13), wherein
the authentication information and the error detection information are generated on a basis of the output data generated by the sensor.
(A15)
The transmission apparatus according to any one of (A1) to (A14), wherein
the output data generated by the sensor is for one frame of image data generated by the sensor.
(A16)
The transmission apparatus according to any one of (A1) to (A15), wherein
the frame data is generated by embedding the first and second security information and the first and second functional safety information to the output data generated by the sensor.
(A17)
A method comprising:
generating frame data corresponding to output data generated by a sensor, the frame data being generated according to a frame format that includes at least one of first security information or first functional safety information;
generating a plurality of packets based on the frame data, each of the packets including one of a plurality of lines of image data in the frame data; and
transmitting the packets.
(A18)
The method according to (A17), wherein
the frame format includes the first security information, the first functional safety information, a second security information and a second functional safety information.
(A19)
A non-transitory computer redable medium storing program code, the program code being executable by a processor to perform operations comprising:
generating frame data corresponding to output data generated by a sensor, the frame data being generated according to a frame format that includes at least one of first security information or first functional safety information;
generating a plurality of packets based on the frame data, each of the packets including one of a plurality of lines of image data in the frame data; and
transmitting the packets.
(A20)
The non-transitory computer readable medium according to (A19), wherein
the frame format includes the first security information, the first functional safety information, a second security information and a second functional safety information.
11 Image sensor
12 DSP
21 Imaging unit
22 Transmission unit
31 Reception unit
32 Image processing unit
41 Application layer processing unit
42 Link layer signal processing unit
43 Physical layer signal processing unit
51 Physical layer signal processing unit
52 Link layer signal processing unit
53 Application layer processing unit
Claims (20)
- A transmission apparatus comprising:
a controller configured to perform operations comprising:
generating frame data corresponding to output data generated by a sensor, the frame data being generated according to a frame format that includes at least one of first security information or first functional safety information;
generating a plurality of packets based on the frame data, each of the packets including one of a plurality of lines of image data in the frame data; and
transmitting the packets. - The transmission apparatus according to claim 1, wherein
the frame format includes the first security information, the first functional safety information, a second security information and a second functional safety information. - The transmission apparatus according to claim 2, wherein
the first security information includes at least one of security error information of register communication, detection information of an attack on the sensor, or information for analysis of a security error, and
the second security information includes at least one of Initialization Vector information or Message Authentication Code. - The transmission apparatus according to claim 2, wherein
the first functional safety information includes at least one of functional safety error information of register communication, failure information inside the sensor, detection information of irregular operation of the sensor or information for analysis of functional safety error, and
the second functional safety information includes Cyclic Redundancy Check value. - The transmission apparatus according to claim 2, wherein
the frame format includes the first security information and the first functional safety information in a header, and the second security information and the second functional safety information in a footer. - The transmission apparatus according to claim 5, wherein
the frame format includes the first functional safety information in a first header line and the first security information in a second header line next to the first header line. - The transmission apparatus according to claim 6, wherein
the frame format includes the second security information in a first footer line and the second functional safety information in a second footer line next to the first footer line. - The transmission apparatus according to claim 2, wherein
the frame format includes a part of the second security information in a first header line together with the first security information, and a part of the second functional safety information in a second header line together with the first functional safety information. - The transmission apparatus according to claim 6, wherein
the frame format includes a part of information common to the first security information and the first functional safety information in a third header line next to the second header line. - The transmission apparatus according to claim 6, wherein
the frame format includes format type information of the frame data in a fourth header line next to the first header line. - The transmission apparatus according to claim 2, wherein
each of the packets has a packet header including a first flag indicating that the first and second security information is present and a second flag indicating that the first and second functional safety information is present. - The transmission apparatus according to claim 11, wherein
the packet header includes a third flag indicating that embedded data is present, the embedded data being different from the first and second security information and the first and second functional safety information. - The transmission apparatus according to claim 2, wherein
the second security information is authentication information, and
the second functional safety information is error detection information. - The transmission apparatus according to claim 13, wherein
the authentication information and the error detection information are generated on a basis of the output data generated by the sensor. - The transmission apparatus according to claim 1, wherein
the output data generated by the sensor is for one frame of image data generated by the sensor. - The transmission apparatus according to claim 1, wherein
the frame data is generated by embedding the first and second security information and the first and second functional safety information to the output data generated by the sensor. - A method comprising:
generating frame data corresponding to output data generated by a sensor, the frame data being generated according to a frame format that includes at least one of first security information or first functional safety information;
generating a plurality of packets based on the frame data, each of the packets including one of a plurality of lines of image data in the frame data; and
transmitting the packets. - The method according to claim 17, wherein
the frame format includes the first security information, the first functional safety information, a second security information and a second functional safety information. - A non-transitory computer redable medium storing program code, the program code being executable by a processor to perform operations comprising:
generating frame data corresponding to output data generated by a sensor, the frame data being generated according to a frame format that includes at least one of first security information or first functional safety information;
generating a plurality of packets based on the frame data, each of the packets including one of a plurality of lines of image data in the frame data; and
transmitting the packets. - The non-transitory computer readable medium according to claim 19, wherein
the frame format includes the first security information, the first functional safety information, a second security information and a second functional safety information.
Priority Applications (4)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN202380034165.8A CN119053963A (en) | 2022-04-28 | 2023-04-10 | Transmission device, transmission method, reception device, reception method, program, and transmission system |
| KR1020247038400A KR20250005328A (en) | 2022-04-28 | 2023-04-10 | Transmitting device, transmitting method, receiving device, receiving method, program and transmitting system |
| DE112023002052.3T DE112023002052T5 (en) | 2022-04-28 | 2023-04-10 | TRANSMISSION DEVICE, TRANSMISSION METHOD, RECEIVING DEVICE, RECEIVING METHOD, PROGRAM AND TRANSMISSION SYSTEM |
| US18/853,295 US20250227167A1 (en) | 2022-04-28 | 2023-04-10 | Transmission apparatus, transmission method, reception apparatus, reception method, program, and transmission system |
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2022074122A JP2023163310A (en) | 2022-04-28 | 2022-04-28 | Transmitting device, transmission method, receiving device, receiving method, program, and transmission system |
| JP2022-074122 | 2022-04-28 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2023210325A1 true WO2023210325A1 (en) | 2023-11-02 |
Family
ID=86271344
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/JP2023/014556 Ceased WO2023210325A1 (en) | 2022-04-28 | 2023-04-10 | Transmission apparatus, transmission method, reception apparatus, reception method, program, and transmission system |
Country Status (6)
| Country | Link |
|---|---|
| US (1) | US20250227167A1 (en) |
| JP (1) | JP2023163310A (en) |
| KR (1) | KR20250005328A (en) |
| CN (1) | CN119053963A (en) |
| DE (1) | DE112023002052T5 (en) |
| WO (1) | WO2023210325A1 (en) |
Citations (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20210090202A1 (en) * | 2019-09-19 | 2021-03-25 | Semiconductor Components Industries, Llc | Systems and methods for authenticating image data |
Family Cites Families (12)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP3632167B2 (en) * | 1998-01-30 | 2005-03-23 | 株式会社日立製作所 | Cryptographic communication device |
| JP3297645B2 (en) * | 1998-08-26 | 2002-07-02 | 日本電信電話株式会社 | Transmission control device and transmission control system |
| US20100052947A1 (en) * | 2008-09-02 | 2010-03-04 | Farsight Investment Co., Ltd. | Camera with built-in license plate recognition function |
| US20180027174A1 (en) * | 2016-07-19 | 2018-01-25 | Qualcomm Incorporated | Signaling camera configuration changes using metadata defined for a camera command set |
| EP3681397B1 (en) | 2017-09-13 | 2022-06-08 | Varex Imaging Corporation | X-ray imaging component communication system and protocol |
| JP7152475B2 (en) * | 2018-04-05 | 2022-10-12 | ソニーセミコンダクタソリューションズ株式会社 | Transmitting device, receiving device, and communication system |
| DE102018115233B3 (en) * | 2018-06-25 | 2019-07-18 | Sick Ag | Method for the secure transmission of image data and a safe optoelectronic sensor |
| TWI868088B (en) * | 2018-12-20 | 2025-01-01 | 日商索尼半導體解決方案公司 | Communication device, communication method and program |
| JP7499765B2 (en) * | 2019-06-28 | 2024-06-14 | ソニーセミコンダクタソリューションズ株式会社 | Transmitting device, receiving device and transmission system |
| WO2021147049A1 (en) * | 2020-01-22 | 2021-07-29 | 华为技术有限公司 | Pcie-based data transmission method and device |
| JP2023089317A (en) * | 2020-05-11 | 2023-06-28 | ソニーセミコンダクタソリューションズ株式会社 | Communication device and communication system |
| US12407661B2 (en) * | 2020-10-09 | 2025-09-02 | Sony Semiconductor Solutions Corporation | Information processing device, mobile device, and communication system |
-
2022
- 2022-04-28 JP JP2022074122A patent/JP2023163310A/en active Pending
-
2023
- 2023-04-10 DE DE112023002052.3T patent/DE112023002052T5/en active Pending
- 2023-04-10 CN CN202380034165.8A patent/CN119053963A/en active Pending
- 2023-04-10 US US18/853,295 patent/US20250227167A1/en active Pending
- 2023-04-10 WO PCT/JP2023/014556 patent/WO2023210325A1/en not_active Ceased
- 2023-04-10 KR KR1020247038400A patent/KR20250005328A/en active Pending
Patent Citations (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20210090202A1 (en) * | 2019-09-19 | 2021-03-25 | Semiconductor Components Industries, Llc | Systems and methods for authenticating image data |
Non-Patent Citations (3)
| Title |
|---|
| GOEL JAMES: "How MASS Simplifies the Integration of Camera and Displays in Automotive Architectures", 17 November 2021 (2021-11-17), XP093060335, Retrieved from the Internet <URL:https://2384176.fs1.hubspotusercontent-na1.net/hubfs/2384176/How-MASS-Simplifies-the-Integration-of-Cameras-and-Displays-in-Automotive-Architectures.pdf> [retrieved on 20230703] * |
| MIPI ALLIANCE: "An Introductory Guide to MIPI Automotive SerDes Solutions (MASS) An overview of MIPI's standardized in-vehicle connectivity framework for high-performance sensors and displays", 31 August 2021 (2021-08-31), XP093060331, Retrieved from the Internet <URL:https://2384176.fs1.hubspotusercontent-na1.net/hubfs/2384176/MIPI-Alliance-Introduction-to-MASS-White-Paper-August-2021-1.pdf?__hstc=217221321.37a3e62007bf614093fcbd084153484b.1688392615824.1688392615824.1688393578799.2&__hssc=217221321.8.1688393578799&__hsfp=199166326&hsCtaTracking=235d69e0-40db-47> [retrieved on 20230703] * |
| WIETFELDT RICK ET AL: "How the MIPI Security Framework Protects Automotive SerDes Applications from Security Risks", 31 December 2021 (2021-12-31), XP093060302, Retrieved from the Internet <URL:https://www.mipi.org/sites/default/files/How-the-MIPI-Security-Framework-Protects-Automotive-SerDes-Applications-from-Security-Risks.pdf> [retrieved on 20230703] * |
Also Published As
| Publication number | Publication date |
|---|---|
| KR20250005328A (en) | 2025-01-09 |
| DE112023002052T5 (en) | 2025-09-18 |
| JP2023163310A (en) | 2023-11-10 |
| CN119053963A (en) | 2024-11-29 |
| US20250227167A1 (en) | 2025-07-10 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP4309765B2 (en) | Video and attached data transmission method and system using serial link | |
| TWI894369B (en) | Information processing device, mobile device, and communication system | |
| US9942586B2 (en) | Method and apparatus for hardware-enforced, always-on insertion of a watermark in a video processing path | |
| TWI686085B (en) | Data transmission method of image pickup device and image sensor, information processing device, information processing method and program | |
| US20160149696A1 (en) | Transparent Serial Encryption | |
| JP7793558B2 (en) | Information processing device, mobile device, and communication system | |
| US7706532B2 (en) | Encryption/decryption device and method | |
| JP2005514849A (en) | Method and system for transmitting video and packetized audio data in multiple formats using serial link | |
| JP7547217B2 (en) | Transmitting device, transmitting method, receiving device, receiving method, and transmitting/receiving device | |
| US12375456B2 (en) | Information processing apparatus, mobile apparatus, and communication system | |
| KR20230029628A (en) | Encoding device, encoding method, decoding device, decoding method and program | |
| JP2006100890A (en) | Data transmission method and system, data transmitter and data receiver | |
| CN114208041A (en) | Encoding device, encoding method, decoding device, decoding method, and program | |
| US20170317829A1 (en) | Digital Content Protection Over Audio Return Data Link | |
| US20250227167A1 (en) | Transmission apparatus, transmission method, reception apparatus, reception method, program, and transmission system | |
| US9787879B2 (en) | Image data receiving device | |
| US11930296B2 (en) | Transmission device, reception device, and transmission system with padding code insertion | |
| CN112528981B (en) | System and method for verifying image data | |
| JP7611823B2 (en) | Transmitting device and communication system | |
| KR100699469B1 (en) | System to Regenerate Clock for Data Transfer | |
| KR100699452B1 (en) | System for Serial Transmission of Video and Packetized Audio Data in Multiple Formats | |
| US20250310101A1 (en) | Transmission device, reception device, information processing method, program, and communication system | |
| US20260135691A1 (en) | Information processing apparatus, information processing method, program, and communication system | |
| WO2024048263A1 (en) | Communication device, communication method, and program | |
| WO2023243433A1 (en) | Information processing device, information processing method, program, and communication system |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| 121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 23720190 Country of ref document: EP Kind code of ref document: A1 |
|
| WWE | Wipo information: entry into national phase |
Ref document number: 18853295 Country of ref document: US |
|
| WWE | Wipo information: entry into national phase |
Ref document number: 202380034165.8 Country of ref document: CN |
|
| ENP | Entry into the national phase |
Ref document number: 20247038400 Country of ref document: KR Kind code of ref document: A |
|
| WWE | Wipo information: entry into national phase |
Ref document number: 112023002052 Country of ref document: DE |
|
| 122 | Ep: pct application non-entry in european phase |
Ref document number: 23720190 Country of ref document: EP Kind code of ref document: A1 |
|
| WWP | Wipo information: published in national office |
Ref document number: 18853295 Country of ref document: US |
|
| WWP | Wipo information: published in national office |
Ref document number: 112023002052 Country of ref document: DE |