Patent ID: 7506077

Claim:
A controller device comprising: a first port connectable to a first serial bus; a first port handler unit coupled to the first port and configured to control transfer of data on the first serial bus provide functionality specified by the USB (Universal Serial Bus) OTG (On The Go) supplement according to a serial bus protocol and a second port connectable to a second serial bus; and a second port handler unit coupled to the second port and configured to control transfer of data on the second serial bus provide functionality specified by the USB OTG supplement according to the serial bus protocol wherein each one of said first and second port handler units is configured to selectively operate in a host mode and a device mode support host and device functionality at the respective first or second port; and wherein the controller device is configured such that, when each of the first and second port handlers are operating in the host mode, one of the first and second port handler units operates as a master while the other one of the port handler units operates as a slave, wherein the master is configured to generate data packets, and wherein the slave is configured to copy data packets generated by the master; wherein each of said first and second port handler units comprise: a low level protocol module configured to handle packet assembly and/or disassembly; a transfer buffer module configured to buffer incoming or outgoing data to average out system memory latencies; and a memory access module configured to generate memory requests in compliance with said USB host and/or device functionality.