JP2008117289A - Data communication system, unit and data communication method - Google Patents

Data communication system, unit and data communication method Download PDF

Info

Publication number
JP2008117289A
JP2008117289A JP2006301791A JP2006301791A JP2008117289A JP 2008117289 A JP2008117289 A JP 2008117289A JP 2006301791 A JP2006301791 A JP 2006301791A JP 2006301791 A JP2006301791 A JP 2006301791A JP 2008117289 A JP2008117289 A JP 2008117289A
Authority
JP
Japan
Prior art keywords
subunit
data
usb
main unit
unit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2006301791A
Other languages
Japanese (ja)
Other versions
JP5030538B2 (en
Inventor
Makoto Kusakari
真 草刈
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.)
Ricoh Co Ltd
Original Assignee
Ricoh Co Ltd
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 Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP2006301791A priority Critical patent/JP5030538B2/en
Publication of JP2008117289A publication Critical patent/JP2008117289A/en
Application granted granted Critical
Publication of JP5030538B2 publication Critical patent/JP5030538B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To provide a data communication system, a unit and a data communication method, executing data communication based on the USB specification between an information processor and a peripheral device. <P>SOLUTION: This data communication system 10 comprises a main unit 20 and at least one subunit 50, and executes the data communication with the external device by the USB protocol. The main unit has: a function provision means 40 for providing a function as a USB device; and a data flow control means 46 controlling data transmission with the subunit 50. The subunit 50 has: a USB device provision means 80; a bus interface provision means 82 executing signal transmission with the external device; and a data exchange means with the main unit. <P>COPYRIGHT: (C)2008,JPO&INPIT

Description

本発明は、ユニバーサル・シリアル・バス(USB)技術に関し、より詳細には、情報処理装置と周辺機器との間のUSB規格に準拠したデータ通信を実行するデータ通信システム、ユニットおよびデータ通信方法に関する。   The present invention relates to universal serial bus (USB) technology, and more particularly, to a data communication system, a unit, and a data communication method for executing data communication conforming to the USB standard between an information processing apparatus and a peripheral device. .

現在、多くのパーソナル・コンピュータ(PC)などの情報処理装置には、周辺機器を接続するためのインタフェースとして、ユニバーサル・シリアル・バス(USB)インタフェースが標準的に備えられている。また近年、USBの物理層に無線通信技術を適用したワイヤレスUSB(WUSB)規格も提案されている。   Currently, many information processing apparatuses such as personal computers (PCs) are typically equipped with a universal serial bus (USB) interface as an interface for connecting peripheral devices. In recent years, a wireless USB (WUSB) standard in which a wireless communication technology is applied to a USB physical layer has also been proposed.

USBプロトコルにおいては、USBホストとUSBデバイスとの間の通信は、3層モデルを用いて説明される。すなわち、USBシステムは、(1)ホスト−デバイス間の有線や無線による物理的な伝送信号を制御するUSBバス・インタフェース層と、(2)USBホストとUSBデバイスとの通信における、論理的なデータ伝送の端点を提供し管理するUSBデバイス層と、(3)USBホスト上で実行されるクライアント・ソフトウェアと、USBデバイスのファンクションとの論理的な通信を提供するファンクション層とから構成される。   In the USB protocol, communication between a USB host and a USB device is described using a three-layer model. That is, the USB system includes (1) a USB bus interface layer for controlling a wired or wireless physical transmission signal between the host and the device, and (2) logical data in communication between the USB host and the USB device. It comprises a USB device layer that provides and manages transmission endpoints, and (3) client software executed on the USB host, and a function layer that provides logical communication with USB device functions.

PCなどのUSBホストと、周辺機器などのUSBデバイスとは、USBホスト側の通信バッファと、USBデバイス側のエンドポイント(同じく通信用バッファで、第2層に位置する)との論理的な通信路(パイプ)により接続され、第3層においては、USBホスト側のクライアント・ソフトウェアとUSBデバイス側のファンクションとは、少なくとも1つのパイプから構成されるパイプ・バンドル(インタフェースを構成)を介して論理的な通信を行い、周辺機器の各種デバイス機能がUSBホストに提供される。   Logical communication between a USB host such as a PC and a USB device such as a peripheral device between a communication buffer on the USB host side and an endpoint on the USB device side (also a communication buffer and located on the second layer) In the third layer, the client software on the USB host side and the function on the USB device side are logically connected via a pipe bundle (which constitutes an interface) composed of at least one pipe. Various device functions of peripheral devices are provided to the USB host.

またUSBホストは、ハブを介して複数のUSBデバイスと一対多で接続され、バス上のデータ転送は、USBホスト上の第2層に対応するUSBシステム・ソフトウェアによって制御されている。USBホストによる集中制御形式を採用しているため、USBデバイスは、単一のUSBホストによって制御され、複数のUSBホストによって同時的に共用されることはできなかった。   The USB host is connected to a plurality of USB devices in a one-to-many manner via a hub, and data transfer on the bus is controlled by USB system software corresponding to the second layer on the USB host. Since the centralized control format by the USB host is adopted, the USB device is controlled by a single USB host and cannot be shared simultaneously by a plurality of USB hosts.

USBデバイスを複数のUSBホスト間で共用させることができると利便性が向上することから、例えば、特開2004−295407号公報(特許文献1)は、上流側コネクタに接続される複数のホストPCの状態を優先度に基づいて監視する接続状態監視CPUと、接続状態監視CPUにより下流側コネクタに接続するホストを切り換えるセレクタとを備えたUSBハブ装置が開示している。   For example, Japanese Patent Application Laid-Open No. 2004-295407 (Patent Document 1) discloses a plurality of host PCs connected to an upstream connector because a USB device can be shared among a plurality of USB hosts. A USB hub device is disclosed that includes a connection state monitoring CPU that monitors the state of the device based on priority, and a selector that switches the host connected to the downstream connector by the connection state monitoring CPU.

しかしながら、上述した従来技術では、上流側ポートの接続状態を監視し、ホスト機器の電源がオフ(あるいは未接続)、またはサスペンド状態となっているかを判断して、上流側ポートと下流側ポートの電気的な接続を切換えるものであり、USBデバイスが同時的に複数のUSBホストにより論理的に認識されるというものではなく、利便性の点から充分なものではなかった。
特開2004−295407号公報
However, in the above-described conventional technology, the connection state of the upstream port is monitored, and it is determined whether the power of the host device is off (or not connected) or is in the suspended state. The electrical connection is switched, and the USB device is not logically recognized simultaneously by a plurality of USB hosts, and is not sufficient in terms of convenience.
JP 2004-295407 A

本発明は上記従来技術に鑑みてなされたものであり、複数のUSBホストに接続および認識され、複数のUSBホストから要求に応答して処理を実行し、USB装置間の自由度の高いデータフローを提供するデータ通信システム、ユニットおよびデータ通信方法を提供することを目的とする。   The present invention has been made in view of the above prior art, and is connected to and recognized by a plurality of USB hosts, executes a process in response to a request from a plurality of USB hosts, and has a high degree of freedom between USB devices. It is an object to provide a data communication system, a unit, and a data communication method.

また、本発明の他の目的は、簡易な操作でUSBの中継器として機能させることができ、USB装置間の自由度の高いデータフロー制御を可能とするデータ通信システム、ユニットおよびデータ通信方法を提供することを目的とする。   Another object of the present invention is to provide a data communication system, a unit, and a data communication method that can function as a USB repeater with a simple operation and enable highly flexible data flow control between USB devices. The purpose is to provide.

本発明は、上記課題を解決するために、USBホストやUSBデバイスとしてのファンクションを提供するファンクション提供手段を含むメインユニットと、外部装置との論理的な通信路を提供するUSBデバイス提供手段および無線または有線による外部装置との実質的な通信を実行するUSBバス・インタフェース提供手段とを含むサブユニットとからなる、データ通信システムという構成を採用する。メインユニットは、少なくとも1つのサブユニットと電気的・論理的に接続され、各サブユニットと接続される外部装置とは、各サブユニットのUSBデバイス提供手段によって提供される論理的な通信路を介して接続される。メインユニットは、サブユニットを識別し、メインユニット−サブユニット間またはメインユニットを介したサブユニット間のデータ伝送は、データフロー制御手段によって制御される。   In order to solve the above-described problems, the present invention provides a USB device providing unit and a wireless communication unit that provide a logical communication path between a main unit including a function providing unit that provides a function as a USB host or USB device, and an external device. Alternatively, a configuration called a data communication system including a subunit including a USB bus interface providing unit that performs substantial communication with a wired external device is adopted. The main unit is electrically and logically connected to at least one subunit, and the external device connected to each subunit is connected via a logical communication path provided by the USB device providing means of each subunit. Connected. The main unit identifies the subunit, and data transmission between the main unit and the subunit or between the subunits via the main unit is controlled by the data flow control means.

上記構成により、例えば、デバイス機能を備えるメインユニットは、サブユニットを介して複数のUSBホストとしての外部装置と接続されて、同時的に各外部装置によって論理的に認識されることが可能となる。メインユニットは、サブユニットを識別することにより要求の送信元を特定し、メインユニットは、各サブユニットからの要求に応答して処理を実行し、複数の外部装置によるデバイス機能の共用を可能とする。また、メインユニットと、複数のサブユニットとの間のデータフローを制御する構成によって、サブユニットに接続される外部装置間の多様な接続様式を提供する中継器としても機能させることが可能となる。   With the above configuration, for example, a main unit having a device function is connected to an external device as a plurality of USB hosts via a subunit, and can be logically recognized simultaneously by each external device. . The main unit identifies the transmission source of the request by identifying the subunit, and the main unit executes processing in response to the request from each subunit, allowing device functions to be shared by multiple external devices. To do. In addition, the configuration for controlling the data flow between the main unit and the plurality of subunits makes it possible to function as a repeater that provides various connection modes between external devices connected to the subunits. .

すなわち本発明によれば、メインユニットと、少なくとも1つのサブユニットとから構成され、外部装置とUSBプロトコルによるデータ通信を実行するデータ通信システムであって、
前記メインユニットは、
USB装置としての機能を提供するためのファンクション提供手段と、前記サブユニットを識別して前記サブユニットとの間のデータ伝送を制御するデータフロー制御手段とを備え、
前記サブユニットは、
前記外部装置との信号伝送を実行するバス・インタフェース提供手段と、前記データフロー制御手段による調停を受けるUSBデバイス提供手段と、前記メインユニットとのデータ交換手段とを備える、
データ通信システムが提供される。
That is, according to the present invention, there is provided a data communication system that includes a main unit and at least one subunit, and executes data communication with an external device using a USB protocol.
The main unit is
A function providing means for providing a function as a USB device; and a data flow control means for identifying the subunit and controlling data transmission with the subunit;
The subunit is
A bus interface providing means for executing signal transmission with the external device, a USB device providing means for receiving arbitration by the data flow control means, and a data exchanging means with the main unit.
A data communication system is provided.

前記USBデバイス提供手段は、USBホストとしての前記外部装置との論理的通信路を確立するためのエンドポイントを提供し、前記データ交換手段は、前記エンドポイントと前記メインユニットとの間のデータ交換を実行することができる。また、前記データフロー制御手段は、データの送信元または送信先の前記サブユニットを識別し、前記外部装置からの処理要求または外部指令に応じて前記サブユニットとの間の前記データ伝送を制御することができる。   The USB device providing means provides an endpoint for establishing a logical communication path with the external device as a USB host, and the data exchange means exchanges data between the endpoint and the main unit. Can be executed. The data flow control means identifies the data transmission source or transmission destination subunit, and controls the data transmission with the subunit in response to a processing request or an external command from the external device. be able to.

また本発明によれば、少なくとも1つのサブユニットを装着するためのスロットを備え、外部装置とUSBプロトコルによるデータ通信を実行可能とするメインユニットであって、
前記メインユニットは、
USB装置としての機能を提供するためのファンクション提供手段と、前記外部装置からの処理要求または外部指令に応じて、前記サブユニットとの間のデータ伝送を制御するデータフロー制御手段とを備える
メインユニットが提供される。
According to the present invention, there is provided a main unit including a slot for mounting at least one subunit, and capable of executing data communication with an external device using a USB protocol,
The main unit is
A main unit comprising function providing means for providing a function as a USB device, and data flow control means for controlling data transmission with the subunit in response to a processing request or an external command from the external device Is provided.

前記メインユニットは、複数の前記スロットを離間して配設することができる。   The main unit may be arranged with a plurality of the slots apart from each other.

さらに本発明によれば、
USB装置としての機能を提供するためのメインユニットに装着され、外部装置とUSBプロトコルによるデータ通信を実行可能とするサブユニットであって、
前記サブユニットは、
前記外部装置との信号伝送を実行するバス・インタフェース提供手段と、USBデバイス提供手段と、前記メインユニットとのデータ交換手段とを備える、サブユニットが提供される。
Furthermore, according to the present invention,
A subunit that is attached to a main unit for providing a function as a USB device, and that can execute data communication with an external device using a USB protocol,
The subunit is
A subunit comprising a bus interface providing means for executing signal transmission with the external device, a USB device providing means, and a data exchanging means with the main unit is provided.

前記USBデバイス提供手段は、USBホストとしての前記外部装置との論理的通信路を確立するためのエンドポイントを提供し、前記データ交換手段は、前記エンドポイントと前記メインユニットとの間のデータ交換を実行することができる。また、前記サブユニットは、外部指令に応じて、前記メインユニットとの間のデータ伝送を制御するデータフロー制御手段を備えることができる。さらに、前記サブユニットは、指向性アンテナを備えることができる。前記サブユニットは、データフローを切換えるための外部指令を受付ける指示手段を含むことができる。   The USB device providing means provides an endpoint for establishing a logical communication path with the external device as a USB host, and the data exchange means exchanges data between the endpoint and the main unit. Can be executed. The subunit may include data flow control means for controlling data transmission with the main unit in response to an external command. Furthermore, the subunit may comprise a directional antenna. The subunit may include instruction means for receiving an external command for switching data flow.

本発明によれば、さらに、
メインユニットと少なくとも1つのサブユニットとから構成されるデータ通信システムと、外部装置とのUSBプロトコルによるデータ通信方法であって、
前記データ通信方法は、
前記サブユニットと前記外部装置との論理的通信路を確立するステップと、
前記論理的通信路を介して、USBプロトコルにしたがいデータを転送するステップと、
前記サブユニットを識別可能に、前記サブユニットと前記メインユニットとの前記データの交換を実行するステップと
を含む、データ通信方法が提供される。
According to the invention,
A data communication method using a USB protocol between a data communication system including a main unit and at least one subunit and an external device,
The data communication method includes:
Establishing a logical communication path between the subunit and the external device;
Transferring data according to the USB protocol via the logical communication path;
Performing a data exchange between the subunit and the main unit so that the subunit can be identified.

前記データ通信方法は、前記データに応答した要求処理を実行するステップと、
前記要求処理または外部指令に応答して、前記データの交換を制御するステップとを含むことができる。
The data communication method includes executing a request process in response to the data;
Controlling the exchange of data in response to the request processing or an external command.

以下、本発明を図面に示した実施形態をもって説明するが、本発明は、図面に示した実施形態に限定されるものではない。   The present invention will be described below with reference to embodiments shown in the drawings, but the present invention is not limited to the embodiments shown in the drawings.

図1は、メインユニットとサブユニットを含み構成されるデータ通信システム10のハードウェア構成の実施形態を示すブロック図である。なお図1は、データ通信システム10が、画像形成装置としての機能する場合の一実施形態を示している。データ通信システム10は、メインユニット20と、サブユニットA50aと、サブユニットB50bとを含み構成される。メインユニット20は、CPU22と、ROM24と、メモリ26とを備えており、それぞれ内部バス38で相互接続されて、ユーザ指令されたジョブを実行している。CPU22は、処理プログラムをROM24やNVRAM、EEPROM、EPROM、ハードディスクなどの記憶装置32からメモリ26に読み出し、展開し、指令されたジョブのための処理を実行する。   FIG. 1 is a block diagram illustrating an embodiment of a hardware configuration of a data communication system 10 including a main unit and subunits. FIG. 1 shows an embodiment in which the data communication system 10 functions as an image forming apparatus. The data communication system 10 includes a main unit 20, a subunit A 50a, and a subunit B 50b. The main unit 20 includes a CPU 22, a ROM 24, and a memory 26, which are interconnected by an internal bus 38 and execute a job instructed by a user. The CPU 22 reads out the processing program from the storage device 32 such as the ROM 24, NVRAM, EEPROM, EPROM, or hard disk to the memory 26, expands it, and executes processing for the commanded job.

メインユニット20は、操作部28および表示部30を備え、操作部28および表示部30は、それぞれCPU22へと内部バス38を介して接続され、ユーザ・インタフェースを提供する。メインユニット20は、さらに内部バス38に接続されるインタフェース(I/F)36を含み構成され、シリアル・バスおよびパラレル・バスとして構成される接続バス12を介して接続されるサブユニット50との入出力を管理している。プリンタ34は、サブユニット50と通信するUSBホスト(以下、有線・無線のプロトコルにかかわらず、USBプロトコル上のホストとなる外部装置をUSBホストとして参照する。)からの要求を、インタフェース36を介し受信して、CPU22による制御のもとで、印刷処理などの画像形成装置としてのデバイス処理を実行し、通信するUSBホストにデバイス機能を提供している。すなわちメインユニット20は、WUSBプロトコルにおけるファンクション層に対応する、デバイス機能を実行するためのソフトウェアおよびハードウェア処理を提供する。   The main unit 20 includes an operation unit 28 and a display unit 30. The operation unit 28 and the display unit 30 are each connected to the CPU 22 via an internal bus 38 and provide a user interface. The main unit 20 further includes an interface (I / F) 36 connected to the internal bus 38, and is connected to the subunit 50 connected via the connection bus 12 configured as a serial bus and a parallel bus. I / O is managed. The printer 34 sends a request from the USB host (hereinafter referred to as an external device that is a host on the USB protocol as a USB host regardless of wired / wireless protocol) via the interface 36 to communicate with the subunit 50. It receives the data, executes device processing as an image forming apparatus such as print processing under the control of the CPU 22, and provides a device function to the communicating USB host. That is, the main unit 20 provides software and hardware processing for executing device functions corresponding to the function layer in the WUSB protocol.

サブユニットA50aは、コントローラ52と、メモリ54と、無線通信部56とを備えており、それぞれ内部バスで接続されて、USBホストAと、UWB(Ultra Wide Band)通信プロトコルをベースとしたワイヤレスUSBプロトコルに準拠した通信リンクを確立している。無線通信部56は、アンテナ64と接続し、UWB高周波回路を含む物理層(UWB
RF PHY)62と、UWBBaseBand回路を含む物理層(UWB BB PHY)60とを含み構成される。UWB−BB物理層60は、おもに信号の変調・復調処理を行い、UWB−RF物理層62は、高周波信号の波形整形などを行い、これらは、マルチバンドOFDM(Multi-band
Orthogonal Frequency Division Multiplexing)方式またはDS−UWB(Direct Sequence UWB)などのIEEE802.15TG3aなどに準拠した通信プロトコルに従った物理層を構成する。
The subunit A 50a includes a controller 52, a memory 54, and a wireless communication unit 56, which are connected by an internal bus, respectively, and a USB host A and a wireless USB based on a UWB (Ultra Wide Band) communication protocol. A communication link that conforms to the protocol is established. The wireless communication unit 56 is connected to the antenna 64 and includes a physical layer (UWB) including a UWB high frequency circuit.
RF PHY) 62 and a physical layer (UWB BB PHY) 60 including a UWBBaseBand circuit. The UWB-BB physical layer 60 mainly performs signal modulation / demodulation processing, and the UWB-RF physical layer 62 performs waveform shaping of a high-frequency signal.
A physical layer is configured in accordance with a communication protocol conforming to IEEE 802.15TG3a such as Orthogonal Frequency Division Multiplexing (DS) or DS-UWB (Direct Sequence UWB).

サブユニットA50aは、NVRAM58を含み構成され、NVRAM58は、USBホストとのワイヤレスUSB通信を行うための接続コンテキストを格納し、接続先USBホストを識別し、通信データの暗号化・復号化処理の際に用いられる。サブユニットA50aのメモリ54は、接続先のUSBホストAやメインユニット20からの伝送データをバッファリングし、USBプロトコルにおけるエンドポイントを提供する。またメモリ54には、USBホストAから割当てられるデバイス・アドレスや、メインユニット20から割当てられるユニット識別値などの各種設定情報が格納される。   The subunit A 50a includes an NVRAM 58. The NVRAM 58 stores a connection context for performing wireless USB communication with a USB host, identifies a connection destination USB host, and performs encryption / decryption processing of communication data. Used for. The memory 54 of the subunit A 50a buffers transmission data from the connected USB host A or the main unit 20, and provides an endpoint in the USB protocol. The memory 54 stores various setting information such as a device address assigned from the USB host A and a unit identification value assigned from the main unit 20.

コントローラ52は、MAC(媒体アクセス制御)層66を含み、接続先USBホストAとのWUSBプロトコルのデータリンク層に相当する制御を行う。すなわち、サブユニット50は、WUSBプロトコルにおけるWUSBバス・インタフェース層およびWUSB論理デバイス層に対応するソフトウェア処理およびハードウェア処理を提供する。さらに、コントローラ52は、接続バス12を介してメインユニット20と接続されるインタフェース68と接続し、メインユニット20とのデータ伝送を制御する。   The controller 52 includes a MAC (medium access control) layer 66 and performs control corresponding to the data link layer of the WUSB protocol with the connection destination USB host A. That is, the subunit 50 provides software processing and hardware processing corresponding to the WUSB bus interface layer and the WUSB logical device layer in the WUSB protocol. Further, the controller 52 is connected to an interface 68 connected to the main unit 20 via the connection bus 12 and controls data transmission with the main unit 20.

また、メインユニット20に接続される他方のサブユニットB50bも、サブユニットA50aと同様の構成とされ、メインユニット20ともインタフェースを介して接続され、USBホストBと、ワイヤレスUSB通信を行っている。サブユニットA50aおよびサブユニット50bは、それぞれ接続先のUSBホストから、独立にデバイス・アドレスが割当てられ、メインユニット20からは、唯一のユニット識別値が割当てられて識別される。なお、メインユニット20に接続されるサブユニット50の数は、特に限定されるものではない。また、上述ではWUSB通信による実施形態を示したが、他の実施形態では、有線のUSB1.xやUSB2.0の規格に準拠した物理層およびMAC層を備える構成とし、サブユニット50とUSBホストとを有線接続としてもよい。   The other subunit B 50b connected to the main unit 20 has the same configuration as that of the subunit A 50a, is also connected to the main unit 20 via an interface, and performs wireless USB communication with the USB host B. Each of the subunit A 50a and the subunit 50b is assigned a device address independently from the connected USB host, and is identified by being assigned a unique unit identification value from the main unit 20. The number of subunits 50 connected to the main unit 20 is not particularly limited. Moreover, although the embodiment by the WUSB communication has been described above, in other embodiments, the wired USB 1. The physical layer and the MAC layer conforming to the x and USB 2.0 standards may be provided, and the subunit 50 and the USB host may be connected by wire.

図2は、メインユニットとサブユニットとを含み構成されるデータ通信システム10の機能構成の実施形態を示すブロック図である。データ通信システム10は、メインユニット20と、サブユニット50aと、サブユニット50bとを含み構成される。メインユニット20は、少なくともひとつのファンクション提供手段40を含み、通信相手となるUSBホストにデバイス機能を提供している。   FIG. 2 is a block diagram showing an embodiment of a functional configuration of the data communication system 10 configured to include a main unit and a subunit. The data communication system 10 includes a main unit 20, a subunit 50a, and a subunit 50b. The main unit 20 includes at least one function providing unit 40 and provides a device function to a USB host that is a communication partner.

ファンクション提供手段40は、処理部41と、データフロー制御部46とを含み構成される。データフロー制御部46は、サブユニット50を介して要求される複数のUSBホストからの処理要求の衝突の調停などを行い、サブユニット−メインユニット間のデータフローを制御する。処理部41は、各USBホストからの処理要求に応答して、たとえば画像形成装置としての印刷処理などの各種処理を実行する。なお、接続されているサブユニット50を識別するためのユニット識別値は、ユニット識別値記憶部48に格納され管理される。   The function providing unit 40 includes a processing unit 41 and a data flow control unit 46. The data flow control unit 46 arbitrates processing request collisions from a plurality of USB hosts requested via the subunit 50, and controls the data flow between the subunit and the main unit. The processing unit 41 executes various processes such as a printing process as an image forming apparatus in response to a processing request from each USB host. The unit identification value for identifying the connected subunit 50 is stored and managed in the unit identification value storage unit 48.

ファンクション提供手段40は、実行待ちの処理を管理するためのジョブキュー記憶部44を含み、データフロー制御部46は、サブユニット50を介したUSBホストからの処理要求を受信し、ジョブ(処理要求)と要求元サブユニット50に割当てられたユニット識別値とを組にして、例えば、処理要求の先着順にジョブキューにエントリする。データフロー制御部46は、エントリ順に、処理に必要なデータをサブユニット50から取得し、処理部41は、データフロー制御部46からデータを受取り、ジョブキューのエントリ順に処理を実行する。例えば印刷処理など、一連の印刷データを受信することが好ましい処理にあっては、データフロー制御部46は、一連の印刷データの受信が完了するまでの間、ジョブ進行中のサブユニット50からの印刷データの読込およびバッファリングを優先して実行する制御とすることができる。また、他の実施形態では、一方のUSBホストからの印刷ジョブを実行中は、他のUSBホストに作業中である旨を通知するデータフロー制御としても良い。   The function providing unit 40 includes a job queue storage unit 44 for managing a process waiting for execution, and the data flow control unit 46 receives a processing request from the USB host via the subunit 50 and receives a job (processing request). ) And the unit identification value assigned to the requesting subunit 50, for example, are entered in the job queue in the order of arrival of processing requests. The data flow control unit 46 acquires data necessary for processing from the subunit 50 in the order of entry, and the processing unit 41 receives data from the data flow control unit 46 and executes processing in the order of entry in the job queue. In a process that preferably receives a series of print data, such as a print process, the data flow control unit 46 waits for completion of reception of a series of print data from the subunit 50 in progress of the job. It is possible to control the print data reading and buffering with priority. In another embodiment, while a print job from one USB host is being executed, data flow control for notifying that another USB host is working may be used.

メインユニット20のデバイス機能として、例えば、ランダムアクセスが可能なストレージ機能を提供する他の実施形態では、両方のサブユニット50からのデータ(ファイルの断片としての)書込要求やデータ読出要求ごとに順次ジョブキューにエントリし、逐次、サブユニット50からデータを読込んで、フラッシュメモリやHDDなどの記憶装置に書込み、または記憶装置から読出してサブユニット50に受け渡す制御としてもよい。   As another example of a device function of the main unit 20 that provides a storage function capable of random access, for each data write request or data read request from both subunits 50 (as a file fragment), It is also possible to perform control that sequentially enters the job queue, sequentially reads data from the subunit 50, writes it to a storage device such as a flash memory or HDD, or reads it from the storage device and transfers it to the subunit 50.

また他の実施形態では、メインユニット20のデバイス機能として、スピーカやディスプレイなどの出力インタフェース機能を提供する場合では、要求の先着順や、USBホストや操作部28により指定されたUSBホストによって、排他的に利用される制御としてもよい。さらに他の実施形態では、メインユニット20のデバイス機能として、キーボードなどの入力インタフェース機能を提供する場合では、各サブユニット50と通信するUSBホストからのポーリングに応じて、状態を通知(インタラプト転送モード)する制御としてもよい。複数のUSBホストからの処理要求の調停処理およびデータフロー制御の方法は、特に限定されるものではなく、提供するデバイス機能に応じた方法を採用することができる。   In another embodiment, when an output interface function such as a speaker or a display is provided as a device function of the main unit 20, it is excluded depending on the first-come-first-served order of requests or a USB host or a USB host specified by the operation unit 28. It is good also as control utilized automatically. In another embodiment, when an input interface function such as a keyboard is provided as a device function of the main unit 20, a status is notified according to polling from a USB host communicating with each subunit 50 (interrupt transfer mode). Control may be performed. The method for arbitrating processing requests from a plurality of USB hosts and the data flow control method are not particularly limited, and a method according to the device function to be provided can be employed.

図2に示した実施形態では、また、メインユニット20のファンクション提供手段40は、デバイス情報格納部42を含み構成され、各サブユニット50と通信するUSBホストとのエニュメレーション(接続開始時の初期設定)の際に、自身のデバイス情報を各USBホストへ通知してUSB通信を確立するための情報を格納する。このような情報としては、デバイス・ディスクリプタ、コンフィギュレーション・ディスクリプタ、インタフェース・ディスクリプタ、エンドポイントディスクリプタなどがあり、USBプロトコルで使用されるデバイス情報である。   In the embodiment shown in FIG. 2, the function providing unit 40 of the main unit 20 includes a device information storage unit 42, and enumeration with a USB host communicating with each subunit 50 (at the start of connection). At the time of initial setting), the device information of itself is notified to each USB host, and information for establishing USB communication is stored. Such information includes a device descriptor, a configuration descriptor, an interface descriptor, an endpoint descriptor, and the like, and is device information used in the USB protocol.

一方、メインユニット20と接続されるサブユニット50は、設定記憶部70と、データ交換部72と、エンドポイント部74を含み構成される。設定記憶部70は、接続先のUSBホストから割当てられるデバイス・アドレスや、メインユニット20から割当てられるユニット識別値を格納する。エンドポイント部74は、コントロール制御用通信に用いられるエンドポイント・ゼロ76と、他のメッセージやデータを送受信するためのエンドポイントn(nは自然数を表し、送信用および受信用を含む複数のエンドポイントから構成される。)78とを含み構成される。なお、エンドポイント・ゼロ76およびエンドポイントn78は、各サブユニット50が備える、RAM(Random Access Memory)やFIFO(First In First Out)などのメモリ54の記憶領域により与えられ、メインユニット20と通信相手のUSBホストとの間を伝送するデータを一時的にバッファリングする。また、各エンドポイントには識別番号が割当てられている。   On the other hand, the subunit 50 connected to the main unit 20 includes a setting storage unit 70, a data exchange unit 72, and an endpoint unit 74. The setting storage unit 70 stores a device address assigned from the connected USB host and a unit identification value assigned from the main unit 20. The endpoint unit 74 includes an endpoint zero 76 used for communication for control control, and an endpoint n for transmitting / receiving other messages and data (n represents a natural number, and a plurality of endpoints including transmission and reception) 78). The endpoint zero 76 and the endpoint n78 are given by a storage area of a memory 54 such as a RAM (Random Access Memory) or a FIFO (First In First Out) provided in each subunit 50, and communicate with the main unit 20. Temporarily buffers data transmitted to or from the other USB host. Each endpoint is assigned an identification number.

エンドポイント・ゼロ76およびエンドポイントn78は、USBホストからのデータ伝送の端点として機能し、USBホストは、デバイス・アドレスとエンドポイント番号を指定してメッセージやデータの転送を行う。一方、メインユニット20のファンクション提供手段40も、エンドポイント番号を識別してメッセージやデータの送受信を行う。よって、USBホスト上のクライアント・ソフトウェアは、各エンドポイントを介して、デバイスのファンクション提供手段40との論理的な通信を実行する。なお、USBホスト上のバッファとエンドポイントとの論理的な結びつきによる論理的通信路は、一般に、パイプと呼称される。   The endpoint zero 76 and the endpoint n78 function as endpoints of data transmission from the USB host, and the USB host designates a device address and an endpoint number to transfer messages and data. On the other hand, the function providing means 40 of the main unit 20 also transmits and receives messages and data by identifying the endpoint number. Therefore, the client software on the USB host performs logical communication with the function providing means 40 of the device via each endpoint. Note that a logical communication path based on a logical connection between a buffer and an endpoint on a USB host is generally called a pipe.

データ交換部72は、USBホストからのメッセージやデータを受取った際にエンドポイント部74の各受信用エンドポイントにバッファリングされるメッセージやデータを読込み、設定記憶部70に格納されるユニット識別値および制御データを添付して、メインユニット20へ送信する処理の制御を実行する。データ転送が正常に完了した際には、該エンドポイントを再び受信可能状態に遷移させる。またデータ交換部72は、メインユニット20からのデータやメッセージを受取り、エンドポイント部74の指定された送信用エンドポイントに書込み処理を行う。なお、送信用エンドポイントに書き込まれたデータやメッセージは、コントローラ52の制御により読出され、USBホストへ転送される。   The data exchange unit 72 reads a message or data buffered at each receiving endpoint of the endpoint unit 74 when receiving a message or data from the USB host, and stores the unit identification value stored in the setting storage unit 70 And control of the process which attaches control data and transmits to the main unit 20 is performed. When the data transfer is normally completed, the end point is again shifted to the receivable state. In addition, the data exchange unit 72 receives data and messages from the main unit 20, and performs a writing process on the designated transmission endpoint of the endpoint unit 74. Note that data and messages written to the transmission end point are read under the control of the controller 52 and transferred to the USB host.

図3は、メインユニットに格納されるユニット識別値情報、およびサブユニットに格納される設定情報のデータ構造の実施形態を示す図である。図3(a)は、メインユニット20に格納されるユニット識別値情報の実施形態を示す。図3(a)に示した実施形態では、ユニット識別値情報100は、項目フィールド100aと、ユニット識別値をエントリするフィールド100bと、各サブユニットに接続されているUSB装置がUSBホストかUSBデバイスかをエントリする接続タイプ・フィールド100cとを含んで構成される。   FIG. 3 is a diagram illustrating an embodiment of a data structure of unit identification value information stored in the main unit and setting information stored in the subunit. FIG. 3A shows an embodiment of unit identification value information stored in the main unit 20. In the embodiment shown in FIG. 3A, the unit identification value information 100 includes an item field 100a, a field 100b for entering a unit identification value, and the USB device connected to each subunit is a USB host or a USB device. And a connection type field 100c for entering these.

メインユニット20が備えるサブユニット装着のための装着スロット数のレコードが用意され、ユニット識別値には装着順にエントリされてゆき、各装着スロットにサブユニット50が装着されているか否か、装着されている場合にはその識別値を管理している。このユニット識別値を、例えば、処理要求の調停の際に、優先順位としても使用することもできる。なお、サブユニットのタイプがホスト接続タイプかデバイス接続タイプかを登録するフィールド100cの有無は任意であり、USBホストが接続されるサブユニットが装着されることが前提のシステム構成であれば必ずしも要しない。   A record of the number of mounting slots for mounting the subunits included in the main unit 20 is prepared. The unit identification value is entered in the mounting order, and whether or not the subunit 50 is mounted in each mounting slot. If so, the identification value is managed. This unit identification value can also be used as a priority when, for example, processing requests are arbitrated. Note that the presence or absence of the field 100c for registering whether the subunit type is a host connection type or a device connection type is optional, and is not necessarily required if the system configuration is based on the assumption that a subunit to which a USB host is connected is attached. do not do.

図3(b)は、サブユニットA50aに格納される設定情報の実施形態を示す。図に示した実施形態では、設定情報110は、ユニット識別値をエントリするフィールド110aと、サブユニットA50aと通信しているUSBホストによって割当てられるデバイス・アドレスが登録されるフィールド110bとを含み構成される。また、フィールド110bは、USBホストとの通信が確立しているか否かの判断に用いることができ、デバイス・アドレスのエントリがあれば、USBホストとの通信が確立していると判断することができる。   FIG. 3B shows an embodiment of setting information stored in the subunit A 50a. In the embodiment shown in the figure, the setting information 110 includes a field 110a for entering a unit identification value and a field 110b for registering a device address assigned by a USB host communicating with the subunit A 50a. The The field 110b can be used to determine whether or not communication with the USB host has been established. If there is a device address entry, it can be determined that communication with the USB host has been established. it can.

図3(c)は、サブユニットB50bに格納される設定情報の実施形態を示し、同じく、ユニット識別値をエントリするフィールド120aと、デバイス・アドレスが登録されるフィールド120bとを含む。サブユニットA50aと、サブユニットB50bとは、各通信相手のUSBホストから独立してデバイス・アドレスが割当てられ、各サブユニットと通信する各USBホストは、デバイス・アドレスにより通信相手を特定している。一方、サブユニットA50aと、サブユニットB50bとは、メインユニット20から、同メインユニット20内において唯一のユニット識別値が付与され、特定される。   FIG. 3C shows an embodiment of setting information stored in the subunit B 50b, and similarly includes a field 120a for entering a unit identification value and a field 120b for registering a device address. The subunit A 50a and the subunit B 50b are assigned device addresses independently from the USB host of each communication partner, and each USB host that communicates with each subunit specifies the communication partner by the device address. . On the other hand, the subunit A 50 a and the subunit B 50 b are specified by being assigned a unique unit identification value from the main unit 20 within the main unit 20.

図4は、メインユニットにおけるサブユニットの認識処理の実施形態を示すフローチャートである。まず、ステップS100で、メインユニット20の電源オンやバスライン(有線USBの場合など)による電源供給を受けて起動し、処理を開始する。ステップS101で、メインユニット20は、サブユニットへの電源ラインにかかる負荷などを監視し、サブユニット50の新規装着の検出を試み、ステップS102で、新規装着が検出されたか否かの判断を行う。ステップS102の判断で、新規装着が検出されなかった場合には、再びステップS101へループさせ、新規装着を待受ける。   FIG. 4 is a flowchart showing an embodiment of subunit recognition processing in the main unit. First, in step S100, the main unit 20 is powered on and activated by receiving power from a bus line (in the case of wired USB, for example), and starts processing. In step S101, the main unit 20 monitors the load applied to the power supply line to the subunit, tries to detect new attachment of the subunit 50, and determines whether or not new attachment is detected in step S102. . If it is determined in step S102 that new attachment has not been detected, the process loops again to step S101 and waits for new attachment.

一方、ステップS102の判断で、新規サブユニット50の装着を検出した場合は、ステップS103へ処理を分岐し、メインユニット20は、接続されたサブユニット50にユニット識別値を割当てて、ユニット識別値情報100へエントリし、サブユニット50との初期設定を行い、各エンドポイントとの論理的な通信を可能とする。初期設定が完了した以降、ステップS104で、メインユニット20とサブユニット50との間で通信が可能となる。   On the other hand, if it is determined in step S102 that the attachment of the new subunit 50 is detected, the process branches to step S103, and the main unit 20 assigns a unit identification value to the connected subunit 50, and the unit identification value. Entry into the information 100 is performed and initial setting with the subunit 50 is performed to enable logical communication with each endpoint. After the initial setting is completed, communication between the main unit 20 and the subunit 50 becomes possible in step S104.

以下、メインユニットおよびサブユニットにUSBホストが接続される際の、デバイス初期設定の制御フローについて説明する。図5は、メインユニットおよびサブユニットと、USBホストとのデバイス初期設定(エニュメレーション)の実施形態を示すフローチャートである。図5に示した実施形態では、既にメインユニット20とサブユニット50とが電気的・論理的に接続されている状態を想定している。   Hereinafter, a control flow of device initial setting when a USB host is connected to the main unit and the subunit will be described. FIG. 5 is a flowchart illustrating an embodiment of device initialization (enumeration) between the main unit and the subunit and the USB host. In the embodiment shown in FIG. 5, it is assumed that the main unit 20 and the subunit 50 are already electrically and logically connected.

図5に示した制御は、ステップS200で、例えば、メインユニット20の操作部28からのオペレータから指示に応じて発行される接続指令を受けて処理が開始される。ステップS201では、サブユニット50は、USBホストに向けて接続要求を送信し、応答を受けて、ステップS202で、セキュリティ・エニュメレーションを開始して相互認証を行う。ステップS203では、USBホストからのGET_DISCRIPTORのコマンドに応答して、デバイス情報格納部に保存されている各種ディスクリプタをUSBホストに通知する。   The control shown in FIG. 5 is started in step S200 in response to a connection command issued in response to an instruction from the operator from the operation unit 28 of the main unit 20, for example. In step S201, the subunit 50 transmits a connection request to the USB host and receives a response. In step S202, the subunit 50 starts security enumeration and performs mutual authentication. In step S203, various descriptors stored in the device information storage unit are notified to the USB host in response to a GET_DISCRIPTOR command from the USB host.

ステップS204では、USBホストからのデバイス・アドレスの設定要求を受けて、サブユニット50は、自身の設定記憶部70へデバイス・アドレスを格納する。ステップS205ではさらに、USBホストからのSET_DESCRIPTORやSET_CONFIGURATIONといったコマンドを受けて、サブユニットやメインユニットは必要な設定処理を行い、USBデバイスとして稼働状態になる。そして、ステップS206で、USBホストとのデータ通信を開始する。なお、上述したエニュメレーション中における、ホスト−データ通信システム間の通信は、各サブユニット50のエンドポイント・ゼロ76から構成されるコントロール制御用の論理的な通信路であるデフォルト・パイプを用いて行うことが可能である。   In step S <b> 204, upon receiving a device address setting request from the USB host, the subunit 50 stores the device address in its own setting storage unit 70. Further, in step S205, upon receiving a command such as SET_DESCRIPTOR or SET_CONFIGURATION from the USB host, the sub unit and the main unit perform necessary setting processing, and enter the operating state as a USB device. In step S206, data communication with the USB host is started. Note that the communication between the host and the data communication system during the enumeration described above uses a default pipe which is a logical communication path for control control composed of the endpoint zero 76 of each subunit 50. Can be done.

図6は、メインユニットとサブユニットとの通信によって伝送される通信パケットのデータ構造の実施形態を示す。ユニット間パケット130は、ユニット識別値をエントリするフィールド130aと、エンドポイント番号をエントリするフィールド130bと、USBホストのクライアント・ソフトウェアとメインユニット20のファンクションとの間で交換されるデータをエントリするフィールド130cとを含み構成される。メインユニット20と、各サブユニット50との間では、ユニット間パケット130が交換され、ユニット識別値によってサブユニットが識別され、エンドポイント番号によってファンクション提供手段40のインタフェースが識別される。なお、メインユニット20とサブユニット50との通信は、メインユニット20が、送信元また送信先となるサブユニットを特定することができる限りにおいて、いかなる構成や方法によって実現することができる。   FIG. 6 shows an embodiment of a data structure of a communication packet transmitted by communication between the main unit and the subunit. The inter-unit packet 130 includes a field 130 a for entering a unit identification value, a field 130 b for entering an endpoint number, and a field for entering data exchanged between the client software of the USB host and the function of the main unit 20. 130c. The inter-unit packet 130 is exchanged between the main unit 20 and each subunit 50, the subunit is identified by the unit identification value, and the interface of the function providing means 40 is identified by the endpoint number. The communication between the main unit 20 and the subunit 50 can be realized by any configuration or method as long as the main unit 20 can specify the subunit that is the transmission source or the transmission destination.

以下、メインユニットおよびサブユニットによって構成されるUSBシステムにおけるデータフローについて説明する。図7は、メインユニットおよびサブユニットと、2つのUSBホストとを含むUSBシステムの概略構成、およびUSBシステムにおけるデータフローの実施形態を示す概略図である。図7に示した実施形態では、USBシステムは、データ通信システム10と、USBホストA90aと、USBホストB90bとを含んで形成されている。データ通信システム10は、メインユニット20と、メインユニットに接続されるサブユニット50aおよびサブユニット50bとを含み構成され、サブユニットA50aはUSBホストA90aと通信を行い、サブユニットB50bはUSBホストB90bと通信を行っている。   Hereinafter, a data flow in the USB system constituted by the main unit and the subunit will be described. FIG. 7 is a schematic diagram showing a schematic configuration of a USB system including a main unit and a subunit, and two USB hosts, and an embodiment of data flow in the USB system. In the embodiment shown in FIG. 7, the USB system is formed including a data communication system 10, a USB host A 90a, and a USB host B 90b. The data communication system 10 includes a main unit 20, a subunit 50a and a subunit 50b connected to the main unit, the subunit A 50a communicates with the USB host A 90a, and the subunit B 50b communicates with the USB host B 90b. We are communicating.

図に示した実施形態ではメインユニット20は、USBプロトコルにおけるファンクション層に対応するデバイス機能を提供するためのファンクション提供手段40を含み構成される。各サブユニット50は、USBデバイス層に対応するWUSB論理デバイス(USBデバイス提供手段)80aと、USBバス・インタフェース層に対応するWUSBバス・インタフェース(バス・インタフェース提供手段)82aとを含み構成されている。各サブユニット50のWUSBバス・インタフェース82は、USBホスト90とのワイヤレス通信による実質的な通信を実行している。WUSB論理デバイス80は、コントロール制御用通信に用いられるエンドポイント・ゼロ76と、他のメッセージやデータを送受信するためのエンドポイントn78とを含み構成される。   In the embodiment shown in the figure, the main unit 20 includes function providing means 40 for providing a device function corresponding to a function layer in the USB protocol. Each subunit 50 includes a WUSB logical device (USB device providing means) 80a corresponding to the USB device layer and a WUSB bus interface (bus interface providing means) 82a corresponding to the USB bus interface layer. Yes. The WUSB bus interface 82 of each subunit 50 executes substantial communication with the USB host 90 by wireless communication. The WUSB logical device 80 includes an endpoint zero 76 used for control control communication and an endpoint n78 for transmitting and receiving other messages and data.

WUSBバス・インタフェース82は、接続先のUSBホスト90から送信されたトークンやハンドシェークなどを含むトランザクション・グループのパケットをデコードし、必要に応じてACKやNAKといったハンドシェークをUSBホスト90へ応答する制御を実行する。またWUSBバス・インタフェース82は、接続先のUSBホスト90からのトランザクション・グループに含まれるデータを、エンドポイント・ゼロ76や受信用のエンドポイントn78へ書込み、エンドポイント・ゼロ76や送信用エンドポイントn78に格納されるデータを読出し、USBホスト90により管理されたスケジュールに従ったデータ転送を行っている。   The WUSB bus interface 82 decodes a transaction group packet including a token and a handshake transmitted from the connected USB host 90, and responds to the USB host 90 with a handshake such as ACK or NAK as necessary. Execute. The WUSB bus interface 82 writes data included in the transaction group from the connected USB host 90 to the endpoint zero 76 or the reception endpoint n78, and the endpoint zero 76 or the transmission endpoint. The data stored in n78 is read, and data transfer is performed according to the schedule managed by the USB host 90.

メインユニット20は、各サブユニット50と接続バス12を介して電気的に接続され、ファンクション提供手段40は、接続バス12を介して、各サブユニット50の各エンドポイントとのデータ交換を行い、エンドポイント・ゼロ76の読書き、送信用エンドポイントn78への書込み、および受信用エンドポイントn78からの読出し処理を実行する。   The main unit 20 is electrically connected to each subunit 50 via the connection bus 12, and the function providing means 40 exchanges data with each endpoint of each subunit 50 via the connection bus 12. Reading / writing of the endpoint zero 76, writing to the transmission endpoint n78, and reading from the reception endpoint n78 are executed.

なお、いくつかの同一の目的で用いられるエンドポイントn78が集合してインタフェースを構成し、例えば、メインユニット20がプリンタ機能を提供する場合には、プリンタ機能を提供するファンクション提供手段40には、印字コントロール用のインタフェースと、印刷データ受信用のインタフェースとを含み構成され、USBホスト90は、要求処理に応じたインタフェースとのデータ転送を行う。   It should be noted that some end points n78 used for the same purpose constitute an interface. For example, when the main unit 20 provides a printer function, the function providing means 40 for providing the printer function includes: The interface includes a print control interface and a print data reception interface, and the USB host 90 performs data transfer with the interface according to the request process.

一方、各USBホスト90は、ファンクション層に対応するクライアント・ソフトウェア92と、USBデバイス層に対応するWUSBシステム・ソフトウェア94と、USBバス・インタフェース層に対応するUSBホストコントローラ96とを含み構成される。USBホストコントローラ96は、サブユニット50とのトランザクション・グループを制御し、サブユニット50のWUSBバス・インタフェース82と、データおよびメッセージの交換を実行する。   On the other hand, each USB host 90 includes client software 92 corresponding to the function layer, WUSB system software 94 corresponding to the USB device layer, and a USB host controller 96 corresponding to the USB bus interface layer. . The USB host controller 96 controls a transaction group with the subunit 50 and exchanges data and messages with the WUSB bus interface 82 of the subunit 50.

USBシステム・ソフトウェア94は、USBホスト上のバッファ(メモリ26により構成される。)とサブユニット50の各エンドポイントとの論理的通信路(パイプ)の管理を行い、サブユニット50のエンドポイント・ゼロ76aとのコントロール制御用の論理的な接続であるデフォルト・パイプ84を用いて、メインユニット20およびサブユニット50が提供するデバイス機能を管理している。   The USB system software 94 manages a logical communication path (pipe) between a buffer (configured by the memory 26) on the USB host and each endpoint of the subunit 50, and the endpoint 50 of the subunit 50 Device functions provided by the main unit 20 and the subunit 50 are managed using a default pipe 84 that is a logical connection for control control with the zero 76a.

クライアント・ソフトウェア92は、サブユニット50のエンドポイントのセットと関連付けられるパイプ・バンドル86を用いて、メインユニット20のインタフェースを管理する。クライアント・ソフトウェア92は、デバイス機能を利用するために、I/Oリクエスト・パケット(IRPs)によって、USBホスト90上のバッファと、接続先サブユニット50の各エンドポイントとの間のデータ転送要求を行い、メインユニット20のファンクション提供手段40との通信を実行し、デバイス機能を利用している。   The client software 92 manages the interface of the main unit 20 using a pipe bundle 86 associated with the set of endpoints of the subunit 50. In order to use the device function, the client software 92 sends a data transfer request between the buffer on the USB host 90 and each endpoint of the connected subunit 50 by an I / O request packet (IRPs). Communication with the function providing means 40 of the main unit 20 is performed, and the device function is used.

すなわち、各USBホスト90のクライアント・ソフトウェア92は、接続するサブユニット50のエンドポイントn78とのデータ転送と、メインユニット20とサブユニット50の電気的・論理的な接続によるエンドポイントn78とファンクション提供手段40の通信とにより、メインユニット20のファンクション提供手段40へアクセスし、デバイス機能を利用することが可能となっている。その際は、ファンクション提供手段40は、ユニット識別値によって要求元を特定し、データフロー制御部46によるジョブ管理のもと、要求処理を実行し、デバイス機能を各USBホスト90へ提供することを可能としている。以下、データフロー制御部46におけるジョブ管理の実施形態について、ジョブ管理データのデータ構造を参照しながら説明する。   That is, the client software 92 of each USB host 90 provides data transfer with the endpoint n78 of the subunit 50 to be connected, and provides functions with the endpoint n78 by electrical and logical connection between the main unit 20 and the subunit 50. Through the communication of the means 40, it is possible to access the function providing means 40 of the main unit 20 and use the device function. In that case, the function providing means 40 specifies the request source by the unit identification value, executes the request processing under the job management by the data flow control unit 46, and provides the device function to each USB host 90. It is possible. Hereinafter, an embodiment of job management in the data flow control unit 46 will be described with reference to the data structure of job management data.

図8は、データ通信システムにおける要求処理の調停処理およびデータフロー制御に使用されるジョブ管理データのデータ構造の実施形態を示す図である。なお図8は、データ通信システム10が、画像形成装置として機能し、プリンタ処理を実行する場合の実施形態を例示している。図8に示した実施形態では、ジョブ管理データ140は、ジョブ番号をエントリするフィールド140aと、ユニット識別値をエントリするフィールド140bと、待ちジョブをエントリするフィールドとを含み構成される。   FIG. 8 is a diagram illustrating an embodiment of a data structure of job management data used for request processing arbitration processing and data flow control in the data communication system. FIG. 8 illustrates an embodiment in which the data communication system 10 functions as an image forming apparatus and executes printer processing. In the embodiment shown in FIG. 8, the job management data 140 includes a field 140a for entering a job number, a field 140b for entering a unit identification value, and a field for entering a waiting job.

ファンクション提供手段40のデータフロー制御部46は、例えば、印刷要求などの処理要求を受取り、ジョブキュー記憶部44で管理されているジョブ管理データ140へ、ジョブ番号順にエントリしてゆく。データフロー制御部46は、ジョブ管理データ140をルックアップし、ジョブ管理データ140のエントリ順に、要求処理に必要なデータを優先的に取得し、処理部41の作業状態を監視しながら、処理部41へ処理要求およびデータを受け渡す。処理部41は、受取ったジョブを実行して行き、必要に応じてデータフロー制御部46に処理応答を返す。データフロー制御部46は、ジョブの完了と共にエントリを削除および他エントリのジョブ番号の繰り下げ処理を実行する。   The data flow control unit 46 of the function providing unit 40 receives, for example, a processing request such as a print request and enters the job management data 140 managed by the job queue storage unit 44 in the order of job numbers. The data flow control unit 46 looks up the job management data 140, preferentially acquires data necessary for request processing in the order of entry of the job management data 140, and monitors the working state of the processing unit 41 while processing the processing unit 41 The processing request and data are transferred to 41. The processing unit 41 executes the received job and returns a processing response to the data flow control unit 46 as necessary. The data flow control unit 46 deletes the entry upon completion of the job and executes a process of decrementing the job number of the other entry.

図8に示した例では、ユニット識別値[1]のサブユニット50と通信しているUSBホストA90aから、印刷要求を受取り、ジョブ管理データ140のジョブ番号[1]に「印刷ジョブ1」がエントリされている。データフロー制御部46は、ジョブ管理データ140に従って、ユニット識別値[1]のサブユニット50からの印刷データを読込むために、エンドポイントからデータを取得して、処理部41に印刷処理の開始を指令する。ジョブ番号[1]の処理を開始した以降に受取った、ユニット識別値[1]のサブユニット50からの印刷ジョブ2およびユニット識別値[2]のサブユニット50からの印刷ジョブ1は、ジョブ管理データ140の下位にエントリされ、ジョブ番号[1]の印刷ジョブ1の実行の際に用いられる印刷データを全て取得してから、順次開始され処理されて行く。   In the example shown in FIG. 8, a print request is received from the USB host A 90a communicating with the subunit 50 having the unit identification value [1], and “print job 1” is set in the job number [1] of the job management data 140. Has been entered. In order to read the print data from the subunit 50 having the unit identification value [1] according to the job management data 140, the data flow control unit 46 acquires the data from the endpoint and instructs the processing unit 41 to start the printing process. To do. The print job 2 received from the subunit 50 having the unit identification value [1] and the print job 1 received from the subunit 50 having the unit identification value [2] received after starting the processing of the job number [1] are managed by the job management. After all of the print data that is entered in the lower part of the data 140 and is used when executing the print job 1 with the job number [1] is acquired, it is sequentially started and processed.

上位のジョブに関連するデータ取得が優先的に行われている間は、他のサブユニット50のデータ転送用エンドポイントからの読出処理を待機する。また、一方のサブユニット50からのデータ取得は、データ取得中のサブユニット50に対して、接続バスを優先的に使用させる制御とすることができる。待機中のサブユニット50は、データ転送要求を送付しているUSBホストに対して、NAKやNYETといった否定的なハンドシェークを応答し、USBホストからのデータ伝送を待機させる制御としている。   While the data acquisition related to the upper-level job is preferentially performed, the reading process from the data transfer endpoint of the other subunit 50 is awaited. In addition, data acquisition from one subunit 50 can be controlled such that the connection bus is preferentially used by the subunit 50 that is acquiring data. The waiting subunit 50 responds a negative handshake such as NAK or NYET to the USB host sending the data transfer request, and controls to wait for data transmission from the USB host.

論理デバイス層の機能手段を備える複数のサブユニット50と接続されるメインユニット20と、サブユニットを識別し、要求処理実行およびユニット間のデータフローを制御する手段を含む構成により、USBデバイスとしてのデータ通信システム10は、複数のUSBホストに同時にUSB論理デバイスとして認識され、要求元のUSBホストを識別して要求処理を実行することが可能となり、USBデバイスとしての利便性およびUSB装置間のデータフローの自由度を向上させることができる。この際は、USBホスト側のソフトウェアおよびハードウェア処理の改変を要求しない。また、データフロー制御手段を有する構成により、複数のUSBホストからの処理要求が衝突した場合であっても、円滑に各USBホストからの要求処理を実行することを可能とし、USBデバイスとしての利便性を向上させることができる。   As a USB device, the configuration includes a main unit 20 connected to a plurality of subunits 50 having functional means of the logical device layer, and means for identifying the subunits and controlling request processing execution and data flow between the units. The data communication system 10 is recognized as a USB logical device by a plurality of USB hosts at the same time, and can identify a requesting USB host and execute a request process. Convenience as a USB device and data between USB devices The degree of freedom of flow can be improved. In this case, no modification of software and hardware processing on the USB host side is requested. Further, the configuration having the data flow control means makes it possible to smoothly execute request processing from each USB host even when processing requests from a plurality of USB hosts collide, and it is convenient as a USB device. Can be improved.

また、メインユニット20とサブユニット50とに分離した構成とすることにより、使用環境に応じて、有線接続用のサブユニットとワイヤレス通信用のサブユニットとを使い分けて装着することが可能となり、余分な部品構成(例えば有線・有線の両方の接続に対応させるための構成)を低減させることを可能とする。   In addition, by separating the main unit 20 and the sub unit 50, it is possible to install the sub unit for wired connection and the sub unit for wireless communication separately according to the usage environment. It is possible to reduce a simple component configuration (for example, a configuration for supporting both wired and wired connections).

以上、メインユニット20およびサブユニット50からなるデータ通信システム10は、USBデバイスとしてのみとして機能する場合の実施形態について説明してきた。しかしながら、他の実施形態では、データ通信システム10は、USBOTG(USB On The Go)規格に準拠するデュアル・ロール・デバイス(つまりUSBホストおよびUSBデバイスの両方として同時に機能)として構成とすることもでき、さらに自由度の高いUSB装置間のデータフローを提供することができる。その際には、サブユニット50に、USBホストおよびUSBデバイスとして機能させるための制御を実行するOTGコントローラ、またはUSBホストとして機能させるためのホストコントローラを含む構成とすることができる。以下、メインユニットとサブユニットとの間の、より柔軟なデータフロー制御について説明する。   As described above, the data communication system 10 including the main unit 20 and the subunit 50 has been described as an embodiment in which the data communication system 10 functions only as a USB device. However, in other embodiments, the data communication system 10 can also be configured as a dual-role device that conforms to the USBOTG (USB On The Go) standard (ie, functions simultaneously as both a USB host and a USB device). Further, it is possible to provide a data flow between USB devices with a higher degree of freedom. In that case, the subunit 50 can be configured to include an OTG controller that executes control for functioning as a USB host and a USB device, or a host controller for functioning as a USB host. Hereinafter, more flexible data flow control between the main unit and the subunit will be described.

図9には、メインユニット20と、USBホストと通信するサブユニットA50aと、USBデバイス(以下、有線・無線のプロトコルにかかわらず、USBプロトコル上のデバイスとなる外部装置をUSBデバイスとして参照する。)と通信するサブユニットB50bとを含むデータ通信システム10の実施形態の概略構成が示されている。図に示した実施形態では、データ通信システム10は、メインユニット20と、USBホストと通信するサブユニットA50aと、USBデバイスと通信するサブユニットB50bとを含み構成される。メインユニット20は、ファンクション層の機能手段を実現するファンクション・モジュール43を含み構成される。各サブユニット50は、USBバス・インタフェース層の機能手段を実現するUSBバス・インタフェース・モジュール83と、USBデバイス層の機能手段を実現するUSBデバイス・モジュール81とを含み構成される。   In FIG. 9, a main unit 20, a subunit A 50a that communicates with a USB host, and a USB device (hereinafter, an external device that is a device on the USB protocol regardless of a wired / wireless protocol is referred to as a USB device. ) Shows a schematic configuration of an embodiment of the data communication system 10 including a subunit B 50b that communicates with. In the illustrated embodiment, the data communication system 10 includes a main unit 20, a subunit A 50a that communicates with a USB host, and a subunit B 50b that communicates with a USB device. The main unit 20 includes a function module 43 that implements functional means of the function layer. Each subunit 50 includes a USB bus interface module 83 that realizes the functional means of the USB bus interface layer, and a USB device module 81 that realizes the functional means of the USB device layer.

図に示した実施形態ではメインユニット20は、バス経路選択部160を備え、サブユニット50と、メインユニット20のファンクション・モジュール43とが通信する通常モードと、サブユニット50のUSBバス・インタフェース・モジュール83同士が接続され、中継器として機能するブリッジ動作モードとの切換えを行うことを可能としている。メインユニット20の操作パネルなどで構成される操作部28は、通常モードとブリッジ動作モードの切換え指示を受付け、オペレータからの指示を受けて、経路管理部29へ経路切換要求を発行する。要求を受けた経路管理部29は、バス経路選択部160へ経路切換指令を発行し、通常動作モードとブリッジ動作モードとを切換える。すなわち、経路管理部29は、メインユニット20とサブユニット50との間、またメインユニット20を介したサブユニット間の、論理的なデータフローを制御する手段として機能する。   In the embodiment shown in the figure, the main unit 20 includes a bus path selection unit 160, the normal mode in which the subunit 50 communicates with the function module 43 of the main unit 20, and the USB bus interface interface of the subunit 50. The modules 83 are connected to each other and can be switched to a bridge operation mode that functions as a repeater. The operation unit 28 including an operation panel of the main unit 20 receives a switching instruction between the normal mode and the bridge operation mode, and issues a path switching request to the path management unit 29 in response to an instruction from the operator. The route management unit 29 that has received the request issues a route switching command to the bus route selection unit 160 to switch between the normal operation mode and the bridge operation mode. That is, the path management unit 29 functions as a means for controlling a logical data flow between the main unit 20 and the subunit 50 and between subunits via the main unit 20.

ブリッジ動作モードでは、USBホスト同士またはUSBデバイス同士が接続されると好ましくないため、接続するサブユニットA50aとサブユニットB50bとが、両方ともUSBホスト、または両方ともUSBデバイスであるか否かの判断を行い、USBホストとUSBデバイスとの組合せであると判断された場合に、ブリッジ動作モードに切換える処理を行う制御としてもよい。このような判断は、例えば、ユニット識別値情報100を用いて、フィールド100cのエントリについて、USBホストを「真」とし、USBデバイスを「偽」として排他論理和を算出することにより判断することができるが、いかなる方法によっても判断することができる。   In the bridge operation mode, it is not preferable that the USB hosts or the USB devices are connected to each other. Therefore, it is determined whether the connected subunit A 50a and the subunit B 50b are both USB hosts or both are USB devices. If the combination is determined to be a combination of a USB host and a USB device, control for switching to the bridge operation mode may be performed. Such a determination can be made, for example, by calculating exclusive OR using the unit identification value information 100 for the entry in the field 100c with the USB host as “true” and the USB device as “false”. Yes, but it can be determined by any method.

図9に示した実施形態では、メインユニット20とサブユニット50とのバス接続は、各サブユニット50のUSBバス・インタフェース・モジュール83とメインユニット20とを結ぶバスライン150と、USBデバイス・モジュール81とメインユニット20とを結ぶバスライン152とを含み構成される。バスライン150およびバスライン152は、バス経路選択部160に接続され、バス経路選択部160は、ファンクション・モジュール43に接続されるバスライン156と接続し、また内部に、バスライン156と、バスライン152aおよびバスライン152bとの接続を切換えるためのスイッチ158aおよびスイッチ158dを含んでいる。さらに、バス経路選択部160は、バスライン150同士を接続させるためのバスライン156と、接続を切換えるためのスイッチ158bとスイッチ158cとを含んでいる。   In the embodiment shown in FIG. 9, the bus connection between the main unit 20 and the subunit 50 includes the bus line 150 connecting the USB bus interface module 83 of each subunit 50 and the main unit 20, and the USB device module. 81 and a bus line 152 connecting the main unit 20. The bus line 150 and the bus line 152 are connected to the bus route selection unit 160, and the bus route selection unit 160 is connected to the bus line 156 connected to the function module 43, and inside the bus line 156, the bus line 156 A switch 158a and a switch 158d for switching the connection between the line 152a and the bus line 152b are included. Further, the bus path selection unit 160 includes a bus line 156 for connecting the bus lines 150 to each other, and a switch 158b and a switch 158c for switching the connection.

スイッチ158a〜スイッチ158dは、通常動作モードでは、スイッチ158aおよびスイッチ158dがオンとなり、スイッチ158bおよびスイッチ158cがオフとなる。ブリッジ動作モードでは、スイッチ158aおよびスイッチ158dがオフとなり、スイッチ158bおよびスイッチ158cがオンとなる。   In the switch 158a to 158d, in the normal operation mode, the switch 158a and the switch 158d are turned on, and the switch 158b and the switch 158c are turned off. In the bridge operation mode, the switch 158a and the switch 158d are turned off, and the switch 158b and the switch 158c are turned on.

ブリッジ動作モードでは、有線接続のUSBコネクタを備えたサブユニット同士ではハブまたはリピータとして機能し、接続距離を延長させることができる。有線接続のUSBコネクタを備えたサブユニットと無線接続のWUSBアンテナを備えたサブユニットとの接続では、ホスト・ワイヤ・アダプタやデバイス・ワイヤ・アダプタなどのメディア変換器として機能し、有線および無線が入り混じった利用環境では、さらにUSB装置間のデータフローの自由度を向上させることができる。無線接続のWUSBアンテナを備えたサブユニット同士では、中継器として機能し、ワイヤレスUSB接続の通信可能距離を延長させることが可能となる。   In the bridge operation mode, subunits having wired USB connectors function as hubs or repeaters, and the connection distance can be extended. In the connection between a subunit with a wired USB connector and a subunit with a wireless WUSB antenna, it functions as a media converter such as a host wire adapter or device wire adapter. In a mixed usage environment, the degree of freedom of data flow between USB devices can be further improved. Subunits equipped with wirelessly connected WUSB antennas function as relays, and the communicable distance of wireless USB connection can be extended.

なお、上述では、2つのサブユニットと接続するメインユニットとの構成の実施形態をもってバス経路選択における動作について述べたが、3つ以上のサブユニットと接続する場合であってもよく、当業者であれば容易に拡張することができるであろう。3つ以上のサブユニットと接続する場合には、USBホストと通信を行うひとつのサブユニットと、デバイスと通信を行う複数のサブユニットとが選択可能に結線され、USBハブとして機能する構成とすることができる。その際には、リピータ、ハブコントローラ、トランザクション・トランスレータ、ルーティング・ロジックといった、ハブ機能を提供する機能手段を備えるサブユニットまたはメインユニットとして構成させることで実現できる。   In the above description, the operation in the bus route selection has been described with the embodiment of the configuration of the main unit connected to the two subunits. However, it may be a case where it is connected to three or more subunits. If so, it could be easily expanded. When connecting to three or more subunits, one subunit that communicates with the USB host and a plurality of subunits that communicate with the device are selectably connected to function as a USB hub. be able to. In that case, it can be realized by configuring as a sub unit or a main unit having functional means for providing a hub function such as a repeater, a hub controller, a transaction translator, and a routing logic.

図10には、モード切換を行うデータ通信システム10の他の実施形態を示す概略構成図を示す。図10に示した実施形態では、メインユニット20のバス経路選択部170と、サブユニット50のバス経路選択部172とによって、メインユニット20のファンクション提供手段40とが通信する通常モードと、サブユニット50のUSBバス・インタフェース・モジュール83同士が接続され中継器として機能するブリッジ動作モードの切換えを行う。メインユニット20の操作パネルなどで構成される操作部28は、通常モードとブリッジ動作モードの切換え指示を受けることを可能とし、オペレータからの指示を受けて経路管理部29へ経路切換の要求を発行する。要求を受けた経路管理部29は、バス経路選択部170と、各サブユニット50のバス経路選択部172へ、切換え指令を発行し、モードを切換える。   In FIG. 10, the schematic block diagram which shows other embodiment of the data communication system 10 which performs mode switching is shown. In the embodiment shown in FIG. 10, the normal mode in which the function providing means 40 of the main unit 20 communicates with the bus route selecting unit 170 of the main unit 20 and the bus route selecting unit 172 of the subunit 50, and the subunit The 50 USB bus interface modules 83 are connected to each other, and the bridge operation mode that functions as a repeater is switched. An operation unit 28 including an operation panel of the main unit 20 can receive an instruction to switch between the normal mode and the bridge operation mode, and issues a route switching request to the route management unit 29 in response to an instruction from the operator. To do. Upon receiving the request, the route management unit 29 issues a switching command to the bus route selection unit 170 and the bus route selection unit 172 of each subunit 50 to switch the mode.

図10に示した実施形態では、通常モードへの切換指令を受けた経路管理部29は、バス経路選択部170のスイッチ174をオンとする指令を発行し、同時に各サブユニット50のバス経路選択部172へ、通常モードへの切換指令を発行する。指令を受けた各バス経路選択部172は、USBデバイス・モジュール81とメインユニット20とを結ぶバスラインの切換えを行うスイッチ176をオンとし、USBバス・インタフェース・モジュール83とメインユニット20とを結ぶバスラインの切換えを行うスイッチ178をオフとする。   In the embodiment shown in FIG. 10, the route management unit 29 that has received a command to switch to the normal mode issues a command to turn on the switch 174 of the bus route selection unit 170 and simultaneously selects the bus route of each subunit 50. A command for switching to the normal mode is issued to the unit 172. Receiving the command, each bus path selection unit 172 turns on the switch 176 for switching the bus line connecting the USB device module 81 and the main unit 20 to connect the USB bus interface module 83 and the main unit 20. A switch 178 for switching the bus line is turned off.

ブリッジ動作モードへの切換指令を受けた経路管理部29は、バス経路選択部170のスイッチ174をオフとする指令を発効し、各サブユニット50のバス経路選択部172へ、USBデバイス・モジュール81とメインユニット20とを結ぶバスラインの切換えを行うスイッチ176をオフとし、USBバス・インタフェース・モジュール83とメインユニット20とを結ぶバスラインの切換えを行うスイッチ178をオンとする指令を発行する。バス経路選択部172を含むサブユニット50という構成により、メインユニット20とサブユニット50とのバスラインの複雑化を低減することを可能とする。   In response to the switching instruction to the bridge operation mode, the path management unit 29 issues a command to turn off the switch 174 of the bus path selection unit 170, and sends the USB device module 81 to the bus path selection unit 172 of each subunit 50. The switch 176 for switching the bus line connecting the main unit 20 and the main unit 20 is turned off, and the switch 178 for switching the bus line connecting the USB bus interface module 83 and the main unit 20 is turned on. With the configuration of the subunit 50 including the bus route selection unit 172, it is possible to reduce the complexity of the bus line between the main unit 20 and the subunit 50.

図11には、モード切換を行うデータ通信システム10のさらに他の実施形態を示す概略構成図を示す。図11に示した実施形態では、図10に示した実施形態と同様のバス経路選択部を含むメインユニット20およびサブユニット50としての構成を有し、モード切換をサブユニット50側から指示する場合の実施形態である。サブユニット50は、オペレータからの切換指示を待受ける、例えばボタンスイッチなどの切換指示部88を含み構成される。切換指示部88は、各サブユニット50のバス経路選択部172の経路切換を制御し、また、メインユニット20からのモード切換の指令に応答してバス経路選択部172の経路選択の制御を行う。   FIG. 11 is a schematic configuration diagram showing still another embodiment of the data communication system 10 that performs mode switching. In the embodiment shown in FIG. 11, the same configuration as the main unit 20 and the subunit 50 including the bus path selection unit as in the embodiment shown in FIG. 10 is provided, and mode switching is instructed from the subunit 50 side. It is an embodiment. The subunit 50 includes a switching instruction unit 88 such as a button switch that waits for a switching instruction from an operator. The switching instruction unit 88 controls the path switching of the bus path selection unit 172 of each subunit 50, and controls the path selection of the bus path selection unit 172 in response to the mode switching command from the main unit 20. .

例えば、オペレータによりブリッジ動作モードへの切換指示を受けたサブユニットB50bの切換指示部88bは、バス経路選択部172bの経路切換を実行し、同時にメインユニット20の経路管理部29へ、ブリッジ動作モードへ切換通知を行う。サブユニットB50bからの切換通知を受けた経路管理部29は、バス経路選択部170のスイッチ174をオフとし、サブユニットA50aの切換指示部88aに、モード切換指示を発行する。指令を受けたサブユニットA50aの切換指示部88aは、バス経路選択部172aの経路切換を行う。   For example, the switching instruction unit 88b of the subunit B 50b that has received an instruction to switch to the bridge operation mode by the operator executes the route switching of the bus route selection unit 172b, and at the same time, the bridge operation mode Switch notification to. Receiving the switching notification from the subunit B 50b, the route management unit 29 turns off the switch 174 of the bus route selecting unit 170 and issues a mode switching instruction to the switching instruction unit 88a of the subunit A 50a. Upon receiving the instruction, the switching instruction unit 88a of the subunit A 50a switches the route of the bus route selection unit 172a.

サブユニット50が動作モードの切換指示部を備えるという構成により、操作パネルなどの操作部を備えないメインユニットであっても、サブユニットのボタンスイッチなどの簡易な指示手段によって動作モードの切換指示を行うことが可能となる。   With the configuration in which the subunit 50 includes an operation mode switching instruction unit, even if the main unit does not include an operation unit such as an operation panel, the operation mode switching instruction is issued by simple instruction means such as a button switch of the subunit. Can be done.

以下さらに、メインユニット20と、サブユニット50との装着様式の実施形態について説明する。図12は、メインユニット20と、2つのサブユニット50との装着様式の実施形態を示す概略図である。図12(a)に示した実施形態では、サブユニット50は、指向性アンテナ64を備えるワイヤレスUSBとしての構成されている。図には、各サブユニット50はスロットに装着され、各サブユニット50の指向性アンテナ64の向きが異なっている様子が示されている。指向性アンテナを備えるサブユニットという構成を採用することによって、サブユニット50が近接して配設された場合であっても、サブユニット50間の電波干渉を好適に低減させることができる。   In the following, an embodiment of the manner of mounting the main unit 20 and the subunit 50 will be described. FIG. 12 is a schematic diagram showing an embodiment of a mounting manner of the main unit 20 and the two subunits 50. In the embodiment shown in FIG. 12A, the subunit 50 is configured as a wireless USB including a directional antenna 64. In the figure, each subunit 50 is mounted in the slot, and the direction of the directional antenna 64 of each subunit 50 is different. By adopting a configuration of a subunit including a directional antenna, radio wave interference between the subunits 50 can be suitably reduced even when the subunits 50 are arranged close to each other.

図12(b)は、メインユニット20と、2つのサブユニット50との装着様式の他の実施形態を示す。図12(c)は、図12(b)の図において、矢印Y方向からメインユニット20を視た場合のメインユニット20の側面20bを示す側面図である。図には、メインユニット20の側面20bには、サブユニット50を装着するためのスロット49bが配設されている様子が示されている。同様に、他方の側面にもスロット49a(図示せず)が備えられ、サブユニット50をスロット49aに装着することが可能である。離間してサブユニット50を装着するスロットを備えたメインユニット20という構成により、サブユニット50間の電波干渉を好適に低減させることが可能となる。さらに、図12(b)に示した実施形態では、装着スロット49は、メインユニットの対面を構成する側面に配置され、さらに、電波干渉を好適に低減させることが可能としている。   FIG. 12B shows another embodiment of the manner of mounting the main unit 20 and the two subunits 50. FIG.12 (c) is a side view which shows the side surface 20b of the main unit 20 at the time of seeing the main unit 20 from the arrow Y direction in the figure of FIG.12 (b). In the drawing, a state in which a slot 49b for mounting the subunit 50 is provided on the side surface 20b of the main unit 20 is shown. Similarly, the other side surface is provided with a slot 49a (not shown), and the subunit 50 can be mounted in the slot 49a. With the configuration of the main unit 20 having a slot in which the subunit 50 is mounted at a distance, radio wave interference between the subunits 50 can be suitably reduced. Furthermore, in the embodiment shown in FIG. 12B, the mounting slot 49 is arranged on the side surface that constitutes the opposite side of the main unit, and can further reduce radio wave interference.

なお、上述のメインユニット20と、サブユニット50とから構成されるデータ通信システム10は、画像形成装置としてのデバイス機能を提供する場合の実施形態をもって説明してきたが、データ通信システムが提供するデバイス機能としては、特に限定されるものではない。データ通信システムは、例えば、デジタル・カメラなどの撮像装置、スキャナなどの画像読取装置、ストレージデバイスなどの記録装置としてのデバイス機能を備えることもできる。   The data communication system 10 including the main unit 20 and the subunit 50 has been described with the embodiment in the case of providing a device function as an image forming apparatus, but the device provided by the data communication system. The function is not particularly limited. The data communication system can also be provided with a device function as an imaging device such as a digital camera, an image reading device such as a scanner, and a recording device such as a storage device.

以上、説明したように、本発明によれば、複数のUSBホストに接続および認識され、複数のUSBホストから要求に応答して処理を実行し、USB装置間の自由度の高いデータフローを提供するデータ通信システム、ユニットおよびデータ通信方法を提供することができる。   As described above, according to the present invention, a data flow that is connected to and recognized by a plurality of USB hosts, performs processing in response to requests from the plurality of USB hosts, and has a high degree of freedom between USB devices is provided. A data communication system, a unit, and a data communication method can be provided.

また、本発明によれば、簡易な操作でUSBの中継器として機能させることができ、USB装置間の自由度の高いデータフロー制御を可能とするデータ通信システム、ユニットおよびデータ通信方法を提供することができる。   The present invention also provides a data communication system, a unit, and a data communication method that can function as a USB repeater with a simple operation and enable highly flexible data flow control between USB devices. be able to.

また、本発明の上記機能は、アセンブラ、C、C++、C#、Java(登録商標)、などのレガシープログラミング言語やオブジェクト指向ブログラミング言語などで記述された装置実行可能なプログラムにより実現でき、ROM、EEPROM、EPROM、フラッシュメモリ、フレキシブルディスク、CD−ROM、CD−RW、DVD、SDメモリ、MOなど装置可読な記録媒体に格納して頒布することができる。   Further, the above functions of the present invention can be realized by a device executable program described in a legacy programming language such as an assembler, C, C ++, C #, Java (registered trademark), an object-oriented programming language, or the like. , EEPROM, EPROM, flash memory, flexible disk, CD-ROM, CD-RW, DVD, SD memory, MO and the like can be stored and distributed.

これまで本発明を図面に示した実施形態をもって説明してきたが、本発明は図面に示した実施形態に限定されるものではなく、他の実施形態、追加、変更、削除など、当業者が想到することができる範囲内で変更することができ、いずれの態様においても本発明の作用・効果を奏する限り、本発明の範囲に含まれるものである。   Although the present invention has been described with the embodiments shown in the drawings, the present invention is not limited to the embodiments shown in the drawings, and those skilled in the art have conceived other embodiments, additions, modifications, deletions, and the like. It can be changed within the range that can be performed, and any embodiment is included in the scope of the present invention as long as the operation and effect of the present invention are exhibited.

メインユニットとサブユニットを含み構成されるデータ通信システムのハードウェア構成の実施形態を示すブロック図。The block diagram which shows embodiment of the hardware constitutions of the data communication system comprised including a main unit and a subunit. メインユニットとサブユニットを含み構成されるデータ通信システムの機能構成の実施形態を示すブロック図。The block diagram which shows embodiment of the function structure of the data communication system comprised including a main unit and a subunit. メインユニットに格納されるユニット識別値情報、およびサブユニットに格納される設定情報のデータ構造の実施形態を示す図。The figure which shows embodiment of the data structure of the unit identification value information stored in a main unit, and the setting information stored in a subunit. メインユニットにおけるサブユニットの認識処理の実施形態を示すフローチャート。The flowchart which shows embodiment of the recognition process of the subunit in a main unit. メインユニットおよびサブユニットと、ホストとのデバイス初期設定の実施形態を示すフローチャート。The flowchart which shows embodiment of the device initial setting of a main unit and a subunit, and a host. メインユニットとサブユニットとの通信によって伝送される通信パケットのデータ構造の実施形態を示す図。The figure which shows embodiment of the data structure of the communication packet transmitted by communication with a main unit and a subunit. データ通信システムと2つのホストとのデータフローの実施形態を示す概略図。1 is a schematic diagram illustrating an embodiment of data flow between a data communication system and two hosts. FIG. データ通信システムにおける要求処理の調停処理およびデータフロー制御に使用されるジョブ管理データのデータ構造の実施形態を示す図。The figure which shows embodiment of the data structure of the job management data used for the arbitration process of request processing in a data communication system, and data flow control. モード切換可能なデータ通信システムの実施形態を示す概略構成図。The schematic block diagram which shows embodiment of the data communication system which can switch modes. モード切換可能なデータ通信システムの他の実施形態を示す概略構成図。The schematic block diagram which shows other embodiment of the data communication system which can switch modes. モード切換可能なデータ通信システムのさらに他の実施形態を示す概略構成図。The schematic block diagram which shows other embodiment of the data communication system which can switch modes. メインユニットとサブユニットとの装着様式の実施形態を示す概略図。Schematic which shows embodiment of the mounting | wearing style of a main unit and a subunit.

符号の説明Explanation of symbols

10…データ通信システム、12…接続バス、20…メインユニット、22…CPU、24…ROM、26…メモリ、28…操作部、29…経路管理部、30…表示部、32…記憶装置、34…プリンタ、36…インタフェース(I/F)、38…内部バス、40…ファンクション提供手段、41…処理部、42…デバイス情報格納部、43…ファンクション・モジュール、44…ジョブキュー記憶部、46…データフロー制御部、48…ユニット識別値記憶部、49…スロット、50…サブユニット、52…コントローラ、54…メモリ、56…無線通信部、58…NVRAM、60…物理層(UWB BB PHY)、62…物理層(UWB RF PHY)、64…アンテナ、66…MAC(媒体アクセス制御)層、68…インタフェース、70…設定記憶部、72…データ交換部、74…エンドポイント部、76…エンドポイント・ゼロ、78…エンドポイントn、80…WUSB論理デバイス、81…USBデバイス・モジュール、82…WUSBバス・インタフェース、83…USBバス・インタフェース・モジュール、84…デフォルト・パイプ、86…パイプ・バンドル、88…切換指示部、90…USBホスト(外部装置)、92…クライアント・ソフトウェア、94…USBシステム・ソフトウェア、96…USBホストコントローラ、100…ユニット識別値情報、110…設定情報、120…設定情報、130…ユニット間パケット、140…ジョブ管理データ、150、152、154、156…バスライン、158…スイッチ、160、170、172…バス経路選択部、174、176、178…スイッチ DESCRIPTION OF SYMBOLS 10 ... Data communication system, 12 ... Connection bus, 20 ... Main unit, 22 ... CPU, 24 ... ROM, 26 ... Memory, 28 ... Operation part, 29 ... Path management part, 30 ... Display part, 32 ... Memory | storage device, 34 ... Printer, 36 ... Interface (I / F), 38 ... Internal bus, 40 ... Function providing means, 41 ... Processing unit, 42 ... Device information storage unit, 43 ... Function module, 44 ... Job queue storage unit, 46 ... Data flow control unit, 48 ... unit identification value storage unit, 49 ... slot, 50 ... subunit, 52 ... controller, 54 ... memory, 56 ... wireless communication unit, 58 ... NVRAM, 60 ... physical layer (UWB BB PHY), 62 ... Physical layer (UWB RF PHY), 64 ... Antenna, 66 ... MAC (medium access control) layer, 68 ... Interface, 70 ... Setting storage unit, 7 ... Data exchange part, 74 ... Endpoint part, 76 ... Endpoint zero, 78 ... Endpoint n, 80 ... WUSB logical device, 81 ... USB device module, 82 ... WUSB bus interface, 83 ... USB bus interface Module 84 ... Default pipe 86 86 Pipe bundle 88 Switch instruction section 90 USB host (external device) 92 Client software 94 USB system software 96 USB host controller 100 ... Unit identification value information, 110 ... Setting information, 120 ... Setting information, 130 ... Inter-unit packet, 140 ... Job management data, 150, 152, 154, 156 ... Bus line, 158 ... Switch, 160, 170, 172 ... Bus Route selector, 174, 176, 178 ... switch

Claims (12)

メインユニットと、少なくとも1つのサブユニットとから構成され、外部装置とUSBプロトコルによるデータ通信を実行するデータ通信システムであって、
前記メインユニットは、
USB装置としての機能を提供するためのファンクション提供手段と、前記サブユニットを識別して前記サブユニットとの間のデータ伝送を制御するデータフロー制御手段とを備え、
前記サブユニットは、
前記外部装置との信号伝送を実行するバス・インタフェース提供手段と、前記データフロー制御手段による調停を受けるUSBデバイス提供手段と、前記メインユニットとのデータ交換手段とを備える、
データ通信システム。
A data communication system that includes a main unit and at least one subunit, and executes data communication with an external device using a USB protocol,
The main unit is
A function providing means for providing a function as a USB device; and a data flow control means for identifying the subunit and controlling data transmission with the subunit;
The subunit is
A bus interface providing means for executing signal transmission with the external device, a USB device providing means for receiving arbitration by the data flow control means, and a data exchanging means with the main unit.
Data communication system.
前記USBデバイス提供手段は、USBホストとしての前記外部装置との論理的通信路を確立するためのエンドポイントを提供し、
前記データ交換手段は、前記エンドポイントと前記メインユニットとの間のデータ交換を実行する、
請求項1に記載のデータ通信システム。
The USB device providing means provides an endpoint for establishing a logical communication path with the external device as a USB host,
The data exchange means performs data exchange between the endpoint and the main unit;
The data communication system according to claim 1.
前記データフロー制御手段は、
データの送信元または送信先の前記サブユニットを識別し、
前記外部装置からの処理要求または外部指令に応じて前記サブユニットとの間の前記データ伝送を制御する、
請求項1または2に記載のデータ通信システム。
The data flow control means includes
Identify the subunit of data source or destination,
Controlling the data transmission with the subunit in response to a processing request or an external command from the external device;
The data communication system according to claim 1 or 2.
少なくとも1つのサブユニットを装着するためのスロットを備え、外部装置とUSBプロトコルによるデータ通信を実行可能とするメインユニットであって、
前記メインユニットは、
USB装置としての機能を提供するためのファンクション提供手段と、前記外部装置からの処理要求または外部指令に応じて、前記サブユニットとの間のデータ伝送を制御するデータフロー制御手段とを備える
メインユニット。
A main unit having a slot for mounting at least one subunit, and capable of executing data communication with an external device using a USB protocol,
The main unit is
A main unit comprising function providing means for providing a function as a USB device, and data flow control means for controlling data transmission with the subunit in response to a processing request or an external command from the external device .
前記メインユニットは、
複数の前記スロットを離間して配設する、請求項4に記載のメインユニット。
The main unit is
The main unit according to claim 4, wherein the plurality of slots are spaced apart.
USB装置としての機能を提供するためのメインユニットに装着され、外部装置とUSBプロトコルによるデータ通信を実行可能とするサブユニットであって、
前記サブユニットは、
前記外部装置との信号伝送を実行するバス・インタフェース提供手段と、USBデバイス提供手段と、前記メインユニットとのデータ交換手段とを備える、
サブユニット。
A subunit that is attached to a main unit for providing a function as a USB device, and that can execute data communication with an external device using a USB protocol,
The subunit is
A bus interface providing means for executing signal transmission with the external device, a USB device providing means, and a data exchanging means with the main unit;
Sub unit.
前記USBデバイス提供手段は、USBホストとしての前記外部装置との論理的通信路を確立するためのエンドポイントを提供し、
前記データ交換手段は、前記エンドポイントと前記メインユニットとの間のデータ交換を実行する、
請求項6に記載のサブユニット。
The USB device providing means provides an endpoint for establishing a logical communication path with the external device as a USB host,
The data exchange means performs data exchange between the endpoint and the main unit;
The subunit according to claim 6.
前記サブユニットは、
外部指令に応じて、前記メインユニットとの間のデータ伝送を制御するデータフロー制御手段を備える
請求項6または7に記載のサブユニット。
The subunit is
The subunit according to claim 6 or 7, further comprising data flow control means for controlling data transmission with the main unit in response to an external command.
前記サブユニットは、指向性アンテナを備える、
請求項6〜8のいずれか1項に記載のサブユニット。
The subunit comprises a directional antenna;
The subunit according to any one of claims 6 to 8.
前記サブユニットは、データフローを切換えるための外部指令を受付ける指示手段を含む、
請求項6〜9のいずれか1項に記載のサブユニット。
The subunit includes an instruction means for receiving an external command for switching data flow.
The subunit according to any one of claims 6 to 9.
メインユニットと少なくとも1つのサブユニットとから構成されるデータ通信システムと、外部装置とのUSBプロトコルによるデータ通信方法であって、
前記データ通信方法は、
前記サブユニットと前記外部装置との論理的通信路を確立するステップと、
前記論理的通信路を介して、USBプロトコルにしたがいデータを転送するステップと、
前記サブユニットを識別可能に、前記サブユニットと前記メインユニットとの前記データの交換を実行するステップと
を含む、
データ通信方法。
A data communication method using a USB protocol between a data communication system including a main unit and at least one subunit and an external device,
The data communication method includes:
Establishing a logical communication path between the subunit and the external device;
Transferring data according to the USB protocol via the logical communication path;
Exchanging the data between the subunit and the main unit so that the subunit can be identified;
Data communication method.
前記データ通信方法は、
前記データに応答した要求処理を実行するステップと、
前記要求処理または外部指令に応答して、前記データの交換を制御するステップとを含む、
請求項11に記載のデータ通信方法。
The data communication method includes:
Executing request processing in response to the data;
Controlling the exchange of the data in response to the request processing or an external command,
The data communication method according to claim 11.
JP2006301791A 2006-11-07 2006-11-07 Data communication system, unit and data communication method Expired - Fee Related JP5030538B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006301791A JP5030538B2 (en) 2006-11-07 2006-11-07 Data communication system, unit and data communication method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006301791A JP5030538B2 (en) 2006-11-07 2006-11-07 Data communication system, unit and data communication method

Publications (2)

Publication Number Publication Date
JP2008117289A true JP2008117289A (en) 2008-05-22
JP5030538B2 JP5030538B2 (en) 2012-09-19

Family

ID=39503135

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006301791A Expired - Fee Related JP5030538B2 (en) 2006-11-07 2006-11-07 Data communication system, unit and data communication method

Country Status (1)

Country Link
JP (1) JP5030538B2 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010004933A1 (en) * 2008-07-08 2010-01-14 Ricoh Company, Limited Wireless usb device and wireless usb communication system
JP2013156911A (en) * 2012-01-31 2013-08-15 Nec Access Technica Ltd Device equipment and method for controlling the same
US9036010B2 (en) 2007-12-18 2015-05-19 Koninklijke Philips N.V. Transport of stereoscopic image data over a display interface

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05108534A (en) * 1991-10-11 1993-04-30 Internatl Business Mach Corp <Ibm> System constituting and setting method for data processing system, data processing system and expanding device for data processing system
JPH0728393A (en) * 1993-07-08 1995-01-31 Rika Kogyo Kk Controller
JPH11112524A (en) * 1997-08-07 1999-04-23 Internatl Business Mach Corp <Ibm> Connection establishing method, communication method, state change transmitting method, state change executing method, radio equipment, radio device and computer
JP2000194649A (en) * 1998-12-28 2000-07-14 Toshiba Corp Method and apparatus for electronic device connection
JP2005333188A (en) * 2004-05-18 2005-12-02 Konica Minolta Photo Imaging Inc Communication method and communication apparatus
JP2006067254A (en) * 2004-08-26 2006-03-09 Omron Corp Radio communications equipment
JP2006155067A (en) * 2004-11-26 2006-06-15 Nec Access Technica Ltd Storage device, and method for controlling the same
JP2007293708A (en) * 2006-04-26 2007-11-08 Nec Access Technica Ltd Wireless usb device

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05108534A (en) * 1991-10-11 1993-04-30 Internatl Business Mach Corp <Ibm> System constituting and setting method for data processing system, data processing system and expanding device for data processing system
JPH0728393A (en) * 1993-07-08 1995-01-31 Rika Kogyo Kk Controller
JPH11112524A (en) * 1997-08-07 1999-04-23 Internatl Business Mach Corp <Ibm> Connection establishing method, communication method, state change transmitting method, state change executing method, radio equipment, radio device and computer
JP2000194649A (en) * 1998-12-28 2000-07-14 Toshiba Corp Method and apparatus for electronic device connection
JP2005333188A (en) * 2004-05-18 2005-12-02 Konica Minolta Photo Imaging Inc Communication method and communication apparatus
JP2006067254A (en) * 2004-08-26 2006-03-09 Omron Corp Radio communications equipment
JP2006155067A (en) * 2004-11-26 2006-06-15 Nec Access Technica Ltd Storage device, and method for controlling the same
JP2007293708A (en) * 2006-04-26 2007-11-08 Nec Access Technica Ltd Wireless usb device

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9036010B2 (en) 2007-12-18 2015-05-19 Koninklijke Philips N.V. Transport of stereoscopic image data over a display interface
US9462258B2 (en) 2007-12-18 2016-10-04 Koninklijke Philips N.V. Transport of stereoscopic image data over a display interface
US9843786B2 (en) 2007-12-18 2017-12-12 Koninklijke Philips N.V. Transport of stereoscopic image data over a display interface
WO2010004933A1 (en) * 2008-07-08 2010-01-14 Ricoh Company, Limited Wireless usb device and wireless usb communication system
US8571478B2 (en) 2008-07-08 2013-10-29 Ricoh Company, Limited Wireless USB device and wireless USB communication system
JP2013156911A (en) * 2012-01-31 2013-08-15 Nec Access Technica Ltd Device equipment and method for controlling the same

Also Published As

Publication number Publication date
JP5030538B2 (en) 2012-09-19

Similar Documents

Publication Publication Date Title
EP2316075B1 (en) Method and apparatus for connecting usb devices to a remote computer
JP3497834B2 (en) Route repeater, USB communication system, USB communication control method
US7305511B2 (en) Providing both wireline and wireless connections to a wireline interface
US7633856B2 (en) Multi-node system, internodal crossbar switch, node and medium embodying program
US20080162741A1 (en) Wireless usb hub
JP3632695B2 (en) Data transfer control device, electronic device, and data transfer control method
US7111106B2 (en) Bus communication system by unrestrained connection and a communication control method therefor
JPH11296316A (en) Peripheral processor and control method therefor
JP2001358733A (en) Method for using universal serial but (usb) as peer-to- peer network
EP1516261B1 (en) Bus system, station for use in a bus system, and bus interface
JP4111472B2 (en) COMMUNICATION CONTROL METHOD AND DEVICE AND COMMUNICATION SYSTEM
JP5030538B2 (en) Data communication system, unit and data communication method
US6741606B1 (en) Interface control apparatus
US20100180061A1 (en) Interface control device
JP3636160B2 (en) Data transfer control device, electronic device, and data transfer control method
JP2008311950A (en) Wireless communication system, and communication device and control method thereof
KR101005933B1 (en) Method and Apparatus for transmitting of data between Master and Slave
JP2008107997A (en) Data communication method, data communication device and data communication system
JP2006243866A (en) Communication system
JP2004152156A (en) Interface conversion device
JP3846089B2 (en) Interface device, control method thereof, and information recording medium
JPH10303948A (en) Communication device and its method
JP2007058578A (en) Image processing system, program thereof, and job executing method
JP2000330703A (en) Usb (universal serial bus) human interface device provided with storage mechanism
JP3754930B2 (en) Printer and printer system

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090730

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110713

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110726

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110922

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120327

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120528

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20120626

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120626

R150 Certificate of patent or registration of utility model

Ref document number: 5030538

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20150706

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees