JP2007179572A - Data transfer controller and electronic apparatus - Google Patents

Data transfer controller and electronic apparatus Download PDF

Info

Publication number
JP2007179572A
JP2007179572A JP2007069414A JP2007069414A JP2007179572A JP 2007179572 A JP2007179572 A JP 2007179572A JP 2007069414 A JP2007069414 A JP 2007069414A JP 2007069414 A JP2007069414 A JP 2007069414A JP 2007179572 A JP2007179572 A JP 2007179572A
Authority
JP
Japan
Prior art keywords
data
packet
bits
control device
transfer control
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.)
Granted
Application number
JP2007069414A
Other languages
Japanese (ja)
Other versions
JP4725541B2 (en
Inventor
Hiroyasu Honda
裕康 本田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Seiko Epson Corp
Original Assignee
Seiko Epson Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Seiko Epson Corp filed Critical Seiko Epson Corp
Priority to JP2007069414A priority Critical patent/JP4725541B2/en
Publication of JP2007179572A publication Critical patent/JP2007179572A/en
Application granted granted Critical
Publication of JP4725541B2 publication Critical patent/JP4725541B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Abstract

<P>PROBLEM TO BE SOLVED: To provide a data transfer controller and electric apparatus for efficiently transferring data in various formats serially while suppressing an increase in a scale of a circuit. <P>SOLUTION: The data transfer control device includes an interface circuit 92 for performing interface processing with a host device 5 connected through a system bus, and a link controller 90 for analyzing a packet received through a serial bus, and outputting data having data unit of K bits to the interface circuit 92. Packetized data, which is (N×I)-byte data generated by gathering M pieces of (K+L)-bit data obtained by adding L-bit dummy data to the K-bit data, wherein L and M are variably set depending on K, is inserted in a data field of the received packet through the serial bus. The link controller 90 includes a data formatter 300 for extracting the K-bit data from the packetized data and outputting to the interface circuit 92. <P>COPYRIGHT: (C)2007,JPO&INPIT

Description

本発明は、データ転送制御装置及び電子機器に関する。   The present invention relates to a data transfer control device and an electronic device.

近年、EMIノイズの低減などを目的としたインターフェースとしてLVDS(Low Voltage Differential Signaling)などの高速シリアル転送のインターフェースが脚光を浴びている。この高速シリアル転送では、トランスミッタ回路がシリアル化されたデータを差動信号(Differential Signals)により送信し、レシーバ回路が差動信号を差動増幅することでデータ転送を実現する。   In recent years, high-speed serial transfer interfaces such as LVDS (Low Voltage Differential Signaling) have attracted attention as interfaces for the purpose of reducing EMI noise. In this high-speed serial transfer, the transmitter circuit transmits serialized data using differential signals, and the receiver circuit differentially amplifies the differential signal to realize data transfer.

一般的な携帯電話は、電話番号入力や文字入力のためのボタンが設けられる第1の機器部分と、メインLCD(Liquid Crystal Display)やサブLCDやカメラ(CCD)が設けられる第2の機器部分と、第1、第2の機器部分を接続するヒンジなどの接続部分により構成される。従って、第1の機器部分に設けられる第1の基板と、第2の機器部分に設けられる第2の基板との間のデータ転送を、差動信号を用いたシリアル転送により行えば、接続部分を通る配線の本数を減らすことができ、好都合である。   A general mobile phone has a first device portion provided with buttons for inputting a telephone number and characters, and a second device portion provided with a main LCD (Liquid Crystal Display), a sub LCD and a camera (CCD). And a connecting portion such as a hinge for connecting the first and second device portions. Therefore, if the data transfer between the first board provided in the first device portion and the second board provided in the second device portion is performed by serial transfer using a differential signal, the connection portion It is possible to reduce the number of wires passing through the terminal.

ところで、CCDやCMOSなどのカメラ(撮像デバイス)から出力されるカメラデータには、種々のフォーマットがある。具体的にはYUV422、YUV420、RGB888、RGB565、RGB444、RAW6、RAW7、RAW8、RAW10、RAW12、JPEG8などのフォーマットがある。ここでYUV422及びYUV420は8ビットのデータ(1つのデータ単位が8ビットのデータ)として入力され、RGB888は24ビット、RGB565は16ビット、RGB444は12ビットのデータとして入力される。またRAW6、RAW7、RAW8、RAW10、RAW12は、各々、6、7、8、10、12ビットのデータとして入力され、JPEG8は8ビットのデータとして入力される。従って、カメラデータをパケット化して、カメラが設けられている第2の機器部分から、ホストデバイスが設けられている第1の機器部分へとシリアル転送する場合には、これらの多様なフォーマットをサポートできることが望ましい。   By the way, there are various formats for camera data output from a camera (imaging device) such as a CCD or a CMOS. Specifically, there are formats such as YUV422, YUV420, RGB888, RGB565, RGB444, RAW6, RAW7, RAW8, RAW10, RAW12, and JPEG8. Here, YUV422 and YUV420 are input as 8-bit data (one data unit is 8-bit data), RGB888 is input as 24 bits, RGB565 is input as 16 bits, and RGB444 is input as 12 bits. RAW6, RAW7, RAW8, RAW10, and RAW12 are input as 6, 7, 8, 10, and 12-bit data, respectively, and JPEG8 is input as 8-bit data. Therefore, when the camera data is packetized and serially transferred from the second device part provided with the camera to the first device part provided with the host device, these various formats are supported. It is desirable to be able to do it.

ところが、このような多様なフォーマットのカメラデータをパケット化する場合に、冗長データのビット数が多くなってしまうと、シリアルバスでのデータ転送量が大きくなってしまう。一方、冗長データのビット数を0にして上述の多様なフォーマットに対応しようとすると、回路規模の増大化などの問題を招く。
特開2001−222249号公報
However, when the camera data of such various formats is packetized, if the number of bits of redundant data increases, the data transfer amount on the serial bus increases. On the other hand, if the number of bits of the redundant data is set to 0 and an attempt is made to deal with the above-mentioned various formats, problems such as an increase in circuit scale are caused.
JP 2001-222249 A

本発明は、以上のような技術的課題に鑑みてなされたものであり、その目的とするところは、回路の大規模化を抑えながらも多様なフォーマットのデータの効率的なシリアル転送を実現できるデータ転送制御装置及びこれを含む電子機器を提供することにある。   The present invention has been made in view of the above technical problems, and an object of the present invention is to realize efficient serial transfer of data in various formats while suppressing an increase in circuit scale. A data transfer control device and an electronic device including the same are provided.

本発明は、データ転送を制御するデータ転送制御装置であって、1つのデータ単位がKビット(Kは2以上の整数)となるデータがインターフェースバスを介して入力されるインターフェース回路と、シリアルバスを介して送信するパケットの生成を行うリンクコントローラとを含み、前記リンクコントローラは、Kビットの前記データに対してLビット(Lは0以上の整数)のダミーデータを付加することで得られる(K+L)ビットのデータが、M個(Mは1以上の整数)ずつ集まった(N×I)バイト(N、Iは1以上の整数)のパック化データを生成するデータフォーマッタと、前記シリアルバスを介して送信するパケットとして、前記パック化データがデータフィールドに挿入されるパケットを生成するパケット生成回路とを含み、前記データフォーマッタは、前記Kに応じて前記L及びMが可変に設定される前記パック化データを生成するデータ転送制御装置に関係する。   The present invention is a data transfer control device that controls data transfer, an interface circuit to which data in which one data unit is K bits (K is an integer of 2 or more) is input via an interface bus, and a serial bus A link controller that generates a packet to be transmitted via the link controller, and the link controller is obtained by adding dummy data of L bits (L is an integer of 0 or more) to the K bits of data ( A data formatter for generating packed data of (N × I) bytes (N and I are integers of 1 or more) in which M pieces (M is an integer of 1 or more) of data of K + L) bits, and the serial bus A packet generation circuit for generating a packet in which the packed data is inserted into a data field as a packet to be transmitted via The data formatter, the L and M is related to the data transfer control device for generating the packed data are variably set corresponding to the K.

本発明によれば、Kビットのデータに対してLビットのダミーデータを付加することで得られる(K+L)ビットのデータが、M個ずつ集まった(N×I)バイトのデータであって、Kに応じてL及びMが可変に設定されるパック化データが生成される。そしてこのパック化データが、シリアルバスを介して送信されるパケットのデータフィールドに挿入(設定)される。このようにKに応じてパック化データのLを可変に設定することで、シリアルバスでのデータ転送量を低減することが可能になる。またKに応じてパック化データのMを可変に設定することで、回路の大規模化を抑えることが可能になる。従って本発明によれば、回路規模を抑えながらも、多様なフォーマットのデータの効率的なシリアル転送を実現できるようになる。   According to the present invention, (K + L) -bit data obtained by adding L-bit dummy data to K-bit data is (N × I) bytes of data collected by M pieces, Packed data in which L and M are variably set according to K is generated. The packed data is inserted (set) into the data field of a packet transmitted via the serial bus. Thus, by setting L of the packed data variably according to K, it is possible to reduce the data transfer amount on the serial bus. Also, by setting M of the packed data variably according to K, it is possible to suppress the circuit from becoming large. Therefore, according to the present invention, it is possible to realize efficient serial transfer of data in various formats while suppressing the circuit scale.

また本発明では、前記データフォーマッタは、K=6、I=1である場合にはL=0、M=4、N=3となり、或いはK=7、I=1である場合にはL=1、M=2、N=2となり、或いはK=8、I=1である場合にはL=0、M=2、N=2となり、或いはK=10、I=1である場合にはL=2、M=2、N=3となり、或いはK=12、I=1である場合にはL=0、M=2、N=3となり、或いはK=16、I=1である場合にはL=0、M=1、N=2となり、或いはK=24、I=1である場合にはL=0、M=1、N=3となるパック化データを生成するようにしてもよい。なおこれら以外のフォーマットを採用してもよい。   In the present invention, the data formatter is L = 0, M = 4, N = 3 when K = 6 and I = 1, or L = when K = 7 and I = 1. 1, M = 2, N = 2, or when K = 8 and I = 1, L = 0, M = 2, N = 2, or when K = 10 and I = 1 If L = 2, M = 2, N = 3, or K = 12, I = 1, then L = 0, M = 2, N = 3, or K = 16, I = 1 If L = 0, M = 1, N = 2, or if K = 24 and I = 1, then packed data with L = 0, M = 1, N = 3 is generated. Also good. A format other than these may be adopted.

また本発明では、前記データフォーマッタは、K=6、I=2である場合にはL=0、M=8、N=3となり、或いはK=7、I=2である場合にはL=1、M=4、N=2となり、或いはK=8、I=2である場合にはL=0、M=4、N=2となり、或いはK=10、I=2である場合にはL=1、M=3、N=2となり、或いはK=12、I=2である場合にはL=0、M=4、N=3となり、或いはK=16、I=2である場合にはL=0、M=2、N=2となり、或いはK=24、I=2である場合にはL=0、M=2、N=3となるパック化データを生成するようにしてもよい。なおこれら以外のフォーマットを採用してもよい。   According to the present invention, the data formatter is L = 0, M = 8, N = 3 when K = 6 and I = 2, or L = when K = 7 and I = 2. 1, M = 4, N = 2, or when K = 8 and I = 2, L = 0, M = 4, N = 2, or when K = 10 and I = 2 L = 1, M = 3, N = 2, or if K = 12, I = 2, then L = 0, M = 4, N = 3, or K = 16, I = 2 L = 0, M = 2, N = 2, or if K = 24 and I = 2, the packed data is generated so that L = 0, M = 2, and N = 3. Also good. A format other than these may be adopted.

また本発明では、N×8×I=(K+L)×Mであってもよい。但し、例外的にN×8×I=(K+L)×Mとならない場合があってもよい。   In the present invention, N × 8 × I = (K + L) × M may be used. However, there may be a case where N × 8 × I = (K + L) × M is not exceptional.

また本発明では、前記パケット生成回路は、前記シリアルバスを介して送信するパケットのヘッダに、前記M、Nを設定するための設定情報を挿入するようにしてもよい。   In the present invention, the packet generation circuit may insert setting information for setting the M and N into a header of a packet transmitted via the serial bus.

このようにすれば、パケットの受信側が行うパック化データのフォーマット変換を容易化できる。   In this way, the format conversion of the packed data performed by the packet receiving side can be facilitated.

また本発明では、前記M、Nを設定するための設定情報を記憶する内部レジスタを含み、前記データフォーマッタは、前記設定情報に基づいて、前記ダミーデータを挿入するようにしてもよい。   Further, the present invention may include an internal register that stores setting information for setting the M and N, and the data formatter may insert the dummy data based on the setting information.

このようにすれば、ダミーデータの挿入処理を簡素化できる。なお、データフォーマッタは、ビットカウンタでのカウント値やバイトカウンタでのカウント値に基づいて、ダミーデータの挿入位置等を判断できる。   In this way, the dummy data insertion process can be simplified. The data formatter can determine the dummy data insertion position and the like based on the count value in the bit counter and the count value in the byte counter.

また本発明は、上記のいずれかに記載のデータ転送制御装置と、前記インターフェースバスを介して前記データ転送制御装置に接続される1又は複数のデバイスとを含む電子機器に関係する。   The present invention also relates to an electronic apparatus including any one of the data transfer control devices described above and one or more devices connected to the data transfer control device via the interface bus.

また本発明は、データ転送を制御するデータ転送制御装置であって、システムバスを介して接続されるホストデバイスとの間でのインターフェース処理を行うインターフェース回路と、シリアルバスを介して受信したパケットの解析を行い、1つのデータ単位がKビット(Kは2以上の整数)となるデータを前記インターフェース回路に出力するリンクコントローラとを含み、前記シリアルバスを介して受信したパケットのデータフィールドには、Kビットの前記データに対してLビット(Lは0以上の整数)のダミーデータを付加することで得られる(K+L)ビットのデータが、M個(Mは1以上の整数)ずつ集まった(N×I)バイト(N、Iは1以上の整数)のデータであって、前記Kに応じて前記L及びMが可変に設定されるパック化データが挿入され、前記リンクコントローラは、前記パック化データからKビットの前記データを抽出して前記インターフェース回路に出力するデータフォーマッタを含むデータ転送制御装置に関係する。   The present invention also provides a data transfer control device that controls data transfer, an interface circuit that performs interface processing with a host device connected via a system bus, and a packet received via a serial bus. And a link controller that outputs to the interface circuit data in which one data unit is K bits (K is an integer of 2 or more), and the data field of the packet received via the serial bus includes: M pieces of (K + L) -bit data (M is an integer of 1 or more) gathered by adding L bits (L is an integer of 0 or more) dummy data to the K-bit data (M is an integer of 1 or more). N × I) bytes (N and I are integers of 1 or more), and the L and M are variably set according to K. Data is inserted, the link controller is related to the data transfer control device including a data formatter output from the packed data by extracting the data of K bits to said interface circuit.

本発明によれば、Kビットのデータに対してLビットのダミーデータを付加することで得られる(K+L)ビットのデータが、M個ずつ集まった(N×I)バイトのデータであって、Kに応じてL及びMが可変に設定されるパック化データが、シリアルバスを介して受信したパケットのデータフィールドに挿入される。そしてデータフォーマッタは、パケットのデータフィールドに挿入されたこのパック化データから、Kビットのデータを抽出してインターフェース回路に出力する。このようにKに応じてパック化データのLが可変に設定されることで、シリアルバスでのデータ転送量を低減することが可能になる。またKに応じてパック化データのMが可変に設定されることで、回路の大規模化を抑えることが可能になる。従って本発明によれば、回路規模を抑えながらも、多様なフォーマットのデータの効率的なシリアル転送を実現できるようになる。   According to the present invention, (K + L) -bit data obtained by adding L-bit dummy data to K-bit data is (N × I) bytes of data collected by M pieces, Packed data in which L and M are variably set according to K is inserted into the data field of a packet received via the serial bus. Then, the data formatter extracts K-bit data from the packed data inserted in the data field of the packet and outputs it to the interface circuit. As described above, L of the packed data is variably set according to K, so that the data transfer amount on the serial bus can be reduced. Further, since M of the packed data is variably set according to K, it is possible to suppress an increase in circuit scale. Therefore, according to the present invention, it is possible to realize efficient serial transfer of data in various formats while suppressing the circuit scale.

また本発明では、パケットに挿入される前記パック化データは、K=6、 I=1である場合にはL=0、M=4、N=3となり、或いはK=7、 I=1である場合にはL=1、M=2、N=2となり、或いはK=8、 I=1である場合にはL=0、M=2、N=2となり、或いはK=10、I=1である場合にはL=2、M=2、N=3となり、或いはK=12、I=1である場合にはL=0、M=2、N=3となり、或いはK=16、I=1である場合にはL=0、M=1、N=2となり、或いはK=24、I=1である場合にはL=0、M=1、N=3となるデータであってもよい。なおこれら以外のフォーマットを採用してもよい。   In the present invention, the packed data inserted into the packet is L = 0, M = 4, N = 3 when K = 6 and I = 1, or K = 7 and I = 1. In some cases, L = 1, M = 2, N = 2, or K = 8, and in I = 1, L = 0, M = 2, N = 2, or K = 10, I = When L = 1, M = 2, N = 3, or K = 12, when I = 1, L = 0, M = 2, N = 3, or K = 16, When I = 1, L = 0, M = 1, N = 2, or when K = 24, I = 1, L = 0, M = 1, N = 3. May be. A format other than these may be adopted.

また本発明では、パケットに挿入される前記パック化データは、K=6、 I=2である場合にはL=0、M=8、N=3となり、或いはK=7、 I=2である場合にはL=1、M=4、N=2となり、或いはK=8、 I=2である場合にはL=0、M=4、N=2となり、或いはK=10、I=2である場合にはL=1、M=3、N=2となり、或いはK=12、I=2である場合にはL=0、M=4、N=3となり、或いはK=16、I=2である場合にはL=0、M=2、N=2となり、或いはK=24、I=2である場合にはL=0、M=2、N=3となるデータであってもよい。なおこれら以外のフォーマットを採用してもよい。   In the present invention, the packed data inserted into the packet is L = 0, M = 8, N = 3 when K = 6 and I = 2, or K = 7 and I = 2. In some cases, L = 1, M = 4, N = 2, or K = 8, and in I = 2, L = 0, M = 4, N = 2, or K = 10, I = 2, L = 1, M = 3, N = 2, or K = 12, if I = 2, L = 0, M = 4, N = 3, or K = 16, When I = 2, L = 0, M = 2, N = 2, or when K = 24, I = 2, L = 0, M = 2, and N = 3. May be. A format other than these may be adopted.

また本発明では、N×8×I=(K+L)×Mであってもよい。但し、例外的にN×8×I=(K+L)×Mとならない場合があってもよい。   In the present invention, N × 8 × I = (K + L) × M may be used. However, there may be a case where N × 8 × I = (K + L) × M is not exceptional.

また本発明では、前記シリアルバスを介して受信したパケットのヘッダには、前記M、Nを設定するための設定情報が挿入され、前記リンクコントローラは、受信したパケットのヘッダを解析し、前記設定情報をパケットのヘッダから抽出するパケット解析回路を含み、前記データフォーマッタは、前記設定情報に基づいて、前記パック化データからKビットの前記データを抽出するようにしてもよい。   In the present invention, setting information for setting the M and N is inserted in the header of the packet received via the serial bus, and the link controller analyzes the header of the received packet and sets the setting. A packet analysis circuit that extracts information from a packet header may be included, and the data formatter may extract the K-bit data from the packed data based on the setting information.

このようにすれば、パック化データからKビットのデータを抽出する処理を容易化できる。   In this way, the process of extracting K-bit data from the packed data can be facilitated.

また本発明では、前記シリアルバスを介して受信したパケットのヘッダには、前記M、Nを設定するための設定情報が挿入され、前記リンクコントローラは、受信したパケットのヘッダを解析し、前記設定情報をパケットのヘッダから抽出するパケット解析回路を含み、前記データフォーマッタは、前記設定情報に基づいて、前記ダミーデータを削除するようにしてもよい。   In the present invention, setting information for setting the M and N is inserted in the header of the packet received via the serial bus, and the link controller analyzes the header of the received packet and sets the setting. A packet analysis circuit that extracts information from a packet header may be included, and the data formatter may delete the dummy data based on the setting information.

このようにすれば、ダミーデータの削除処理を簡素化できる。なお、データフォーマッタは、ビットカウンタでのカウント値やバイトカウンタでのカウント値に基づいて、ダミーデータの削除位置等を判断できる。   In this way, the dummy data deletion process can be simplified. The data formatter can determine the deletion position of dummy data based on the count value in the bit counter or the count value in the byte counter.

また本発明は、上記のいずれかに記載のデータ転送制御装置と、前記システムバスを介して前記データ転送制御装置に接続される前記ホストデバイスとを含む電子機器に関係する。   The present invention also relates to an electronic apparatus including any of the data transfer control devices described above and the host device connected to the data transfer control device via the system bus.

以下、本発明の好適な実施の形態について詳細に説明する。なお以下に説明する本実施形態は特許請求の範囲に記載された本発明の内容を不当に限定するものではなく、本実施形態で説明される構成の全てが本発明の解決手段として必須であるとは限らない。   Hereinafter, preferred embodiments of the present invention will be described in detail. The present embodiment described below does not unduly limit the contents of the present invention described in the claims, and all the configurations described in the present embodiment are indispensable as means for solving the present invention. Not necessarily.

1.システム構成
図1に本実施形態のデータ転送制御装置(データ転送制御回路)及びそのシステム構成例を示す。本実施形態では図1のホスト側、ターゲット側のデータ転送制御装置10、30を用いることで、いわゆるシステムバス、インターフェースバス間のブリッジ機能を実現している。
1. System Configuration FIG. 1 shows a data transfer control device (data transfer control circuit) of this embodiment and a system configuration example thereof. In the present embodiment, a so-called bridge function between a system bus and an interface bus is realized by using the host-side and target-side data transfer control devices 10 and 30 in FIG.

なおデータ転送制御装置10、30は図1の構成に限定されず、図1の回路ブロックの一部を省略したり、回路ブロック間の接続形態を変更したり、図1とは異なる回路ブロックを追加してもよい。例えばホスト側データ転送制御装置10においてトランシーバ20の構成を省略したり、ターゲット側データ転送制御装置30においてトランシーバ40の構成を省略してもよい。またデータ転送制御装置30と表示ドライバ6又はカメラ8(撮像デバイス、カメラデバイス)は2チップ(半導体チップ)で構成してもよいが、1チップで構成することもできる。ホストデバイス5(システムデバイス)とデータ転送制御装置10についても同様に1チップで構成することもできる。   The data transfer control devices 10 and 30 are not limited to the configuration shown in FIG. 1, and some of the circuit blocks shown in FIG. 1 may be omitted, the connection form between the circuit blocks may be changed, May be added. For example, the configuration of the transceiver 20 in the host-side data transfer control device 10 may be omitted, or the configuration of the transceiver 40 in the target-side data transfer control device 30 may be omitted. Further, the data transfer control device 30 and the display driver 6 or the camera 8 (imaging device, camera device) may be configured with two chips (semiconductor chip), but may be configured with one chip. Similarly, the host device 5 (system device) and the data transfer control device 10 can be configured by one chip.

ホスト(TX)側データ転送制御装置10とターゲット(RX)側データ転送制御装置30は、差動信号(differential signals)のシリアルバスを介してパケット転送を行う。より具体的には、シリアルバスの差動信号線(differential signal lines)を電流駆動又は電圧駆動することによりパケットの送受信を行う。   The host (TX) side data transfer control device 10 and the target (RX) side data transfer control device 30 perform packet transfer via a serial bus of differential signals. More specifically, packets are transmitted / received by current driving or voltage driving differential signal lines of the serial bus.

ホスト側データ転送制御装置10は、ホストデバイス5(CPU、ベースバンドエンジン、表示コントローラ等)との間のインターフェース処理を行うインターフェース回路92を含む。このインターフェース回路92はシステムバス(ホストバス)を介してホストデバイス5に接続される。システムバスは、RGBインターフェースバスとして用いたり、MPU(Micro Processor Unit)インターフェースバスとして用いたり、シリアルインターフェースバスとして用いたり、カメラインターフェースバスとして用いることができる。RGBインターフェースバスとして用いる場合には、システムバスは、水平同期信号、垂直同期信号、クロック信号、データ信号などの信号線を含むことができる。MPUインターフェースバスとして用いる場合には、システムバスは、データ信号、リード信号、ライト信号、アドレス0信号(コマンド/パラメータ識別信号)、チップセレクト信号などの信号線を含むことができる。シリアルインターフェースバスとして用いる場合には、システムバスは、シリアルインターフェース用のチップセレクト信号、リード/ライト信号、アドレス0信号、データ信号、クロック信号などの信号線を含むことができる。カメラインターフェースバスとして用いる場合には、システムバスは、カメラインターフェース用の水平同期信号、垂直同期信号、クロック信号、データ信号などの信号線を含むことができる。   The host-side data transfer control device 10 includes an interface circuit 92 that performs interface processing with the host device 5 (CPU, baseband engine, display controller, etc.). The interface circuit 92 is connected to the host device 5 via a system bus (host bus). The system bus can be used as an RGB interface bus, an MPU (Micro Processor Unit) interface bus, a serial interface bus, or a camera interface bus. When used as an RGB interface bus, the system bus can include signal lines such as a horizontal synchronization signal, a vertical synchronization signal, a clock signal, and a data signal. When used as an MPU interface bus, the system bus can include signal lines such as a data signal, a read signal, a write signal, an address 0 signal (command / parameter identification signal), and a chip select signal. When used as a serial interface bus, the system bus can include signal lines for a serial interface chip select signal, read / write signal, address 0 signal, data signal, clock signal, and the like. When used as a camera interface bus, the system bus can include signal lines such as a horizontal synchronization signal, a vertical synchronization signal, a clock signal, and a data signal for the camera interface.

ホスト側データ転送制御装置10は、リンク層の処理を行うリンクコントローラ90(リンク層回路)を含む。このリンクコントローラ90は、シリアルバス(LVDS)を介してターゲット側データ転送制御装置30に転送されるパケット(リクエストパケット、ストリームパケット等)を生成し、生成したパケットを送信する処理を行う。具体的には、送信トランザクションを起動して、生成したパケットの送信をトランシーバ20に指示する。   The host-side data transfer control device 10 includes a link controller 90 (link layer circuit) that performs link layer processing. The link controller 90 generates a packet (request packet, stream packet, etc.) that is transferred to the target-side data transfer control device 30 via the serial bus (LVDS), and performs processing for transmitting the generated packet. Specifically, a transmission transaction is activated to instruct the transceiver 20 to transmit the generated packet.

ホスト側データ転送制御装置10は、物理層の処理等を行うトランシーバ20(PHY)を含む。このトランシーバ20は、リンクコントローラ90により指示されたパケットを、シリアルバスを介してターゲット側データ転送制御装置30に送信する。またトランシーバ20はターゲット側データ転送制御装置30からのパケットの受信も行う。この場合にはリンクコントローラ90が、受信したパケットを解析して、リンク層(トランザクション層)の処理を行う。   The host-side data transfer control device 10 includes a transceiver 20 (PHY) that performs physical layer processing and the like. The transceiver 20 transmits the packet instructed by the link controller 90 to the target-side data transfer control device 30 via the serial bus. The transceiver 20 also receives a packet from the target-side data transfer control device 30. In this case, the link controller 90 analyzes the received packet and performs a link layer (transaction layer) process.

ターゲット側データ転送制御装置30は、物理層の処理等を行うトランシーバ40(PHY)を含む。このトランシーバ40は、シリアルバスを介してホスト側データ転送制御装置10からのパケットを受信する。またトランシーバ40はホスト側データ転送制御装置10へのパケットの送信も行う。この場合にはリンクコントローラ100が、送信するパケットを生成し、生成したパケットの送信を指示する。   The target-side data transfer control device 30 includes a transceiver 40 (PHY) that performs physical layer processing and the like. The transceiver 40 receives a packet from the host-side data transfer control device 10 via the serial bus. The transceiver 40 also transmits a packet to the host-side data transfer control device 10. In this case, the link controller 100 generates a packet to be transmitted and instructs transmission of the generated packet.

ターゲット側データ転送制御装置30はリンクコントローラ100(リンク層回路)を含む。このリンクコントローラ100は、ホスト側データ転送制御装置10からのパケットの受信処理を行い、受信したパケットを解析するリンク層(トランザクション層)の処理を行う。   The target-side data transfer control device 30 includes a link controller 100 (link layer circuit). The link controller 100 receives a packet from the host-side data transfer control device 10 and performs a link layer (transaction layer) process for analyzing the received packet.

ターゲット側データ転送制御装置30は、表示パネル7(LCD等)を駆動する表示ドライバ6や、カメラ8(広義には1又は複数のデバイス)との間のインターフェース処理を行うインターフェース回路110を含む。このインターフェース回路110は、各種のインターフェース信号を生成し、インターフェースバスを介して表示ドライバ7等に出力する。またインターフェースバスを介してカメラ8から各種のインターフェース信号を受ける。このインターフェース回路110は、RGBインターフェース回路、MPUインターフェース回路、シリアルインターフェース回路、或いはカメラインターフェース回路(広義には第1〜第Nのインターフェース回路)などを含むことができる。   The target-side data transfer control device 30 includes a display driver 6 that drives the display panel 7 (LCD or the like) and an interface circuit 110 that performs interface processing with the camera 8 (one or a plurality of devices in a broad sense). The interface circuit 110 generates various interface signals and outputs them to the display driver 7 and the like via the interface bus. Various interface signals are received from the camera 8 via the interface bus. The interface circuit 110 can include an RGB interface circuit, an MPU interface circuit, a serial interface circuit, a camera interface circuit (first to Nth interface circuits in a broad sense), and the like.

ホスト側(ホストデバイス5)のシステムバスがRGBインターフェースバスとして用いられる場合には、ターゲット側(表示ドライバ6)のインターフェースバスもRGBインターフェースバスとして用いられる。そしてインターフェース回路110(RGBインターフェース回路)は、RGB用のインターフェース信号を生成して表示ドライバ6(広義にはデバイス)に出力する。またホスト側のシステムバスがMPUインターフェースバスとして用いられる場合には、ターゲット側のインターフェースバスもMPUインターフェースバスとして用いられる。そしてインターフェース回路110(MPUインターフェース回路)は、MPU用のインターフェース信号を生成して表示ドライバ6に出力する。またホスト側のシステムバスがカメラインターフェースバスとして用いられる場合には、ターゲット側のインターフェースバスもカメラインターフェースバスとして用いられる。そしてターゲット側のインターフェース回路110(カメラインターフェース回路)はカメラ8からインターフェース信号を受ける。一方、ホスト側のインターフェース回路92(カメラインターフェース回路)は、カメラインターフェース信号を生成してホストデバイス5に出力する。なおシステムバスとインターフェースバスのインターフェース形式を異ならせてもよい。   When the system bus on the host side (host device 5) is used as the RGB interface bus, the interface bus on the target side (display driver 6) is also used as the RGB interface bus. The interface circuit 110 (RGB interface circuit) generates RGB interface signals and outputs them to the display driver 6 (device in a broad sense). When the host-side system bus is used as the MPU interface bus, the target-side interface bus is also used as the MPU interface bus. The interface circuit 110 (MPU interface circuit) generates an MPU interface signal and outputs it to the display driver 6. When the system bus on the host side is used as the camera interface bus, the interface bus on the target side is also used as the camera interface bus. The target-side interface circuit 110 (camera interface circuit) receives an interface signal from the camera 8. On the other hand, the host-side interface circuit 92 (camera interface circuit) generates a camera interface signal and outputs it to the host device 5. The interface form of the system bus and interface bus may be different.

以上のようなインターフェース回路92、110を設けることで、本実施形態ではホスト側のシステムバスとターゲット側のインターフェースバスとの間のバスブリッジ機能を実現している。   By providing the interface circuits 92 and 110 as described above, in this embodiment, a bus bridge function between the system bus on the host side and the interface bus on the target side is realized.

即ちシステムバスがRGBインターフェースバスとして用いられる場合には、ホストデバイス5が出力したRGBインターフェース信号を、差動信号のシリアルバスを介したパケット転送によりターゲット側に伝える。そしてターゲット側のインターフェース回路110が、ホスト側からのRGBインターフェース信号に応じたRGBインターフェース信号を表示ドライバ6に出力する。またシステムバスがMPUインターフェースバスとして用いられる場合には、ホストデバイス5が出力したMPUインターフェース信号を、差動信号のシリアルバスを介したパケット転送によりターゲット側に伝える。そしてターゲット側のインターフェース回路110が、ホスト側からのMPUインターフェース信号に応じたMPUインターフェース信号を表示ドライバ6に出力する。   That is, when the system bus is used as an RGB interface bus, the RGB interface signal output from the host device 5 is transmitted to the target side by packet transfer via the differential signal serial bus. Then, the target-side interface circuit 110 outputs an RGB interface signal corresponding to the RGB interface signal from the host side to the display driver 6. When the system bus is used as an MPU interface bus, the MPU interface signal output from the host device 5 is transmitted to the target side by packet transfer via the differential signal serial bus. Then, the target-side interface circuit 110 outputs an MPU interface signal corresponding to the MPU interface signal from the host side to the display driver 6.

またシステムバスがカメラインターフェースバスとして用いられる場合には、カメラ8が出力したカメラインターフェース信号(データ信号、垂直同期信号、水平同期信号)を、差動信号のシリアルバスを介したパケット転送によりターゲット側がホスト側に伝える。そしてホスト側のインターフェース回路92が、ターゲット側からのカメラインターフェース信号に応じたカメラインターフェース信号をホストデバイス5に出力する。   Further, when the system bus is used as a camera interface bus, the target side transmits the camera interface signals (data signal, vertical synchronization signal, horizontal synchronization signal) output from the camera 8 by packet transfer via the differential signal serial bus. Tell the host. Then, the host-side interface circuit 92 outputs a camera interface signal corresponding to the camera interface signal from the target side to the host device 5.

なお図1では、ホストデバイス5が接続されるデータ転送制御装置10がホスト側(TX)となり、カメラ8が接続されるデータ転送制御装置30がターゲット側(RX)になっているが、本実施形態はこれに限定されない。例えば図2に示すように、カメラ8が接続されるデータ転送制御装置10をホスト側(TX)にして、ホストデバイス5が接続されるデータ転送制御装置30をターゲット側(RX)にしてもよい。   In FIG. 1, the data transfer control device 10 to which the host device 5 is connected is the host side (TX), and the data transfer control device 30 to which the camera 8 is connected is the target side (RX). The form is not limited to this. For example, as shown in FIG. 2, the data transfer control device 10 to which the camera 8 is connected may be on the host side (TX), and the data transfer control device 30 to which the host device 5 is connected may be on the target side (RX). .

即ち本実施形態ではホスト側のデータ転送制御装置がクロック生成回路(PLL回路)を有しており、生成されたクロックをターゲット側のデータ転送制御装置に出力する。そして図1の場合には、ホスト側のデータ転送制御装置10は、クロック生成回路により生成した差動のクロック信号CLK+/−をターゲット側のデータ転送制御装置30に出力する。するとターゲット側のデータ転送制御装置30は、このCLK+/−に基づいて差動のストローブ信号STB+/−を生成する。そしてターゲット側のデータ転送制御装置30は、STB+/−のエッジ(立ち上がりエッジ又は立ち下がりエッジ)に同期して、差動のデータ信号DTI+/−(カメラデータ)を、ホスト側のデータ転送制御装置10に出力する。   That is, in this embodiment, the host-side data transfer control device has a clock generation circuit (PLL circuit), and outputs the generated clock to the target-side data transfer control device. In the case of FIG. 1, the data transfer control device 10 on the host side outputs the differential clock signal CLK +/− generated by the clock generation circuit to the data transfer control device 30 on the target side. Then, the target-side data transfer control device 30 generates a differential strobe signal STB +/− based on this CLK +/−. Then, the data transfer control device 30 on the target side synchronizes with the edge (rising edge or falling edge) of STB +/− to send the differential data signal DTI +/− (camera data) to the data transfer control device on the host side. 10 is output.

一方、図2の場合には、ホスト側のデータ転送制御装置30は、クロック生成回路により差動のクロック信号CLK+/−を生成する。そしてホスト側のデータ転送制御装置30は、CLK+/−のエッジに同期して差動のデータ信号DTO+/−(カメラデータ)を、ターゲット側のデータ転送制御装置10に出力する。   On the other hand, in the case of FIG. 2, the host-side data transfer control device 30 generates a differential clock signal CLK +/− by a clock generation circuit. Then, the host-side data transfer control device 30 outputs a differential data signal DTO +/− (camera data) to the target-side data transfer control device 10 in synchronization with the CLK +/− edge.

なお差動信号であるDTO+/−、CLK+/−、DTI+/−、STB+/−を用いたシリアル転送手法については、後述する図13で詳細に説明する。   A serial transfer method using differential signals DTO +/−, CLK +/−, DTI +/−, and STB +/− will be described in detail later with reference to FIG.

2.カメラデータのフォーマット変換
CCDやCMOSなどのカメラから出力されるカメラデータには、YUV422、YUV420、RGB888、RGB565、RGB444、RAW6、RAW7、RAW8、RAW10、RAW12、JPEG8などの種々のフォーマットがある。そしてこれらのフォーマットでは、入力データのデータ単位のビット数が、6、7、8、10、12、16、24ビット(広義にはKビット)というように異なっている。
2. Camera Data Format Conversion Camera data output from a camera such as a CCD or CMOS has various formats such as YUV422, YUV420, RGB888, RGB565, RGB444, RAW6, RAW7, RAW8, RAW10, RAW12, and JPEG8. In these formats, the number of bits of data units of input data is different such as 6, 7, 8, 10, 12, 16, 24 bits (K bits in a broad sense).

ところが、シリアルバスを介して転送されるパケットは、バイト単位又はワード単位(広義にはIバイト単位)のデータで構成される。従って、カメラデータをパケット化してシリアル転送するためには、6、7、8、10、12、16又は24ビットのカメラデータをバイト単位又はワード単位(Iバイト単位)のデータにフォーマット変換する必要がある。   However, a packet transferred via the serial bus is composed of data in byte units or word units (in a broad sense, I byte units). Therefore, in order to packetize camera data and transfer it serially, it is necessary to convert the format of camera data of 6, 7, 8, 10, 12, 16 or 24 bits to data in byte units or word units (I byte units). There is.

このようなフォーマット変換を実現する第1、第2の比較例の手法を図3(A)(B)、図4(A)(B)に示す。図3(A)〜図4(B)は、フォーマット変換の対象となるデータ(カメラデータ)が10ビット(RAW10)である場合の例である。そして図3(A)(B)はこの10ビット単位のデータをバイト単位のデータに変換する場合の例であり、図4(A)(B)は、10ビット単位のデータを2バイト単位(ワード単位)のデータに変換する場合の例である。   FIGS. 3A and 3B and FIGS. 4A and 4B show methods of the first and second comparative examples for realizing such format conversion. FIGS. 3A to 4B are examples in the case where the data (camera data) to be subjected to format conversion is 10 bits (RAW10). FIGS. 3A and 3B show an example of converting this 10-bit unit data into byte-unit data. FIGS. 4A and 4B show 10-bit unit data in 2-byte units ( This is an example in the case of conversion to data in word units.

なお図3(A)等において、(101)は、1個目のデータ(10ビットデータ)の1ビット目を意味し、(102)は、1個目のデータの2ビット目を意味する。また(201)は、2個目のデータの1ビット目を意味し、(202)は、2個目のデータの2ビット目を意味する。従って、(101)〜(110)は1個目のデータの1〜10ビットを表し、(201)〜(210)は2個目のデータの1〜10ビットを表すことになる。(301)〜(310)、(301)〜(410)等も同様である。   In FIG. 3A and the like, (101) means the first bit of the first data (10-bit data), and (102) means the second bit of the first data. (201) means the first bit of the second data, and (202) means the second bit of the second data. Therefore, (101) to (110) represent 1 to 10 bits of the first data, and (201) to (210) represent 1 to 10 bits of the second data. The same applies to (301) to (310), (301) to (410), and the like.

第1の比較例では、図3(A)、図4(A)に示すように、冗長データが挿入されるアンパックド(unpacked)のフォーマット変換を行っている。即ち図3(A)では(101
)〜(108)が1個目のバイトデータに設定され、(109)、(110)と6ビットの冗長データ(×)が2個目のバイトデータに設定される。また(201)〜(208)が3個目のバイトデータに設定され、(209)、(210)と6ビットの冗長データが4個目のバイトデータに設定される。
In the first comparative example, as shown in FIGS. 3A and 4A, unpacked format conversion in which redundant data is inserted is performed. That is, in FIG.
) To (108) are set as the first byte data, and (109) and (110) and 6-bit redundant data (×) are set as the second byte data. Also, (201) to (208) are set as the third byte data, and (209) and (210) and 6-bit redundant data are set as the fourth byte data.

このように第1の比較例では、2個のバイトデータを転送する毎に6ビットの冗長データを転送する必要がある。従ってVGA画面のデータを転送する毎に、640×480×6/8/1024=225Kバイトの冗長データを転送しなければならなくなる。このため、シリアルバスのデータ転送量(トラフィック量)が過大になり、データ転送が非効率化する。   Thus, in the first comparative example, it is necessary to transfer 6-bit redundant data every time two pieces of byte data are transferred. Therefore, every time VGA screen data is transferred, redundant data of 640 × 480 × 6/8/1024 = 225 Kbytes must be transferred. For this reason, the data transfer amount (traffic amount) of the serial bus becomes excessive, and the data transfer becomes inefficient.

一方、第2の比較例では図3(B)、図4(B)に示すように、冗長データが全く挿入されないパックド(packed)のフォーマット変換を行っている。この第2の比較例では、冗長データが挿入されないため、第1の比較例に比べるとシリアルバスのデータ転送量を低減できる。しかしながら、この第2の比較例では、データフォーマッタ(デコード回路)やカウンタの回路規模が大きくなり、データ転送制御装置の大規模化や処理の繁雑化の問題を招く。特に、前述した多様なフォーマットの全てをサポートしようとすると、データ転送制御装置の大規模化や処理の繁雑化の問題は更に深刻になる。   On the other hand, in the second comparative example, as shown in FIGS. 3B and 4B, packed format conversion in which no redundant data is inserted is performed. In the second comparative example, redundant data is not inserted, so that the data transfer amount of the serial bus can be reduced as compared with the first comparative example. However, in the second comparative example, the circuit scale of the data formatter (decode circuit) and the counter becomes large, which causes problems such as an increase in the scale of the data transfer control device and a complicated process. In particular, if all of the above-mentioned various formats are to be supported, the problem of a large data transfer control device and complicated processing becomes more serious.

3.データ転送制御装置の構成例
以上のような問題を解決する本実施形態のデータ転送制御装置の構成例を図5、図6に示す。なお図5、図6の回路ブロックの一部を省略したり、回路ブロック間の接続形態を変更したり、図5、図6とは異なる他の回路ブロックを追加してもよい。
3. Configuration Example of Data Transfer Control Device FIG. 5 and FIG. 6 show a configuration example of the data transfer control device of this embodiment that solves the above problems. 5 and 6 may be omitted, the connection form between the circuit blocks may be changed, or other circuit blocks different from those in FIGS. 5 and 6 may be added.

図5はターゲット側(図2の場合はホスト側)のデータ転送制御装置30の構成例である。図5において、インターフェース回路110はカメラ8(広義にはデバイス)との間のインターフェース処理を行う。そしてインターフェース回路110には、1つのデータ単位がKビットとなるデータがインターフェースバスを介して入力される。なお、Kは2(或いは6)以上の整数である。   FIG. 5 is a configuration example of the data transfer control device 30 on the target side (host side in the case of FIG. 2). In FIG. 5, an interface circuit 110 performs interface processing with the camera 8 (device in a broad sense). The interface circuit 110 receives data through which one data unit is K bits via the interface bus. K is an integer of 2 (or 6) or more.

具体的にはインターフェース回路110には、1つのデータ単位のビット数が6、7、8、10、12、16又は24ビット(以下、適宜、6〜24ビットと表記する)となるカメラデータCMDATが入力される。また垂直同期信号、水平同期信号に相当するCMVREF、CMHREFや、CMDATを取り込むためのクロック信号CMCLKINが入力される。   Specifically, the interface circuit 110 has camera data CMDAT in which the number of bits of one data unit is 6, 7, 8, 10, 12, 16 or 24 bits (hereinafter, appropriately expressed as 6 to 24 bits). Is entered. Further, CMVREF and CMHREF corresponding to a vertical synchronization signal and a horizontal synchronization signal, and a clock signal CMCLKIN for capturing CMDAT are input.

図7(A)(B)にカメラデータが8ビットのYUVフォーマットである場合のCMDAT、CMVREF、CMHREF、CMCLKINの信号波形例を示す。図7(A)に示すように、CMVREFがアクティブ(ハイレベル)になった後、CMHREFがアクティブになる毎に1ライン分のCMDATがインターフェース回路110に入力される。また図7(B)に示すようにCMDATはCMCLKINの例えば立ち上がりエッジによりサンプリングできる。インターフェース回路110はこのようにサンプリングされて取り込まれたデータ(カメラデータ)をリンクコントローラ100に出力する。なお図7(C)(D)はカメラデータがJPEGフォーマットである場合の信号波形例である。   7A and 7B show signal waveform examples of CMDAT, CMVREF, CMHREF, and CMCLKIN when the camera data is in the 8-bit YUV format. As shown in FIG. 7A, after CMVREF becomes active (high level), CMDAT for one line is input to the interface circuit 110 every time CMHREF becomes active. As shown in FIG. 7B, CMDAT can be sampled by, for example, the rising edge of CMCLKIN. The interface circuit 110 outputs the data (camera data) sampled and taken in this way to the link controller 100. 7C and 7D are signal waveform examples when the camera data is in the JPEG format.

リンクコントローラ100は、データフォーマッタ300、ビットカウンタ310、バイトカウンタ312、パケット生成回路320、パケットバッファ330、内部レジスタ350を含む。なおこれらの一部を省略した構成としてもよい。   The link controller 100 includes a data formatter 300, a bit counter 310, a byte counter 312, a packet generation circuit 320, a packet buffer 330, and an internal register 350. Note that some of these may be omitted.

データフォーマッタ300はデータのフォーマット変換を行う。例えばインターフェース回路110から順次入力されるKビット(6〜24ビット)のデータを受けて、フォーマット変換を行い、パック化データ(packed data)を生成する。そして生成されたパッ
ク化データを例えば8ビット又は16ビット(広義にはIバイト)単位でパケット生成回路320に出力する。
The data formatter 300 performs data format conversion. For example, K bit (6 to 24 bits) data sequentially input from the interface circuit 110 is received, format conversion is performed, and packed data is generated. The generated packed data is output to the packet generation circuit 320 in units of 8 bits or 16 bits (I byte in a broad sense), for example.

より具体的にはデータフォーマッタ300は、Kビットのデータ(Kビット単位のデータ)に対してLビットのダミーデータを付加することで得られる(K+L)ビットのデータが、M個ずつ集まった(N×I)バイトのパック化データを生成する。なおLは0以上の整数であり、Mは1以上の整数であり、Nは1(或いは2)以上の整数である。またIは1以上の整数である。   More specifically, the data formatter 300 collects M pieces of (K + L) -bit data obtained by adding L-bit dummy data to K-bit data (K-bit unit data). N × I) bytes of packed data are generated. L is an integer of 0 or more, M is an integer of 1 or more, and N is an integer of 1 (or 2) or more. I is an integer of 1 or more.

この場合に本実施形態ではデータフォーマッタ300は、Kに応じてL及びMが可変に設定される(Kに応じてL及びMが変化する)パック化データを生成する。またデータフォーマッタ300は、内部レジスタ350に記憶されるPCS、PW(M、N)の設定情報に基づき決められるビット位置にダミーデータを挿入する処理を行う。   In this case, in this embodiment, the data formatter 300 generates packed data in which L and M are variably set according to K (L and M change according to K). In addition, the data formatter 300 performs processing for inserting dummy data at bit positions determined based on setting information of PCS and PW (M, N) stored in the internal register 350.

図8、図9に、データフォーマッタ300により生成されるパック化データの例を示す。図8は、生成されたパック化データを1バイト(8ビット)毎に出力する場合の例であり、図9は2バイト(16ビット)毎に出力する場合の例である。   8 and 9 show examples of packed data generated by the data formatter 300. FIG. FIG. 8 shows an example in which the generated packed data is output every 1 byte (8 bits), and FIG. 9 shows an example in which it is output every 2 bytes (16 bits).

図8、図9において、DATAは、Kビット単位で入力されるデータ(カメラデータ)を表す。PWはパック幅(パック化データのサイズ)である。このパック幅PWはN×Iバイトと表すことができ、図8ではPWはNバイトになり、図9ではPWはN×2バイト(Nワード)になる。またPCSはパック内データ個数(パック化データ内におけるKビットデータの個数)であり、PCS=Mと表すことができる。なお図8、図9におけるダミーデータ(冗長データ)のビット数(個数)はLと表すことができる。   8 and 9, DATA represents data (camera data) input in units of K bits. PW is the pack width (size of packed data). This pack width PW can be expressed as N × I bytes. In FIG. 8, PW is N bytes, and in FIG. 9, PW is N × 2 bytes (N words). PCS is the number of data in the pack (the number of K-bit data in the packed data), and can be expressed as PCS = M. The number of bits (number) of dummy data (redundant data) in FIGS. 8 and 9 can be expressed as L.

図8では、入力データ(カメラデータ)がK=6、7、8、10、12、16、24ビットである場合に、各々、A1、A2、A3、A4、A5、A6、A7に示すようなパック化データが生成される。図9では、入力データがK=6、7、8、10、12、16、24ビットである場合に、各々、B1、B2、B3、B4、B5、B6、B7に示すようなパック化データが生成される。そして図8、図9では、入力データのビット数Kに応じて、ダミーデータのビット数Lと、パック内データ個数PCSに相当するM(或いはパック幅PWに相当するN)が可変に変化している。なお図8、図9の詳細については後述する。   In FIG. 8, when input data (camera data) is K = 6, 7, 8, 10, 12, 16, 24 bits, as shown by A1, A2, A3, A4, A5, A6, A7, respectively. Packed data is generated. In FIG. 9, when the input data is K = 6, 7, 8, 10, 12, 16, 24 bits, packed data as shown by B1, B2, B3, B4, B5, B6, B7, respectively. Is generated. In FIGS. 8 and 9, the bit number L of dummy data and M corresponding to the number of data in pack PCS (or N corresponding to pack width PW) change variably according to the number of bits K of input data. ing. Details of FIGS. 8 and 9 will be described later.

データフォーマッタ300は、データバッファ302、ダミーデータ挿入回路304を含む。データバッファ302には、Kビット(8〜24ビット)単位のデータが入力され、8ビット又は16ビット単位でパック化データを出力する。ダミーデータ挿入回路304は、冗長データであるダミーデータの挿入処理を行う。具体的には内部レジスタ350に記憶されるPCS、PW(M、N)の設定情報に基づき、ダミーデータのビット位置(データバッファ302上のビット位置)を決定(設定)し、そのビット位置にダミーデータ(0又は1のデータ)を挿入するための処理を行う。   The data formatter 300 includes a data buffer 302 and a dummy data insertion circuit 304. The data buffer 302 is input with data in units of K bits (8 to 24 bits), and outputs packed data in units of 8 bits or 16 bits. The dummy data insertion circuit 304 performs dummy data insertion processing that is redundant data. Specifically, based on the setting information of PCS and PW (M, N) stored in the internal register 350, the bit position (bit position on the data buffer 302) of the dummy data is determined (set), and the bit position is set. Processing for inserting dummy data (data of 0 or 1) is performed.

ビットカウンタ310(ピクセルカウンタ)はデータのビット数のカウント処理を行う。バイトカウンタ312はデータのバイト数のカウント処理を行う。そしてデータフォーマッタ300(ダミーデータ挿入回路304)は、ビットカウンタ310からのビット数のカウント値や、バイトカウンタ312からのバイト数のカウント値や、内部レジスタ350に記憶されるPCS、PW(M、N)の設定情報などに基づきデコード処理を行い、ダミーデータを挿入するビット位置を決める。   The bit counter 310 (pixel counter) counts the number of data bits. The byte counter 312 counts the number of data bytes. The data formatter 300 (dummy data insertion circuit 304) then counts the number of bits from the bit counter 310, counts of the number of bytes from the byte counter 312, and PCS, PW (M, N) decoding processing is performed based on the setting information and the like, and the bit position where the dummy data is inserted is determined.

パケット生成回路320は、シリアルバスを介して送信するパケットの生成を行う。具体的には、送信するパケットのヘッダを生成し、ヘッダとデータを結合してパケットを組み立てる。そして生成されたパケットはパケットバッファ330に書き込まれて、トランシーバ40に転送される。この場合に、パケットのヘッダの生成はヘッダ生成回路322により行われる。   The packet generation circuit 320 generates a packet to be transmitted via the serial bus. Specifically, a header of a packet to be transmitted is generated, and the packet is assembled by combining the header and data. The generated packet is written into the packet buffer 330 and transferred to the transceiver 40. In this case, the header generation circuit 322 generates the packet header.

そして本実施形態では図10(A)に示すように、パケット生成回路320は、シリアルバスを介して送信するパケットとして、データフォーマッタ300により生成されたパック化データがデータフィールドに挿入(設定)されるパケットを生成する。図10(A)は、入力データのビット数がK=10であり図8のA4に示すパック化データがデータフィールドに挿入された場合の例である。   In this embodiment, as shown in FIG. 10A, the packet generation circuit 320 inserts (sets) the packed data generated by the data formatter 300 into the data field as a packet to be transmitted via the serial bus. Packet is generated. FIG. 10A shows an example in which the number of bits of input data is K = 10 and the packed data indicated by A4 in FIG. 8 is inserted into the data field.

なおパケットのデータフィールドには、1個のパック化データだけを挿入してもよいし、複数個のパック化データを挿入してもよい。また図10(A)は、パケットのデータ幅が1バイトの場合の例を示しているが、パケットのデータ幅は2バイト以上(Iバイト)であってもよい。パケットのデータ幅を1バイトにする場合には、データフォーマッタ300からパケット生成回路320に対して、パック化データを1バイト(8ビット)単位で出力すればよい。この場合には図8のA1〜A7に示すようなパック化データを用いることになる。一方、パケットのデータ幅を2バイトにする場合には、データフォーマッタ300からパケット生成回路320に対して、パック化データを2バイト(16ビット)単位で出力すればよい。この場合には図9のB1〜B7に示すようなパック化データを用いることになる。   Note that only one piece of packed data may be inserted into the data field of the packet, or a plurality of pieces of packed data may be inserted. 10A shows an example in which the data width of the packet is 1 byte, the data width of the packet may be 2 bytes or more (I byte). When the data width of the packet is 1 byte, the packed data may be output from the data formatter 300 to the packet generation circuit 320 in units of 1 byte (8 bits). In this case, packed data as shown in A1 to A7 of FIG. 8 is used. On the other hand, when the packet data width is set to 2 bytes, the packed data may be output from the data formatter 300 to the packet generation circuit 320 in units of 2 bytes (16 bits). In this case, packed data as shown in B1 to B7 of FIG. 9 is used.

また図10(B)に示すように、パケット生成回路320が、パケットのヘッダに、PCS、PW(M、N)を設定するための設定情報を挿入するようにしてもよい。具体的には、パケットのヘッダにパック内データ個数PCSのフィールドと、パック幅PWのフィールドを設ける。そしてこれらのPCSフィールド、PWフィールドに、PCSの設定情報とPWの設定情報を挿入する。例えば図8のA1の場合には、PCS=4、PW=24の設定情報を、PCSフィールド、PWフィールドに挿入する。A2の場合には、PCS=2、PW=16の設定情報を、PCSフィールド、PWフィールドに挿入する。   As shown in FIG. 10B, the packet generation circuit 320 may insert setting information for setting PCS and PW (M, N) in the header of the packet. Specifically, a field for the number of in-pack data PCS and a field for the pack width PW are provided in the header of the packet. Then, PCS setting information and PW setting information are inserted into these PCS field and PW field. For example, in the case of A1 in FIG. 8, setting information of PCS = 4 and PW = 24 is inserted into the PCS field and the PW field. In the case of A2, setting information of PCS = 2 and PW = 16 is inserted into the PCS field and the PW field.

なおパケットのヘッダに挿入する上述の設定情報は、パック内データ個数PCSやパック幅PWの値そのものである必要はなく、少なくともM、Nを設定(特定)できる情報であればよい。例えばPWの値そのものではなく、N(或いはN×I)の値を設定情報として用いてもよい。或いは、Nの代わりにLを設定情報として用い、MとLによってNを特定するようにしてもよい。   The setting information inserted in the header of the packet does not have to be the value of the in-pack data count PCS or the pack width PW, but may be information that can set (specify) at least M and N. For example, instead of the PW value itself, a value of N (or N × I) may be used as setting information. Alternatively, L may be used as setting information instead of N, and N may be specified by M and L.

パケットバッファ330は、シリアルバスを介して送信するパケットが書き込まれる送信用のパケットバッファである。即ちシリアルバスを介して送信するパケットは、パケット生成回路320により生成されてパケットバッファ330に書き込まれ、トランシーバ40に転送される。このパケットバッファ330は、例えばFIFO(First In First Out)やRAMにより構成できる。なおパケットバッファ330をリングバッファ構造とすることも可能である。また受信用のパケットバッファをリンクコントローラ100内に更に設けてもよい。   The packet buffer 330 is a transmission packet buffer in which packets to be transmitted via the serial bus are written. That is, a packet to be transmitted via the serial bus is generated by the packet generation circuit 320, written in the packet buffer 330, and transferred to the transceiver 40. The packet buffer 330 can be configured by, for example, a FIFO (First In First Out) or a RAM. Note that the packet buffer 330 may have a ring buffer structure. A packet buffer for reception may be further provided in the link controller 100.

内部レジスタ350は各種の制御レジスタやステータスレジスタを含む。この内部レジスタ350は、PCS、PW(M、N)を設定するための設定情報を記憶する。具体的には、内部レジスタ350はPCSレジスタ352とPWレジスタ354を含み、これらの各レジスタに、PCS、PWの設定情報が記憶される。データフォーマッタ300は、これらのPCS、PWに基づきダミーデータの挿入ビット位置を決定する。またパケット生成回路320は、これらのPCS、PWをパケットのPCS、PWフィールドに挿入する。なお、PCS、PW(M、N)の設定情報は、シリアルバスを介して相手デバイス(ホストデバイス)から自デバイスに転送して、内部レジスタ350に書き込むことができる。   The internal register 350 includes various control registers and status registers. The internal register 350 stores setting information for setting PCS and PW (M, N). Specifically, the internal register 350 includes a PCS register 352 and a PW register 354, and PCS and PW setting information is stored in each of these registers. The data formatter 300 determines the insertion bit position of the dummy data based on these PCS and PW. The packet generation circuit 320 inserts these PCS and PW into the PCS and PW fields of the packet. The setting information of PCS and PW (M, N) can be transferred from the counterpart device (host device) to the local device via the serial bus and written to the internal register 350.

図6はホスト側(図2の場合にはターゲット側)のデータ転送制御装置10の構成例である。図6に示すように、データ転送制御装置10が含むリンクコントローラ90は、データフォーマッタ200、ビットカウンタ210、バイトカウンタ212、パケットバッファ230、パケット解析回路240、内部レジスタ250を含む。なおこれらの一部を省略する構成としてもよい。   FIG. 6 shows a configuration example of the data transfer control device 10 on the host side (target side in the case of FIG. 2). As shown in FIG. 6, the link controller 90 included in the data transfer control device 10 includes a data formatter 200, a bit counter 210, a byte counter 212, a packet buffer 230, a packet analysis circuit 240, and an internal register 250. Note that some of these may be omitted.

パケットバッファ230は、シリアルバスを介して受信したパケットが書き込まれる受信用のパケットバッファである。即ちシリアルバスを介してトランシーバ20が受信したパケットは、パケットバッファ230に書き込まれる。そして、書き込まれたパケットのデータフィールドに設定されたパック化データ(図10(A)(B)参照)は、データフォーマッタ200に出力される。この場合に、パック化データは例えば8ビット又は16ビット(Iバイト)単位でデータフォーマッタ200に出力される。   The packet buffer 230 is a reception packet buffer into which packets received via the serial bus are written. That is, the packet received by the transceiver 20 via the serial bus is written into the packet buffer 230. The packed data (see FIGS. 10A and 10B) set in the data field of the written packet is output to the data formatter 200. In this case, the packed data is output to the data formatter 200 in units of 8 bits or 16 bits (I bytes), for example.

パケットバッファ230は、例えばFIFOやRAMにより構成できる。なおパケットバッファ230をリングバッファ構造とすることも可能である。またパケットバッファ230をダブルバッファ構成にしたり、送信用のパケットバッファをリンクコントローラ90内に更に設けてもよい。   The packet buffer 230 can be configured by, for example, a FIFO or a RAM. Note that the packet buffer 230 may have a ring buffer structure. Further, the packet buffer 230 may have a double buffer configuration, or a transmission packet buffer may be further provided in the link controller 90.

パケット解析回路240は、シリアルバスを介して受信したパケットの解析を行う。具体的には受信したパケットのヘッダとデータを分離して、ヘッダを抽出する。このヘッダの抽出は、ヘッダ抽出回路242により行われる。   The packet analysis circuit 240 analyzes a packet received via the serial bus. Specifically, the header and data of the received packet are separated and the header is extracted. This header extraction is performed by the header extraction circuit 242.

例えばパケット解析回路240は、ヘッダのパケットタイプフィールドを解析して、受信したパケットのタイプ(リクエストパケット、レスポンスパケット、アクノリッジパケット)等を判断する。またヘッダの同期信号コードフィールドを解析して、受信したパケットが、同期信号(垂直同期信号、水平同期信号)の生成をインターフェース回路92に指示する同期信号コードを含んでいるか否かを判断する。   For example, the packet analysis circuit 240 analyzes the packet type field of the header and determines the type of the received packet (request packet, response packet, acknowledge packet) and the like. Further, the synchronization signal code field of the header is analyzed to determine whether or not the received packet includes a synchronization signal code that instructs the interface circuit 92 to generate a synchronization signal (vertical synchronization signal, horizontal synchronization signal).

例えば図5において、カメラ8が垂直同期信号CMVREFを出力した場合には、垂直同期信号の生成を指示する同期信号コードを含むパケットを、パケット生成回路320が生成する。またカメラ8が水平同期信号CMHREFを出力した場合には、水平同期信号の生成を指示する同期信号コードを含むパケットを生成する。そして生成されたパケットはシリアルバスを介して転送される。パケット解析回路240は、転送されて来たパケットを解析し、垂直同期信号のコードを検出すると、インターフェース回路92に対して、垂直同期信号SCMVREFの生成・出力を指示する。また水平同期信号のコードを検出すると、水平同期信号SCMHREFの生成・出力を指示する。このようにしてインターフェースバスとシステムバスとの間のバスブリッジ機能が実現される。   For example, in FIG. 5, when the camera 8 outputs the vertical synchronization signal CMVREF, the packet generation circuit 320 generates a packet including a synchronization signal code instructing generation of the vertical synchronization signal. When the camera 8 outputs the horizontal synchronization signal CMHREF, a packet including a synchronization signal code for instructing generation of the horizontal synchronization signal is generated. The generated packet is transferred via a serial bus. When the packet analysis circuit 240 analyzes the transferred packet and detects the code of the vertical synchronization signal, the packet analysis circuit 240 instructs the interface circuit 92 to generate and output the vertical synchronization signal SCMVREF. When the horizontal sync signal code is detected, generation and output of the horizontal sync signal SCMHREF is instructed. In this way, a bus bridge function between the interface bus and the system bus is realized.

またパケット解析回路240は、受信したパケットのヘッダを解析し、PCS、PW(M、N)の設定情報を抽出する。具体的には図10(B)に示すようにPCSフィールド、PWフィールドにPCS、PWが設定されている場合に、これらのPCS、PWの情報を抽出する。   The packet analysis circuit 240 analyzes the header of the received packet and extracts setting information of PCS and PW (M, N). Specifically, as shown in FIG. 10B, when PCS and PW are set in the PCS field and PW field, the information of these PCS and PW is extracted.

内部レジスタ250は各種の制御レジスタやステータスレジスタを含む。この内部レジスタ250は、パケット解析回路240により抽出されたPCS、PW(M、N)の設定情報を記憶する。具体的には、内部レジスタ250が含むPCSレジスタ252、PWレジスタ254が、PCS、PWの情報を記憶する。   The internal register 250 includes various control registers and status registers. The internal register 250 stores setting information of PCS and PW (M, N) extracted by the packet analysis circuit 240. Specifically, the PCS register 252 and the PW register 254 included in the internal register 250 store PCS and PW information.

図10(A)(B)に示すように、シリアルバスを介して受信したパケットのデータフィールドにはパック化データが挿入されている。このパック化データは、Kビットのデータに対してLビットのダミーデータを付加することで得られる(K+L)ビットのデータが、M個ずつ集まった(N×I)バイトのデータである。そして、Kに応じてL及びM(或いはN)が可変に設定されるデータである。   As shown in FIGS. 10A and 10B, packed data is inserted in the data field of a packet received via the serial bus. This packed data is (N × I) byte data in which M pieces of (K + L) -bit data obtained by adding L-bit dummy data to K-bit data. The data is such that L and M (or N) are variably set according to K.

そしてデータフォーマッタ200(リンクコントローラ90)は、このパック化データからKビット(6〜24ビット)のデータ(カメラデータ)を抽出してインターフェース回路92に出力する。またデータフォーマッタ200は、内部レジスタ250に記憶されるPCS、PW(M、N)の設定情報に基づき決められるビット位置から、ダミーデータを削除する処理を行う。   The data formatter 200 (link controller 90) extracts K-bit (6 to 24 bits) data (camera data) from the packed data and outputs the data to the interface circuit 92. In addition, the data formatter 200 performs processing for deleting dummy data from bit positions determined based on setting information of PCS and PW (M, N) stored in the internal register 250.

例えば図8のA1に示すパック化データがデータフィールドに挿入されていた場合は、データフォーマッタ200は、K=6ビットのデータ(11)〜(16)、(21)〜(26)、(31)〜(36)、(41)〜(46)をパック化データから抽出して、インターフェース回路92に順次出力する。同様に、図8のA2、A3、A4、A5、A6、A7に示すパック化データが挿入されていた場合は、各々、K=7、8、10、12、16、24ビットのデータを抽出して、インターフェース回路92に順次出力する。また図9のB1、B2、B3、B4、B5、B6、B7に示すパック化データが挿入されていた場合は、各々、K=6、7、8、10、12、16、24ビットのデータを抽出して、インターフェース回路92に順次出力する。   For example, when the packed data indicated by A1 in FIG. 8 is inserted in the data field, the data formatter 200 reads the data (11) to (16), (21) to (26), (31) of K = 6 bits. ) To (36) and (41) to (46) are extracted from the packed data and sequentially output to the interface circuit 92. Similarly, when the packed data shown in A2, A3, A4, A5, A6, and A7 in FIG. 8 is inserted, K = 7, 8, 10, 12, 16, and 24 bit data are extracted, respectively. Then, the data is sequentially output to the interface circuit 92. When the packed data shown in B1, B2, B3, B4, B5, B6, and B7 in FIG. 9 is inserted, K = 6, 7, 8, 10, 12, 16, and 24-bit data, respectively. Are extracted and sequentially output to the interface circuit 92.

データフォーマッタ200は、データバッファ202、ダミーデータ削除回路204を含む。データバッファ202には、8ビット又は16ビット単位でパック化データが入力され、Kビット(8〜24ビット)単位のデータを出力する。ダミーデータ削除回路204は、冗長データであるダミーデータの削除処理を行う。具体的には内部レジスタ250に記憶されるPCS、PW(M、N)の設定情報に基づき、ダミーデータのビット位置(データバッファ202上のビット位置)を決定(設定)し、そのビット位置からダミーデータ(0又は1のデータ)を削除するための処理を行う。   The data formatter 200 includes a data buffer 202 and a dummy data deletion circuit 204. The packed data is input to the data buffer 202 in units of 8 bits or 16 bits, and data in units of K bits (8 to 24 bits) is output. The dummy data deletion circuit 204 performs a deletion process of dummy data that is redundant data. Specifically, based on the setting information of PCS and PW (M, N) stored in the internal register 250, the bit position of the dummy data (bit position on the data buffer 202) is determined (set), and from the bit position Processing for deleting dummy data (data of 0 or 1) is performed.

ビットカウンタ210はデータのビット数のカウント処理を行う。バイトカウンタ212はデータのバイト数のカウント処理を行う。そしてデータフォーマッタ200(ダミーデータ削除回路204)は、ビットカウンタ210からのビット数のカウント値や、バイトカウンタ212からのバイト数のカウント値や、内部レジスタ250に記憶されるPCS、PW(M、N)の設定情報に基づきデコード処理を行い、ダミーデータを削除するビット位置を決める。   The bit counter 210 counts the number of data bits. The byte counter 212 counts the number of data bytes. The data formatter 200 (dummy data deletion circuit 204) then counts the number of bits from the bit counter 210, count value of the number of bytes from the byte counter 212, and PCS, PW (M, N) decoding processing is performed based on the setting information, and the bit position from which the dummy data is deleted is determined.

インターフェース回路92は、データフォーマッタ200からのKビット(6〜24ビット)のデータ(カメラデータ)を受ける。そしてこのデータをSCMDATとしてホストデバイス5に出力する。そしてこの際に、図7(A)〜(D)と同様な波形の垂直同期信号SCMVREF、水平同期信号SCMHREF、クロック信号SCMCLKINをホストデバイス5に出力する。このようにすることで、カメラ8から出力されたCMDAT、CMVREF、CMHREF等の再生処理が可能になる。   The interface circuit 92 receives K-bit (6 to 24 bits) data (camera data) from the data formatter 200. Then, this data is output to the host device 5 as SCMDAT. At this time, the vertical synchronization signal SCMVREF, the horizontal synchronization signal SCMHREF, and the clock signal SCCMCLKIN having the same waveforms as those in FIGS. 7A to 7D are output to the host device 5. In this way, it is possible to perform playback processing such as CMDAT, CMVREF, and CMHREF output from the camera 8.

4.フォーマット変換手法
次に本実施形態のフォーマット変換手法について詳細に説明する。例えば図8のA1では、入力されるカメラデータのフォーマットがRAW6であり、K=6ビットのデータ(11)〜(16)、(21)〜(26)、(31)〜(36)、(41)〜(46)が入力される。なお(11)は1個目のデータ(6ビットデータ)の1ビット目を意味し、(12)は1個目のデータの2ビット目を意味する。また(21)は2個目のデータの1ビット目を意味し、(22)は2個目のデータの2ビット目を意味する。また(×)はダミーデータ(冗長データ)を意味する。
4). Format Conversion Method Next, the format conversion method of this embodiment will be described in detail. For example, in A1 of FIG. 8, the format of the input camera data is RAW6, and K = 6-bit data (11) to (16), (21) to (26), (31) to (36), ( 41) to (46) are input. Note that (11) means the first bit of the first data (6-bit data), and (12) means the second bit of the first data. (21) means the first bit of the second data, and (22) means the second bit of the second data. Moreover, (x) means dummy data (redundant data).

そして図8のA1のようにビット数K=6である場合には、パック幅PW=24、パック内データ個数PCS=4に設定される。またダミーデータのビット数L=0になる。従ってこの場合には、6ビット(K+Lビット)のデータがPCS=4個(M個)集まった、PW=24ビット(N=3)のパック化データが生成される。   When the number of bits K = 6 as in A1 of FIG. 8, the pack width PW = 24 and the number of data in pack PCS = 4 are set. Further, the number of bits of dummy data L = 0. Therefore, in this case, packed data of PW = 24 bits (N = 3) is generated by collecting PCS = 4 (M) pieces of 6-bit (K + L bits) data.

また図8のA2ではカメラデータのフォーマットがRAW7であり、K=7ビットのデータ(11)〜(17)、(21)〜(27)が入力される。そしてこのようにK=7である場合には、PW=16、PCS=2に設定される。またダミーデータのビット数L=1になる。従ってこの場合には、8ビット(K+Lビット)のデータがPCS=2個(M個)集まった、PW=16ビット(N=2)のパック化データが生成される。   In A2 of FIG. 8, the camera data format is RAW7, and K = 7-bit data (11) to (17) and (21) to (27) are input. When K = 7 as described above, PW = 16 and PCS = 2 are set. Also, the number of bits of dummy data L = 1. Therefore, in this case, packed data of PW = 16 bits (N = 2) is generated by collecting PCS = 2 (M) data of 8 bits (K + L bits).

なお図8のA2の場合には、バイトカウンタのカウント値=1でありビットカウンタのカウント値=8である場合と、バイトカウンタのカウント値=2でありビットカウンタのカウント値=8である場合に、ダミーデータを挿入すればよい。   In the case of A2 in FIG. 8, the byte counter count value = 1 and the bit counter count value = 8, and the byte counter count value = 2 and the bit counter count value = 8. In this case, dummy data may be inserted.

また図8のA3では、カメラデータのフォーマットがYUV422、YUV420、RAW8又はJPEG8であり、K=8ビットのデータ(11)〜(18)、(21)〜(28)が入力される。そしてこのようにK=8である場合には、PW=16、PCS=2に設定される。またダミーデータのビット数L=0になる。従ってこの場合には、8ビット(K+Lビット)のデータがPCS=2個(M個)集まった、PW=16ビット(N=2)のパック化データが生成される。   In A3 of FIG. 8, the camera data format is YUV422, YUV420, RAW8, or JPEG8, and K = 8-bit data (11) to (18) and (21) to (28) are input. If K = 8, PW = 16 and PCS = 2 are set. Further, the number of bits of dummy data L = 0. Therefore, in this case, packed data of PW = 16 bits (N = 2) is generated by collecting PCS = 2 (M) data of 8 bits (K + L bits).

なお図8のA3の場合には、バイトカウンタのカウント値=2でありビットカウンタのカウント値=3、4である場合と、バイトカウンタのカウント値=3でありビットカウンタのカウント値=7、8である場合に、ダミーデータを挿入すればよい。   In the case of A3 in FIG. 8, the count value of the byte counter = 2 and the count value of the bit counter = 3 and 4, and the count value of the byte counter = 3 and the count value of the bit counter = 7, In the case of 8, dummy data may be inserted.

また図8のA4ではカメラデータのフォーマットがRAW10であり、K=10ビットのデータ(101)〜(110)、(201)〜(210)が入力される。そしてこのようにK=10である場合には、PW=24、PCS=2に設定される。またダミーデータのビット数L=2になる。従ってこの場合には、12ビット(K+Lビット)のデータがPCS=2個(M個)集まった、PW=24ビット(N=3バイト)のパック化データが生成される。図8のA5〜A7、図9のB1〜B7の場合も同様にしてパック化データが生成される。   In A4 of FIG. 8, the camera data format is RAW10, and K = 10-bit data (101) to (110) and (201) to (210) are input. When K = 10 as described above, PW = 24 and PCS = 2 are set. Further, the number of bits of dummy data L = 2. Therefore, in this case, packed data of PW = 24 bits (N = 3 bytes) is generated by collecting PCS = 2 pieces (M pieces) of 12-bit (K + L bits) data. In the case of A5 to A7 in FIG. 8 and B1 to B7 in FIG.

図3(A)、図4(A)に示す第1の比較例では冗長データのビット数が多い。このためシリアルバスでのデータ転送量が大きくなってしまうという問題点がある。一方、図3(B)、図4(B)の第2の比較例では冗長データは無いが、全てのフォーマットのカメラデータをサポートしようとすると、データフォーマッタやカウンタが大規模化するという問題点がある。   In the first comparative example shown in FIGS. 3A and 4A, the number of bits of redundant data is large. For this reason, there is a problem that the data transfer amount on the serial bus becomes large. On the other hand, in the second comparative example of FIGS. 3B and 4B, there is no redundant data. However, if it is attempted to support camera data of all formats, the data formatter and the counter become large. There is.

これに対して本実施形態の手法では、冗長データは存在するが、そのビット数は第1の比較例に比べて十分に少ない。従ってシリアルバスでのデータ転送量がそれほど大きくならず、データ転送を効率化できる。また、図8、図9に示すように全てのフォーマットのカメラデータをサポートしようとした場合にも、データフォーマッタやカウンタの回路規模が、第2の比較例に比べるとそれほど大きくはならない。   On the other hand, in the method of this embodiment, redundant data exists, but the number of bits is sufficiently smaller than that of the first comparative example. Therefore, the amount of data transferred on the serial bus is not so large, and data transfer can be made efficient. Also, as shown in FIGS. 8 and 9, even when trying to support camera data of all formats, the circuit scale of the data formatter and the counter is not so large as compared with the second comparative example.

次に図11(A)〜図12(C)を用いて、第1、第2の比較例に対する本実施形態の手法の優位点について説明する。図11(A)〜(C)は、図8のパック化データが設定されるパケットの幅(バス幅)が8ビット(I=1)である場合の例であり、図12(A)〜(C)は、図9のパック化データが設定されるパケットの幅が16ビット(I=2)である場合の例である。   Next, the advantages of the method of this embodiment over the first and second comparative examples will be described with reference to FIGS. 11A to 11C are examples in the case where the packet width (bus width) in which the packed data of FIG. 8 is set is 8 bits (I = 1), and FIGS. (C) is an example when the width of the packet in which the packed data of FIG. 9 is set is 16 bits (I = 2).

そして図11(A)〜図12(C)において、Nはパック化データのバイト数又はワード数であり、Lは冗長データ(ダミーデータ)のビット数である。またKは入力データのビット数であり、Mはパック化データ内にある(K+L)ビットデータの個数である。   11A to 12C, N is the number of bytes or words of packed data, and L is the number of bits of redundant data (dummy data). K is the number of bits of input data, and M is the number of (K + L) bit data in the packed data.

フォーマット変換を行うためには、図11(A)〜図12(C)のN、M、Kのそれぞれをカウントするカウンタ(バイトカウンタ、ビットカウンタ等)が必要になる。ここでKについては、第1、第2の比較例及び本実施形態で条件は同じである。従って、N、Mをカウントするカウンタや、カウンタからのカウント値をマルチプレクスしてデコードする回路等が、回路規模を左右する。従って回路規模の削減のためには、N×Mをなるべく少なくする必要がある。なおN/Mの組み合わせの数が回路の個数に相当する。   In order to perform the format conversion, a counter (a byte counter, a bit counter, or the like) that counts each of N, M, and K in FIGS. 11A to 12C is necessary. Here, the condition for K is the same in the first and second comparative examples and the present embodiment. Therefore, the circuit scale depends on the counter that counts N and M, the circuit that multiplexes and decodes the count value from the counter, and the like. Therefore, it is necessary to reduce N × M as much as possible in order to reduce the circuit scale. Note that the number of N / M combinations corresponds to the number of circuits.

一方、シリアルバスのデータ転送量を減らすためには、冗長データのビット数であるLを少なくする必要がある。   On the other hand, in order to reduce the data transfer amount of the serial bus, it is necessary to reduce L which is the number of bits of redundant data.

従って、データ転送量の低減化と回路の小規模化を両立するためには、N×Mの最小化と、Lの最小化を両立できることが望まれる。   Therefore, in order to achieve both a reduction in the amount of data transfer and a reduction in circuit scale, it is desired that both N × M minimization and L minimization can be achieved.

この点、図11(A)、図12(A)の第1の比較例では、M=1に固定されている。従ってN×M(回路規模)については小さくできる。例えばN×Mの合計を計算すると、図11(A)では12ポイントになり、図12(A)では8ポイントになる。   In this regard, in the first comparative example shown in FIGS. 11A and 12A, M = 1 is fixed. Therefore, N × M (circuit scale) can be reduced. For example, if the sum of N × M is calculated, it becomes 12 points in FIG. 11A and 8 points in FIG.

しかしながらこの第1の比較例では、冗長データのビット数L(データ転送量)が大きくなってしまう。例えばLの合計を計算すると、図11(A)では13ビットになり、図12(A)では45ビットになり、非常に大きくなってしまう。   However, in this first comparative example, the number of redundant data bits L (data transfer amount) becomes large. For example, when the total of L is calculated, it becomes 13 bits in FIG. 11A and 45 bits in FIG.

また図11(B)、図12(B)の第2の比較例では、L=1に固定されている。従ってL(データ転送量)については小さくできる。例えばLの合計を計算すると、図11(B)、図12(B)では共に0ビットになる。   In the second comparative example shown in FIGS. 11B and 12B, L = 1 is fixed. Therefore, L (data transfer amount) can be reduced. For example, when the total of L is calculated, both bits become 0 bits in FIGS. 11B and 12B.

しかしながらこの第2の比較例では、NやMが大きいため、N×M(回路規模)が大きくなってしまう。例えばN×Mの合計を計算すると、図11(B)では100ポイントになり、図12(B)では197ポイントになり、非常に大きくなってしまう。   However, in the second comparative example, since N and M are large, N × M (circuit scale) becomes large. For example, if the sum of N × M is calculated, it becomes 100 points in FIG. 11B and 197 points in FIG. 12B, which becomes very large.

これに対して図11(C)、図12(C)の本実施形態の手法では、Kに応じてL、Mを可変に設定している。即ちKに応じてL、Mを適正な値に変化させている。   On the other hand, in the method of the present embodiment shown in FIGS. 11C and 12C, L and M are set variably according to K. That is, L and M are changed to appropriate values according to K.

より具体的には、I=1となる図11(C)では、
(1)K=6である場合には、L=0、M=4、N=3
(2)K=7である場合には、L=1、M=2、N=2
(3)K=8である場合には、L=0、M=2、N=2
(4)K=10である場合にはL=2、M=2、N=3
(5)K=12である場合にはL=0、M=2、N=3
(6)K=16である場合にはL=0、M=1、N=2、或いは
(7)K=24である場合にはL=0、M=1、N=3となるように、
パック化データが生成されている。
More specifically, in FIG. 11C where I = 1,
(1) When K = 6, L = 0, M = 4, N = 3
(2) When K = 7, L = 1, M = 2, N = 2
(3) When K = 8, L = 0, M = 2, N = 2
(4) When K = 10, L = 2, M = 2, N = 3
(5) When K = 12, L = 0, M = 2, N = 3
(6) When K = 16, L = 0, M = 1, N = 2, or (7) When K = 24, L = 0, M = 1, N = 3 ,
Packed data has been generated.

またI=2となる図12(C)では、
(11)K=6、 I=2である場合にはL=0、M=8、N=3
(12)K=7、 I=2である場合にはL=1、M=4、N=2
(13)K=8、 I=2である場合にはL=0、M=4、N=2
(14)K=10、I=2である場合にはL=1、M=3、N=2
(15)K=12、I=2である場合にはL=0、M=4、N=3
(16)K=16、I=2である場合にはL=0、M=2、N=2、或いは
(17)K=24、I=2である場合にはL=0、M=2、N=3となるように、
パック化データが生成されている。
In FIG. 12C where I = 2,
(11) When K = 6 and I = 2, L = 0, M = 8, N = 3
(12) When K = 7 and I = 2, L = 1, M = 4, N = 2
(13) When K = 8 and I = 2, L = 0, M = 4, N = 2
(14) When K = 10 and I = 2, L = 1, M = 3, N = 2
(15) When K = 12, I = 2, L = 0, M = 4, N = 3
(16) L = 0, M = 2, N = 2 when K = 16, I = 2, or (17) L = 0, M = 2 when K = 24, I = 2 , So that N = 3.
Packed data has been generated.

この場合に本実施形態の手法では、N×8×I=(K+L)×Mの式が成立する。例えばI=1となる図11(C)では、N×8=(K+L)×Mの式が成立する。またI=2となる図12(C)では、N×8×2=(K+L)×Mの式が成立する。但し図12(C)のK=10の場合(上述の(14)の場合)だけは例外である。   In this case, in the method of the present embodiment, the formula of N × 8 × I = (K + L) × M is established. For example, in FIG. 11C where I = 1, the formula of N × 8 = (K + L) × M is established. In FIG. 12C where I = 2, the equation N × 8 × 2 = (K + L) × M is established. However, there is an exception only when K = 10 in FIG. 12C (in the case of (14) described above).

なお上述の(1)〜(7)、(11)〜(17)の全てを満たさなくても、(1)〜(7)、(11)〜(17)の一部だけを満たすようにパック化データを生成してもよい。即ちYUV422、YUV420、RGB888、RGB565、RGB444、RAW6、RAW7、RAW8、RAW10、RAW12、JPEG8の一部のフォーマットだけをサポートできるようにしてもよい。   In addition, even if not satisfying all of the above-mentioned (1) to (7) and (11) to (17), it is packed so that only a part of (1) to (7) and (11) to (17) is satisfied Data may be generated. That is, only a part of the formats of YUV422, YUV420, RGB888, RGB565, RGB444, RAW6, RAW7, RAW8, RAW10, RAW12, and JPEG8 may be supported.

以上の本実施形態の手法によれば、図11(C)、図12(C)から明らかなように、N×M(回路規模)を第2の比較例に比べて小さくできる。例えばN×Mの合計を計算すると、図11(C)では37ポイントになり、図12(C)では68ポイントになる。従って、N×Mの合計が100、197ポイントになる第2の比較例に比べて、回路規模を十分に小さくできる。   According to the method of the present embodiment described above, as is apparent from FIGS. 11C and 12C, N × M (circuit scale) can be reduced as compared with the second comparative example. For example, calculating the total of N × M gives 37 points in FIG. 11C and 68 points in FIG. Therefore, the circuit scale can be sufficiently reduced as compared with the second comparative example in which the total of N × M is 100 and 197 points.

また本実施形態の手法では、冗長データのビット数が第1の比較例に比べて少ないため、L(データ転送量)も小さくできる。例えばLの合計を計算すると、図11(C)では3ビットになり、図12(C)では2ビットになる。従って、Lの合計が13、45ビットになる第1の比較例に比べて、データ転送量を十分に小さくできる。   In the method of the present embodiment, the number of bits of redundant data is smaller than that in the first comparative example, so that L (data transfer amount) can be reduced. For example, the total of L is 3 bits in FIG. 11C and 2 bits in FIG. 12C. Therefore, the data transfer amount can be sufficiently reduced as compared with the first comparative example in which the total of L is 13 or 45 bits.

このように本実施形態の手法によれば、N×Mの最小化とLの最小化を両立できる。従って、回路規模をそれほど大きくすることなく、多様なフォーマットのデータの効率的なシリアル転送を実現できるという効果がある。   Thus, according to the method of the present embodiment, N × M minimization and L minimization can be achieved at the same time. Therefore, there is an effect that efficient serial transfer of data of various formats can be realized without enlarging the circuit scale so much.

5.差動信号によるデータ転送方式
次に図13を用いて本実施形態のシリアル転送手法について説明する。図13においてDTO+、DTO−はホスト側(データ転送制御装置10)がターゲット側(データ転送制御装置30)に出力するデータ(OUTデータ)である。CLK+、CLK−は、ホスト側がターゲット側に供給するクロックである。ホスト側はCLK+/−のエッジ(例えば立ち上がりエッジ。立ち下がりエッジでもよい)に同期してDTO+/−を出力する。従ってターゲット側は、CLK+/−を用いてDTO+/−をサンプリングして取り込むことができる。更に図13では、ターゲット側はホスト側から供給されたクロックCLK+/−に基づいて動作する。即ちCLK+/−はターゲット側のシステムクロックになる。このためPLL(Phase Locked Loop)回路12は(広義にはクロック生成回路)はホスト側に設けられ、ターゲット側には設けられていない。
5. Data Transfer Method Using Differential Signal Next, the serial transfer method of this embodiment will be described with reference to FIG. In FIG. 13, DTO + and DTO- are data (OUT data) output from the host side (data transfer control device 10) to the target side (data transfer control device 30). CLK + and CLK− are clocks supplied from the host side to the target side. The host side outputs DTO +/− in synchronization with the edge of CLK +/− (for example, a rising edge or a falling edge). Therefore, the target side can sample and capture DTO +/− using CLK +/−. Further, in FIG. 13, the target side operates based on the clock CLK +/− supplied from the host side. That is, CLK +/− becomes the system clock on the target side. Therefore, the PLL (Phase Locked Loop) circuit 12 (clock generation circuit in a broad sense) is provided on the host side, and is not provided on the target side.

DTI+、DTI−はターゲット側がホスト側に出力するデータ(INデータ)である。STB+、STB−は、ターゲット側がホスト側に供給するストローブ(広義にはクロック)である。ターゲット側はホスト側から供給されたCLK+/−に基づいてSTB+/−を生成して出力する。そしてターゲット側はSTB+/−のエッジ(例えば立ち上がりエッジ。立ち下がりエッジでもよい)に同期してDTI+/−を出力する。従ってホスト側は、STB+/−を用いてDTI+/−をサンプリングして取り込むことができる。   DTI + and DTI- are data (IN data) output from the target side to the host side. STB + and STB- are strobes (clocks in a broad sense) supplied from the target side to the host side. The target side generates and outputs STB +/− based on CLK +/− supplied from the host side. The target side outputs DTI +/− in synchronization with the STB +/− edge (for example, a rising edge or a falling edge). Therefore, the host side can sample and capture DTI +/− using STB +/−.

DTO+/−、CLK+/−、DTI+/−、STB+/−の各々は、トランスミッタ回路(ドライバ回路)がこれらの各々に対応する差動信号線(Differential Signal Lines)を例えば電流駆動(又は電圧駆動)することにより送信される。なお、より高速な転送を実現するためには、DTO+/−、DTI+/−の各差動信号線を2ペア以上設ければよい。   In each of DTO +/−, CLK +/−, DTI +/−, and STB +/−, a transmitter circuit (driver circuit), for example, drives differential signal lines (Differential Signal Lines) corresponding to each of these, for example, current drive (or voltage drive) To be transmitted. In order to realize faster transfer, two or more pairs of DTO +/− and DTI +/− differential signal lines may be provided.

ホスト側のトランシーバ20は、OUT転送用(広義にはデータ転送用)、クロック転送用のトランスミッタ回路22、24や、IN転送用(広義にはデータ転送用)、ストローブ転送用(広義にはクロック転送用)のレシーバ回路26、28を含む。ターゲット側のトランシーバ40は、OUT転送用、クロック転送用のレシーバ回路42、44や、IN転送用、ストローブ転送用のトランスミッタ回路46、48を含む。なおこれらの回路ブロックの一部を含まない構成としてもよい。   The transceiver 20 on the host side includes transmitter circuits 22 and 24 for OUT transfer (data transfer in a broad sense) and clock transfer, IN transfer (data transfer in a broad sense), and strobe transfer (clock in a broad sense). (Receiver) receiver circuits 26 and 28 are included. The target-side transceiver 40 includes receiver circuits 42 and 44 for OUT transfer and clock transfer, and transmitter circuits 46 and 48 for IN transfer and strobe transfer. Note that a configuration in which some of these circuit blocks are not included may be employed.

OUT転送用、クロック転送用のトランスミッタ回路22、24は、各々、DTO+/−、CLK+/−の差動信号線を電流駆動することでDTO+/−、CLK+/−を送信する。OUT転送用、クロック転送用のレシーバ回路42、44は、各々、DTO+/−、CLK+/−の差動信号線に流れる電流に基づいて電流・電圧変換を行い、電流・電圧変換により得られた差動電圧信号(第1、第2の電圧信号)の比較処理(差動増幅処理)を行うことで、DTO+/−、CLK+/−を受信する。   The transmitter circuits 22 and 24 for OUT transfer and clock transfer transmit DTO +/− and CLK +/− by driving the differential signal lines of DTO +/− and CLK +/−, respectively. The receiver circuits 42 and 44 for OUT transfer and clock transfer perform current / voltage conversion based on the current flowing through the differential signal lines of DTO +/− and CLK +/−, respectively, and are obtained by current / voltage conversion. By performing a comparison process (differential amplification process) of the differential voltage signals (first and second voltage signals), DTO +/− and CLK +/− are received.

IN転送用、クロック転送用のトランスミッタ回路46、48は、各々、DTI+/−、STB+/−の差動信号線を電流駆動することでDTI+/−、STB+/−を送信する。IN転送用、ストローブ転送用のレシーバ回路26、28は、各々、DTI+/−、STB+/−の差動信号線に流れる電流に基づいて電流・電圧変換を行い、電流・電圧変換により得られた差動電圧信号(第1、第2の電圧信号)の比較処理(差動増幅処理)を行うことで、DTI+/−、STB+/−を受信する。   The IN transfer and clock transfer transmitter circuits 46 and 48 transmit DTI +/− and STB +/− by driving the differential signal lines of DTI +/− and STB +/−, respectively. The IN transfer and strobe transfer receiver circuits 26 and 28 perform current / voltage conversion based on currents flowing through the differential signal lines of DTI +/− and STB +/−, respectively, and are obtained by current / voltage conversion. By performing a comparison process (differential amplification process) of the differential voltage signals (first and second voltage signals), DTI +/− and STB +/− are received.

6.電子機器
図14に本実施形態の電子機器の構成例を示す。この電子機器は本実施形態で説明したデータ転送制御装置502、512、514、520、530を含む。またベースバンドエンジン500(広義には通信デバイス)、アプリケーションエンジン510(広義にはプロセッサ)、カメラ540(広義には撮像デバイス)、或いはLCD550(広義には表示デバイス)を含む。なおこれらの一部を省略する構成としてもよい。この構成によればカメラ機能とLCD(Liquid Crystal Display)の表示機能を有する携帯電話などを実現できる。但し本実施形態の電子機器は携帯電話には限定されず、デジタルカメラ、PDA、電子手帳、電子辞書、或いは携帯型情報端末など種々の電子機器に適用できる。
6). Electronic Device FIG. 14 shows a configuration example of the electronic device of the present embodiment. This electronic device includes the data transfer control devices 502, 512, 514, 520, and 530 described in the present embodiment. Further, it includes a baseband engine 500 (a communication device in a broad sense), an application engine 510 (a processor in a broad sense), a camera 540 (an imaging device in a broad sense), or an LCD 550 (a display device in a broad sense). Note that some of these may be omitted. According to this configuration, a mobile phone having a camera function and an LCD (Liquid Crystal Display) display function can be realized. However, the electronic device of the present embodiment is not limited to a mobile phone, and can be applied to various electronic devices such as a digital camera, a PDA, an electronic notebook, an electronic dictionary, or a portable information terminal.

図14に示すようにベースバンドエンジン500に設けられたホスト側のデータ転送制御装置502と、アプリケーションエンジン510(グラフィックエンジン)に設けられたターゲット側のデータ転送制御装置512との間で、本実施形態で説明したシリアル転送が行われる。またアプリケーションエンジン510に設けられたホスト側のデータ転送制御装置514と、カメラインターフェース回路522を含むデータ転送制御装置520や、LCDインターフェース回路532を含むデータ転送制御装置530との間でも、本実施形態で説明したシリアル転送が行われる。なおベースバンドエンジン500とアプリケーションエンジン510を同一のハードウェア(CPU等)で実現してもよい。   As shown in FIG. 14, the present embodiment is implemented between a host-side data transfer control device 502 provided in the baseband engine 500 and a target-side data transfer control device 512 provided in the application engine 510 (graphic engine). The serial transfer described in the embodiment is performed. The present embodiment also includes a host-side data transfer control device 514 provided in the application engine 510, a data transfer control device 520 including a camera interface circuit 522, and a data transfer control device 530 including an LCD interface circuit 532. The serial transfer described in (1) is performed. Note that the baseband engine 500 and the application engine 510 may be realized by the same hardware (CPU or the like).

