JP7094952B2 - Receiver, control method, program, and transmit / receive system - Google Patents
Receiver, control method, program, and transmit / receive system Download PDFInfo
- Publication number
- JP7094952B2 JP7094952B2 JP2019523451A JP2019523451A JP7094952B2 JP 7094952 B2 JP7094952 B2 JP 7094952B2 JP 2019523451 A JP2019523451 A JP 2019523451A JP 2019523451 A JP2019523451 A JP 2019523451A JP 7094952 B2 JP7094952 B2 JP 7094952B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- unit
- transmission
- timing
- packet
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/242—Synchronization processes, e.g. processing of PCR [Program Clock References]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N23/00—Cameras or camera modules comprising electronic image sensors; Control thereof
- H04N23/60—Control of cameras or camera modules
- H04N23/665—Control of cameras or camera modules involving internal camera communication with the image sensor, e.g. synchronising or multiplexing SSIS control signals
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N23/00—Cameras or camera modules comprising electronic image sensors; Control thereof
- H04N23/50—Constructional details
- H04N23/555—Constructional details for picking-up images in sites, inaccessible due to their dimensions or hazardous conditions, e.g. endoscopes or borescopes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L25/00—Baseband systems
- H04L25/38—Synchronous or start-stop systems, e.g. for Baudot code
- H04L25/40—Transmitting circuits; Receiving circuits
- H04L25/49—Transmitting circuits; Receiving circuits using code conversion at the transmitter; using predistortion; using insertion of idle bits for obtaining a desired frequency spectrum; using three or more amplitude levels ; Baseband coding techniques specific to data transmission systems
- H04L25/4906—Transmitting circuits; Receiving circuits using code conversion at the transmitter; using predistortion; using insertion of idle bits for obtaining a desired frequency spectrum; using three or more amplitude levels ; Baseband coding techniques specific to data transmission systems using binary codes
- H04L25/4908—Transmitting circuits; Receiving circuits using code conversion at the transmitter; using predistortion; using insertion of idle bits for obtaining a desired frequency spectrum; using three or more amplitude levels ; Baseband coding techniques specific to data transmission systems using binary codes using mBnB codes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L7/00—Arrangements for synchronising receiver with transmitter
- H04L7/0008—Synchronisation information channels, e.g. clock distribution lines
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L7/00—Arrangements for synchronising receiver with transmitter
- H04L7/0016—Arrangements for synchronising receiver with transmitter correction of synchronization errors
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L7/00—Arrangements for synchronising receiver with transmitter
- H04L7/04—Speed or phase control by synchronisation signals
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/236—Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
- H04N21/23605—Creation or processing of packetized elementary streams [PES]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/4302—Content synchronisation processes, e.g. decoder synchronisation
- H04N21/4305—Synchronising client clock from received content stream, e.g. locking decoder clock with encoder clock, extraction of the PCR packets
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/434—Disassembling of a multiplex stream, e.g. demultiplexing audio and video streams, extraction of additional data from a video stream; Remultiplexing of multiplex streams; Extraction or processing of SI; Disassembling of packetised elementary stream
- H04N21/4343—Extraction or processing of packetized elementary streams [PES]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N23/00—Cameras or camera modules comprising electronic image sensors; Control thereof
- H04N23/57—Mechanical or electrical details of cameras or camera modules specially adapted for being embedded in other devices
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N23/00—Cameras or camera modules comprising electronic image sensors; Control thereof
- H04N23/60—Control of cameras or camera modules
- H04N23/66—Remote control of cameras or camera parts, e.g. by remote control devices
- H04N23/661—Transmitting camera control signals through networks, e.g. control via the Internet
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N23/00—Cameras or camera modules comprising electronic image sensors; Control thereof
- H04N23/60—Control of cameras or camera modules
- H04N23/667—Camera operation mode switching, e.g. between still and video, sport and normal or high- and low-resolution modes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N23/00—Cameras or camera modules comprising electronic image sensors; Control thereof
- H04N23/45—Cameras or camera modules comprising electronic image sensors; Control thereof for generating image signals from two or more image sensors being of different type or operating in different modes, e.g. with a CMOS sensor for moving images in combination with a charge-coupled device [CCD] for still images
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N23/00—Cameras or camera modules comprising electronic image sensors; Control thereof
- H04N23/56—Cameras or camera modules comprising electronic image sensors; Control thereof provided with illuminating means
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- Computer Networks & Wireless Communication (AREA)
- Physics & Mathematics (AREA)
- Spectroscopy & Molecular Physics (AREA)
- Communication Control (AREA)
- Bus Control (AREA)
- Information Transfer Systems (AREA)
Description
本技術は、受信装置、制御方法、プログラム、および送受信システムに関し、特に、複数の通信リンクを用いてデータの伝送が行われる場合において、通信リンク間のデータのタイミングのずれを補正することができるようにした受信装置、制御方法、プログラム、および送受信システムに関する。 The present technology can correct for data timing discrepancies between communication links, especially when data is transmitted using multiple communication links, with respect to receivers , control methods, programs, and transmission / reception systems. Receiving devices , control methods, programs, and transmitting / receiving systems.
イメージセンサの高画質化、高フレームレート化に伴い、イメージセンサと、イメージセンサにより撮像された画像を処理するDSP(Digital Signal Processor)との間のインタフェースに求められるデータの伝送容量が高まってきている。 With the increase in image quality and frame rate of image sensors, the data transmission capacity required for the interface between the image sensor and the DSP (Digital Signal Processor) that processes the image captured by the image sensor has increased. There is.
特許文献1には、画像データを格納するパケットを複数レーンに分配し、複数レーンを介して、イメージセンサからDSPにデータを伝送する伝送方式が記載されている。この伝送方式においては、1フレームの各ラインを構成する画像データがイメージセンサにおいて各パケットに格納され、DSPに伝送される。
また、特許文献1には、イメージセンサ側の送信部とDSP側の受信部の対を複数設け、それぞれの送受信部間でデータ伝送を行うことについても記載されている。
Further,
イメージセンサ側の1つの送信部とDSP側の1つの受信部から1つの通信リンクが構成されるものとすると、送信部と受信部の対を複数設けた場合には複数の通信リンクを用いてデータの伝送が行われることになる。 Assuming that one communication link is configured from one transmitting unit on the image sensor side and one receiving unit on the DSP side, when a plurality of pairs of transmitting units and receiving units are provided, a plurality of communication links are used. Data will be transmitted.
各通信リンクにおけるデータの伝送が独立して行われる場合、通信リンク間で、データのタイミングにずれが生じる。 When the data is transmitted independently in each communication link, the timing of the data is different between the communication links.
本技術はこのような状況に鑑みてなされたものであり、複数の通信リンクを用いてデータの伝送が行われる場合において、通信リンク間のデータのタイミングのずれを補正することができるようにするものである。 This technique was made in view of such a situation, and makes it possible to correct the timing deviation of data between communication links when data is transmitted using a plurality of communication links. It is a thing.
本技術の第1の側面の受信装置は、送信装置が有する複数の送信部のそれぞれから複数のレーンを用いて並列に送信された同一のデータ構造を有するデータストリームを受信する処理を第1のレイヤの処理として行い、受信した前記データストリームを一系統のデータに統合し、前記データストリームを構成するパケットを取得する処理を第2のレイヤの処理として行う複数の受信部と、1つの前記送信部と1つの前記受信部との組のそれぞれにより実現される通信リンク間の、対応するデータのタイミングのずれを、それぞれの前記通信リンクの全ての前記レーンのデータに対して挿入された既知情報のタイミングを、最も遅い前記既知情報のタイミングに合わせるようにそれぞれの前記受信部において補正する制御部とを備える。 The receiving device of the first aspect of the present technology performs a process of receiving a data stream having the same data structure transmitted in parallel using a plurality of lanes from each of a plurality of transmitting units of the transmitting device. A plurality of receiving units that perform processing as layer processing, integrate the received data stream into one system of data, and acquire packets constituting the data stream as processing of the second layer, and one transmission. Known information inserted into the data of all the lanes of each said communication link the timing lag of the corresponding data between the communication links realized by each of the pairs of the unit and one said receiver. It is provided with a control unit that corrects the timing of the above in each receiving unit so as to match the timing of the latest known information .
本技術の第1の側面においては、送信装置が有する複数の送信部のそれぞれから複数のレーンを用いて並列に送信された同一のデータ構造を有するデータストリームを受信する処理である第1のレイヤの処理と、受信した前記データストリームを一系統のデータに統合し、前記データストリームを構成するパケットを取得する処理である第2のレイヤの処理とが複数の受信部において行われ、1つの前記送信部と1つの前記受信部との組のそれぞれにより実現される通信リンク間の、対応するデータのタイミングのずれが、それぞれの前記通信リンクの全ての前記レーンのデータに対して挿入された既知情報のタイミングを、最も遅い前記既知情報のタイミングに合わせるようにそれぞれの前記受信部において補正される。 In the first aspect of the present technology, a first layer is a process of receiving a data stream having the same data structure transmitted in parallel using a plurality of lanes from each of a plurality of transmitters of the transmitter. And the processing of the second layer, which is the processing of integrating the received data stream into one system of data and acquiring the packets constituting the data stream, are performed in a plurality of receiving units. A known data timing shift between the communication links realized by each of the pair of transmitters and one receiver is inserted into the data in all the lanes of the respective communication link. The timing of the information is corrected in each of the receiving units so as to match the timing of the latest known information .
本技術によれば、複数の通信リンクを用いてデータの伝送が行われる場合において、通信リンク間のデータのタイミングのずれを補正することができる。 According to the present technology, when data is transmitted using a plurality of communication links, it is possible to correct the timing deviation of the data between the communication links.
なお、ここに記載された効果は必ずしも限定されるものではなく、本開示中に記載されたいずれかの効果であってもよい。 The effects described herein are not necessarily limited, and may be any of the effects described in the present disclosure.
以下、本技術を実施するための形態について説明する。説明は以下の順序で行う。
1.第1の実施の形態(画素データを伝送する例)
2.第2の実施の形態(画素データに限らず、所定のデータを伝送する例)
3.通信リンク間のData Skewの補正について
(1)通信リンク間Data Skew
(2)通信リンク間Data Skewの除去
4.変形例
5.応用例Hereinafter, a mode for carrying out this technique will be described. The explanation will be given in the following order.
1. 1. First Embodiment (Example of transmitting pixel data)
2. 2. Second embodiment (example of transmitting predetermined data, not limited to pixel data)
3. 3. Correction of Data Skew between communication links (1) Data Skew between communication links
(2) Removal of Data Skew between
<1.第1の実施の形態(画素データを伝送する例)>
[伝送システムの構成例]
図1は、本技術の一実施形態に係る伝送システムの第1の構成例を示す図である。<1. First Embodiment (Example of transmitting pixel data)>
[Example of transmission system configuration]
FIG. 1 is a diagram showing a first configuration example of a transmission system according to an embodiment of the present technology.
図1の伝送システム1は、イメージセンサ11とDSP12から構成される。イメージセンサ11とDSP12はそれぞれ異なるLSI(Large Scale Integrated Circuit)により構成され、デジタルカメラや携帯電話機などの、撮像機能を有する同じ撮像装置内に設けられる。イメージセンサ11には撮像部21と1つの送信部22が設けられ、DSP12には1つの受信部31と画像処理部32が設けられている。
The
イメージセンサ11の撮像部21は、CMOS(Complementary Metal Oxide Semiconductor)などの撮像素子よりなり、レンズを介して受光した光の光電変換を行う。また、撮像部21は、光電変換によって得られた信号のA/D変換などを行い、1フレームの画像を構成する画素データを、1画素のデータずつ順に送信部22に出力する。
The
送信部22は、撮像部21から供給された各画素のデータを、例えば撮像部21から供給された順に複数の伝送路に割り当て、複数の伝送路を介して並列にDSP12に送信する。図1の例においては、8本の伝送路を用いて画素データの伝送が行われている。イメージセンサ11とDSP12の間の伝送路は有線の伝送路であってもよいし、無線の伝送路であってもよい。以下、適宜、イメージセンサ11とDSP12の間の伝送路をレーン(Lane)という。
The
DSP12の受信部31は、8本のレーンを介して送信部22から伝送されてきた画素データを受信し、各画素のデータを順に画像処理部32に出力する。
The receiving
画像処理部32は、受信部31から供給された画素データに基づいて1フレームの画像を生成し、生成した画像を用いて各種の画像処理を行う。イメージセンサ11からDSP12に伝送される画像データはRAWデータであり、画像処理部32においては、画像データの圧縮、画像の表示、記録媒体に対する画像データの記録などの各種の処理が行われる。
The
図2は、伝送システム1の第2の構成例を示す図である。図2に示す構成のうち、図1に示す構成と同じ構成には同じ符号を付してある。重複する説明については適宜省略する。
FIG. 2 is a diagram showing a second configuration example of the
図2の伝送システム1のイメージセンサ11には、撮像部21と、2つの送信部である送信部22-1,22-2が設けられ、DSP12には、2つの受信部である受信部31-1,31-2と、画像処理部32が設けられている。
The
撮像部21は、撮像を行うことによって得られた1フレームの画像を構成する画素データを、1画素のデータずつ、送信部22-1と送信部22-2に並列に出力する。例えば、撮像部21は、奇数ラインの画素のデータを送信部22-1に出力し、偶数ラインの画素のデータを送信部22-2に出力する。
The
送信部22-1は、撮像部21から供給された各画素のデータを、例えば撮像部21から供給された順に複数のレーンに割り当て、複数のレーンを介して並列にDSP12に送信する。送信部22-2も同様に、撮像部21から供給された各画素のデータを、例えば撮像部21から供給された順に複数のレーンに割り当て、複数のレーンを介して並列にDSP12に送信する。
The transmission unit 22-1 allocates the data of each pixel supplied from the
図2の例においてもイメージセンサ11とDSP12の間は8本のレーンを介して接続されている。送信部22-1と送信部22-2は、それぞれ、4本のレーンを用いて画素データを伝送する。
Also in the example of FIG. 2, the
DSP12の受信部31-1は、4本のレーンを介して送信部22-1から伝送されてきた画素データを受信し、各画素のデータを順に画像処理部32に出力する。受信部31-2も同様に、4本のレーンを介して送信部22-2から伝送されてきた画素データを受信し、各画素のデータを順に画像処理部32に出力する。
The receiving unit 31-1 of the
画像処理部32は、受信部31-1から供給された画素データと受信部31-2から供給された画素データに基づいて1フレームの画像を生成し、生成した画像を用いて各種の画像処理を行う。
The
図2に示すようにイメージセンサ11に2つの送信部を設け、それに対応させて2つの受信部をDSP12に設けることにより、撮像部21が出力する画素データのレートが高い場合であっても画素データをDSP12に伝送することが可能になる。
As shown in FIG. 2, by providing the
図3は、伝送システム1の第3の構成例を示す図である。図3に示す構成のうち、図1に示す構成と同じ構成には同じ符号を付してある。重複する説明については適宜省略する。
FIG. 3 is a diagram showing a third configuration example of the
図3の伝送システム1においては、イメージセンサ11-1とイメージセンサ11-2の2つのイメージセンサが設けられている。イメージセンサ11-1には撮像部21-1と1つの送信部である送信部22-1が設けられ、イメージセンサ11-2には撮像部21-2と1つの送信部である送信部22-2が設けられる。DSP12には、図2の場合と同様に、2つの受信部である受信部31-1,31-2と、画像処理部32が設けられている。
In the
イメージセンサ11-1の撮像部21-1は、撮像を行うことによって得られた1フレームの画像を構成する画素データを、1画素のデータずつ順に送信部22-1に出力する。 The image pickup unit 21-1 of the image sensor 11-1 outputs the pixel data constituting the image of one frame obtained by performing the image pickup to the transmission unit 22-1 in order for each pixel data.
送信部22-1は、撮像部21-1から供給された各画素のデータを、例えば撮像部21-1から供給された順に複数のレーンに割り当て、複数のレーンを介して並列にDSP12に送信する。
The transmission unit 22-1 allocates the data of each pixel supplied from the image pickup unit 21-1 to a plurality of lanes in the order supplied from the image pickup unit 21-1, and transmits the data to the
イメージセンサ11-2の撮像部21-2は、撮像を行うことによって得られた1フレームの画像を構成する画素データを、1画素のデータずつ順に送信部22-2に出力する。 The image pickup unit 21-2 of the image sensor 11-2 outputs the pixel data constituting the one-frame image obtained by the image pickup to the transmission unit 22-2 in order for each pixel data.
送信部22-2は、撮像部21-2から供給された各画素のデータを、例えば撮像部21-2から供給された順に複数のレーンに割り当て、複数のレーンを介して並列にDSP12に送信する。
The transmission unit 22-2 allocates the data of each pixel supplied from the image pickup unit 21-2 to a plurality of lanes in the order supplied from the image pickup unit 21-2, and transmits the data to the
図3の例においてもイメージセンサ側とDSP12の間は8本のレーンを介して接続されている。イメージセンサ11-1とイメージセンサ11-2にはそれぞれ4本のレーンが割り当てられ、送信部22-1と送信部22-2は、それぞれ、4本のレーンを用いて画素データを伝送する。
Also in the example of FIG. 3, the image sensor side and the
DSP12の受信部31-1は、4本のレーンを介してイメージセンサ11-1の送信部22-1から伝送されてきた画素データを受信し、各画素のデータを順に画像処理部32に出力する。受信部31-2も同様に、4本のレーンを介してイメージセンサ11-2の送信部22-2から伝送されてきた画素データを受信し、各画素のデータを順に画像処理部32に出力する。
The receiving unit 31-1 of the
画像処理部32は、受信部31-1から供給された画素データに基づいて1フレームの画像を生成するとともに、受信部31-2から供給された画素データに基づいて1フレームの画像を生成する。画像処理部32は、生成した画像を用いて各種の画像処理を行う。
The
図3に示すように2つのイメージセンサを設けることにより、例えば、イメージセンサ11-1により撮像された左目用の画像と、イメージセンサ11-2により撮像された右目用の画像からなる3D画像を1つのDSP12で処理することが可能になる。左目用の画像と右目用の画像には視差がある。
By providing two image sensors as shown in FIG. 3, for example, a 3D image composed of an image for the left eye captured by the image sensor 11-1 and an image for the right eye captured by the image sensor 11-2 can be obtained. It becomes possible to process with one
以上のように、伝送システム1のイメージセンサには、撮像された1フレームの画像データを伝送する送信部が1つまたは複数設けられる。一方、DSPには、イメージセンサの送信部に対応して、イメージセンサから伝送されてきたデータを受信する受信部が1つまたは複数設けられる。
As described above, the image sensor of the
以下、イメージセンサ11に1つの送信部が設けられ、DSP12に1つの受信部が設けられる図1の伝送システム1におけるデータ伝送について説明する。図2と図3の送信部22-1-受信部31-1間、送信部22-2-受信部31-2間においても同様にしてデータ伝送が行われる。
Hereinafter, data transmission in the
[フレームフォーマット]
図4は、イメージセンサ11-DSP12間で1フレームの画像データを伝送するのに用いられるフォーマットの例を示す図である。[Frame format]
FIG. 4 is a diagram showing an example of a format used for transmitting one frame of image data between the
有効画素領域A1は、撮像部21により撮像された1フレームの画像の有効画素の領域である。有効画素領域A1の左側には、垂直方向の画素数が有効画素領域A1の垂直方向の画素数と同じであるマージン領域A2が設定される。
The effective pixel area A1 is an area of effective pixels of an image of one frame captured by the
有効画素領域A1の上側には、水平方向の画素数が、有効画素領域A1とマージン領域A2全体の水平方向の画素数と同じである前ダミー領域A3が設定される。図4の例においては、前ダミー領域A3にはEmbedded Dataが挿入されている。Embedded Dataは、シャッタスピード、絞り値、ゲインなどの、撮像部21による撮像に関する設定値の情報が含まれる。後ダミー領域A4にEmbedded Dataが挿入されることもある。
On the upper side of the effective pixel area A1, a front dummy area A3 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 the margin area A2 is set. In the example of FIG. 4, Embedded Data is inserted in the front dummy region A3. The Embedded Data includes information on set values related to imaging by the
有効画素領域A1の下側には、水平方向の画素数が、有効画素領域A1とマージン領域A2全体の水平方向の画素数と同じである後ダミー領域A4が設定される。 A 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 the margin area A2.
有効画素領域A1、マージン領域A2、前ダミー領域A3、および後ダミー領域A4から画像データ領域A11が構成される。 The image data area A11 is composed of an effective pixel area A1, a margin area A2, a front dummy area A3, and a rear dummy area A4.
画像データ領域A11を構成する各ラインの前にはヘッダが付加され、ヘッダの前にはStart Codeが付加される。また、画像データ領域A11を構成する各ラインの後ろにはフッタがオプションで付加され、フッタの後ろにはEnd Codeなどの後述する制御コードが付加される。フッタが付加されない場合、画像データ領域A11を構成する各ラインの後ろにEnd Codeなどの制御コードが付加される。 A header is added before each line constituting the image data area A11, and a Start Code is added before the header. Further, a footer is optionally added to the back of each line constituting the image data area A11, and a control code described later such as End Code is added to the back of the footer. When the footer is not added, a control code such as End Code is added after each line constituting the image data area A11.
撮像部21により撮像された1フレームの画像をイメージセンサ11からDSP12に伝送する毎に、図4に示すフォーマットのデータ全体が伝送データとして伝送される。
Every time one frame of an image captured by the
図4の上側の帯は下側に示す伝送データの伝送に用いられるパケットの構造を示している。水平方向の画素の並びをラインとすると、パケットのペイロードには、画像データ領域A11の1ラインを構成する画素のデータが格納される。1フレームの画像データ全体の伝送は、画像データ領域A11の垂直方向の画素数以上の数のパケットを用いて行われることになる。 The upper band of FIG. 4 shows the structure of the packet used for transmitting the transmission data shown on the lower side. Assuming that the arrangement of pixels in the horizontal direction is a line, the data of the pixels constituting one line of the image data area A11 is stored in the payload of the packet. The transmission of the entire image data in one frame is performed using the number of packets equal to or larger than the number of pixels in the vertical direction of the image data area A11.
1ライン分の画素データが格納されたペイロードに、ヘッダとフッタが付加されることによって1パケットが構成される。後に詳述するように、ヘッダには、Frame Start, Frame End, Line Valid, Line Number, ECCなどの、ペイロードに格納されている画素データの付加的な情報が含まれる。各パケットには、制御コードであるStart CodeとEnd Codeが少なくとも付加される。 One packet is formed by adding a header and a footer to the payload in which pixel data for one line is stored. As described in detail later, the header contains additional information about the pixel data stored in the payload, such as Frame Start, Frame End, Line Valid, Line Number, ECC. At least the control codes Start Code and End Code are added to each packet.
このように、1フレームの画像を構成する画素データをライン毎に伝送するフォーマットを採用することによって、ヘッダ等の付加的な情報やStart Code, End Codeなどの制御コードをライン毎のブランキング期間中に伝送することが可能になる。 In this way, by adopting a format in which the pixel data constituting one frame image is transmitted for each line, additional information such as a header and control codes such as Start Code and End Code can be transmitted to each line for a blanking period. It will be possible to transmit inside.
[送信部22と受信部31の構成]
図5は、送信部22と受信部31の構成例を示す図である。[Structure of
FIG. 5 is a diagram showing a configuration example of the transmitting
図5の左側に破線で囲んで示す構成が送信部22の構成であり、右側に破線で囲んで示す構成が受信部31の構成である。送信部22と受信部31は、それぞれ、リンクレイヤの構成と物理レイヤの構成からなる。実線L2より上側に示す構成がリンクレイヤの構成であり、実線L2より下側に示す構成が物理レイヤの構成である。
The configuration shown by the dashed line on the left side of FIG. 5 is the configuration of the transmitting
なお、実線L1の上に示す構成はアプリケーションレイヤの構成である。システム制御部51、フレームデータ入力部52、およびレジスタ53は撮像部21において実現される。システム制御部51は、送信部22のLINK-TXプロトコル管理部61と通信を行い、フレームフォーマットに関する情報を提供するなどして画像データの伝送を制御する。フレームデータ入力部52は、ユーザによる指示などに応じて撮像を行い、撮像を行うことによって得られた画像を構成する各画素のデータを送信部22のPixel to Byte変換部62に供給する。レジスタ53は、Pixel to Byte変換のビット数やLane数等の情報を記憶する。レジスタ53に記憶されている情報に従って画像データの送信処理が行われる。
The configuration shown above the solid line L1 is the configuration of the application layer. The
また、アプリケーションレイヤの構成のうちのフレームデータ出力部141、レジスタ142、およびシステム制御部143は画像処理部32において実現される。フレームデータ出力部141は、受信部31から供給された各ラインの画素データに基づいて1フレームの画像を生成し、出力する。フレームデータ出力部141から出力された画像を用いて各種の処理が行われる。レジスタ142は、Byte to Pixel変換のビット数やLane数などの、画像データの受信に関する各種の設定値を記憶する。レジスタ142に記憶されている情報に従って画像データの受信処理が行われる。システム制御部143は、LINK-RXプロトコル管理部121と通信を行い、モードチェンジ等のシーケンスを制御する。
Further, the frame
[送信部22のリンクレイヤの構成]
はじめに、送信部22のリンクレイヤの構成について説明する。[Structure of link layer of transmitter 22]
First, the configuration of the link layer of the
送信部22には、リンクレイヤの構成として、LINK-TXプロトコル管理部61、Pixel to Byte変換部62、ペイロードECC挿入部63、パケット生成部64、およびレーン分配部65が設けられる。LINK-TXプロトコル管理部61は、状態制御部71、ヘッダ生成部72、データ挿入部73、およびフッタ生成部74から構成される。
The
LINK-TXプロトコル管理部61の状態制御部71は、送信部22のリンクレイヤの状態を管理する。
The
ヘッダ生成部72は、1ライン分の画素データが格納されたペイロードに付加されるヘッダを生成し、パケット生成部64に出力する。
The
図6は、ヘッダ生成部72により生成されるヘッダの構造を示す図である。
FIG. 6 is a diagram showing the structure of the header generated by the
上述したように、1パケット全体は、ヘッダと、1ライン分の画素データであるペイロードデータから構成される。パケットにはフッタが付加されることもある。ヘッダは、ヘッダ情報とHeader ECCから構成される。 As described above, one packet as a whole is composed of a header and payload data which is pixel data for one line. A footer may be added to the packet. The header consists of header information and Header ECC.
ヘッダ情報には、Frame Start, Frame End, Line Valid, Line Number, Reservedが含まれる。各情報の内容と情報量を図7に示す。 Header information includes Frame Start, Frame End, Line Valid, Line Number, Reserved. The content and amount of each information are shown in FIG.
Frame Startは、フレームの先頭を示す1ビットの情報である。図4の画像データ領域A11の1ライン目の画素データの伝送に用いられるパケットのヘッダのFrame Startには1の値が設定され、他のラインの画素データの伝送に用いられるパケットのヘッダのFrame Startには0の値が設定される。 Frame Start is 1-bit information indicating the beginning of a frame. A value of 1 is set in the Frame Start of the packet header used for transmitting the pixel data of the first line of the image data area A11 of FIG. 4, and the Frame of the packet header used for transmitting the pixel data of the other line is set. A value of 0 is set for Start.
Frame Endは、フレームの終端を示す1ビットの情報である。有効画素領域A1の終端ラインの画素データをペイロードに含むパケットのヘッダのFrame Endには1の値が設定され、他のラインの画素データの伝送に用いられるパケットのヘッダのFrame Endには0の値が設定される。 Frame End is 1-bit information indicating the end of the frame. A value of 1 is set in the Frame End of the header of the packet containing the pixel data of the end line of the effective pixel area A1 in the payload, and 0 in the Frame End of the header of the packet used for transmitting the pixel data of the other line. The value is set.
Frame StartとFrame Endが、フレームに関する情報であるフレーム情報となる。 Frame Start and Frame End are frame information which is information about the frame.
Line Validは、ペイロードに格納されている画素データのラインが有効画素のラインであるのか否かを表す1ビットの情報である。有効画素領域A1内のラインの画素データの伝送に用いられるパケットのヘッダのLine Validには1の値が設定され、他のラインの画素データの伝送に用いられるパケットのヘッダのLine Validには0の値が設定される。 Line Valid is 1-bit information indicating whether or not the line of pixel data stored in the payload is a line of valid pixels. A value of 1 is set in Line Valid of the packet header used for transmitting the pixel data of the line in the effective pixel area A1, and 0 is set in Line Valid of the header of the packet used for transmitting the pixel data of the other line. The value of is set.
Line Numberは、ペイロードに格納されている画素データにより構成されるラインのライン番号を表す13ビットの情報である。 The Line Number is 13-bit information representing a line number of a line composed of pixel data stored in the payload.
Line ValidとLine Numberが、ラインに関する情報であるライン情報となる。 Line Valid and Line Number are line information that is information about the line.
Reservedは拡張用の32ビットの領域である。ヘッダ情報全体のデータ量は6バイトになる。 Reserved is a 32-bit area for expansion. The total amount of data in the header information is 6 bytes.
図6に示すように、ヘッダ情報に続けて配置されるHeader ECCには、6バイトのヘッダ情報に基づいて計算された2バイトの誤り検出符号であるCRC(Cyclic Redundancy Check)符号が含まれる。また、Header ECCには、CRC符号に続けて、ヘッダ情報とCRC符号の組である8バイトの情報と同じ情報が2つ含まれる。 As shown in FIG. 6, the Header ECC arranged after the header information includes a CRC (Cyclic Redundancy Check) code, which is a 2-byte error detection code calculated based on the 6-byte header information. Further, the Header ECC includes two pieces of the same information as the 8-byte information which is a set of the header information and the CRC code, following the CRC code.
すなわち、1つのパケットのヘッダには、同じヘッダ情報とCRC符号の組が3つ含まれる。ヘッダ全体のデータ量は、1組目のヘッダ情報とCRC符号の組の8バイトと、2組目のヘッダ情報とCRC符号の組の8バイトと、3組目のヘッダ情報とCRC符号の組の8バイトとの、あわせて24バイトになる。 That is, the header of one packet contains three sets of the same header information and CRC code. The amount of data in the entire header is 8 bytes for the first set of header information and CRC code, 8 bytes for the second set of header information and CRC code, and the third set of header information and CRC code. It becomes 24 bytes in total with 8 bytes of.
図8は、ヘッダ情報とCRC符号の1つの組を構成する8バイトのビット配列の例を示す図である。 FIG. 8 is a diagram showing an example of an 8-byte bit array constituting one set of header information and CRC code.
ヘッダを構成する8バイトのうちの1番目の1バイトであるバイトH7には、1ビット目から順に、Frame Start, Frame End, Line Validの各1ビットと、Line Numberの13ビットのうちの1~5ビット目が含まれる。また、2番目の1バイトであるバイトH6には、Line Numberの13ビットのうちの6~13ビット目が含まれる。 In byte H7, which is the first 1 byte of the 8 bytes constituting the header, 1 bit each of Frame Start, Frame End, and Line Valid and 1 of 13 bits of Line Number are in order from the 1st bit. ~ 5th bit is included. Further, the second byte H6 includes the 6th to 13th bits of the 13 bits of the Line Number.
3番目の1バイトであるバイトH5から6番目の1バイトであるバイトH2がReservedとなる。7番目の1バイトであるバイトH1と8番目の1バイトであるバイトH0にはCRC符号の各ビットが含まれる。 Byte H5, which is the third 1-byte, to byte H2, which is the sixth 1-byte, are Reserved. The 7th 1-byte byte H1 and the 8th 1-byte byte H0 include each bit of the CRC code.
図5の説明に戻り、ヘッダ生成部72は、システム制御部51による制御に従ってヘッダ情報を生成する。例えば、システム制御部51からは、フレームデータ入力部52が出力する画素データのライン番号を表す情報や、フレームの先頭、終端を表す情報が供給される。
Returning to the description of FIG. 5, the
また、ヘッダ生成部72は、ヘッダ情報を生成多項式に適用してCRC符号を計算する。ヘッダ情報に付加されるCRC符号の生成多項式は例えば下式(1)により表される。
ヘッダ生成部72は、ヘッダ情報にCRC符号を付加することによってヘッダ情報とCRC符号の組を生成し、同じヘッダ情報とCRC符号の組を3組繰り返して配置することによってヘッダを生成する。ヘッダ生成部72は、生成したヘッダをパケット生成部64に出力する。
The
データ挿入部73は、スタッフィング(stuffing)に用いられるデータを生成し、Pixel to Byte変換部62とレーン分配部65に出力する。Pixel to Byte変換部62に供給されたスタッフィングデータであるペイロードスタッフィングデータは、Pixel to Byte変換後の画素データに付加され、ペイロードに格納される画素データのデータ量の調整に用いられる。また、レーン分配部65に供給されたスタッフィングデータであるレーンスタッフィングデータは、レーン割り当て後のデータに付加され、レーン間のデータ量の調整に用いられる。
The
フッタ生成部74は、システム制御部51による制御に応じて、適宜、ペイロードデータを生成多項式に適用して32ビットのCRC符号を計算し、計算により求めたCRC符号をフッタとしてパケット生成部64に出力する。フッタとして付加されるCRC符号の生成多項式は例えば下式(2)により表される。
Pixel to Byte変換部62は、フレームデータ入力部52から供給された画素データを取得し、各画素のデータを1バイト単位のデータに変換するPixel to Byte変換を行う。例えば、撮像部21により撮像された画像の各画素の画素値(RGB)は、8ビット、10ビット、12ビット、14ビット、16ビットのうちのいずれかのビット数で表される。
The Pixel to
図9は、各画素の画素値が8ビットで表される場合のPixel to Byte変換の例を示す図である。 FIG. 9 is a diagram showing an example of Pixel to Byte conversion when the pixel value of each pixel is represented by 8 bits.
Data[0]がLSBを表し、数字の最も大きいData[7]がMSBを表す。白抜き矢印で示すように、この場合、画素Nの画素値を表すData[7]~[0]の8ビットは、Data[7]~[0]からなるByte Nに変換される。各画素の画素値が8ビットで表される場合、Pixel to Byte変換後のバイト単位のデータの数は、画素の数と同じ数になる。 Data [0] represents the LSB, and Data [7] with the largest number represents the MSB. As shown by the white arrow, in this case, the 8 bits of Data [7] to [0] representing the pixel value of pixel N are converted into Byte N consisting of Data [7] to [0]. When the pixel value of each pixel is represented by 8 bits, the number of data in byte units after Pixel to Byte conversion is the same as the number of pixels.
図10は、各画素の画素値が10ビットで表される場合のPixel to Byte変換の例を示す図である。 FIG. 10 is a diagram showing an example of Pixel to Byte conversion when the pixel value of each pixel is represented by 10 bits.
この場合、画素Nの画素値を表すData[9]~[0]の10ビットは、Data[9]~[2]からなるByte 1.25*Nに変換される。 In this case, the 10 bits of Data [9] to [0] representing the pixel values of pixel N are converted into Byte 1.25 * N consisting of Data [9] to [2].
画素N+1~N+3についても同様に、それぞれの画素値を表すData[9]~[0]の10ビットが、Data[9]~[2]からなるByte 1.25*N+1~Byte 1.25*N+3に変換される。また、画素N~N+3のそれぞれの下位のビットであるData[1]とData[0]が集められてByte 1.25*N+4に変換される。各画素の画素値が10ビットで表される場合、Pixel to Byte変換後のバイト単位のデータの数は、画素の数の1.25倍の数になる。 Similarly for pixels N + 1 to N + 3, 10 bits of Data [9] to [0] representing each pixel value are Byte 1.25 * N + 1 to Byte consisting of Data [9] to [2]. Converted to 1.25 * N + 3. In addition, Data [1] and Data [0], which are lower bits of pixels N to N + 3, are collected and converted to Byte 1.25 * N + 4. When the pixel value of each pixel is represented by 10 bits, the number of data in byte units after Pixel to Byte conversion is 1.25 times the number of pixels.
図11は、各画素の画素値が12ビットで表される場合のPixel to Byte変換の例を示す図である。 FIG. 11 is a diagram showing an example of Pixel to Byte conversion when the pixel value of each pixel is represented by 12 bits.
この場合、画素Nの画素値を表すData[11]~[0]の12ビットは、Data[11]~[4]からなるByte 1.5*Nに変換される。 In this case, the 12 bits of Data [11] to [0] representing the pixel values of pixel N are converted into Byte 1.5 * N consisting of Data [11] to [4].
画素N+1についても同様に、画素N+1の画素値を表すData[11]~[0]の12ビットが、Data[11]~[4]からなるByte 1.5*N+1に変換される。また、画素Nと画素N+1のそれぞれの下位のビットであるData[3]~[0]が集められてByte 1.5*N+2に変換される。各画素の画素値が12ビットで表される場合、Pixel to Byte変換後のバイト単位のデータの数は、画素の数の1.5倍の数になる。 Similarly for pixel N + 1, the 12 bits of Data [11] to [0] representing the pixel value of pixel N + 1 are converted to Byte 1.5 * N + 1 consisting of Data [11] to [4]. To. Further, Data [3] to [0], which are lower bits of each of pixel N and pixel N + 1, are collected and converted into Byte 1.5 * N + 2. When the pixel value of each pixel is represented by 12 bits, the number of data in byte units after Pixel to Byte conversion is 1.5 times the number of pixels.
図12は、各画素の画素値が14ビットで表される場合のPixel to Byte変換の例を示す図である。 FIG. 12 is a diagram showing an example of Pixel to Byte conversion when the pixel value of each pixel is represented by 14 bits.
この場合、画素Nの画素値を表すData[13]~[0]の14ビットは、Data[13]~[6]からなるByte 1.75*Nに変換される。 In this case, the 14 bits of Data [13] to [0] representing the pixel values of pixel N are converted into Byte 1.75 * N consisting of Data [13] to [6].
画素N+1~N+3についても同様に、それぞれの画素値を表すData[13]~[0]の14ビットが、Data[13]~[6]からなるByte 1.75*N+1~Byte 1.75*N+3に変換される。また、画素N~N+3のビットのうちの残ったビットが下位のビットから順に集められ、例えば、画素NのビットであるData[5]~[0]と、画素N+1のビットであるData[5],[4]がByte 1.75*N+4に変換される。 Similarly for pixels N + 1 to N + 3, the 14 bits of Data [13] to [0] representing each pixel value are Byte 1.75 * N + 1 to Byte consisting of Data [13] to [6]. Converted to 1.75 * N + 3. Further, 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 the bits of pixel N, and the bits of pixel N + 1. Some Data [5], [4] are converted to Byte 1.75 * N + 4.
同様に、画素N+1のビットであるData[3]~[0]と、画素N+2のビットであるData[5]~[2]がByte 1.75*N+5に変換され、画素N+2のビットであるData[1],[0]と、画素N+3のビットであるData[5]~[0]がByte 1.75*N+6に変換される。各画素の画素値が14ビットで表される場合、Pixel to Byte変換後のバイト単位のデータの数は、画素の数の1.75倍の数になる。 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 to Byte 1.75 * N + 5, and pixel N is converted. Data [1], [0], which are +2 bits, and Data [5] to [0], which are bits of pixel N + 3, are converted to Byte 1.75 * N + 6. When the pixel value of each pixel is represented by 14 bits, the number of data in byte units after Pixel to Byte conversion is 1.75 times the number of pixels.
図13は、各画素の画素値が16ビットで表される場合のPixel to Byte変換の例を示す図である。 FIG. 13 is a diagram showing an example of Pixel to Byte conversion when the pixel value of each pixel is represented by 16 bits.
この場合、画素Nの画素値を表すData[15]~[0]の16ビットは、Data[15]~[8]からなるByte 2*NとData[7]~[0]からなるByte 2*N+1に変換される。各画素の画素値が16ビットで表される場合、Pixel to Byte変換後のバイト単位のデータの数は、画素の数の2倍の数になる。
In this case, the 16 bits of Data [15] to [0] representing the pixel values of pixel N are
図5のPixel to Byte変換部62は、このようなPixel to Byte変換を例えばラインの左端の画素から順に各画素を対象として行う。また、Pixel to Byte変換部62は、Pixel to Byte変換によって得られたバイト単位の画素データに、データ挿入部73から供給されたペイロードスタッフィングデータを付加することによってペイロードデータを生成し、ペイロードECC挿入部63に出力する。
The Pixel to
図14は、ペイロードデータの例を示す図である。 FIG. 14 is a diagram showing an example of payload data.
図14は、各画素の画素値が10ビットで表される場合のPixel to Byte変換によって得られた画素データを含むペイロードデータを示している。色を付していない1つのブロックが、Pixel to Byte変換後のバイト単位の画素データを表す。また、色を付している1つのブロックが、データ挿入部73により生成されたペイロードスタッフィングデータを表す。
FIG. 14 shows payload data including pixel data obtained by Pixel to Byte conversion when the pixel value of each pixel is represented by 10 bits. One uncolored block represents byte-by-byte pixel data after Pixel to Byte conversion. Further, one colored block represents the payload stuffing data generated by the
Pixel to Byte変換後の画素データは、変換によって得られた順に、所定の数のグループにグループ化される。図14の例においては、各画素データがグループ0~15の16グループにグループ化されており、画素P0のMSBを含む画素データがグループ0に割り当てられ、画素P1のMSBを含む画素データがグループ1に割り当てられている。また、画素P2のMSBを含む画素データがグループ2に割り当てられ、画素P3のMSBを含む画素データがグループ3に割り当てられ、画素P0~P3のLSBを含む画素データがグループ4に割り当てられている。
The pixel data after Pixel to Byte conversion are grouped into a predetermined number of groups in the order obtained by the conversion. In the example of FIG. 14, each pixel data is grouped into 16 groups of
画素P4のMSBを含む画素データ以降の画素データについても、グループ5以降の各グループに順に割り当てられる。ある画素データがグループ15に割り当てられたとき、それ以降の画素データは、グループ0以降の各グループに順に割り当てられる。なお、画素データを表すブロックのうち、3本の破線が内側に付されているブロックは、Pixel to Byte変換時に、画素N~N+3のLSBを含むようにして生成されたバイト単位の画素データを表す。
Pixel data after the pixel data including the MSB of the pixel P4 is also sequentially assigned to each group after the
送信部22のリンクレイヤにおいては、このようにしてグループ化が行われた後、クロック信号によって規定される期間毎に、各グループにおいて同じ位置にある画素データを対象として処理が並行して行われる。すなわち、図14に示すように16のグループに画素データが割り当てられた場合、各列に並ぶ16の画素データを同じ期間内に処理するようにして画素データの処理が進められる。
In the link layer of the
上述したように、1つのパケットのペイロードには1ラインの画素データが含まれる。図14に示す画素データ全体が、1ラインを構成する画素データである。ここでは、図4の有効画素領域A1の画素データの処理について説明しているが、マージン領域A2等の他の領域の画素データについても有効画素領域A1の画素データとともに処理される。 As described above, the payload of one packet contains one line of pixel data. The entire pixel data shown in FIG. 14 is pixel data constituting one line. Here, the processing of the pixel data in the effective pixel region A1 of FIG. 4 is described, but the pixel data in other regions such as the margin region A2 is also processed together with the pixel data in the effective pixel region A1.
1ライン分の画素データがグループ化された後、各グループのデータ長が同じ長さになるように、ペイロードスタッフィングデータが付加される。ペイロードスタッフィングデータは1バイトのデータである。 After the pixel data for one line is grouped, the payload stuffing data is added so that the data lengths of each group have the same length. Payload stuffing data is 1 byte of data.
図14の例においては、グループ0の画素データにはペイロードスタッフィングデータが付加されず、破線で囲んで示すように、グループ1~15の各画素データには、終端にペイロードスタッフィングデータが1つずつ付加されている。画素データとスタッフィングデータからなるペイロードデータのデータ長(Byte)は下式(3)により表される。
式(3)のLineLengthはラインの画素数を表し、BitPixは1画素の画素値を表すビット数を表す。PayloadStuffingはペイロードスタッフィングデータの数を表す。 LineLength in the equation (3) represents the number of pixels of the line, and BitPix represents the number of bits representing the pixel value of one pixel. Payload Stuffing represents the number of payload stuffing data.
図14に示すように画素データを16グループに割り当てるとした場合、ペイロードスタッフィングデータの数は下式(4)により表される。式(4)の%は剰余を表す。
図15は、ペイロードデータの他の例を示す図である。 FIG. 15 is a diagram showing another example of payload data.
図15は、各画素の画素値が12ビットで表される場合のPixel to Byte変換によって得られた画素データを含むペイロードデータを示している。 FIG. 15 shows payload data including pixel data obtained by Pixel to Byte conversion when the pixel value of each pixel is represented by 12 bits.
図15の例においては、画素P0のMSBを含む画素データがグループ0に割り当てられ、画素P1のMSBを含む画素データがグループ1に割り当てられ、画素P0と画素P1のLSBを含む画素データがグループ2に割り当てられている。画素P2のMSBを含む画素データ以降の画素データについても、グループ3以降の各グループに順に割り当てられる。画素データを表すブロックのうち、1本の破線が内側に付されているブロックは、Pixel to Byte変換時に、画素Nと画素N+1のLSBを含むようにして生成されたバイト単位の画素データを表す。
In the example of FIG. 15, the pixel data including the MSB of the pixel P0 is assigned to the
図15の例においては、グループ0とグループ1の画素データにはペイロードスタッフィングデータが付加されず、グループ2~15の各画素データには、終端にペイロードスタッフィングデータが1つずつ付加されている。
In the example of FIG. 15, payload stuffing data is not added to the pixel data of
このような構成を有するペイロードデータがPixel to Byte変換部62からペイロードECC挿入部63に供給される。
Payload data having such a configuration is supplied from the Pixel to
ペイロードECC挿入部63は、Pixel to Byte変換部62から供給されたペイロードデータに基づいて、ペイロードデータの誤り訂正に用いられる誤り訂正符号を計算し、計算により求めた誤り訂正符号であるパリティをペイロードデータに挿入する。誤り訂正符号として、例えばリードソロモン符号が用いられる。なお、誤り訂正符号の挿入はオプションであり、例えば、ペイロードECC挿入部63によるパリティの挿入と、フッタ生成部74によるフッタの付加はいずれか一方のみを行うことが可能とされる。
The payload
図16は、パリティが挿入されたペイロードデータの例を示す図である。 FIG. 16 is a diagram showing an example of payload data in which parity is inserted.
図16に示すペイロードデータは、図15を参照して説明した、各画素の画素値が12ビットで表される場合のPixel to Byte変換によって得られた画素データを含むペイロードデータである。斜線を付して示すブロックがパリティを表す。 The payload data shown in FIG. 16 is the payload data including the pixel data obtained by the Pixel to Byte conversion when the pixel value of each pixel is represented by 12 bits, which was described with reference to FIG. The shaded blocks represent parity.
図16の例においては、グループ0~15の各グループの先頭の画素データから順に14個選択され、選択された224個(224バイト)の画素データに基づいて2バイトのパリティが求められている。2バイトのパリティが、その計算に用いられた224個の画素データに続けてグループ0,1の15番目のデータとして挿入され、224個の画素データと2バイトのパリティから1つ目のBasic Blockが形成される。
In the example of FIG. 16, 14 pixels are selected in order from the first pixel data of each group of
このように、ペイロードECC挿入部63においては、基本的に、224個の画素データに基づいて2バイトのパリティが生成され、224個の画素データに続けて挿入される。
As described above, in the payload
また、図16の例においては、1つ目のBasic Blockに続く224個の画素データが各グループから順に選択され、選択された224個の画素データに基づいて2バイトのパリティが求められている。2バイトのパリティが、その計算に用いられた224個の画素データに続けてグループ2,3の29番目のデータとして挿入され、224個の画素データと2バイトのパリティから2つ目のBasic Blockが形成される。
Further, in the example of FIG. 16, 224 pixel data following the first Basic Block are sequentially selected from each group, and 2-byte parity is obtained based on the selected 224 pixel data. .. A 2-byte parity is inserted as the 29th data in
あるBasic Blockに続く画素データとペイロードスタッフィングデータの数である16×Mが224に満たない場合、残っている16×M個のブロック(画素データとペイロードスタッフィングデータ)に基づいて2バイトのパリティが求められる。また、求められた2バイトのパリティがペイロードスタッフィングデータに続けて挿入され、16×M個のブロックと2バイトのパリティからExtra Blockが形成される。 If 16 × M, which is the number of pixel data and payload stuffing data following a basic block, is less than 224, 2 bytes of parity will be obtained based on the remaining 16 × M blocks (pixel data and payload stuffing data). Desired. Further, the obtained 2-byte parity is continuously inserted into the payload stuffing data, and an Extra Block is formed from 16 × M blocks and the 2-byte parity.
ペイロードECC挿入部63は、パリティを挿入したペイロードデータをパケット生成部64に出力する。パリティの挿入が行われない場合、Pixel to Byte変換部62からペイロードECC挿入部63に供給されたペイロードデータは、そのままパケット生成部64に出力される。
The payload
パケット生成部64は、ペイロードECC挿入部63から供給されたペイロードデータに、ヘッダ生成部72により生成されたヘッダを付加することによってパケットを生成する。フッタ生成部74によりフッタの生成が行われている場合、パケット生成部64は、ペイロードデータにフッタを付加することも行う。
The
図17は、ペイロードデータにヘッダを付加した状態を示す図である。 FIG. 17 is a diagram showing a state in which a header is added to the payload data.
H7~H0の文字を付して示す24個のブロックは、ヘッダ情報、またはヘッダ情報のCRC符号である、バイト単位のヘッダデータを表す。図6を参照して説明したように1つのパケットのヘッダには、ヘッダ情報とCRC符号の組が3組含まれる。 The 24 blocks indicated by the 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 FIG. 6, the header of one packet contains three sets of header information and CRC code.
例えばヘッダデータH7~H2はヘッダ情報(6バイト)であり、ヘッダデータH1,H0はCRC符号(2バイト)である。 For example, the header data H7 to H2 are header information (6 bytes), and the header data H1 and H0 are CRC codes (2 bytes).
図17の例においては、グループ0のペイロードデータには1つのヘッダデータH7が付加され、グループ1のペイロードデータには1つのヘッダデータH6が付加されている。グループ2のペイロードデータには1つのヘッダデータH5が付加され、グループ3のペイロードデータには1つのヘッダデータH4が付加されている。グループ4のペイロードデータには1つのヘッダデータH3が付加され、グループ5のペイロードデータには1つのヘッダデータH2が付加されている。グループ6のペイロードデータには1つのヘッダデータH1が付加され、グループ7のペイロードデータには1つのヘッダデータH0が付加されている。
In the example of FIG. 17, one header data H7 is added to the payload data of
また、図17の例においては、グループ8のペイロードデータには2つのヘッダデータH7が付加され、グループ9のペイロードデータには2つのヘッダデータH6が付加されている。グループ10のペイロードデータには2つのヘッダデータH5が付加され、グループ11のペイロードデータには2つのヘッダデータH4が付加されている。グループ12のペイロードデータには2つのヘッダデータH3が付加され、グループ13のペイロードデータには2つのヘッダデータH2が付加されている。グループ14のペイロードデータには2つのヘッダデータH1が付加され、グループ15のペイロードデータには2つのヘッダデータH0が付加されている。
Further, in the example of FIG. 17, two header data H7 are added to the payload data of the
図18は、ペイロードデータにヘッダとフッタを付加した状態を示す図である。 FIG. 18 is a diagram showing a state in which a header and a footer are added to the payload data.
F3~F0の文字を付して示す4個のブロックは、フッタとして生成された4バイトのCRC符号であるフッタデータを表す。図18の例においては、フッタデータF3~F0が、グループ0からグループ3のそれぞれのペイロードデータに付加されている。
The four blocks indicated by the letters F3 to F0 represent footer data, which is a 4-byte CRC code generated as a footer. In the example of FIG. 18, footer data F3 to F0 are added to the respective payload data of
図19は、パリティが挿入されたペイロードデータにヘッダを付加した状態を示す図である。 FIG. 19 is a diagram showing a state in which a header is added to the payload data in which parity is inserted.
図19の例においては、パリティが挿入された図16のペイロードデータに対して、図17、図18の場合と同様にヘッダデータH7~H0が付加されている。 In the example of FIG. 19, header data H7 to H0 are added to the payload data of FIG. 16 in which parity is inserted, as in the case of FIGS. 17 and 18.
パケット生成部64は、このようにして生成した1パケットを構成するデータであるパケットデータをレーン分配部65に出力する。レーン分配部65に対しては、ヘッダデータとペイロードデータからなるパケットデータ、ヘッダデータとペイロードデータとフッタデータからなるパケットデータ、または、ヘッダデータと、パリティが挿入されたペイロードデータからなるパケットデータが供給されることになる。図6のパケット構造は論理的なものであり、リンクレイヤ、物理レイヤにおいては、図6の構造を有するパケットのデータがバイト単位で処理される。
The
レーン分配部65は、パケット生成部64から供給されたパケットデータを、先頭のデータから順に、Lane0~7のうちのデータ伝送に用いる各レーンに割り当てる。
The
図20は、パケットデータの割り当ての例を示す図である。 FIG. 20 is a diagram showing an example of packet data allocation.
ここでは、ヘッダデータとペイロードデータとフッタデータからなるパケットデータ(図18)の割り当てについて説明する。Lane0~7の8レーンを用いてデータ伝送を行う場合のパケットデータの割り当ての例を白抜き矢印#1の先に示す。
Here, the allocation of packet data (FIG. 18) including header data, payload data, and footer data will be described. An example of packet data allocation when data transmission is performed using 8 lanes of
この場合、ヘッダデータH7~H0の3回繰り返しを構成するそれぞれのヘッダデータは、先頭のヘッダデータから順にLane0~7に割り当てられる。あるヘッダデータがLane7に割り当てられたとき、それ以降のヘッダデータは、Lane0以降の各レーンに順に割り当てられる。Lane0~7の各レーンには同じヘッダデータが3個ずつ割り当てられることになる。
In this case, each header data constituting the header data H7 to H0 repeated three times is assigned to
また、ペイロードデータは、先頭のペイロードデータから順にLane0~7に割り当てられる。あるペイロードデータがLane7に割り当てられたとき、それ以降のペイロードデータは、Lane0以降の各レーンに順に割り当てられる。
In addition, the payload data is assigned to
フッタデータF3~F0は、先頭のフッタデータから順に各レーンに割り当てられる。図20の例においては、ペイロードデータを構成する最後のペイロードスタッフィングデータがLane7に割り当てられており、フッタデータF3~F0がLane0~3に1つずつ割り当てられている。
The footer data F3 to F0 are assigned to each lane in order from the first footer data. In the example of FIG. 20, the last payload stuffing data constituting the payload data is assigned to
黒色を付して示すブロックはデータ挿入部73により生成されたレーンスタッフィングデータを表す。レーンスタッフィングデータは、1パケット分のパケットデータが各レーンに割り当てられた後、各レーンに割り当てられるデータ長が同じ長さになるように、データの数が少ないレーンに割り当てられる。レーンスタッフィングデータは1バイトのデータである。図20の例においては、データの割り当て数の少ないレーンであるLane4~7に対して、レーンスタッフィングデータが1つずつ割り当てられている。
The blocks shown in black represent the lane stuffing data generated by the
パケットデータがヘッダデータとペイロードデータとフッタデータからなる場合のレーンスタッフィングデータの数は下式(5)により表される。
式(5)のLaneNumはレーンの数を表し、PayloadLengthはペイロードデータ長(バイト)を表す。また、FooterLengthはフッタ長(バイト)を表す。 LaneNum in equation (5) represents the number of lanes, and PayloadLength represents the payload data length (bytes). FooterLength represents the footer length (bytes).
また、パケットデータが、ヘッダデータと、パリティが挿入されたペイロードデータからなる場合のレーンスタッフィングデータの数は下式(6)により表される。式(6)のParityLengthは、ペイロードに含まれるパリティの総バイト数を表す。
Lane0~5の6レーンを用いてデータ伝送を行う場合のパケットデータの割り当ての例を白抜き矢印#2の先に示す。
An example of packet data allocation when data transmission is performed using 6
この場合、ヘッダデータH7~H0の3回繰り返しを構成するそれぞれのヘッダデータは、先頭のヘッダデータから順にLane0~5に割り当てられる。あるヘッダデータがLane5に割り当てられたとき、それ以降のヘッダデータは、Lane0以降の各レーンに順に割り当てられる。Lane0~5の各レーンには4個ずつヘッダデータが割り当てられることになる。
In this case, each header data constituting the header data H7 to H0 repeated three times is assigned to
また、ペイロードデータは、先頭のペイロードデータから順にLane0~5に割り当てられる。あるペイロードデータがLane5に割り当てられたとき、それ以降のペイロードデータは、Lane0以降の各レーンに順に割り当てられる。
In addition, the payload data is assigned to
フッタデータF3~F0は、先頭のフッタデータから順に各レーンに割り当てられる。図20の例においては、ペイロードデータを構成する最後のペイロードスタッフィングデータがLane1に割り当てられており、フッタデータF3~F0がLane2~5に1つずつ割り当てられている。Lane0~5のパケットデータの数が同じ数であるから、この場合、レーンスタッフィングデータは用いられない。
The footer data F3 to F0 are assigned to each lane in order from the first footer data. In the example of FIG. 20, the last payload stuffing data constituting the payload data is assigned to
Lane0~3の4レーンを用いてデータ伝送を行う場合のパケットデータの割り当ての例を白抜き矢印#3の先に示す。
An example of packet data allocation when data transmission is performed using 4
この場合、ヘッダデータH7~H0の3回繰り返しを構成するそれぞれのヘッダデータは、先頭のヘッダデータから順にLane0~3に割り当てられる。あるヘッダデータがLane3に割り当てられたとき、それ以降のヘッダデータは、Lane0以降の各レーンに順に割り当てられる。Lane0~3の各レーンには6個ずつヘッダデータが割り当てられることになる。
In this case, each header data constituting the header data H7 to H0 repeated three times is assigned to
また、ペイロードデータは、先頭のペイロードデータから順にLane0~3に割り当てられる。あるペイロードデータがLane3に割り当てられたとき、それ以降のペイロードデータは、Lane0以降の各レーンに順に割り当てられる。
In addition, the payload data is assigned to
フッタデータF3~F0は、先頭のフッタデータから順に各レーンに割り当てられる。図20の例においては、ペイロードデータを構成する最後のペイロードスタッフィングデータがLane3に割り当てられており、フッタデータF3~F0がLane0~3に1つずつ割り当てられている。Lane0~3のパケットデータの数が同じ数であるから、この場合、レーンスタッフィングデータは用いられない。
The footer data F3 to F0 are assigned to each lane in order from the first footer data. In the example of FIG. 20, the last payload stuffing data constituting the payload data is assigned to
レーン分配部65は、このようにして各レーンに割り当てたパケットデータを物理レイヤに出力する。以下、Lane0~7の8レーンを用いてデータを伝送する場合について主に説明するが、データ伝送に用いるレーンの数が他の数の場合であっても同様の処理が行われる。
The
[送信部22の物理レイヤの構成]
次に、送信部22の物理レイヤの構成について説明する。[Structure of physical layer of transmitter 22]
Next, the configuration of the physical layer of the
送信部22には、物理レイヤの構成として、PHY-TX状態制御部81、クロック生成部82、信号処理部83-0乃至83-Nが設けられる。信号処理部83-0は、制御コード挿入部91、8B10Bシンボルエンコーダ92、同期部93、および送信部94から構成される。レーン分配部65から出力された、Lane0に割り当てられたパケットデータは信号処理部83-0に入力され、Lane1に割り当てられたパケットデータは信号処理部83-1に入力される。また、LaneNに割り当てられたパケットデータは信号処理部83-Nに入力される。
The
このように、送信部22の物理レイヤには、信号処理部83-0乃至83-Nがレーンの数と同じ数だけ設けられ、各レーンを用いて伝送するパケットデータの処理が、信号処理部83-0乃至83-Nのそれぞれにおいて並行して行われる。信号処理部83-0の構成について説明するが、信号処理部83-1乃至83-Nも同様の構成を有する。
As described above, the physical layer of the
PHY-TX状態制御部81は、信号処理部83-0乃至83-Nの各部を制御する。例えば、信号処理部83-0乃至83-Nにより行われる各処理のタイミングがPHY-TX状態制御部81により制御される。
The PHY-TX
クロック生成部82は、クロック信号を生成し、信号処理部83-0乃至83-Nのそれぞれの同期部93に出力する。
The
信号処理部83-0の制御コード挿入部91は、レーン分配部65から供給されたパケットデータに対して制御コードを付加する。制御コードは、予め用意された複数種類のシンボルの中から選択された1つのシンボルにより、または複数種類のシンボルの組み合わせにより表されるコードである。制御コード挿入部91により挿入される各シンボルは8ビットのデータである。後段の回路で8B10B変換が施されることによって、制御コード挿入部91により挿入された1シンボルは10ビットのデータになる。一方、受信部31においては後述するように受信データに対して10B8B変換が施されるが、受信データに含まれる10B8B変換前の各シンボルは10ビットのデータであり、10B8B変換後の各シンボルは8ビットのデータになる。
The control
図21は、制御コード挿入部91により付加される制御コードの例を示す図である。
FIG. 21 is a diagram showing an example of a control code added by the control
制御コードには、Idle Code, Start Code, End Code, Pad Code, Sync Code, Deskew Code, Standby Codeがある。 Control codes include Idle Code, Start Code, End Code, Pad Code, Sync Code, Deskew Code, and Standby Code.
Idle Codeは、パケットデータの伝送時以外の期間に繰り返し送信されるシンボル群である。Idle Codeは、8B10B CodeであるD CharacterのD00.0(00000000)で表される。 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 which is 8B10B Code.
Start Codeは、パケットの開始を示すシンボル群である。上述したように、Start Codeはパケットの前に付加される。Start Codeは、3種類のK Characterの組み合わせであるK28.5, K27.7, K28.2, K27.7の4シンボルで表される。それぞれのK Characterの値を図22に示す。 Start Code is a group of symbols indicating the start of a packet. As mentioned above, the Start Code is prepended to 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 K Character is shown in FIG.
End Codeは、パケットの終了を示すシンボル群である。上述したように、End Codeはパケットの後ろに付加される。End Codeは、3種類のK Characterの組み合わせであるK28.5, K29.7, K30.7, K29.7の4シンボルで表される。 End Code is a group of symbols indicating the end of the 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.
Pad Codeは、画素データ帯域とPHY伝送帯域の差を埋めるためにペイロードデータ中に挿入されるシンボル群である。画素データ帯域は、撮像部21から出力され、送信部22に入力される画素データの伝送レートであり、PHY伝送帯域は、送信部22から送信され、受信部31に入力される画素データの伝送レートである。Pad Codeは、4種類のK Characterの組み合わせであるK23.7, K28.4, K28.6, K28.3の4シンボルで表される。
Pad Code is a group of symbols inserted in the payload data to fill the difference between the pixel data band and the PHY transmission band. The pixel data band is the transmission rate of pixel data output from the
図23は、Pad Codeの挿入の例を示す図である。 FIG. 23 is a diagram showing an example of inserting a Pad Code.
図23の上段は、Pad Code挿入前の、各レーンに割り当てられたペイロードデータを示し、下段は、Pad Code挿入後のペイロードデータを示す。図23の例においては、先頭から3番目の画素データと4番目の画素データの間、6番目の画素データと7番目の画素データの間、12番目の画素データと13番目の画素データの間にPad Codeが挿入されている。このように、Pad Codeは、Lane0~7の各レーンのペイロードデータの同じ位置に挿入される。
The upper part of FIG. 23 shows the payload data assigned to each lane before the Pad Code is inserted, and the lower part shows the payload data after the Pad Code is inserted. In the example of FIG. 23, between the third pixel data and the fourth pixel data from the beginning, between the sixth pixel data and the seventh pixel data, and between the twelfth pixel data and the thirteenth pixel data. Pad Code is inserted in. In this way, the Pad Code is inserted at the same position in the payload data of each
Lane0に割り当てられたペイロードデータに対するPad Codeの挿入は信号処理部83-0の制御コード挿入部91により行われる。他のレーンに割り当てられたペイロードデータに対するPad Codeの挿入も同様に、信号処理部83-1乃至83-Nにおいてそれぞれ同じタイミングで行われる。Pad Codeの数は、画素データ帯域とPHY伝送帯域の差と、クロック生成部82が生成するクロック信号の周波数などに基づいて決定される。
The Pad Code is inserted into the payload data assigned to
このように、Pad Codeは、画素データ帯域が狭く、PHY伝送帯域が広い場合に、双方の帯域の差を調整するために挿入される。例えば、Pad Codeが挿入されることによって、画素データ帯域とPHY伝送帯域の差が一定の範囲内に収まるように調整される。 In this way, the Pad Code is inserted to adjust the difference between the two bands when 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.
図21の説明に戻り、Sync Codeは、送信部22-受信部31間のビット同期、シンボル同期を確保するために用いられるシンボル群である。Sync Codeは、K28.5, Any**の2シンボルで表される。Any**は、どの種類のシンボルが用いられてもよいことを表す。Sync Codeは、例えば送信部22-受信部31間でパケットデータの伝送が開始される前のトレーニングモード時に繰り返し送信される。
Returning to the description of FIG. 21, the Sync Code is a symbol group used for ensuring bit synchronization and symbol synchronization between the transmitting
Deskew Codeは、レーン間のData Skew、すなわち、受信部31の各レーンで受信されるデータの受信タイミングのずれの補正に用いられるシンボル群である。Deskew Codeは、K28.5, Any**の2シンボルで表される。Deskew Codeを用いたレーン間のData Skewの補正については後述する。
The Deskew Code is a Data Skew between lanes, that is, a symbol group used for correcting the deviation of the reception timing of the data received in each lane of the receiving
Standby Codeは、送信部22の出力がHigh-Z(ハイインピーダンス)などの状態になり、データ伝送が行われなくなることを受信部31に通知するために用いられるシンボル群である。すなわち、Standby Codeは、パケットデータの伝送を終了し、Standby状態になるときに受信部31に対して伝送される。Standby Codeは、K28.5, Any**の2シンボルで表される。
The Standby Code is a symbol group used to notify the receiving
制御コード挿入部91は、このような制御コードを付加したパケットデータを8B10Bシンボルエンコーダ92に出力する。
The control
図24は、制御コード挿入後のパケットデータの例を示す図である。 FIG. 24 is a diagram showing an example of packet data after the control code is inserted.
図24に示すように、信号処理部83-0乃至83-Nにおいては、それぞれ、パケットデータの前にStart Codeが付加され、ペイロードデータにPad Codeが挿入される。パケットデータの後ろにはEnd Codeが付加され、End Codeの後ろにDeskew Codeが付加される。図24の例においては、Deskew Codeの後ろにIdle Codeが付加されている。 As shown in FIG. 24, in each of the signal processing units 83-0 to 83-N, a Start Code is added before the packet data, and a Pad Code is inserted in the payload data. The End Code is added after the packet data, and the Deskew Code is added after the End Code. In the example of FIG. 24, the Idle Code is added after the Deskew Code.
8B10Bシンボルエンコーダ92は、制御コード挿入部91から供給されたパケットデータ(制御コードが付加されたパケットデータ)に対して8B10B変換を施し、10ビット単位のデータに変換したパケットデータを同期部93に出力する。
The
同期部93は、8B10Bシンボルエンコーダ92から供給されたパケットデータの各ビットを、クロック生成部82により生成されたクロック信号に従って送信部94に出力する。なお、送信部22に同期部93が設けられないようにしてもよい。この場合、8B10Bシンボルエンコーダ92から出力されたパケットデータは、送信部94にそのまま供給される。
The
送信部94は、Lane0を構成する伝送路を介して、同期部93から供給されたパケットデータを受信部31に送信する。8レーンを用いてデータ伝送が行われる場合、Lane1~7を構成する伝送路をも用いてパケットデータが受信部31に送信される。
The
[受信部31の物理レイヤの構成]
次に、受信部31の物理レイヤの構成について説明する。[Structure of physical layer of receiver 31]
Next, the configuration of the physical layer of the receiving
受信部31には、物理レイヤの構成として、PHY-RX状態制御部101、信号処理部102-0乃至102-Nが設けられる。信号処理部102-0は、受信部111、クロック生成部112、同期部113、シンボル同期部114、10B8Bシンボルデコーダ115、スキュー補正部116、および制御コード除去部117から構成される。Lane0を構成する伝送路を介して送信されてきたパケットデータは信号処理部102-0に入力され、Lane1を構成する伝送路を介して送信されてきたパケットデータは信号処理部102-1に入力される。また、LaneNを構成する伝送路を介して送信されてきたパケットデータは信号処理部102-Nに入力される。
The receiving
このように、受信部31の物理レイヤには、信号処理部102-0乃至102-Nがレーンの数と同じ数だけ設けられ、各レーンを用いて伝送されてきたパケットデータの処理が、信号処理部102-0乃至102-Nのそれぞれにおいて並行して行われる。信号処理部102-0の構成について説明するが、信号処理部102-1乃至102-Nも同様の構成を有する。
As described above, the physical layer of the receiving
受信部111は、Lane0を構成する伝送路を介して送信部22から伝送されてきたパケットデータを表す信号を受信し、クロック生成部112に出力する。
The receiving
クロック生成部112は、受信部111から供給された信号のエッジを検出することによってビット同期をとり、エッジの検出周期に基づいてクロック信号を生成する。クロック生成部112は、受信部111から供給された信号を、クロック信号とともに同期部113に出力する。
The clock generation unit 112 performs bit synchronization by detecting the edge of the signal supplied from the
同期部113は、クロック生成部112により生成されたクロック信号に従って、受信部111において受信された信号のサンプリングを行い、サンプリングによって得られたパケットデータをシンボル同期部114に出力する。クロック生成部112と同期部113によりCDR(Clock Data Recovery)の機能が実現される。
The
シンボル同期部114は、パケットデータに含まれる制御コードを検出することによって、または制御コードに含まれる一部のシンボルを検出することによってシンボル同期をとる。例えば、シンボル同期部114は、Start Code, End Code, Deskew Codeに含まれるK28.5のシンボルを検出し、シンボル同期をとる。シンボル同期部114は、各シンボルを表す10ビット単位のパケットデータを10B8Bシンボルデコーダ115に出力する。
The
また、シンボル同期部114は、パケットデータの伝送が開始される前のトレーニングモード時に送信部22から繰り返し送信されてくるSync Codeに含まれるシンボルの境界を検出することによってシンボル同期をとる。
Further, the
10B8Bシンボルデコーダ115は、シンボル同期部114から供給された10ビット単位のパケットデータに対して10B8B変換を施し、8ビット単位のデータに変換したパケットデータをスキュー補正部116に出力する。
The
スキュー補正部116は、10B8Bシンボルデコーダ115から供給されたパケットデータからDeskew Codeを検出する。スキュー補正部116によるDeskew Codeの検出タイミングの情報はPHY-RX状態制御部101に供給される。
The
また、スキュー補正部116は、Deskew Codeのタイミングを、PHY-RX状態制御部101から供給された情報により表されるタイミングに合わせるようにしてレーン間のData Skewを補正する。PHY-RX状態制御部101からは、信号処理部102-0乃至102-Nのそれぞれにおいて検出されたDeskew Codeのタイミングのうち、最も遅いタイミングを表す情報が供給されてくる。
Further, the
図25は、Deskew Codeを用いたレーン間のData Skewの補正の例を示す図である。 FIG. 25 is a diagram showing an example of correction of Data Skew between lanes using Deskew Code.
図25の例においては、Lane0~7の各レーンにおいて、Sync Code, Sync Code,…,Idle Code, Deskew Code, Idle Code, …, Idle Code, Deskew Codeの伝送が行われ、それぞれの制御コードが受信部31において受信されている。同じ制御コードの受信タイミングがレーン毎に異なり、レーン間のData Skewが生じている状態になっている。
In the example of FIG. 25, Sync Code, Sync Code,…, Idle Code, Deskew Code, Idle Code,…, Idle Code, Deskew Code are transmitted in each lane of
この場合、スキュー補正部116は、1つ目のDeskew CodeであるDeskew Code C1を検出し、Deskew Code C1の先頭のタイミングを、PHY-RX状態制御部101から供給された情報により表される時刻t1に合わせるように補正する。PHY-RX状態制御部101からは、Lane0~7の各レーンにおいてDeskew Code C1が検出されたタイミングのうち、最も遅いタイミングであるLane7においてDeskew Code C1が検出された時刻t1の情報が供給されてくる。
In this case, the
また、スキュー補正部116は、2つ目のDeskew CodeであるDeskew Code C2を検出し、Deskew Code C2の先頭のタイミングを、PHY-RX状態制御部101から供給された情報により表される時刻t2に合わせるように補正する。PHY-RX状態制御部101からは、Lane0~7の各レーンにおいてDeskew Code C2が検出されたタイミングのうち、最も遅いタイミングであるLane7においてDeskew Code C2が検出された時刻t2の情報が供給されてくる。
Further, the
信号処理部102-1乃至102-Nのそれぞれにおいて同様の処理が行われることによって、図25の矢印#1の先に示すようにレーン間のData Skewが補正される。
By performing the same processing in each of the signal processing units 102-1 to 102-N, the Data Skew between the lanes is corrected as shown at the tip of the
スキュー補正部116は、Data Skewを補正したパケットデータを制御コード除去部117に出力する。
The
制御コード除去部117は、パケットデータに付加された制御コードを除去し、Start CodeからEnd Codeまでの間のデータをパケットデータとしてリンクレイヤに出力する。
The control
PHY-RX状態制御部101は、信号処理部102-0乃至102-Nの各部を制御し、レーン間のData Skewの補正などを行わせる。また、PHY-RX状態制御部101は、所定のレーンで伝送エラーが起きて制御コードが失われた場合、失われた制御コードに代えて、他のレーンで伝送されてきた制御コードを付加することによって制御コードの誤り訂正を行う。
The PHY-RX
[受信部31のリンクレイヤの構成]
次に、受信部31のリンクレイヤの構成について説明する。[Structure of link layer of receiver 31]
Next, the configuration of the link layer of the receiving
受信部31には、リンクレイヤの構成として、LINK-RXプロトコル管理部121、レーン統合部122、パケット分離部123、ペイロードエラー訂正部124、およびByte to Pixel変換部125が設けられる。LINK-RXプロトコル管理部121は、状態制御部131、ヘッダエラー訂正部132、データ除去部133、およびフッタエラー検出部134から構成される。
The receiving
レーン統合部122は、物理レイヤの信号処理部102-0乃至102-Nから供給されたパケットデータを、送信部22のレーン分配部65による各レーンへの分配順と逆順で並び替えることによって統合する。
The lane integration unit 122 integrates the packet data supplied from the signal processing units 102-0 to 102-N of the physical layer by rearranging the packet data in the reverse order of the distribution order to each lane by the
例えば、レーン分配部65によるパケットデータの分配が図20の矢印#1の先に示すようにして行われている場合、各レーンのパケットデータの統合が行われることによって図20の左側のパケットデータが取得される。各レーンのパケットデータの統合時、データ除去部133による制御に従って、レーンスタッフィングデータがレーン統合部122により除去される。レーン統合部122は、統合したパケットデータをパケット分離部123に出力する。
For example, when the packet data is distributed by the
パケット分離部123は、レーン統合部122により統合された1パケット分のパケットデータを、ヘッダデータを構成するパケットデータとペイロードデータを構成するパケットデータに分離する。パケット分離部123は、ヘッダデータをヘッダエラー訂正部132に出力し、ペイロードデータをペイロードエラー訂正部124に出力する。
The
また、パケット分離部123は、パケットにフッタが含まれている場合、1パケット分のデータを、ヘッダデータを構成するパケットデータとペイロードデータを構成するパケットデータとフッタデータを構成するパケットデータに分離する。パケット分離部123は、ヘッダデータをヘッダエラー訂正部132に出力し、ペイロードデータをペイロードエラー訂正部124に出力する。また、パケット分離部123は、フッタデータをフッタエラー検出部134に出力する。
Further, when the packet contains a footer, the
ペイロードエラー訂正部124は、パケット分離部123から供給されたペイロードデータにパリティが挿入されている場合、パリティに基づいて誤り訂正演算を行うことによってペイロードデータのエラーを検出し、検出したエラーの訂正を行う。例えば、図16に示すようにしてパリティが挿入されている場合、ペイロードエラー訂正部124は、1つ目のBasic Blockの最後に挿入されている2つのパリティを用いて、パリティの前にある224個の画素データの誤り訂正を行う。
When the payload data supplied from the
ペイロードエラー訂正部124は、各Basic Block, Extra Blockを対象として誤り訂正を行うことによって得られた誤り訂正後の画素データをByte to Pixel変換部125に出力する。パケット分離部123から供給されたペイロードデータにパリティが挿入されていない場合、パケット分離部123から供給されたペイロードデータはそのままByte to Pixel変換部125に出力される。
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
Byte to Pixel変換部125は、ペイロードエラー訂正部124から供給されたペイロードデータに含まれるペイロードスタッフィングデータをデータ除去部133による制御に従って除去する。
The Byte to
また、Byte to Pixel変換部125は、ペイロードスタッフィングデータを除去して得られたバイト単位の各画素のデータを、8ビット、10ビット、12ビット、14ビット、または16ビット単位の画素データに変換するByte to Pixel変換を行う。Byte to Pixel変換部125においては、図9乃至図13を参照して説明した、送信部22のPixel to Byte変換部62によるPixel to Byte変換と逆の変換が行われる。
Further, the Byte to
Byte to Pixel変換部125は、Byte to Pixel変換によって得られた8ビット、10ビット、12ビット、14ビット、または16ビット単位の画素データをフレームデータ出力部141に出力する。フレームデータ出力部141においては、例えば、ヘッダ情報のLine Validにより特定される有効画素の各ラインがByte to Pixel変換部125により得られた画素データに基づいて生成され、ヘッダ情報のLine Numberに従って各ラインが並べられることによって1フレームの画像が生成される。
The Byte to
LINK-RXプロトコル管理部121の状態制御部131は、受信部31のリンクレイヤの状態を管理する。
The
ヘッダエラー訂正部132は、パケット分離部123から供給されたヘッダデータに基づいてヘッダ情報とCRC符号の組を3組取得する。ヘッダエラー訂正部132は、ヘッダ情報とCRC符号の組の各組を対象として、ヘッダ情報のエラーを検出するための演算である誤り検出演算を、そのヘッダ情報と同じ組のCRC符号を用いて行う。
The header
また、ヘッダエラー訂正部132は、それぞれの組のヘッダ情報の誤り検出結果と、誤り検出演算により求められたデータの比較結果とのうちの少なくともいずれかに基づいて正しいヘッダ情報を推測し、正しいと推測したヘッダ情報と復号結果を出力する。誤り検出演算により求められたデータは、ヘッダ情報にCRCの生成多項式を適用することによって求められた値である。また、復号結果は、復号成功または復号失敗を表す情報である。
Further, the header
ヘッダ情報とCRC符号の3つの組をそれぞれ組1、組2、組3とする。この場合、ヘッダエラー訂正部132は、組1を対象とした誤り検出演算によって、組1のヘッダ情報にエラーがあるか否か(誤り検出結果)と、誤り検出演算により求められたデータであるデータ1を取得する。また、ヘッダエラー訂正部132は、組2を対象とした誤り検出演算によって、組2のヘッダ情報にエラーがあるか否かと、誤り検出演算により求められたデータであるデータ2を取得する。ヘッダエラー訂正部132は、組3を対象とした誤り検出演算によって、組3のヘッダ情報にエラーがあるか否かと、誤り検出演算により求められたデータであるデータ3を取得する。
The three sets of header information and CRC code are referred to as
また、ヘッダエラー訂正部132は、データ1とデータ2が一致するか否か、データ2とデータ3が一致するか否か、データ3とデータ1が一致するか否かをそれぞれ判定する。
Further, the header
例えば、ヘッダエラー訂正部132は、組1、組2、組3を対象としたいずれの誤り検出演算によっても誤りが検出されず、誤り検出演算によって求められたデータのいずれの比較結果もが一致した場合、復号結果として、復号成功を表す情報を選択する。また、ヘッダエラー訂正部132は、いずれのヘッダ情報も正しいと推測し、組1のヘッダ情報、組2のヘッダ情報、組3のヘッダ情報のうちのいずれかを出力情報として選択する。
For example, the header
一方、ヘッダエラー訂正部132は、組1を対象とした誤り検出演算でだけ誤りが検出されなかった場合、復号結果として、復号成功を表す情報を選択するとともに、組1のヘッダ情報が正しいと推測し、組1のヘッダ情報を出力情報として選択する。
On the other hand, when the error is not detected only by the error detection operation for the
また、ヘッダエラー訂正部132は、組2を対象とした誤り検出演算でだけ誤りが検出されなかった場合、復号結果として、復号成功を表す情報を選択するとともに、組2のヘッダ情報が正しいと推測し、組2のヘッダ情報を出力情報として選択する。
Further, when the error is not detected only by the error detection operation for the
ヘッダエラー訂正部132は、組3を対象とした誤り検出演算でだけ誤りが検出されなかった場合、復号結果として、復号成功を表す情報を選択するとともに、組3のヘッダ情報が正しいと推測し、組3のヘッダ情報を出力情報として選択する。
When the error is not detected only by the error detection operation for the
ヘッダエラー訂正部132は、以上のようにして選択した復号結果と出力情報をレジスタ142に出力し、記憶させる。このように、ヘッダエラー訂正部132によるヘッダ情報の誤り訂正は、複数のヘッダ情報の中から、エラーのないヘッダ情報をCRC符号を用いて検出し、検出したヘッダ情報を出力するようにして行われる。
The header
データ除去部133は、レーン統合部122を制御してレーンスタッフィングデータを除去し、Byte to Pixel変換部125を制御してペイロードスタッフィングデータを除去する。
The data removal unit 133 controls the lane integration unit 122 to remove the lane stuffing data, and controls the Byte to
フッタエラー検出部134は、パケット分離部123から供給されたフッタデータに基づいて、フッタに格納されたCRC符号を取得する。フッタエラー検出部134は、取得したCRC符号を用いて誤り検出演算を行い、ペイロードデータのエラーを検出する。フッタエラー検出部134は、誤り検出結果を出力し、レジスタ142に記憶させる。
The footer
[イメージセンサ11とDSP12の動作]
次に、以上のような構成を有する送信部22と受信部31の一連の処理について説明する。[Operation of
Next, a series of processes of the transmitting
はじめに、図26のフローチャートを参照して、伝送システム1を有する撮像装置の動作について説明する。図26の処理は、例えば、撮像装置に設けられたシャッタボタンが押されるなどして撮像の開始が指示されたときに開始される。
First, the operation of the image pickup apparatus having the
ステップS1において、イメージセンサ11の撮像部21は撮像を行う。撮像部21のフレームデータ入力部52(図5)は、撮像によって得られた1フレームの画像を構成する画素データを、1画素のデータずつ順に出力する。
In step S1, the
ステップS2において、送信部22によりデータ送信処理が行われる。データ送信処理により、1ライン分の画素データをペイロードに格納したパケットが生成され、パケットを構成するパケットデータが受信部31に対して送信される。データ送信処理については図27のフローチャートを参照して後述する。
In step S2, the data transmission process is performed by the
ステップS3において、受信部31によりデータ受信処理が行われる。データ受信処理により、送信部22から送信されてきたパケットデータが受信され、ペイロードに格納されている画素データが画像処理部32に出力される。データ受信処理については図28のフローチャートを参照して後述する。
In step S3, the data reception process is performed by the
ステップS2において送信部22により行われるデータ送信処理と、ステップS3において受信部31により行われるデータ受信処理は、1ライン分の画素データを対象として交互に行われる。すなわち、ある1ラインの画素データがデータ送信処理によって送信されたとき、データ受信処理が行われ、データ受信処理によって1ラインの画素データが受信されたとき、次の1ラインの画素データを対象としてデータ送信処理が行われる。送信部22によるデータ送信処理と、受信部31によるデータ受信処理は、適宜、時間的に並行して行われることもある。ステップS4において、画像処理部32のフレームデータ出力部141は、1フレームの画像を構成する全てのラインの画素データの送受信が終了したか否かを判定し、終了していないと判定した場合、ステップS2以降の処理を繰り返し行わせる。
The data transmission process performed by the
1フレームの画像を構成する全てのラインの画素データの送受信が終了したとステップS4において判定した場合、ステップS5において、画像処理部32のフレームデータ出力部141は、受信部31から供給された画素データに基づいて1フレームの画像を生成する。
When it is determined in step S4 that the transmission / reception of the pixel data of all the lines constituting the image of one frame has been completed, in step S5, the frame
ステップS6において、画像処理部32は、1フレームの画像を用いて画像処理を行い、処理を終了させる。
In step S6, the
次に、図27のフローチャートを参照して、図26のステップS2において行われるデータ送信処理について説明する。 Next, the data transmission process performed in step S2 of FIG. 26 will be described with reference to the flowchart of FIG. 27.
ステップS11において、ヘッダ生成部72は、Frame Start, Frame End, Line Valid, Line Number, Reservedからなるヘッダ情報を生成する。
In step S11, the
ステップS12において、ヘッダ生成部72は、ヘッダ情報を生成多項式に適用してCRC符号を計算する。
In step S12, the
ステップS13において、ヘッダ生成部72は、ヘッダ情報にCRC符号を付加することによってヘッダ情報とCRC符号の組を生成し、同じヘッダ情報とCRC符号の組を3組繰り返して配置することによってヘッダを生成する。
In step S13, the
ステップS14において、Pixel to Byte変換部62は、フレームデータ入力部52から供給された画素データを取得し、Pixel to Byte変換を行う。Pixel to Byte変換部62は、Pixel to Byte変換によって得られたバイト単位の画素データのグループ化、ペイロードスタッフィングデータの付加などを行うことによって生成したペイロードデータを出力する。ペイロードデータに対しては、適宜、ペイロードECC挿入部63によりパリティが挿入される。
In step S14, the Pixel to
ステップS15において、パケット生成部64は、1ライン分の画素データを含むペイロードデータと、ヘッダ生成部72により生成されたヘッダに基づいてパケットを生成し、1パケットを構成するパケットデータを出力する。
In step S15, the
ステップS16において、レーン分配部65は、パケット生成部64から供給されたパケットデータを、データ伝送に用いられる複数のレーンに割り当てる。
In step S16, the
ステップS17において、制御コード挿入部91は、レーン分配部65から供給されたパケットデータに制御コードを付加する。
In step S17, the control
ステップS18において、8B10Bシンボルエンコーダ92は、制御コードが付加されたパケットデータの8B10B変換を行い、10ビット単位のデータに変換したパケットデータを出力する。
In step S18, the
ステップS19において、同期部93は、8B10Bシンボルエンコーダ92から供給されたパケットデータを、クロック生成部82により生成されたクロック信号に従って出力し、送信部94から送信させる。ステップS17乃至S19の処理は信号処理部83-0乃至83-Nにより並行して行われる。1ライン分の画素データの送信が終了したとき、図26のステップS2に戻りそれ以降の処理が行われる。
In step S19, the
次に、図28のフローチャートを参照して、図26のステップS3において行われるデータ受信処理について説明する。 Next, the data reception process performed in step S3 of FIG. 26 will be described with reference to the flowchart of FIG. 28.
ステップS31において、受信部111は、送信部22から伝送されてきたパケットデータを表す信号を受信する。ステップS31乃至S36の処理は信号処理部102-0乃至102-Nにより並行して行われる。
In step S31, the receiving
ステップS32において、クロック生成部112は、受信部111から供給された信号のエッジを検出することによってビット同期をとる。同期部113は、受信部111において受信された信号のサンプリングを行い、パケットデータをシンボル同期部114に出力する。
In step S32, the clock generation unit 112 synchronizes the bits by detecting the edge of the signal supplied from the
ステップS33において、シンボル同期部114は、パケットデータに含まれる制御コードを検出するなどしてシンボル同期をとる。
In step S33, the
ステップS34において、10B8Bシンボルデコーダ115は、シンボル同期後のパケットデータに対して10B8B変換を施し、8ビット単位のデータに変換したパケットデータを出力する。
In step S34, the
ステップS35において、スキュー補正部116は、Deskew Codeを検出し、上述したように、Deskew CodeのタイミングをPHY-RX状態制御部101から供給された情報により表されるタイミングに合わせるようにしてレーン間のData Skewを補正する。
In step S35, the
ステップS36において、制御コード除去部117は、パケットデータに付加された制御コードを除去する。
In step S36, the control
ステップS37において、レーン統合部122は、信号処理部102-0乃至102-Nから供給されたパケットデータを統合する。 In step S37, the lane integration unit 122 integrates the packet data supplied from the signal processing units 102-0 to 102-N.
ステップS38において、パケット分離部123は、レーン統合部122により統合されたパケットデータを、ヘッダデータを構成するパケットデータとペイロードデータを構成するパケットデータに分離する。
In step S38, the
ステップS39において、ヘッダエラー訂正部132は、パケット分離部123により分離されたヘッダデータに含まれるヘッダ情報とCRC符号の各組を対象としてCRC符号を用いた誤り検出演算を行う。また、ヘッダエラー訂正部132は、各組の誤り検出結果と、誤り検出演算により求められたデータの比較結果とに基づいてエラーのないヘッダ情報を選択し、出力する。
In step S39, the header
ステップS40において、Byte to Pixel変換部125は、ペイロードデータのByte to Pixel変換を行い、8ビット、10ビット、12ビット、14ビット、または16ビット単位の画素データを出力する。Byte to Pixel変換の対象となるペイロードデータに対しては、適宜、パリティを用いた誤り訂正がペイロードエラー訂正部124により行われる。
In step S40, the Byte to
1ライン分の画素データの処理が終了したとき、図26のステップS3に戻りそれ以降の処理が行われる。 When the processing of the pixel data for one line is completed, the process returns to step S3 in FIG. 26 and the subsequent processing is performed.
イメージセンサ11とDSP12の間でのデータ伝送は、以上のように、1フレームの1ラインが1パケットに相当するパケットフォーマットを用いて行われる。
Data transmission between the
イメージセンサ11とDSP12間のデータ伝送に用いられるパケットフォーマットは、ヘッダ情報や、Start Code, End Code等のパケット境界を示す制御コードの伝送を最小限に抑えるフォーマットといえ、伝送効率の低下を防ぐことが可能になる。仮に、1パケットのペイロードに格納される画素データが1ラインより少ないパケットフォーマットを採用した場合、1フレーム全体の画素データを伝送するためにはより多くのパケットを伝送する必要があり、伝送するヘッダ情報や制御コードの数が多くなる分、伝送効率が低下してしまう。
The packet format used for data transmission between the
また、伝送効率の低下を防ぐことによって伝送レイテンシを抑えることが可能となり、大量の画像データを高速に伝送する必要がある高画素・高フレームレートのインタフェースを実現することができる。 Further, it is possible to suppress the transmission latency by preventing the decrease in the transmission efficiency, and it is possible to realize an interface with a high pixel count and a high frame rate that requires high-speed transmission of a large amount of image data.
伝送の信頼度/冗長度を上げて受信部31側で誤り訂正を行うことを前提にしたパケットフォーマットを採用することによって、ヘッダ情報の伝送エラー対策を確保することが可能になる。Frame/Line(V/H)の同期情報等の伝送がヘッダ情報を用いて行われるため、ヘッダ情報が伝送エラーで失われると、システム上、大きな不具合となる可能性があるが、そのようなことを防ぐことができる。
By adopting a packet format on the premise that error correction is performed on the receiving
また、ヘッダ情報の伝送エラー対策を確保するための実装コストや消費電力の増大を抑えることもできる。すなわち、イメージセンサ11とDSP12間のデータ伝送に用いられるパケットフォーマットは、CRC符号が付加されていることで、ヘッダ情報の伝送エラーの有無をDSP12において検出することができるようになっている。また、ヘッダ情報とCRC符号の組を3組伝送することで、ヘッダ情報の伝送エラーが生じた場合にDSP12において正しいヘッダ情報に訂正することができるようになっている。
In addition, it is possible to suppress an increase in mounting cost and power consumption for ensuring countermeasures against transmission errors of header information. That is, the packet format used for data transmission between the
仮に、ヘッダ情報の伝送エラー対策として誤り訂正符号を用いるとした場合、誤り訂正符号の計算を行う回路を送信部22に用意するとともに、誤り訂正演算を行う回路を受信部31に用意する必要があることになる。ヘッダ情報に付加されるのは誤り検出符号であるCRC符号であるため、誤り訂正に関する演算を行う回路を用意する場合に較べて、回路規模、消費電力を小さくすることができる。また、ヘッダ情報の誤りを検出した場合にヘッダ情報の再送を受信部31が送信部22に対して要求することも行われないため、再送要求のための逆方向の伝送路を用意する必要がない。
If an error correction code is used as a countermeasure against transmission error of header information, it is necessary to prepare a circuit for calculating the error correction code in the transmitting
冗長度を上げ、8B10Bコードの複数のK Characterを組み合わせて制御コードを構成することによって、制御コードのエラー確率を低減させることができ、これにより、比較的簡単な回路で制御コードの伝送エラー対策を確保することが可能になる。 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 as a result, the control code transmission error countermeasure can be achieved with a relatively simple circuit. It becomes possible to secure.
具体的には、Start Codeには3種類のK Characterを4シンボル組み合わせて用いているが、少なくともK28.5以外のシンボルを検出できれば受信部31においてStart Codeを特定することができ、伝送エラーに対する耐性が高いといえる。End Codeについても同様である。
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 receiving
また、Pad Codeに4種類のK Characterを組み合わせて用いているが、他の制御コードより多くの種類のK Characterを割り当てることによって、他の制御コードよりエラー耐性を上げることが可能になる。すなわち、4種類のうちの1種類のシンボルを検出できれば受信部31においてPad Codeを特定することができる。Pad Codeは、伝送頻度がStart CodeやEnd Codeなどよりも高いため、よりエラー耐性を上げることができる構造を持たせている。
In addition, although four types of K Characters are used in combination with Pad Code, by assigning more types of K Characters than other control codes, it is possible to improve error tolerance 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 receiving
さらに、レーン毎に、同じ制御コードを同じタイミングで伝送することによって、1つのレーンで伝送エラーが起きて制御コードが失われた場合でも、他のレーンの制御コードを使って、エラーとなった制御コードを再現することができる。 Furthermore, by transmitting the same control code for each lane at the same timing, even if a transmission error occurs in one lane and the control code is lost, an error occurs using the control code of the other lane. The control code can be reproduced.
また、K Characterの数が限られているため、必要最小限のK Characterを組合せてそれぞれの制御コードを構成するようになされている。例えば、繰り返し送信することによって伝送エラーを比較的許容できるSync Code, Deskew Code, Standby Codeについては、K Characterを追加で割り当てる必要がないようなデータ構造を用いている。 In addition, since the number of K Characters is limited, each control code is configured by combining the minimum necessary K Characters. For example, for Sync Code, Deskew Code, and Standby Code, which can relatively tolerate transmission errors by repeatedly transmitting, a data structure that does not require an additional K Character is used.
再同期させるために必要な制御コードが1パケット(1ライン)毎に割り当てられているため、静電気等の外乱やノイズなどによりビット同期が外れてしまった場合に再同期を迅速にとることができる。また、同期外れによる伝送エラーの影響を最小限に抑えることができる。 Since the control code required for resynchronization is assigned to each packet (1 line), resynchronization can be quickly performed when bit synchronization is lost due to disturbance such as static electricity or noise. .. In addition, the influence of transmission error due to out-of-synchronization can be minimized.
具体的には、クロック生成部112と同期部113により実現されるCDRにおいて8B10B変換後のビットデータの遷移/エッジを検出することでビット同期をとることができる。送信部22がデータを送り続けていれば、CDRロック時間として想定された期間内でビット同期をとることができることになる。
Specifically, bit synchronization can be achieved by detecting the transition / edge of the bit data after 8B10B conversion in the CDR realized by the clock generation unit 112 and the
また、シンボル同期が外れてしまった場合でも、特定のK Character(K28.5)をシンボル同期部114において検出することによって再同期を迅速にとることができる。K28.5はStart Code, End Code, Deskew Codeにそれぞれ用いられているから、1パケット分のパケットデータの伝送期間中に、3箇所でシンボル同期をとることが可能になる。
Further, even if the symbol synchronization is lost, resynchronization can be quickly performed by detecting a specific K Character (K28.5) in the
また、Deskew Codeを用いてレーン間のData Skewを補正することができるようにすることによって、レーン間の同期をとることもできる。 It is also possible to synchronize between lanes by making it possible to correct Data Skew between lanes using Deskew Code.
リンクレイヤにおいて、16個ずつなどのグループ単位(図14の例の場合、16バイト単位)で各パケットデータが並列処理されるようにすることによって、1クロック周期に1つずつパケットデータを処理する場合に較べて、回路規模やメモリ量を抑えることができる。実装上、パケットデータを1つずつ処理する場合と所定の単位毎にまとめて処理する場合とで、後者の方が回路規模等を抑えることができる。回路規模を抑えることができることによって、消費電力を抑えることも可能になる。 In the link layer, packet data is processed one by one in one clock cycle by allowing each packet data to be processed in parallel in groups such as 16 each (in the case of the example of FIG. 14, in 16-byte units). Compared to the case, the circuit scale and the amount of memory can be suppressed. In terms of implementation, the latter can reduce the circuit scale and the like depending on whether the packet data is processed one by one or collectively for each predetermined unit. By reducing the circuit scale, it is possible to reduce power consumption.
また、レーン割り当ての際、連続するパケットデータを異なるレーンに割り当てることによってエラー耐性を高めることができる。あるレーンにおいてパリティの誤り訂正能力を超えた数の連続するパケットデータに跨ってエラーが生じた場合であっても、受信部31においてレーン結合が行われることによって、エラーが生じたパケットデータの位置が分散することになり、パリティを用いたエラー訂正が可能になることがある。パリティによる誤り訂正能力はパリティ長により定まる。
Further, when allocating lanes, error tolerance can be improved by allocating consecutive packet data to different lanes. Even if an error occurs over a number of consecutive packet data that exceeds the parity error correction capability in a certain lane, the position of the packet data in which the error occurred due to the lane coupling performed in the receiving
さらに、物理レイヤに近い方を下位として、レーン分配・レーン統合より上位でECC処理を行うようにすることによって、送信部22と受信部31の回路規模を削減することが可能になる。例えば、送信部22において、パケットデータの各レーンへの割り当てが行われた後にペイロードにECCのパリティが挿入されるとした場合、ペイロードECC挿入部をレーン毎に用意する必要があり、回路規模が大きくなってしまうがそのようなことを防ぐことができる。
Further, the circuit scale of the transmitting
物理レイヤにおいてはパケットデータの並列処理が複数の回路で行われるが、PHY-TX状態制御部81やクロック生成部82については共通化することによって、それらの回路をレーン毎に用意する場合に較べて回路の簡素化を図ることができる。また、レーン毎に異なる制御コードを伝送しないプロトコルを用いることによって、各レーンのパケットデータを処理する回路の簡素化を図ることができる。
In the physical layer, parallel processing of packet data is performed by a plurality of circuits, but by sharing the PHY-TX
[レーン数の切り替え]
各レーンにおいて同じ制御コードを同じタイミングで伝送することは、通常のデータ伝送時だけでなく、例えばレーン数を切り替える場合にも行われる。レーン数を切り替える場合においても、アクティブなレーン(データ伝送に用いられるレーン)の状態は全て同じ状態になる。[Switching the number of lanes]
Transmission of the same control code in each lane at the same timing is performed not only during normal data transmission but also, for example, when switching the number of lanes. Even when the number of lanes is switched, the states of all active lanes (lanes used for data transmission) are the same.
図29は、レーン数を切り替える場合の制御シーケンスを示す図である。 FIG. 29 is a diagram showing a control sequence when the number of lanes is switched.
図29の右側に垂直同期信号(XVS)、水平同期信号(XHS)のタイミングを示す。垂直同期信号が検出される時刻t1までの間に1フレームの画像を構成する各ラインの画素データが水平同期信号に従って伝送され、時刻t1のタイミングで、アクティブなレーンを4レーンから2レーンに変更する場合について説明する。時刻t1までは、4つのレーンを用いてデータ伝送が行われている。 The timing of the vertical sync signal (XVS) and the horizontal sync signal (XHS) is shown on the right side of FIG. 29. The pixel data of each line constituting the image of one frame is transmitted according to the horizontal synchronization signal until the time t1 when the vertical synchronization signal is detected, and the active lane is changed from 4 lanes to 2 lanes at the timing of time t1. The case of doing so will be described. Until time t1, data transmission is performed using four lanes.
図29のほぼ中央には縦方向に各レーンの状態を示している。「PIX DATA」は、その文字が付されているレーンにおいて画素データの伝送が行われていることを表す。「PIX DATA」に続く「E」、「BLK」、「S」は、それぞれ、Frame End、ブランキング期間、Frame Startを表す。 The state of each lane is shown in the vertical direction at substantially the center of FIG. 29. "PIX DATA" indicates that pixel data is transmitted in the lane to which the character is attached. "E", "BLK", and "S" following "PIX DATA" represent Frame End, blanking period, and Frame Start, respectively.
時刻t1までの1フレーム期間に伝送するフレームの画素データの伝送が終了した場合、ステップS81において、画像処理部32は、受信部31に対してレーン数を4から2に切り替えることを指示する。画像処理部32による指示はステップS71において受信部31により受信される。
When the transmission of the pixel data of the frame to be transmitted is completed in the one frame period up to the time t1, the
時刻t1になったとき、ステップS82において、画像処理部32は、イメージセンサ11の撮像部21に対して、モードチェンジを要求する。撮像部21に対して送信されるモードチェンジの要求には、レーン数を4から2に切り替えることを表す情報も含まれている。図1等には示していないが、撮像部21と画像処理部32の間には、シャッタスピード、ゲインなどの撮像に関する設定値の情報を画像処理部32が撮像部21に対して送信するための伝送路が設けられている。モードチェンジの要求もこの伝送路を介して撮像部21に送信される。
At time t1, in step S82, the
ステップS51において、撮像部21は、画像処理部32からのモードチェンジの要求を受信し、ステップS52において、送信部22に対してレーン数を4から2に切り替えることを指示する。撮像部21による指示はステップS61において送信部22により受信される。
In step S51, the
送信部22と受信部31の間ではStandby Sequenceが行われ、Lane0~3を使ってStandby Codeが送信部22から受信部31に繰り返し伝送される。Standby Sequenceが終了したとき、ステップS72において、受信部31から状態の検出結果が出力され、ステップS83において画像処理部32により受信される。また、アクティブな状態を維持するLane0とLane1についてはLowの状態となり、データ伝送を終了するLane2とLane3についてはHigh-Zの状態となる。
A Standby Sequence is performed between the transmitting
送信部22と受信部31の間ではTraining Sequenceが行われ、Lane0とLane1を使ってSync Codeが送信部22から受信部31に繰り返し伝送される。受信部31においてはビット同期が確保され、Sync Codeが検出されることによってシンボル同期が確保される。
A Training Sequence is performed between the transmitting
Training Sequenceが終了したとき、ステップS73において、受信部31は、画像処理部32に対して準備が完了したことを通知する。受信部31による通知はステップS84において画像処理部32により受信され、レーン数を切り替える場合の一連の制御シーケンスが終了する。
When the training sequence is completed, in step S73, the receiving
このように、レーン数を切り替える制御シーケンスにおいては、続けてデータ伝送に用いられるLane0,1と同じ状態になるように、データ伝送を終了するLane2,3においてもStandby Sequence時にStandby Codeが伝送される。例えば、Lane2,3については、Standby Codeの伝送を行わないでそのままHigh-Zの状態にすることも考えられるが、続けてデータ伝送に用いられるレーンと異なる状態になってしまい、制御が複雑になる。
In this way, in the control sequence for switching the number of lanes, the Standby Code is transmitted at the time of Standby Sequence even in
[フレームフォーマットの変形例]
図30は、イメージセンサ11-DSP12間のデータ伝送に用いられるフレームフォーマットの他の例を示す図である。上述した説明と重複する説明については適宜省略する。[Transformation example of frame format]
FIG. 30 is a diagram showing another example of the frame format used for data transmission between the
図30に示すフレームフォーマットは、各ラインの画像データに付加されるヘッダに太線L11で囲むEmbedded Line, Data ID, Region Numberの3つのデータが追加されている点で図4のフォーマットと異なる。図5のヘッダ生成部72によりこれらの情報が生成され、ヘッダに付加されることになる。
The frame format shown in FIG. 30 is different from the format of FIG. 4 in that three data of an embedded line, a data ID, and a region number surrounded by a thick line L11 are added to the header added to the image data of each line. This information is generated by the
図31は、図30のフレームフォーマットの1パケットを拡大して示す図である。1つのパケットは、ヘッダと、1ライン分の画素データであるペイロードデータから構成される。パケットにはフッタが付加されることもある。各パケットの先頭にはStart Codeが付加され、後ろにはEnd Codeが付加される。 FIG. 31 is an enlarged view showing one packet in the frame format of FIG. 30. One packet is composed of a header and payload data which is pixel data for one line. A footer may be added to the packet. Start Code is added to the beginning of each packet, and End Code is added to the end.
ヘッダ情報には、上述したFrame Start, Frame End, Line Valid, Line Numberに加えて、ライン情報としてのEmbedded Line、データ識別としてのData ID、および領域情報としてのRegion Numberが含まれる。各情報の内容を図32に示す。 In addition to the above-mentioned Frame Start, Frame End, Line Valid, and Line Number, the header information includes Embedded Line as line information, Data ID as data identification, and Region Number as area information. The contents of each information are shown in FIG.
Embedded Lineは、Embedded Dataが挿入されているラインの伝送に用いられるパケットであるのか否かを表す1ビットの情報である。例えば、Embedded Dataを含むラインの伝送に用いられるパケットのヘッダのEmbedded Lineには1の値が設定され、他のラインの伝送に用いられるパケットのヘッダのEmbedded Lineには0の値が設定される。上述したように、撮像に関する設定値の情報が、Embedded Dataとして前ダミー領域A3や後ダミー領域A4の所定のラインに挿入される。 The Embedded Line is 1-bit information indicating whether or not the packet is used for transmission of the line in which Embedded Data is inserted. For example, the Embedded Line in the header of a packet used to transmit a line containing Embedded Data is set to a value of 1, and the Embedded Line in the header of a packet used to transmit another line is set to a value of 0. .. As described above, the information of the set value regarding the imaging is inserted into a predetermined line of the front dummy region A3 and the rear dummy region A4 as Embedded Data.
Data IDは、マルチストリーム伝送におけるデータのIDやデータ種別を示すPビットの情報である。Pビットは1ビット以上の所定の数のビットを表す。マルチストリーム伝送は、1つの送信部と1つの受信部の組を複数用いて行われるデータ伝送である。 The Data ID is P-bit information indicating the data ID and data type in multi-stream transmission. The P bit represents a predetermined number of bits of 1 bit or more. Multi-stream transmission is data transmission performed by using a plurality of pairs of one transmitting unit and one receiving unit.
Region Numberは、ペイロードに格納されている画素データが、撮像部21のどの領域のデータであるのかを示す1ビットの情報である。これらの3つのデータが追加されることによって、Reservedは30-Pビットになる。
The Region Number is 1-bit information indicating which region of the
<2.第2の実施の形態(画素データに限らず、所定のデータを伝送する例)>
上述した複数のレーンを使ったチップ間のデータ伝送は、画像データだけでなく各種のデータの伝送にも用いることができる。<2. Second embodiment (example of transmitting predetermined data, not limited to pixel data)>
The above-mentioned data transmission between chips using a plurality of lanes can be used not only for image data but also for transmission of various data.
以下、適宜、CMOSなどのイメージセンサから出力された画素データの伝送に用いられる上述したI/FをCIS(CMOS Image Sensor) I/Fといい、各種のデータの伝送に用いられるIFを汎用I/Fという。汎用I/Fを用いて、画像データだけでなく、オーディオデータ、テキストデータなどの各種のデータが送信側のチップから受信側のチップに対して伝送される。 Hereinafter, the above-mentioned I / F used for transmitting pixel data output from an image sensor such as CMOS is referred to as a CIS (CMOS Image Sensor) I / F, and an IF used for transmitting various data is a general-purpose I. It's called / F. Using a general-purpose I / F, not only image data but also various data such as audio data and text data are transmitted from the transmitting chip to the receiving chip.
[伝送システムの構成例]
図33は、汎用I/Fを用いた伝送システムの第1の構成例を示す図である。[Example of transmission system configuration]
FIG. 33 is a diagram showing a first configuration example of a transmission system using a general-purpose I / F.
図33の伝送システム301は送信側LSI311と受信側LSI312から構成される。送信側LSI311と受信側LSI312は例えば同じ装置内に設けられる。送信側LSI311には情報処理部321と1つの送信部322が設けられ、受信側LSI312には1つの受信部331と情報処理部332が設けられている。
The
送信側LSI311の情報処理部321は、各種のデータの処理を行い、送信対象のデータを送信部322に出力する。情報処理部321からは、8, 10, 12, 14, 16, 20, 24, 28, 32, 40, 48, 56, 64, 80, 96, 112, 128, 144ビットなどの各種のビット幅のデータが出力される。
The
送信部322は、情報処理部321から供給されたデータを、例えば情報処理部321から供給された順に複数のレーンに割り当て、並列に受信側LSI312に送信する。図33の例においても、8本のレーンを用いてデータの伝送が行われている。送信側LSI311と受信側LSI312の間の伝送路は有線の伝送路であってもよいし、無線の伝送路であってもよい。
The
受信側LSI312の受信部331は、8本のレーンを介して送信部322から送信されてきたデータを受信し、情報処理部332に出力する。
The receiving
情報処理部332は、受信部331から供給されたデータに基づいて、送信側LSI311側において送信対象として選択されたデータを生成し、生成したデータを用いて各種の処理を行う。送信対象のデータが例えばオーディオデータである場合、オーディオデータの再生、圧縮などの処理が行われる。
The
図34は、伝送システム301の第2の構成例を示す図である。図34に示す構成のうち、図33に示す構成と同じ構成には同じ符号を付してある。重複する説明については適宜省略する。
FIG. 34 is a diagram showing a second configuration example of the
図34の伝送システム301の送信側LSI311には、情報処理部321と、2つの送信部である送信部322-1,322-2が設けられ、受信側LSI312には、2つの受信部である受信部331-1,331-2と、情報処理部332が設けられている。
The
情報処理部321は、送信対象のデータを分割し、送信部322-1と送信部322-2に出力する。
The
送信部322-1は、情報処理部321から供給されたデータを、例えば情報処理部321から供給された順に複数のレーンに割り当て、受信側LSI312に送信する。送信部322-2も同様に、情報処理部321から供給されたデータを、例えば情報処理部321から供給された順に複数のレーンに割り当て、受信側LSI312に送信する。
The transmission unit 322-1 allocates the data supplied from the
図34の例においても送信側LSI311と受信側LSI312の間は8本のレーンを介して接続されている。送信部322-1と送信部322-2は、それぞれ、4本のレーンを用いてデータを伝送する。
Also in the example of FIG. 34, the transmitting
受信側LSI312の受信部331-1は、4本のレーンを介して送信部322-1から送信されてきたデータを受信し、情報処理部332に出力する。受信部331-2も同様に、4本のレーンを介して送信部322-2から伝送されてきたデータを受信し、情報処理部332に出力する。
The receiving unit 331-1 of the receiving
情報処理部332は、受信部331-1から供給されたデータと受信部331-2から供給されたデータに基づいて送信対象のデータを生成し、生成したデータを対象として各種の処理を行う。
The
図34に示すように送信側LSI311に2つの送信部を設け、それに対応させて2つの受信部を受信側LSI312に設けることにより、情報処理部321が出力するデータの伝送レートが高い場合であってもデータを受信側LSI312に伝送することが可能になる。
As shown in FIG. 34, when the transmitting
図35は、伝送システム301の第3の構成例を示す図である。図35に示す構成のうち、図33に示す構成と同じ構成には同じ符号を付してある。重複する説明については適宜省略する。
FIG. 35 is a diagram showing a third configuration example of the
図35の伝送システム301においては、送信側のLSIとして、送信側LSI311-1と送信側LSI311-2の2つのLSIが設けられている。送信側LSI311-1には情報処理部321-1と1つの送信部である送信部322-1が設けられ、送信側LSI311-2には情報処理部321-2と1つの送信部である送信部322-2が設けられる。受信側LSI312には、図34の場合と同様に、2つの受信部である受信部331-1,331-2と、情報処理部332が設けられている。
In the
送信側LSI311-1の情報処理部321-1は、送信対象のデータを送信部322-1に出力する。 The information processing unit 321-1 of the transmission side LSI 311-1 outputs the data to be transmitted to the transmission unit 322-1.
送信部322-1は、情報処理部321-1から供給されたデータを複数のレーンに割り当て、受信側LSI312に送信する。
The transmission unit 322-1 allocates the data supplied from the information processing unit 321-1 to a plurality of lanes and transmits the data to the receiving
送信側LSI311-2の情報処理部321-2は、送信対象のデータを送信部322-2に出力する。 The information processing unit 321-2 of the transmission side LSI 311-2 outputs the data to be transmitted to the transmission unit 322-2.
送信部322-2は、情報処理部321-2から供給されたデータを複数のレーンに割り当て、受信側LSI312に送信する。
The transmission unit 322-2 allocates the data supplied from the information processing unit 321-2 to a plurality of lanes and transmits the data to the receiving
図35の例においても送信側のLSIである送信側LSI311と受信側のLSIである受信側LSI312の間は8本のレーンを介して接続されている。送信側LSI311-1と送信側LSI311-2にはそれぞれ4本のレーンが割り当てられ、送信部322-1と送信部322-2は、それぞれ、4本のレーンを用いてデータを伝送する。
Also in the example of FIG. 35, the transmitting
受信側LSI312の受信部331-1は、4本のレーンを介して送信側LSI311-1の送信部322-1から伝送されてきたデータを受信し、情報処理部332に出力する。受信部331-2も同様に、4本のレーンを介して送信側LSI311-2の送信部322-2から伝送されてきたデータを受信し、情報処理部332に出力する。
The receiving unit 331-1 of the receiving
情報処理部332は、受信部331-1から供給されたデータに基づいて、送信側LSI311-1において送信対象として選択されたデータを生成する。また、送信部322は、受信部331-2から供給されたデータに基づいて、送信側LSI311-2において送信対象として選択されたデータを生成する。画像処理部332は、生成したデータを用いて各種の処理を行う。
The
以上のように、伝送システム301の送信側のLSIには、データを伝送する送信部が1つまたは複数設けられる。一方、受信側のLSIには、送信側のLSIの送信部に対応して、データを受信する受信部が1つまたは複数設けられる。
As described above, the LSI on the transmission side of the
以下、送信側LSI311に1つの送信部が設けられ、受信側LSI312に1つの受信部が設けられる図33の伝送システム301におけるデータ伝送について説明する。図34と図35の送信部322-1-受信部331-1間、送信部322-2-受信部331-2間においても同様にしてデータ伝送が行われる。
Hereinafter, data transmission in the
[パケットのデータ構造の例]
図36のA乃至Dは、データ伝送に用いられるパケットのデータ構造の例を示す図である。[Example of packet data structure]
A to D of FIG. 36 are diagrams showing an example of a data structure of a packet used for data transmission.
図36のAは、CIS IFにおいて画素データの伝送に用いられるパケットの例を示す図である。CIS IFの1パケットは、ヘッダ、1ライン分の画素データを含むペイロード、および、適宜付加されるフッタから構成される。CIS IFの1パケットの先頭にはStart Codeが付加され、フッタの後ろにはEnd Codeが付加される。 FIG. 36A is a diagram showing an example of a packet used for transmission of pixel data in CIS IF. One CIS IF packet consists of a header, a payload containing one line of pixel data, and a footer to be added as appropriate. Start Code is added to the beginning of one CIS IF packet, and End Code is added to the end of the footer.
図36のB乃至Dは、汎用I/Fにおいて各種のデータの伝送に用いられるパケットの例を示す図である。汎用I/Fの1パケットはペイロードのみから構成される。後述するように、送信部322においては、情報処理部321から供給された8~144ビット単位の送信対象のデータを所定のサイズ毎に区切ることによってペイロードデータが生成される。パケットサイズは、入力データのビット幅である8~144ビットと、128ビットとの公倍数となるビット数であり、Configuration Registerに設定された値によって指定される。
B to D in FIG. 36 are diagrams showing examples of packets used for transmitting various data in a general-purpose I / F. One general-purpose I / F packet consists of only the payload. As will be described later, in the
Configuration Registerに設定された値により指定されたパケットサイズと同じサイズのパケットを生成し、データを伝送する場合、図36のBに示す通常パケットが用いられる。 When a packet having the same size as the packet size specified by the value set in the Configuration Register is generated and data is transmitted, the normal packet shown in FIG. 36B is used.
また、Configuration Registerに設定された値により指定されたパケットサイズより短いパケットを生成し、データを伝送する場合、図36のCまたは図36のDに示すショートパケットが用いられる。例えば、ペイロード長が128ビットの倍数である場合には図36のCのショートパケット(1)が用いられ、ペイロード長が128ビットの倍数でない場合には図36のDのショートパケット(2)が用いられる。図36のCのショートパケットと図36のDのショートパケットは、後ろに付加されるEnd Codeによって識別される。 Further, when a packet shorter than the packet size specified by the value set in the Configuration Register is generated and data is transmitted, the short packet shown in C of FIG. 36 or D of FIG. 36 is used. For example, if the payload length is a multiple of 128 bits, the short packet (1) of C in FIG. 36 is used, and if the payload length is not a multiple of 128 bits, the short packet (2) of D in FIG. 36 is used. Used. The short packet C in FIG. 36 and the short packet D in FIG. 36 are identified by the End Code added to the back.
[送信側LSI311と受信側LSI312の構成]
図37は、送信側LSI311と受信側LSI312の構成例を示す図である。[Configuration of transmitting
FIG. 37 is a diagram showing a configuration example of the transmitting
図37の左側に示す構成が送信側LSI311の構成であり、右側に示す構成が受信側LSI312の構成である。汎用I/Fのデータ伝送は、アプリケーションレイヤ、アダプテーションレイヤ、リンクレイヤ、および物理レイヤの各レイヤの構成により実現される。
The configuration shown on the left side of FIG. 37 is the configuration of the transmitting
実線L1の上に示す構成がアプリケーションレイヤの構成である。情報処理部321においては、システム制御部341、データ入力部342、およびレジスタ343が実現される。
The configuration shown above the solid line L1 is the configuration of the application layer. In the
システム制御部341は、汎用I/Fによるデータの伝送を制御する。例えばシステム制御部341は、データ入力部342が送信対象のデータを出力している間、入力されたデータが有効なデータであることを表す制御信号を送信部322のペイロードデータ生成部351に出力する。データ入力部342は、送信対象のデータを8~144ビットの所定のビット単位でペイロードデータ生成部351に出力する。レジスタ343は上述したConfiguration Registerであり、パケットサイズ、Lane数等の各種の情報を記憶する。
The
一方、情報処理部332においては、システム制御部441、データ出力部442、およびレジスタ443が実現される。
On the other hand, in the
システム制御部441は、汎用I/Fによるデータの受信を制御する。例えばシステム制御部441は、レジスタ443に設定されている値により指定されるパケットサイズの情報をペイロードデータ取得部431に出力する。データ出力部442は、ペイロードデータ取得部431から供給されたデータを取得し、図示せぬデータ処理部に出力する。レジスタ443はパケットサイズ、Lane数等の各種の情報を記憶する。
The
[送信部322のアダプテーションレイヤの構成]
送信側LSI311のアダプテーションレイヤの構成について説明する。送信部322は、ペイロードデータ生成部351をアダプテーションレイヤの構成として有する。[Structure of adaptation layer of transmitter 322]
The configuration of the adaptation layer of the transmitting
ペイロードデータ生成部351は、データ入力部342から所定のビット単位で供給された送信対象のデータをパケットサイズと同じサイズ毎に区切り、Byte Packing部362に出力する。ペイロードデータ生成部351からByte Packing部362に対しては、送信対象のデータを構成する所定のビット単位のデータが、パケットサイズと同じサイズ毎にまとめて出力されることになる。ペイロードデータ生成部351は、パケットサイズに満たない例えば送信対象のデータの最後のデータについては、そのままByte Packing部362に出力する。
The payload
また、ペイロードデータ生成部351は、制御信号がオフとなり、データの入力が所定の時間以上ないことを検出した場合、パケットを構成する最後のデータの入力タイミングを表すタイミング信号であるPacket End信号をByte Packing部362に出力する。なお、ペイロードデータ生成部351は、図7、図32等を参照して説明したヘッダ情報を受信側LSI312に送信する場合、ヘッダ情報をパケット生成部364に出力する。汎用I/Fにおいては、ヘッダ情報についても、ペイロードデータとして送信される。
Further, when the payload
[送信部322のリンクレイヤの構成]
送信部322は、Byte Packing部362、ペイロードECC挿入部363、パケット生成部364、およびレーン分配部365をリンクレイヤの構成として有する。[Structure of link layer of transmitter 322]
The
Byte Packing部362は、ペイロードデータ生成部351から供給されたデータを、Byte Packing部362以降の各処理部が処理単位とする16バイトなどの所定の単位のパッキングデータに変換する。Byte Packing部362は、変換して得られたパッキングデータをペイロードECC挿入部363に出力する。
The
図38は、Byte Packing部362によるデータ変換であるByte Packingの例を示す図である。
FIG. 38 is a diagram showing an example of Byte Packing, which is data conversion by the
図38の例においては、1パケットを構成するデータとしてペイロードデータ生成部351により制御信号に従って区切られたData1乃至Data8がByte Packing部362に入力されている。データ入力部342からペイロードデータ生成部351に対しては、80ビット単位でデータの入力が行われたものとされている。
In the example of FIG. 38, Data1 to Data8 separated according to the control signal by the payload
この場合、Byte Packing部362は、Data1乃至Data8の各ビットを入力順に16バイト(128ビット)単位のパッキングデータの各ビットに割り当てることによって、5つのパッキングデータを生成する。例えば1つ目のパッキングデータは、Data1の1~80ビットとData2の1~48ビットを含むデータになる。
In this case, the
図39は、Byte Packing部362によるByte Packingの他の例を示す図である。
FIG. 39 is a diagram showing another example of Byte Packing by the
図39の例においては、1パケットを構成するデータとしてペイロードデータ生成部351により制御信号に従って区切られたData1乃至Data5がByte Packing部362に入力されている。Data5の入力タイミングに合わせて、ペイロードデータ生成部351からByte Packing部362にPacket End信号が入力されている。Packet End信号が供給されたことに応じて、Byte Packing部362は、Data5が、1パケットを構成する最後のデータであることを認識することができる。
In the example of FIG. 39, Data1 to Data5 separated according to the control signal by the payload
この場合、Byte Packing部362は、Data1乃至Data5の各ビットを入力順にパッキングデータの各ビットに割り当てることによって、Data1全体とData2の先頭から途中までのデータを含む1つ目のパッキングデータを生成する。また、Byte Packing部362は、Data2の途中から最後までのデータと、Data3全体と、Data4の先頭から途中までのデータとを含む2つ目のパッキングデータを生成する。Byte Packing部362は、Data4の途中から最後までのデータと、Data5の先頭から途中までのデータとを含む3つ目のパッキングデータを生成する。
In this case, the
Byte Packing部362は、Data5の最後のビットである80ビット目を4つ目のパッキングデータに割り当てたとき、それ以降、ダミーデータを挿入することによって16バイトの4つ目のパッキングデータを生成する。すなわち、16バイトに満たない分はダミーデータ(ダミービット)を付加するようにしてパッキングデータが生成される。ダミーデータは例えば全て値が0のビットである。
When the 80th bit, which is the last bit of
また、Byte Packing部362は、ダミーデータが付加された4つ目のパッキングデータに続く5つ目のパッキングデータとして、4つ目のパッキングデータに含まれるダミーデータのビット数を表す8ビットをLSB側に含むパッキングデータを生成する。5つ目のパッキングデータの1ビット目から120ビット目までにはダミーデータが含まれる。
Further, the
このようなデータを受信した受信部331は、5つ目のパッキングデータに120ビットのダミーデータが含まれていることに基づいて、1つ前のパッキングデータである4つ目のパッキングデータにダミーデータが付加されていることを特定することができる。また、受信部331は、120ビットのダミーデータに続く8ビットにより表されるビット数に基づいて、4つ目のパッキングデータに付加されているダミーデータのビット数を特定し、有効データのみを抽出することが可能になる。
The receiving
図40は、Byte Packing処理のシーケンスを示す図である。 FIG. 40 is a diagram showing a sequence of Byte Packing processing.
図40の例においては、時刻t11からt14の期間と時刻t15以降、情報処理部321のシステム制御部341から供給される制御信号がオンになっている。また、制御信号がオンになることに合わせて、所定のビット単位の送信対象のデータであるData1乃至Data4がデータ入力部342から供給される。Data1乃至Data3に注目すると、時刻t11からt12の期間にData1が供給され、時刻t12からt13の期間にData2が供給され、時刻t13からt14の期間にData3が供給されている。パケットを構成する最後のデータであることを表すPacket End信号が、Data3の入力が終わったタイミングで入力されている。Data1乃至Data4は、それぞれ16バイト以上のサイズを有するデータである。
In the example of FIG. 40, the control signal supplied from the
この場合、Byte Packing部362は、Data1の先頭から途中までの範囲aのデータを含むパッキングデータPD1を生成する。また、Byte Packing部362は、Data1の途中からData1の最後までの範囲bのデータと、Data2の先頭から途中までの範囲cのデータを含むパッキングデータPD2を生成する。
In this case, the
Byte Packing部362は、Data2の途中からData2の最後までの範囲dのデータと、Data3の先頭から途中までの範囲eのデータを含むパッキングデータPD3を生成する。Byte Packing部362は、Data3の途中からData3の最後までの範囲fのデータについては、ダミーデータを加え、16バイトのパッキングデータPD4を生成する。図40において斜線を付して示す範囲のデータはダミーデータである。
The
また、Byte Packing部362は、パッキングデータPD4に続けて、パッキングデータPD4に付加したダミーデータのビット数を表すビットを最後に含む16バイトのパッキングデータを生成する。
Further, the
例えば、ダミーデータが付加されたパッキングデータPD4を含む、パッキングデータPD1~PD4からなるパケットは、図36のCまたは図36のDのショートパケットとして送信される。ショートパケットには、ダミーデータのビット数を表すビットが最後に付加されたパッキングデータも含まれる。 For example, a packet consisting of packing data PD1 to PD4 including packing data PD4 to which dummy data is added is transmitted as a short packet of C in FIG. 36 or D in FIG. 36. The short packet also includes packing data to which a bit representing the number of bits of dummy data is added at the end.
ダミーデータを含めずに、制御信号がオンの期間に入力された有効なデータのみをパッキングデータに含め、通常パケットとして送信する場合について考える。この場合、Packet End信号が供給されたタイミングで、パッキングデータを有効なデータで満たすことができないときには、Data4が入力されるまで、パッキングデータに含めることができなかったData3の範囲fのデータを出力することができない。Packet End信号が供給されたタイミングでパッキングデータを有効なデータで満たすことができない場合にはダミーデータを付加して出力することにより、データの出力に遅延が生じてしまうのを防ぐことが可能になる。 Consider a case where only valid data input during the period when the control signal is on is included in the packing data and transmitted as a normal packet without including dummy data. In this case, when the Packing data cannot be filled with valid data at the timing when the Packet End signal is supplied, the data in the range f of Data3 that could not be included in the packing data until Data4 is input is output. Can not do it. When the packing data cannot be filled with valid data at the timing when the Packet End signal is supplied, it is possible to prevent the data output from being delayed by adding dummy data and outputting it. Become.
このようにして生成されたパッキングデータから構成されるデータが、Byte Packing部362から図37のペイロードECC挿入部363にペイロードデータとして供給される。
The data composed of the packing data generated in this way is supplied as payload data from the
ペイロードECC挿入部363は、Byte Packing部362から供給されたペイロードデータに基づいて、ペイロードデータの誤り訂正に用いられる誤り訂正符号を計算し、計算により求めたパリティをペイロードデータに挿入する。誤り訂正符号として、例えばリードソロモン符号が用いられる。なお、誤り訂正符号の挿入はオプションである。
The payload
図41は、ペイロードデータに対するパリティの挿入の例を示す図である。 FIG. 41 is a diagram showing an example of inserting a parity into the payload data.
ペイロードECC挿入部363は、Byte Packing部362から供給された順に14のパッキングデータを集めることによって224バイトのBasic Blockを生成する。また、ペイロードECC挿入部363は、224バイトのペイロードデータに基づいて2バイト乃至4バイトのパリティを生成し、ペイロードデータに挿入することによって、パリティが挿入された226バイト乃至228バイトのBasic Blockを生成する。
The payload
図41の例においては、1番目から14番目までのパッキングデータからなるペイロードデータに対してParity1が生成され、付加されている。図41において斜線を付して示すデータがパリティである。 In the example of FIG. 41, Parity1 is generated and added to the payload data consisting of the first to 14th packing data. The data shown with diagonal lines in FIG. 41 is parity.
ペイロードECC挿入部363は、あるBasic Blockに続くペイロードデータのサイズが224バイトに満たない場合、残っているペイロードデータに基づいてExtra Blockを生成する。上述したダミーデータの挿入により、Extra Blockの情報長は常に16バイトの倍数となる。また、ペイロードECC挿入部363は、Extra Blockを構成するペイロードデータに基づいて2バイト乃至4バイトのパリティを生成し、ペイロードデータに挿入することによって、パリティが挿入されたExtra Blockを生成する。
When the size of the payload data following a certain Basic Block is less than 224 bytes, the payload
図41の例においては、N番目からN+M番目までのペイロードデータに対してParityMが生成され、付加されている。 In the example of FIG. 41, ParityM is generated and added to the payload data from the Nth to the N + Mth.
ペイロードECC挿入部363は、パリティを挿入したペイロードデータをパケット生成部364に出力する。パリティの挿入が行われない場合、Byte Packing部362からペイロードECC挿入部363に供給されたペイロードデータは、そのままパケット生成部364に出力される。
The payload
パケット生成部364は、ペイロードECC挿入部363から供給されたデータをペイロードデータとするパケットを生成する。パケット生成部364は、生成したパケットのデータをレーン分配部365に出力する。
The
レーン分配部365は、パケット生成部364から供給されたパケットデータを、先頭の1バイトから順にバイト単位で、Lane0、Lane1、…、Lane(LaneNum-1)、Lane1、…といったようにデータ伝送に用いる各レーンに割り当てる。パケット長とLane数によっては各レーンに均等にデータを分配できないことがある。この場合、レーン分配部365は、各レーンに均等にデータが分配されるように、Lane Stuffingとして00hを挿入する。
The
レーン分配部365は、このようにして各レーンに割り当てたパケットデータを物理レイヤに出力する。以下、Lane0~7の8レーンを用いてデータを伝送する場合について主に説明するが、データ伝送に用いるレーンの数が他の数の場合であっても同様の処理が行われる。
The
[送信部322の物理レイヤの構成]
送信部322は、PHY-TX状態制御部381、クロック生成部382、信号処理部383-0乃至383-Nを物理レイヤの構成として有する。送信部322の物理レイヤの構成は、図5を参照して説明したCIS-IFにおける送信部22の物理レイヤの構成と同じ構成である。重複する説明については適宜省略する。[Structure of physical layer of transmitter 322]
The
信号処理部383-0は、制御コード挿入部391、8B10Bシンボルエンコーダ392、同期部393、および送信部394から構成される。レーン分配部365から出力され、Lane0に割り当てられたパケットデータは信号処理部383-0に入力され、Lane1に割り当てられたパケットデータは信号処理部383-1に入力される。また、LaneNに割り当てられたパケットデータは信号処理部383-Nに入力される。
The signal processing unit 383-0 includes a control
PHY-TX状態制御部381は、信号処理部383-0乃至383-Nの各部を制御する。
The PHY-TX
クロック生成部382は、クロック信号を生成し、信号処理部383-0乃至383-Nのそれぞれの同期部393に出力する。
The
信号処理部383-0の制御コード挿入部391は、レーン分配部365から供給されたパケットデータにStart Code、End Codeなどの制御コードを付加する。制御コード挿入部391は、制御コードを付加したパケットデータを8B10Bシンボルエンコーダ392に出力する。
The control
8B10Bシンボルエンコーダ392は、制御コード挿入部391から供給されたパケットデータ(制御コードが付加されたパケットデータ)に対して8B10B変換を施し、10ビット単位のデータに変換したパケットデータを同期部393に出力する。
The
同期部393は、8B10Bシンボルエンコーダ392から供給されたパケットデータの各ビットを、クロック生成部382により生成されたクロック信号に従って送信部394に出力する。なお、送信部322に同期部393が設けられないようにしてもよい。この場合、8B10Bシンボルエンコーダ392から出力されたパケットデータは、送信部394にそのまま供給される。
The
送信部394は、Lane0を構成する伝送路を介して、同期部393から供給されたパケットデータを受信部331に送信する。8レーンを用いてデータ伝送が行われる場合、Lane1~7を構成する伝送路をも用いてパケットデータが受信部331に送信される。
The
[受信部331の物理レイヤの構成]
次に、受信側LSI312の受信部331の物理レイヤの構成について説明する。受信部331は、PHY-RX状態制御部401、信号処理部402-0乃至402-Nを物理レイヤの構成として有する。受信部331の物理レイヤの構成は、図5を参照して説明したCIS-IFにおける受信部31の物理レイヤの構成と同じ構成である。重複する説明については適宜省略する。[Structure of physical layer of receiver 331]
Next, the configuration of the physical layer of the receiving
信号処理部402-0は、受信部411、クロック生成部412、同期部413、シンボル同期部414、10B8Bシンボルデコーダ415、スキュー補正部416、および制御コード除去部417から構成される。Lane0を構成する伝送路を介して送信されてきたパケットデータは信号処理部402-0に入力され、Lane1を構成する伝送路を介して送信されてきたパケットデータは信号処理部402-1に入力される。また、LaneNを構成する伝送路を介して送信されてきたパケットデータは信号処理部402-Nに入力される。
The signal processing unit 402-0 is composed of a receiving
受信部411は、Lane0を構成する伝送路を介して送信部322から伝送されてきたパケットデータを表す信号を受信し、クロック生成部412に出力する。
The
クロック生成部412は、受信部411から供給された信号のエッジを検出することによってビット同期をとり、エッジの検出周期に基づいてクロック信号を生成する。クロック生成部412は、受信部411から供給された信号を、クロック信号とともに同期部413に出力する。
The
同期部413は、クロック生成部412により生成されたクロック信号に従って、受信部411において受信された信号のサンプリングを行い、サンプリングによって得られたパケットデータをシンボル同期部414に出力する。
The
シンボル同期部414は、例えばStart Code, End Code, Deskew Codeに含まれるK28.5のシンボルを検出し、シンボル同期をとる。シンボル同期部414は、各シンボルを表す10ビット単位のパケットデータを10B8Bシンボルデコーダ415に出力する。
The
10B8Bシンボルデコーダ415は、シンボル同期部414から供給された10ビット単位のパケットデータに対して10B8B変換を施し、8ビット単位のデータに変換したパケットデータをスキュー補正部416に出力する。
The
スキュー補正部416は、10B8Bシンボルデコーダ415から供給されたパケットデータからDeskew Codeを検出する。スキュー補正部416によるDeskew Codeの検出タイミングの情報はPHY-RX状態制御部401に供給される。また、スキュー補正部416は、Deskew Codeのタイミングを、PHY-RX状態制御部401から供給された情報により表されるタイミングに合わせるようにしてレーン間のData Skewを補正する。
The
信号処理部402-1乃至402-Nのそれぞれにおいて同様の処理が行われることによって、図25を参照して説明したようにしてレーン間のData Skewが補正される。 By performing the same processing in each of the signal processing units 402-1 to 402-N, the Data Skew between the lanes is corrected as described with reference to FIG. 25.
スキュー補正部416は、Data Skewを補正したパケットデータを制御コード除去部417に出力する。
The
制御コード除去部417は、パケットデータに付加された制御コードを除去し、Start CodeからEnd Codeまでの間のデータをパケットデータとしてリンクレイヤに出力する。
The control
PHY-RX状態制御部401は、信号処理部402-0乃至402-Nの各部を制御し、レーン間のData Skewの補正などを行わせる。
The PHY-RX
[受信部331のリンクレイヤの構成]
受信部331は、レーン統合部422、パケット分離部423、ペイロードエラー訂正部424、およびByte Unpacking部425をリンクレイヤの構成として有する。[Structure of link layer of receiver 331]
The receiving
レーン統合部422は、物理レイヤの信号処理部402-0乃至402-Nから供給されたデータを、送信部322のレーン分配部365による各レーンへの分配順と逆順で並び替えることによって統合する。レーン統合部422は、統合して得られたパケットデータをパケット分離部423に出力する。
The
パケット分離部423は、レーン統合部422により統合されたパケットデータをペイロードデータとしてペイロードエラー訂正部424に出力する。ペイロードデータとしてヘッダ情報が含まれている場合、パケット分離部423は、ペイロードから抽出したヘッダ情報をペイロードデータ取得部431に出力する。
The
ペイロードエラー訂正部424は、パケット分離部423から供給されたペイロードデータにパリティが挿入されている場合、パリティに基づいて誤り訂正演算を行うことによってペイロードデータのエラーを検出し、エラーの訂正を行う。例えば、図41に示すようにしてパリティが挿入されている場合、ペイロードエラー訂正部424は、1つ目のBasic Blockの最後に挿入されているパリティを用いて、パリティの前にある224バイトのデータの誤り訂正を行う。
When the payload data supplied from the
ペイロードエラー訂正部424は、各Basic Block, Extra Blockを対象として誤り訂正を行うことによって得られた誤り訂正後のデータをByte Unpacking部425に出力する。パケット分離部423から供給されたペイロードデータにパリティが挿入されていない場合、パケット分離部423から供給されたペイロードデータはそのままByte Unpacking部425に出力される。
The payload
Byte Unpacking部425は、ペイロードエラー訂正部424から供給された16バイト単位のパッキングデータに対して、送信部322のByte Packing部362による処理と逆の変換処理であるByte Unpackingを行う。Byte Unpacking部425は、Byte Unpackingを行うことによって得られたデータをペイロードデータ取得部431に出力する。Byte Unpacking部425からペイロードデータ取得部431に対しては、送信部322のペイロードデータ生成部351の出力と同様に、所定のビット単位のデータが1パケット分まとめて出力されることになる。
The
また、Byte Unpacking部425は、ペイロードデータを構成するパッキングデータにダミーデータが含まれているときには、ダミーデータを除去し、ダミーデータ以外のデータを対象としてByte Unpackingを行う。パッキングデータにダミーデータが含まれていることは、上述したように例えば120ビットの連続するダミーデータを検出することに基づいて特定される。また、パッキングデータに含まれるダミーデータのビット数は、120ビットのダミーデータに続く8ビットにより特定される。
Further, when the packing data constituting the payload data includes dummy data, the
[受信部331のアダプテーションレイヤの構成]
受信部331は、ペイロードデータ取得部431をアダプテーションレイヤの構成として有する。ペイロードデータ取得部431は、Byte Unpacking部425から供給されたデータを取得し、送信側LSI311においてデータ入力部342からペイロードデータ生成部351に入力されたデータのビット幅と同じビット幅の単位で情報処理部332に出力する。[Structure of adaptation layer of receiver 331]
The receiving
[送信側LSI311と受信側LSI312の動作]
次に、以上のような構成を有する送信側LSI311と受信側LSI312の一連の処理について説明する。[Operation of transmitting
Next, a series of processes of the transmitting
はじめに、図42のフローチャートを参照して、伝送システム301の動作について説明する。図42の各ステップの処理は、適宜、他の処理と並行して、または前後して行われる。
First, the operation of the
ステップS101において、送信側LSI311の情報処理部321は、各種のデータの処理を行い、送信対象のデータを8~144ビットの所定のビット幅の単位で送信部322に出力する。
In step S101, the
ステップS102において、送信部322はデータ送信処理を行う。データ送信処理により、送信対象のデータをペイロードに格納したパケットが生成され、パケットデータが受信部331に対して送信される。データ送信処理については図43のフローチャートを参照して後述する。
In step S102, the
ステップS103において、受信側LSI312の受信部331はデータ受信処理を行う。データ受信処理により、送信部322から送信されてきたデータが受信され、送信側LSI311において送信対象のデータとして選択されたデータが情報処理部332に出力される。データ受信処理については図44のフローチャートを参照して後述する。
In step S103, the receiving
ステップS104において、情報処理部332は、受信部331から供給されたデータを取得する。
In step S104, the
ステップS105において、情報処理部332は、取得したデータに基づいて各種の処理を行い、処理を終了させる。
In step S105, the
次に、図43のフローチャートを参照して、図42のステップS102において行われるデータ送信処理について説明する。 Next, the data transmission process performed in step S102 of FIG. 42 will be described with reference to the flowchart of FIG. 43.
ステップS111において、ペイロードデータ生成部351は、データ入力部342から供給された送信対象のデータを所定のサイズ毎に区切ることによってペイロードデータを生成する。
In step S111, the payload
ステップS112において、Byte Packing部362は、ペイロードデータ生成部351から供給されたペイロードデータを、16バイトなどの所定の単位のパッキングデータに変換する。
In step S112, the
ステップS113において、ペイロードECC挿入部363は、ペイロードデータから構成されるBasic BlockまたはExtra Blockに基づいて誤り訂正符号を計算し、計算により求めたパリティをペイロードデータに挿入する。
In step S113, the payload
ステップS114において、パケット生成部364は、ペイロードECC挿入部363から供給されたデータをパケットデータとしてレーン分配部365に出力する。
In step S114, the
ステップS115において、レーン分配部365は、パケット生成部364から供給されたパケットデータを、データ伝送に用いられる複数のレーンに割り当てる。
In step S115, the
ステップS116において、制御コード挿入部391は、レーン分配部365から供給されたパケットデータに制御コードを付加する。
In step S116, the control
ステップS117において、8B10Bシンボルエンコーダ392は、制御コードが付加されたパケットデータの8B10B変換を行い、10ビット単位のデータに変換したパケットデータを出力する。
In step S117, the
ステップS118において、同期部393は、8B10Bシンボルエンコーダ392から供給されたパケットデータを、クロック生成部382により生成されたクロック信号に従って出力し、送信部394から送信させる。ステップS116乃至S118の処理は信号処理部383-0乃至383-Nにより並行して行われる。パケットデータが送信された後、図42のステップS102に戻り、それ以降の処理が行われる。
In step S118, the
次に、図44のフローチャートを参照して、図42のステップS103において行われるデータ受信処理について説明する。 Next, the data reception process performed in step S103 of FIG. 42 will be described with reference to the flowchart of FIG.
ステップS131において、受信部411は、送信部322から伝送されてきたパケットデータを表す信号を受信する。ステップS131乃至S136の処理は信号処理部402-0乃至402-Nにより並行して行われる。
In step S131, the receiving
ステップS132において、クロック生成部412は、受信部411から供給された信号のエッジを検出することによってビット同期をとる。同期部413は、受信部411において受信された信号のサンプリングを行い、パケットデータをシンボル同期部414に出力する。
In step S132, the
ステップS133において、シンボル同期部414は、パケットデータに含まれる制御コードを検出するなどしてシンボル同期をとる。
In step S133, the
ステップS134において、10B8Bシンボルデコーダ415は、シンボル同期後のパケットデータに対して10B8B変換を施し、8ビット単位のデータに変換したパケットデータを出力する。
In step S134, the
ステップS135において、スキュー補正部416は、Deskew Codeを検出し、Deskew CodeのタイミングをPHY-RX状態制御部401から供給された情報により表されるタイミングに合わせるようにしてレーン間のData Skewを補正する。
In step S135, the
ステップS136において、制御コード除去部417は、パケットデータに付加された制御コードを除去する。
In step S136, the control
ステップS137において、レーン統合部422は、信号処理部402-0乃至402-Nから供給されたパケットデータを統合する。
In step S137, the
ステップS138において、パケット分離部423は、レーン統合部422により統合されたパケットデータを、ペイロードデータとしてペイロードエラー訂正部424に出力する。
In step S138, the
ステップS139において、ペイロードエラー訂正部424は、パケット分離部423から供給されたペイロードデータに挿入されているパリティに基づいてペイロードデータの誤り訂正を行う。
In step S139, the payload
ステップS140において、Byte Unpacking部425は、ペイロードエラー訂正部424から供給されたペイロードデータに対して、Byte Packingと逆の変換処理を行う。Byte Unpacking部425は、得られたデータをペイロードデータ取得部431に出力する。
In step S140, the
ステップS141において、ペイロードデータ取得部431は、Byte Unpacking部425から供給されたデータを所定のビット幅の単位で情報処理部332に出力する。その後、図42のステップS103に戻りそれ以降の処理が行われる。
In step S141, the payload
送信側LSI311と受信側LSI312の間の汎用I/Fを用いたデータ伝送は、以上のようにして行われる。汎用I/Fにより、各種のデータを伝送することが可能になる。
Data transmission using a general-purpose I / F between the transmitting
<3.通信リンク間のData Skewの補正について>
[(1)通信リンク間Data Skew]
以上のように、CIS I/Fおよび汎用I/Fにおいては、1つの送信部と1つの受信部の組により1つの通信リンクが確立され、データ伝送が行われる。<3. About correction of Data Skew between communication links>
[(1) Data Skew between communication links]
As described above, in the CIS I / F and the general-purpose I / F, one communication link is established by a pair of one transmitting unit and one receiving unit, and data transmission is performed.
通信リンクは、CIS I/Fでいうと撮像部と画像処理部間のデータ伝送の経路であり、汎用I/Fでいうと2つの情報処理部間のデータ伝送の経路である。上述したようなデータ構造を有するデータの並びが、データストリームとして通信リンクにより伝送される。 The communication link is a data transmission route between the image pickup unit and the image processing unit in the CIS I / F, and a data transmission route between the two information processing units in the general-purpose I / F. A sequence of data having a data structure as described above is transmitted as a data stream by a communication link.
図1および図33に示す伝送システムは、送信部と受信部の組が1つだけ設けられ、データ伝送が1経路を用いて行われるから、1つの通信リンクを用いたシステムとなる。 The transmission system shown in FIGS. 1 and 33 is a system using one communication link because only one pair of a transmitting unit and a receiving unit is provided and data transmission is performed using one route.
一方、図2および図34に示す伝送システムは、送信部と受信部の組が2つ設けられ、データ伝送が2経路を用いて行われるから、2つの通信リンクを用いたシステムとなる。図3および図35に示す伝送システムも同様である。 On the other hand, the transmission system shown in FIGS. 2 and 34 is a system using two communication links because two sets of a transmitting unit and a receiving unit are provided and data transmission is performed using two routes. The same applies to the transmission system shown in FIGS. 3 and 35.
以下、適宜、伝送システムにおいて用いられる通信リンクが1つである場合、その通信リンクをシングル通信リンクという。また、伝送システムにおいて用いられる通信リンクが複数である場合、その通信リンクをマルチ通信リンクという。 Hereinafter, when one communication link is appropriately used in the transmission system, the communication link is referred to as a single communication link. When there are a plurality of communication links used in a transmission system, the communication link is referred to as a multi-communication link.
[(1-1)シングル通信リンク]
図45は、シングル通信リンクの処理の流れの例を示す図である。CIS I/Fにおけるシングル通信リンクについて説明するが、汎用I/Fでも同様である。[(1-1) Single communication link]
FIG. 45 is a diagram showing an example of a processing flow of a single communication link. The single communication link in the CIS I / F will be described, but the same applies to the general-purpose I / F.
図45に示すように、シングル通信リンクである通信リンク#0は、送信部22のリンクレイヤおよび物理レイヤと、送信部22と受信部31の間の伝送路と、受信部31の物理レイヤおよびリンクレイヤとから構成される経路となる。
As shown in FIG. 45, the
アプリケーションレイヤ(撮像部21)から送信部22のリンクレイヤに対するデータの入力は、矢印A1に示すように基準タイミングに従って行われる。基準タイミングは、処理の基準となるタイミングを示す信号である。
Data is input from the application layer (imaging unit 21) to the link layer of the transmitting
送信部22のリンクレイヤにおいては、Pixel to Byte変換、パケット生成、およびレーン分配が、主な処理として順に行われる。
In the link layer of the
物理レイヤの各レーンにおいては、制御コードの挿入、8B10B変換、同期(シンボル同期とビット同期)、およびデータの送信が、主な処理として順に行われる。送信部22の物理レイヤの処理は、各レーン(信号処理部83-0乃至83-Nのそれぞれ)において並行して行われる。なお、送信側において同期処理が行われない場合、8B10B変換をして得られたデータがそのまま送信される。
In each lane of the physical layer, control code insertion, 8B10B conversion, synchronization (symbol synchronization and bit synchronization), and data transmission are performed in order as the main processing. The processing of the physical layer of the
物理レイヤの各レーンには矢印A2に示すように同じ基準タイミングが入力される。各レーンにおいては基準タイミングに従って処理が行われる。 The same reference timing is input to each lane of the physical layer as shown by arrow A2. In each lane, processing is performed according to the reference timing.
物理レイヤの各レーンにおいては、処理対象となるデータの違いや信号処理部の特性の違いなどに応じて、各レーンのデータのタイミングにずれが生じる。データのタイミングのずれは、矢印A3に示すようにレーン間Data Skewとして現れる。 In each lane of the physical layer, the timing of the data in each lane is deviated depending on the difference in the data to be processed and the difference in the characteristics of the signal processing unit. The data timing shift appears as data skew between lanes as shown by arrow A3.
物理レイヤの各レーンから出力されたデータは、矢印A11に示すようにレーン間Data Skewを有したまま受信部31に入力される。
The data output from each lane of the physical layer is input to the receiving
受信部31の物理レイヤの処理も、各レーン(信号処理部102-0乃至102-Nのそれぞれ)において並行して行われる。物理レイヤの各レーンにおいては、データの受信、同期、10B8B変換、およびDeskew(レーン間Data Skewの補正)が、主な処理として順に行われる。
The processing of the physical layer of the receiving
図25を参照して説明したようなDeskewが行われることにより、矢印A12に示すようにレーン間Data Skewが除去されたデータが得られる。レーン間Data Skewが除去されたデータが、物理レイヤの各レーンからリンクレイヤに出力される。 By performing the Skew as described with reference to FIG. 25, the data in which the inter-lane Data Skew is removed is obtained as shown by the arrow A12. The data from which the data Skew between lanes has been removed is output from each lane of the physical layer to the link layer.
受信部31のリンクレイヤにおいては、レーン統合、パケット分離、およびByte to Pixel変換が、主な処理として順に行われる。リンクレイヤの処理は、各レーンから出力されたデータを一系統のデータに統合した後に行われる。
In the link layer of the receiving
リンクレイヤからアプリケーションレイヤ(画像処理部32)に対しては、伝送対象のデータが矢印A13に示すように所定の基準タイミングに従って出力される。 The data to be transmitted is output from the link layer to the application layer (image processing unit 32) according to a predetermined reference timing as shown by arrow A13.
このように、CIS I/Fおよび汎用I/Fによるデータ伝送は、送信側の物理レイヤにおいて発生するレーン間Data Skewを、受信側の物理レイヤにおいて除去するようにして行われる。 In this way, data transmission by the CIS I / F and the general-purpose I / F is performed so as to remove the inter-lane data skew generated in the physical layer on the transmitting side in the physical layer on the receiving side.
[(1-2)マルチ通信リンク]
図46は、マルチ通信リンクの処理の流れの例を示す図である。図45を参照して説明したものと重複する説明については適宜省略する。[(1-2) Multi-communication link]
FIG. 46 is a diagram showing an example of the processing flow of the multi-communication link. Descriptions that overlap with those described with reference to FIG. 45 will be omitted as appropriate.
図46に示すマルチ通信リンクは、通信リンク#0と通信リンク#1から構成される。例えば、通信リンク#0は図2の送信部22-1と受信部31-1の組により実現され、通信リンク#1は送信部22-2と受信部31-2の組により実現される。
The multi-communication link shown in FIG. 46 is composed of
この場合、通信リンク#0は、送信部22-1のリンクレイヤおよび物理レイヤと、送信部22-1と受信部31-1の間の伝送路と、受信部31-1の物理レイヤおよびリンクレイヤとから構成される経路となる。また、通信リンク#1は、送信部22-2のリンクレイヤおよび物理レイヤと、送信部22-2と受信部31-2の間の伝送路と、受信部31-2の物理レイヤおよびリンクレイヤとから構成される経路となる。
In this case, the
通信リンク#0を構成する送信部22-1のリンクレイヤに対するデータの入力と、通信リンク#1を構成する送信部22-2のリンクレイヤに対するデータの入力は、矢印A21-0と矢印A21-1に示すように同じ基準タイミングに従って行われる。
The data input to the link layer of the transmission unit 22-1 constituting the
通信リンク#0を構成する送信部22-1のリンクレイヤと、通信リンク#1を構成する送信部22-2のリンクレイヤにおいては、上述したリンクレイヤの処理がそれぞれ独立して行われる。
In the link layer of the transmission unit 22-1 constituting the
送信部22-1のリンクレイヤから物理レイヤに対して、各レーンに分配されたデータが出力される。同様に、送信部22-2のリンクレイヤから物理レイヤに対して、各レーンに分配されたデータが出力される。 The data distributed to each lane is output from the link layer of the transmission unit 22-1 to the physical layer. Similarly, the data distributed to each lane is output from the link layer of the transmission unit 22-2 to the physical layer.
同じタイミングでリンクレイヤに入力されたデータは、物理レイヤに入力されるときには、矢印A22-0,A22-1の基準タイミングに示すようにタイミングがずれたものとなる。 When the data input to the link layer at the same timing is input to the physical layer, the timing is deviated as shown by the reference timings of arrows A22-0 and A22-1.
このタイミングのずれは、送信部22-1のリンクレイヤの処理を行う構成と送信部22-2のリンクレイヤの処理を行う構成の特性の違いなど(動作クロックのずれなど)により生じる。 This timing deviation occurs due to a difference in characteristics between the configuration for processing the link layer of the transmission unit 22-1 and the configuration for processing the link layer of the transmission unit 22-2 (deviation of the operating clock, etc.).
以下、適宜、異なる通信リンクのリンクレイヤにおいて生じるデータのタイミングのずれを、通信リンク間Data Skewという。通信リンク間Data Skewは、上述したようにDeskew Codeを用いて除去されるレーン間Data Skewとは異なる。 Hereinafter, the data timing deviation that occurs in the link layers of different communication links is referred to as data skew between communication links. The data Skew between communication links is different from the data Skew between lanes that is removed using the Deskew Code as described above.
物理レイヤの各レーンにおいては、制御コードの挿入、8B10B変換、同期、およびデータの送信が順に行われる。送信部22-1,22-2の物理レイヤの処理は、各レーンにおいて並行して行われる。 In each lane of the physical layer, control code insertion, 8B10B conversion, synchronization, and data transmission are performed in order. The processing of the physical layers of the transmission units 22-1 and 22-2 is performed in parallel in each lane.
通信リンク#0を構成する送信部22-1の物理レイヤの各レーンから出力されるデータには、矢印A23-0に示すように、リンクレイヤにおいて生じた通信リンク間Data Skewと物理レイヤにおいて生じたレーン間Data Skewが混在して含まれることになる。
The data output from each lane of the physical layer of the transmission unit 22-1 constituting the
また、通信リンク#1を構成する送信部22-2の物理レイヤの各レーンから出力されるデータには、矢印A23-1に示すように、リンクレイヤにおいて生じた通信リンク間Data Skewと物理レイヤにおいて生じたレーン間Data Skewが混在して含まれることになる。
Further, as shown by arrow A23-1, the data output from each lane of the physical layer of the transmission unit 22-2 constituting the
受信部31-1と受信部31-2の物理レイヤには、矢印A31-0,A31-1に示すように通信リンク間Data Skewとレーン間Data Skewを含むデータが入力される。 Data including data Skew between communication links and Data Skew between lanes are input to the physical layers of the receiving unit 31-1 and the receiving unit 31-2 as shown by arrows A31-0 and A31-1.
通信リンク#0を構成する受信部31-1の物理レイヤの各レーンにおいては、データの受信、同期、10B8B変換、およびDeskewが順に行われ、矢印A32-0に示すように、レーン間Data Skewが除去されたデータが得られる。
In each lane of the physical layer of the receiving unit 31-1 constituting the
通信リンク#1を構成する受信部31-2の物理レイヤの各レーンにおいては、データの受信、同期、10B8B変換、およびDeskewが順に行われ、矢印A32-1に示すように、レーン間Data Skewが除去されたデータが得られる。
In each lane of the physical layer of the receiving unit 31-2 constituting the
レーン間Data Skewが除去されたデータが、物理レイヤの各レーンからリンクレイヤに出力される。なお、物理レイヤの各レーンでのDeskewにより除去されるのはレーン間Data Skewだけであり、通信リンク間Data Skewについては除去されない。 The data from which the data Skew between lanes has been removed is output from each lane of the physical layer to the link layer. Note that only the data Skew between lanes is removed by Deskew in each lane of the physical layer, and the Data Skew between communication links is not removed.
通信リンク#0を構成する受信部31-1のリンクレイヤにおいては、レーン統合、パケット分離、およびByte to Pixel変換が順に行われる。リンクレイヤからアプリケーションレイヤに対しては、矢印A33-0に示すように通信リンク間Data Skewが残ったままのデータが出力される。
In the link layer of the receiving unit 31-1 constituting the
通信リンク#1を構成する受信部31-2のリンクレイヤにおいても、レーン統合、パケット分離、およびByte to Pixel変換が順に行われる。リンクレイヤからアプリケーションレイヤに対しては、矢印A33-1に示すように通信リンク間Data Skewが残ったままのデータが出力される。
Also in the link layer of the receiving unit 31-2 constituting the
なお、受信部31-1と受信部31-2のリンクレイヤにおいても、それぞれ通信リンク間Data Skewが生じ、処理対象のデータに対して付加される。 Also in the link layer of the receiving unit 31-1 and the receiving unit 31-2, a data Skew between communication links is generated and added to the data to be processed.
このように、マルチ通信リンクを用いたデータ伝送においては、レーン間Data Skewだけでなく、通信リンク間Data Skewについても考慮する必要がある。以下、通信リンク間Data Skewの除去の仕方について説明する。 As described above, in data transmission using a multi-communication link, it is necessary to consider not only the data Skew between lanes but also the data Skew between communication links. The method of removing Data Skew between communication links will be described below.
[(2)通信リンク間Data Skewの除去]
図47は、伝送システム301の他の構成例を示す図である。図47に示す構成のうち、図34に示す構成と同じ構成には同じ符号を付してある。重複する説明については適宜省略する。[(2) Removal of Data Skew between communication links]
FIG. 47 is a diagram showing another configuration example of the
図47に示す伝送システム301は、受信側LSI312に受信状態制御部601が設けられている点で、図34に示す構成と異なる。汎用I/Fにおけるマルチ通信リンクについて説明するが、CIS I/Fでも同様である。
The
送信側LSI311に設けられた送信部322-1と受信側LSI312に設けられた受信部331-1の組により通信リンク#0が実現される。また、送信側LSI311に設けられた送信部322-2と受信側LSI312に設けられた受信部331-2の組により通信リンク#1が実現される。
受信状態制御部601は、受信部331-1におけるデータの受信状態と、受信部331-2におけるデータの受信状態に基づいて、通信リンク間Data Skewを検出する。
The reception
また、受信状態制御部601は、受信部331-1が処理するデータのタイミングと受信部331-2が処理するデータのタイミングを制御することによって、通信リンク間Data Skewを補正する。受信状態制御部601は、通信リンク間Data Skewを補正する制御部として機能する。
Further, the reception
[(2-1)第1の例 通信リンク間Data Skewの除去を受信側の物理レイヤで行う場合の例]
・伝送システムの構成例
図48は、送信側LSI311と受信側LSI312の構成例を示す図である。[(2-1) First example Example of removing Data Skew between communication links at the physical layer on the receiving side]
• Configuration Example of Transmission System FIG. 48 is a diagram showing a configuration example of a transmitting
図48に示す構成のうち、図37に示す構成と同じ構成には同じ符号を付してある。重複する説明については適宜省略する。後述する図51、図53等においても同様である。 Among the configurations shown in FIG. 48, the same configurations as those shown in FIG. 37 are designated by the same reference numerals. Duplicate explanations will be omitted as appropriate. The same applies to FIGS. 51 and 53, which will be described later.
図48に示すように、受信状態制御部601は、受信部331-1のPHY-RX状態制御部401に接続されるとともに、受信部331-2のPHY-RX状態制御部401に接続される。
As shown in FIG. 48, the reception
なお、図48においては、受信部331-2の構成としてPHY-RX状態制御部401のみが示され、他の構成の図示については省略されている。受信部331-2にも、PHY-RX状態制御部401を含む、受信部331-1の構成と同じ構成が設けられる。
In FIG. 48, only the PHY-RX
また、図48においては、送信部の構成として、受信部331-1とともに通信リンク#0を実現する送信部322-1のみが示されている。受信部331-2とともに通信リンク#1を実現する送信部322-2も設けられる。受信部331-2は、送信部322-2から送信されたデータを受信し、情報処理部332に出力する。
Further, in FIG. 48, as the configuration of the transmission unit, only the transmission unit 322-1 that realizes the
情報処理部321と情報処理部332の間では、通信リンク#0と通信リンク#1からなるマルチ通信リンクを用いたデータ伝送が行われる。それぞれの通信リンクにおいては図37等を参照して説明した処理が行われる。
Data transmission is performed between the
受信部331-1の信号処理部402-0乃至402-Nのそれぞれのスキュー補正部416は、Deskew Codeを検出し、検出タイミングの情報をPHY-RX状態制御部401に出力する。また、それぞれのスキュー補正部416は、PHY-RX状態制御部401による制御に従って、検出したDeskew Codeのタイミングを補正する。
Each of the
後述するように、補正タイミングは、通信リンク間Data Skewを補正するようにして受信状態制御部601により設定される。
As will be described later, the correction timing is set by the reception
受信部331-1のPHY-RX状態制御部401は、信号処理部402-0乃至402-Nのそれぞれのスキュー補正部416から供給された、Deskew Codeの検出タイミングの情報を受信状態制御部601に出力する。PHY-RX状態制御部401は、補正タイミングの情報が受信状態制御部601から供給された場合、信号処理部402-0乃至402-Nのそれぞれのスキュー補正部416の動作を制御する。
The PHY-RX
受信部331-2の各部も、受信部331-1の各部と同様の処理を行う。 Each part of the receiving unit 331-2 also performs the same processing as each part of the receiving unit 331-1.
すなわち、受信部331-2の信号処理部402-0乃至402-Nのそれぞれのスキュー補正部416(いずれも図示せず)は、Deskew Codeを検出し、Deskew Codeの検出タイミングの情報をPHY-RX状態制御部401に出力する。また、それぞれのスキュー補正部416は、PHY-RX状態制御部401による制御に従って、検出したDeskew Codeのタイミングを補正する。
That is, the skew correction units 416 (none of which are shown) of the signal processing units 402-0 to 402-N of the reception unit 331-2 detect the Deskew Code, and the information of the detection timing of the Deskew Code is PHY-. Output to RX
受信部331-2のPHY-RX状態制御部401は、信号処理部402-0乃至402-Nのそれぞれのスキュー補正部416から供給された、Deskew Codeの検出タイミングの情報を受信状態制御部601に出力する。PHY-RX状態制御部401は、補正タイミングの情報が受信状態制御部601から供給された場合、信号処理部402-0乃至402-Nのそれぞれのスキュー補正部416の動作を制御する。
The PHY-RX
受信状態制御部601は、受信部331-1のPHY-RX状態制御部401から供給された検出タイミングの情報と、受信部331-2のPHY-RX状態制御部401から供給された検出タイミングの情報を受信する。
The reception
受信状態制御部601は、受信部331-1の各レーンと受信部331-2の各レーンにおいて検出されたDeskew Codeのタイミングに基づいて補正タイミングを設定する。
The reception
図49は、補正タイミングの設定の例を示す図である。 FIG. 49 is a diagram showing an example of setting the correction timing.
図49の例においては、通信リンク#0にはLane0~3の4レーンが用いられ、通信リンク#1にはLane4~7の4レーンが用いられている。各レーンにおいては、図25を参照して説明したものと同様に、Sync Code, Sync Code,…,Idle Code, Deskew Code, Idle Code, …, Idle Code, Deskew Codeの伝送が行われている。
In the example of FIG. 49, 4 lanes of
通信リンク#0において、Lane0のDeskew Code C1は、時刻t11のタイミングで検出されている。Lane1のDeskew Code C1とLane2のDeskew Code C1は、同じ時刻t12のタイミングで検出されている。Lane3のDeskew Code C1は、時刻t13のタイミングで検出されている。
In
また、通信リンク#0において、Lane0のDeskew Code C2は、時刻t21のタイミングで検出されている。Lane1のDeskew Code C2とLane2のDeskew Code C2は、同じ時刻t22のタイミングで検出されている。Lane3のDeskew Code C2は、時刻t23のタイミングで検出されている。
Further, in the
このような検出タイミングの情報が、受信部331-1のPHY-RX状態制御部401から受信状態制御部601に供給される。
Such detection timing information is supplied from the PHY-RX
一方、通信リンク#1において、Lane4~7のDeskew Code C1は、それぞれ、時刻t14,t15,t16,t17のタイミングで検出されている。
On the other hand, in the
また、通信リンク#1において、Lane4~7のDeskew Code C2は、それぞれ、時刻t24,t25,t26,t27のタイミングで検出されている。
Further, in the
このような検出タイミングの情報が、受信部331-2のPHY-RX状態制御部401から受信状態制御部601に供給される。
Such detection timing information is supplied from the PHY-RX
各レーンにおいて検出されたDeskew Code C1は、通信リンク#0と通信リンク#1(送信部322-1と送信部322-2の物理レイヤ)において同じタイミングで挿入された、対応するデータである。各レーンにおいて検出されたDeskew Code C2も同様に、通信リンク#0と通信リンク#1において同じタイミングで挿入された、対応するデータである。
The Deskew Code C1 detected in each lane is the corresponding data inserted at the same timing in the
この場合、受信状態制御部601は、Deskew Code C1の補正タイミングとして、例えば、通信リンク#0のLane0~3と通信リンク#1のLane4~7における検出タイミングのうちの、最も遅い時刻t17のタイミングを設定する。
In this case, the reception
また、受信状態制御部601は、Deskew Code C2の補正タイミングとして、例えば、通信リンク#0のLane0~3と通信リンク#1のLane4~7における検出タイミングのうちの、最も遅い時刻t27のタイミングを設定する。
Further, the reception
受信状態制御部601は、このようにして設定した補正タイミングの情報を、受信部331-1のPHY-RX状態制御部401と受信部331-2のPHY-RX状態制御部401に出力する。
The reception
受信部331-1の信号処理部402-0乃至402-Nのそれぞれのスキュー補正部416においては、PHY-RX状態制御部401による制御に従って、Deskew Code C1のタイミングを、時刻t17のタイミングに合わせるようにしてDeskewが行われる。また、Deskew Code C2のタイミングを、時刻t27のタイミングに合わせるようにしてDeskewが行われる。Deskew Codeのタイミングの補正は、それぞれのスキュー補正部416に設けられたFIFOを用いて行われる。
In each of the
一方、受信部331-2の信号処理部402-0乃至402-Nのそれぞれのスキュー補正部416においては、PHY-RX状態制御部401による制御に従って、Deskew Code C1のタイミングを、時刻t17のタイミングに合わせるようにしてDeskewが行われる。また、Deskew Code C2のタイミングを、時刻t27のタイミングに合わせるようにしてDeskewが行われる。Deskew Codeのタイミングの補正は、それぞれのスキュー補正部416に設けられたFIFOを用いて行われる。
On the other hand, in each of the
これにより、図49の白抜き矢印の先に示すように、通信リンク#0のLane0~3におけるDeskew Code C1のタイミングと、通信リンク#1のLane4~7におけるDeskew Code C1のタイミングが同じタイミングになるように補正される。
As a result, as shown at the tip of the white arrow in FIG. 49, the timing of Deskew Code C1 in
また、通信リンク#1のLane0~3におけるDeskew Code C2のタイミングと、通信リンク#1のLane4~7におけるDeskew Code C2のタイミングが同じタイミングになるように補正される。
Further, the timing of Deskew Code C2 in
このようにしてタイミングが補正されたDeskew Codeがスキュー補正部416から出力される。
The Deskew Code whose timing is corrected in this way is output from the
これにより、既知情報であるDeskew Codeを用いて、通信リンク間Data Skewが補正されることになる。また、レーン間Data Skewについても補正されることになる。 As a result, the Data Skew between communication links is corrected using the Skew Code, which is known information. In addition, the data Skew between lanes will also be corrected.
・伝送システムの動作
次に、図50のシーケンス図を参照して、通信リンク間Data Skewを物理レイヤにおいて補正する場合の一連の動作について説明する。-Operation of the transmission system Next, a series of operations when the data skew between communication links is corrected in the physical layer will be described with reference to the sequence diagram of FIG.
図50の左端に示す処理は、通信リンク#0を実現する受信部331-1の処理である。中央に示す処理は、通信リンク#1を実現する受信部331-2の処理である。右端に示す処理は、受信状態制御部601の処理である。
The process shown at the left end of FIG. 50 is the process of the receiving unit 331-1 that realizes the
受信部331-1においては、送信部322-1から送信されたデータが各レーンの信号処理部により受信され、物理レイヤの各処理が行われる。受信部331-2においても同様に、送信部322-2から送信されたデータが各レーンの信号処理部により受信され、物理レイヤの各処理が行われる。 In the receiving unit 331-1, the data transmitted from the transmitting unit 322-1 is received by the signal processing unit of each lane, and each processing of the physical layer is performed. Similarly, in the receiving unit 331-2, the data transmitted from the transmitting unit 322-2 is received by the signal processing unit of each lane, and each processing of the physical layer is performed.
ステップS301において、受信部331-1の信号処理部402-0乃至402-Nのそれぞれのスキュー補正部416は、Deskew Codeを検出する。検出タイミングの情報は受信部331-1のPHY-RX状態制御部401に供給される。
In step S301, the
ステップS302において、受信部331-1のPHY-RX状態制御部401は、信号処理部402-0乃至402-Nのそれぞれのスキュー補正部416から供給された、Deskew Codeの検出タイミングの情報を受信状態制御部601に出力する。
In step S302, the PHY-RX
一方、受信部331-2においても同様の処理が行われる。ステップS311において、受信部331-2の信号処理部402-0乃至402-Nのそれぞれのスキュー補正部416は、Deskew Codeを検出する。検出タイミングの情報は受信部331-2のPHY-RX状態制御部401に供給される。
On the other hand, the same processing is performed in the receiving unit 331-2. In step S311, the
ステップS312において、受信部331-2のPHY-RX状態制御部401は、信号処理部402-0乃至402-Nのそれぞれのスキュー補正部416から供給された、Deskew Codeの検出タイミングの情報を受信状態制御部601に出力する。
In step S312, the PHY-RX
ステップS321において、受信状態制御部601は、受信部331-1のPHY-RX状態制御部401から供給された情報を受信する。
In step S321, the reception
また、ステップS322において、受信状態制御部601は、受信部331-2のPHY-RX状態制御部401から供給された情報を受信する。
Further, in step S322, the reception
ステップS323において、受信状態制御部601は、受信部331-1の各レーンと受信部331-2の各レーンにおいて検出されたDeskew Codeのタイミングに基づいて、補正タイミングを上述したようにして設定する。
In step S323, the reception
ステップS324において、受信状態制御部601は、補正タイミングの情報を、受信部331-1のPHY-RX状態制御部401と受信部331-2のPHY-RX状態制御部401に出力する。
In step S324, the reception
ステップS303において、受信部331-1のPHY-RX状態制御部401は、受信状態制御部601から供給された補正タイミングの情報を受信する。
In step S303, the PHY-RX
ステップS304において、受信部331-1のPHY-RX状態制御部401は、補正タイミングを表す制御信号を信号処理部402-0乃至402-Nのそれぞれのスキュー補正部416に出力する。
In step S304, the PHY-RX
ステップS305において、受信部331-1の信号処理部402-0乃至402-Nのそれぞれのスキュー補正部416は、Deskew Codeのタイミングを補正タイミングに合わせることによって通信リンク間Data Skewとレーン間Data Skewを補正し、出力する。
In step S305, each
一方、受信部331-2においても同様の処理が行われる。ステップS313において、受信部331-2のPHY-RX状態制御部401は、受信状態制御部601から供給された補正タイミングの情報を受信する。
On the other hand, the same processing is performed in the receiving unit 331-2. In step S313, the PHY-RX
ステップS314において、受信部331-2のPHY-RX状態制御部401は、補正タイミングを表す制御信号を信号処理部402-0乃至402-Nのそれぞれのスキュー補正部416に出力する。
In step S314, the PHY-RX
ステップS315において、受信部331-2の信号処理部402-0乃至402-Nのそれぞれのスキュー補正部416は、Deskew Codeのタイミングを補正タイミングに合わせることによって通信リンク間Data Skewとレーン間Data Skewを補正し、出力する。
In step S315, each
通信リンク間Data Skewとレーン間Data Skewが補正された各レーンのデータは、リンクレイヤにおいて一系統のデータとして統合された後、各処理が施される。リンクレイヤの処理によって得られたデータは、リンクレイヤからアプリケーションレイヤに供給される。 The data of each lane in which the data Skew between communication links and the data Skew between lanes are corrected are integrated as one system of data in the link layer, and then each processing is performed. The data obtained by the processing of the link layer is supplied from the link layer to the application layer.
以上の処理が、例えば、複数の通信リンクのそれぞれのレーンにおいてDeskew Codeが検出される毎に行われる。 The above processing is performed, for example, each time a Deskew Code is detected in each lane of a plurality of communication links.
以上の処理により、通信リンク間Data Skewの除去を、受信側の物理レイヤで行うことが可能になる。 By the above processing, the data Skew between communication links can be removed at the physical layer on the receiving side.
Deskew Codeの検出タイミングに基づいて補正タイミングが設定されるものとしたが、物理レイヤにおいて検出される他のデータのタイミングに基づいて設定されるようにしてもよい。例えば、各レーンで検出された所定のシンボルの検出タイミング、Start CodeやEnd Codeなどの他の制御コードの検出タイミングに基づいて、補正タイミングが設定されるようにしてもよい。 Although the correction timing is set based on the detection timing of the Deskew Code, it may be set based on the timing of other data detected in the physical layer. For example, the correction timing may be set based on the detection timing of a predetermined symbol detected in each lane and the detection timing of other control codes such as Start Code and End Code.
各パケットやそれに付加される既知情報である制御コードなど、送信側において生成されるデータの構造は、伝送に用いられる通信リンクの違いに関わらず同じである。上述したような構造を有するデータのまとまり(データストリーム)を構成するデータとして、それぞれの通信リンクにおいて同じ位置(タイミング)に配置されるものであれば、どのようなデータであっても、補正タイミングを設定することに用いることが可能である。 The structure of the data generated on the transmitting side, such as each packet and the control code which is known information added to the packet, is the same regardless of the difference in the communication link used for the transmission. Correction timing for any data that constitutes a group of data (data stream) having the above-mentioned structure and is arranged at the same position (timing) on each communication link. Can be used to set.
なお、CIS I/Fのマルチ通信リンクを用いた伝送システムにおいても、同様の処理により、通信リンク間Data Skewの補正が受信側の物理レイヤで行われる。 In a transmission system using a CIS I / F multi-communication link, the data Skew between communication links is corrected at the physical layer on the receiving side by the same processing.
[(2-2)第2の例 通信リンク間Data Skewの除去を受信側のリンクレイヤで行う場合の例]
・伝送システムの構成例
図51は、送信側LSI311と受信側LSI312の他の構成例を示す図である。[(2-2) Second example Example of removing Data Skew between communication links at the link layer on the receiving side]
Configuration example of transmission system FIG. 51 is a diagram showing another configuration example of the
図51の例においては、受信状態制御部601は、受信部331-1のパケット分離部423に接続されるとともに、受信部331-2のパケット分離部423に接続される。
In the example of FIG. 51, the reception
図51においては、受信部331-2の構成としてパケット分離部423のみが示され、他の構成の図示については省略されている。受信部331-2にも、パケット分離部423を含む、受信部331-1の構成と同じ構成が設けられる。
In FIG. 51, only the
情報処理部321と情報処理部332の間では、通信リンク#0と通信リンク#1からなるマルチ通信リンクを用いたデータ伝送が行われる。
Data transmission is performed between the
受信部331-1のパケット分離部423は、レーン統合部422により統合されたデータから、各パケットのペイロードデータを検出し、検出タイミングの情報を受信状態制御部601に出力する。また、パケット分離部423は、検出したペイロードデータのタイミングを、受信状態制御部601により設定された補正タイミングに合わせるように補正し、出力する。ペイロードデータの出力タイミングが補正されることになる。ペイロードデータの出力タイミングの補正は、パケット分離部423に設けられたFIFOを用いて行われる。
The
受信部331-2のパケット分離部423も、受信部331-1のパケット分離部423と同様の処理を行う。
The
すなわち、受信部331-2のパケット分離部423は、レーン統合部422により統合されたデータから、各パケットのペイロードデータを検出し、検出タイミングの情報を受信状態制御部601に出力する。また、パケット分離部423は、検出したペイロードデータのタイミングを、受信状態制御部601により設定された補正タイミングに合わせるように補正し、出力する。ペイロードデータの出力タイミングの補正は、パケット分離部423に設けられたFIFOを用いて行われる。
That is, the
受信状態制御部601は、受信部331-1のパケット分離部423から供給された検出タイミングの情報と、受信部331-2のパケット分離部423から供給された検出タイミングの情報を受信する。
The reception
受信状態制御部601は、受信部331-1のパケット分離部423におけるペイロードデータの検出タイミングと、受信部331-2のパケット分離部423におけるペイロードデータの検出タイミングに基づいて補正タイミングを設定する。
The reception
例えば、受信部331-1のパケット分離部423と受信部331-2のパケット分離部423において検出された対応するペイロードデータの検出タイミングのうち、最も遅いタイミングが補正タイミングとして設定される。受信状態制御部601は、このようにして設定した補正タイミングの情報を、受信部331-1のパケット分離部423と受信部331-2のパケット分離部423に出力する。
For example, the latest timing among the detection timings of the corresponding payload data detected by the
・伝送システムの動作
次に、図52のシーケンス図を参照して、通信リンク間Data Skewをリンクレイヤにおいて補正する場合の一連の動作について説明する。-Operation of the transmission system Next, a series of operations when the data skew between communication links is corrected at the link layer will be described with reference to the sequence diagram of FIG.
受信部331-1においては、送信部322-1から送信されたデータが各レーンの信号処理部により受信され、物理レイヤの各処理が行われる。物理レイヤから出力された各レーンのデータは、レーン統合部422により一系統のデータとして統合され、パケット分離部423に出力される。なお、物理レイヤの処理は行われているから、パケット分離部423に供給されるデータは、レーン間Data Skewについては補正済みのデータとなる。
In the receiving unit 331-1, the data transmitted from the transmitting unit 322-1 is received by the signal processing unit of each lane, and each processing of the physical layer is performed. The data of each lane output from the physical layer is integrated as one system of data by the
受信部331-2においても同様に、送信部322-2から送信されたデータが各レーンの信号処理部により受信され、物理レイヤの各処理が行われる。物理レイヤから出力された各レーンのデータは、レーン統合部422により一系統のデータとして統合され、パケット分離部423に出力される。
Similarly, in the receiving unit 331-2, the data transmitted from the transmitting unit 322-2 is received by the signal processing unit of each lane, and each processing of the physical layer is performed. The data of each lane output from the physical layer is integrated as one system of data by the
ステップS351において、受信部331-1のパケット分離部423は、レーン統合部422により統合されたデータから、各パケットのペイロードデータを検出する。
In step S351, the
ステップS352において、受信部331-1のパケット分離部423は、ペイロードデータの検出タイミングの情報を受信状態制御部601に出力する。
In step S352, the
一方、受信部331-2においても同様の処理が行われる。ステップS361において、受信部331-2のパケット分離部423は、レーン統合部422により統合されたデータから、各パケットのペイロードデータを検出する。
On the other hand, the same processing is performed in the receiving unit 331-2. In step S361, the
ステップS362において、受信部331-2のパケット分離部423は、ペイロードデータの検出タイミングの情報を受信状態制御部601に出力する。
In step S362, the
ステップS371において、受信状態制御部601は、受信部331-1のパケット分離部423から供給された情報を受信する。
In step S371, the reception
また、ステップS372において、受信状態制御部601は、受信部331-2のパケット分離部423から供給された情報を受信する。
Further, in step S372, the reception
ステップS373において、受信状態制御部601は、通信リンク#0と通信リンク#1において検出された対応するペイロードデータのタイミングに基づいて、補正タイミングを設定する。
In step S373, the reception
ステップS374において、受信状態制御部601は、補正タイミングの情報を、受信部331-1のパケット分離部423と受信部331-2のパケット分離部423に出力する。
In step S374, the reception
ステップS353において、受信部331-1のパケット分離部423は、受信状態制御部601から供給された補正タイミングの情報を受信する。
In step S353, the
ステップS354において、受信部331-1のパケット分離部423は、検出したペイロードデータのタイミングを補正タイミングに合わせることによって通信リンク間Data Skewを補正し、出力する。
In step S354, the
一方、受信部331-2においても同様の処理が行われる。ステップS363において、受信部331-2のパケット分離部423は、受信状態制御部601から供給された補正タイミングの情報を受信する。
On the other hand, the same processing is performed in the receiving unit 331-2. In step S363, the
ステップS364において、受信部331-2のパケット分離部423は、検出したペイロードデータのタイミングを補正タイミングに合わせることによって通信リンク間Data Skewを補正し、出力する。
In step S364, the
通信リンク間Data Skewが補正されたペイロードデータに対しては、リンクレイヤにおいて他の処理が施され、アプリケーションレイヤに供給される。 For the payload data to which the data Skew between communication links is corrected, other processing is performed in the link layer and the data is supplied to the application layer.
以上の処理が、例えば、それぞれの通信リンクにおいてペイロードデータが検出される毎に行われる。 The above processing is performed, for example, every time the payload data is detected in each communication link.
以上の処理により、通信リンク間Data Skewの除去を、受信側のリンクレイヤで行うことが可能になる。 By the above processing, the data Skew between communication links can be removed at the link layer on the receiving side.
ペイロードデータの検出タイミングに基づいて補正タイミングが設定されるものとしたが、リンクレイヤにおいて検出される他のデータのタイミングに基づいて設定されるようにしてもよい。例えば、ペイロードデータにヘッダ情報が含まれている場合、対応するヘッダ情報の検出タイミングに基づいて、補正タイミングが設定されるようにすることも可能である。 Although the correction timing is set based on the detection timing of the payload data, it may be set based on the timing of other data detected in the link layer. For example, when the payload data includes header information, it is possible to set the correction timing based on the detection timing of the corresponding header information.
ペイロードデータに含まれるパリティの検出タイミングに基づいて補正タイミングが設定されるようにしてもよいし、ペイロードデータを構成する所定のパッキングデータの検出タイミングに基づいて補正タイミングが設定されるようにしてもよい。前者の場合、通信リンク間Data Skewの補正はペイロードエラー訂正部424により行われる。また、後者の場合、通信リンク間Data Skewの補正はByte Unpacking部425により行われる。
The correction timing may be set based on the detection timing of the parity included in the payload data, or the correction timing may be set based on the detection timing of the predetermined packing data constituting the payload data. good. In the former case, the correction of the data Skew between communication links is performed by the payload
なお、CIS I/Fのマルチ通信リンクを用いた伝送システムにおいても、同様の処理により、通信リンク間Data Skewの補正が受信側のリンクレイヤで行われる。 In a transmission system using a CIS I / F multi-communication link, the data Skew between communication links is corrected at the link layer on the receiving side by the same processing.
[(2-3)第3の例 通信リンク間Data Skewの除去を受信側のアダプテーションレイヤで行う場合の例]
・伝送システムの構成例
図53は、送信側LSI311と受信側LSI312の他の構成例を示す図である。[(2-3) Third example: Example of removing Data Skew between communication links at the adaptation layer on the receiving side]
• Configuration Example of Transmission System FIG. 53 is a diagram showing another configuration example of the transmitting
図53の例においては、受信状態制御部601は、受信部331-1のペイロードデータ取得部431に接続されるとともに、受信部331-2のペイロードデータ取得部431に接続される。
In the example of FIG. 53, the reception
図53においては、受信部331-2の構成としてペイロードデータ取得部431のみが示され、他の構成の図示については省略されている。受信部331-2にも、ペイロードデータ取得部431を含む、受信部331-1の構成と同じ構成が設けられる。
In FIG. 53, only the payload
情報処理部321と情報処理部332の間では、通信リンク#0と通信リンク#1からなるマルチ通信リンクを用いたデータ伝送が行われる。
Data transmission is performed between the
受信部331-1のペイロードデータ取得部431は、リンクレイヤのByte Unpacking部425から供給された、各パケットのペイロードデータを取得し、取得タイミングの情報を受信状態制御部601に出力する。また、ペイロードデータ取得部431は、検出したペイロードデータのタイミングを、受信状態制御部601により設定された補正タイミングに合わせるように補正し、出力する。ペイロードデータの出力タイミングが補正されることになる。ペイロードデータの出力タイミングの補正は、ペイロードデータ取得部431に設けられたFIFOを用いて行われる。
The payload
受信部331-2のペイロードデータ取得部431も、受信部331-1のペイロードデータ取得部431と同様の処理を行う。
The payload
すなわち、受信部331-2のペイロードデータ取得部431は、リンクレイヤのByte Unpacking部425から供給された、各パケットのペイロードデータを取得し、取得タイミングの情報を受信状態制御部601に出力する。また、ペイロードデータ取得部431は、取得したペイロードデータのタイミングを、受信状態制御部601により設定された補正タイミングに合わせるように補正し、出力する。ペイロードデータの出力タイミングの補正は、ペイロードデータ取得部431に設けられたFIFOを用いて行われる。
That is, the payload
受信状態制御部601は、受信部331-1のペイロードデータ取得部431から供給された取得タイミングの情報と、受信部331-2のペイロードデータ取得部431から供給された取得タイミングの情報を受信する。
The reception
受信状態制御部601は、受信部331-1のペイロードデータ取得部431におけるペイロードデータの取得タイミングと、受信部331-2のペイロードデータ取得部431におけるペイロードデータの取得タイミングに基づいて補正タイミングを設定する。
The reception
例えば、受信部331-1のペイロードデータ取得部431と受信部331-2のペイロードデータ取得部431において取得された対応するペイロードデータのタイミングのうち、最も遅いタイミングが補正タイミングとして設定される。受信状態制御部601は、このようにして設定した補正タイミングの情報を、受信部331-1のペイロードデータ取得部431と受信部331-2のペイロードデータ取得部431に出力する。
For example, among the timings of the corresponding payload data acquired by the payload
・伝送システムの動作
次に、図54のシーケンス図を参照して、通信リンク間Data Skewをアダプテーションレイヤにおいて補正する場合の一連の動作について説明する。-Operation of the transmission system Next, a series of operations when the data Skew between communication links is corrected in the adaptation layer will be described with reference to the sequence diagram of FIG.
受信部331-1においては、送信部322-1から送信されたデータが各レーンの信号処理部により受信され、物理レイヤの各処理が行われる。物理レイヤから出力された各レーンのデータは、レーン統合部422により一系統のデータとして統合され、リンクレイヤの各処理が行われる。リンクレイヤからアダプテーションレイヤのペイロードデータ取得部431に対しては、各パケットのペイロードデータが出力される。なお、物理レイヤの処理は行われているから、ペイロードデータ取得部431に供給されるデータは、レーン間Data Skewについては補正済みのデータとなる。
In the receiving unit 331-1, the data transmitted from the transmitting unit 322-1 is received by the signal processing unit of each lane, and each processing of the physical layer is performed. The data of each lane output from the physical layer is integrated as one system of data by the
受信部331-2においても同様に、送信部322-2から送信されたデータが各レーンの信号処理部により受信され、物理レイヤの各処理が行われる。物理レイヤから出力された各レーンのデータは、レーン統合部422により一系統のデータとして統合され、リンクレイヤの各処理が行われる。リンクレイヤからアダプテーションレイヤのペイロードデータ取得部431に対しては、各パケットのペイロードデータが出力される。
Similarly, in the receiving unit 331-2, the data transmitted from the transmitting unit 322-2 is received by the signal processing unit of each lane, and each processing of the physical layer is performed. The data of each lane output from the physical layer is integrated as one system of data by the
ステップS401において、受信部331-1のペイロードデータ取得部431は、Byte Unpacking部425から供給された、各パケットのペイロードデータを取得する。
In step S401, the payload
ステップS402において、受信部331-1のペイロードデータ取得部431は、ペイロードデータの取得タイミングの情報を受信状態制御部601に出力する。
In step S402, the payload
一方、受信部331-2においても同様の処理が行われる。ステップS411において、受信部331-2のペイロードデータ取得部431は、Byte Unpacking部425から供給された、各パケットのペイロードデータを取得する。
On the other hand, the same processing is performed in the receiving unit 331-2. In step S411, the payload
ステップS412において、受信部331-2のペイロードデータ取得部431は、ペイロードデータの取得タイミングの情報を受信状態制御部601に出力する。
In step S412, the payload
ステップS421において、受信状態制御部601は、受信部331-1のペイロードデータ取得部431から供給された情報を受信する。
In step S421, the reception
また、ステップS422において、受信状態制御部601は、受信部331-2のペイロードデータ取得部431から供給された情報を受信する。
Further, in step S422, the reception
ステップS423において、受信状態制御部601は、受信部331-1のペイロードデータ取得部431と受信部331-2のペイロードデータ取得部431において取得された対応するペイロードデータのタイミングに基づいて、補正タイミングを設定する。
In step S423, the reception
ステップS424において、受信状態制御部601は、補正タイミングの情報を、受信部331-1のペイロードデータ取得部431と受信部331-2のペイロードデータ取得部431に出力する。
In step S424, the reception
ステップS403において、受信部331-1のペイロードデータ取得部431は、受信状態制御部601から供給された補正タイミングの情報を受信する。
In step S403, the payload
ステップS404において、受信部331-1のペイロードデータ取得部431は、取得したペイロードデータのタイミングを補正タイミングに合わせることによって通信リンク間Data Skewを補正し、出力する。
In step S404, the payload
一方、受信部331-2においても同様の処理が行われる。ステップS413において、受信部331-2のペイロードデータ取得部431は、受信状態制御部601から供給された補正タイミングの情報を受信する。
On the other hand, the same processing is performed in the receiving unit 331-2. In step S413, the payload
ステップS414において、受信部331-2のペイロードデータ取得部431は、取得したペイロードデータのタイミングを補正タイミングに合わせることによって通信リンク間Data Skewを補正し、出力する。
In step S414, the payload
通信リンク間Data Skewが補正されたペイロードデータに対しては、アプリケーションレイヤにおいて所定の処理が行われる。 Predetermined processing is performed in the application layer for the payload data in which the data Skew between communication links is corrected.
以上の処理が、例えばそれぞれの通信リンクにおいてペイロードデータが取得される毎に行われる。 The above processing is performed, for example, every time the payload data is acquired in each communication link.
以上の処理により、通信リンク間Data Skewの除去を、受信側のアダプテーションレイヤで行うことが可能になる。 By the above processing, the data Skew between communication links can be removed at the adaptation layer on the receiving side.
なお、アダプテーションレイヤの構成がないため、CIS I/Fのマルチ通信リンクを用いた伝送システムにおいては、通信リンク間Data Skewの補正をアダプテーションレイヤで行うことは不可とされる。 Since there is no adaptation layer configuration, it is not possible to correct the Data Skew between communication links in the adaptation layer in a transmission system that uses multiple communication links of CIS I / F.
[(2-4)第4の例 通信リンク間Data Skewの除去を受信側のアプリケーションレイヤで行う場合の例]
受信側LSI312から外部の他の処理部にペイロードデータを出力するタイミングを補正することによって、通信リンク間Data Skewの補正が受信側のアプリケーションレイヤにおいて行われるようにすることも可能である。[(2-4) Fourth example: Example of removing Data Skew between communication links at the application layer on the receiving side]
It is also possible to correct the data Skew between communication links in the application layer on the receiving side by correcting the timing of outputting the payload data from the receiving
この場合、情報処理部332のシステム制御部441は、受信部331-1から供給されたペイロードデータの取得タイミングと、受信部331-2から供給されたペイロードデータの取得タイミングに基づいて補正タイミングを設定する。
In this case, the
データ出力部442は、受信部331-1から供給されたペイロードデータと、受信部331-2から供給されたペイロードデータを取得する。また、データ出力部442は、取得したペイロードデータのタイミングを、システム制御部441により設定された補正タイミングに合わせるように補正し、出力する。ペイロードデータの出力タイミングが補正されることになる。ペイロードデータの出力タイミングの補正は、データ出力部442に設けられたFIFOを用いて行われる。
The
なお、この場合、上述した受信状態制御部601は不要となる。
In this case, the reception
・伝送システムの動作
図55のシーケンス図を参照して、通信リンク間Data Skewをアプリケーションレイヤにおいて補正する場合の一連の動作について説明する。-Operation of the transmission system With reference to the sequence diagram of FIG. 55, a series of operations when the data skew between communication links is corrected in the application layer will be described.
受信部331-1においては、送信部322-1から送信されたデータが各レーンの信号処理部により受信され、物理レイヤの各処理が行われる。物理レイヤから出力された各レーンのデータは、レーン統合部422により一系統のデータとして統合され、リンクレイヤの各処理が行われる。リンクレイヤからアダプテーションレイヤのペイロードデータ取得部431に対しては、各パケットのペイロードデータが出力される。なお、物理レイヤの処理は行われているから、ペイロードデータ取得部431に供給されるデータは、レーン間Data Skewについては補正済みのデータとなる。
In the receiving unit 331-1, the data transmitted from the transmitting unit 322-1 is received by the signal processing unit of each lane, and each processing of the physical layer is performed. The data of each lane output from the physical layer is integrated as one system of data by the
受信部331-2においても同様に、送信部322-2から送信されたデータが各レーンの信号処理部により受信され、物理レイヤの各処理が行われる。物理レイヤから出力された各レーンのデータは、レーン統合部422により一系統のデータとして統合され、リンクレイヤの各処理が行われる。リンクレイヤからアダプテーションレイヤのペイロードデータ取得部431に対しては、各パケットのペイロードデータが出力される。
Similarly, in the receiving unit 331-2, the data transmitted from the transmitting unit 322-2 is received by the signal processing unit of each lane, and each processing of the physical layer is performed. The data of each lane output from the physical layer is integrated as one system of data by the
ステップS441において、受信部331-1のペイロードデータ取得部431は、Byte Unpacking部425から供給された、各パケットのペイロードデータを取得する。
In step S441, the payload
ステップS442において、受信部331-1のペイロードデータ取得部431は、ペイロードデータをアプリケーションレイヤに出力する。
In step S442, the payload
一方、受信部331-2においても同様の処理が行われる。ステップS451において、受信部331-2のペイロードデータ取得部431は、Byte Unpacking部425から供給された、各パケットのペイロードデータを取得する。
On the other hand, the same processing is performed in the receiving unit 331-2. In step S451, the payload
ステップS452において、受信部331-2のペイロードデータ取得部431は、ペイロードデータをアプリケーションレイヤに出力する。
In step S452, the payload
ステップS461において、情報処理部332のデータ出力部442は、受信部331-1のペイロードデータ取得部431から供給されたペイロードデータを受信する。
In step S461, the
また、ステップS462において、情報処理部332のデータ出力部442は、受信部331-2のペイロードデータ取得部431から供給されたペイロードデータを受信する。
Further, in step S462, the
ステップS463において、情報処理部332のシステム制御部441は、対応するペイロードデータのタイミングに基づいて、補正タイミングを設定する。
In step S463, the
ステップS464において、情報処理部332のデータ出力部442は、取得したペイロードデータのタイミングを補正タイミングに合わせることによって通信リンク間Data Skewを補正し、出力する。
In step S464, the
以上の処理が、例えば、それぞれの通信リンクからアプリケーションレイヤにペイロードデータが供給される毎に行われる。 The above processing is performed, for example, each time the payload data is supplied from each communication link to the application layer.
以上の処理により、通信リンク間Data Skewの除去を、受信側のアプリケーションレイヤで行うことが可能になる。 By the above processing, the data Skew between communication links can be removed at the application layer on the receiving side.
なお、CIS I/Fのマルチ通信リンクを用いた伝送システムにおいても、同様の処理により、通信リンク間Data Skewの補正が受信側のアプリケーションレイヤで行われる。 In a transmission system using a CIS I / F multi-communication link, the data Skew between communication links is corrected at the application layer on the receiving side by the same processing.
[(2-5)第5の例 通信リンク間Data Skewの除去を送信側で行う場合の例]
・伝送システムの構成例
図56は、伝送システム301の他の構成例を示す図である。[(2-5) Fifth example Example of removing Data Skew between communication links on the transmitting side]
• Configuration Example of Transmission System FIG. 56 is a diagram showing another configuration example of the
図56に示す伝送システム301は、受信状態制御部601に対応する送信状態制御部611が送信側LSI311に設けられている点で、図47に示す構成と異なる。汎用I/Fにおけるマルチ通信リンクについて説明するが、CIS I/Fでも同様である。
The
図57は、図56の送信側LSI311と受信側LSI312の構成例を示す図である。
FIG. 57 is a diagram showing a configuration example of the transmitting
図57においては、送信部322-2の構成としてPHY-TX状態制御部381のみが示され、他の構成の図示については省略されている。送信部322-2にも、PHY-TX状態制御部381を含む、送信部322-1の構成と同じ構成が設けられる。
In FIG. 57, only the PHY-TX
また、図57においては、受信側の構成として、送信部322-1とともに通信リンク#0を実現する受信部331-1のみが示されている。送信部322-2とともに通信リンク#1を実現する受信部331-2も設けられる。受信部331-2は、送信部322-2から送信されたデータを受信し、情報処理部332に出力する。
Further, in FIG. 57, as a configuration on the receiving side, only the receiving unit 331-1 that realizes the
図57に示すように、送信状態制御部611は、送信部322-1のPHY-TX状態制御部381に接続されるとともに、送信部322-2のPHY-TX状態制御部381に接続される。
As shown in FIG. 57, the transmission
送信部322-1のPHY-TX状態制御部381は、信号処理部383-0乃至383-Nに対する制御タイミングの情報を送信状態制御部611に出力する。例えば、PHY-TX状態制御部381は、所定の制御コードの挿入タイミングの情報を出力する。
The PHY-TX
また、送信部322-1のPHY-TX状態制御部381は、送信状態制御部611により設定された補正タイミングに合わせて制御コードが挿入されるように、信号処理部383-0乃至383-Nのそれぞれの制御コード挿入部391による動作を制御する。
Further, the PHY-TX
送信部322-1の信号処理部383-0乃至383-Nのそれぞれの制御コード挿入部391は、PHY-TX状態制御部381による制御に従って制御コードを挿入する。
Each control
送信部322-2の各部も、送信部322-1の各部と同様の処理を行う。 Each part of the transmission unit 322-2 also performs the same processing as each part of the transmission unit 322-1.
すなわち、送信部322-2のPHY-TX状態制御部381は、信号処理部383-0乃至383-Nに対する制御タイミングの情報を送信状態制御部611に出力する。
That is, the PHY-TX
また、送信部322-2のPHY-TX状態制御部381は、送信状態制御部611により設定された補正タイミングに合わせて制御コードが挿入されるように、信号処理部383-0乃至383-Nのそれぞれの制御コード挿入部391による動作を制御する。
Further, the PHY-TX
送信部322-2の信号処理部383-0乃至383-Nのそれぞれの制御コード挿入部391は、PHY-TX状態制御部381による制御に従って制御コードを挿入する。
Each control
送信状態制御部611は、送信部322-1のPHY-TX状態制御部381から供給された情報と、送信部322-2のPHY-TX状態制御部381から供給された情報を受信する。
The transmission
送信状態制御部611は、送信部322-1のPHY-TX状態制御部381による所定の制御コードの挿入タイミングと送信部322-2のPHY-TX状態制御部381による所定の制御コードの挿入タイミングに基づいて補正タイミングを設定する。
The transmission
例えば、送信部322-1の信号処理部383-0乃至383-Nのそれぞれの制御コード挿入部391における挿入タイミングと、送信部322-2の信号処理部383-0乃至383-Nのそれぞれの制御コード挿入部391における挿入タイミングのうち、最も遅いタイミングが補正タイミングとして設定される。送信状態制御部611は、このようにして設定した補正タイミングの情報を、送信部322-1のPHY-TX状態制御部381と送信部322-2のPHY-TX状態制御部381に出力する。
For example, the insertion timing in each control
このように、送信状態制御部611は、送信部322-1が処理するデータのタイミングと送信部322-2が処理するデータのタイミングを制御することによって、通信リンク間Data Skewを補正する。送信状態制御部611は、通信リンク間Data Skewを補正する制御部として機能する。
In this way, the transmission
・伝送システムの動作
次に、図58のシーケンス図を参照して、通信リンク間Data Skewを送信側において補正する場合の一連の動作について説明する。-Operation of the transmission system Next, a series of operations when the data Skew between communication links is corrected on the transmitting side will be described with reference to the sequence diagram of FIG.
図58の左端に示す処理は、通信リンク#0を実現する送信部322-1の処理である。中央に示す処理は、通信リンク#1を実現する送信部322-2の処理である。右端に示す処理は、送信状態制御部611の処理である。
The process shown at the left end of FIG. 58 is the process of the transmission unit 322-1 that realizes the
送信部322-1においては、伝送対象のデータに対してリンクレイヤの各処理が行われ、各レーンに分配されたデータが物理レイヤの信号処理部383-0乃至383-Nに出力される。送信部322-2においても同様に、伝送対象のデータに対してリンクレイヤの各処理が行われ、各レーンに分配されたデータが物理レイヤの信号処理部383-0乃至383-Nに出力される。 In the transmission unit 322-1, each process of the link layer is performed on the data to be transmitted, and the data distributed to each lane is output to the signal processing units 383-0 to 383-N of the physical layer. Similarly, in the transmission unit 322-2, each processing of the link layer is performed on the data to be transmitted, and the data distributed to each lane is output to the signal processing units 383-0 to 383-N of the physical layer. To.
ステップS501において、送信部322-1のPHY-TX状態制御部381は、所定の制御コードの挿入タイミングの情報を送信状態制御部611に出力する。
In step S501, the PHY-TX
一方、送信部322-2においても同様の処理が行われる。ステップS511において、送信部322-2のPHY-TX状態制御部381は、対応する所定の制御コードの挿入タイミングの情報を送信状態制御部611に出力する。
On the other hand, the same processing is performed in the transmission unit 322-2. In step S511, the PHY-TX
ステップS521において、送信状態制御部611は、送信部322-1のPHY-TX状態制御部381から供給された情報を受信する。
In step S521, the transmission
また、ステップS522において、送信状態制御部611は、送信部322-2のPHY-TX状態制御部381から供給された情報を受信する。
Further, in step S522, the transmission
ステップS523において、送信状態制御部611は、送信部322-1における制御コードの挿入タイミングと送信部322-2における制御コードの挿入タイミングに基づいて、補正タイミングを設定する。
In step S523, the transmission
ステップS524において、送信状態制御部611は、補正タイミングの情報を、送信部322-1のPHY-TX状態制御部381と送信部322-2のPHY-TX状態制御部381に出力する。
In step S524, the transmission
ステップS502において、送信部322-1のPHY-TX状態制御部381は、送信状態制御部611から供給された補正タイミングの情報を受信する。
In step S502, the PHY-TX
ステップS503において、送信部322-1のPHY-TX状態制御部381は、補正タイミングを表す制御信号を信号処理部383-0乃至383-Nのそれぞれの制御コード挿入部391に出力する。
In step S503, the PHY-TX
ステップS504において、送信部322-1の信号処理部383-0乃至383-Nのそれぞれの制御コード挿入部391は、制御信号により表される補正タイミングに合わせて制御コードを挿入することによって、通信リンク間Data Skewを補正する。
In step S504, each control
一方、送信部322-2においても同様の処理が行われる。ステップS512において、送信部322-2のPHY-TX状態制御部381は、送信状態制御部611から供給された補正タイミングの情報を受信する。
On the other hand, the same processing is performed in the transmission unit 322-2. In step S512, the PHY-TX
ステップS513において、送信部322-2のPHY-TX状態制御部381は、補正タイミングを表す制御信号を信号処理部383-0乃至383-Nのそれぞれの制御コード挿入部391に出力する。
In step S513, the PHY-TX
ステップS514において、送信部322-2の信号処理部383-0乃至383-Nのそれぞれの制御コード挿入部391は、制御信号により表される補正タイミングに合わせて制御コードを挿入することによって、通信リンク間Data Skewを補正する。
In step S514, each control
通信リンク間Data Skewが補正された各レーンのデータは、物理レイヤの他の処理が施された後、受信部に対して送信される。 The data in each lane where the data Skew between communication links has been corrected is transmitted to the receiving unit after being subjected to other processing in the physical layer.
以上の処理により、送信側のリンクレイヤにおいて生じた通信リンク間Data Skewの除去を、送信側の物理レイヤで行うことが可能になる。 By the above processing, it becomes possible to remove the data Skew between communication links generated in the link layer on the transmitting side in the physical layer on the transmitting side.
制御コードの挿入タイミングを合わせることによって通信リンク間Data Skewが補正されるものとしたが、物理レイヤにおける他の処理のタイミングを合わせることによって、通信リンク間Data Skewが補正されるようにしてもよい。例えば、各レーンで処理された所定のシンボルの出力タイミング、Start CodeやEnd Codeなどの他の制御コードの挿入タイミングを合わせることによって、通信リンク間Data Skewが補正されるようにすることも可能である。 Although it is assumed that the Data Skew between communication links is corrected by matching the insertion timing of the control code, the Data Skew between communication links may be corrected by matching the timing of other processing in the physical layer. .. For example, it is possible to correct the Data Skew between communication links by matching the output timing of a predetermined symbol processed in each lane and the insertion timing of other control codes such as Start Code and End Code. be.
なお、CIS I/Fのマルチ通信リンクを用いた伝送システムにおいても、同様の処理により、通信リンク間Data Skewの補正が受信側の物理レイヤで行われる。 In a transmission system using a CIS I / F multi-communication link, the data Skew between communication links is corrected at the physical layer on the receiving side by the same processing.
<4.変形例>
受信側の4つのレイヤのうちのいずれかのレイヤにおいて通信リンク間Data Skewの補正が行われるものとしたが、2つ以上のレイヤにおいて通信リンク間Data Skewの補正が行われるようにしてもよい。すなわち、物理レイヤ、リンクレイヤ、アダプテーションレイヤ、およびアプリケーションレイヤのうちの、少なくともいずれかのレイヤにおいて通信リンク間Data Skewの補正が行われるようにすることが可能である。CIS I/Fの場合、物理レイヤ、リンクレイヤ、およびアプリケーションレイヤのうちの、少なくともいずれかのレイヤにおいて通信リンク間Data Skewの補正が行われるようにすることが可能である。<4. Modification example>
Although it is assumed that the data Skew between communication links is corrected in any one of the four layers on the receiving side, the Data Skew between communication links may be corrected in two or more layers. .. That is, it is possible to correct the data Skew between communication links in at least one of the physical layer, the link layer, the adaptation layer, and the application layer. In the case of CIS I / F, it is possible to allow the correction of data Skew between communication links to be performed in at least one of the physical layer, the link layer, and the application layer.
また、以上においては、受信側または送信側において通信リンク間Data Skewの補正が行われるものとしたが、受信側と送信側の双方において通信リンク間Data Skewの補正が行われるようにしてもよい。 Further, in the above, it is assumed that the data Skew between communication links is corrected on the receiving side or the transmitting side, but the data Skew between communication links may be corrected on both the receiving side and the transmitting side. ..
マルチ通信リンクを構成する通信リンクの数が2つであるものとしたが、3つ以上であってもよい。 It is assumed that the number of communication links constituting the multi-communication link is two, but it may be three or more.
以上においては、イメージセンサ11とDSP12が同一の装置内に設けられるものとしたが、それぞれ異なる装置内に設けられるようにしてもよい。送信側LSI311と受信側LSI312についても同様に、同一の装置内に設けられるようにしてもよいし、それぞれ異なる装置内に設けられるようにしてもよい。
In the above, the
・コンピュータの構成例
上述した一連の処理は、ハードウェアにより実行することもできるし、ソフトウェアにより実行することもできる。一連の処理をソフトウェアにより実行する場合には、そのソフトウェアを構成するプログラムが、専用のハードウェアに組み込まれているコンピュータ、または汎用のパーソナルコンピュータなどに、プログラム記録媒体からインストールされる。-Computer configuration example The above-mentioned series of processes can be executed by hardware or software. When a series of processes are executed by software, the programs constituting the software are installed from a program recording medium on a computer embedded in dedicated hardware, a general-purpose personal computer, or the like.
図59は、上述した一連の処理をプログラムにより実行するコンピュータのハードウェアの構成例を示すブロック図である。 FIG. 59 is a block diagram showing an example of hardware configuration of a computer that executes the above-mentioned series of processes programmatically.
CPU(Central Processing Unit)1001、ROM(Read Only Memory)1002、RAM(Random Access Memory)1003は、バス1004により相互に接続されている。
The CPU (Central Processing Unit) 1001, the ROM (Read Only Memory) 1002, and the RAM (Random Access Memory) 1003 are connected to each other by the
バス1004には、さらに、入出力インタフェース1005が接続されている。入出力インタフェース1005には、キーボード、マウスなどよりなる入力部1006、ディスプレイ、スピーカなどよりなる出力部1007が接続される。また、入出力インタフェース1005には、ハードディスクや不揮発性のメモリなどよりなる記憶部1008、ネットワークインタフェースなどよりなる通信部1009、リムーバブルメディア1011を駆動するドライブ1010が接続される。
An input /
以上のように構成されるコンピュータでは、CPU1001が、例えば、記憶部1008に記憶されているプログラムを入出力インタフェース1005及びバス1004を介してRAM1003にロードして実行することにより、上述した一連の処理が行われる。
In the computer configured as described above, the
CPU1001が実行するプログラムは、例えばリムーバブルメディア1011に記録して、あるいは、ローカルエリアネットワーク、インターネット、デジタル放送といった、有線または無線の伝送媒体を介して提供され、記憶部1008にインストールされる。
The program executed by the
なお、コンピュータが実行するプログラムは、本明細書で説明する順序に沿って時系列に処理が行われるプログラムであっても良いし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで処理が行われるプログラムであっても良い。 The program executed by the computer may be a program in which processing is performed in chronological order according to the order described in the present specification, in parallel, or at a necessary timing such as when a call is made. It may be a program in which processing is performed.
本技術の実施の形態は、上述した実施の形態に限定されるものではなく、本技術の要旨を逸脱しない範囲において種々の変更が可能である。 The embodiment of the present technique is not limited to the above-described embodiment, and various changes can be made without departing from the gist of the present technique.
なお、本明細書に記載された効果はあくまで例示であって限定されるものでは無く、また他の効果があってもよい。 It should be noted that the effects described in the present specification are merely examples and are not limited, and other effects may be obtained.
<5.応用例>
本開示に係る技術は、様々な製品へ応用することができる。例えば、本開示に係る技術は、内視鏡手術システムに適用されてもよい。この場合、上述したイメージセンサ11は、内視鏡側の筐体内に設けられ、DSP12は、内視鏡から送信されてきた画像データの処理を行う画像処理装置側の筐体内に設けられる。<5. Application example>
The technique according to the present disclosure can be applied to various products. For example, the techniques according to the present disclosure may be applied to an endoscopic surgery system. In this case, the
図60は、本開示に係る技術が適用され得る内視鏡手術システム5000の概略的な構成の一例を示す図である。図60では、術者(医師)5067が、内視鏡手術システム5000を用いて、患者ベッド5069上の患者5071に手術を行っている様子が図示されている。図示するように、内視鏡手術システム5000は、内視鏡5001と、その他の術具5017と、内視鏡5001を支持する支持アーム装置5027と、内視鏡下手術のための各種の装置が搭載されたカート5037と、から構成される。
FIG. 60 is a diagram showing an example of a schematic configuration of an
内視鏡手術では、腹壁を切って開腹する代わりに、トロッカ5025a~5025dと呼ばれる筒状の開孔器具が腹壁に複数穿刺される。そして、トロッカ5025a~5025dから、内視鏡5001の鏡筒5003や、その他の術具5017が患者5071の体腔内に挿入される。図示する例では、その他の術具5017として、気腹チューブ5019、エネルギー処置具5021及び鉗子5023が、患者5071の体腔内に挿入されている。また、エネルギー処置具5021は、高周波電流や超音波振動により、組織の切開及び剥離、又は血管の封止等を行う処置具である。ただし、図示する術具5017はあくまで一例であり、術具5017としては、例えば攝子、レトラクタ等、一般的に内視鏡下手術において用いられる各種の術具が用いられてよい。
In endoscopic surgery, instead of cutting and opening the abdominal wall, a plurality of tubular opening devices called trocca 5025a to 5025d are punctured into the abdominal wall. Then, from the trocca 5025a to 5025d, the
内視鏡5001によって撮影された患者5071の体腔内の術部の画像が、表示装置5041に表示される。術者5067は、表示装置5041に表示された術部の画像をリアルタイムで見ながら、エネルギー処置具5021や鉗子5023を用いて、例えば患部を切除する等の処置を行う。なお、図示は省略しているが、気腹チューブ5019、エネルギー処置具5021及び鉗子5023は、手術中に、術者5067又は助手等によって支持される。
An image of the surgical site in the body cavity of the
(支持アーム装置)
支持アーム装置5027は、ベース部5029から延伸するアーム部5031を備える。図示する例では、アーム部5031は、関節部5033a、5033b、5033c、及びリンク5035a、5035bから構成されており、アーム制御装置5045からの制御により駆動される。アーム部5031によって内視鏡5001が支持され、その位置及び姿勢が制御される。これにより、内視鏡5001の安定的な位置の固定が実現され得る。(Support arm device)
The
(内視鏡)
内視鏡5001は、先端から所定の長さの領域が患者5071の体腔内に挿入される鏡筒5003と、鏡筒5003の基端に接続されるカメラヘッド5005と、から構成される。図示する例では、硬性の鏡筒5003を有するいわゆる硬性鏡として構成される内視鏡5001を図示しているが、内視鏡5001は、軟性の鏡筒5003を有するいわゆる軟性鏡として構成されてもよい。(Endoscope)
The
鏡筒5003の先端には、対物レンズが嵌め込まれた開口部が設けられている。内視鏡5001には光源装置5043が接続されており、当該光源装置5043によって生成された光が、鏡筒5003の内部に延設されるライトガイドによって当該鏡筒の先端まで導光され、対物レンズを介して患者5071の体腔内の観察対象に向かって照射される。なお、内視鏡5001は、直視鏡であってもよいし、斜視鏡又は側視鏡であってもよい。
An opening in which an objective lens is fitted is provided at the tip of the
カメラヘッド5005の内部には光学系及び撮像素子が設けられており、観察対象からの反射光(観察光)は当該光学系によって当該撮像素子に集光される。当該撮像素子によって観察光が光電変換され、観察光に対応する電気信号、すなわち観察像に対応する画像信号が生成される。当該画像信号は、RAWデータとしてカメラコントロールユニット(CCU:Camera Control Unit)5039に送信される。なお、カメラヘッド5005には、その光学系を適宜駆動させることにより、倍率及び焦点距離を調整する機能が搭載される。
An optical system and an image pickup element are provided inside the
なお、例えば立体視(3D表示)等に対応するために、カメラヘッド5005には撮像素子が複数設けられてもよい。この場合、鏡筒5003の内部には、当該複数の撮像素子のそれぞれに観察光を導光するために、リレー光学系が複数系統設けられる。
The
(カートに搭載される各種の装置)
CCU5039は、CPU(Central Processing Unit)やGPU(Graphics Processing Unit)等によって構成され、内視鏡5001及び表示装置5041の動作を統括的に制御する。具体的には、CCU5039は、カメラヘッド5005から受け取った画像信号に対して、例えば現像処理(デモザイク処理)等の、当該画像信号に基づく画像を表示するための各種の画像処理を施す。CCU5039は、当該画像処理を施した画像信号を表示装置5041に提供する。また、CCU5039は、カメラヘッド5005に対して制御信号を送信し、その駆動を制御する。当該制御信号には、倍率や焦点距離等、撮像条件に関する情報が含まれ得る。(Various devices mounted on the cart)
The
表示装置5041は、CCU5039からの制御により、当該CCU5039によって画像処理が施された画像信号に基づく画像を表示する。内視鏡5001が例えば4K(水平画素数3840×垂直画素数2160)又は8K(水平画素数7680×垂直画素数4320)等の高解像度の撮影に対応したものである場合、及び/又は3D表示に対応したものである場合には、表示装置5041としては、それぞれに対応して、高解像度の表示が可能なもの、及び/又は3D表示可能なものが用いられ得る。4K又は8K等の高解像度の撮影に対応したものである場合、表示装置5041として55インチ以上のサイズのものを用いることで一層の没入感が得られる。また、用途に応じて、解像度、サイズが異なる複数の表示装置5041が設けられてもよい。
The
光源装置5043は、例えばLED(light emitting diode)等の光源から構成され、術部を撮影する際の照射光を内視鏡5001に供給する。
The
アーム制御装置5045は、例えばCPU等のプロセッサによって構成され、所定のプログラムに従って動作することにより、所定の制御方式に従って支持アーム装置5027のアーム部5031の駆動を制御する。
The
入力装置5047は、内視鏡手術システム5000に対する入力インタフェースである。ユーザは、入力装置5047を介して、内視鏡手術システム5000に対して各種の情報の入力や指示入力を行うことができる。例えば、ユーザは、入力装置5047を介して、患者の身体情報や、手術の術式についての情報等、手術に関する各種の情報を入力する。また、例えば、ユーザは、入力装置5047を介して、アーム部5031を駆動させる旨の指示や、内視鏡5001による撮像条件(照射光の種類、倍率及び焦点距離等)を変更する旨の指示、エネルギー処置具5021を駆動させる旨の指示等を入力する。
The
入力装置5047の種類は限定されず、入力装置5047は各種の公知の入力装置であってよい。入力装置5047としては、例えば、マウス、キーボード、タッチパネル、スイッチ、フットスイッチ5057及び/又はレバー等が適用され得る。入力装置5047としてタッチパネルが用いられる場合には、当該タッチパネルは表示装置5041の表示面上に設けられてもよい。
The type of the
あるいは、入力装置5047は、例えばメガネ型のウェアラブルデバイスやHMD(Head Mounted Display)等の、ユーザによって装着されるデバイスであり、これらのデバイスによって検出されるユーザのジェスチャや視線に応じて各種の入力が行われる。また、入力装置5047は、ユーザの動きを検出可能なカメラを含み、当該カメラによって撮像された映像から検出されるユーザのジェスチャや視線に応じて各種の入力が行われる。更に、入力装置5047は、ユーザの声を収音可能なマイクロフォンを含み、当該マイクロフォンを介して音声によって各種の入力が行われる。このように、入力装置5047が非接触で各種の情報を入力可能に構成されることにより、特に清潔域に属するユーザ(例えば術者5067)が、不潔域に属する機器を非接触で操作することが可能となる。また、ユーザは、所持している術具から手を離すことなく機器を操作することが可能となるため、ユーザの利便性が向上する。
Alternatively, the
処置具制御装置5049は、組織の焼灼、切開又は血管の封止等のためのエネルギー処置具5021の駆動を制御する。気腹装置5051は、内視鏡5001による視野の確保及び術者の作業空間の確保の目的で、患者5071の体腔を膨らめるために、気腹チューブ5019を介して当該体腔内にガスを送り込む。レコーダ5053は、手術に関する各種の情報を記録可能な装置である。プリンタ5055は、手術に関する各種の情報を、テキスト、画像又はグラフ等各種の形式で印刷可能な装置である。
The treatment
以下、内視鏡手術システム5000において特に特徴的な構成について、更に詳細に説明する。
Hereinafter, a particularly characteristic configuration of the
(支持アーム装置)
支持アーム装置5027は、基台であるベース部5029と、ベース部5029から延伸するアーム部5031と、を備える。図示する例では、アーム部5031は、複数の関節部5033a、5033b、5033cと、関節部5033bによって連結される複数のリンク5035a、5035bと、から構成されているが、図60では、簡単のため、アーム部5031の構成を簡略化して図示している。実際には、アーム部5031が所望の自由度を有するように、関節部5033a~5033c及びリンク5035a、5035bの形状、数及び配置、並びに関節部5033a~5033cの回転軸の方向等が適宜設定され得る。例えば、アーム部5031は、好適に、6自由度以上の自由度を有するように構成され得る。これにより、アーム部5031の可動範囲内において内視鏡5001を自由に移動させることが可能になるため、所望の方向から内視鏡5001の鏡筒5003を患者5071の体腔内に挿入することが可能になる。(Support arm device)
The
関節部5033a~5033cにはアクチュエータが設けられており、関節部5033a~5033cは当該アクチュエータの駆動により所定の回転軸まわりに回転可能に構成されている。当該アクチュエータの駆動がアーム制御装置5045によって制御されることにより、各関節部5033a~5033cの回転角度が制御され、アーム部5031の駆動が制御される。これにより、内視鏡5001の位置及び姿勢の制御が実現され得る。この際、アーム制御装置5045は、力制御又は位置制御等、各種の公知の制御方式によってアーム部5031の駆動を制御することができる。
Actuators are provided in the
例えば、術者5067が、入力装置5047(フットスイッチ5057を含む)を介して適宜操作入力を行うことにより、当該操作入力に応じてアーム制御装置5045によってアーム部5031の駆動が適宜制御され、内視鏡5001の位置及び姿勢が制御されてよい。当該制御により、アーム部5031の先端の内視鏡5001を任意の位置から任意の位置まで移動させた後、その移動後の位置で固定的に支持することができる。なお、アーム部5031は、いわゆるマスタースレイブ方式で操作されてもよい。この場合、アーム部5031は、手術室から離れた場所に設置される入力装置5047を介してユーザによって遠隔操作され得る。
For example, when the
また、力制御が適用される場合には、アーム制御装置5045は、ユーザからの外力を受け、その外力にならってスムーズにアーム部5031が移動するように、各関節部5033a~5033cのアクチュエータを駆動させる、いわゆるパワーアシスト制御を行ってもよい。これにより、ユーザが直接アーム部5031に触れながらアーム部5031を移動させる際に、比較的軽い力で当該アーム部5031を移動させることができる。従って、より直感的に、より簡易な操作で内視鏡5001を移動させることが可能となり、ユーザの利便性を向上させることができる。
When force control is applied, the
ここで、一般的に、内視鏡下手術では、スコピストと呼ばれる医師によって内視鏡5001が支持されていた。これに対して、支持アーム装置5027を用いることにより、人手によらずに内視鏡5001の位置をより確実に固定することが可能になるため、術部の画像を安定的に得ることができ、手術を円滑に行うことが可能になる。
Here, in general, in endoscopic surgery, the
なお、アーム制御装置5045は必ずしもカート5037に設けられなくてもよい。また、アーム制御装置5045は必ずしも1つの装置でなくてもよい。例えば、アーム制御装置5045は、支持アーム装置5027のアーム部5031の各関節部5033a~5033cにそれぞれ設けられてもよく、複数のアーム制御装置5045が互いに協働することにより、アーム部5031の駆動制御が実現されてもよい。
The
(光源装置)
光源装置5043は、内視鏡5001に術部を撮影する際の照射光を供給する。光源装置5043は、例えばLED、レーザ光源又はこれらの組み合わせによって構成される白色光源から構成される。このとき、RGBレーザ光源の組み合わせにより白色光源が構成される場合には、各色(各波長)の出力強度及び出力タイミングを高精度に制御することができるため、光源装置5043において撮像画像のホワイトバランスの調整を行うことができる。また、この場合には、RGBレーザ光源それぞれからのレーザ光を時分割で観察対象に照射し、その照射タイミングに同期してカメラヘッド5005の撮像素子の駆動を制御することにより、RGBそれぞれに対応した画像を時分割で撮像することも可能である。当該方法によれば、当該撮像素子にカラーフィルタを設けなくても、カラー画像を得ることができる。(Light source device)
The
また、光源装置5043は、出力する光の強度を所定の時間ごとに変更するようにその駆動が制御されてもよい。その光の強度の変更のタイミングに同期してカメラヘッド5005の撮像素子の駆動を制御して時分割で画像を取得し、その画像を合成することにより、いわゆる黒つぶれ及び白とびのない高ダイナミックレンジの画像を生成することができる。
Further, the drive of the
また、光源装置5043は、特殊光観察に対応した所定の波長帯域の光を供給可能に構成されてもよい。特殊光観察では、例えば、体組織における光の吸収の波長依存性を利用して、通常の観察時における照射光(すなわち、白色光)に比べて狭帯域の光を照射することにより、粘膜表層の血管等の所定の組織を高コントラストで撮影する、いわゆる狭帯域光観察(Narrow Band Imaging)が行われる。あるいは、特殊光観察では、励起光を照射することにより発生する蛍光により画像を得る蛍光観察が行われてもよい。蛍光観察では、体組織に励起光を照射し当該体組織からの蛍光を観察するもの(自家蛍光観察)、又はインドシアニングリーン(ICG)等の試薬を体組織に局注するとともに当該体組織にその試薬の蛍光波長に対応した励起光を照射し蛍光像を得るもの等が行われ得る。光源装置5043は、このような特殊光観察に対応した狭帯域光及び/又は励起光を供給可能に構成され得る。
Further, the
(カメラヘッド及びCCU)
図61を参照して、内視鏡5001のカメラヘッド5005及びCCU5039の機能についてより詳細に説明する。図61は、図60に示すカメラヘッド5005及びCCU5039の機能構成の一例を示すブロック図である。(Camera head and CCU)
The functions of the
図61を参照すると、カメラヘッド5005は、その機能として、レンズユニット5007と、撮像部5009と、駆動部5011と、通信部5013と、カメラヘッド制御部5015と、を有する。また、CCU5039は、その機能として、通信部5059と、画像処理部5061と、制御部5063と、を有する。カメラヘッド5005とCCU5039とは、伝送ケーブル5065によって双方向に通信可能に接続されている。
Referring to FIG. 61, the
まず、カメラヘッド5005の機能構成について説明する。レンズユニット5007は、鏡筒5003との接続部に設けられる光学系である。鏡筒5003の先端から取り込まれた観察光は、カメラヘッド5005まで導光され、当該レンズユニット5007に入射する。レンズユニット5007は、ズームレンズ及びフォーカスレンズを含む複数のレンズが組み合わされて構成される。レンズユニット5007は、撮像部5009の撮像素子の受光面上に観察光を集光するように、その光学特性が調整されている。また、ズームレンズ及びフォーカスレンズは、撮像画像の倍率及び焦点の調整のため、その光軸上の位置が移動可能に構成される。
First, the functional configuration of the
撮像部5009は撮像素子によって構成され、レンズユニット5007の後段に配置される。レンズユニット5007を通過した観察光は、当該撮像素子の受光面に集光され、光電変換によって、観察像に対応した画像信号が生成される。撮像部5009によって生成された画像信号は、通信部5013に提供される。
The
撮像部5009を構成する撮像素子としては、例えばCMOS(Complementary Metal Oxide Semiconductor)タイプのイメージセンサであり、Bayer配列を有するカラー撮影可能なものが用いられる。なお、当該撮像素子としては、例えば4K以上の高解像度の画像の撮影に対応可能なものが用いられてもよい。術部の画像が高解像度で得られることにより、術者5067は、当該術部の様子をより詳細に把握することができ、手術をより円滑に進行することが可能となる。
As the image pickup element constituting the
また、撮像部5009を構成する撮像素子は、3D表示に対応する右目用及び左目用の画像信号をそれぞれ取得するための1対の撮像素子を有するように構成される。3D表示が行われることにより、術者5067は術部における生体組織の奥行きをより正確に把握することが可能になる。なお、撮像部5009が多板式で構成される場合には、各撮像素子に対応して、レンズユニット5007も複数系統設けられる。
Further, the image pickup element constituting the
また、撮像部5009は、必ずしもカメラヘッド5005に設けられなくてもよい。例えば、撮像部5009は、鏡筒5003の内部に、対物レンズの直後に設けられてもよい。
Further, the
駆動部5011は、アクチュエータによって構成され、カメラヘッド制御部5015からの制御により、レンズユニット5007のズームレンズ及びフォーカスレンズを光軸に沿って所定の距離だけ移動させる。これにより、撮像部5009による撮像画像の倍率及び焦点が適宜調整され得る。
The
通信部5013は、CCU5039との間で各種の情報を送受信するための通信装置によって構成される。通信部5013は、撮像部5009から得た画像信号をRAWデータとして伝送ケーブル5065を介してCCU5039に送信する。この際、術部の撮像画像を低レイテンシで表示するために、当該画像信号は光通信によって送信されることが好ましい。手術の際には、術者5067が撮像画像によって患部の状態を観察しながら手術を行うため、より安全で確実な手術のためには、術部の動画像が可能な限りリアルタイムに表示されることが求められるからである。光通信が行われる場合には、通信部5013には、電気信号を光信号に変換する光電変換モジュールが設けられる。画像信号は当該光電変換モジュールによって光信号に変換された後、伝送ケーブル5065を介してCCU5039に送信される。
The
また、通信部5013は、CCU5039から、カメラヘッド5005の駆動を制御するための制御信号を受信する。当該制御信号には、例えば、撮像画像のフレームレートを指定する旨の情報、撮像時の露出値を指定する旨の情報、並びに/又は撮像画像の倍率及び焦点を指定する旨の情報等、撮像条件に関する情報が含まれる。通信部5013は、受信した制御信号をカメラヘッド制御部5015に提供する。なお、CCU5039からの制御信号も、光通信によって伝送されてもよい。この場合、通信部5013には、光信号を電気信号に変換する光電変換モジュールが設けられ、制御信号は当該光電変換モジュールによって電気信号に変換された後、カメラヘッド制御部5015に提供される。
Further, the
なお、上記のフレームレートや露出値、倍率、焦点等の撮像条件は、取得された画像信号に基づいてCCU5039の制御部5063によって自動的に設定される。つまり、いわゆるAE(Auto Exposure)機能、AF(Auto Focus)機能及びAWB(Auto White Balance)機能が内視鏡5001に搭載される。
The image pickup conditions such as the frame rate, the exposure value, the magnification, and the focal point are automatically set by the
カメラヘッド制御部5015は、通信部5013を介して受信したCCU5039からの制御信号に基づいて、カメラヘッド5005の駆動を制御する。例えば、カメラヘッド制御部5015は、撮像画像のフレームレートを指定する旨の情報及び/又は撮像時の露光を指定する旨の情報に基づいて、撮像部5009の撮像素子の駆動を制御する。また、例えば、カメラヘッド制御部5015は、撮像画像の倍率及び焦点を指定する旨の情報に基づいて、駆動部5011を介してレンズユニット5007のズームレンズ及びフォーカスレンズを適宜移動させる。カメラヘッド制御部5015は、更に、鏡筒5003やカメラヘッド5005を識別するための情報を記憶する機能を備えてもよい。
The camera
なお、レンズユニット5007や撮像部5009等の構成を、気密性及び防水性が高い密閉構造内に配置することで、カメラヘッド5005について、オートクレーブ滅菌処理に対する耐性を持たせることができる。
By arranging the configuration of the
次に、CCU5039の機能構成について説明する。通信部5059は、カメラヘッド5005との間で各種の情報を送受信するための通信装置によって構成される。通信部5059は、カメラヘッド5005から、伝送ケーブル5065を介して送信される画像信号を受信する。この際、上記のように、当該画像信号は好適に光通信によって送信され得る。この場合、光通信に対応して、通信部5059には、光信号を電気信号に変換する光電変換モジュールが設けられる。通信部5059は、電気信号に変換した画像信号を画像処理部5061に提供する。
Next, the functional configuration of the
また、通信部5059は、カメラヘッド5005に対して、カメラヘッド5005の駆動を制御するための制御信号を送信する。当該制御信号も光通信によって送信されてよい。
Further, the
画像処理部5061は、カメラヘッド5005から送信されたRAWデータである画像信号に対して各種の画像処理を施す。当該画像処理としては、例えば現像処理、高画質化処理(帯域強調処理、超解像処理、NR(Noise reduction)処理及び/又は手ブレ補正処理等)、並びに/又は拡大処理(電子ズーム処理)等、各種の公知の信号処理が含まれる。また、画像処理部5061は、AE、AF及びAWBを行うための、画像信号に対する検波処理を行う。
The
画像処理部5061は、CPUやGPU等のプロセッサによって構成され、当該プロセッサが所定のプログラムに従って動作することにより、上述した画像処理や検波処理が行われ得る。なお、画像処理部5061が複数のGPUによって構成される場合には、画像処理部5061は、画像信号に係る情報を適宜分割し、これら複数のGPUによって並列的に画像処理を行う。
The
制御部5063は、内視鏡5001による術部の撮像、及びその撮像画像の表示に関する各種の制御を行う。例えば、制御部5063は、カメラヘッド5005の駆動を制御するための制御信号を生成する。この際、撮像条件がユーザによって入力されている場合には、制御部5063は、当該ユーザによる入力に基づいて制御信号を生成する。あるいは、内視鏡5001にAE機能、AF機能及びAWB機能が搭載されている場合には、制御部5063は、画像処理部5061による検波処理の結果に応じて、最適な露出値、焦点距離及びホワイトバランスを適宜算出し、制御信号を生成する。
The
また、制御部5063は、画像処理部5061によって画像処理が施された画像信号に基づいて、術部の画像を表示装置5041に表示させる。この際、制御部5063は、各種の画像認識技術を用いて術部画像内における各種の物体を認識する。例えば、制御部5063は、術部画像に含まれる物体のエッジの形状や色等を検出することにより、鉗子等の術具、特定の生体部位、出血、エネルギー処置具5021使用時のミスト等を認識することができる。制御部5063は、表示装置5041に術部の画像を表示させる際に、その認識結果を用いて、各種の手術支援情報を当該術部の画像に重畳表示させる。手術支援情報が重畳表示され、術者5067に提示されることにより、より安全かつ確実に手術を進めることが可能になる。
Further, the
カメラヘッド5005及びCCU5039を接続する伝送ケーブル5065は、電気信号の通信に対応した電気信号ケーブル、光通信に対応した光ファイバ、又はこれらの複合ケーブルである。
The
ここで、図示する例では、伝送ケーブル5065を用いて有線で通信が行われていたが、カメラヘッド5005とCCU5039との間の通信は無線で行われてもよい。両者の間の通信が無線で行われる場合には、伝送ケーブル5065を手術室内に敷設する必要がなくなるため、手術室内における医療スタッフの移動が当該伝送ケーブル5065によって妨げられる事態が解消され得る。
Here, in the illustrated example, the communication is performed by wire using the
以上、本開示に係る技術が適用され得る内視鏡手術システム5000の一例について説明した。なお、ここでは、一例として内視鏡手術システム5000について説明したが、本開示に係る技術が適用され得るシステムはかかる例に限定されない。例えば、本開示に係る技術は、検査用軟性内視鏡システムや顕微鏡手術システムに適用されてもよい。
The example of the
[構成の組み合わせ例]
本技術は、以下のような構成をとることもできる。[Example of configuration combination]
The present technology can also have the following configurations.
(1)
送信装置が有する複数の送信部のそれぞれから複数のレーンを用いて並列に送信された同一のデータ構造を有するデータストリームを受信する処理を第1のレイヤの処理として行い、受信した前記データストリームを一系統のデータに統合し、前記データストリームを構成するパケットを取得する処理を第2のレイヤの処理として行う複数の受信部と、
1つの前記送信部と1つの前記受信部との組のそれぞれにより実現される通信リンク間の、対応するデータのタイミングのずれを補正する制御部と
を備える受信装置。
(2)
複数の前記受信部は、それぞれ、受信した前記データストリームから既知情報を検出し、
前記制御部は、それぞれの前記受信部における前記既知情報の検出タイミングに基づいて、前記タイミングのずれを補正する
前記(1)に記載の受信装置。
(3)
複数の前記受信部のそれぞれは、
前記第1のレイヤの処理を並行して行う信号処理部を、前記レーンの数と同じ数だけ有し、
前記第2のレイヤの処理を行う処理部を有する
前記(2)に記載の受信装置。
(4)
複数の前記受信部は、それぞれ、前記既知情報としての制御コードをそれぞれの前記信号処理部において検出し、
前記制御部は、それぞれの前記信号処理部における前記制御コードのタイミングを合わせることによって、前記タイミングのずれを補正する
前記(3)に記載の受信装置。
(5)
複数の前記受信部は、それぞれ、前記パケットを構成するペイロードデータを前記既知情報として前記処理部において検出し、
前記制御部は、それぞれの前記処理部における前記ペイロードデータの出力のタイミングを合わせることによって、前記タイミングのずれを補正する
前記(3)または(4)に記載の受信装置。
(6)
複数の前記受信部のそれぞれは、
前記処理部から出力された前記パケットを構成するペイロードデータを取得する処理を第3のレイヤの処理として行う取得部をさらに有し、
前記パケットを構成する前記ペイロードデータを前記既知情報として前記取得部において検出し、
前記制御部は、それぞれの前記取得部における前記ペイロードデータの、外部の情報処理部に対する出力のタイミングを合わせることによって、前記タイミングのずれを補正する
前記(3)乃至(5)のうちのいずれかに記載の受信装置。
(7)
前記制御部は、複数の前記受信部から出力されたデータを受信し、受信した前記データの外部への出力タイミングを合わせることによって、前記タイミングのずれを補正する
前記(3)乃至(6)のうちのいずれかに記載の受信装置。
(8)
送信装置が有する複数の送信部のそれぞれから複数のレーンを用いて並列に送信された同一のデータ構造を有するデータストリームを受信する処理である第1のレイヤの処理と、受信した前記データストリームを一系統のデータに統合し、前記データストリームを構成するパケットを取得する処理である第2のレイヤの処理とを複数の受信部において行い、
1つの前記送信部と1つの前記受信部との組のそれぞれにより実現される通信リンク間の、対応するデータのタイミングのずれを補正する
ステップを含む制御方法。
(9)
コンピュータに、
送信装置が有する複数の送信部のそれぞれから複数のレーンを用いて並列に送信された同一のデータ構造を有するデータストリームを受信する処理である第1のレイヤの処理と、受信した前記データストリームを一系統のデータに統合し、前記データストリームを構成するパケットを取得する処理である第2のレイヤの処理とを複数の受信部において行い、
1つの前記送信部と1つの前記受信部との組のそれぞれにより実現される通信リンク間の、対応するデータのタイミングのずれを補正する
ステップを含む処理を実行させるプログラム。
(10)
伝送対象のデータを格納するパケットの生成と、生成した前記パケットを複数のレーンに分配する処理とを含む処理を第1のレイヤの処理として行い、分配した前記パケットを含む同一のデータ構造を有するデータストリームを、複数の受信部を有する受信装置に対して、複数の前記レーンを用いて並列に送信する処理を第2のレイヤの処理として行う複数の送信部と、
1つの前記送信部と1つの前記受信部との組のそれぞれにより実現される通信リンク間の、対応するデータのタイミングのずれを補正する制御部と
を備える送信装置。
(11)
複数の前記送信部のそれぞれは、
前記第2のレイヤの処理を並行して行う信号処理部を、前記レーンの数と同じ数だけ有し、
前記制御部は、それぞれの前記信号処理部における制御コードの前記データストリームへの挿入のタイミングを合わせることによって、前記タイミングのずれを補正する
前記(10)に記載の送信装置。
(12)
伝送対象のデータを格納するパケットの生成と、生成した前記パケットを複数のレーンに分配する処理とを含む処理である第1のレイヤの処理と、分配した前記パケットを含む同一のデータ構造を有するデータストリームを、複数の受信部を有する受信装置に対して、複数の前記レーンを用いて並列に送信する処理である第2のレイヤの処理とを複数の送信部において行い、
1つの前記送信部と1つの前記受信部との組のそれぞれにより実現される通信リンク間の、対応するデータのタイミングのずれを補正する
ステップを含む制御方法。
(13)
コンピュータに、
伝送対象のデータを格納するパケットの生成と、生成した前記パケットを複数のレーンに分配する処理とを含む処理である第1のレイヤの処理と、分配した前記パケットを含む同一のデータ構造を有するデータストリームを、複数の受信部を有する受信装置に対して、複数の前記レーンを用いて並列に送信する処理である第2のレイヤの処理とを複数の送信部において行い、
1つの前記送信部と1つの前記受信部との組のそれぞれにより実現される通信リンク間の、対応するデータのタイミングのずれを補正する
ステップを含む処理を実行させるプログラム。
(14)
伝送対象のデータを格納するパケットの生成と、生成した前記パケットを複数のレーンに分配する処理とを含む処理を第1のレイヤの処理として行い、分配した前記パケットを含む同一のデータ構造を有するデータストリームを、複数の前記レーンを用いて並列に送信する処理を第2のレイヤの処理として行う複数の送信部を備える
送信装置と、
複数の前記送信部のそれぞれから複数のレーンを用いて並列に送信された前記データストリームを受信する処理を前記第2のレイヤの処理として行い、受信した前記データストリームを一系統のデータに統合し、前記データストリームを構成するパケットを取得する処理を前記第1のレイヤの処理として行う複数の受信部と、
1つの前記送信部と1つの前記受信部との組のそれぞれにより実現される通信リンク間の、対応するデータのタイミングのずれを補正する制御部と
を備える受信装置と
を含む送受信システム。(1)
The process of receiving a data stream having the same data structure transmitted in parallel from each of the plurality of transmitters of the transmitter using a plurality of lanes is performed as the process of the first layer, and the received data stream is used. A plurality of receivers that integrate into one system of data and acquire packets constituting the data stream as processing of the second layer.
A receiver comprising a control unit that corrects for timing deviations in corresponding data between communication links realized by each pair of one transmitter and one receiver.
(2)
Each of the plurality of receivers detects known information from the received data stream.
The receiving device according to (1), wherein the control unit corrects the timing deviation based on the detection timing of the known information in each receiving unit.
(3)
Each of the plurality of receivers
It has as many signal processing units as the number of lanes that process the first layer in parallel.
The receiving device according to (2) above, which has a processing unit that performs processing on the second layer.
(4)
Each of the plurality of receiving units detects the control code as the known information in the signal processing unit, respectively.
The receiving device according to (3), wherein the control unit corrects the timing deviation by matching the timing of the control code in each signal processing unit.
(5)
Each of the plurality of receiving units detects the payload data constituting the packet as the known information in the processing unit.
The receiving device according to (3) or (4), wherein the control unit corrects the timing deviation by matching the output timing of the payload data in each of the processing units.
(6)
Each of the plurality of receivers
Further, it has an acquisition unit that performs a process of acquiring the payload data constituting the packet output from the process unit as a process of the third layer.
The payload data constituting the packet is detected by the acquisition unit as the known information, and the data is detected.
The control unit corrects the timing deviation by adjusting the output timing of the payload data in each acquisition unit to an external information processing unit, which is one of (3) to (5). The receiver described in.
(7)
The control unit receives data output from the plurality of receiving units, and corrects the timing deviation by adjusting the output timing of the received data to the outside according to the above (3) to (6). The receiver described in any of them.
(8)
The processing of the first layer, which is the processing of receiving a data stream having the same data structure transmitted in parallel from each of the plurality of transmitting units of the transmitting device using a plurality of lanes, and the received data stream. The processing of the second layer, which is the processing of integrating into one system of data and acquiring the packets constituting the data stream, is performed in a plurality of receiving units.
A control method comprising correcting a corresponding data timing shift between communication links realized by each pair of one transmitter and one receiver.
(9)
On the computer
The processing of the first layer, which is the processing of receiving a data stream having the same data structure transmitted in parallel from each of the plurality of transmitting units of the transmitting device using a plurality of lanes, and the received data stream. The processing of the second layer, which is the processing of integrating into one system of data and acquiring the packets constituting the data stream, is performed in a plurality of receiving units.
A program that executes a process including a step of correcting a timing deviation of corresponding data between communication links realized by each pair of one transmitting unit and one receiving unit.
(10)
A process including generation of a packet for storing data to be transmitted and a process of distributing the generated packet to a plurality of lanes is performed as a process of the first layer, and has the same data structure including the distributed packet. A plurality of transmitters that perform a process of transmitting a data stream in parallel to a receiver having a plurality of receivers using the plurality of lanes as a process of the second layer.
A transmission device comprising a control unit that corrects for timing deviations in corresponding data between communication links realized by each pair of one transmitter and one receiver.
(11)
Each of the plurality of transmitters
It has as many signal processing units as the number of lanes that process the second layer in parallel.
The transmission device according to (10), wherein the control unit corrects the timing deviation by matching the timing of inserting the control code into the data stream in each signal processing unit.
(12)
It has the same data structure including the first layer process, which is a process including the generation of a packet for storing the data to be transmitted and the process of distributing the generated packet to a plurality of lanes, and the distributed packet. A second layer process, which is a process of transmitting a data stream in parallel to a receiver having a plurality of receivers using the plurality of lanes, is performed by the plurality of transmitters.
A control method comprising correcting a corresponding data timing shift between communication links realized by each pair of one transmitter and one receiver.
(13)
On the computer
It has the same data structure including the first layer process, which is a process including the generation of a packet for storing the data to be transmitted and the process of distributing the generated packet to a plurality of lanes, and the distributed packet. A second layer process, which is a process of transmitting a data stream in parallel to a receiver having a plurality of receivers using the plurality of lanes, is performed by the plurality of transmitters.
A program that executes a process including a step of correcting a timing deviation of corresponding data between communication links realized by each pair of one transmitting unit and one receiving unit.
(14)
A process including generation of a packet for storing data to be transmitted and a process of distributing the generated packet to a plurality of lanes is performed as a process of the first layer, and has the same data structure including the distributed packet. A transmission device including a plurality of transmission units that performs a process of transmitting a data stream in parallel using a plurality of the lanes as a process of a second layer.
The process of receiving the data stream transmitted in parallel from each of the plurality of transmitters using a plurality of lanes is performed as the process of the second layer, and the received data stream is integrated into one system of data. A plurality of receiving units that perform a process of acquiring packets constituting the data stream as a process of the first layer.
A transmission / reception system including a receiving device including a control unit for correcting a timing shift of corresponding data between communication links realized by each pair of one transmitting unit and one receiving unit.
1 伝送システム, 11 イメージセンサ, 12 DSP, 21 撮像部, 22 送信部, 31 受信部, 32 画像処理部, 62 Pixel to Byte変換部, 63 ペイロードECC挿入部, 64 パケット生成部, 65 レーン分配部, 72 ヘッダ生成部, 83-0乃至83-N 信号処理部, 91 制御コード挿入部, 92 8B10Bシンボルエンコーダ, 93 同期部, 94 送信部, 102-0乃至102-N 信号処理部, 111 受信部, 112 クロック生成部, 113 同期部, 114 シンボル同期部, 115 10B8Bシンボルデコーダ, 116 スキュー補正部, 117 制御コード除去部, 122 レーン統合部, 123 パケット分離部, 124 ペイロードエラー訂正部, 125 Byte to Pixel変換部, 132 ヘッダエラー訂正部 1 Transmission system, 11 Image sensor, 12 DSP, 21 Imaging unit, 22 Transmitter unit, 31 Receiver unit, 32 Image processing unit, 62 Pixel to Byte conversion unit, 63 Header ECC insertion unit, 64 Packet generator unit, 65 Lane distribution unit , 72 Header generator, 83-0 to 83-N signal processing unit, 91 Control code insertion unit, 92 8B10B symbol encoder, 93 synchronization unit, 94 transmission unit, 102-0 to 102-N signal processing unit, 111 receiver unit , 112 clock generator, 113 sync, 114 symbol sync, 115 10B8B symbol decoder, 116 skew correction, 117 control code removal, 122 lane integration, 123 packet separation, 124 payload error correction, 125 Byte to Pixel conversion part, 132 Header error correction part
Claims (7)
1つの前記送信部と1つの前記受信部との組のそれぞれにより実現される通信リンク間の、対応するデータのタイミングのずれを、それぞれの前記通信リンクの全ての前記レーンのデータに対して挿入された既知情報のタイミングを、最も遅い前記既知情報のタイミングに合わせるようにそれぞれの前記受信部において補正する制御部と
を備える受信装置。 The process of receiving a data stream having the same data structure transmitted in parallel from each of the plurality of transmitters of the transmitter using a plurality of lanes is performed as the process of the first layer, and the received data stream is used. A plurality of receivers that integrate into one system of data and acquire packets constituting the data stream as processing of the second layer.
A timing shift in the corresponding data between the communication links realized by each of the pair of one transmitter and one receiver is inserted into the data in all the lanes of each communication link. A receiving device including a control unit that corrects the timing of the known information to be adjusted in the respective receiving units so as to match the timing of the latest known information .
前記制御部は、それぞれの前記受信部における前記既知情報の検出タイミングに基づいて、前記タイミングのずれを補正する
請求項1に記載の受信装置。 Each of the plurality of receivers detects the known information from the received data stream.
The receiving device according to claim 1, wherein the control unit corrects the timing deviation based on the detection timing of the known information in each receiving unit.
前記第1のレイヤの処理を並行して行う信号処理部を、前記レーンの数と同じ数だけ有し、
前記第2のレイヤの処理を行う処理部を有する
請求項2に記載の受信装置。 Each of the plurality of receivers
It has as many signal processing units as the number of lanes that process the first layer in parallel.
The receiving device according to claim 2, further comprising a processing unit that performs processing on the second layer.
前記制御部は、それぞれの前記信号処理部における前記制御コードのタイミングを合わせることによって、前記タイミングのずれを補正する
請求項3に記載の受信装置。 Each of the plurality of receiving units detects the control code as the known information in the signal processing unit, respectively.
The receiving device according to claim 3, wherein the control unit corrects the timing deviation by matching the timing of the control code in each signal processing unit.
1つの前記送信部と1つの前記受信部との組のそれぞれにより実現される通信リンク間の、対応するデータのタイミングのずれを、それぞれの前記通信リンクの全ての前記レーンのデータに対して挿入された既知情報のタイミングを、最も遅い前記既知情報のタイミングに合わせるようにそれぞれの前記受信部において補正する
ステップを含む制御方法。 The processing of the first layer, which is the processing of receiving a data stream having the same data structure transmitted in parallel from each of the plurality of transmitting units of the transmitting device using a plurality of lanes, and the received data stream. The processing of the second layer, which is the processing of integrating into one system of data and acquiring the packets constituting the data stream, is performed in a plurality of receiving units.
A timing shift in the corresponding data between the communication links realized by each of the pair of one transmitter and one receiver is inserted into the data in all the lanes of each communication link. The timing of the known information is corrected in each of the receiving units so as to match the timing of the latest known information.
Control method including steps.
送信装置が有する複数の送信部のそれぞれから複数のレーンを用いて並列に送信された同一のデータ構造を有するデータストリームを受信する処理である第1のレイヤの処理と、受信した前記データストリームを一系統のデータに統合し、前記データストリームを構成するパケットを取得する処理である第2のレイヤの処理とを複数の受信部において行い、
1つの前記送信部と1つの前記受信部との組のそれぞれにより実現される通信リンク間の、対応するデータのタイミングのずれを、それぞれの前記通信リンクの全ての前記レーンのデータに対して挿入された既知情報のタイミングを、最も遅い前記既知情報のタイミングに合わせるようにそれぞれの前記受信部において補正する
ステップを含む処理を実行させるプログラム。 On the computer
The processing of the first layer, which is the processing of receiving a data stream having the same data structure transmitted in parallel from each of the plurality of transmitting units of the transmitting device using a plurality of lanes, and the received data stream. The processing of the second layer, which is the processing of integrating into one system of data and acquiring the packets constituting the data stream, is performed in a plurality of receiving units.
A timing shift in the corresponding data between the communication links realized by each of the pair of one transmitter and one receiver is inserted into the data in all the lanes of each communication link. The timing of the known information is corrected in each of the receiving units so as to match the timing of the latest known information.
A program that executes a process that includes steps.
送信装置と、
複数の前記送信部のそれぞれから複数の前記レーンを用いて並列に送信された前記データストリームを受信する処理を前記第2のレイヤの処理として行い、受信した前記データストリームを一系統のデータに統合し、前記データストリームを構成するパケットを取得する処理を前記第1のレイヤの処理として行う複数の受信部と、
1つの前記送信部と1つの前記受信部との組のそれぞれにより実現される通信リンク間の、対応するデータのタイミングのずれを、それぞれの前記通信リンクの全ての前記レーンのデータに対して挿入された既知情報のタイミングを、最も遅い前記既知情報のタイミングに合わせるようにそれぞれの前記受信部において補正する制御部と
を備える受信装置と
を含む送受信システム。 A process including generation of a packet for storing data to be transmitted and a process of distributing the generated packet to a plurality of lanes is performed as a process of the first layer, and has the same data structure including the distributed packet. A transmission device including a plurality of transmission units that performs a process of transmitting a data stream in parallel using a plurality of the lanes as a process of a second layer.
The process of receiving the data stream transmitted in parallel from each of the plurality of transmitters using the plurality of lanes is performed as the process of the second layer, and the received data stream is integrated into one system of data. A plurality of receiving units that perform the process of acquiring the packets constituting the data stream as the process of the first layer.
A timing shift in the corresponding data between the communication links realized by each of the pair of one transmitter and one receiver is inserted into the data in all the lanes of each communication link. A transmission / reception system including a receiving device including a control unit that corrects the timing of the known information in each of the receiving units so as to match the timing of the known information that is the latest .
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017114382 | 2017-06-09 | ||
JP2017114382 | 2017-06-09 | ||
PCT/JP2018/020116 WO2018225534A1 (en) | 2017-06-09 | 2018-05-25 | Reception device, transmission device, control method, program, and transmission and reception system |
Publications (2)
Publication Number | Publication Date |
---|---|
JPWO2018225534A1 JPWO2018225534A1 (en) | 2020-04-09 |
JP7094952B2 true JP7094952B2 (en) | 2022-07-04 |
Family
ID=64567291
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019523451A Active JP7094952B2 (en) | 2017-06-09 | 2018-05-25 | Receiver, control method, program, and transmit / receive system |
Country Status (6)
Country | Link |
---|---|
US (1) | US11457142B2 (en) |
EP (1) | EP3637716B1 (en) |
JP (1) | JP7094952B2 (en) |
KR (1) | KR102538713B1 (en) |
CN (1) | CN110692222B (en) |
WO (1) | WO2018225534A1 (en) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3419005A1 (en) * | 2017-06-22 | 2018-12-26 | Gemalto Sa | Computing device processing expanded data |
JPWO2021100627A1 (en) * | 2019-11-20 | 2021-05-27 | ||
EP3840368B1 (en) * | 2019-12-18 | 2022-01-26 | Axis AB | Method of injecting additional data |
JP2022182021A (en) * | 2021-05-27 | 2022-12-08 | キヤノン株式会社 | Serial communication device and serial communication method |
US11847077B2 (en) | 2021-12-06 | 2023-12-19 | Himax Technologies Limited | Serial peripheral interface integrated circuit and operation method thereof |
CN114297110B (en) * | 2021-12-28 | 2024-05-14 | 上海集成电路装备材料产业创新中心有限公司 | MIPI signal decoding method and device and chip thereof |
WO2024040604A1 (en) * | 2022-08-26 | 2024-02-29 | 华为技术有限公司 | Data transmission method and apparatus |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004289567A (en) | 2003-03-24 | 2004-10-14 | Nippon Telegr & Teleph Corp <Ntt> | Frame signal encoding communication method, encoding apparatus, encoding transmitting apparatus, and encoding receiving apparatus |
WO2009005154A1 (en) | 2007-07-05 | 2009-01-08 | Nippon Telegraph And Telephone Corporation | Signal block sequence processing method and signal block sequence processing device |
WO2012063949A1 (en) | 2010-11-12 | 2012-05-18 | ソニー株式会社 | Image output device, image output method, image processing device, image processing method, program, data structure, and imaging device |
WO2014013601A1 (en) | 2012-07-20 | 2014-01-23 | 富士通株式会社 | Transmission device |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3487458B2 (en) | 1995-01-27 | 2004-01-19 | 株式会社リコー | Parallel signal transmission device |
JP2005229307A (en) * | 2004-02-12 | 2005-08-25 | Sanyo Electric Co Ltd | Imaging apparatus, method for controlling imaging apparatus, and control program of imaging apparatus |
JPWO2007029645A1 (en) * | 2005-09-06 | 2009-03-19 | パイオニア株式会社 | Aberration correction apparatus and aberration correction program |
CN101496367B (en) * | 2005-11-04 | 2012-04-04 | Nxp股份有限公司 | Alignment and deskew for multiple lanes of serial interconnect |
JP5049652B2 (en) * | 2006-09-07 | 2012-10-17 | キヤノン株式会社 | Communication system, data reproduction control method, controller, controller control method, adapter, adapter control method, and program |
JP2012005622A (en) * | 2010-06-24 | 2012-01-12 | Fujifilm Corp | Photoacoustic imaging apparatus and photoacoustic imaging method |
JP2012039523A (en) * | 2010-08-10 | 2012-02-23 | Sony Corp | Moving image processing device, moving image processing method, and program |
JP2012103772A (en) * | 2010-11-08 | 2012-05-31 | Renesas Electronics Corp | Processor and image processing system using the same |
JP5633636B2 (en) * | 2011-03-18 | 2014-12-03 | 富士通株式会社 | Transmission delay difference correction method, communication apparatus, and communication system |
TWI686085B (en) * | 2012-11-29 | 2020-02-21 | 日商索尼半導體解決方案公司 | Data transmission method of image pickup device and image sensor, information processing device, information processing method and program |
KR102023940B1 (en) * | 2012-12-27 | 2019-11-04 | 엘지디스플레이 주식회사 | Driving circuit of display device and method for driving the same |
JP6253272B2 (en) * | 2013-06-18 | 2017-12-27 | キヤノン株式会社 | Imaging apparatus, imaging system, signal processing method, program, and storage medium |
KR102166908B1 (en) * | 2014-02-13 | 2020-10-19 | 삼성전자주식회사 | Data interface method having de-skew function and Apparatus there-of |
-
2018
- 2018-05-25 JP JP2019523451A patent/JP7094952B2/en active Active
- 2018-05-25 EP EP18813638.6A patent/EP3637716B1/en active Active
- 2018-05-25 US US16/618,619 patent/US11457142B2/en active Active
- 2018-05-25 CN CN201880036459.3A patent/CN110692222B/en active Active
- 2018-05-25 WO PCT/JP2018/020116 patent/WO2018225534A1/en active Application Filing
- 2018-05-25 KR KR1020197032583A patent/KR102538713B1/en not_active Application Discontinuation
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004289567A (en) | 2003-03-24 | 2004-10-14 | Nippon Telegr & Teleph Corp <Ntt> | Frame signal encoding communication method, encoding apparatus, encoding transmitting apparatus, and encoding receiving apparatus |
WO2009005154A1 (en) | 2007-07-05 | 2009-01-08 | Nippon Telegraph And Telephone Corporation | Signal block sequence processing method and signal block sequence processing device |
WO2012063949A1 (en) | 2010-11-12 | 2012-05-18 | ソニー株式会社 | Image output device, image output method, image processing device, image processing method, program, data structure, and imaging device |
WO2014013601A1 (en) | 2012-07-20 | 2014-01-23 | 富士通株式会社 | Transmission device |
Also Published As
Publication number | Publication date |
---|---|
EP3637716B1 (en) | 2023-08-30 |
US11457142B2 (en) | 2022-09-27 |
EP3637716A1 (en) | 2020-04-15 |
KR20200016205A (en) | 2020-02-14 |
WO2018225534A1 (en) | 2018-12-13 |
KR102538713B1 (en) | 2023-06-01 |
EP3637716A4 (en) | 2020-05-06 |
CN110692222B (en) | 2022-11-22 |
CN110692222A (en) | 2020-01-14 |
US20210360151A1 (en) | 2021-11-18 |
JPWO2018225534A1 (en) | 2020-04-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7094952B2 (en) | Receiver, control method, program, and transmit / receive system | |
JP7326522B2 (en) | Transmitting device, receiving device, control method, program, and transmitting/receiving system | |
EP4024796A1 (en) | Encoding device, encoding method, decoding device, decoding method, and program | |
US11896195B2 (en) | Distributed image processing system in operating theater | |
JP6132984B2 (en) | Capsule endoscope system and imaging method thereof | |
US10924724B2 (en) | Medical stereoscopic observation device, medical stereoscopic observation method, program, and medical stereoscopic observation system | |
EP4175183A1 (en) | Encoding device, encoding method, decoding device, decoding method, and program | |
EP4024797A1 (en) | Encoding device, encoding method, decoding device, decoding method, and program | |
WO2019225323A1 (en) | Cable device, noise canceling device, and noise canceling method | |
US11558673B2 (en) | Transmission device, reception device, transmission system, and transmission method | |
WO2021230001A1 (en) | Information processing apparatus and information processing method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20210413 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20211207 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20220203 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20220308 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20220509 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20220524 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20220622 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7094952 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |