The present technology relates to a transmission device, a transmission method, a reception device, a reception method, and a transmission-reception device, and particularly relates to a transmission device, a transmission method, a reception device, a reception method, and a transmission-reception device that allow separating signal processing units that perform signal processing of different layers.
There is a scalable low voltage signaling-embedded clock (SLVS-EC) standard as an interface standard for image sensors. A transmission method of the SLVS-EC standard is a method in which data is transmitted in a form having a clock superimposed on the transmitting side, and the clock is reproduced on the receiving side to demodulate and decode the data.
The SLVS-EC standard defines a “link layer” that is a layer that performs application-oriented signal processing such as packet generation, and a “physical layer” that is a layer that performs transmission line-oriented signal processing such as clock generation and reproduction.
Detailed signal exchange between the link layer and the physical layer, such as from which port a signal is output and to which port the signal is input, is not defined in the SLVS-EC standard. Thus, it is not possible to mount the link layer and the physical layer on separate IC chips.
The present technology has been made in view of such a situation, and makes it possible to separate signal processing units that perform signal processing of different layers.
A transmission device of a first aspect of the present technology includes a first signal processing unit that performs, as processing of a first layer, processing of generating a packet that stores data to be transmitted and distributing the packet that has been generated to a plurality of lanes, and a second signal processing unit that performs, as processing of a second layer, processing including insertion of control information in parallel on the packet of each of the lanes output from the first signal processing unit, and processing of outputting a data stream obtained by performing the processing onto a transmission line to a reception device, in which the first signal processing unit and the second signal processing unit are configured to input and output signals according to specifications of input and output defined on the basis of the first layer and specifications of input and output defined on the basis of the second layer.
A reception device of a second aspect of the present technology includes a first signal processing unit that receives a data stream output from a transmission device in parallel as data of a plurality of lanes onto a transmission line and performs, as processing of a first layer, processing including a synchronization processing and removal of control information, and a second signal processing unit that performs, as processing of a second layer, processing of integrating the data stream of each of the lanes output from the first signal processing unit into one series of data and acquiring a packet constituting the data stream, in which the first signal processing unit and the second signal processing unit are configured to input and output signals according to specifications of input and output defined on the basis of the first layer and specifications of input and output defined on the basis of the second layer
In the first aspect of the present technology, input and output of signals between the first signal processing unit and the second signal processing unit are performed according to specifications of input and output defined on the basis of the first layer and specifications of input and output defined on the basis of the second layer.
In the second aspect of the present technology, input and output of signals between the first signal processing unit and the second signal processing unit are performed according to specifications of input and output defined on the basis of the first layer and specifications of input and output defined on the basis of the second layer.
Hereinafter, a mode for carrying out the present technology will be described. The description will be made in the following order.
1. Phy Protocol Interface
2. SLVS-EC standard
3. Modification example
<Phy Protocol Interface>>
<Configuration Example of Transmission System>
The transmission system 1 of
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 through a lens. Furthermore, the imaging unit 21 performs A/D conversion and the like of a signal obtained by the photoelectric conversion, and outputs pixel data constituting an image of one frame to the transmission unit 22 in order for every piece of data of one pixel.
The transmission unit 22 assigns data of each pixel supplied from the imaging unit 21 to a plurality of transmission lines in the order of supply from the imaging unit 21, for example, and transmits the data to the DSP 12 in parallel via the plurality of transmission lines. In the example of
The reception unit 31 of the DSP 12 receives the pixel data transmitted from the transmission unit 22 via eight lanes, and outputs data of each pixel to the image processing unit 32 in order.
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 image processing using the generated image. The image data transmitted from the image sensor 11 to the DSP 12 is, for example, RAW data, and the image processing unit 32 performs various processes such as compression of the image data, display of the image, and recording of the image data on a recording medium. In addition to RAW data, JPEG data and additional data other than pixel data may be transmitted from the image sensor 11 to the DSP 12.
As described above, data is transmitted and received using a plurality of lanes 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.
It is also possible to provide the same numbers of transmission units 22 and reception units 31. In this case, data transmission and reception using the plurality of lanes is performed between each set of the transmission unit 22 and the reception unit 31.
Transmission and reception of data between the transmission unit 22 and the reception unit 31 is performed according to, for example, the SLVS-EC standard.
In the SLVS-EC standard, an application layer (Application Layer), a link layer (LINK Layer), and a physical layer (PHY Layer) are defined according to the content of signal processing. The signal processing of each layer is performed by the transmission unit 22 that is a transmitting side (Tx) and the reception unit 31 that is a receiving side (Rx).
Although details will be described later, in the link layer, signal processing for achieving the following functions is basically performed.
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
On the other hand, in the physical layer, signal processing for achieving the following functions is basically performed.
1. Generation and extraction of control code
2. Bandwidth control
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
In the transmission unit 22 of
Furthermore, in the reception unit 31, a signal processing unit that performs signal processing of the physical layer on the receiving side and a signal processing unit that performs signal processing of the link layer on the receiving side are separately provided.
As illustrated in
The Tx-Link Layer signal processing unit 22A of the transmission unit 22 performs signal processing of the link layer on the data to be transmitted. In the Tx-Link Layer signal processing unit 22A, in addition to the above-described processing, at least a process of generating a packet for storing the data to be transmitted and a process of distributing the generated packet to a plurality of lanes are performed. The Tx-Link Layer signal processing unit 22A outputs a packet storing data to be transmitted.
The Tx-Phy Layer signal processing unit 22B performs signal processing of the physical layer on the packet supplied from the Tx-Link Layer signal processing unit 22A. In the Tx-Phy Layer signal processing unit 22B, processing including a process of inserting a control code into packets distributed to each lane is performed in parallel for each lane. A data stream of each lane is output from the Tx-Phy Layer signal processing unit 22B and transmitted to the reception unit 31.
The Rx-Phy Layer signal processing unit 31A of the reception unit 31 receives a data stream transmitted from the Tx-Phy Layer signal processing unit 22B of the transmission unit 22, and performs signal processing of the physical layer on the received data stream. In the Rx-Phy Layer signal processing unit 31A, in addition to the above-described processing, processing including a symbol synchronization process and control code removal is performed in parallel for each lane. From the Rx-Phy Layer signal processing unit 31A, a data stream constituted of packets storing data to be transmitted is output using a plurality of lanes.
The Rx-Link Layer signal processing unit 31B performs signal processing of the link layer on the data stream of each lane supplied from the Rx-Phy Layer signal processing unit 31A. In the Rx-Link Layer signal processing unit 31B, at least processing of integrating the data streams of a plurality of lanes into one series of data and processing of acquiring the packets constituting the data stream are performed. The Rx-Link Layer signal processing unit 31B outputs data to be transmitted extracted from the packet.
Transmission and reception of signals between the Tx-Link Layer signal processing unit 22A and the Tx-Phy Layer signal processing unit 22B in the transmission unit 22 are performed according to specifications regarding the interface between the link layer and the physical layer. For example, as the specifications regarding the interface between two signal processing units on the transmitting side, specifications based on the link layer and specifications based on the physical layer are defined separately.
Similarly, transmission-reception of signals between the Rx-Phy Layer signal processing unit 31A and the Rx-Link Layer signal processing unit 31B in the reception unit 31 are performed according to specifications regarding the interface between the link layer and the physical layer. For example, as the specifications regarding the interface between two signal processing units on the receiving side, specifications based on the link layer and specifications based on the physical layer are defined separately.
It is also possible to define specifications regarding such interface between the link layer and the physical layer in the SLVS-EC standard.
<Phy Protocol Interface on Transmitting Side>
Specifications Based on Physical Layer
A signal input to each port and a signal output from each port of the Tx-Phy Layer signal processing unit 22B indicated by enclosing with a dashed line are defined. The Tx-Link Layer signal processing unit 22A is provided with a plurality of ports in a form corresponding to respective ports on the Tx-Phy Layer signal processing unit 22B side.
Note that the transmission unit 22 is provided with a phase locked loop (PLL) 22C. In the PLL 22C, a high-speed clock for Data transfer is generated on the basis of a reference clock. The high-speed clock for Data transfer generated in the PLL 22C is input to a port TxHighSpeedClk of the Tx-Phy Layer signal processing unit 22B.
A Word clock is output from a port TxWordClk. The Word clock output from the port TxWordClk is input to a corresponding port of the Tx-Link Layer signal processing unit 22A.
A Packet Data Transfer request output from a predetermined port of the Tx-Link Layer signal processing unit 22A is input to a port TxLineValid.
A Packet Data Transfer status notification is output from a port TxLineReady. The Packet Data Transfer status notification output from the port TxLineReady is input to a corresponding port of the Tx-Link Layer signal processing unit 22A.
A Packet Data Valid output from a predetermined port of the Tx-Link Layer signal processing unit 22A is input to a port TxDataValid.
A Packet data output status notification is output from a port TxDataReady. The Packet data output status notification output from the port TxDataReady is input to a corresponding port of the Tx-Link Layer signal processing unit 22A.
Packet Data output from a predetermined port of the Tx-Link Layer signal processing unit 22A is input to a port TxData_L.
An activation request for the physical layer output from a predetermined port of the Tx-Link Layer signal processing unit 22A is input to a port TxEnable.
A Phy status notification is output from a port TxReady. The Phy status notification output from the port TxReady is input to a corresponding port of the Tx-Link Layer signal processing unit 22A.
As illustrated in
A clock input to the port TxHighSpeedClk is a high-speed clock for Data transfer. The high-speed clock for Data transfer is used in the Tx-Phy Layer signal processing unit 22B to transmit bits of high-speed data via the lanes between the transmission unit 22 and the reception unit 31.
The Word clock output from the port TxWordClk is used in the Tx-Link Layer signal processing unit 22A to synchronize a SLVS-EC Phy Protocol Interface (PPI) signal. The SLVS-EC PPI signal on the transmission unit 22 side is each signal illustrated in
The port TxReady and the port TxEnable are ports used to control a start and stop sequence.
As will be described later, a Training Sequence, which is an activation sequence, is performed by the Tx-Phy Layer signal processing unit 22B at a predetermined timing such as before starting transmission of the data to be transmitted. Furthermore, a Standby Sequence, which is a stop sequence, is performed by the Tx-Phy Layer signal processing unit 22B at a predetermined timing such as before stopping the transmission of data.
If the Phy status notification output from the port TxReady is High, it indicates that an activation request or a stop request for the physical layer can be received by the port TxEnable. Furthermore, if the Phy status notification is Low, it indicates that the Training Sequence or Standby Sequence is being executed.
If the activation request for the physical layer input to the port TxEnable is High, it indicates to start the Training Sequence. Furthermore, if the activation request for the physical layer is Low, it indicates to start the Standby Sequence.
As illustrated in
If the Packet Data Transfer status notification output from the port TxLineReady is High, it indicates that the Packet Data Transfer request can be received at the port TxLineValid.
If the Packet Data Transfer request input to the port TxLineValid is High, it indicates to start a Packet Data Transfer Sequence. In the Packet Data Transfer Sequence, after a StartCode is output from the Tx-Phy Layer signal processing unit 22B to the transmission line, Packet Data output from the Tx-Link Layer signal processing unit 22A is received by the Tx-Phy Layer signal processing unit 22B.
On the other hand, if the Packet Data Transfer request is Low, it indicates to finish the Packet Data Transfer Sequence. After an End Code and a Deskew Code are output from the Tx-Phy Layer signal processing unit 22B to the transmission lines, the state of the Tx-Phy Layer signal processing unit 22B becomes a Blanking state (a state of outputting an IdleCode to the transmission lines).
If the Packet data output status notification output from the port TxDataReady is High, it indicates that the Packet Data Valid can be received at the port TxDataValid.
If the Packet Data Valid input to the port TxDataValid is High, it indicates that the Packet Data is valid.
In a case where the bit width of the TxData (Packet Data) is wider than eight bits, it is necessary to indicate which eight bits are valid data in 8-bit units. There are four types of bit widths of the TxData, for example, eight bits, 16 bits, 32 bits, and 64 bits.
In a case where the bit width of the TxData is eight bits, one bit of the TxDataValid[0] is used as the Packet Data Valid.
In a case where the bit width of the TxData is 16 bits, two bits of the TxDataValid[1: 0] are used as the Packet Data Valid.
In a case where the bit width of the TxData is 32 bits, four bits of the TxDataValid[3: 0] are used as the Packet Data Valid.
In a case where the bit width of the TxData is 64 bits, eight bits of the TxDataValid[7: 0] are used as the Packet Data Valid.
If the zeroth bit (TxDataValid[0]) of the Packet Data Valid is High, it represents that eight bits of the TxData[7: 0] are valid.
If the first bit (TxDataValid[1]) of the Packet Data Valid is High, it represents that eight bits of the TxData[15: 8] are valid.
If the second bit (TxDataValid[2]) of the Packet Data Valid is High, it represents that eight bits of the TxData[23: 16] are valid.
If the third bit (TxDatavalid[3]) of the Packet Data Valid is High, it represents that eight bits of the TxData[31: 24] are valid.
If the fourth bit (TxDatavalid[4]) of the Packet Data Valid is High, it represents that eight bits of the TxData[39: 32] are valid.
If the fifth bit (TxDatavalid[5]) of the Packet Data Valid is High, it represents that eight bits of the TxData[47: 40] are valid.
If the sixth bit (TxDatavalid[6]) of the Packet Data Valid is High, it represents that eight bits of the TxData[55: 48] are valid.
If the seventh bit (TxDatavalid[7]) of the Packet Data Valid is High, it represents that eight bits of the TxData[63: 56] are valid.
Packet Data input to the port TxData_L0 is Packet Data of Lane 0.
In a case where the bit width of the TxData is eight bits, eight bits of the TxData_L0 [7: 0] are used as the TxData.
In a case where the bit width of the TxData is 16 bits, 16 bits of the TxData_L0 [15: 0] are used as the TxData.
In a case where the bit width of the TxData is 32 bits, 32 bits of the TxData_L0 [31: 0] are used as the TxData.
In a case where the bit width of the TxData is 64 bits, 64 bits of the TxData_L0 [63: 0] are used as the TxData.
Packet Data input to the ports TxData_L1 to L7 is Packet Data of Lane 1 to Lane 7, respectively. Packet Data with a predetermined bit width is input to the ports TxData_L1 to L7 similarly to the port TxData_L0.
Specifications Based on Link Layer
A signal input to each port and a signal output from each port of the Tx-Link Layer signal processing unit 22A indicated by enclosing with a dashed line are defined. The Tx-Link Layer signal processing unit 22A is provided with a plurality of ports in a form corresponding to respective ports on the Tx-Phy Layer signal processing unit 22B side.
The above-mentioned signals output from the respective ports of the Tx-Phy Layer signal processing unit 22B are input to respective ports of the Tx-Link Layer signal processing unit 22A. Furthermore, the above-mentioned signals to be input to the respective ports of the Tx-Phy Layer signal processing unit 22B are output from respective ports of the Tx-Link Layer signal processing unit 22A. The input and output of the Tx-Link Layer signal processing unit 22A correspond to the input and output of the Tx-Phy Layer signal processing unit 22B. Duplicate descriptions will be omitted as appropriate.
That is, the Word clock output from the Tx-Phy Layer signal processing unit 22B is input to a port TxWordClk.
A Packet Data Transfer request is output from a port TxLineValid.
The Packet Data Transfer status notification is input to a port TxLineReady.
Packet Data Valid is output from a port TxDataValid.
The Packet data output status notification is input to a port TxDataReady.
Packet Data is output from a port TxData_L.
An activation request for the physical layer is output from a port TxEnable.
The Phy status notification is input to a port TxReady.
Descriptions presented in
State Transition
Each white block in
For example, in a case where a Standby is output from the link layer in a state during transmission of an Idle Code illustrated in the center, the state of the physical layer makes a transition to a state of Standby Sequence as indicated ahead of arrow #31. An activation request for the physical layer indicating Low input to the port TxEnable corresponds to the Standby and is defined as a trigger signal for causing a transition to the state of Standby Sequence.
The Standby Sequence is a process for causing the states of the transmission unit 22 and the reception unit 31 to be a Standby state, or a signal used for this process.
In a case where the Standby Sequence has been finished, the state of each lane becomes the Standby state as indicated ahead of arrow #32. A state where the state of each lane is High-Z corresponds to the Standby state. In a case where the High-Z state adversely affects the receiving side, it may be changed to a Fixed Low state.
In a case where a Setup is output from the link layer while each lane is in the Standby state, the state of the physical layer is a Fixed Low state (a state of outputting a Low signal from each lane) as indicated ahead of arrow #33. An activation request for the physical layer indicating High input to the port TxEnable corresponds to the Setup and is defined as a trigger signal for causing a transition to the Fixed Low state.
After being in the Fixed Low state, the state of the physical layer becomes a state of the Training Sequence, as indicated ahead of arrow #34.
The training sequence is a process performed in the reception unit 31 to reproduce a clock by performing CDR, establish synchronization, and correct a Data Skew between lanes, or a signal used for the process.
In a case where the Training Sequence has been finished, the state of the physical layer returns to the state of transmitting the Idle Code, as indicated ahead of arrow #35.
In a case where a TX Start is output from the link layer in the state during transmission of the Idle Code, the state of the physical layer makes a transition to a state of outputting a Start Code, as indicated ahead of arrow #36. The Packet Data Transfer request indicating High input to the port TxLineValid corresponds to the TX Start and is defined as a trigger signal for causing a transition to the state of outputting the Start Code.
After the output of the Start Code is finished, the state of the physical layer becomes a state of outputting a Data Symbol as indicated ahead of arrow #37. The Data Symbol is a signal obtained by subjecting Packet Data to a predetermined process such as 8B10B encoding.
As indicated by arrow #38, Packet Data is output from the Tx-Phy Layer signal processing unit 22B to the transmission line while Data Valid is output from the link layer. Packet Data Valid indicating High input to the port TxDataValid corresponds to the Data Valid and is defined as a trigger signal for outputting Packet Data.
In a case where the Data Invalid is output from the link layer in a state during transmission of Packet Data, the state of the physical layer makes a transition to a state of outputting a Pad Code as indicated ahead of arrow #39. Packet Data Valid indicating Low input to the port TxDataValid corresponds to the Data Invalid and is defined as a trigger signal for causing a transition to the state of outputting the Pad Code.
As indicated by arrow #40, the Pad Code is output from the Tx-Phy Layer signal processing unit 22B to the transmission line while Data Invalid is output from the link layer.
In a case where Data Valid is output from the link layer in a state during transmission of the Pad Code, the state of the physical layer returns to the state of outputting the Data Symbol (Packet Data) as indicated ahead of arrow #41.
In a case where a TX End is output from the link layer in a state during transmission of Packet Data, the state of the physical layer makes a transition to a state of outputting an End Code, as indicated ahead of arrow #42. The Packet Data Transfer request indicating Low input to the port TxLineValid corresponds to the TX End and is defined as a trigger signal for causing a transition to the state of outputting the End Code.
In a case where the TX End is output from the link layer in a state during transmission of the Pad Code, similarly, the state of the physical layer makes a transition to the state of outputting the End Code as indicated ahead of arrow #43.
In a case where the output of the End Code has been finished, the state of the physical layer makes a transition to a state of outputting a Deskew Code as indicated ahead of arrow #44.
In a case where the output of the Deskew Code has been finished, the state of the physical layer returns to the state of transmitting the Idle Code as indicated ahead of arrow #45.
The respective signals described above are used to implement the transitions as described above.
It is possible to express two trigger signals for Standby and Setup by the activation request for the physical layer, which is one signal input to the port TxEnable.
Furthermore, it is possible to express two trigger signals for TX Start and TX End by the Packet Data Transfer request, which is one signal input to the port TxLineValid.
Moreover, it is possible to express two trigger signals for Data Valid and Data Invalid by Packet Data Valid, which is one signal input to the port TxDataValid.
With such definitions performed, the Tx-Link Layer signal processing unit 22A as the link layer can control output of the Training Sequence and Standby Sequence, output of the Start Code and End Code, and output of the Pad Code of the SLVS-EC standard by using the trigger signals. The Tx-Link Layer signal processing unit 22A can control output of the Pad Code during data transfer, which is a feature of the SLVS-EC standard, by using a trigger signal.
A state of the physical layer (state of the Tx-Phy Layer signal processing unit 22B) is controlled according to the state transition diagram as illustrated in
Timing Chart
The top row of
The bottom row of
In a case where the training sequence has been completed, the state of the Tx-Link Layer signal processing unit 22A becomes a state where Packet Data can be output after a Blanking state.
As illustrated in the second row, at time t1, the Packet Data Transfer status notification output from the port TxLineReady of the Tx-Phy Layer signal processing unit 22B becomes High.
The Packet Data Transfer Sequence is started at time t2 when output of the port TxLineReady is High and the Packet Data Transfer request input to the port TxLineValid of the Tx-Phy Layer signal processing unit 22B becomes High as illustrated in the third row. The Start Code is output to the transmission line at the timing at time t2 and thereafter.
Furthermore, as illustrated in the fifth row, at time t2, the Packet Data Valid input to the port TxDataValid of the Tx-Phy Layer signal processing unit 22B becomes High. As illustrated in the sixth row, Packet Data is input from the Tx-Link Layer signal processing unit 22A to the Tx-Phy Layer signal processing unit 22B.
Thus, the TxData input from the Tx-Link Layer signal processing unit 22A after the output of the StartCode is completed can be received by the Tx-Phy Layer signal processing unit 22B.
As illustrated in the fourth row, at time t3 after it becomes possible to receive Packet Data, the Packet data output status notification output from the port TxDataReady of the Tx-Phy Layer signal processing unit 22B becomes High.
At time t3 and thereafter, output of the port TxDataReady is High and input to the port TxDataValid is High. The TxData in this state is valid data.
Thereafter, TxData in a state where input to the port TxLineValid is High, output of the port TxDataReady is High, and input to the port TxDataValid is High is received by the Tx-Phy Layer signal processing unit 22B and output to the transmission line.
In the example of
As illustrated in the fifth row, in a case where the input of valid data has been finished at time t4, the Packet Data Valid input to the port TxDataValid of the Tx-Phy Layer signal processing unit 22B becomes Low. Output of the Pad Code starts at the timing at time t4 and thereafter.
In a case where the Packet Data Valid input to the port TxDataValid of the Tx-Phy Layer signal processing unit 22B becomes High at time t5 when the Pad Code is output, packets D5 and D6 that are the TxData are received and sequentially output as the Data Symbol to the transmission line.
As illustrated in the third row, in a case where the Packet Data Transfer request input to the port TxLineValid of the Tx-Phy Layer signal processing unit 22B becomes Low at time t6, the Packet Data Transfer Sequence ends.
At time t7, the output of the port TxDataReady becomes Low, and at the timing at that time and thereafter, the End Code and Deskew Code are output.
Thereafter, it becomes a state that the Idle Code is output.
<Phy Protocol Interface on Receiving Side>
Specifications Based on Physical Layer
A signal input to each port and a signal output from each port on the Rx-Phy Layer signal processing unit 31A side indicated by enclosing with a dashed line are defined. The Rx-Link Layer signal processing unit 31B is provided with a plurality of ports in a form corresponding to respective ports on the Rx-Phy Layer signal processing unit 31A side.
A reference clock is input to a port RxRefClk.
A Word clock is output from a port RxWordClk. The Word clock output from the port RxWordClk is input to a corresponding port of the Rx-Link Layer signal processing unit 31B.
A Packet Data Transfer Sequence reception flag is output from a port RxLineValid. The Packet Data Transfer Sequence reception flag output from the port RxLineValid is input to a corresponding port of the Rx-Link Layer signal processing unit 31B.
Packet Data Valid is output from a port RxDataValid. The Packet Data Valid output from the port RxDataValid is input to a corresponding port of the Rx-Link Layer signal processing unit 31B.
Packet Data is output from a port RxData_L. The Packet Data output from the port RxData_L is input to a corresponding port of the Rx-Link Layer signal processing unit 31B.
An activation request for the physical layer output from a predetermined port of the Rx-Link Layer signal processing unit 31B is input to a port RxEnable.
CDR Lock completion is output from a port RxCDRLock. The CDR Lock completion output from the port RxCDRLock is input to a corresponding port of the Rx-Link Layer signal processing unit 31B.
Symbol Alignment completion is output from a port RxSymbolAlign. The Symbol Alignment completion output from the port RxSymbolAlign is input to a corresponding port of Rx-Link Layer signal processing unit 31B.
Inter-Lane Skew Alignment completion is output from a port RxSkewAlign. The inter-Lane Skew Alignment output from the port RxSkewAlign is input to a corresponding port of the Rx-Link Layer signal processing unit 31B.
Standby Sequence Detect is output from a port RxStandbyDetect. The Standby Sequence Detect output from the port RxStandbyDetect is input to a corresponding port of the Rx-Link Layer signal processing unit 31B.
A 10B8B decoding error detection is output from a port RxDecodeError. The 10B8B decoding error detection output from the port RxDecodeError is input to a corresponding port of the Rx-Link Layer signal processing unit 31B.
As illustrated in
A reference clock is input to the port RxRefClk.
The Word clock for transfer output from the port RxWordClk is used in the Rx-Link Layer signal processing unit 31B to synchronize an SLVS-EC PPI signal. The SLVS-EC PPI signal referred to on the reception unit 31 side is each signal illustrated in
The port RxEnable, port RxCDRLock, port RxSymbolAlign, port RxSkewAlign, port RxStandbyDetect, and port RxDecodeError are ports used to control the start and stop sequence. The port RxCDRLock, port RxSymbolAlign, port RxSkewAlign, port RxStandbyDetect, and port RxDecodeError are also used for notification of the state of the physical layer.
If the activation request for the physical layer input to the port RxEnable is High, it indicates to enable reception of signals of Training Sequence and the like.
If the CDR Lock completion output from the port RxCDRLock is High, it indicates that Clock Data Recovery has been completed.
If the Symbol Alignment completion output from port RxSymbolAlign is High, it indicates that the Symbol Alignment for the effective lane has been completed.
If the Inter-Lane Skew Alignment completion output from the port RxSkewAlign is High, it indicates that the Data Skew between effective lanes has been corrected by receiving the Training Sequence.
If the Standby Sequence Detect output from the port RxStandbyDetect is High, it indicates that the Standby Sequence has been received.
If the 10B8B decode error detection output from the port RxDecodeError is High, it indicates that a Code that does not exist in the 10B8B conversion table has been detected.
As illustrated in
If the Packet Data Transfer Sequence reception flag output from the port RxLineValid is High, it indicates that it is the period of the Packet Data Transfer Sequence.
If Packet Data Valid output from the port RxDataValid is High, it indicates that the Packet Data is valid.
In a case where the bit width of RxData (Packet Data) is wider than eight bits, it is necessary to indicate which eight bits are valid data in 8-bit units. There are four types bit widths of RxData, eight bits, 16 bits, 32 bits, and 64 bits.
In a case where the bit width of RxData is eight bits, one bit of the RxDataValid[0] is used as the Packet Data Valid.
In a case where the bit width of RxData is 16 bits, two bits of the RxDataValid[1: 0] are used as the Packet Data Valid.
In a case where the bit width of RxData is 32 bits, four bits of the RxDataValid[3: 0] are used as the Packet Data Valid.
In a case where the bit width of RxData is 64 bits, eight bits of RxDataValid[7: 0] are used as the Packet Data Valid.
If the zeroth bit (RxDataValid[0]) of the Packet Data Valid is High, it indicates that eight bits of the RxData[7: 0] are valid.
If the first bit (RxDataValid[1]) of the Packet Data Valid is High, it indicates that eight bits of the RxData[15: 8] are valid.
If the second bit (RxDataValid[2]) of the Packet Data Valid is High, it indicates that eight bits of the RxData[23:16] are valid.
If the third bit (RxDataValid[3]) of the Packet Data Valid is High, it indicates that eight bits of the RxData[31:24] are valid.
If the fourth bit (RxDataValid[4]) of the Packet Data Valid is High, it indicates that eight bits of the RxData[39:32] are valid.
If the fifth bit (RxDataValid[5]) of the Packet Data Valid is High, it indicates that eight bits of the RxData[47:40] are valid.
If the sixth bit (RxDataValid[6]) of the Packet Data Valid is High, it indicates that eight bits of the RxData[55:48] are valid.
If the seventh bit (RxDataValid[7]) of the Packet Data Valid is High, it indicates that eight bits of the RxData[63: 56] are valid.
Packet Data input to the port RxData_L0 is Packet Data of Lane 0.
In a case where the bit width of the RxData is eight bits, eight bits of RxData_L0 [7: 0] are used as the RxData.
In a case where the bit width of the RxData is 16 bits, 16 bits of RxData_L0 [15: 0] are used as the RxData.
In a case where the bit width of the RxData is 32 bits, 32 bits of RxData_L0 [31: 0] are used as the RxData.
In a case where the bit width of the RxData is 64 bits, 64 bits of RxData_L0 [63: 0] are used as the RxData.
Packet Data output from the ports RxData_L1 to L7 is Packet Data of Lane 1 to Lane 7, respectively. Packet Data with a predetermined bit width is output from the ports RxData_L1 to L7 similarly to the ports RxData_L0.
Specifications Based on Link Layer
A signal input to each port and a signal output from each port of the Rx-Link Layer signal processing unit 31B indicated by enclosing with a dashed line are defined. The Rx-Link Layer signal processing unit 31B is provided with a plurality of ports in a form corresponding to respective ports on the Rx-Phy Layer signal processing unit 31A side.
The above-mentioned signals output from the respective ports of the Rx-Phy Layer signal processing unit 31A are input to respective ports of the Rx-Link Layer signal processing unit 31B. Furthermore, the above-mentioned signals to be input to the respective ports of the Rx-Phy Layer signal processing unit 31A are output from respective ports of the Rx-Link Layer signal processing unit 31B. The input and output of the Rx-Link Layer signal processing unit 31B correspond to the input and output of the Rx-Phy Layer signal processing unit 31A. Duplicate descriptions will be omitted as appropriate.
That is, the Word clock output from the Rx-Phy Layer signal processing unit 31A is input to the port RxWordClk.
The Packet Data Transfer Sequence reception flag is input to the port RxLineValid.
Packet Data Valid is input to the port RxDataValid.
Packet Data is input to the port RxData_L.
An activation request for the physical layer is output from the port RxEnable.
The CDR Lock completion is input to the port RxCDRLock.
The Symbol Alignment completion is input to the port RxSymbolAlign.
The Inter-Lane Skew Alignment completion is input to the port RxSkewAlign.
The Standby Sequence Detect is input to the port RxStandbyDetect.
A 10B8B decode error detection is input to the port RxDecodeError.
Descriptions represented in
State Transition
For example, in a case where a Standby Sequence is received in a state of outputting RX Ready illustrated in the center to the link layer, the state of the physical layer makes a transition to a state of outputting a Standby Detect to the link layer as indicated ahead of arrow #51. The Standby Sequence Detect indicating High output from port RxStandbyDetect corresponds to the Standby Detect. The Standby Sequence is defined as a trigger signal for causing a transition to the state of outputting the Standby Detect.
In a case where a Standby is output from the link layer in a state of outputting the Standby Detect, the state of the physical layer makes a transition to a state of Power Save as indicated ahead of arrow #52. An activation request for the physical layer indicating Low input to the port RxEnable corresponds to the Standby and is defined as a trigger signal for causing a transition to the state of Power Save.
In a case where a Setup is output from the link layer in the state of Power Save, the state of the physical layer makes a transition to a state of Training Wait as indicated ahead of arrow #53. An activation request for the physical layer indicating High input to the port RxEnable corresponds to the Setup and is defined as a trigger signal for transition to the state of the Training Wait.
In a case where the Training Sequence is received in the state of Training Wait or the state of Standby Detect, the Training Sequence is performed in the Rx-Phy Layer signal processing unit 31A.
In a case where Clock Data Recovery has been completed by performing the Training Sequence, the CDR Lock completion indicating High is output from the port RxCDRLock.
Furthermore, in a case where the Symbol Alignment of the effective lane has been completed, the symbol Alignment completion indicating High is output from the port RxSymbolAlign.
In a case where the Data Skew correction between effective lanes is performed, the Skew Alignment completion between Lanes indicating High is output from the port RxSkewAlign.
In a case where the Training Sequence has been finished, the state of the physical layer returns from the state of Training Wait or the state of Standby Detect to the state of outputting RX Ready, as indicated ahead of arrow #54.
In a case where a Start Code is received in the state of outputting the RX Ready, the state of the physical layer makes a transition to a state of outputting RX Start to the link layer, as indicated ahead of arrow #55. The Packet Data Transfer Sequence indicating High output from the port RxLineValid corresponds to the RX Start. The Start Code is defined as a trigger signal for causing a transition to the state of outputting the RX Start to the link layer.
After the output of the RX Start is finished, the state of the physical layer becomes a state of receiving the Data Symbol and outputting the Data Valid as indicated ahead of arrow #56.
As indicated by arrow #57, the Data Valid is output from the physical layer while the Data Symbol is being received. The Packet Data Valid indicating High output from the port RxDataValid corresponds to the Data Valid.
The Data Symbol is defined as a trigger signal for causing a transition to the state of outputting the Data Valid.
In a case where the Pad Code is received in a state during reception of the Data Symbol, the state of the physical layer makes a transition to a state of outputting Data Invalid to the link layer, as indicated ahead of arrow #58. The Packet Data Valid indicating Low output from the port RxDataValid corresponds to the Data Invalid. The Pad Code is defined as a trigger signal for causing a transition to the state of outputting the Data Invalid to the link layer.
As indicated by arrow #59, the Data Invalid is output from the physical layer while the Pad Code is being received.
In a case where the Data Symbol is received in a state during reception of the Pad Code, the state of the physical layer makes a transition to a state of outputting Data Valid to the link layer, as indicated ahead of arrow #60.
In a case where the End Code is received in a state during reception of the Data Symbol, the state of the physical layer makes a transition to a state of outputting an RX End to the link layer, as indicated ahead of arrow #61. The Packet Data Transfer Sequence reception flag indicating Low output from the port RxLineValid corresponds to the RX End. The End Code is defined as a trigger signal for causing a transition to the state of outputting the RX End to the link layer.
Similarly, in a case where the End Code is received in a state during reception of the Pad Code, the state of the physical layer makes a transition to the state of outputting the RX End to the link layer as indicated ahead of the arrow #62.
In a case where the Deskew Code is received in the state of outputting the RX End, the state of the physical layer makes a transition to a Deskew state as indicated ahead of arrow #63.
In a case where the Idle Code is received in the state of outputting the RX End, the state of the physical layer makes a transition to the state of outputting the RX Ready, as indicated ahead of arrow #64.
Similarly, in a case where the Idle Code is received in the Deskew state, the state of the physical layer makes a transition to the state of outputting RX Ready as indicated ahead of arrow #65.
The respective signals described above are used to implement the transitions as described above.
It is possible to express the two signals of Standby and Setup by the activation request for the physical layer, which is one signal output from the port RxEnable.
Furthermore, it is possible to express the two signals of RX Start and RX End by a Packet Data Transfer request, which is one signal output from the port RxLineValid.
Moreover, it is possible to express the two signals of Data Valid and Data Invalid by Packet Data Valid, which is one signal output from the port RxDataValid.
By making such definitions, the Rx-Phy Layer signal processing unit 31A as the physical layer can express output of the Training Sequence and Standby Sequence, output of the Start Code and End Code, and output of the Pad Code of the SLVS-EC standard using the respective signals. The Rx-Link Layer signal processing unit 31B as the link layer can recognize detection of the Training Sequence and Standby Sequence and completion of the processing by the Sequence on the basis of a signal supplied from the Rx-Phy Layer signal processing unit 31A.
The state of the physical layer (the state of the Rx-Phy Layer signal processing unit 31A) is controlled according to a state transition diagram as illustrated in
Timing Chart
The top row of
The second row of
In a case where the input to the port RxEnable is set to High at time t31 as illustrated in the third row and CDR Lock (reproduction of clock) has been completed at time t32, the CDR Lock completion output from the port RxCDRLock becomes high as illustrated in the fourth row.
As illustrated in the fifth row, at time t32 and thereafter, the Word clock synchronized with data is output from the port RxWordClk.
As illustrated in the sixth row, at time t33 when the Packet Data Transfer Sequence (StartCode) is received by the Rx-Phy Layer signal processing unit 31A, the Packet Data Transfer Sequence reception flag output from the port RxLineValid becomes High.
At time t33 and thereafter, various processes of the physical layer including a process of decoding Packet Data from Data Symbol and a process of excluding control codes and Stuffing and the like from the Packet Data are performed in the Rx-Phy Layer signal processing unit 31A.
Payload Data extracted from the Packet Data by processing of the physical layer is output from the port RxData_L as RxData. As illustrated in the seventh row, the Packet Data Valid output from the port RxDataValid is High during a period in which the RxData is output.
In the example of
During a period from time t35 to time 36 during which the Pad Code is being received, the output of the port RxDataValid becomes Low.
In a case where the Packet Data Transfer Sequence is finished (in a case where the End Code is received), the output of the port RxLineValid becomes Low at time t37 as illustrated in the sixth row. Thereafter, the reception of the Idle Code will continue.
A of
As illustrated in A of
Furthermore, as illustrated in B of
A in
As illustrated in A of
Furthermore, as illustrated in B of
Thus, by defining the specifications related to the interface between the link layer and the physical layer in the SLVS-EC standard, it is possible to separately mount the signal processing unit that performs signal processing of the link layer and the signal processing unit that performs signal processing of the physical layer.
Furthermore, by separating the signal processing unit that performs signal processing of the link layer and the signal processing unit that performs signal processing of the physical layer, it is possible to connect to other transmission standard. The other transmission standard include, for example, CSI-2 standard of Mobile Industry Processor Interface (MIPI).
For example, in a case where the Link Layer signal processing unit of the other transmission standard in
In a case where the Link Layer signal processing unit of the other transmission standard and the Phy Layer signal processing unit of the SLVS-EC standard in
For example, in a case where the Link Layer signal processing unit of the SLVS-EC standard and the Phy Layer signal processing unit of the other transmission standard in
Furthermore, in a case where the Link Layer signal processing unit of the SLVS-EC standard and the Phy Layer signal processing unit of the other transmission standard in
Thus, mounting is possible such that the signal processing unit that performs signal processing of the link layer of the SLVS-EC standard and the signal processing unit that performs signal processing of the physical layer of the other transmission standard are connected, and conversely, the signal processing unit that performs signal processing of the link layer of the other transmission standard and the signal processing unit that performs signal processing of the physical layer of the SLVS-EC standard are connected.
Since the signal processing of the physical layer of the SLVS-EC standard is signal processing using differential signals that multiplex the clock, by using the latter mounting in particular, it is possible to secure a transmission distance while using processing of the other transmission standard as signal processing of the link layer.
<<SLVS-EC Standard>>
Here, the SLVS-EC standard will be described.
<Frame Format>
An effective pixel area A1 is an area of effective pixels of an image of one frame captured by the imaging unit 21. On the left side of the effective pixel area A1, a margin area A2 is set in which the number of pixels in a vertical direction is the same as the number of pixels in the vertical direction of the effective pixel area A1.
On an upper side of the effective pixel area A1, a front dummy area A3 is set in which the number of pixels in a horizontal direction is the same as the number of pixels in the horizontal direction of the entire effective pixel area A1 and margin area A2. In the example of
The rear dummy area A4 is set below the effective pixel area A1 in which the number of pixels in the horizontal direction is the same as the number of pixels in the horizontal direction of the entire effective pixel area A1 and margin area A2.
An image data area A11 includes the effective pixel area A1, the margin area A2, the front dummy area A3, and the rear dummy area A4.
A header is added before each line constituting the image data area A11, and a Start Code is added before the header. Furthermore, a footer is optionally added after each line constituting the image data area A11, and a control code as described later such as End Code is added after the footer. In a case where the footer is not added, a control code such as End Code is added after each line constituting the image data area A11.
Every time an image of one frame captured by the imaging unit 21 is transmitted from the image sensor 11 to the DSP 12, the entire data in the format illustrated in
An upper band in
One packet is formed by adding the header and the footer to the payload in which pixel data for one line is stored. As described in detail later, the header includes additional information of the pixel data stored in the payload, such as Frame Start, Frame End, Line Valid, Line Number, and ECC. At least a Start Code and an End Code that are control codes are added to each packet.
Thus, by employing the format in which the pixel data constituting an image of one frame is transmitted for every line, additional information such as the header and control codes such as the Start Code and the End Code can be transmitted during a blanking period of every line.
<Configuration of Transmission Unit 22 and Reception Unit 31>
A configuration indicated by enclosing with a dashed line on the left side of
A configuration illustrated above the solid line L2 is a configuration of the link layer, and a configuration illustrated below the solid line L2 is a configuration of the physical layer. In the transmission unit 22, a configuration illustrated above the solid line L2 corresponds to the Tx-Link Layer signal processing unit 22A as a configuration for performing signal processing of the link layer, and a configuration illustrated below the solid line L2 corresponds to the Tx-Phy Layer signal processing unit 22B as a configuration for performing signal processing of the physical layer.
Signal exchange between the Tx-Link Layer signal processing unit 22A and the Tx-Phy Layer signal processing unit 22B is defined in a form as described with reference to
Furthermore, in the reception unit 31, a configuration illustrated below the solid line L2 corresponds to the Rx-Phy Layer signal processing unit 31A as a configuration for performing signal processing of the physical layer, and a configuration illustrated above the solid line L2 corresponds to the Rx-Link Layer signal processing unit 31B as a configuration for performing signal processing of the link layer.
Signal exchange between the Rx-Phy Layer signal processing unit 31A and the Rx-Link Layer signal processing unit 31B is defined in a form as described with reference to
Note that a configuration illustrated above the solid line L1 is a configuration of the application layer. A system control unit 51, a frame data input unit 52, and a register 53 are implemented in the imaging unit 21.
The system control unit 51 communicates with the LINK-TX protocol management unit 61 of the transmission unit 22 and controls transmission of image data by providing information regarding the frame format and the like.
The frame data input unit 52 captures an image in response to an instruction or the like from the user, and supplies data of each pixel constituting the image obtained by image-capturing to a Pixel to Byte conversion unit 62 of the transmission unit 22.
The register 53 stores information such as the bit depth and the number of Lanes for Pixel to Byte conversion. Transmission processing of image data is performed according to the information stored in the register 53.
Furthermore, a frame data output unit 141, a register 142, and a system control unit 143 in the configuration of the application layer are implemented in the image processing unit 32.
The frame data output unit 141 generates and outputs an image of one frame on the basis of the pixel data of each line supplied from the reception unit 31. Various processes are performed using the image output from the frame data output unit 141.
The register 142 stores various set values related to reception of image data, such as the bit depth and the number of Lanes for Byte to Pixel conversion. A reception process of image data is performed according to information stored in the register 142.
The system control unit 143 communicates with the LINK-RX protocol management unit 121 and controls a sequence such as a mode change.
<Configuration of Link Layer of Transmission Unit 22>
First, a configuration of the link layer of the transmission unit 22 (configuration of the Tx-Link Layer signal processing unit 22A) will be described.
The transmission unit 22 is provided with a LINK-TX protocol management unit 61, a Pixel to Byte conversion unit 62, a payload ECC insertion unit 63, a packet generation unit 64, and a lane distribution unit 65 as a configuration of the link layer. The LINK-TX protocol management unit 61 includes a state control unit 71, a header generation unit 72, a data insertion unit 73, and a footer generation unit 74.
The state control unit 71 of the LINK-TX protocol management unit 61 manages the state of the link layer of the transmission unit 22.
The header generation unit 72 generates the header to be added to the payload in which pixel data for one line is stored, and outputs the header to the packet generation unit 64.
As described above, one entire packet includes the header and the payload data that is pixel data for one line. The footer may be added to the packet. The header includes header information and Header ECC.
The header information includes Frame Start, Frame End, Line Valid, Line Number, and Reserved. The content and information amount of each piece of information are illustrated in
The Frame Start is one-bit information indicating the beginning of a frame. A value of 1 is set to the Frame Start of the header of a packet used for transmitting pixel data of the first line of the image data area A11 in
The Frame End is one-bit information indicating the end of the frame. A value of 1 is set to Frame End of the header of a packet including pixel data of an end line of the effective pixel area A1 in the payload, and a value of 0 is set to Frame End of the header of a packet used for transmitting pixel data of another line.
The Frame Start and Frame End are frame information which is information regarding the frame.
The Line Valid is 1-bit information representing whether or not a line of pixel data stored in the payload is a line of effective pixels. A value of 1 is set to Line Valid of the header of a packet used for transmitting pixel data of a line in the effective pixel area A1, and a value of 0 is set to Line Valid of the header of a packet used for transmitting pixel data of another line.
Line Number is 13-bit information representing the line number of a line formed by pixel data stored in the payload.
The Line Valid and Line Number are line information that is information regarding the line.
The Reserved is a 32-bit area for expansion. The total amount of data in the header information is six bytes.
As illustrated in
That is, the header of one packet includes three sets of the same header information and CRC code. The total amount of data in the entire header is 24 bytes in total combining eight bytes for a first set of header information and CRC code, eight bytes for a second set of header information and CRC code, and eight bytes for a third set of header information and CRC code.
A byte H7, which is a first one byte of the eight bytes constituting the header, includes one bit each of Frame Start, Frame End, and Line Valid, and the first to fifth bits among 13 bits of the Line Number, in order from the first bit. Furthermore, a byte H6, which is a second one byte, includes the sixth to 13th bits among the 13 bits of the Line Number.
From a byte H5, which is a third one byte, to a byte H2, which is a sixth one-byte, are Reserved. A byte H1, which is a seventh one byte, and a byte H0, which is an eighth one byte, include each bit of the CRC code.
Returning to the description of
Furthermore, the header generation unit 72 applies the header information to a generation polynomial to calculate the CRC code. The generation polynomial of the CRC code to be added to the header information is expressed by, for example, following equation (1).
[Equation 1]
CRC16=X16+X15+X2+1 (1)
The header generation unit 72 generates a set of header information and a CRC code by adding the CRC code to the header information, and generates the header by repeatedly arranging three sets of the same header information and CRC code. The header generation unit 72 outputs the generated header to the packet generation unit 64.
The data insertion unit 73 generates data used for stuffing and outputs the data to the Pixel to Byte conversion unit 62 and the lane distribution unit 65. Payload stuffing data, which is the stuffing data supplied to the Pixel to Byte conversion unit 62, is added to pixel data after the Pixel to Byte conversion and is used for adjusting the data amount of pixel data stored in the payload. Furthermore, lane stuffing data, which is stuffing data supplied to the lane distribution unit 65, is added to data after lane assignment and used for adjusting the amount of data between lanes.
The footer generation unit 74 calculates a 32-bit CRC code by appropriately applying payload data to the generation polynomial according to control by the system control unit 51, and outputs the CRC code obtained by calculation as a footer to the packet generation unit 64. The CRC code generation polynomial added as a footer is expressed by, for example, following Equation (2).
[Equation 2]
CRC32=X32+X31+X4+X3+X+1 (2)
The Pixel to Byte conversion unit 62 acquires pixel data supplied from the frame data input unit 52, and performs Pixel to Byte conversion that converts the data of each pixel into data in one-byte units. For example, the pixel value (RGB) of each pixel of the image captured by the imaging unit 21 is represented by the bit depth of any one of eight bits, 10 bits, 12 bits, 14 bits, and 16 bits.
Data[0] represents LSB, and Data[7] with the largest number represents MSB. As illustrated by a white arrow, in this case, eight bits of Data[7] to [0] representing a pixel value of pixel N are converted into a Byte N constituted of Data[7] to [0]. In a case where the pixel value of each pixel is represented by eight bits, the number of pieces of data in byte units after the Pixel to Byte conversion is the same as the number of pixels.
In this case, 10 bits of Data[9] to [0] representing a pixel value of pixel N are converted into Byte 1.25*N constituted of Data[9] to [2].
For pixels N+1 to N+3, similarly, 10 bits of Data[9] to [0] representing respective pixel values are converted into Byte 1.25*N+1 to Byte 1.25*N+3 constituted of Data[9] to [2]. Furthermore, Data[1] and Data[0], which are respective lower bits of pixels N to N+3, are collected and converted into Byte 1.25*N+4.
In a case where the pixel value of each pixel is represented by 10 bits, the number of pieces of data in byte units after the Pixel to Byte conversion is 1.25 times the number of pixels.
In this case, 12 bits of Data[11] to [0] representing a pixel value of pixel N are converted into Byte 1.5*N constituted of Data[11] to [4].
For a pixel N+1, similarly, 12 bits of Data[11] to [0] representing a pixel value of pixel N+1 are converted into Byte 1.5*N+1 constituted of Data[11] to [4]. Furthermore, Data[3] to [0], which are respective lower bits of pixel N and pixel N+1, are collected and converted into Byte 1.5*N+2. In a case where the pixel value of each pixel is represented by 12 bits, the number of pieces of data in byte units after the Pixel to Byte conversion is 1.5 times the number of pixels.
In this case, 14 bits of Data[13] to [0] representing a pixel value of pixel N are converted into Byte 1.75*N constituted of Data[13] to [6].
For pixels N+1 to N+3, similarly, 14 bits of Data[13] to [0] representing respective pixel values are converted into Byte 1.75*N+1 to Byte 1.75*N+3 constituted of Data[13] to [6]. Furthermore, the remaining bits of the bits of pixels N to N+3 are collected in order from the lower bit, for example, Data[5] to [0], which are bits of pixel N, and Data[5] and [4], which are bits of pixel N+1 are converted into Byte 1.75*N+4.
Similarly, Data[3] to [0], which are bits of pixel N+1, and Data[5] to [2], which are bits of pixel N+2, are converted into Byte 1.75*N+5, and Data[1] and [0], which are bits of pixel N+2, and Data[5] to [0], which are bits of pixel N+3, are converted into Byte 1.75*N+6. In a case where the pixel value of each pixel is represented by 14 bits, the number of pieces of data in byte units after the Pixel to Byte conversion is 1.75 times the number of pixels.
In this case, 16 bits of Data[15] to [0] representing a pixel value of pixel N are converted into Byte 2*N constituted of Data[15] to [8] and Byte 2*N+1 constituted of Data[7] to [0]. In a case where the pixel value of each pixel is represented by 16 bits, the number of pieces of data in byte units after the Pixel to Byte conversion is twice the number of pixels.
The Pixel to Byte conversion unit 62 of
The pixel data after the Pixel to Byte conversion is grouped into a predetermined number of groups in the order obtained by the conversion. In the example of
Pixel data including MSB of pixel P4 and pixel data thereafter are also assigned to respective groups of the group 5 and thereafter in order. When a certain pixel data is assigned to the group 15, pixel data thereafter is sequentially assigned to respective groups of the group 0 and thereafter. Note that among the blocks representing pixel data, blocks with three dashed lines added inside represent pixel data in byte units generated so as to include LSBs of pixels N to N+3 during the Pixel to Byte conversion.
In the link layer of the transmission unit 22, after grouping is performed in this manner, processing is performed in parallel for the pixel data at the same position in each group at every interval defined by a clock signal. That is, in a case where pixel data is assigned to 16 groups as illustrated in
As described above, the payload of one packet includes one line of pixel data. The entire pixel data illustrated in
After the pixel data for one line is grouped, the payload stuffing data is added so that respective data lengths of the groups are the same. The payload stuffing data is one byte of data.
In the example of
LineLength in Equation (3) represents the number of pixels of a line, and BitPix represents the bit depth representing the pixel value of one pixel. PayloadStuffing represents the number of pieces of payload stuffing data.
In a case where pixel data is assigned to 16 groups as illustrated in
In the example of
In the example of
Payload data having such a configuration is supplied from the Pixel to Byte conversion unit 62 to the payload ECC insertion unit 63.
The payload ECC insertion unit 63 calculates an error correction code used for error correction of payload data on the basis of the payload data supplied from the Pixel to Byte conversion unit 62, and a parity that is the error correction code obtained by the calculation is inserted in the payload data. As the error correction code, for example, a Reed-Solomon code is used. Note that the insertion of the error correction code is an option, and for example, it is possible to only perform either of the insertion of the parity by the payload ECC insertion unit 63 and the addition of a footer by the footer generation unit 74.
The payload data illustrated in
In the example of
As described above, in the payload ECC insertion unit 63, basically, the two-byte parity is generated on the basis of the 224 pieces of pixel data, and inserted following the 224 pieces of pixel data.
Furthermore, in the example of
In a case where 16×M, which is the number of pieces of pixel data and payload stuffing data following a certain Basic Block, is less than 224, then two bytes of the parity are obtained on the basis of the remaining 16×M blocks (pixel data and payload stuffing data). Furthermore, the obtained two-byte parity is inserted following the payload stuffing data, and an Extra Block includes 16×M blocks and the two-byte parity.
The payload ECC insertion unit 63 outputs the payload data with a parity inserted to the packet generation unit 64. In a case where the parity is not inserted, the payload data supplied from the Pixel to Byte conversion unit 62 to the payload ECC insertion unit 63 is output to the packet generation unit 64 as it is.
The packet generation unit 64 generates a packet by adding the header generated by the header generation unit 72 to the payload data supplied from the payload ECC insertion unit 63. In a case where a footer is generated by the footer generation unit 74, the packet generation unit 64 also adds the footer to the payload data.
Twenty-four blocks indicated by characters H7 to H0 represent the header information or the header data in byte units, which is the CRC code of the header information. As described with reference to
For example, header data H7 to H2 are header information (six bytes), and header data H1 and H0 are CRC codes (two bytes).
In the example of
Furthermore, in the example of
Four blocks indicated by letters F3 to F0 represent footer data, which is a four-byte CRC code generated as a footer. In the example of
In the example of
The packet generation unit 64 outputs packet data, which is data constituting one packet generated in this manner, to the lane distribution unit 65. The lane distribution unit 65 is supplied with packet data including header data and payload data, packet data constituted of the header data, the payload data, and footer data, or packet data constituted of the header data and the payload data in which a parity is inserted. The packet structure of
The lane distribution unit 65 assigns the packet data supplied from the packet generation unit 64 to each lane used for data transmission in Lanes 0 to 7 in order from the first data.
Here, an assignment of packet data (
In this case, each piece of header data constituting the header data H7 to H0 repeated three times is assigned to the Lanes 0 to 7 in order from the first header data. When a certain piece of header data is assigned to the Lane 7, header data thereafter is assigned to respective lanes of the Lane 0 and thereafter in order. Three identical pieces of header data will be assigned to each lane of the Lanes 0 to 7.
Furthermore, the payload data is assigned to the Lanes 0 to 7 in order from the first payload data. When a certain piece of payload data is assigned to the Lane 7, payload data thereafter is assigned to respective lanes of the Lane 0 and thereafter in order.
Pieces of footer data F3 to F0 are assigned to each lane in order from the first footer data. In the example of
Blocks illustrated in black represent lane stuffing data generated by the data insertion unit 73. The lane stuffing data is assigned to the lane with a small number of pieces of data so that packet data for one packet is assigned to each lane and then a data length assigned to each lane is the same. The lane stuffing data is data of one byte. In the example of
The number of pieces of lane stuffing data in a case where the packet data is constituted of header data, payload data, and footer data is represented by following Equation (5).
[Equation 5]
LaneStuffing=LaneNum−((PayloadLength+FooterLength)%LaneNum) (5)
LaneNum in Equation (5) represents the number of lanes, and PayloadLength represents a payload data length (bytes). Furthermore, FooterLength represents a footer length (bytes).
Furthermore, the number of pieces of lane stuffing data in a case where the packet data includes header data and payload data with a parity inserted is represented by following Equation (6). ParityLength in Equation (6) represents the total number of bytes of the parity included in the payload.
[Equation 6]
LaneStuffing=LaneNum−((PayloadLength+ParityLength)%LaneNum) (6)
An example of assignment of packet data in a case where data transmission is performed using the six lanes of the Lanes 0 to 5 is illustrated ahead of white arrow #2.
In this case, each piece of header data constituting the header data H7 to H0 repeated three times is assigned to the Lanes 0 to 5 in order from the first header data. When a certain piece of header data is assigned to the Lane 5, header data thereafter is assigned to respective lanes of the Lane 0 and thereafter in order. Four pieces of header data will be assigned to each lane of the Lanes 0 to 5.
Furthermore, the payload data is assigned to the Lanes 0 to 5 in order from the first payload data. When a certain piece of payload data is assigned to the Lane 5, payload data thereafter is assigned to respective lanes of the Lane 0 and thereafter in order.
Pieces of footer data F3 to F0 are assigned to each lane in order from the first footer data. In the example of
An example of packet data assignment in a case where data transmission is performed using four lanes of the Lanes 0 to 3 is illustrated ahead of white arrow #3.
In this case, each piece of header data constituting the header data H7 to H0 repeated three times is assigned to the Lanes 0 to 3 in order from the first header data. When a certain piece of header data is assigned to the Lane 3, header data thereafter is assigned to respective lanes of the Lane 0 and thereafter in order. Six pieces of header data will be assigned to each lane of the Lanes 0 to 3.
Furthermore, the payload data is assigned to the Lanes 0 to 3 in order from the first payload data. When a certain piece of payload data is assigned to the Lane 3, payload data thereafter is assigned to respective lanes of the Lane 0 and thereafter in order.
Pieces of footer data F3 to F0 are assigned to each lane in order from the first footer data. In the example of
The lane distribution unit 65 outputs the packet data assigned to each lane in this manner to the physical layer. Hereinafter, a case where data is transmitted using eight lanes of the Lanes 0 to 7 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.
<Configuration of Physical Layer of Transmission Unit 22>
Next, a configuration of the physical layer of the transmission unit 22 (configuration of the Tx-Phy Layer signal processing unit 22B) will be described.
The transmission unit 22 is provided with a PHY-TX state control unit 81, a clock generation unit 82, and signal processing units 83-0 to 83-N as a configuration of the physical layer. The signal processing unit 83-0 includes a control code insertion unit 91, an 8B10B symbol encoder 92, a synchronization unit 93, and a transmission unit 94. Packet data assigned to the Lane 0 output from the lane distribution unit 65 is input to the signal processing unit 83-0, and packet data assigned to the Lane 1 is input to the signal processing unit 83-1. Furthermore, the packet data assigned to the Lane N is input to the signal processing unit 83-N.
In this manner, the physical layer of the transmission unit 22 is provided with the same number of signal processing units 83-0 to 83-N as the number of lanes, and processes of packet data transmitted using respective lanes are performed in parallel in the signal processing units 83-0 to 83-N, respectively. A configuration of the signal processing unit 83-0 will be described, but the signal processing units 83-1 to 83-N also have similar configurations.
The PHY-TX state control unit 81 controls respective units of the signal processing units 83-0 to 83-N. For example, timing of each processing performed by the signal processing units 83-0 to 83-N is controlled by the PHY-TX state control unit 81.
The clock generation unit 82 generates a clock signal and outputs the clock signal to each synchronization unit 93 of the signal processing units 83-0 to 83-N.
The control code insertion unit 91 of the signal processing unit 83-0 adds a control code to packet data supplied from the lane distribution unit 65. The control code is a code represented by one symbol selected from a plurality of types of symbols prepared in advance or by a combination of the plurality of types of symbols. Each symbol inserted by the control code insertion unit 91 is eight-bit data. By performing 8B10B conversion in the circuit in the subsequent stage, one symbol inserted by the control code insertion unit 91 becomes 10-bit data. On the other hand, in the reception unit 31, 10B8B conversion is performed on the received data as described later, but each symbol before the 10B8B conversion included in the received data is 10-bit data, and each symbol after the 10B8B conversion becomes eight-bit data.
The control codes include Idle Code, Start Code, End Code, Pad Code, Sync Code, Deskew Code, and Standby Code.
The Idle Code is a group of symbols that are repeatedly transmitted during a period other than the time when packet data is transmitted. The Idle Code is represented by D00.0 (00000000) of D Character that is an 8B10B Code.
The Start Code is a group of symbols indicating the start of a packet. As described above, the Start Code is added before the packet. The Start Code is represented by four symbols, K28.5, K27.7, K28.2, and K27.7, which are a combination of three types of K Characters. The value of each of K Characters is illustrated in
The End Code is a group of symbols indicating the end of a packet. As mentioned above, the End Code is added after the packet. The End Code is represented by four symbols, K28.5, K29.7, K30.7, and K29.7, which are a combination of three types of K Characters.
The Pad Code is a group of symbols inserted in payload data to fill the difference between a pixel data band and a PHY transmission band. The pixel data band is a transmission rate of 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 pixel data transmitted from the transmission unit 22 and input to the reception unit 31. The Pad Code is represented by four symbols, K23.7, K28.4, K28.6, and K28.3, which are a combination of four types of K Characters.
The upper part of
The Pad Code is inserted into the payload data assigned to the Lane 0 by the control code insertion unit 91 of the signal processing unit 83-0. Similarly, the Pad Code is inserted in the payload data assigned to the other lanes in the signal processing units 83-1 to 83-N at the same timing. The number of Pad Codes is determined on the basis of the difference between the pixel data band and the PHY transmission band, the frequency of the clock signal generated by the clock generation unit 82, and the like.
In this manner, the Pad Code is inserted to adjust the difference between the two bands in a case where the pixel data band is narrow and the PHY transmission band is wide. For example, by inserting the Pad Code, the difference between the pixel data band and the PHY transmission band is adjusted so as to be within a certain range.
Returning to the description of
The Deskew Code is a Data Skew between lanes, that is, a group of symbols used for correcting a deviation in reception timing of data received in each lane of the reception unit 31. The Deskew Code is represented by two symbols, K28.5 and Any **. The correction of the Data Skew between lanes using the Deskew Code will be described later.
The Standby Code is a group of symbols used to notify the reception unit 31 that output of the transmission unit 22 is in a state of High-Z (high impedance) or the like and data transmission is no longer performed. That is, the Standby Code is transmitted to the reception unit 31 when transmission of packet data is finished and the Standby state is reached. The Standby Code is represented by two symbols, K28.5 and Any **.
The control code insertion unit 91 outputs packet data to which such a control code is added to the 8B10B symbol encoder 92.
As illustrated in
The 8B10B symbol encoder 92 performs 8B10B conversion on the packet data (packet data to which a control code is added) supplied from the control code insertion unit 91, and outputs the packet data converted into data in 10-bit units to the synchronization unit 93.
The synchronization unit 93 outputs each bit of the packet data supplied from the 8B10B symbol encoder 92 to the transmission unit 94 according to the clock signal generated by the clock generation unit 82. Note that the transmission unit 22 may not be provided with the synchronization unit 93. In this case, the packet data output from the 8B10B symbol encoder 92 is supplied to the transmission unit 94 as it is.
The transmission unit 94 transmits the packet data supplied from the synchronization unit 93 to the reception unit 31 via the transmission line constituting the Lane 0. In a case where data transmission is performed using eight lanes, the packet data is transmitted to the reception unit 31 also using the transmission lines constituting the Lanes 1 to 7.
<Configuration of Physical Layer of Reception Unit 31>
Next, a configuration of the physical layer of the reception unit 31 (configuration of the Rx-Phy Layer signal processing unit 31A) will be described.
The reception unit 31 is provided with a PHY-RX state control unit 101 and signal processing units 102-0 to 102-N as a configuration of the physical layer. The signal processing unit 102-0 includes a reception unit 111, a clock generation unit 112, a synchronization unit 113, a symbol synchronization unit 114, a 10B8B symbol decoder 115, a skew correction unit 116, and a control code removal unit 117. The packet data transmitted via the transmission line constituting the Lane 0 is input to the signal processing unit 102-0, and the packet data transmitted via the transmission line constituting the Lane 1 is input to the signal processing unit 102-1. Furthermore, the packet data transmitted via the transmission line constituting Lane N is input to the signal processing unit 102-N.
In this manner, the physical layer of the reception unit 31 is provided with the same number of signal processing units 102-0 to 102-N as the number of lanes, and processes of packet data transmitted using respective lanes are performed in parallel in the signal processing units 102-0 to 102-N, respectively. The configuration of the signal processing unit 102-0 will be described, but the signal processing units 102-1 to 102-N also have similar configurations.
The reception unit 111 receives a signal representing the packet data transmitted from the transmission unit 22 via the transmission line constituting the Lane 0, and outputs the signal to the clock generation unit 112.
The clock generation unit 112 performs bit synchronization by detecting an edge of the signal supplied from the reception unit 111, and generates a clock signal on the basis of detection cycles of edges. The clock generation unit 112 outputs the signal supplied from the reception unit 111 to the synchronization unit 113 together with the clock signal.
The synchronization unit 113 samples signals received by the reception unit 111 according to the clock signal generated by the clock generation unit 112, and outputs packet data obtained by the sampling to the symbol synchronization unit 114. The function of the clock data recovery (CDR) is achieved by the clock generation unit 112 and the synchronization unit 113.
The symbol synchronization unit 114 performs symbol synchronization by detecting a control code included in the packet data or by detecting a part of symbols included in the control code. For example, the symbol synchronization unit 114 detects the K28.5 symbols included in the Start Code, the End Code, and the Deskew Code, and performs symbol synchronization. The symbol synchronization unit 114 outputs packet data in 10-bit units representing each symbol to the 10B8B symbol decoder 115.
Furthermore, the symbol synchronization unit 114 performs symbol synchronization by detecting a boundary of symbols included in the 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 115 performs the 10B8B conversion on the packet data in 10-bit units supplied from the symbol synchronization unit 114, and outputs the packet data converted into data in eight-bit units to the skew correction unit 116.
The skew correction unit 116 detects the Deskew Code from the packet data supplied from the 10B8B symbol decoder 115. Information of detection timing of the Deskew Code by the skew correction unit 116 is supplied to the PHY-RX state control unit 101.
Furthermore, the skew correction unit 116 corrects the Data Skew between lanes by matching the timing of the Deskew Code with a timing represented by information supplied from the PHY-RX state control unit 101. Information indicating the latest timing among the Deskew Code timings detected in each of the signal processing units 102-0 to 102-N is supplied from the PHY-RX state control unit 101.
In the example of
In this case, the skew correction unit 116 detects the first Deskew Code, Deskew Code C1, and corrects the first timing of the Deskew Code C1 to match time t1 represented by the information supplied from the PHY-RX state control unit 101. The PHY-RX state control unit 101 supplies information of time t1 when the Deskew Code C1 is detected in the Lane 7, which is the latest timing among the timings when the Deskew Code C1 is detected in each lane of the Lanes 0 to 7.
Furthermore, the skew correction unit 116 detects the second Deskew Code, Deskew Code C2, and corrects the first timing of Deskew Code C2 to match time t2 represented by the information supplied from the PHY-RX state control unit 101. The PHY-RX state control unit 101 supplies information on the time t2 when the Deskew Code C2 is detected in the Lane 7, which is the latest timing among the timings when the Deskew Code C2 is detected in each lane of the Lanes 0 to 7.
By performing similar processing in each of the signal processing units 102-1 to 102-N, the Data Skew between lanes is corrected as indicated ahead of arrow #1 in
The skew correction unit 116 outputs packet data corrected by the Data Skew to the control code removal unit 117.
The control code removal unit 117 removes the control code added to the packet data, and outputs data between the Start Code and the End Code to the link layer as packet data.
The PHY-RX state control unit 101 controls each unit of the signal processing units 102-0 to 102-N to correct the Data Skew between lanes. Furthermore, in a case where the control code is lost due to a transmission error in a predetermined lane, the PHY-RX state control unit 101 adds a control code transmitted in another lane in place of the lost control code, thereby performing error correction for the control code.
<Configuration of Link Layer of Reception Unit 31>
Next, a configuration of the link layer of the reception unit 31 (configuration of the Rx-Link Layer signal processing unit 31B) will be described.
The reception unit 31 is provided with a LINK-RX protocol management unit 121, a lane integration unit 122, a packet separation unit 123, a payload error correction unit 124, and a Byte to Pixel conversion unit 125 as the configuration of the link layer. The LINK-RX protocol management unit 121 includes a state control unit 131, a header error correction unit 132, a data removal unit 133, and a footer error detection unit 134.
The lane integration unit 122 integrates packet data supplied from the signal processing units 102-0 to 102-N of the physical layer by rearranging the packet data in a reverse order of the distribution order to each lane by the lane distribution unit 65 of the transmission unit 22.
For example, in a case where the packet data is distributed by the lane distribution unit 65 as indicated ahead of arrow #1 in
The packet separation unit 123 separates the packet data for one packet integrated by the lane integration unit 122 into packet data constituting header data and packet data constituting payload data. The packet separation unit 123 outputs the header data to the header error correction unit 132 and outputs the payload data to the payload error correction unit 124.
Furthermore, in a case where the packet includes a footer, the packet separation unit 123 separates the data for one packet into packet data constituting header data, packet data constituting payload data, and packet data constituting footer data. The packet separation unit 123 outputs the header data to the header error correction unit 132 and outputs the payload data to the payload error correction unit 124. Furthermore, the packet separation unit 123 outputs the footer data to the footer error detection unit 134.
In a case where a parity is inserted in the payload data supplied from the packet separation unit 123, the payload error correction unit 124 detects an error in the payload data by performing an error correction operation on the basis of the parity, and corrects the detected error. For example, in a case where the parity is inserted as illustrated in
The payload error correction unit 124 outputs the pixel data after error correction obtained by performing error correction for each Basic Block and Extra Block to the Byte to Pixel conversion unit 125. In a case where the parity is not inserted in the payload data supplied from the packet separation unit 123, the payload data supplied from the packet separation unit 123 is output to the Byte to Pixel conversion unit 125 as it is.
The Byte to Pixel conversion unit 125 removes payload stuffing data included in the payload data supplied from the payload error correction unit 124 according to control of the data removal unit 133.
Furthermore, the Byte to Pixel conversion unit 125 performs the Byte to Pixel conversion that converts the data of each pixel in byte units obtained by removing the payload stuffing data into pixel data in eight-bit, 10-bit, 12-bit, 14-bit, or 16-bit units. In the Byte to Pixel conversion unit 125, conversion opposite to the Pixel to Byte conversion by the Pixel to Byte conversion unit 62 of the transmission unit 22 described with reference to
The Byte to Pixel conversion unit 125 outputs pixel data in eight-bit, 10-bit, 12-bit, 14-bit, or 16-bit units obtained by the Byte to Pixel conversion to the frame data output unit 141. In the frame data output unit 141, for example, each line of effective 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 125, and each line is arranged according to the Line Number of the header information, thereby generating an image of one frame.
The state control unit 131 of the LINK-RX protocol management unit 121 manages the state of the link layer of the reception unit 31.
The header error correction unit 132 acquires three sets of header information and CRC code on the basis of the header data supplied from the packet separation unit 123. The header error correction unit 132 performs, for each set of the header information and the CRC code, an error detection operation that is an operation for detecting an error in the header information by using the CRC code of the same set as the header information.
Furthermore, the header error correction unit 132 estimates correct header information on the basis of at least one of an error detection result of the header information of each set or a comparison result of data obtained by the error detection calculation, and outputs header information estimated to be correct and a decoding result. The data obtained by the error detection operation is a value obtained by applying a CRC generation polynomial to the header information. Furthermore, the decoding result is information indicating success or failure of decoding.
The three sets of header information and CRC code are set as a set 1, a set 2, and a set 3, respectively. In this case, the header error correction unit 132 acquires whether or not there is an error in the header information of the set 1 (error detection result) by the error detection calculation for the set 1, and data 1 obtained by the error detection calculation. Furthermore, the header error correction unit 132 acquires whether or not there is an error in the header information of the set 2 by the error detection calculation for the set 2, and data 2 obtained by the error detection calculation. The header error correction unit 132 acquires whether or not there is an error in the header information of the set 3 by the error detection calculation for the set 3, and data 3 obtained by the error detection calculation.
Furthermore, the header error correction unit 132 determines whether or not the data 1 and the data 2 match, whether or not the data 2 and the data 3 match, and whether or not the data 3 and the data 1 match.
For example, in a case where no errors are detected by all error detection operations for set 1, set 2, and set 3 and all comparison results of data obtained by the error detection operation match, the header error correction unit 132 selects information indicating successful decoding as a decoding result. Furthermore, the header error correction unit 132 estimates that all the header information is correct, and selects one of the header information of the set 1, the header information of the set 2, and the header information of the set 3 as output information.
On the other hand, in a case where no errors are detected only by the error detection operation for the set 1, the header error correction unit 132 selects information indicating success of decoding as a decoding result and estimates that the header information of the set 1 is correct, and selects the header information of the set 1 as output information.
Furthermore, in a case where no errors are detected only by the error detection operation for the set 2, the header error correction unit 132 selects information indicating success of decoding as a decoding result and estimates that the header information of the set 2 is correct, and selects the header information of the set 2 as output information.
In a case where no errors are detected only by the error detection operation for the set 3, the header error correction unit 132 selects information indicating success of decoding as a decoding result and estimates that the header information of the set 3 is correct, and selects the header information of the set 3 as output information.
The header error correction unit 132 outputs the decoding result and the output information selected as described above to the register 142 to have them stored. In this manner, the error correction of the header information by the header error correction unit 132 is performed by detecting the header information without an error from a plurality of pieces of header information by using the CRC code and outputting the detected header information.
The data removal unit 133 controls the lane integration unit 122 to remove the lane stuffing data, and controls the Byte to Pixel conversion unit 125 to remove the payload stuffing data.
The footer error detection unit 134 acquires a CRC code stored in the footer on the basis of the footer data supplied from the packet separation unit 123. The footer error detection unit 134 performs an error detection operation using the acquired CRC code and detects an error in the payload data. The footer error detection unit 134 outputs an error detection result to have it stored in the register 142.
<Operation of Image Sensor 11 and DSP 12>
Next, a series of processes of the transmission unit 22 and the reception unit 31 having the configurations as above will be described.
First, operation of an imaging device having the transmission system 1 will be described with reference to a flowchart of
In step S1, the imaging unit 21 of the image sensor 11 performs imaging. The frame data input unit 52 (
In step S2, a data transmission process is performed by the transmission unit 22. The data transmission process generates a packet in which pixel data for one line is stored in a payload, and packet data constituting the packet is transmitted to the reception unit 31. The data transmission process will be described later with reference to a flowchart of
In step S3, a data reception process is performed by the reception unit 31. By the data reception process, the packet data transmitted from the transmission unit 22 is received, and the pixel data stored in the payload is output to the image processing unit 32. The data reception process will be described later with reference to a flowchart of
The data transmission process performed by the transmission unit 22 in step S2 and the data reception process performed by the reception unit 31 in step S3 are alternately performed for one line of pixel data. That is, when one line of pixel data has been transmitted by the data transmission process, the data reception process is performed, and when one line of pixel data has been received by the data reception process, the data transmission process for the next one line of pixel data is performed. The data transmission process by the transmission unit 22 and the data reception process by the reception unit 31 may be performed temporally in parallel as appropriate. In step S4, the frame data output unit 141 of the image processing unit 32 determines whether or not the transmission-reception of pixel data of all the lines constituting the image of one frame has been finished and, in a case where it is determined that the transmission-reception has not been finished, repeats the processing of step S2 and thereafter.
In a case where it is determined in step S4 that the transmission-reception of pixel data of all lines constituting the image of one frame has been finished, in step 35, the frame data output unit 141 of the image processing unit 32 generates an image of one frame on the basis of the pixel data supplied from the reception unit 31.
In step S6, the image processing unit 32 performs image processing using the image of one frame and finishes the processing.
Next, the data transmission process performed in step S2 of
The processing of steps S11 to S16 is signal processing of the link layer performed by the Tx-Link Layer signal processing unit 22A, and the processing of steps S17 to S19 is signal processing of the physical layer performed by the Tx-Phy Layer signal processing unit 22B.
In step S11, the header generation unit 72 generates header information including Frame Start, Frame End, Line Valid, Line Number, and Reserved.
In step S12, the header generation unit 72 applies the header information to the generation polynomial to calculate the CRC code.
In step S13, the header generation unit 72 generates a set of header information and CRC code by adding a CRC code to the header information, and generates the header by repeatedly arranging three sets of the same header information and CRC code.
In step S14, the Pixel to Byte conversion unit 62 acquires pixel data supplied from the frame data input unit 52 and performs the Pixel to Byte conversion. The Pixel to Byte conversion unit 62 outputs the payload data generated by grouping the pixel data in byte units obtained by the Pixel to Byte conversion, adding the payload stuffing data, and the like. A parity is inserted into the payload data by the payload ECC insertion unit 63 as appropriate.
In step S15, the packet generation unit 64 generates a packet on the basis of the payload data including pixel data for one line and the header generated by the header generation unit 72, and outputs the packet data constituting one packet.
In step S16, the lane distribution unit 65 assigns the packet data supplied from the packet generation unit 64 to a plurality of lanes used for data transmission.
In step S17, the control code insertion unit 91 adds the control code to the packet data supplied from the lane distribution unit 65.
In step S18, the 8B10B symbol encoder 92 performs 8B10B conversion of the packet data to which the control code is added, and outputs the packet data converted into data in 10-bit units.
In step S19, the synchronization unit 93 outputs the packet data supplied from the 8B10B symbol encoder 92 according to the clock signal generated by the clock generation unit 82, and causes the transmission unit 94 to transmit the packet data. The processing of steps S17 to S19 is performed in parallel by the signal processing units 83-0 to 83-N. When the transmission of pixel data for one line is finished, the processing returns to step S2 in
Next, the data reception process performed in step S3 of
The processing of steps S31 to S36 is signal processing of the physical layer performed by the Rx-Phy Layer signal processing unit 31A, and the processing of steps S37 to S40 is signal processing of the link layer performed by the Rx-Link Layer signal processing unit 31B.
In step S31, the reception unit 111 receives a signal representing the packet data transmitted from the transmission unit 22. The processing of steps S31 to S36 is performed in parallel by the signal processing units 102-0 to 102-N.
In step S32, the clock generation unit 112 performs bit synchronization by detecting an edge of the signal supplied from the reception unit 111. The synchronization unit 113 samples the signal received by the reception unit 111 and outputs packet data to the symbol synchronization unit 114.
In step S33, the symbol synchronization unit 114 performs symbol synchronization by detecting a control code included in the packet data, or the like.
In step S34, the 10B8B symbol decoder 115 performs the 10B8B conversion on the packet data after the symbol synchronization, and outputs packet data converted into data in eight-bit units.
In step S35, the skew correction unit 116 detects the Deskew Code, and as described above, corrects the Data Skew between lanes so as to align the timing of the Deskew Code with a timing represented by information supplied from the PHY-RX state control unit 101.
In step S36, the control code removal unit 117 removes the control code added to the packet data.
In step S37, the lane integration unit 122 integrates the packet data supplied from the signal processing units 102-0 to 102-N.
In step S38, the packet separation unit 123 separates the packet data integrated by the lane integration unit 122 into packet data constituting the header data and packet data constituting the payload data.
In step S39, the header error correction unit 132 performs an error detection operation using the CRC code for each set of the header information and the CRC code included in the header data separated by the packet separation unit 123. Furthermore, the header error correction unit 132 selects and outputs error-free header information on the basis of an error detection result of each set and a comparison result of data obtained by the error detection calculation.
In step S40, the Byte to Pixel conversion unit 125 performs Byte to Pixel conversion of the payload data and outputs pixel data in eight-bit, 10-bit, 12-bit, 14-bit, or 16-bit units. For the payload data to be converted by Byte to Pixel, error correction using a parity is appropriately performed by the payload error correction unit 124.
When the processing of pixel data for one line is finished, the processing returns to step S3 in
Data transmission between the image sensor 11 and the DSP 12 is performed using a packet format in which one line of one frame corresponds to one packet as described above.
The packet format used for data transmission between the image sensor 11 and the DSP 12 can be said to be a format that minimizes transmission of header information and control codes indicating packet boundaries, such as Start Code and End Code, and makes it possible to prevent decrease in transmission efficiency. If a packet format is employed in which pixel data stored in the payload of one packet is less than one line, it is necessary to transmit more packets in order to transmit pixel data of the entire one frame, and transmission efficiency decreases by increases in the numbers of pieces of header information and control codes to be transmitted.
Furthermore, it is possible to suppress transmission latency by preventing decrease in transmission efficiency, and it is possible to achieve a high pixel/high frame rate interface that needs high-speed transmission of a large amount of image data.
By employing a packet format that is premised on increasing reliability and redundancy of transmission and performing error correction on the reception unit 31 side, it is possible to secure measures against transmission errors in header information. Since transmission of Frame/Line (V/H) synchronization information or the like is performed using header information, if the header information is lost due to a transmission error, it may cause a major problem in the system, but such a problem can be prevented.
Furthermore, it is also possible to suppress increase in mounting cost and power consumption for ensuring measures against transmission errors of header information. That is, the packet format used for data transmission between the image sensor 11 and the DSP 12 has a CRC code added so that the DSP 12 can detect the presence or absence of a transmission error in the header information. Furthermore, by transmitting three sets of header information and CRC code, it is possible to correct the header information to the correct header information in the DSP 12 in a case where a transmission error of the header information occurs.
If the error correction code is used as a measure against transmission errors of header information, it becomes necessary to prepare a circuit for calculating the error correction code in the transmission unit 22, and prepare a circuit for performing the error correction operation in the reception unit 31. Since it is the CRC code, which is an error detection code, that is added to the header information, the circuit scale and power consumption can be reduced as compared with the cases where a circuit for performing an operation related to error correction is prepared. Furthermore, since the reception unit 31 does not request the transmission unit 22 to retransmit the header information in a case where an error in the header information is detected, it is not necessary to prepare a transmission line in the reverse direction for the retransmitting request.
By increasing the redundancy and configuring the control code by combining multiple K Characters of the 8B10B code, the error probability of the control code can be reduced, and thus it becomes possible to secure measures against transmission errors for the control code with a relatively simple circuit.
Specifically, three types of K Characters are used in combination of four symbols for the Start Code, but if at least a symbol other than K28.5 can be detected, the Start Code can be specified by the reception unit 31, and it can be said that the resistance against transmission errors is high. The same applies to the End Code.
Furthermore, although four types of K Characters are used in combination for the Pad Code, by assigning more types of K Characters than other control codes, it is possible to improve error resistance compared to other control codes. That is, if one of the four types of symbols can be detected, the Pad Code can be specified by the reception unit 31. Since the Pad Code has a higher transmission frequency than the Start Code, the End Code, and the like, it is given a structure that can further improve error resistance.
Moreover, by transmitting the same control code to every lane at the same timing, even if a transmission error occurs in one lane and the control code is lost, the control code that has become an error can be reproduced using the control code of another lane.
Furthermore, since the number of K Characters is limited, each of the control codes is configured by combining minimum necessary K Characters. For example, for the Sync Code, the Deskew Code, and the Standby Code, which can relatively tolerate transmission errors by repeatedly transmitting, a data structure that does not require to assign an additional K Character is used.
Since the control code necessary for resynchronization is assigned to every packet (one line), resynchronization can be performed quickly in a case where the bit synchronization is lost due to disturbance such as static electricity or noise. Furthermore, the influence of transmission error due to loss of synchronization can be minimized.
Specifically, the bit synchronization can be performed by detecting a transition or edge of the bit data after the 8B10B conversion in the CDR implemented by the clock generation unit 112 and the synchronization unit 113. If the transmission unit 22 continues to send data, the bit synchronization can be achieved within the period assumed as a CDR lock time.
Furthermore, even in a case where the symbol synchronization is lost, resynchronization can be quickly performed by detecting a specific K Character (K28.5) in the symbol synchronization unit 114. Since K28.5 is used for each of the Start Code, the End Code, and the Deskew Code, it is possible to perform symbol synchronization at three locations during a transmission period of packet data for one packet.
Furthermore, it is also possible to perform synchronization between lanes by making it possible to correct the Data Skew between lanes using the Deskew Code.
In the link layer, by allowing respective pieces of packet data to be processed in parallel in groups such as 16 pieces each (in the case of the example of
Furthermore, upon assigning lanes, error resistance can be improved by assigning continuous packet data to different lanes. Even in a case where an error occurs across a number of consecutive pieces of packet data that exceeds the error correction capability by parity in a certain lane, the position of the packet data in which the error has occurred will be distributed due to lane coupling performed in the reception unit 31, and it may be possible to correct error using the parity. The error correction capability by parity is determined by parity length.
Moreover, the circuit scale of the transmission unit 22 and the reception unit 31 can be reduced by performing ECC processing higher than lane distribution or lane integration with the side closer to the physical layer being the lower level. For example, in the transmission unit 22, in a case where an ECC parity is inserted into the payload after the packet data is assigned to each lane, it is necessary to prepare the payload ECC insertion unit for every lane, and the circuit scale increases but such a thing can be prevented.
In the physical layer, parallel processing of packet data is performed by multiple circuits, but by sharing the PHY-TX state control unit 81 and clock generation unit 82, the circuit can be simplified as compared to cases where those circuits are prepared for every lane. Furthermore, by using a protocol that does not transmit a different control code for every lane, it is possible to simplify the circuit that processes the packet data of each lane.
<Switching Number of Lanes>
Transmission of the same control code in respective lanes at the same timing is performed not only during normal data transmission but also, for example, in a case of switching the number of lanes. Even in a case of switching the number of lanes, all states of active lanes (lanes used for data transmission) are the same.
Timings of a vertical synchronization signal (XVS) and a horizontal synchronization signal (XHS) are illustrated on the right side of
The state of each lane is illustrated in a vertical direction in a substantially center of
In a case where transmission of pixel data of the frame to be transmitted is finished in the one frame period up to the time t1, in step S81, the image processing unit 32 instructs the reception unit 31 to switch the number of lanes from four to two. The instruction by the image processing unit 32 is received by the reception unit 31 in step S71.
When time t1 is reached, in step S82, the image processing unit 32 requests the imaging unit 21 of the image sensor 11 for a mode change. The request for mode change transmitted to the imaging unit 21 also includes information indicating that the number of lanes is switched from four to two. Although not illustrated in
In step S51, the imaging unit 21 receives the request for mode change from the image processing unit 32 and, in step S52, instructs the transmission unit 22 to switch the number of lanes from four to two. The instruction from the imaging unit 21 is received by the transmission unit 22 in step S61.
A Standby Sequence is performed between the transmission unit 22 and the reception unit 31, and the Standby Code is repeatedly transmitted from the transmission unit 22 to the reception unit 31 using the Lanes 0 to 3. When the Standby Sequence is finished, a state detection result is output from the reception unit 31 in step S72, and is received by the image processing unit 32 in step S83. Furthermore, the Lane 0 and Lane 1 that maintain the active state are in a Low state, and the Lane 2 and Lane 3 that finish the data transmission are in a High-Z state.
A Training Sequence is performed between the transmission unit 22 and the reception unit 31, and the Sync Code is repeatedly transmitted from the transmission unit 22 to the reception unit 31 using the Lane 0 and Lane 1. The bit synchronization is ensured in the reception unit 31, and the symbol synchronization is ensured by detecting the Sync Code.
When the training sequence is finished, in step S73, the reception unit 31 notifies the image processing unit 32 that the preparation has been completed. The notification by the reception unit 31 is received by the image processing unit 32 in step S84, and a series of control sequences in a case of switching the number of lanes ends.
In this manner, in the control sequence of switching the number of lanes, the Standby Code is transmitted at a time of Standby Sequence even in the Lanes 2 and 3 that finish the data transmission so that it is in the same state as the Lanes 0 and 1 used for data transmission continuously. For example, for the Lanes 2 and 3, it is conceivable to keep the state in High-Z as it is without transmitting the Standby Code, but the state will be different from the lane that is continuously used for data transmission, and the control will be complicated.
<Example of Connection Between SLVS-EC Standard and Other Transmission Standard>
Example of Combination
As described with reference to
The first combination illustrated in
That is, the first combination is the same combination as the combination described with reference to
The second combination illustrated in
That is, the second combination is the same combination as the combination described with reference to
The third combination illustrated in
The Link Layer signal processing unit of the SLVS-EC standard and the Link Layer signal processing unit of the other transmission standard are connected to the Phy Layer signal processing unit of the SLVS-EC standard via an MUX (multiplexer). A in
By providing the Link Layer signal processing unit of the SLVS-EC standard and the Link Layer signal processing unit of the other transmission standard in parallel, it is possible for an application of an upper layer on the transmitting side to select one of the transmission standards and to input a signal to the Link Layer signal processing unit.
The fourth combination illustrated in
The Link Layer signal processing unit of the SLVS-EC standard and the Link Layer signal processing unit of the other transmission standard are connected to the Phy Layer signal processing unit of the other transmission standard via an MUX. A in
The fifth combination illustrated in
The Link Layer signal processing unit of the SLVS-EC standard is connected to the Phy Layer signal processing unit of the SLVS-EC standard and the Phy Layer signal processing unit of the other transmission standard via an MUX. A in
By providing the Phy Layer signal processing unit of the SLVS-EC standard and the Phy Layer signal processing unit of the other transmission standard in parallel, it is possible for the Link Layer signal processing unit on the transmitting side to select one of the transmission standards according to characteristics of the transmission line and the like, and to input a signal to the Phy signal processing unit.
The sixth combination illustrated in
The Link Layer signal processing unit of the other transmission standard is connected to the Phy Layer signal processing unit of the SLVS-EC standard and the Phy Layer signal processing unit of the other transmission standard via an MUX. A in
A mounting example of each combination will be described below. Overlapping descriptions for each combination will be omitted as appropriate.
First Combination
As described with reference to
The image sensor 201 includes an image sensor circuit 211, a Link Layer signal processing unit (other transmission standard) 212, a connection circuit 213, and a Phy Layer signal processing unit (SLVS-EC standard) 214.
The Link Layer signal processing unit and the Phy Layer signal processing unit will be described by giving the names of the transmission standards corresponding to the respective signal processing units. For example, the signal processing unit of the Link Layer of the other transmission standard becomes the Link Layer signal processing unit (other transmission standard), and the signal processing unit of the Phy Layer of the SLVS-EC standard becomes the Phy Layer signal processing unit (SLVS-EC standard).
Note that in
The image sensor circuit 211 captures an image and outputs pixel data constituting the image of one frame to the Link Layer signal processing unit (other transmission standard) 212 in order for every piece of data of one pixel. The image sensor circuit 211 corresponds to the imaging unit 21 in
The Link Layer signal processing unit (other transmission standard) 212 performs signal processing of the link layer on data supplied from the image sensor circuit 211. In the Link Layer signal processing unit (other transmission standard) 212, signal processing of the link layer of the other transmission standard, which is different from signal processing of the link layer of the SLVS-EC standard, is performed. The Link Layer signal processing unit (other transmission standard) 212 outputs a signal obtained by performing the signal processing of the link layer to the connection circuit 213.
The connection circuit 213 appropriately converts signals transmitted and received between the Link Layer signal processing unit (other transmission standard) 212 and the Phy Layer signal processing unit (SLVS-EC standard) 214. The connection circuit 213 is provided with a conversion unit that converts a signal supplied from one signal processing unit into a signal of a format necessary for the other signal processing unit.
In a case where a signal (referred to as a signal A) necessary for the Phy Layer signal processing unit (SLVS-EC standard) 214 is not supplied from the Link Layer signal processing unit (other transmission standard) 212, the connection circuit 213 generates the signal A by converting a signal supplied from the Link Layer signal processing unit (other transmission standard) 212 by the conversion unit. The connection circuit 213 outputs the generated signal A to the Phy Layer signal processing unit (SLVS-EC standard) 214. The input of the signal A to the Phy Layer signal processing unit (SLVS-EC standard) 214 is performed according to, for example, the specifications related to the interface on the transmitting side described with reference to
Similarly, in a case where a signal (referred to as a signal B) necessary for the Link Layer signal processing unit (other transmission standard) 212 is not supplied from the Phy Layer signal processing unit (SLVS-EC standard) 214, the connection circuit 213 generates the signal B by converting a signal supplied from the Phy Layer signal processing unit (SLVS-EC standard) 214 by the conversion unit. The connection circuit 213 outputs the generated signal B to the Link Layer signal processing unit (other transmission standard) 212. The input of the signal B to the Link Layer signal processing unit (other transmission standard) 212 is performed according to the specifications defined as the input of the Link Layer of the other transmission standard.
Furthermore, the connection circuit 213 is provided with a delay unit. The connection circuit 213 changes the input timing for the Phy Layer signal processing unit (SLVS-EC standard) 214 by delaying the signal supplied from the Link Layer signal processing unit (other transmission standard) 212 by the delay unit.
In this manner, in the connection circuit 213, by performing signal processing such as conversion and delay, an input signal of the physical layer of the SLVS-EC standard is generated on the basis of a signal obtained by the signal processing of the link layer of the other transmission standard. The input signal of the physical layer of the SLVS-EC standard is generated so that the original signal becomes a signal representing a similar content to that represented by the other transmission standard.
In a case where the Link Layer signal processing unit (other transmission standard) 212 makes a transition to a stopped state or an UltraLowPower state, the connection circuit 213 may input a Low signal to the port TxEnable of the Phy Layer signal processing unit (SLVS-EC standard) 214 (arrow #31 in
Furthermore, in a case where the amount of payload data supplied from the Link Layer signal processing unit (other transmission standard) 212 does not match the lane stuffing described with reference to
Moreover, in a case where the amount of payload data output from the Link Layer signal processing unit (other transmission standard) 212 is less than the amount of data output by the Phy Layer signal processing unit (SLVS-EC standard) 214, the connection circuit 213 controls the port TxDataValid and notifies the Phy Layer signal processing unit (SLVS-EC standard) 214 that the amount of data is small. A Pad Code insertion unit may be provided in the connection circuit 213 so that the insertion of the Pad Code described with reference to
The Phy Layer signal processing unit (SLVS-EC standard) 214 performs signal processing of the physical layer on a signal supplied from the connection circuit 213. In the Phy Layer signal processing unit (SLVS-EC standard) 214, signal processing of the physical layer of the SLVS-EC standard is performed. The Phy Layer signal processing unit (SLVS-EC standard) 214 transmits a signal of the SLVS-EC standard obtained by performing the signal processing of the physical layer to an opposite device via the transmission line. The opposite device of
The reception device 202 includes a Phy Layer signal processing unit (SLVS-EC standard) 221, a connection circuit 222, and a Link Layer signal processing unit (other transmission standard) 223. The Phy Layer signal processing unit (SLVS-EC standard) 221, the connection circuit 222, and the Link Layer signal processing unit (other transmission standard) 223 constitute the reception unit 31 of
The Phy Layer signal processing unit (SLVS-EC standard) 221 receives a signal of the SLVS-EC standard transmitted from the image sensor 201 as an opposite device, and performs signal processing of the physical layer on the received signal. The Phy Layer signal processing unit (SLVS-EC standard) 221 performs signal processing of the physical layer of the SLVS-EC standard. The Phy Layer signal processing unit (SLVS-EC standard) 221 outputs a signal obtained by performing the signal processing of the physical layer to the connection circuit 222. The output of the signal to the connection circuit 222 is performed according to, for example, the specifications regarding the interface on the receiving side described with reference to
The connection circuit 222 appropriately converts signals transmitted and received between the Phy Layer signal processing unit (SLVS-EC standard) 221 and the Link Layer signal processing unit (other transmission standard) 223. The connection circuit 222 is provided with a conversion unit that converts a signal supplied from one signal processing unit into a signal of a format necessary for the other signal processing unit.
In a case where a signal (referred to as a signal A) necessary for the Link Layer signal processing unit (other transmission standard) 223 is not supplied from the Phy Layer signal processing unit (SLVS-EC standard) 221, the connection circuit 222 generates the signal A by converting a signal supplied from the Phy Layer signal processing unit (SLVS-EC standard) 221 by the conversion unit. The connection circuit 222 outputs the generated signal A to the Link Layer signal processing unit (other transmission standard) 223. The input of the signal A to the Link Layer signal processing unit (other transmission standard) 223 is performed according to the specifications defined as the input of the Link Layer of the other transmission standard.
Similarly, in a case where a signal (referred to as a signal B) necessary for the Phy Layer signal processing unit (SLVS-EC standard) 221 is not supplied from the Link Layer signal processing unit (other transmission standard) 223, the connection circuit 222 generates the signal B by converting a signal supplied from the Link Layer signal processing unit (other transmission standard) 223 by the conversion unit. The connection circuit 222 outputs the generated signal B to the Phy Layer signal processing unit (SLVS-EC standard) 221.
Furthermore, the connection circuit 222 is provided with a delay unit. The connection circuit 222 changes the input timing for the Link Layer signal processing unit (other transmission standard) 223 by delaying the signal supplied from the Phy Layer signal processing unit (SLVS-EC standard) 221 by the delay unit.
In this manner, in the connection circuit 222, by performing signal processing such as conversion and delay, an input signal of the link layer of the other transmission standard is generated on the basis of a signal obtained by the signal processing of the physical layer of the SLVS-EC standard. The input signal of the link layer of the other transmission standard is generated so that the original signal becomes a signal representing a similar content to that represented by the SLVS-EC standard.
The connection circuit 222 is provided with a removal unit that removes the lane stuffing data inserted in the transmission data. In a case where data with which an insertion of the lane stuffing data can be determined is inserted in data supplied from the Phy Layer signal processing unit (SLVS-EC standard) 221, the connection circuit 222 removes the lane stuffing data by the removal unit. The connection circuit 222 outputs only valid payload data obtained by removing the lane stuffing data to the Link Layer signal processing unit (other transmission standard) 223.
Furthermore, the connection circuit 222 is provided with a buffer unit. In a case where the valid data supplied from the Phy Layer signal processing unit (SLVS-EC standard) 221 is not continuous due to the insertion of Pad Code or the like, the connection circuit 222 may store valid data for one packet in the buffer unit and may perform collective output to the Link Layer signal processing unit (other transmission standard) 223.
The Link Layer signal processing unit (other transmission standard) 223 performs signal processing of the link layer on the data supplied from the connection circuit 222. In the Link Layer signal processing unit (other transmission standard) 223, signal processing of the link layer of the other transmission standard is performed. The Link Layer signal processing unit (other transmission standard) 223 outputs data obtained by performing the signal processing of the link layer to a subsequent stage.
Second Combination
As described with reference to
The image sensor 201, which is a configuration on the transmitting side, includes an image sensor circuit 211, a Link Layer signal processing unit (SLVS-EC standard) 231, a connection circuit 232, and a Phy Layer signal processing unit (other transmission standard) 233.
The Link Layer signal processing unit (SLVS-EC standard) 231 performs the signal processing of the link layer on data to be transmitted supplied from the image sensor circuit 211. The Link Layer signal processing unit (SLVS-EC standard) 231 performs the signal processing of the link layer of the SLVS-EC standard. The Link Layer signal processing unit (SLVS-EC standard) 231 outputs a signal obtained by performing the signal processing of the link layer to the connection circuit 232.
The connection circuit 232 appropriately converts signals transmitted and received between the Link Layer signal processing unit (SLVS-EC standard) 231 and the Phy Layer signal processing unit (other transmission standard) 233. The connection circuit 232 is provided with a conversion unit that converts a signal supplied from one signal processing unit into a signal of a format needed for the other signal processing unit.
In a case where the signal (referred to as signal A) necessary for the Phy Layer signal processing unit (other transmission standard) 233 is not supplied from the Link Layer signal processing unit (SLVS-EC standard) 231, the connection circuit 232 generates the signal A by converting the signal supplied from the Link Layer signal processing unit (SLVS-EC standard) 231 by the conversion unit. The connection circuit 232 outputs the generated signal A to the Phy Layer signal processing unit (other transmission standard) 233. The input of the signal A to the Phy Layer signal processing unit (other transmission standard) 233 is performed according to specifications defined as input of the Phy Layer of the other transmission standard.
Similarly, in a case where the signal (referred to as signal B) needed for the Link Layer signal processing unit (SLVS-EC standard) 231 is not supplied from the Phy Layer signal processing unit (other transmission standard) 233, the connection circuit 232 generates the signal B by converting the signal supplied from the Phy Layer signal processing unit (other transmission standard) 233 by the conversion unit. The connection circuit 232 outputs the generated signal B to the Link Layer signal processing unit (SLVS-EC standard) 231. The input of the signal B to the Link Layer signal processing unit (SLVS-EC standard) 231 is performed according to, for example, specifications related to the interface on the transmitting side described with reference to
Furthermore, the connection circuit 232 is provided with a delay unit. The connection circuit 232 changes the input timing for the Phy Layer signal processing unit (other transmission standard) 233 by delaying the signal supplied from the Link Layer signal processing unit (SLVS-EC standard) 231 by the delay unit.
In this manner, in the connection circuit 232, by performing signal processing such as conversion and delay, an input signal of the physical layer of the other transmission standard is generated on the basis of a signal obtained by the signal processing of the link layer of the SLVS-EC standard. The input signal of the physical layer of the other transmission standard is generated so that the original signal becomes a signal representing a similar content to that represented by the SLVS-EC standard.
In a case where the Link Layer signal processing unit (SLVS-EC standard) 231 makes a transition to a stopped state, the connection circuit 232 may notify the receiving side that it is in a stopped state by using a low power notification function or the like of the Phy Layer signal processing unit (other transmission standard) 233.
Furthermore, the connection circuit 232 is provided with a buffer unit. In a case where the valid data supplied from the Link Layer signal processing unit (SLVS-EC standard) 231 is not continuous, the connection circuit 232 may store valid data for one packet in the buffer unit and may perform collective output to the Phy Layer signal processing unit (other transmission standard) 233.
The Phy Layer signal processing unit (other transmission standard) 233 performs the signal processing of the physical layer on the signal supplied from the connection circuit 232. In the Phy Layer signal processing unit (other transmission standard) 233, the signal processing of the physical layer of the other transmission standard is performed. The Phy Layer signal processing unit (other transmission standard) 233 transmits a signal of the other transmission standard obtained by performing the signal processing of the physical layer to the opposite device via the transmission line.
The reception device 202, which is a configuration on the receiving side, includes a Phy Layer signal processing unit (other transmission standard) 241, a connection circuit 242, and a Link Layer signal processing unit (SLVS-EC standard) 243.
The Phy Layer signal processing unit (other transmission standard) 241 receives a signal of the other transmission standard transmitted from the image sensor 201 as an opposite device, and performs signal processing of the physical layer on the received signal. In the Phy Layer signal processing unit (other transmission standard) 241, the signal processing of the physical layer of the other transmission standard is performed. The Phy Layer signal processing unit (other transmission standard) 241 outputs a signal obtained by performing the signal processing of the physical layer to the connection circuit 242.
The connection circuit 242 appropriately converts signals transmitted and received between the Phy Layer signal processing unit (other transmission standard) 241 and the Link Layer signal processing unit (SLVS-EC standard) 243. The connection circuit 242 is provided with a conversion unit that converts a signal supplied from one signal processing unit into a signal of a format needed for the other signal processing unit.
In a case where a signal (referred to as a signal A) necessary for the Link Layer signal processing unit (SLVS-EC standard) 243 is not supplied from the Phy Layer signal processing unit (other transmission standard) 241, the connection circuit 242 generates the signal A by converting a signal supplied from the Phy Layer signal processing unit (other transmission standard) 241 by the conversion unit. The connection circuit 242 outputs the generated signal A to the Link Layer signal processing unit (SLVS-EC standard) 243. The input of the signal to the Link Layer signal processing unit (SLVS-EC standard) 243 is performed according to, for example, specifications related to the interface on the receiving side described with reference to
Similarly, in a case where a signal (referred to as signal B) necessary for the Phy Layer signal processing unit (other transmission standard) 241 is not supplied from the Link Layer signal processing unit (SLVS-EC standard) 243, the connection circuit 242 generates the signal B by converting a signal supplied from the Link Layer signal processing unit (SLVS-EC standard) 243 by the conversion unit. The connection circuit 242 outputs the generated signal B to the Phy Layer signal processing unit (other transmission standard) 241.
In this manner, in the connection circuit 242, by performing signal processing such as conversion and delay, an input signal of the link layer of the SLVS-EC standard is generated on the basis of a signal obtained by the signal processing of the physical layer of the other transmission standard. The input signal of the link layer of the SLVS-EC standard is generated so that the original signal becomes a signal representing a similar content to that represented by the other transmission standard.
Furthermore, the connection circuit 242 is provided with a delay unit. The connection circuit 242 changes the input timing for the Link Layer signal processing unit (SLVS-EC standard) 243 by delaying the signal supplied from the Phy Layer signal processing unit (other transmission standard) 241 by the delay unit.
The Link Layer signal processing unit (SLVS-EC standard) 243 performs the signal processing of the link layer on the data supplied from the connection circuit 242. The Link Layer signal processing unit (SLVS-EC standard) 243 performs the signal processing of the link layer of the SLVS-EC standard. The Link Layer signal processing unit (SLVS-EC standard) 243 outputs the data obtained by performing the signal processing of the link layer to the subsequent stage
Third Combination
As described with reference to
The image sensor 201 includes an image sensor circuit 211, a Link Layer signal processing unit (SLVS-EC standard) 251, a Link Layer signal processing unit (other transmission standard) 252, a connection circuit 253, an MUX 254, and a Phy Layer signal processing unit (SLVS-EC standard) 255.
Between the image sensor circuit 211 and MUX 254, a path formed by the Link Layer signal processing unit (SLVS-EC standard) 251 and a path formed by connecting the Link Layer signal processing unit (other transmission standard) 252 and the connection circuit 253 are provided. For example, data to be transmitted is input from the image sensor circuit 211 to one of the paths.
The Link Layer signal processing unit (SLVS-EC standard) 251 performs the signal processing of the link layer of the SLVS-EC standard on data to be transmitted supplied from the image sensor circuit 211, and outputs a signal obtained by performing the signal processing of the link layer to the MUX 254.
The Link Layer signal processing unit (other transmission standard) 252 performs signal processing of the link layer of the other transmission standard on data to be transmitted supplied from the image sensor circuit 211, and outputs a signal obtained by performing the signal processing of the link layer to the connection circuit 253.
The connection circuit 253 has a similar function to that of the connection circuit 213 of
For example, in a case where the signal (referred to as signal A) necessary for the Phy Layer signal processing unit (SLVS-EC standard) 255 is not supplied from the Link Layer signal processing unit (other transmission standard) 252, the connection circuit 253 generates the signal A by converting a signal supplied from the Link Layer signal processing unit (other transmission standard) 252 by the conversion unit. The connection circuit 253 outputs the generated signal A to the MUX 254.
The MUX 254 selects one of the Link Layer signal processing unit (SLVS-EC standard) 251 and the connection circuit 253. In a case where the MUX 254 selects the Link Layer signal processing unit (SLVS-EC standard) 251, the MUX 254 allows transmission and reception of signals between the Link Layer signal processing unit (SLVS-EC standard) 251 and the Phy Layer signal processing unit (SLVS-EC standard) 255. Furthermore, in a case where the MUX 254 selects the connection circuit 253, the MUX 254 allows transmission and reception of signals between the connection circuit 253 and the Phy Layer signal processing unit (SLVS-EC standard) 255.
Selection of the MUX 254 may be switched according to a signal input from an external terminal provided on the image sensor 201, or may be switched according to setting of a register in the image sensor 201. It is also possible to switch selection of the MUX 254 according to a switching signal supplied from an internal circuit such as the image sensor circuit 211 or the DSP (not illustrated).
The Phy Layer signal processing unit (SLVS-EC standard) 255 performs the signal processing of the physical layer of the SLVS-EC standard on signals supplied from the Link Layer signal processing unit (SLVS-EC standard) 251 or the connection circuit 253 via the MUX 254. The Phy Layer signal processing unit (SLVS-EC standard) 255 transmits a signal of the SLVS-EC standard obtained by performing the signal processing of the physical layer to an opposite device via the transmission line.
The reception device 202, which is a configuration on the receiving side, includes a Phy Layer signal processing unit (SLVS-EC standard) 261, an MUX 262, a Link Layer signal processing unit (SLVS-EC standard) 263, a connection circuit 264, and a Link Layer signal processing unit (other transmission standard) 265.
In a subsequent stage of the MUX 262, a path formed by the Link Layer signal processing unit (SLVS-EC standard) 263, and a path formed by connecting the connection circuit 264 and the Link Layer signal processing unit (other transmission standard) 265 are provided in parallel.
The Phy Layer signal processing unit (SLVS-EC standard) 261 receives data of the SLVS-EC standard transmitted from the image sensor 201 as the opposite device, and performs the signal processing of the physical layer of the SLVS-EC standard on the received data. The Phy Layer signal processing unit (SLVS-EC standard) 261 outputs data obtained by performing the signal processing of the physical layer to the MUX 262.
The MUX 262 selects one of the Link Layer signal processing unit (SLVS-EC standard) 263 and the connection circuit 264. In a case where the MUX 262 selects the Link Layer signal processing unit (SLVS-EC standard) 263, the MUX 262 allows transmission and reception of signals between the Phy Layer signal processing unit (SLVS-EC standard) 261 and the Link Layer signal processing unit (SLVS-EC standard) 263. Furthermore, in a case where the MUX 262 selects the connection circuit 264, the MUX 262 allows transmission and reception of signals between the Phy Layer signal processing unit (SLVS-EC standard) 261 and the connection circuit 264.
The Link Layer signal processing unit (SLVS-EC standard) 263 performs the signal processing of the link layer of the SLVS-EC standard on a signal supplied from the Phy Layer signal processing unit (SLVS-EC standard) 261 via the MUX 262. The Link Layer signal processing unit (SLVS-EC standard) 263 outputs data obtained by performing the signal processing of the link layer to the subsequent stage.
The connection circuit 264 has a similar function to that of the connection circuit 222 of
For example, in a case where a signal (referred to as a signal A) necessary for the Link Layer signal processing unit (other transmission standard) 265 is not supplied from the Phy Layer signal processing unit (SLVS-EC standard) 261, the connection circuit 264 generates the signal A by converting a signal supplied from the Phy Layer signal processing unit (SLVS-EC standard) 261 by the conversion unit. The connection circuit 264 outputs the generated signal A to the Link Layer signal processing unit (other transmission standard) 265.
The Link Layer signal processing unit (other transmission standard) 265 performs the signal processing of the link layer of the other transmission standard on a signal supplied from the connection circuit 264. The Link Layer signal processing unit (other transmission standard) 265 outputs data obtained by performing the signal processing of the link layer to the subsequent stage.
Fourth Combination
As described with reference to
The image sensor 201 includes an image sensor circuit 211, a Link Layer signal processing unit (SLVS-EC standard) 271, a connection circuit 272, a Link Layer signal processing unit (other transmission standard) 273, an MUX 274, and a Phy Layer signal processing unit (other transmission standard) 275.
Between the image sensor circuit 211 and MUX 274, a path formed by connecting the Link Layer signal processing unit (SLVS-EC standard) 271 and the connection circuit 272, and a path formed by the Link Layer signal processing unit (other transmission standard) 273 are provided.
The Link Layer signal processing unit (SLVS-EC standard) 271 performs the signal processing of the link layer of the SLVS-EC standard on data to be transmitted supplied from the image sensor circuit 211, and outputs a signal obtained by performing the signal processing of the link layer to the connection circuit 272.
The connection circuit 272 has a function similar to that of the connection circuit 232 of
For example, in a case where the signal (referred to as signal A) necessary for the Phy Layer signal processing unit (other transmission standard) 275 is not supplied from the Link Layer signal processing unit (SLVS-EC standard) 271, the connection circuit 272 generates the signal A by converting the signal supplied from the Link Layer signal processing unit (SLVS-EC standard) 271 by the conversion unit. The connection circuit 272 outputs the generated signal A to the MUX 274.
The Link Layer signal processing unit (other transmission standard) 273 performs signal processing of the link layer of the other transmission standard on data to be transmitted supplied from the image sensor circuit 211, and outputs a signal obtained by performing the signal processing of the link layer to MUX 274.
The MUX 274 selects one of the connection circuit 272 and the Link Layer signal processing unit (other transmission standard) 273. In a case where the MUX 274 selects the connection circuit 272, the MUX 274 allows transmission and reception of signals between the connection circuit 272 and the Phy Layer signal processing unit (other transmission standard) 275. Furthermore, in a case where the MUX 274 selects the Link Layer signal processing unit (other transmission standard) 273, the MUX 274 allows transmission and reception of signals between the Link Layer signal processing unit (other transmission standard) 273 and Phy Layer signal processing unit (other transmission standard) 275.
The Phy Layer signal processing unit (other transmission standard) 275 performs the signal processing of the physical layer of the other transmission standard on the signal supplied from the connection circuit 272 or the Link Layer signal processing unit (other transmission standard) 273 via the MUX 274. The Phy Layer signal processing unit (other transmission standard) 275 transmits a signal of the other transmission standard obtained by performing signal processing of the physical layer to the opposite device via the transmission line.
The reception device 202, which is a configuration on the receiving side, includes a Phy Layer signal processing unit (other transmission standard) 281, an MUX 282, a connection circuit 283, a Link Layer signal processing unit (SLVS-EC standard) 284, and a Link Layer signal processing unit (other transmission standard) 285.
In a subsequent stage of the MUX 282, a path formed by connecting the connection circuit 283 and the Link Layer signal processing unit (SLVS-EC standard) 284, and a path formed by the Link Layer signal processing unit (other transmission standard) 285 are provided in parallel.
The Phy Layer signal processing unit (other transmission standard) 281 receives a signal of the other transmission standard transmitted from the image sensor 201 as an opposite device, and performs the signal processing of the physical layer of the other transmission standard on the received signal. The Phy Layer signal processing unit (other transmission standard) 281 outputs a signal obtained by performing the signal processing of the physical layer to the MUX 282.
The MUX 282 selects one of the connection circuit 283 and the Link Layer signal processing unit (other transmission standard) 285. In a case where the MUX 282 selects the connection circuit 283, the MUX 282 allows transmission and reception of signals between the Phy Layer signal processing unit (other transmission standard) 281 and the connection circuit 283. Furthermore, in a case where MUX 282 selects the Link Layer signal processing unit (other transmission standard) 285, the MUX 282 allows transmission and reception of signals between the Phy Layer signal processing unit (other transmission standard) 281 and the Link Layer signal processing unit (other transmission standard) 285.
The connection circuit 283 has a similar function to that of the connection circuit 242 of
For example, in a case where a signal (referred to as a signal A) necessary for the Link Layer signal processing unit (SLVS-EC standard) 284 is not supplied from the Phy Layer signal processing unit (other transmission standard) 281, the connection circuit 283 generates the signal A by converting a signal supplied from the Phy Layer signal processing unit (other transmission standard) 281 by the conversion unit. The connection circuit 283 outputs the generated signal A to the Link Layer signal processing unit (SLVS-EC standard) 284.
The Link Layer signal processing unit (SLVS-EC standard) 284 performs the signal processing of the link layer of the SLVS-EC standard on the signal supplied from the connection circuit 283. The Link Layer signal processing unit (SLVS-EC standard) 284 outputs data obtained by performing the signal processing of the link layer to the subsequent stage.
The Link Layer signal processing unit (other transmission standard) 285 performs the signal processing of the link layer of the other transmission standard on the signal supplied from the Phy Layer signal processing unit (other transmission standard) 281 via the MUX 282. The Link Layer signal processing unit (other transmission standard) 285 outputs the data obtained by performing the signal processing of the link layer to the subsequent stage.
Fifth Combination
As described with reference to
The image sensor 201 includes an image sensor circuit 211, a Link Layer signal processing unit (SLVS-EC standard) 291, an MUX 292, a Phy Layer signal processing unit (SLVS-EC standard) 293, a connection circuit 294, and a Phy Layer signal processing unit (other transmission standard) 295.
In a subsequent stage of the MUX 292, a path formed by the Phy Layer signal processing unit (SLVS-EC standard) 293, and a path formed by connecting the connection circuit 294 and the Phy Layer signal processing unit (other transmission standard) 295 are provided.
The Link Layer signal processing unit (SLVS-EC standard) 291 performs the signal processing of the link layer of the SLVS-EC standard on data to be transmitted supplied from the image sensor circuit 211, and outputs a signal obtained by performing the signal processing of the link layer to the MUX 292.
The MUX 292 selects one of the Phy Layer signal processing unit (SLVS-EC standard) 293 and the connection circuit 294. In a case where the MUX 292 selects the Phy Layer signal processing unit (SLVS-EC standard) 293, the MUX 292 allows transmission and reception of signals between the Link Layer signal processing unit (SLVS-EC standard) 291 and the Phy Layer signal processing unit (SLVS-EC standard) 293. Furthermore, in a case where the MUX 292 selects the connection circuit 294, the MUX 292 allows transmission and reception of signals between the Link Layer signal processing unit (SLVS-EC standard) 291 and the connection circuit 294.
The Phy Layer signal processing unit (SLVS-EC standard) 293 performs the signal processing of the physical layer of the SLVS-EC standard on a signal supplied from the Link Layer signal processing unit (SLVS-EC standard) 291 via the MUX 292. The Phy Layer signal processing unit (SLVS-EC standard) 293 transmits a signal of the SLVS-EC standard obtained by performing the signal processing of the physical layer to an opposite device via the transmission line.
The connection circuit 294 has a similar function to that of the connection circuit 232 of
For example, in a case where the signal (referred to as signal A) necessary for the Phy Layer signal processing unit (other transmission standard) 295 is not supplied from the Link Layer signal processing unit (SLVS-EC standard) 291, the connection circuit 294 generates the signal A by converting the signal supplied from the Link Layer signal processing unit (SLVS-EC standard) 291 by the conversion unit. The connection circuit 294 outputs the generated signal A to the Phy Layer signal processing unit (other transmission standard) 295.
The Phy Layer signal processing unit (other transmission standard) 295 performs the signal processing of the physical layer of the other transmission standard on a signal supplied from the connection circuit 294. The Phy Layer signal processing unit (other transmission standard) 295 transmits a signal of the other transmission standard obtained by performing the signal processing of the physical layer to the opposite device via the transmission line.
The reception device 202, which is a configuration on the receiving side, includes a Phy Layer signal processing unit (SLVS-EC standard) 301, a Phy Layer signal processing unit (other transmission standard) 302, a connection circuit 303, an MUX 304, and a Link Layer signal processing unit (SLVS-EC standard) 305.
In a front stage of the MUX 304, a path formed by the Phy Layer signal processing unit (SLVS-EC standard) 301, and a path formed by connecting the Phy Layer signal processing unit (other transmission standard) 302 and connection circuit 303 are provided in parallel. A signal of the SLVS-EC standard output from an opposite device is input to the Phy Layer signal processing unit (SLVS-EC standard) 301, and a signal of the other transmission standard is input to the Phy Layer signal processing unit (other transmission standard) 302.
The Phy Layer signal processing unit (SLVS-EC standard) 301 receives a signal of the SLVS-EC standard transmitted from the image sensor 201 as an opposite device, and performs the signal processing of the physical layer of the SLVS-EC standard on the received signal. The Phy Layer signal processing unit (SLVS-EC standard) 301 outputs a signal obtained by performing the signal processing of the physical layer to the MUX 304.
The Phy Layer signal processing unit (other transmission standard) 302 receives a signal of the other transmission standard transmitted from the image sensor 201, and performs the signal processing of the physical layer of the other transmission standard on the received signal. The Phy Layer signal processing unit (other transmission standard) 302 outputs a signal obtained by performing the signal processing of the physical layer to the connection circuit 303.
The connection circuit 303 has a similar function to that of the connection circuit 242 of
For example, in a case where a signal (referred to as a signal A) necessary for the Link Layer signal processing unit (SLVS-EC standard) 305 is not supplied from the Phy Layer signal processing unit (other transmission standard) 302, the connection circuit 303 generates the signal A by converting a signal supplied from the Phy Layer signal processing unit (other transmission standard) 302 by the conversion unit. The connection circuit 303 outputs the generated signal A to the MUX 304.
The MUX 304 selects one of the Phy Layer signal processing unit (SLVS-EC standard) 301 and the connection circuit 303. In a case where the MUX 304 selects the Phy Layer signal processing unit (SLVS-EC standard) 301, the MUX 304 allows transmission and reception of signals between the Phy Layer signal processing unit (SLVS-EC standard) 301 and the Link Layer signal processing unit (SLVS-EC standard) 305. Furthermore, in a case where the MUX 304 selects the connection circuit 303, the MUX 304 allows transmission and reception of signals between the connection circuit 303 and the Link Layer signal processing unit (SLVS-EC standard) 305.
The Link Layer signal processing unit (SLVS-EC standard) 305 performs the signal processing of the link layer of the SLVS-EC standard on signals supplied from the Phy Layer signal processing unit (SLVS-EC standard) 301 or the connection circuit 303 via the MUX 304. The Link Layer signal processing unit (SLVS-EC standard) 305 outputs data obtained by performing the signal processing of the link layer to the subsequent stage.
Sixth Combination
As described with reference to
The image sensor 201 includes an image sensor circuit 211, a Link Layer signal processing unit (other transmission standard) 311, an MUX 312, a connection circuit 313, a Phy Layer signal processing unit (SLVS-EC standard) 314, and a Phy Layer signal processing unit (other transmission standard) 315.
In a subsequent stage of the MUX 312, a path formed by connecting the connection circuit 313 and the Phy Layer signal processing unit (SLVS-EC standard) 314, and a path formed by the Phy Layer signal processing unit (other transmission standard) 315 are provided.
The Link Layer signal processing unit (other transmission standard) 311 performs the signal processing of the link layer of the SLVS-EC standard on data to be transmitted supplied from the image sensor circuit 211, and outputs a signal obtained by performing the signal processing of the link layer to the MUX 312.
The MUX 312 selects one of the connection circuit 313 and the Phy Layer signal processing unit (other transmission standard) 315. In a case where the MUX 312 selects the connection circuit 313, the MUX 312 allows transmission and reception of signals between the Link Layer signal processing unit (other transmission standard) 311 and the connection circuit 313. Furthermore, in a case where the MUX 312 selects the Phy Layer signal processing unit (other transmission standard) 315, the MUX 312 allows transmission and reception of signals between the Link Layer signal processing unit (other transmission standard) 311 and the Phy Layer signal processing unit (other transmission standard) 315.
The connection circuit 313 has a similar function to that of the connection circuit 213 of
For example, in a case where the signal (referred to as signal A) necessary for the Phy Layer signal processing unit (SLVS-EC standard) 314 is not supplied from the Link Layer signal processing unit (other transmission standard) 311, the connection circuit 313 generates the signal A by converting a signal supplied from the Link Layer signal processing unit (other transmission standard) 311 by the conversion unit. The connection circuit 313 outputs the generated signal A to the Phy Layer signal processing unit (SLVS-EC standard) 314.
The Phy Layer signal processing unit (SLVS-EC standard) 314 performs the signal processing of the physical layer of the SLVS-EC standard on the signal supplied from the connection circuit 313. The Phy Layer signal processing unit (SLVS-EC standard) 314 transmits a signal of the SLVS-EC standard obtained by performing the signal processing of the physical layer to the opposite device via the transmission line.
The Phy Layer signal processing unit (other transmission standard) 315 performs the signal processing of the physical layer of the other transmission standard on the signal supplied from the Link Layer signal processing unit (other transmission standard) 311 via the MUX 312. The Phy Layer signal processing unit (other transmission standard) 315 transmits signals of the other transmission standard obtained by performing the signal processing of the physical layer to the opposite device via the transmission line.
The reception device 202, which is a configuration on the receiving side, includes a Phy Layer signal processing unit (SLVS-EC standard) 321, a connection circuit 322, a Phy Layer signal processing unit (other transmission standard) 323, an MUX 324, and a Link Layer signal processing unit (other transmission standard) 325.
In a front stage of the MUX 324, a path formed by connecting the Phy Layer signal processing unit (SLVS-EC standard) 321 and connection circuit 322, and a path formed by the Phy Layer signal processing unit (other transmission standard) 323 are provided in parallel. A signal of the SLVS-EC standard transmitted from an opposite device is input to the Phy Layer signal processing unit (SLVS-EC standard) 321 and a signal of the other transmission standard is input to the Phy Layer signal processing unit (other transmission standard) 323.
The Phy Layer signal processing unit (SLVS-EC standard) 321 receives a signal of the SLVS-EC standard transmitted from the image sensor 201 as an opposite device, and performs the signal processing of the physical layer of the SLVS-EC standard on the received signal. The Phy Layer signal processing unit (SLVS-EC standard) 321 outputs a signal obtained by performing the signal processing of the physical layer to the connection circuit 322.
The connection circuit 322 has a similar function to that of the connection circuit 222 of
For example, in a case where a signal (referred to as a signal A) necessary for the Link Layer signal processing unit (other transmission standard) 325 is not supplied from the Phy Layer signal processing unit (SLVS-EC standard) 321, the connection circuit 322 generates the signal A by converting a signal supplied from the Phy Layer signal processing unit (SLVS-EC standard) 321 by the conversion unit. The connection circuit 322 outputs the generated signal A to the MUX 324.
The Phy Layer signal processing unit (other transmission standard) 323 receives a signal of the other transmission standard transmitted from the image sensor 201, and performs the signal processing of the physical layer of the other transmission standard on the received signal. The Phy Layer signal processing unit (other transmission standard) 323 outputs a signal obtained by performing the signal processing of the physical layer to the MUX 324.
The MUX 324 selects one of the connection circuit 322 and the Phy Layer signal processing unit (other transmission standard) 323. In a case where the MUX 324 selects the connection circuit 322, the MUX 324 allows transmission and reception of signals between the connection circuit 322 and the Link Layer signal processing unit (other transmission standard) 325. Furthermore, in a case where the MUX 324 selects the Phy Layer signal processing unit (other transmission standard) 323, the MUX 324 allows transmission and reception of signals between the Phy Layer signal processing unit (other transmission standard) 323 and the Link Layer signal processing unit (other transmission standard) 325.
The Link Layer signal processing unit (other transmission standard) 325 performs the signal processing of the link layer of the other transmission standard on the signal supplied from the connection circuit 322 or the Phy Layer signal processing unit (other transmission standard) 323 via the MUX 324. The Link Layer signal processing unit (other transmission standard) 325 outputs the data obtained by performing the signal processing of the link layer to the subsequent stage.
The standards of the physical layer of MIPI described as another transmission standard include a plurality of standards such as C-PHY and D-PHY. The C-PHY and D-PHY are standards with different specifications such as the number of pins per lane used for transmitting differential signals. Note that the link layer standards corresponding to the C-PHY standard and the D-PHY standard are common standards such as CSI-2.
In the signal conversion device 203 of
As illustrated in
Inside the signal conversion device 203, the above-described configuration on the receiving side and configuration on the transmitting side are provided. The Rx-Phy Layer signal processing unit (other transmission standard) 331 and the Rx-Link Layer signal processing unit (other transmission standard) 332 are the configuration on the receiving side, and the Tx-Link Layer signal processing unit (other transmission standard) 334, the MUX 335, the connection circuit 336, the Tx-Phy Layer signal processing unit (SLVS-EC standard) 337, and the Tx-Phy Layer signal processing unit (other transmission standard) 338 are the configuration on the transmitting side.
The Rx-Phy Layer signal processing unit (other transmission standard) 331 is a signal processing unit on the receiving side corresponding to the standard of a first physical layer of the other transmission standard. On the other hand, the Tx-Phy Layer signal processing unit (other transmission standard) 338 is a signal processing unit on the transmitting side corresponding to the standard of a second physical layer of the other transmission standard. For example, the standard of the first physical layer to which the Rx-Phy Layer signal processing unit (other transmission standard) 331 corresponds is C-PHY, and the standard of the second physical layer to which the Tx-Phy Layer signal processing unit (other transmission standard) 338 corresponds is D-PHY.
The Rx-Phy Layer signal processing unit (other transmission standard) 331 receives a signal of the standard of the first physical layer of the other transmission standard transmitted from the image sensor 201, and performs signal processing of the physical layer on the received signal. In the Rx-Phy Layer signal processing unit (other transmission standard) 331, signal processing according to the standard of the first physical layer of the other transmission standard is performed. The Rx-Phy Layer signal processing unit (other transmission standard) 331 outputs a signal obtained by performing the signal processing of the physical layer to the Rx-Link Layer signal processing unit (other transmission standard) 332.
The Rx-Link Layer signal processing unit (other transmission standard) 332 performs signal processing of the link layer on a signal supplied from the Rx-Phy Layer signal processing unit (other transmission standard) 331. In the Rx-Link Layer signal processing unit (other transmission standard) 332, the signal processing of the link layer of the other transmission standard is performed. The Rx-Link Layer signal processing unit (other transmission standard) 332 outputs data obtained by performing the signal processing of the link layer to the timing synchronization circuit 333.
The timing synchronization circuit 333 synchronizes a signal supplied from the Rx-Link Layer signal processing unit (other transmission standard) 332 with a timing on the transmitting side and outputs the signal to the Tx-Link Layer signal processing unit (other transmission standard) 334.
The configuration of the transmitting side including the Tx-Link Layer signal processing unit (other transmission standard) 334, MUX 335, connection circuit 336, Tx-Phy Layer signal processing unit (SLVS-EC standard) 337, and Tx-Phy Layer signal processing unit (other transmission standard) 338 is basically the same as the configuration described with reference to
The Tx-Link Layer signal processing unit (other transmission standard) 334 performs the signal processing of the link layer on a signal supplied from the timing synchronization circuit 333. In the Tx-Link Layer signal processing unit (other transmission standard) 334, signal processing of the link layer of the other transmission standard is performed. The Tx-Link Layer signal processing unit (other transmission standard) 334 outputs a signal obtained by performing the signal processing of the link layer to the MUX 335.
The MUX 335 selects one of the connection circuit 336 and the Tx-Phy Layer signal processing unit (other transmission standard) 338. In a case where the connection circuit 336 is selected, the MUX 335 allows transmission and reception of signals between the Tx-Link Layer signal processing unit (other transmission standard) 334 and the connection circuit 336. Furthermore, in a case where the Tx-Phy Layer signal processing unit (other transmission standard) 338 is selected, the MUX 335 allows transmission and reception of signals between the Tx-Link Layer signal processing unit (other transmission standard) 334 and the Tx-Phy Layer signal processing unit (other transmission standard) 338.
The connection circuit 336 appropriately converts signals transmitted and received between the Tx-Link Layer signal processing unit (other transmission standard) 334 and the Tx-Phy Layer signal processing unit (SLVS-EC standard) 337.
For example, in a case where a signal (referred to as a signal A) necessary for the Tx-Phy Layer signal processing unit (SLVS-EC standard) 337 is not supplied from the Tx-Link Layer signal processing unit (other transmission standard) 334, the connection circuit 336 generates the signal A by converting a signal supplied from the Tx-Link Layer signal processing unit (other transmission standard) 334 by the conversion unit. The connection circuit 336 outputs the generated signal A to the Tx-Phy Layer signal processing unit (SLVS-EC standard) 337.
The Tx-Phy Layer signal processing unit (SLVS-EC standard) 337 performs the signal processing of the physical layer of the SLVS-EC standard on the signal supplied from the connection circuit 336. The Tx-Phy Layer signal processing unit (SLVS-EC standard) 337 transmits a signal of the SLVS-EC standard obtained by performing the signal processing of the physical layer to the opposite device via the transmission line.
The Tx-Phy Layer signal processing unit (other transmission standard) 338 performs signal processing of the physical layer of the other transmission standard on the signal supplied from the Tx-Link Layer signal processing unit (other transmission standard) 334 via the MUX 335. The Tx-Phy Layer signal processing unit (other transmission standard) 338 transmits a signal of the other transmission standard obtained by performing the signal processing of the physical layer to the opposite device via the transmission line.
By providing the signal conversion device 203 between the image sensor 201 and the opposite device, it is possible to convert the signal of the standard of the first physical layer of the other transmission standard that is difficult to receive at high speed into a signal of the standard of the second physical layer of the same other transmission standard or a signal of the SLVS-EC standard and output the signal. For example, long-distance transmission is possible by converting the signal into the signal of the SLVS-EC standard and outputting the signal.
Furthermore, in a case where the opposite device on the receiving side does not correspond to reception of the signal of the other transmission standard, by outputting the signal of the SLVS-EC standard, the signal conversion device 203 makes it possible for such an opposite device to receive the signal.
By using a standard such as MIPI as it is for the standard of the link layer, it is possible to suppress changes in the opposite device on the receiving side, for example.
The specifications of the interface between the signal processing units of the SLVS-EC standard have been mainly described, but the specifications described with reference to
<Configuration Example of Computer>
The series of processes described above can be executed by hardware or can be executed by software. In a case where the series of processes is executed by software, a program constituting the software is installed on a computer built into dedicated hardware or a general-purpose personal computer from a program recording medium, or the like.
A central processing unit (CPU) 1001, a read only memory (ROM) 1002, and a random access memory (RAM) 1003 are interconnected via a bus 1004.
An input-output interface 1005 is further connected to the bus 1004. An input unit 1006 including a keyboard, a mouse, and the like, and an output unit 1007 including a display, a speaker, and the like are connected to the input-output interface 1005. Furthermore, the input-output interface 1005 is connected to a storage unit 1008 including a hard disk and a non-volatile memory and the like, a communication unit 1009 including a network interface and the like, and a drive 1010 that drives a removable medium 1011.
In the computer configured as described above, for example, the CPU 1001 loads a program stored in the storage unit 1008 into the RAM 1003 via the input-output interface 1005 and the bus 1004 and executes the program, to thereby perform the above-described series of processes.
For example, the program to be executed by the CPU 1001 is recorded on the removable medium 1011 or provided via a wired or wireless transmission medium such as a local area network, the Internet, or a digital broadcast, and installed in the storage unit 1008.
Note that the program executed by the computer may be a program for processing in time series in the order described in the present description, or a program for processing in parallel or at a necessary timing such as when a call is made.
The effects described herein are merely examples and are not limited, and other effects may be provided.
The embodiments of the present technology are not limited to the above-described embodiments, and various modifications are possible without departing from the gist of the present technology.
For example, the present technology can employ a configuration of cloud computing in which one function is shared by a plurality of devices via a network and processed jointly.
Furthermore, each step described in the above-described flowcharts can be executed by one device, or can be executed in a shared manner by a plurality of devices.
Moreover, in a case where a plurality of processes is included in one step, the plurality of processes included in the one step can be executed in a shared manner by a plurality of devices in addition to being executed by one device.
<Example of Combinations of Configurations>
The present technology can also employ the following configurations.
(1)
A transmission device including:
a first signal processing unit that performs, as processing of a first layer, processing of generating a packet that stores data to be transmitted and distributing the packet that has been generated to a plurality of lanes; and
a second signal processing unit that performs, as processing of a second layer, processing including insertion of control information in parallel on the packet of each of the lanes output from the first signal processing unit, and processing of outputting a data stream obtained by performing the processing onto a transmission line to a reception device,
in which the first signal processing unit and the second signal processing unit are configured to input and output signals according to specifications of input and output defined on the basis of the first layer and specifications of input and output defined on the basis of the second layer.
(2)
The transmission device according to (1) above,
in which the first signal processing unit outputs a signal requesting a start of a sequence to the second signal processing unit.
(3)
The transmission device according to (1) or (2) above,
in which the second signal processing unit outputs a signal providing notification of a state of the second layer to the first signal processing unit.
(4)
The transmission device according to any one of (1) to (3) above,
in which the first signal processing unit and the second signal processing unit are provided respectively on different integrated circuit chips.
(5)
A transmission method for a transmission device including:
a first signal processing unit that performs, as processing of a first layer, processing of generating a packet that stores data to be transmitted and distributing the packet that has been generated to a plurality of lanes; and
a second signal processing unit that performs, as processing of a second layer, processing including insertion of control information in parallel on the packet of each of the lanes output from the first signal processing unit, and processing of outputting a data stream obtained by performing the processing onto a transmission line to a reception device,
the transmission method including, by the transmission device,
inputting and outputting signals, between the first signal processing unit and the second signal processing unit, according to specifications of input and output defined on the basis of the first layer and specifications of input and output defined on the basis of the second layer.
(6)
A reception device including:
a first signal processing unit that receives a data stream output from a transmission device in parallel as data of a plurality of lanes onto a transmission line and performs, as processing of a first layer, processing including a synchronization processing and removal of control information; and
a second signal processing unit that performs, as processing of a second layer, processing of integrating the data stream of each of the lanes output from the first signal processing unit into one series of data and acquiring a packet constituting the data stream,
in which the first signal processing unit and the second signal processing unit are configured to input and output signals according to specifications of input and output defined on the basis of the first layer and specifications of input and output defined on the basis of the second layer.
(7)
The reception device according to (6) above,
in which the second signal processing unit outputs a signal requesting a start of a sequence to the first signal processing unit.
(8)
The reception device according to (6) or (7) above,
in which the first signal processing unit outputs a signal providing notification of a state of the first layer to the second signal processing unit.
(9)
The reception device according to any one of (6) to (8) above,
in which the first signal processing unit and the second signal processing unit are provided respectively on different integrated circuit chips.
(10)
A reception method for a reception device including:
a first signal processing unit that receives a data stream output from a transmission device in parallel as data of a plurality of lanes onto a transmission line and performs, as processing of a first layer, processing including a synchronization processing and removal of control information; and
a second signal processing unit that performs, as processing of a second layer, processing of integrating the data stream of each of the lanes output from the first signal processing unit into one series of data and acquiring a packet constituting the data stream,
the reception method including, by the reception device,
inputting and outputting signals, between the first signal processing unit and the second signal processing unit, according to specifications of input and output defined on the basis of the first layer and specifications of input and output defined on the basis of the second layer.
(11)
A transmission-reception device including:
a transmission device that includes
the reception device that includes
Number | Date | Country | Kind |
---|---|---|---|
2019-011811 | Jan 2019 | JP | national |
Filing Document | Filing Date | Country | Kind |
---|---|---|---|
PCT/JP2020/002456 | 1/24/2020 | WO | 00 |