図14の構成によれば、従来の電子機器に比べて、EMIノイズを低減できる。またデータ転送制御装置の小規模化、省電力化を実現することで、電子機器の更なる省電力化を図れる。また電子機器が携帯電話である場合には、携帯電話の接続部分(ヒンジ部分)に通る信号線をシリアル信号線にすることが可能になり、実装の容易化を図れる。   According to the configuration of FIG. 14, EMI noise can be reduced as compared with a conventional electronic device. Further, by realizing a reduction in the size and power consumption of the data transfer control device, it is possible to further reduce the power consumption of the electronic device. In the case where the electronic device is a mobile phone, the signal line passing through the connection portion (hinge portion) of the mobile phone can be a serial signal line, and the mounting can be facilitated.

なお、上記のように本実施形態について詳細に説明したが、本発明の新規事項および効果から実体的に逸脱しない多くの変形が可能であることは当業者には容易に理解できるであろう。従って、このような変形例はすべて本発明の範囲に含まれるものとする。例えば、明細書又は図面において、少なくとも一度、より広義または同義な異なる用語(デバイス、Iバイト等)と共に記載された用語(カメラ・表示ドライバ、8・16ビット等)は、明細書又は図面のいかなる箇所においても、その異なる用語に置き換えることができる。   Although the present embodiment has been described in detail as described above, it will be easily understood by those skilled in the art that many modifications can be made without departing from the novel matters and effects of the present invention. Accordingly, all such modifications are included in the scope of the present invention. For example, a term (camera / display driver, 8.16 bit, etc.) described together with a different term (device, I byte, etc.) in a broader sense or the same meaning at least once in the specification or the drawing It can also be replaced with the different terminology.

またデータ転送制御装置や電子機器の構成や動作も本実施形態で説明した構成や動作に限定に限定されず、種々の変形実施が可能である。またフォーマット変換手法も図8、図12(C)等で説明したものに限定されない。例えばKも6、7、8、10、12、16、24に限定されず、Iも1、2には限定されない。またカメラデータ以外のフォーマット変換に本発明の手法を用いることも可能である。   Further, the configuration and operation of the data transfer control device and the electronic device are not limited to the configuration and operation described in this embodiment, and various modifications can be made. Further, the format conversion method is not limited to that described with reference to FIGS. For example, K is not limited to 6, 7, 8, 10, 12, 16, 24, and I is not limited to 1, 2. It is also possible to use the method of the present invention for format conversion other than camera data.

本実施形態のデータ転送制御装置及びそのシステム構成例。The data transfer control apparatus of this embodiment, and its system structural example. 本実施形態のデータ転送制御装置及びそのシステム構成例。The data transfer control apparatus of this embodiment, and its system structural example. 図3(A)(B)は比較例の手法の説明図。3A and 3B are explanatory diagrams of the method of the comparative example. 図4(A)(B)は比較例の手法の説明図。4A and 4B are explanatory diagrams of the method of the comparative example. 本実施形態のデータ転送制御装置の構成例。1 is a configuration example of a data transfer control device according to the present embodiment. 本実施形態のデータ転送制御装置の構成例。1 is a configuration example of a data transfer control device according to the present embodiment. 図7(A)〜(D)は、カメラインターフェース信号の波形例。7A to 7D show waveform examples of camera interface signals. 本実施形態のフォーマット変換手法の説明図。Explanatory drawing of the format conversion method of this embodiment. 本実施形態のフォーマット変換手法の説明図。Explanatory drawing of the format conversion method of this embodiment. 図10(A)(B)は本実施形態で使用されるパケットの説明図。10A and 10B are explanatory diagrams of packets used in the present embodiment. 図11(A)(B)(C)は本実施形態の優位点を説明する図。FIGS. 11A, 11B, and 11C are views for explaining advantages of the present embodiment. 図12(A)(B)(C)は本実施形態の優位点を説明する図。12A, 12B, and 12C are views for explaining advantages of the present embodiment. 本実施形態のシリアル転送の説明図。Explanatory drawing of the serial transfer of this embodiment. 電子機器の構成例。Configuration example of an electronic device.

符号の説明Explanation of symbols

5 ホストデバイス、6 表示ドライバ、7 表示パネル、8 カメラ、
10 データ転送制御装置(ホスト側)、20 トランシーバ、
30 データ転送制御装置(ターゲット側)、40 トランシーバ、
90、100 リンクコントローラ、92、110 インターフェース回路、
200 データフォーマッタ、202 データバッファ、
204 ダミーデータ削除回路、210 ビットカウンタ、212 バイトカウンタ、
230 パケットバッファ、240 パケット解析回路、242 ヘッダ抽出回路、
250 内部レジスタ、252 PCSレジスタ、254 PWレジスタ、
300 データフォーマッタ、302 データバッファ、
304 ダミーデータ挿入回路、310 ビットカウンタ、312 バイトカウンタ、
320 パケット生成回路、322 ヘッダ生成回路、330 パケットバッファ、
350 内部レジスタ、352 PCSレジスタ、354 PWレジスタ
5 Host device, 6 Display driver, 7 Display panel, 8 Camera,
10 data transfer control device (host side), 20 transceiver,
30 data transfer control device (target side), 40 transceiver,
90, 100 link controller, 92, 110 interface circuit,
200 data formatter, 202 data buffer,
204 Dummy data deletion circuit, 210-bit counter, 212-byte counter,
230 packet buffer, 240 packet analysis circuit, 242 header extraction circuit,
250 internal registers, 252 PCS registers, 254 PW registers,
300 data formatter, 302 data buffer,
304 dummy data insertion circuit, 310 bit counter, 312 byte counter,
320 packet generation circuit, 322 header generation circuit, 330 packet buffer,
350 Internal register, 352 PCS register, 354 PW register

Claims (7)

データ転送を制御するデータ転送制御装置であって、
システムバスを介して接続されるホストデバイスとの間でのインターフェース処理を行うインターフェース回路と、
シリアルバスを介して受信したパケットの解析を行い、1つのデータ単位がKビット(Kは2以上の整数)となるデータを前記インターフェース回路に出力するリンクコントローラとを含み、
前記シリアルバスを介して受信したパケットのデータフィールドには、
Kビットの前記データに対してLビット(Lは0以上の整数)のダミーデータを付加することで得られる(K+L)ビットのデータが、M個(Mは1以上の整数)ずつ集まった(N×I)バイト(N、Iは1以上の整数)のデータであって、前記Kに応じて前記L及びMが可変に設定されるパック化データが挿入され、
前記リンクコントローラは、
前記パック化データからKビットの前記データを抽出して前記インターフェース回路に出力するデータフォーマッタを含むことを特徴とするデータ転送制御装置。
A data transfer control device for controlling data transfer,
An interface circuit for performing interface processing with a host device connected via a system bus;
A link controller that analyzes a packet received via the serial bus and outputs data in which one data unit is K bits (K is an integer of 2 or more) to the interface circuit;
In the data field of the packet received via the serial bus,
M pieces (M is an integer of 1 or more) of (K + L) bits of data obtained by adding L bits (L is an integer of 0 or more) of dummy data to the K bits of data are collected ( N × I) bytes (N and I are integers of 1 or more), and packed data in which L and M are variably set according to K is inserted,
The link controller
A data transfer control device comprising: a data formatter that extracts the K-bit data from the packed data and outputs the data to the interface circuit.
請求項1において、
パケットに挿入される前記パック化データは、
K=6、 I=1である場合にはL=0、M=4、N=3となり、或いは
K=7、 I=1である場合にはL=1、M=2、N=2となり、或いは
K=8、 I=1である場合にはL=0、M=2、N=2となり、或いは
K=10、I=1である場合にはL=2、M=2、N=3となり、或いは
K=12、I=1である場合にはL=0、M=2、N=3となり、或いは
K=16、I=1である場合にはL=0、M=1、N=2となり、或いは
K=24、I=1である場合にはL=0、M=1、N=3となるデータであることを特徴とするデータ転送制御装置。
In claim 1,
The packed data inserted into the packet is
When K = 6 and I = 1, L = 0, M = 4 and N = 3, or when K = 7 and I = 1, L = 1, M = 2 and N = 2 Or, if K = 8 and I = 1, then L = 0, M = 2, N = 2, or if K = 10, I = 1, L = 2, M = 2, N = 3 or when K = 12, I = 1, L = 0, M = 2, N = 3, or when K = 16, I = 1, L = 0, M = 1, A data transfer control device, wherein N = 2, or if K = 24 and I = 1, the data is L = 0, M = 1, and N = 3.
請求項1又は2において、
パケットに挿入される前記パック化データは、
K=6、 I=2である場合にはL=0、M=8、N=3となり、或いは
K=7、 I=2である場合にはL=1、M=4、N=2となり、或いは
K=8、 I=2である場合にはL=0、M=4、N=2となり、或いは
K=10、I=2である場合にはL=1、M=3、N=2となり、或いは
K=12、I=2である場合にはL=0、M=4、N=3となり、或いは
K=16、I=2である場合にはL=0、M=2、N=2となり、或いは
K=24、I=2である場合にはL=0、M=2、N=3となるデータであることを特徴とするデータ転送制御装置。
In claim 1 or 2,
The packed data inserted into the packet is
When K = 6 and I = 2, L = 0, M = 8, and N = 3, or when K = 7 and I = 2, L = 1, M = 4, and N = 2 Or, if K = 8 and I = 2, then L = 0, M = 4, N = 2, or if K = 10 and I = 2, L = 1, M = 3, N = 2 or when K = 12, I = 2, L = 0, M = 4, N = 3, or when K = 16, I = 2, L = 0, M = 2, A data transfer control device, wherein N = 2, or if K = 24 and I = 2, the data is L = 0, M = 2, and N = 3.
請求項1において、
N×8×I=(K+L)×Mであることを特徴とするデータ転送制御装置。
In claim 1,
N × 8 × I = (K + L) × M
請求項1乃至4のいずれかにおいて、
前記シリアルバスを介して受信したパケットのヘッダには、前記M、Nを設定するための設定情報が挿入され、
前記リンクコントローラは、
受信したパケットのヘッダを解析し、前記設定情報をパケットのヘッダから抽出するパケット解析回路を含み、
前記データフォーマッタは、
前記設定情報に基づいて、前記パック化データからKビットの前記データを抽出することを特徴とするデータ転送制御装置。
In any one of Claims 1 thru | or 4,
Setting information for setting the M and N is inserted in the header of the packet received via the serial bus,
The link controller
A packet analysis circuit that analyzes a header of the received packet and extracts the setting information from the packet header;
The data formatter is:
A data transfer control device, wherein the data of K bits is extracted from the packed data based on the setting information.
請求項1乃至5のいずれかにおいて、
前記シリアルバスを介して受信したパケットのヘッダには、前記M、Nを設定するための設定情報が挿入され、
前記リンクコントローラは、
受信したパケットのヘッダを解析し、前記設定情報をパケットのヘッダから抽出するパケット解析回路を含み、
前記データフォーマッタは、
前記設定情報に基づいて、前記ダミーデータを削除することを特徴とするデータ転送制御装置。
In any one of Claims 1 thru | or 5,
Setting information for setting the M and N is inserted in the header of the packet received via the serial bus,
The link controller
A packet analysis circuit that analyzes a header of the received packet and extracts the setting information from the packet header;
The data formatter is:
A data transfer control device, wherein the dummy data is deleted based on the setting information.
請求項1乃至6のいずれかに記載のデータ転送制御装置と、
前記システムバスを介して前記データ転送制御装置に接続される前記ホストデバイスとを含むことを特徴とする電子機器。
A data transfer control device according to any one of claims 1 to 6;
An electronic apparatus comprising: the host device connected to the data transfer control device via the system bus.
JP2007069414A 2007-03-16 2007-03-16 Data transfer control device and electronic device Expired - Fee Related JP4725541B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007069414A JP4725541B2 (en) 2007-03-16 2007-03-16 Data transfer control device and electronic device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007069414A JP4725541B2 (en) 2007-03-16 2007-03-16 Data transfer control device and electronic device

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2005086187A Division JP4207912B2 (en) 2005-03-24 2005-03-24 Data transfer control device and electronic device

Publications (2)

Publication Number Publication Date
JP2007179572A true JP2007179572A (en) 2007-07-12
JP4725541B2 JP4725541B2 (en) 2011-07-13

Family

ID=38304637

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007069414A Expired - Fee Related JP4725541B2 (en) 2007-03-16 2007-03-16 Data transfer control device and electronic device

Country Status (1)

Country Link
JP (1) JP4725541B2 (en)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001222249A (en) * 1999-11-29 2001-08-17 Seiko Epson Corp Ram incorporated driver, display unit using the driver and electronic equipment
JP2004139431A (en) * 2002-10-18 2004-05-13 Seiko Epson Corp Method and device for controlling data transfer and display device

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001222249A (en) * 1999-11-29 2001-08-17 Seiko Epson Corp Ram incorporated driver, display unit using the driver and electronic equipment
JP2004139431A (en) * 2002-10-18 2004-05-13 Seiko Epson Corp Method and device for controlling data transfer and display device

Also Published As

Publication number Publication date
JP4725541B2 (en) 2011-07-13

Similar Documents

Publication Publication Date Title
JP4207912B2 (en) Data transfer control device and electronic device
US7600061B2 (en) Data transfer control device and electronic instrument
JP3786120B2 (en) Data transfer control device and electronic device
JP4428272B2 (en) Display driver and electronic device
US7617347B2 (en) Data transfer control device and electronic instrument
US8127056B2 (en) Data transfer control device including a switch circuit that switches write destination of received packets
JP3835459B2 (en) Data transfer control device and electronic device
US7630375B2 (en) Data transfer control device and electronic instrument having reduced power consumption
JP4924560B2 (en) Data transfer control device and electronic device
US20080263241A1 (en) Data transfer control device and electronic instrument
JP4725541B2 (en) Data transfer control device and electronic device
JP2007183668A (en) Display driver and electronic equipment
JP4661810B2 (en) Data transfer control device and electronic device

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080318

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20101207

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110207

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20110315

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110328

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140422

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees