KR101188772B1 - Method and system for wireless usb transfer of isochronous data using bulk data transfer type - Google Patents

Method and system for wireless usb transfer of isochronous data using bulk data transfer type Download PDF

Info

Publication number
KR101188772B1
KR101188772B1 KR1020107019889A KR20107019889A KR101188772B1 KR 101188772 B1 KR101188772 B1 KR 101188772B1 KR 1020107019889 A KR1020107019889 A KR 1020107019889A KR 20107019889 A KR20107019889 A KR 20107019889A KR 101188772 B1 KR101188772 B1 KR 101188772B1
Authority
KR
South Korea
Prior art keywords
data packets
delete delete
data
isochronous
bulk
Prior art date
Application number
KR1020107019889A
Other languages
Korean (ko)
Other versions
KR20100107524A (en
Inventor
아눕 나이르
크래이그 스미쓰
그레그 크리스티슨
토마스 알. 밀러
Original Assignee
콸콤 인코포레이티드
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
Priority claimed from US12/366,591 external-priority patent/US20100198999A1/en
Application filed by 콸콤 인코포레이티드 filed Critical 콸콤 인코포레이티드
Publication of KR20100107524A publication Critical patent/KR20100107524A/en
Application granted granted Critical
Publication of KR101188772B1 publication Critical patent/KR101188772B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/382Information transfer, e.g. on bus using universal interface adapter
    • G06F13/387Information transfer, e.g. on bus using universal interface adapter for adaptation of different data processing systems to different peripheral devices, e.g. protocol converters for incompatible systems, open system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4282Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2213/00Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F2213/0042Universal serial bus [USB]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2213/00Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F2213/38Universal adapter
    • G06F2213/3814Wireless link with a computer system port

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Systems (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

제 1 USB 가능 장치 및 제 2 USB 가능 장치를 갖는 무선 USB 시스템에서 데이터를 전송하기 위한 방법 및 시스템이 제공된다. 상기 방법은 제 1 데이터 전송 타입을 갖는 제 1 데이터를 제공하는 단계, 상기 제 1 데이터를 제 2 데이터 전송 타입을 갖는 제 2 데이터로 변환하는 단계, 상기 제 2 데이터 전송 타입을 이용하여 상기 제 1 USB 가능 장치로부터 상기 제 2 USB 가능 장치로 상기 제 2 데이터를 무선으로 전송하는 단계, 및 상기 무선으로 전송된 제 2 데이터를 상기 제 1 데이터 전송 타입을 갖는 제 3 데이터로 변환하는 단계를 포함한다.A method and system are provided for transferring data in a wireless USB system having a first USB capable device and a second USB capable device. The method includes providing first data having a first data transmission type, converting the first data to second data having a second data transmission type, and using the first data transmission type. Wirelessly transmitting the second data from a USB capable device to the second USB capable device, and converting the wirelessly transmitted second data into third data having the first data transfer type. .

Description

벌크 USB 데이터 전송 타입을 이용한 등시 데이터의 무선 USB 전송을 위한 방법 및 시스템{METHOD AND SYSTEM FOR WIRELESS USB TRANSFER OF ISOCHRONOUS DATA USING BULK DATA TRANSFER TYPE}TECHNICAL AND SYSTEM FOR WIRELESS USB TRANSFER OF ISOCHRONOUS DATA USING BULK DATA TRANSFER TYPE

본 특허 출원은 발명의 명칭이 "Method and System for Wireless USB Transer of Isochronous Data using Bulk Data Transfer Type"이고 2008년 2월 7일에 출원되고 본 출원인에 양도된 미국 가출원 제 61/026,969호에 대한 우선권을 주장하고, 본 명세서에 명시적으로 참조로서 결합된다.This patent application claims priority to US Provisional Application No. 61 / 026,969, entitled "Method and System for Wireless USB Transer of Isochronous Data using Bulk Data Transfer Type," filed February 7, 2008 and assigned to the applicant. And are hereby expressly incorporated by reference.

유선 범용 직렬 버스(Universal Serial Bus: USB) 사양은 4개 타입의 데이터 전송들인 제어, 벌크(bulk) 데이터, 인터럽트(interrupt) 데이터, 및 등시(isochronous) 데이터 전송들을 지원한다. 제어 데이터 전송은 버스트(burst)하고 비주기적인, 호스트 소프트웨어-개시 요청/응답 통신을 위해 사용되며, 통상적으로는 커맨드/상태 동작들을 위해 이용된다. 벌크 데이터 전송은 비주기적이며 벌크 패킷 버스트 통신이며, 통상적으로는 임의의 이용가능한 대역폭을 이용할 수 있고 대역이 이용가능할 때까지 또한 지연될 수 있는 데이터에 대해 이용된다. 예를들어, 하나의 큰 패킷으로 데이터를 수신하는 프린터는 벌크 전송 데이터 타입을 이용한다. 인터럽트 데이터 전송은 저주파수의 제한된 레이턴시(latency) 통신에 대해 이용된다. 예를들어, 매우 작은 데이터를 송신하는 마우스 또는 키보드와 같은 장치는 인터럽트 데이터 전송 타입을 이용할 것이다. 실시간 전송을 스트리밍(streaming)하는 것으로 알려진 등시 데이터 전송 타입은 호스트와 장치 간의 주기적이고 연속적인 통신을 위해 이용되며, 통상적으로는 시간 연관(time-relevant) 정보에 대해 이용된다. 오디오 스피커와 같은 스트리밍 장치는 등시 데이터 전송 타입을 이용한다.The Wired Universal Serial Bus (USB) specification supports four types of data transfers: control, bulk data, interrupt data, and isochronous data transfers. Control data transmission is used for burst and aperiodic, host software-initiated request / response communications, and is typically used for command / state operations. Bulk data transmission is aperiodic and bulk packet burst communication, typically used for data that may use any available bandwidth and may also be delayed until the band is available. For example, a printer receiving data in one large packet uses a bulk transmission data type. Interrupt data transfers are used for limited latency communications at low frequencies. For example, a device such as a mouse or keyboard that transmits very small data will use the interrupt data transfer type. The isochronous data transfer type, known as streaming real time transmission, is used for periodic and continuous communication between the host and the device and is typically used for time-relevant information. Streaming devices such as audio speakers use an isochronous data transfer type.

무선 범용 직렬 버스(Wirelesss Universal Serial Bus: WUSB) 상세는 유선 어뎁터들(Wire Adapters)로 알려진 장치들의 설명과 상세들을 포함한다. 이들 장치는 무선 및 유선 링크들 모두를 포함하는 확장된 USB 시스템들에서 "레거시(legacy)" 유선 USB 호스트들 및 장치들이 WUSB 장치들과 상호접속될 수 있도록 허용하는 유선 USB-무선 USB(wired-USB-to-Wireless-USB) 어뎁터들이다. 2개 타입의 유선 어뎁터들, 호스트 유선 어뎁터(Host Wire Adapter: HWA) 및 장치 유선 어뎁터(Device Wire Adapter: DWA)가 존재하는데, 이들은 서로 결합해서 동작한다. HWA들은 유선 "업스트림" USB 포트와 무선 "다운스트림" WUSB 포트를 가져서, 유선 USB 호스트가 WUSB 장치들과 통신하는 것을 가능하게 한다. DWA들은 무선 "업스트림" WUSB 포트와 하나 이상의 유선 "다운스트림" USB 포트들을 가져서, 유선 USB 장치들이 WUSB 호스트와 통신하는 것을 가능하게 한다. 따라서, "레거시" 유선 USB 호스트들과 장치들을 갖는 WUSB 시스템들은 HWA들 및 DWA들을 이용할 것이다.Wireless Universal Serial Bus (WUSB) details include descriptions and details of devices known as Wire Adapters. These devices are "legacy" wired USB hosts and devices in extended USB systems that include both wireless and wired links, allowing wired USB-wireless USB to be interconnected with WUSB devices. USB-to-Wireless-USB adapters. There are two types of wired adapters, a host wired adapter (HWA) and a device wired adapter (DWA), which operate in conjunction with each other. HWAs have a wired "upstream" USB port and a wireless "downstream" WUSB port, allowing a wired USB host to communicate with WUSB devices. DWAs have a wireless "upstream" WUSB port and one or more wired "downstream" USB ports, enabling wired USB devices to communicate with a WUSB host. Thus, WUSB systems with "legacy" wired USB hosts and devices will use HWAs and DWAs.

WUSB 사양은 유선 USB와 동일한 데이터 전송 타입들을 지원한다. 특히, WUSB는 제어, 벌크 데이터, 인터럽트 데이터, 및 등시 데이터 전송 타입들을 지원한다. WUSB 벌크 데이터 전송은 유선 USB 벌크 데이터 전송으로부터 그 단순성을 유지한다. 그러나, 무선 통신들의 특성으로 인하여, WUSB 등시 데이터 전송은 유선 USB 등시 데이터 전송에 추가하여 증가된 복잡성을 필요로 한다. 따라서, 무선 USB 링크 상의 벌크 전송들을 이용하여 "레거시" 유선 USB 장치들로 등시 데이터 전송들을 제공하기 위한 방법 및 시스템을 갖는 것이 바람직할 것이다.The WUSB specification supports the same data transfer types as wired USB. In particular, WUSB supports control, bulk data, interrupt data, and isochronous data transfer types. WUSB bulk data transfer maintains its simplicity from wired USB bulk data transfer. However, due to the nature of wireless communications, WUSB isochronous data transfer requires increased complexity in addition to wired USB isochronous data transfer. Thus, it would be desirable to have a method and system for providing isochronous data transfers to "legacy" wired USB devices using bulk transfers on a wireless USB link.

제 1 USB 가능 장치 및 제 2 USB 가능 장치를 갖는 WUSB 시스템에서 데이터를 전송하기 위한 방법 및 시스템이 제공된다. 상기 방법은 제 1 데이터 전송 타입을 갖는 제 1 데이터를 제공하는 단계, 상기 제 1 데이터를 제 2 데이터 전송 타입을 갖는 제 2 데이터로 변환하는 단계, 상기 제 2 데이터 전송 타입을 이용하여 상기 제 1 USB 가능 장치로부터 상기 제 2 USB 가능 장치로 상기 제 2 데이터를 무선으로 전송하는 단계, 및 상기 무선으로 전송된 제 2 데이터를 상기 제 1 데이터 전송 타입을 갖는 제 3 데이터로 변환하는 단계를 포함한다.A method and system are provided for transferring data in a WUSB system having a first USB capable device and a second USB capable device. The method includes providing first data having a first data transmission type, converting the first data to second data having a second data transmission type, and using the first data transmission type. Wirelessly transmitting the second data from a USB capable device to the second USB capable device, and converting the wirelessly transmitted second data into third data having the first data transfer type. .

상기 시스템은 제 1 USB 가능 장치를 포함하며, 상기 제 1 USB 가능 장치는, 제 1 데이터 전송 타입을 갖는 제 1 데이터를 제 2 데이터 전송 타입을 갖는 제 2 데이터로 변환하도록 구성된 제 1 변환 모듈, 및 상기 제 2 데이터를 상기 제 1 USB 가능 장치로부터 제 2 USB로 무선으로 전송하도록 조정된 송수신기를 포함한다. 상기 시스템은 제 2 USB 가능 장치를 추가로 포함하며, 상기 제 2 USB 가능 장치는, 무선으로 전송된 상기 제 2 데이터를 상기 제 1 데이터 전송 타입을 갖는 제 3 데이터로 변환하도록 구성된 제 2 데이터 변환 모듈, 및 상기 제 1 USB 가능 장치로부터 상기 제 2 데이터를 무선으로 수신하도록 조정된 송수신기를 포함한다.The system includes a first USB capable device, the first USB capable device comprising: a first conversion module configured to convert first data having a first data transmission type into second data having a second data transmission type, And a transceiver adapted to wirelessly transfer the second data from the first USB capable device to a second USB. The system further includes a second USB capable device, wherein the second USB capable device is configured to convert the second data transmitted wirelessly into third data having the first data transfer type. A module, and a transceiver adapted to wirelessly receive the second data from the first USB capable device.

특정 실시예들은 데이터를 전송하기 위한 방법을 제공한다. 상기 방법은 일반적으로는 다수의 등시 데이터 패킷들을 벌크 데이터 패킷들에 내장하는 단계, 및 상기 벌크 데이터 패킷들을 무선으로 전송하는 단계를 포함한다. Certain embodiments provide a method for transmitting data. The method generally includes embedding a plurality of isochronous data packets into bulk data packets, and wirelessly transmitting the bulk data packets.

특정 실시예들은 데이터를 전송하기 위한 방법을 제공한다. 상기 방법은 일반적으로는 벌크 데이터 패킷들을 수신하는 단계, 상기 벌크 데이터 패킷들로부터 등시 데이터 패킷들을 추출하는 단계, 및 상기 등시 데이터 패킷들을 USB 가능 장치로 전송하는 단계를 포함한다.Certain embodiments provide a method for transmitting data. The method generally includes receiving bulk data packets, extracting isochronous data packets from the bulk data packets, and sending the isochronous data packets to a USB capable device.

특정 실시예들은 데이터를 전송하기 위한 장치를 제공한다. 상기 장치는 일반적으로 다수의 등시 데이터 패킷들을 벌크 데이터 패킷들 내에 내장하기 위한 변환기, 및 상기 벌크 데이터 패킷들을 무선으로 전송하기 위한 송신기를 포함한다.Certain embodiments provide an apparatus for transmitting data. The apparatus generally includes a converter for embedding a plurality of isochronous data packets into bulk data packets, and a transmitter for wirelessly transmitting the bulk data packets.

특정 실시예들은 데이터를 전송하기 위한 장치를 제공한다. 상기 장치는 일반적으로 다수의 등시 데이터 패킷들을 벌크 데이터 패킷들 내에 내장하기 위한 변환기, 및 상기 벌크 데이터 패킷들을 무선으로 전송하기 위한 송신기를 포함한다.Certain embodiments provide an apparatus for transmitting data. The apparatus generally includes a converter for embedding a plurality of isochronous data packets into bulk data packets, and a transmitter for wirelessly transmitting the bulk data packets.

특정 실시예들은 데이터를 전송하기 위한 장치를 제공한다. 상기 장치는 일반적으로 벌크 데이터 패킷들을 수신하기 위한 수신기, 상기 벌크 데이터 패킷들을 등시 데이터 패킷들로부터 추출하기 위한 변환기, 및 상기 등시 데이터 패킷들을 USB 가능 장치로 전송하기 위한 송신기를 포함한다.Certain embodiments provide an apparatus for transmitting data. The apparatus generally includes a receiver for receiving bulk data packets, a converter for extracting the bulk data packets from isochronous data packets, and a transmitter for transmitting the isochronous data packets to a USB capable device.

특정 실시예들은 데이터를 전송하기 위한 장치를 제공한다. 상기 장치는 일반적으로 다수의 등시 데이터 패킷들을 벌크 데이터 패킷들에 내장하기 위한 수단, 및 상기 벌크 데이터 패킷들을 무선으로 전송하기 위한 수단을 포함한다.Certain embodiments provide an apparatus for transmitting data. The apparatus generally includes means for embedding a plurality of isochronous data packets into bulk data packets, and means for wirelessly transmitting the bulk data packets.

특정 실시예들은 데이터를 전송하기 위한 장치를 제공한다. 상기 장치는 일반적으로 벌크 데이터 패킷들을 수신하기 위한 수단, 상기 벌크 데이터 패킷들로부터 등시 데이터 패킷들을 추출하기 위한 수단, 및 상기 등시 데이터 패킷들을 USB 가능 장치로 전송하기 위한 수단을 포함한다.Certain embodiments provide an apparatus for transmitting data. The apparatus generally includes means for receiving bulk data packets, means for extracting isochronous data packets from the bulk data packets, and means for transmitting the isochronous data packets to a USB capable device.

특정 실시예들은 다수의 등시 데이터 패킷들을 벌크 데이터 패킷들에 내장하고, 상기 벌크 데이터 패킷들을 무선으로 전송하도록 실행가능한 명령들로 인코딩된 컴퓨터 판독가능 매체를 포함하는, 데이터를 전송하기 위한 컴퓨터-프로그램 물건을 제공한다.Particular embodiments include a computer-readable medium for embedding a plurality of isochronous data packets into bulk data packets and encoded with instructions executable to wirelessly transmit the bulk data packets. Provide program stuff.

특정 실시예들은 벌크 데이터 패킷들을 수신하고, 상기 벌크 데이터 패킷들로부터 등시 데이터 패킷들을 추출하고, 상기 등시 데이터 패킷들을 USB 가능 장치로 전송하도록 실행가능한 명령들로 인코딩된 컴퓨터 판독가능 매체를 포함하는, 데이터를 전송하기 위한 컴퓨터-프로그램 물건을 제공한다.Certain embodiments include a computer readable medium encoded with instructions executable to receive bulk data packets, extract isochronous data packets from the bulk data packets, and send the isochronous data packets to a USB capable device. Provides a computer-program product for transferring data.

특정 실시예들은 무선 어뎁터를 제공한다. 상기 무선 어뎁터는 일반적으로 안테나, 등시 데이터 패킷들을 벌크 데이터 패킷들에 내장하기 위한 변환기, 및 상기 안테나를 이용하여 상기 벌크 데이터 패킷들을 무선으로 전송하기 위한 송신기를 포함한다. Certain embodiments provide a wireless adapter. The wireless adapter generally includes an antenna, a converter for embedding isochronous data packets into bulk data packets, and a transmitter for wirelessly transmitting the bulk data packets using the antenna.

특정 실시예들은 무선 어뎁터를 제공한다. 상기 무선 어뎁터는 일반적으로 안테나, 상기 안테나를 통해 벌크 데이터 패킷들을 수신하기 위한 수신기, 상기 벌크 데이터 패킷들로부터 등시 데이터 패킷들을 추출하기 위한 변환기, 및 상기 등시 데이터 패킷들을 USB 가능 장치로 전송하기 위한 송신기를 포함한다.Certain embodiments provide a wireless adapter. The wireless adapter generally includes an antenna, a receiver for receiving bulk data packets via the antenna, a converter for extracting isochronous data packets from the bulk data packets, and transmitting the isochronous data packets to a USB capable device. It includes a transmitter for.

본 개시내용은 첨부된 도면을 참조하여 상세한 설명으로부터 가장 잘 이해될 수 있을 것이다. 당업계의 표준 관습에 따라, 다양한 특징들이 실측에 따라 도시되지는 않았다. 다양한 특징들의 치수는 설명의 명확성을 위하여 임의로 증가되거나 감소될 수 있다. 또한, 단순성을 위하여 모든 특징들이 모든 도면들에 도시된 것은 아니다.
도1은 개시된 실시예들이 실시될 수 있는 시스템의 다이어그램 표현이다.
도2는 도1의 WUSB 시스템에서 구현될 수 있는 데이터가 전송되고 있는 다이어그램 표현이다.
도3은 도1의 WUSB 시스템에서 구현될 수 있는 데이터를 전송하기 위한 방법을 도시하는 흐름도이다.
도4는 도3의 방법에서 구현될 수 있는, 데이터를 변환하기 위한 방법의 흐름도이다.
도5는 도3의 방법이 구현될 수 있는, 데이터를 변환하기 위한 대안적인 방법의 흐름도이다.
도6A 및 도6B는 본 개시내용의 특정 양상들에 따른, 예시적인 등시 데이터 전송 및 대응 벌크 데이터 전송을 각각 도시한다.
도7은 본 개시내용의 특정 양상들에 따른, 무선 USB 벌크 데이터 전송을 통하여, 호스트로부터 장치로 등시(OUT) 데이터 전송을 위한 예시적인 동작들을 도시한다.
도8은 본 개시내용의 특정 양상들에 따른, 무선 USB 벌크 데이터 전송을 통하여, 호스트로부터 장치로 등시(OUT) 데이터 전송의 다이어그램이다.
도9는 본 개시내용의 특정 양상들에 따른, 무선 USB 벌크 데이터 전송을 통하여, 호스트로부터 장치로 등시(IN) 데이터 전송을 위한 예시적인 동작들을 도시한다.
도10은 본 개시내용의 특정 양상들에 따른, 무선 USB 벌크 데이터 전송을 통하여, 호스트로부터 장치로 등시(IN) 데이터 전송의 다이어그램이다.
The present disclosure will be best understood from the detailed description with reference to the accompanying drawings. In accordance with standard practice in the art, various features have not been shown to be measured. The dimensions of the various features may be arbitrarily increased or reduced for clarity of explanation. Moreover, not all features are shown in all the figures for the sake of simplicity.
1 is a diagrammatic representation of a system in which disclosed embodiments may be practiced.
FIG. 2 is a diagrammatic representation of data being transmitted that may be implemented in the WUSB system of FIG.
3 is a flowchart illustrating a method for transmitting data that may be implemented in the WUSB system of FIG.
4 is a flowchart of a method for transforming data, which may be implemented in the method of FIG.
5 is a flowchart of an alternative method for transforming data in which the method of FIG. 3 may be implemented.
6A and 6B illustrate example isochronous data transmissions and corresponding bulk data transmissions, respectively, in accordance with certain aspects of the present disclosure.
7 illustrates example operations for isochronous (OUT) data transfer from a host to a device, via wireless USB bulk data transfer, in accordance with certain aspects of the present disclosure.
8 is a diagram of an isochronous (OUT) data transfer from a host to a device via wireless USB bulk data transfer, in accordance with certain aspects of the present disclosure.
9 illustrates example operations for isochronous (IN) data transfer from a host to a device via wireless USB bulk data transfer, in accordance with certain aspects of the present disclosure.
10 is a diagram of an isochronous (IN) data transfer from a host to a device, via wireless USB bulk data transfer, in accordance with certain aspects of the present disclosure.

본 발명의 다양한 양상들이 이제 도면을 참조하여 보다 충분히 설명된다. 그러나, 본 발명은 다수의 다양한 형태로 구현될 수 있고 본 개시내용 전체에서 제시되는 임의의 특정 구조 또는 기능으로 제한되도록 해석되어서는 안 된다. 오히려, 이들 양상들은 본 개시내용이 철저하고 완전하고 당업자에게 본 발명의 범위를 완전히 전달하도록 제공되는 것이다. 본 교시내용에 기초하여, 독립적으로 또는 본 발명의 다른 양상과 결합하여 구현되든지 간에, 당업자는 본 발명의 범위가 개시된 본 발명의 모든 양상을 커버하도록 의도된 것임을 이해할 것이다. 예를들어, 제시된 양상들의 임의 갯수를 이용하여 장치가 구현될 수 있거나 장법이 수행될 수 있다. 또한, 본 발명의 범위는 다른 구성, 기능성, 또는 제시된 본 발명의 다양한 양상들에 추가하거나 제외한 구성 및 기능성을 이용하여 구현되는 방법 및 장치가 커버되도록 의도된다. 개시된 본 발명의 임의의 양상은 청구항의 하나 이상의 엘리먼트들에 의해 구현될 수 있음이 이해되어야 한다.Various aspects of the invention are now described more fully with reference to the drawings. However, the present invention may be embodied in many different forms and should not be construed as limited to any particular structure or function presented throughout this disclosure. Rather, these aspects are provided so that this disclosure will be thorough and complete, and will fully convey the scope of the invention to those skilled in the art. Based on the present teachings, whether implemented independently or in combination with other aspects of the present invention, those skilled in the art will understand that the scope of the present invention is intended to cover all aspects of the disclosed invention. For example, an apparatus may be implemented or a method may be performed using any number of the presented aspects. In addition, the scope of the present invention is intended to cover methods and apparatus that are implemented using other configurations, functionality, or configurations and functionality in addition to or excluding the various aspects of the present invention as set forth. It should be understood that any aspect of the disclosed subject matter may be implemented by one or more elements of a claim.

용어 “예시적인”은 여기서 “예, 보기, 또는 예시로서 기능하는” 것을 의미하는 것으로 이용된다. “예시적인” 것으로서 여기 기재되는 임의의 양상이 반드시 다른 양상들에 비해 바람직하거나 유리한 것으로 해석될 필요가 있는 것은 아니다. The term " exemplary " is used herein to mean " serving as an example, example, or illustration. &Quot; Any aspect described herein as “exemplary” does not necessarily need to be construed as preferred or advantageous over other aspects.

본 개시내용은 일반적으로는 무선 USB(WUSB) 시스템에서 벌크 데이터 전송 타입을 이용하여 등시 데이터를 전송하는 것에 관련된다. 그러나, 다음 개시내용은 개시내용의 상이한 특징들을 구현하기 위한 다수의 상이한 실시예들, 또는 예시들을 제공한다는 점이 이해되어야 한다. 컴포넌트들 및 배치들의 특정 예들이 이하에서 본 개시내용을 단순화하기 위해서 설명된다. 물론, 이들은 단순한 예시들이며 제한적인 것으로 의도되지 않는다. 또한, 본 개시내용은 다양한 실시예들에서 참조 번호들 및/또는 문자들을 반복할 수 있다. 이러한 반복은 단순성 및 간결성을 위한 것이며 설명된 다양한 실시예들 및/또는 구성들 간의 관계를 그대로 되풀이하는 것은 아니다.The present disclosure generally relates to isochronous data transfer using a bulk data transfer type in a wireless USB (WUSB) system. However, it should be understood that the following disclosure provides a number of different embodiments, or examples, for implementing the different features of the disclosure. Specific examples of components and arrangements are described below to simplify the present disclosure. Of course, these are merely examples and are not intended to be limiting. In addition, the present disclosure may repeat reference numerals and / or letters in the various embodiments. This repetition is for the purpose of simplicity and brevity and does not reiterate the relationship between the various embodiments and / or configurations described.

도1을 참조하면, 시스템(100)은 본 개시내용의 하나 이상의 실시예들로부터 이점을 얻을 수 있는 예시적인 WUSB 시스템이다. 시스템(100)은 적어도 하나의 USB 포트를 갖는 컴퓨터 또는 랩톱과 같은 USB 가능 호스트 장치(110)를 포함한다. 호스트(110)는 USB 포트를 통해 호스트 유선 어뎁터(HWA)(112)에 접속된다. 호스트(110) 및 HWA(112)는 USB 유선(114)을 통해 통신한다. HWA(112)는 호스트(110)에게 WUSB 기능성을 제공한다.Referring to FIG. 1, system 100 is an exemplary WUSB system that may benefit from one or more embodiments of the present disclosure. System 100 includes a USB capable host device 110, such as a computer or laptop, having at least one USB port. The host 110 is connected to a host wired adapter (HWA) 112 via a USB port. Host 110 and HWA 112 communicate via USB wire 114. HWA 112 provides WUSB functionality to host 110.

호스트(110)은 HWA(112)를 포함하는 통신을 용이하게 하는 소프트웨어를 제공하는 HWA 드라이버(116)를 갖는다. HWA(112)는 무선 송수신기(118)를 포함한다. HWA(112)는 무선 링크(122)를 통해 장치 유선 어뎁터(DWA)(120)와 무선으로 통신하기 위하여 송수신기(118)를 이용한다. HWA(112)는 WUSB 프로토콜을 이용하여 DWA(120)와 통신한다. 무선 링크(122)가 초광대역(ultra-wideband: UWB) 스펙트럼을 통해 구축된다.Host 110 has HWA driver 116 that provides software that facilitates communication including HWA 112. HWA 112 includes a wireless transceiver 118. HWA 112 uses transceiver 118 to communicate wirelessly with device wired adapter (DWA) 120 via wireless link 122. HWA 112 communicates with DWA 120 using the WUSB protocol. Wireless link 122 is established over an ultra-wideband (UWB) spectrum.

당업자는 송수신기를 이용하는 대신에, 송신(예를들어 송신기) 및 수신(예를들어 수신기)을 위해 분리된 컴포넌트들이 이용될 수 있음을 이해할 수 있을 것이다.Those skilled in the art will appreciate that instead of using a transceiver, separate components may be used for transmission (e.g., transmitter) and reception (e.g., receiver).

호스트(110)는 DWA(120)를 포함하는 통신을 용이하게 하는 DWA 드라이버(124)를 추가로 포함한다. DWA(120)는 HWA 송수신기(118)를 통해 HWA(112)와 통신하는데 이용되는 무선 송수신기(126)를 갖는다. DWA(120)는 USB 오디오 스피커와 같은 USB 가능 등시 장치(128)에 접속된다. 등시 장치(128) 및 DWA(120)는 DWA(120)와 등시 장치(128) 간의 등시 전송들을 용이하게 하는, 등시 엔드포인트(endpoint)(132 및 134)를 각각 포함한다. DWA(120)는 DWA(120)로부터 등시 장치(128)로의 등시 전송들을 용이하게 하는 등시 스케줄러(136)를 또한 포함한다. 특히, 스케줄러(136)는 시간에 기초한 방식으로 등시 데이터 전송들을 전달한다.Host 110 further includes a DWA driver 124 that facilitates communication including DWA 120. DWA 120 has a wireless transceiver 126 that is used to communicate with HWA 112 via HWA transceiver 118. DWA 120 is connected to a USB capable isochronous device 128, such as a USB audio speaker. Isochronous device 128 and DWA 120 include isochronous endpoints 132 and 134, respectively, to facilitate isochronous transmissions between DWA 120 and isochronous device 128. DWA 120 also includes an isochronous scheduler 136 that facilitates isochronous transmissions from DWA 120 to isochronous device 128. In particular, scheduler 136 delivers isochronous data transmissions in a time-based manner.

도2를 참조하면, 실시예에 따라 데이터가 전송되고 있는 다이어그램 표현이 도시되어 있다. 예를들어, 다이어그램 표현(200)은 도1의 WUSB 시스템(100)에서 구현될 수 있다. 도1 및 도2의 유사한 특징은 간략성을 위하여 동일하게 번호가 메겨진다. 먼저, DWA 드라이버(124)가 USB 등시 장치(128)를 인식하고 열거(enumerate)한다. 그 후, DWA 드라이버(124)가 등시 전송 타입으로 선언된 유선 어뎁터 원격 파이프로의 USB 등시 장치(128)와 연관된 DWA(120)의 등시 엔드포인트(132)에 등시 전송 타입으로 선언된 유선 어뎁터 원격 파이프를 매핑한다. 또한, DWA(120)은 등시 스케쥴된 엔드포인트으로서 DWA(120) 상에 등시 엔드포인트(134)를 설정한다.Referring to Fig. 2, there is shown a diagram representation in which data is being transmitted in accordance with an embodiment. For example, diagram representation 200 may be implemented in WUSB system 100 of FIG. Similar features of FIGS. 1 and 2 are numbered identically for simplicity. First, the DWA driver 124 recognizes and enumerates the USB isochronous device 128. The DWA driver 124 then declares the isochronous transfer type to the isochronous endpoint 132 of the DWA 120 associated with the USB isochronous device 128 to the wired adapter remote pipe declared as the isochronous transfer type. Wired adapter remote pipes. DWA 120 also establishes isochronous endpoint 134 on DWA 120 as an isochronously scheduled endpoint.

랩톱과 같은 USB 가능 호스트 장치(110)는 등시 데이터 전송(210)을 USB 가능 등시 장치(128)에 요청한다. 등시 데이터 전송 요청이 호스트(110)에 의해 행해지는 경우에, 등시 데이터 전송 타입(210)을 갖는 등시 데이터 전송이 DWA 드라이버(124)에 제공된다. 등시 데이터 전송(210)은 등시 데이터 패킷들(212)로 구성된다. DWA 드라이버(124)는 등시 데이터 패킷들(212)을 벌크 데이터 전송 타입(214)을 갖는 등시 데이터로 변환한다.The USB capable host device 110, such as a laptop, requests isochronous data transfer 210 to the USB capable isochronous device 128. In the case where an isochronous data transfer request is made by the host 110, isochronous data transfer with the isochronous data transfer type 210 is provided to the DWA driver 124. Isochronous data transmission 210 consists of isochronous data packets 212. DWA driver 124 converts isochronous data packets 212 into isochronous data with bulk data transfer type 214.

DWA 드라이버(124)는 각각의 등시 데이터 패킷들(212)에 대응하는 패킷 길이들(216)을 결정한다. 다음, DWA 드라이버(124)는 패킷 길이들(216)을 등시 데이터 패킷들(212)과 결합한다. 결과적인 데이터는 벌크 데이터 전송 타입(214)을 갖는 등시 데이터이다. 본 개시내용의 실시예에서, 패킷 길이들(216) 및 대응 등시 데이터 패킷들(212)의 결합은 패킷 길이들(216) 및 대응 등시 데이터 패킷들(212)의 연접(concatenation)이다.DWA driver 124 determines packet lengths 216 corresponding to each isochronous data packets 212. DWA driver 124 then combines packet lengths 216 with isochronous data packets 212. The resulting data is isochronous data with bulk data transfer type 214. In an embodiment of the present disclosure, the combination of packet lengths 216 and corresponding isochronous data packets 212 is a concatenation of packet lengths 216 and corresponding isochronous data packets 212.

이 연접이 등시 데이터 전송(210) 내의 각각의 등시 데이터 패킷(212)에 대하여 되풀이해서 반복된다. 본 개시내용에 따른 실시예에서, 각 패킷 길이가 대응 등시 데이터 패킷에 선행하는 방식으로 DWA 드라이버(124)는 패킷 길이들(216)을 등시 데이터 패킷들(212)과 결합한다. 벌크 전송 타입(214)을 갖는 등시 데이터가 HWA(112)로의 전달을 위하여 HWA 드라이버(116)로 제공된다.This concatenation is repeated for each isochronous data packet 212 in the isochronous data transfer 210. In an embodiment according to the present disclosure, the DWA driver 124 combines packet lengths 216 with isochronous data packets 212 in a manner that each packet length precedes a corresponding isochronous data packet. Isochronous data with bulk transfer type 214 is provided to HWA driver 116 for delivery to HWA 112.

다음, HWA(112)가 벌크 데이터 전송을 이용하여 UWB 링크(122)를 통해 DWA(120)로 등시 데이터(214)를 무선으로 전송한다. DWA(120)가 등시 데이터(214)를 수신한 후에, DWA(120)는 데이터(214)를 다시 등시 데이터 패킷들(212)로 변환하여 USB 가능 등시 장치(128)로의 전달에 적합한 데이터 패킷들(212)을 형성한다. HWA 112 then wirelessly transmits isochronous data 214 to DWA 120 over UWB link 122 using bulk data transmission. After the DWA 120 receives the isochronous data 214, the DWA 120 converts the data 214 back into isochronous data packets 212 and is suitable for delivery to the USB capable isochronous device 128. Form data packets 212.

본 개시내용의 일 실시예에서, DWA(120)은 벌크 데이터 전송 타입(214)을 갖는 등시 데이터가 집합된 등시 데이터 패킷들(212)의 벌크 전송이라는 점을 이해한다. 따라서, DWA(120)는 등시 데이터 패킷들(212)을 벌크 데이터 전송 타입(214)을 갖는 등시 데이터로부터 분리한다. DWA(120)는 등시 스케줄러(136)에 기초하여 등시 데이터 패킷들(212)의 전달을 아웃으로 미터링(meter out)하기 위하여 결과적인 등시 데이터 패킷들(212)을 DWA(120) 상의 등시 엔드포인트(134)로 전달한다. 특정 실시예들에 따르면, 스케줄러(136)는 데이터가 향하는 등시 엔드포인트에 의해 정의되는 서비스의 품질 및/또는 트래픽 파라미터들에 따라 등시 데이터 패킷들의 전달을 아웃으로 미터링할 것이다.In one embodiment of the present disclosure, DWA 120 understands that bulk transmission of isochronous data packets 212 with aggregated isochronous data having bulk data transmission type 214. Thus, DWA 120 separates isochronous data packets 212 from isochronous data having bulk data transfer type 214. DWA 120 may store the resulting isochronous data packets 212 on DWA 120 to meter out delivery of isochronous data packets 212 based on isochronous scheduler 136. Forward to isochronous endpoint 134. According to certain embodiments, the scheduler 136 will meter delivery of isochronous data packets out according to the quality of service and / or traffic parameters defined by the isochronous endpoint to which the data is directed.

특히, DWA(120)는 원(original) 등시 데이터 패킷들(212)을 벌크 데이터 전송 타입(214)을 갖는 등시 데이터 전송으로부터 분리한다. DWA(120)가 수신된 등시 데이터(214)의 등시 데이터 패킷들(212)로의 변환을 완료한 후에, DWA(120)는 원 등시 데이터 패킷들(212)을 USB 가능 등시 장치(128)로 전달할 수 있다.In particular, DWA 120 separates original isochronous data packets 212 from isochronous data transmissions having bulk data transfer type 214. After the DWA 120 completes the conversion of the received isochronous data 214 into isochronous data packets 212, the DWA 120 sends the original isochronous data packets 212 to a USB capable isochronous device ( 128).

도3을 또한 참조하면, 도1의 시스템(100)에서 구현될 수 있는 실시예에 따라 데이터를 무선으로 전송하기 위한 방법(300)의 흐름도가 도시되어 있다. 특정 실시예들에 따르면, 호스트와 장치 간의 직접(유선) 링크를 통해서 마치 등시 데이터 전송 동작들을 이용하여 전송하는 것처럼, 도3의 동작들이 USB 벌크 데이터 전송 동작들을 이용하여 호스트 및 USB 장치 사이에서 무선으로 데이터를 전송하도록 수행될 수 있다.Referring also to FIG. 3, shown is a flow diagram of a method 300 for wirelessly transmitting data in accordance with an embodiment that may be implemented in the system 100 of FIG. 1. According to certain embodiments, the operations of FIG. 3 utilize USB bulk data transfer operations between the host and the USB device as though transmitting using isochronous data transfer operations over a direct (wired) link between the host and the device. It may be performed to transmit data wirelessly.

도6은 HWA 및 DWA 간의 무선 링크를 통한, 호스트 및 USB 가능 장치 사이의 예시적인 패킷 교환의 다이어그램이며, 이것은 도3에 도시된 동작들에 대응될 수 있다.6 is a diagram of an example packet exchange between a host and a USB capable device, over a wireless link between HWA and DWA, which may correspond to the operations shown in FIG.

방법(300)은 제 1 데이터 전송 타입(등시 데이터 전송 타입과 같은)을 갖는 제 1 데이터(등시 데이터와 같은)를 제공함에 의해 블록(310)에서 시작된다. 블록(320)에서, 방법(300)은 제 1 데이터를 제 2 데이터 전송 타입(벌크 전송 타입과 같은)을 갖는 제 2 데이터(등시 데이터와 같은)로 변환함에 의해서 계속된다. 방법(300)은 블록(330)에서 제 2 데이터 전송 타입을 이용하여 제 2 데이터를 제 1 USB 가능 장치(HWA와 같은)로부터 제 2 USB 가능 장치(DWA와 같은)로 무선으로 전송함에 의해 계속된다. 방법(300)은 무선으로 전송된 제 2 데이터를 제 1 데이터 전송 타입을 갖는 제 3 데이터(등시 데이터와 같은)로 변환함에 의해 계속된다.The method 300 begins at block 310 by providing first data (such as isochronous data) having a first data transmission type (such as an isochronous data transmission type). At block 320, the method 300 continues by converting the first data into second data (such as isochronous data) having a second data transmission type (such as a bulk transmission type). The method 300 continues by wirelessly transferring the second data from the first USB capable device (such as HWA) to the second USB capable device (such as DWA) using the second data transfer type in block 330. do. The method 300 continues by converting wirelessly transmitted second data into third data (such as isochronous data) having a first data transmission type.

도4를 참조하면, 도3의 블록(320)에서 사용될 수 있는 데이터를 변환하기 위한 방법의 흐름도가 도시되어 있다. 상기 방법은 블록(410)에서 다수의 등시 데이터 패킷들 각각에 대응하는 등시 데이터 패킷 길이를 결정함에 의해 시작된다. 방법은 블록(420)에서 각각의 등시 데이터 패킷이 대응하는 등시 데이터 패킷을 선행하도록 등시 데이터 패킷 길이들과 다수의 등시 데이터 패킷들을 결합함에 의해 계속된다.4, a flowchart of a method for converting data that can be used in block 320 of FIG. 3 is shown. The method begins by determining in block 410 isochronous data packet length corresponding to each of the plurality of isochronous data packets. The method continues by combining multiple isochronous data packets with isochronous data packet lengths such that each isochronous data packet precedes the corresponding isochronous data packet at block 420.

도5를 참조하면, 도3의 블록(340)에서 사용될 수 있는 데이터를 변환하기 위한 방법을 나타내는 흐름도가 도시되어 있다. 상기 방법은 다수의 등시 데이터 패킷들을 제 2 데이터(벌크 전송 타입을 갖는 등시 데이터와 같은)로부터 분리하는 것을 포함한다.Referring to FIG. 5, a flow diagram illustrating a method for transforming data that may be used in block 340 of FIG. 3 is shown. The method includes separating a plurality of isochronous data packets from second data (such as isochronous data with a bulk transmission type).

대안적인 실시예에서, 도2를 다시 참조하면, 벌크 데이터 타입(214)을 포함하는 등시 데이터는 더 높은 우선순위로 마킹되어, 다른 데이터 전송 타입들보다 WUSB 트랜잭션들에서 더 이른 도달을 촉진할 수 있다. 예를들어, 도2에 도시된 벌크 데이터 전송(218)은 DWA 드라이버(124)에 제공된다. 위에서 설명된 바와 같이, 등시 데이터 전송 타입(210)을 갖는 등시 데이터 전송은 또한 DWA 드라이버(124)에 제공된다. 등시 데이터 전송(210)을 벌크 데이터 전송 타입(214)을 갖는 등시 데이터로 변환한 후에, DWA 드라이버(124)는 다른 데이터 전송 타입들보다 WUSB 데이터 전송(200)에서의 전달에 대하여 더 높은 우선순위를 갖도록 결과적인 등시 데이터(214)에 마킹한다. 벌크 데이터(220)와 벌크 데이터 전송 타입(214)을 갖는 등시 데이터 모두가 HWA 드라이버(116)로 제공된다. HWA 드라이버(116)는 등시 데이터(214)의 우선순위를 인식하고 이에 따라 벌크 데이터(220)에 앞선 DWA(120)로의 전달을 위하여 벌크 데이터 전송 타입(214)을 갖는 등시 데이터를 촉진한다.In an alternative embodiment, referring back to FIG. 2, isochronous data including bulk data type 214 is marked at a higher priority, facilitating earlier arrivals in WUSB transactions than other data transfer types. Can be. For example, the bulk data transfer 218 shown in FIG. 2 is provided to the DWA driver 124. As described above, isochronous data transfer with isochronous data transfer type 210 is also provided to DWA driver 124. After converting isochronous data transfer 210 to isochronous data with bulk data transfer type 214, DWA driver 124 is higher for delivery in WUSB data transfer 200 than other data transfer types. Mark the resulting isochronous data 214 to have priority. Both isochronous data with bulk data 220 and bulk data transfer type 214 is provided to HWA driver 116. HWA driver 116 recognizes the priority of isochronous data 214 and thus promotes isochronous data with bulk data transfer type 214 for delivery to DWA 120 prior to bulk data 220. .

특정 양상들에 따르면, 유선 어뎁터 드라이버(예를들어, DWA 드라이버(124) 및/또는 HWA 드라이버(116))는 등시 데이터를 갖는 벌크 데이터가 다른 벌크 데이터보다 더 높은 우선순위가 주어지는 점을 확실히 할 수 있다. 예를들어, 유선 어뎁터들을 이용하는 경우에, 유선 어뎁터 드라이버들은 어떤 트래픽이 다음에 스케쥴되는지 결정하는 스케쥴링 기능을 수행할 수 있다. 따라서, 이러한 스케쥴링 동안에, 유선 어뎁터 드라이버들은 등시 데이터를 갖는 벌크 데이터 패킷들은 다른 벌크 데이터보다 먼저 전송되도록 스케쥴링함에 의해 우선순위지정(prioritization)을 구현할 수 있다.According to certain aspects, the wired adapter driver (e.g., DWA driver 124 and / or HWA driver 116) ensures that bulk data with isochronous data is given a higher priority than other bulk data. can do. For example, in the case of using wired adapters, the wired adapter drivers may perform a scheduling function that determines which traffic is scheduled next. Thus, during this scheduling, wireline adapter drivers may implement prioritization by scheduling bulk data packets with isochronous data to be sent before other bulk data.

특정 양상들에 따르면, 등시 데이터를 갖는 벌크 데이터 패킷들은 다른 큐(queue)들에 앞서 서비스되는 높은 우선 큐에 삽입시킴에 의해서 더 높은 우선순위가 주어질 수 있다. 특정 실시예들에 따르면, 우선순위지정을 추가로 확실히 하기 위해서, WUSB 호스트는 스케쥴링 알고리즘에서 등시 데이터를 갖는 벌크 데이터 패킷들의 우선순위지정을 또한 가능하게 할 수 있다.According to certain aspects, bulk data packets with isochronous data may be given higher priority by inserting into a high priority queue that is serviced before other queues. According to certain embodiments, to further ensure prioritization, the WUSB host may also enable prioritization of bulk data packets with isochronous data in the scheduling algorithm.

특정 실시예들에 따르면, 큐들의 우선순위가 하나 이상의 큐들로부터 전송을 실제로 지연시킴에 의해 달성될 수 있다. 예를들어, (통상의) 벌크 데이터 큐(등시 데이터 패킷들을 갖지 않는 벌크 데이터 전송에 이용되는)는 DWA 및/또는 HWA에서의 메모리 사용량을 모니터링함에 의해 때때로 전송이 제한될 수 있다. 메모리 사용량이 감지되는 이러한 경우에, 벌크 데이터 큐는 지연되어, 벌크 데이터 패킷들(잠재적으로는 등시 데이터를 갖는 작은 벌크 데이터 패킷들)의 전송을 위한 대역폭에서 높은 우선순위 큐를 제거할 수 있다.According to certain embodiments, the priority of the queues may be achieved by actually delaying transmission from one or more queues. For example, (normal) bulk data queues (used for bulk data transmissions with no isochronous data packets) may sometimes be restricted from transmission by monitoring memory usage in DWA and / or HWA. In this case where memory usage is detected, the bulk data queue may be delayed to remove the high priority queue in bandwidth for the transmission of bulk data packets (potentially small bulk data packets with isochronous data). .

데이터 전송들의 특정 타입들은 재배열되거나 분할되지 않을 수 있다. 따라서, 특정 실시예들의 경우에, DWA 드라이버는 벌크 데이터 큐에서 임의의 데이터 패킷을 바이패싱(bypassing)하지 않고 등시 데이터 패이로드(payload)를 모을 수 있다(예를들어, 바이패싱이 분할을 야기하는 경우에). 예를들어, 벌크 데이터 큐가 DWA에 의해 개시되는 데이터 패킷에 대한 전송 요청 헤더를 이전에 송신했다면, 일부 경우들에서, 이 트랜잭션은 DWA에 대한 유선 어뎁터 프로토콜에 따라 데이터 패이로드로부터 분할되지 않을 것이다. 따라서, 이런 경우에, 우선순위를 표시하는 제 1 마커 및 분할 능력을 표시하는 제 2 마커의 2개의 마커들이 DWA 드라이버로부터 HWA 드라이버로 패킷들을 전달하는데 이용될 수 있다.Certain types of data transmissions may not be rearranged or partitioned. Thus, in the case of certain embodiments, the DWA driver may collect isochronous data payloads without bypassing any data packets in the bulk data queue (e.g., bypassing may cause partitioning). If caused). For example, if the bulk data queue previously sent a transmission request header for a data packet initiated by DWA, in some cases this transaction will not be split from the data payload according to the wired adapter protocol for DWA. . Thus, in this case, two markers of the first marker indicating the priority and the second marker indicating the segmentation capability can be used to deliver packets from the DWA driver to the HWA driver.

특정 실시예들에 따르면, HWA 드라이버에 송신된 모든 벌크 데이터 전송은 벌크 데이터 전송에 대한 문맥(context) 정보를 갖는 I/O 요청 패킷(I/O request pachet: IRP)을 가질 수 있다. 특정 실시예들에 따르면, 우선순위 필드로 사용하기 위해 유보된 IRP 내의 특정 필드가 등시 데이터 패킷들을 갖는 벌크 데이터 전송들에 대한 높은 우선순위를 표시하도록 설정될 수 있다.According to certain embodiments, all bulk data transmissions sent to the HWA driver may have an I / O request pachet (IRP) with context information for the bulk data transmission. According to certain embodiments, a particular field in the reserved IRP for use as a priority field may be set to indicate a high priority for bulk data transmissions with isochronous data packets.

본 개시내용의 대안적 실시예들은 오디오 마이크로폰인 USB 가능 등시 장치를 갖는, 도1에 도시된 바와 같은 WUSB 시스템을 포함할 수 있다. 다른 실시예들은 실시간 데이터 전송 스트리밍을 지원하는 USB 가능 장치들을 포함할 수 있다. 또한, 대안적인 실시예에서, 도1에 도시된 WUSB 시스템 내의 USB 가능 호스트(110)는 네이티브(native) WUSB 가능 호스트를 선택적으로 포함할 수 있어서, HWA(112)에 대한 필요를 제거할 수 있다. 또한, 본 개시내용에 따른 다른 대안적인 실시예에서, 도1에 도시된 WUSB 시스템(100) 내의 USB 가능 등시 장치(128)는 네이티브 WUSB 가능 등시 장치를 포함하며, 따라서 DWA(120)에 대한 필요가 제거된다.Alternative embodiments of the present disclosure may include a WUSB system as shown in FIG. 1 with a USB capable isochronous device that is an audio microphone. Other embodiments may include USB capable devices that support real time data transfer streaming. Also, in an alternative embodiment, the USB capable host 110 in the WUSB system shown in FIG. 1 may optionally include a native WUSB capable host, thus eliminating the need for HWA 112. . In addition, in another alternative embodiment according to the present disclosure, the USB capable isochronous device 128 in the WUSB system 100 shown in FIG. Need to be eliminated.

또한, 다른 대안적인 실시예에서, 도1의 UWB 시스템(100)은 DWA(120)으로부터 기원하고 HWA(112)로 등시 데이터를 무선으로 전송하기 위하여 벌크 데이터 전송을 이용하는 등시 데이터 전송들을 지원한다.Further, in another alternative embodiment, the UWB system 100 of FIG. 1 supports isochronous data transmissions originating from the DWA 120 and using bulk data transmission to wirelessly transmit isochronous data to the HWA 112. do.

예시적인 패킷 변환Example Packet Conversion

위에서 설명된 바와 같이, 무선 통신의 특성 때문에, WUSB 등시 데이터 전송들은 유선 USB 등시 데이터 전송들과 비교하여 증가된 복잡성을 요할 수 있다. 그러나, 본 개시내용의 특정 실시예들은 무선 USB 벌크 데이터 전송 동작들을 이용하여, 호스트와 USB 장치 간에 등시 데이터 전송들을 가능하게 할 수 있다. As described above, due to the nature of wireless communication, WUSB isochronous data transmissions may require increased complexity compared to wired USB isochronous data transmissions. However, certain embodiments of the present disclosure may use isochronous USB bulk data transfer operations to enable isochronous data transfers between a host and a USB device.

여기서 제시된 기술들을 이용하면, 무선 USB 벌크 데이터 전송들이 호스트와 USB 가능 등시 장치 사이에서, 이들이 마치 유선 USB 접속을 통해 직접 접속된 것처럼, 등시 데이터 전송들을 달성하는데 이용될 수 있다.Using the techniques presented herein, wireless USB bulk data transfers can be used between the host and a USB capable isochronous device to achieve isochronous data transfers as if they were directly connected via a wired USB connection.

위에서 설명된 바와 같이, 특정 실시예들에서, 등시 전송 타입으로부터 벌크 데이터 전송 타입으로 데이터 변환을 준비하는 경우에, 데이터 패킷 길이들이 벌크 데이터 스트림 내에서 이들 각각의 등시 데이터 패킷들과 연접될 수 있다. 이 때, 등시 데이터 패킷들과 이들의 각 길이들은 무선 USB 벌크 데이터 전송을 이용하여 전송될 수 있다. 등시 데이터 패킷들이 벌크 데이터 전송에 내장된(embedded) 상태로 벌크 데이터 전송을 수신하는 경우에, 데이터 패킷 길이들은 수신 엔티티가 대응하는 등시 데이터 패킷들을 추출하는 것을 허용할 수 있다. 예를들어, 수신 엔티티는 데이터 패킷 길이를 판독할 수 있고 대응하는 데이터 패킷의 바이트들의 다음 수를 판독할 수 있다.As described above, in certain embodiments, when preparing for data conversion from an isochronous transport type to a bulk data transport type, data packet lengths may be concatenated with their respective isochronous data packets within the bulk data stream. Can be. At this time, the isochronous data packets and their respective lengths may be transmitted using wireless USB bulk data transmission. In the case of receiving a bulk data transmission with isochronous data packets embedded in the bulk data transmission, the data packet lengths may allow the receiving entity to extract the corresponding isochronous data packets. For example, the receiving entity can read the data packet length and read the next number of bytes of the corresponding data packet.

도6A 및 도6B는 어떻게 등시 데이터 패킷들이 벌크 데이터 전송에 적합한 데이터 패킷들로 변환될 수 있는지를 보여준다. 도6A는 데이터 패킷들(212)의 등시 데이터 전송(210)을 도시한다. 도시된 바와 같이, 각 데이터 패킷(212)은 대응하는 길이 L(예를들어, 데이터 패킷 D1은 길이 L1을 갖고, 데이터 패킷 D2는 길이 L2를 갖는 식으로)을 갖는다. 데이터 패킷들은 OUT 토큰(token)들을 갖는 통상의 등시 데이터 전송과 이에 뒤이은 데이터 패킷들(D1 내지 DN)을 이용하여, 예를들어 호스트 유선 어뎁터로 전송될 수 있다. 등시 데이터 전송들에 따라, 각 데이터 패킷의 길이가 변동될 수 있다.6A and 6B show how isochronous data packets can be converted into data packets suitable for bulk data transmission. 6A shows isochronous data transfer 210 of data packets 212. As shown, each data packet 212 has a corresponding length L (eg, data packet D1 has a length L1 and data packet D2 has a length L2). The data packets may be sent, for example, to a host wired adapter using a normal isochronous data transmission with OUT tokens followed by data packets D1 through DN. Depending on the isochronous data transmissions, the length of each data packet may vary.

도6B에 도시된 바와 같이, 등시 데이터 패킷들(212)(D1 내지 DN)은 연접된 데이터 패킷 길이들(216)을 갖는 벌크 데이터 스트림(214)으로 변환될 수 있다. 다음, 등시 데이터 패킷들(212)은 패킷들(예를들어, D')의 벌크 데이터 전송들을 통하여 전송될 수 있다. 벌크 데이터 전송들에 따라, 최대 데이터 패킷 길이(LMAX)가 가능한 경우, 각 전송에 대해 이용될 수 있다. 최대 데이터 패킷 길이보다 작은 패킷은 벌크 데이터 전송의 종점(end)을 신호할 수 있다. 따라서, 등시 데이터 패킷들(212)과 이에 대응하는 데이터 패킷 길이들을 전송하는데 요구되는 벌크 데이터 전송들의 수가 LMAX와 다양한 데이터 패킷들(212)의 실제 길이들에 따라 변동될 수 있다.As shown in FIG. 6B, isochronous data packets 212 (D1 through DN) may be converted to bulk data stream 214 having concatenated data packet lengths 216. Isochronous data packets 212 may then be sent via bulk data transmissions of packets (eg, D ′). Depending on the bulk data transmissions, a maximum data packet length (L MAX ) may be used for each transmission if possible. Packets smaller than the maximum data packet length may signal the end of the bulk data transmission. Thus, the number of bulk data transmissions required to transmit isochronous data packets 212 and corresponding data packet lengths may vary depending on L MAX and the actual lengths of the various data packets 212.

특정 실시예들의 경우에, 수신 장치는 벌크 데이터 전송의 수신을 확인하기 위하여 ACK 패킷을 생성할 수 있다. 그러나, 데이터 전송의 등시 특성을 지원하기 위하여, 비트 에러들(예를들어, CRC와의 불일치(mismatch)로 표시되는 바와 같은) 을 갖는 패킷들의 재송신을 요구하는 규칙들이 무시될 수 있으며 패킷들의 일부 또는 기지의 패킷(예를들어 오디오 또는 비디오 데이터 전송들 중 묵음(silence)에 대응하는)이 이에 불구하고 처리될 수 있다.In the case of specific embodiments, the receiving device may generate an ACK packet to confirm receipt of the bulk data transmission. However, to support the isochronous nature of data transmission, rules requiring retransmission of packets with bit errors (eg, as indicated by mismatch with CRC) may be ignored and some of the packets may be ignored. Or a known packet (e.g. corresponding to silence of audio or video data transmissions) may be processed in spite of this.

위에서 설명한 바와 같이, 특정 실시예들에서, 데이터가 대역폭과 호스트 및 디바이스 간에 협상된 레이턴시 요구사항들을 만족시키기에 충분한 레이트에서 전송되는 것을 확실히 하기 위하여, 등시 데이터 패킷들을 갖는 벌크 데이터 전달들이 다른 벌크 데이터보다 더 높은 우선순위를 갖도록 마킹될 수 있다. 특정 실시예들에 따르면, HWA 드라이버로 송신된 모든 벌크 데이터 전송은 벌크 데이터 전송을 위한 문맥 정보를 갖는 I/O 요청 패킷(IRP)을 가질 수 있다. 특정 실시예들에 따르면, 우선순위 필드로 사용하기 위해 유보된 IRP 내의 특정 필드는 등시 데이터 패킷들을 갖는 벌크 데이터 전송들을 위한 높은 우선순위를 표시하도록 설정될 수 있다. 또한, 특정 실시예들에서, 다른 벌크 데이터가 등시 데이터 패킷들을 갖는 벌크 데이터 전송 내에 포함될 수 있다. 이러한 실시예들에서, 임의의 적절한 기술이 등시 데이터 패킷들과 다른 벌크 데이터 패킷들 사이를 구별하는데 이용될 수 있다.As described above, in certain embodiments, bulk data transfers with isochronous data packets may be used to ensure that data is transmitted at a rate sufficient to satisfy bandwidth and negotiated latency requirements between the host and the device. It may be marked to have a higher priority than data. According to certain embodiments, all bulk data transmissions sent to the HWA driver may have an I / O Request Packet (IRP) with contextual information for bulk data transmission. According to certain embodiments, a particular field in the IRP reserved for use as a priority field may be set to indicate a high priority for bulk data transmissions with isochronous data packets. Also, in certain embodiments, other bulk data may be included in the bulk data transmission with isochronous data packets. In such embodiments, any suitable technique may be used to distinguish between isochronous data packets and other bulk data packets.

도7은 본 개시내용의 특정 양상들에 따라, 무선 USB 벌크 데이터 전송에 따라, 호스트로부터 장치로 등시(OUT) 데이터 전송을 위한 예시적인 동작들을 나타낸다. 이러한 동작들은 호스트 장치에서(예를들어 DWA 드라이버, HWA 드라이버, 또는 HWA에 의해) 동작할 수 있는 동작들(602-604)과 USB 가능 장치에서(예를들어, DWA 또는 DWA의 스케줄러에 의해)을 포함한다.7 illustrates example operations for isochronous (OUT) data transfer from a host to a device, in accordance with wireless USB bulk data transfer, in accordance with certain aspects of the present disclosure. These operations can be operated on a host device (eg by a DWA driver, HWA driver, or HWA) (602-604) and on a USB capable device (eg by a scheduler of DWA or DWA). It includes.

602에서, 상기 동작들이 등시 데이터 패킷들을 획득함에 의해 시작된다. 등시 데이터 패킷들은 예를들어 (어플리케이션들로부터 등시 데이터 패킷들을 얻는 (DWA 드라이버의 상부에서 동작할 수 있는) 등시 데이터 드라이버에 의해 획득될 수 있다. 이러한 등시 데이터 패킷들은 예를들어 스트리밍 오디오(예를들어 음악 플레이어 또는 텔레포니(telephony) 어플리케이션) 또는 비디오에 대응될 수 있다. 604에서, 등시 데이터 패킷들 및 데이터 패킷 길이들은 무선 USB 벌크 데이터 전송을 이용하여 전송될 수 있다.At 602, the operations begin by obtaining isochronous data packets. Isochronous data packets can be obtained, for example, by an isochronous data driver (which can operate on top of a DWA driver) obtaining isochronous data packets from applications. Audio (eg, a music player or telephony application) or video .. At 604, isochronous data packets and data packet lengths may be transmitted using wireless USB bulk data transfer.

612에서, 벌크 데이터 전송이 수신되고 등시 데이터 패킷들이 이로부터 데이터 패킷 길이들을 이용하여 614에서 추출된다. 예를들어, 수신 장치는 데이터 패킷 길이를 판독할 수 있고 등시 데이터 패킷으로서 대응하는 다음 수의 바이트들을 추출하고 나머지 패킷들까지 반복하도록 이러한 프로세스를 반복할 수 있다. 616에서, 등시 데이터 패킷들이 (통상의) 유선 USB 등시 데이터 전송을 이용하여 장치로 전송된다.At 612, a bulk data transfer is received and isochronous data packets are extracted from 614 using data packet lengths therefrom. For example, the receiving device can read the data packet length and repeat this process to extract the corresponding next number of bytes as an isochronous data packet and to repeat the remaining packets. At 616, isochronous data packets are sent to the device using a (normal) wired USB isochronous data transfer.

도8은 호스트로부터 장치로, 도7의 동작들에 대응하는 무선 USB 벌크 데이터 전송 동작들에 따른 예시적인 등시(OUT) 데이터 전송의 다이어그램를 도시한다. 도시된 바와 같이, 등시 데이터 패킷들(212)의 스트림(210)은 등시 데이터 패킷들(212)과 이에 연접된 대응하는 데이터 패킷 길이들(216)을 갖는 벌크 데이터 전송 스트림(214)으로 변환될 수 있다. HWA(112)는 벌크 데이터 전송 스트림(214)을 DWA(120)으로 전송할 수 있다. DWA(120)에서, 등시 데이터 패킷들(212)이 추출되고 USB 가능 등시 데이터(128)로 전송될 수 있다. 예를들어, 도1에 도시된 DWA(120)의 스케줄러(136)가 무선 USB 벌크 데이터 전송을 통해 수신된 등시 데이터 패킷들을 버퍼링하고 이들을 협상된 레이트에 따라 USB 가능 등시 장치(128)로 전송할 수 있다.FIG. 8 shows a diagram of an exemplary isochronous (OUT) data transfer in accordance with wireless USB bulk data transfer operations corresponding to the operations of FIG. 7, from the host to the device. As shown, stream 210 of isochronous data packets 212 is in bulk data transport stream 214 having isochronous data packets 212 and corresponding data packet lengths 216 contiguous thereto. Can be converted. HWA 112 may send bulk data transport stream 214 to DWA 120. At DWA 120, isochronous data packets 212 may be extracted and sent to USB capable isochronous data 128. For example, the scheduler 136 of the DWA 120 shown in FIG. 1 buffers isochronous data packets received via wireless USB bulk data transfer and transfers them to the USB capable isochronous device 128 at a negotiated rate. Can transmit

도9는 본 개시내용의 특정 양상에 따라, 무선 USB 벌크 데이터 전송을 통해, 장치로부터 호스트로 등시(IN) 데이터 전송의 예시적인 동작들을 도시한다. 상기 동작들은 USB 가능 장치에서(예를들어, DWA 또는 DWA의 스케줄러에 의해) 수행될 수 있는 동작들(802-804)과 호스트 컴퓨터에서(예를들어 HWA에 의해) 수행될 수 있는 동작들(812-816)을 포함한다.9 illustrates example operations of isochronous (IN) data transfer from a device to a host, via wireless USB bulk data transfer, in accordance with certain aspects of the present disclosure. The operations may be performed on a USB capable device (e.g., by a DWA or a scheduler of the DWA), operations 802-804, and operations that may be performed on a host computer (e.g., by an HWA). 812-816).

동작들은 802에서, 유선 USB 등시 데이터 전송을 이용하여 등시 데이터 패킷들을 전송함에 의해 시작된다. 804에서, 등시 데이터 패킷들과 데이터 패킷 길이들이 무선 USB 벌크 데이터 전송을 이용하여 전송된다.The operations begin at 802 by sending isochronous data packets using wired USB isochronous data transfer. At 804, isochronous data packets and data packet lengths are sent using wireless USB bulk data transfer.

812에서, 벌크 데이터 전송이 수신되고 등시 데이터 패킷들이 814에서 데이터 패킷 길이들을 이용하여 이로부터 추출된다. 816에서, 등시 데이터 패킷들이 (통상의) 유선 USB 등시 데이터 전송을 이용하여 장치로 전송된다.At 812, a bulk data transmission is received and isochronous data packets are extracted therefrom using data packet lengths at 814. At 816, isochronous data packets are sent to the device using a (normal) wired USB isochronous data transfer.

도10은 도9의 동작들에 대응하는 무선 USB 벌크 데이터 전송 동작들을 통하여, 장치로부터 호스트로의 예시적인 등시(OUT) 데이터 전송의 다이어그램을 도시한다. 도시된 바와 같이, 장치(128)로부터의 등시 데이터 패킷들(212)의 스트림(210)은 등시 데이터 패킷들(212) 및 이에 연접된 대응 데이터 패킷 길이들을 갖는 벌크 데이터 전송 스트림(214)으로 변환될 수 있다. DWA(120)은 벌크 데이터 전송 스트림(214)을 HWA(112)으로 전송할 수 있다. HWA(112)는 HWA 드라이버 및 DWA 드라이버로 벌크 데이터 전송(214)을 전달할 수 있으며, 예를들어 DWA 드라이버는 호스트(120)로 전달될 등시 데이터 패킷들(212)을 추출할 수 있다. 등시 데이터 패킷들은 예를들어 USB 벌크 데이터 전송을 통해 수신된 등시 데이터 패킷들을 버퍼링하고 이들을 협상된 레이트에 따라 호스트(12)로 전송하는 스케줄러 어플리케이션에 의해 미터링된(metered) 방식으로 호스트(120)에 전달될 수 있다.FIG. 10 shows a diagram of an exemplary isochronous (OUT) data transfer from a device to a host, via wireless USB bulk data transfer operations corresponding to the operations of FIG. 9. As shown, stream 210 of isochronous data packets 212 from device 128 is bulk data transport stream 214 having isochronous data packets 212 and corresponding data packet lengths concatenated therewith. Can be converted to DWA 120 may send bulk data transport stream 214 to HWA 112. HWA 112 may forward the bulk data transfer 214 to the HWA driver and the DWA driver, for example, the DWA driver may extract isochronous data packets 212 to be delivered to the host 120. The isochronous data packets are for example host 120 in a metered manner by a scheduler application that buffers isochronous data packets received via a USB bulk data transfer and sends them to the host 12 at a negotiated rate. Can be delivered.

본 개시내용의 실시예들이 상세히 설명되었으나, 당업자는 다양한 변경들, 대치들 및 변화들을 본 개시내용의 사상과 범주를 벗어나지 않으면서 구현할 수 있을 것이다. 예를들어, 특정 실시예들이 특정 단계들 또는 절차들을 설명하나, 많은 대안적인 구현들이 가능하고 단순한 설계적 선택에 의해 가능할 수 있다. 일부 프로세스 단계들이 예를들어 기능, 목적, 표준에 대한 준수, 레거시 구조, 사용자 인터페이스 디자인 등을 고려하여 특정 설명과 상이한 순서로 실행될 수 있다. 개시된 실시예들이 UWB 시스템들을 참조하여 제공되었다. 그러나, 개시된 실시예들의 구현은 특정 무선 주파수 시스템으로 국한되는 것은 아니다. 또한, 이들 및 다른 실시예들로부터 몇 개의 상이한 이점들이 존재한다. 무선 USB 시스템들에서 벌크 데이터 전송을 이용하여 등시 데이터를 전송하기 위한 효율적이고 가격효율적인 방법 및 시스템을 제공하는 것에 부가하여, 개시된 방법 및 시스템은 DWA 및 이의 장치 드라이버에 대한 수정에 의해 용이하게 구현될 수 있다. 또한, 장치 드라이버에서 등시 데이터 전송을 벌크 데이터 전송 타입으로 변환함으로써, 추가적인 엔드포인트들에 대한 필요 및/또는 HWA에서의 핸들링이 제거될 수 있다. 또한, DWA는 DWA 자체 내에서 USB 레벨의 프레임 시작 동조화와 같은 임의의 다른 타이밍 메커니즘과 독립적으로 전달 동조화를 미터링할 수 있다.Although embodiments of the present disclosure have been described in detail, those skilled in the art will be able to implement various changes, substitutions and changes without departing from the spirit and scope of the disclosure. For example, although specific embodiments describe certain steps or procedures, many alternative implementations are possible and may be possible by simple design choices. Some process steps may be executed in a different order than the specific description, for example, taking into account functionality, purpose, compliance with standards, legacy structures, user interface design, and the like. The disclosed embodiments have been provided with reference to UWB systems. However, implementations of the disclosed embodiments are not limited to specific radio frequency systems. In addition, several different advantages exist from these and other embodiments. In addition to providing an efficient and cost effective method and system for transferring isochronous data using bulk data transfer in wireless USB systems, the disclosed methods and systems are readily implemented by modifications to the DWA and its device drivers. Can be. In addition, by converting the isochronous data transfer to the bulk data transfer type in the device driver, the need for additional endpoints and / or handling in the HWA may be eliminated. In addition, the DWA can meter transfer synchronization independently of any other timing mechanism, such as USB-level frame start synchronization within the DWA itself.

특정 실시예들에 따라서, 등시 엔드포인트에 의해 정의된 트래픽 파라미터들과 서비스 품질(QoS)에 따라 유선 어뎁터가 등시 데이터 패킷들의 전송을 미터링할 수 있다.According to certain embodiments, the wired adapter may meter the transmission of isochronous data packets according to traffic parameters and quality of service (QoS) defined by the isochronous endpoint.

위에서 설명된 방법들의 다양한 동작들은 대응하는 기능들을 수행할 수 있는 임의의 적절한 수단에 의해 수행될 수 있다. 상기 수단은 회로, ASIC(application specific integrated circuit), 또는 프로세서를 포함하는 다양한 하드웨어 및/E는 소프트웨어 컴포넌트(들) 및/또는 모듈(들)을 포함할 수 있으나 이로 한정되는 것은 아니다. 일반적으로, 도면에 설명된 동작들의 경우에, 이들 동작들은 유사한 도면번호를 갖는 대응하는 상대되는 수단-기능(means-plus-function) 컴포넌트들에 의해 수행될 수 있다. 예를들어, 도3, 도4, 도5, 도7 및 도9에 각각 도시된 블록들(300, 320,340, 600 및 800)이 대응하는 회로 블록들에 의해 수행될 수 있다.Various operations of the methods described above may be performed by any suitable means capable of performing the corresponding functions. The means and various hardware and / E, including circuitry, application specific integrated circuit (ASIC), or processor may include, but are not limited to, software component (s) and / or module (s). In general, in the case of the operations described in the figures, these operations may be performed by corresponding relative means-plus-function components having similar reference numerals. For example, blocks 300, 320, 340, 600, and 800 shown in FIGS. 3, 4, 5, 7, and 9, respectively, may be performed by corresponding circuit blocks.

사용된 용어 "결정하다(determining)"은 넓은 다양한 동작들을 포함한다. 예를들어, "결정하다"는 계산, 커퓨팅, 처리, 유도, 조사, 룩업(예를들어 표, 데이터베이스 또는 다른 데이터 구조를 룩업), 확인 등을 포함할 수 있다. 또한, "결정"은 수신(예를들어 정보를 수신), 평가(예를들어, 메모리 내의 데이터를 평가) 등을 포함할 수 있다. 또한, "결정"은 해결, 선택, 설정 등을 포함할 수 있다.The term “determining” used encompasses a wide variety of operations. For example, “determining” may include calculation, computing, processing, derivation, lookup, lookup (eg, lookup of a table, database or other data structure), verification, and the like. In addition, “determining” may include receiving (eg, receiving information), evaluating (eg, evaluating data in memory), and the like. Also, “determining” may include resolving, selecting, setting and the like.

위에서 설명된 방법들의 다양한 동작들이 다양한 하드웨어 및/또는 소프트웨어 컴포넌트(들), 회로, 및/또는 모듈(들)과 같은 동작들을 수행할 수 있는 임의의 적절한 수단에 의해 수행될 수 있다. 일반적으로, 도면에 도시된 임의의 동작들은 상기 동작들을 수행할 수 있는 대응하는 기능 수단들에 의해 수행될 수 있다.Various operations of the methods described above may be performed by any suitable means capable of performing operations such as various hardware and / or software component (s), circuits, and / or module (s). In general, any of the operations shown in the figures may be performed by corresponding functional means capable of performing the operations.

본 개시내용 및 청구범위와 관련하여 설명된 다양한 예시적인 논리 블록들, 모듈들, 및 회로들은 범용 프로세서; 디지털 신호 처리기(DSP), 주문형 집적회로( ASIC), 필드 프로그램어블 게이트 어레이(FPGA), 또는 다른 프로그램어블 논리 장치(PLD), 이산 게이트 또는 트랜지스터 논리, 이산 하드웨어 컴포넌트들, 또는 이러한 기능들을 구현하도록 설계된 것들의 조합을 통해 구현 또는 수행될 수 있다. 범용 프로세서는 마이크로 프로세서 일 수 있지만; 대안적 실시예에서, 이러한 프로세서는 상업적으로 이용가능한 프로세서, 제어기, 마이크로 제어기, 또는 상태 머신일 수 있다. 프로세서는 예를 들어, DSP 및 마이크로프로세서, 복수의 마이크로프로세서들, DSP 코어와 결합된 하나 이상의 마이크로 프로세서, 또는 이러한 구성들의 조합과 같이 계산 장치들의 조합으로서 구현될 수 있다. Various example logical blocks, modules, and circuits described in connection with the present disclosure and claims may include a general purpose processor; To implement digital signal processors (DSPs), application specific integrated circuits (ASICs), field programmable gate arrays (FPGAs), or other programmable logic devices (PLDs), discrete gate or transistor logic, discrete hardware components, or such functions. It can be implemented or carried out through a combination of those designed. A general purpose processor may be a microprocessor; In alternative embodiments, such a processor may be a commercially available processor, controller, microcontroller, or state machine. A processor may be implemented as a combination of computing devices, such as, for example, a DSP and a microprocessor, a plurality of microprocessors, one or more microprocessors in conjunction with a DSP core, or a combination of such configurations.

본 개시내용과 관련하여 상술한 방법의 단계들 및 알고리즘은 하드웨어에서, 프로세서에 의해 실행되는 소프트웨어 모듈에서, 또는 이들의 조합에 의해 직접 구현될 수 있다. 소프트웨어 모듈은 본 기술분야에서 공지된 임의의 저장 매체의 형태 내에 상주할 수 있다. 사용가능한 저장 매체의 일부 예들에는 랜덤 액세스 메모리(RAM), 판독 전용 메모리(ROM), 플래쉬 메모리, 전기적 프로그램어블 ROM(EPROM), 전기적 소거가능한 프로그램어블 ROM(EEPROM), 레지스터들, 하드디스크, 소거가능 디스크, CD-ROM 등이 포함된다. 소프트웨어 모듈은 단일 명령, 또는 다수의 명령들을 포함할 수 있으며, 수개의 상이한 코드 세그먼트들에 걸쳐서, 상이한 프로그램 사이에, 그리고 다수의 저장 매체에 걸쳐서 분산될 수 있다. 저장 매체는 프로세서가 저장 매체로부터 정보를 판독하고, 정보를 저장 매체에 기록할 수 있도록 프로세서에 연결될 수 있다. 대안적으로, 저장 매체는 프로세서에 통합될 수 있다.The steps and algorithms of the method described above in connection with the present disclosure may be implemented directly in hardware, in a software module executed by a processor, or in a combination thereof. The software module may reside in the form of any storage medium known in the art. Some examples of usable storage media include random access memory (RAM), read-only memory (ROM), flash memory, electrically programmable ROM (EPROM), electrically erasable programmable ROM (EEPROM), registers, hard disk, erase Capable disks, CD-ROMs, and the like. A software module can include a single instruction, or multiple instructions, and can be distributed across several different code segments, between different programs, and across multiple storage media. The storage medium can be coupled to the processor such that the processor can read information from the storage medium and write the information to the storage medium. Alternatively, the storage medium may be integrated into the processor.

개시된 방법들은 설명된 방법을 달성하기 위한 하나 이상의 단계들 또는 동작들을 포함한다. 방법 단계들 및/또는 동작들은 청구범위의 범주를 벗어남 없이 다른 것과 교환될 수 있다. 달리 말하면, 단계들 또는 동작들의 특정 순서가 특정되지 않는 한, 특정 단계들 및/또는 동작들의 순서 및/또는 사용은 청구범위의 범주를 벗어남 없이 수정될 수 있다.The disclosed methods include one or more steps or actions for achieving the described method. Method steps and / or actions may be interchanged with one another without departing from the scope of the claims. In other words, unless a specific order of steps or actions is specified, the order and / or use of specific steps and / or actions may be modified without departing from the scope of the claims.

설명된 기능들은 하드웨어, 소프트웨어, 펌웨어, 또는 이들의 조합을 통해 구현될 수 있다. 소프트웨어로 구현되는 경우, 상기 기능들은 컴퓨터 판독가능한 매체 상에 하나 이상의 명령들 또는 코드로서 저장될 수 있다. 저장 매체는 컴퓨터에 의해 액세스될 수 있는 임의의 가용한 매체일 수 있다. 예를 들어, 이러한 컴퓨터 판독가능한 매체는 RAM, ROM, EEPROM, CD-ROM, 또는 명령 또는 데이터 구조의 형태로 요구되는 프로그램 코드 수단을 저장하는데 사용될 수 있고, 컴퓨터에 의해 액세스될 수 있는 임의의 다른 매체를 포함하지만, 이들로 제한되는 것은 아니다. 여기서 사용되는 disk 및 disc은 컴팩트 disc(CD), 레이저 disc , 광 disc, DVD, 플로피 disk, 및 블루-레이? disc를 포함하며, 여기서 disk는 데이터를 자기적으로 재생하지만, disc은 레이저를 통해 광학적으로 데이터를 재생한다.The described functions can be implemented through hardware, software, firmware, or a combination thereof. If implemented in software, the functions may be stored as one or more instructions or code on a computer-readable medium. The storage medium may be any available media that can be accessed by a computer. For example, such computer readable media can be used to store required program code means in the form of RAM, ROM, EEPROM, CD-ROM, or instructions or data structures, and any other that can be accessed by a computer. Include but are not limited to media. The disks and discs used here are compact discs (CDs), laser discs, optical discs, DVDs, floppy disks, and Blu-ray? a disc, where the disk magnetically reproduces the data, while the disc optically reproduces the data via a laser.

따라서, 특정 양상들은 제시된 동작들을 수행하기 위한 컴퓨터 프로그램 물건을 포함할 수 있다. 예를들어, 이러한 컴퓨터 프로그램 물건은 저장된(및/또는 인코딩된) 명령들을 갖는 컴퓨터 판독가능 매체를 포함할 수 있으며, 상기 명령들은 설명된 동작들을 수행하는 하나 이상의 프로세서들에 의해 실행가능하다. 특정 양상들에서, 컴퓨터 프로그램 물건은 패키징 물질을 포함할 수 있다.Thus, certain aspects may comprise a computer program product for performing the presented operations. For example, such computer program product may include a computer readable medium having stored (and / or encoded) instructions, which instructions may be executable by one or more processors to perform the described operations. In certain aspects, the computer program product may include a packaging material.

소프트웨어 또는 명령들은 또한 전송 매체를 통해 전송될 수 있다. 예를들어, 소프트웨어가 웹사이트, 서버, 또는 다른 원격 소스로부터 동축 케이블, 광섬유 케이블, 연선, 디지털 가입자 라인(DSL), 또는 적외선, 라디오, 및 마이크로웨이브와 같은 무선 기술들을 통해 전송되는 경우, 이러한 동축 케이블, 광섬유 케이블, 연선, DSL, 또는 적외선, 라디오, 및 마이크로웨이브와 같은 무선 기술들이 전송 매체의 정의 내에 포함될 수 있다.The software or commands may also be transmitted via a transmission medium. For example, if the software is transmitted from a website, server, or other remote source via coaxial cable, fiber optic cable, twisted pair, digital subscriber line (DSL), or wireless technologies such as infrared, radio, and microwave Coaxial cable, fiber optic cable, twisted pair, DSL, or wireless technologies such as infrared, radio, and microwave may be included within the definition of transmission medium.

또한, 설명된 방법들 및 기술들을 수행하기 위한 모듈들 및/또는 다른 적ㅈ러한 수단들이 사용자 단말 및/또는 이용가능한 기지국에 의해 다운로딩 및/또는 그렇지 않은 경우에 획득될 수 있음이 이해되어야 한다. 예를들어, 이러한 장치는 설명된 방법들을 수행하기 위한 수단의 전송을 용이하게 하는 서버에 연결될 수 있다. 대안적으로, 사용자 단말 및/또는 기지국이 저장 수단을 장치에 커플링 또는 제공하는 경우에 다양한 방법들을 획득할 수 있도록 설명된 다양한 방법들이 저장 수단(예를들어, RAM, ROM, 컴팩트 디스크(CD) 또는 플로피 디스크 등과 같은 물리적 저장 매체)을 통해 제공될 수 있다. 또한, 설명된 방법들 및 기술들을 장치에 제공하기 위한 임의의 다른 적절한 기술이 이용될 수 있다.In addition, it should be understood that modules and / or other suitable means for performing the described methods and techniques may be obtained by a user terminal and / or an available base station and / or otherwise obtained. . For example, such an apparatus may be connected to a server that facilitates the transfer of means for performing the described methods. Alternatively, various methods described may be used to obtain various methods in the case where the user terminal and / or base station couples or provides the storage means to the apparatus, for example storage means (e.g., RAM, ROM, compact disc (CD). Or a physical storage medium such as a floppy disk). In addition, any other suitable technique for providing the described methods and techniques to an apparatus can be used.

청구범위가 설명된 정확한 구성 및 컴포넌트들로 한정되지 않음이 이해되어야 한다. 다양한 수정들, 변경들 및 변화들이 청구범위를 벗어남 없이 위에서 설명된 방법들 및 장치의 배치, 동작 및 상세 내에서 가능할 수 있다.It is to be understood that the claims are not limited to the precise configuration and components described. Various modifications, changes and variations may be possible within the arrangement, operation and details of the methods and apparatus described above without departing from the claims.

Claims (71)

데이터를 전송하기 위한 방법으로서,
USB 가능(enabled) 장치상의 엔드포인트(endpoint)로 등시(isochronous) 데이터 패킷들을 제공하기 위한 요청을 호스트로부터 수신하는 단계;
상기 등시 데이터 패킷들 각각에 대한 패킷 길이들을 결정하는 단계;
상기 등시 데이터 패킷들 및 상기 패킷 길이들을 벌크 데이터 전송 타입(bulk data transfer type)으로 연접(concatenate)하는 단계 ― 각각의 등시 데이터 패킷은 자신의 대응하는 패킷 길이와 연접됨 ―;
상기 벌크 데이터 전송 타입을 상기 USB 가능 장치로 무선으로 전송하는 단계;
상기 등시 데이터 패킷들을 상기 벌크 데이터 전송 타입으로부터 추출하는 단계; 및
상기 등시 데이터 패킷들을 상기 엔드포인트로 제공하는 단계를 포함하는,
데이터 전송 방법.
As a method for transmitting data,
Receiving a request from a host to provide isochronous data packets to an endpoint on a USB enabled device;
Determining packet lengths for each of the isochronous data packets;
Concatenating the isochronous data packets and the packet lengths into a bulk data transfer type, wherein each isochronous data packet is concatenated with its corresponding packet length;
Wirelessly transmitting the bulk data transfer type to the USB capable device;
Extracting the isochronous data packets from the bulk data transmission type; And
Providing the isochronous data packets to the endpoint;
Data transfer method.
삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 제 1 항에 있어서,
상기 엔드포인트로의 전송을 위해 등시 데이터 패킷 각각을 미터링(metering)하는 단계를 더 포함하며, 상기 미터링하는 단계는 등시 스케줄러에 의해 수행되는,
데이터 전송 방법.
The method of claim 1,
Metering each isochronous data packet for transmission to the endpoint, wherein the metering is performed by an isochronous scheduler,
Data transfer method.
데이터를 전송하기 위한 무선 USB 시스템으로서,
등시 데이터 패킷 각각에 대한 패킷 길이를 결정하고, 각각의 등시 데이터 패킷이 자신의 대응하는 패킷 길이와 연접되는 방식으로 등시 데이터 패킷들을 패킷 길이들과 연접함으로써 등시 데이터 패킷들을 벌크 전송 타입으로 변환(convert)하도록 구성된 제1 변환 모듈을 포함하는 장치; 및
상기 장치로부터 USB 가능 장치로 상기 벌크 전송 타입을 무선으로 전송하도록 적응된 전송기 ― 상기 벌크 전송 타입은 제1 우선순위에 따라 전송됨 ― 를 포함하며,
상기 전송기는 상기 데이터 패킷들이 등시 데이터를 포함하지 않는 경우에는 제2 우선순위에 따라 데이터 패킷들을 상기 USB 가능 장치로 무선으로 전송하도록 적응되며,
상기 제1 우선순위 및 상기 제2 우선순위는 상이한,
데이터를 전송하기 위한 무선 USB 시스템.
Wireless USB system for transferring data,
Determine the packet length for each isochronous data packet and bulk the isochronous data packets by concatenating the isochronous data packets with the packet lengths in such a manner that each isochronous data packet is concatenated with its corresponding packet length. An apparatus comprising a first conversion module configured to convert to; And
A transmitter adapted to wirelessly transfer the bulk transfer type from the device to a USB capable device, wherein the bulk transfer type is transmitted according to a first priority;
The transmitter is adapted to wirelessly transmit data packets to the USB enabled device according to a second priority if the data packets do not contain isochronous data,
Wherein the first priority and the second priority are different,
Wireless USB system for transferring data.
삭제delete 삭제delete 삭제delete 제 10 항에 있어서,
상기 USB 가능 장치는 호스트 유선 어뎁터 및 장치 유선 어뎁터 중 하나를 포함하는,
데이터를 전송하기 위한 무선 USB 시스템.
11. The method of claim 10,
The USB capable device includes one of a host wired adapter and a device wired adapter,
Wireless USB system for transferring data.
제 10 항에 있어서,
상기 장치는 데이터 패킷들을 우선순위화 하도록 구성된 모듈을 포함하는,
데이터를 전송하기 위한 무선 USB 시스템.
11. The method of claim 10,
The apparatus comprises a module configured to prioritize data packets,
Wireless USB system for transferring data.
삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 데이터를 전송하기 위한 장치로서,
벌크 전송 데이터 패킷들 내에 등시 데이터 패킷들을 임베딩(embed)하기 위한 수단; 및
상기 벌크 전송 데이터 패킷들을 무선으로 전송하기 위한 수단을 포함하며,
상기 벌크 전송 데이터 패킷들은 등시 데이터 패킷들을 포함하지 않는 다른 벌크 전송 데이터 패킷들에 비해 보다 높은 우선순위에 따라 전송되며,
상기 임베딩하기 위한 수단은
상기 등시 데이터 패킷들 각각에 대응하는 등시 데이터 패킷 길이을 결정하고; 그리고
상기 벌크 전송 데이터 패킷들 내에 상기 등시 데이터 패킷 길이들 각각에 대한 표시를 포함시키도록 구성되는,
데이터 전송 장치.
An apparatus for transmitting data,
Means for embedding isochronous data packets within bulk transport data packets; And
Means for wirelessly transmitting the bulk transmitted data packets,
The bulk transport data packets are transmitted at a higher priority than other bulk transport data packets that do not include isochronous data packets,
Means for embedding
Determine an isochronous data packet length corresponding to each of the isochronous data packets; And
And include an indication for each of the isochronous data packet lengths in the bulk transport data packets.
Data transmission device.
제59항에 있어서,
USB 등시 데이터 전송 프로토콜을 사용하여 상기 등시 데이터 패킷들을 수신하기 위한 수단을 더 포함하는,
데이터 전송 장치.
60. The method of claim 59,
Means for receiving the isochronous data packets using a USB isochronous data transfer protocol,
Data transmission device.
제59항에 있어서,
상기 벌크 전송 데이터 패킷들을 무선으로 전송하기 위한 수단은 USB 벌크 데이터 전송 프로토콜을 사용하여 상기 벌크 전송 데이터 패킷들을 전송하도록 구성되는,
데이터 전송 장치.
60. The method of claim 59,
Means for wirelessly transmitting the bulk transmit data packets is configured to transmit the bulk transmit data packets using a USB bulk data transfer protocol,
Data transmission device.
제59항에 있어서,
상기 임베딩하기 위한 수단은 상기 벌크 전송 데이터 패킷들을 우선순위화하는,
데이터 전송 장치.
60. The method of claim 59,
The means for embedding prioritizes the bulk transmitted data packets,
Data transmission device.
제62항에 있어서,
상기 임베딩하기 위한 수단은 상기 벌크 전송 데이터 패킷들을 고 우선순위 큐에 기록함으로써 우선순위화하고, 상기 고 우선순위 큐는 등시 데이터 패킷들을 포함하지 않는 벌크 전송 데이터 패킷들을 포함하는 큐들의 우선순위에 비해 높은 우선순위를 가지는,
데이터 전송 장치.
63. The method of claim 62,
The means for embedding prioritizes by writing the bulk transmit data packets to a high priority queue, the high priority queue at priority of queues containing bulk transmit data packets that do not contain isochronous data packets. Has a higher priority than
Data transmission device.
제62항에 있어서,
상기 임베딩하기 위한 수단은 상기 벌크 전송 데이터 패킷들에 대한 고 우선순위를 표시하는 값으로 입력/출력 요청 패킷에 우선순위 표시자를 설정함으로써 상기 벌크 전송 데이터 패킷들을 우선순위화하는,
데이터 전송 장치.
63. The method of claim 62,
The means for embedding prioritizes the bulk transmitted data packets by setting a priority indicator on an input / output request packet to a value indicating a high priority for the bulk transmitted data packets.
Data transmission device.
장치로서,
벌크 데이터 패킷들 및 상기 벌크 데이터 패킷들과 연관된 우선순위 표시자를 수신하기 위한 수단 ― 상기 우선순위 표시자는 등시 데이터 패킷들을 포함하지 않는 제2 벌크 데이터 패킷들에 비해 등시 데이터 패킷들을 포함하는 제1 벌크 데이터 패킷들에 대해 보다 높은 우선순위를 표시함 ―;
상기 제1 벌크 데이터 패킷들로부터 상기 등시 데이터 패킷들을 추출하기 위한 수단; 및
상기 등시 데이터 패킷들을 USB 가능 장치로 전송하기 위한 수단을 포함하며,
상기 추출하기 위한 수단은
특정 등시 데이터 패킷의 길이를 대응하는 제1 벌크 데이터 패킷 내에 포함된 길이 표시자에 기반하여 결정하고; 그리고
상기 대응하는 제1 벌크 데이터 패킷으로부터 상기 특정 등시 데이터 패킷의 길이에 대응하는 수의 데이터 바이트들을 추출하도록 구성되는,
장치.
As an apparatus,
Means for receiving bulk data packets and a priority indicator associated with the bulk data packets, the priority indicator including first isochronous data packets compared to second bulk data packets that do not include isochronous data packets. Indicate a higher priority for one bulk data packets;
Means for extracting the isochronous data packets from the first bulk data packets; And
Means for sending the isochronous data packets to a USB capable device,
The means for extracting
Determine a length of a particular isochronous data packet based on a length indicator included in the corresponding first bulk data packet; And
And extract the number of data bytes corresponding to the length of the particular isochronous data packet from the corresponding first bulk data packet,
Device.
제65항에 있어서,
상기 전송하기 위한 수단은 USB 등시 데이터 전송 프로토콜을 사용하여 상기 등시 데이터 패킷들을 전송하도록 구성되는,
장치.
66. The method of claim 65,
The means for transmitting is configured to transmit the isochronous data packets using a USB isochronous data transfer protocol,
Device.
제65항에 있어서,
상기 수신하기 위한 수단은 USB 벌크 데이터 전송 프로토콜을 사용하여 상기 벌크 데이터 패킷들을 수신하도록 구성되는,
장치.
66. The method of claim 65,
The means for receiving is configured to receive the bulk data packets using a USB bulk data transfer protocol,
Device.
제65항에 있어서,
상기 전송하기 위한 수단은 상기 USB 가능 장치로의 전송을 위해 상기 등시 데이터 패킷들을 미터링(meter)하도록 구성되는,
장치.
66. The method of claim 65,
The means for transmitting is configured to meter the isochronous data packets for transmission to the USB enabled device,
Device.
제68항에 있어서,
상기 전송하기 위한 수단은 등시 엔드포인트에 의해 정의되는 트래픽 파라미터들 및 서비스 품질 파라미터에 따라 상기 등시 데이터 패킷들을 미터링하도록 구성되는,
장치.
69. The method of claim 68,
The means for transmitting is configured to meter the isochronous data packets according to traffic parameters and quality of service parameters defined by the isochronous endpoint,
Device.
명령들로 인코딩된 컴퓨터 판독가능한 매체로서,
상기 명령들은
한 세트의 등시 패킷들의 패킷 길이들을 결정하고;
등시 패킷 각각을 자신의 대응하는 패킷 길이와 연접시키고;
연접된 등시 패킷들 및 패킷 길이들을 USB 프로토콜에 따라 제1 벌크 데이터 패킷들로 연접시키고; 그리고
상기 제1 벌크 데이터 패킷들을 포함하는 벌크 데이터 패킷들을 다른 장치로 무선으로 전송하기 위한 무선 전송을 개시하도록 실행될 수 있으며,
상기 제1 벌크 데이터 패킷들은 등시 데이터 패킷들을 포함하지 않는 제2 벌크 데이터 패킷들에 비해 보다 높은 우선순위에 따라 전송되는,
컴퓨터 판독가능한 매체.
A computer readable medium encoded with instructions,
The instructions
Determine packet lengths of a set of isochronous packets;
Concatenate each isochronous packet with its corresponding packet length;
Concatenate concatenated isochronous packets and packet lengths into first bulk data packets according to the USB protocol; And
May be executed to initiate a wireless transmission for wirelessly transmitting bulk data packets including the first bulk data packets to another device,
Wherein the first bulk data packets are transmitted according to a higher priority than second bulk data packets that do not include isochronous data packets,
Computer readable medium.
명령들로 인코딩된 컴퓨터 판독가능한 매체로서,
상기 명령들은
벌크 데이터 패킷들을 수신하고; 그리고
수신된 벌크 데이터 패킷들에 임베딩된 패킷 길이들을 판독함으로써 USB 가능 장치로의 전달을 위해 수신된 벌크 데이터 패킷들로부터 등시 데이터 패킷들을 추출하도록 실행될 수 있으며,
패킷 길이는 연접된 등시 데이터 패킷의 길이를 표시(denote)하는,
컴퓨터 판독가능한 매체.
A computer readable medium encoded with instructions,
The instructions
Receive bulk data packets; And
Can be executed to extract isochronous data packets from received bulk data packets for delivery to a USB capable device by reading the packet lengths embedded in the received bulk data packets,
Packet length indicates the length of concatenated isochronous data packets,
Computer readable medium.
KR1020107019889A 2008-02-07 2009-02-06 Method and system for wireless usb transfer of isochronous data using bulk data transfer type KR101188772B1 (en)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US2696908P 2008-02-07 2008-02-07
US61/026,969 2008-02-07
US12/366,591 2009-02-05
US12/366,591 US20100198999A1 (en) 2009-02-05 2009-02-05 Method and system for wireless usb transfer of isochronous data using bulk data transfer type
PCT/US2009/033478 WO2009100391A2 (en) 2008-02-07 2009-02-06 Method and system for wireless usb transfer of isochronous data using bulk data transfer type

Publications (2)

Publication Number Publication Date
KR20100107524A KR20100107524A (en) 2010-10-05
KR101188772B1 true KR101188772B1 (en) 2012-10-11

Family

ID=40952724

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020107019889A KR101188772B1 (en) 2008-02-07 2009-02-06 Method and system for wireless usb transfer of isochronous data using bulk data transfer type

Country Status (6)

Country Link
EP (1) EP2252937A2 (en)
JP (1) JP5185399B2 (en)
KR (1) KR101188772B1 (en)
CN (1) CN101939734A (en)
TW (1) TW200947210A (en)
WO (1) WO2009100391A2 (en)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20140033562A (en) * 2012-08-31 2014-03-19 삼성전자주식회사 Data transmitting apparatus and method for transmitting data
US10067898B2 (en) * 2015-02-25 2018-09-04 Qualcomm Incorporated Protocol adaptation layer data flow control for universal serial bus
CN106294265A (en) * 2015-05-19 2017-01-04 深圳市超越自然多媒体有限公司 A kind of audio data transmission method between USB sound card and smart machine
US20170286356A1 (en) * 2016-04-01 2017-10-05 Intel Corporation Enhanced quality of service mechanism for ma usb protocol
TWI714055B (en) 2019-04-16 2020-12-21 瑞昱半導體股份有限公司 Data transmission method and data transmission system

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003218903A (en) 2002-01-28 2003-07-31 Alpine Electronics Inc Bus bridge device
JP2003533943A (en) 2000-05-15 2003-11-11 トムソン ライセンシング ソシエテ アノニム Method for transmitting isochronous data through a wireless network

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3653051B2 (en) * 2002-02-20 2005-05-25 Necアクセステクニカ株式会社 Data transfer method, system and program by protocol conversion
JP2006238209A (en) * 2005-02-25 2006-09-07 Fujitsu Ltd Hub apparatus and hub system
JP4541949B2 (en) * 2005-03-31 2010-09-08 富士通株式会社 Data transfer device
JP2008153898A (en) * 2006-12-15 2008-07-03 Sony Corp Communication system, communication device and communication method, and computer program
CN101237445B (en) * 2007-01-30 2013-01-02 世意法(北京)半导体研发有限责任公司 Buffer management for wireless USB synchronization at end point

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003533943A (en) 2000-05-15 2003-11-11 トムソン ライセンシング ソシエテ アノニム Method for transmitting isochronous data through a wireless network
JP2003218903A (en) 2002-01-28 2003-07-31 Alpine Electronics Inc Bus bridge device

Also Published As

Publication number Publication date
WO2009100391A3 (en) 2009-12-30
KR20100107524A (en) 2010-10-05
JP5185399B2 (en) 2013-04-17
JP2011512738A (en) 2011-04-21
WO2009100391A2 (en) 2009-08-13
TW200947210A (en) 2009-11-16
EP2252937A2 (en) 2010-11-24
CN101939734A (en) 2011-01-05

Similar Documents

Publication Publication Date Title
US20100198999A1 (en) Method and system for wireless usb transfer of isochronous data using bulk data transfer type
JP5420689B2 (en) Enhanced wireless USB protocol and hub
KR101188772B1 (en) Method and system for wireless usb transfer of isochronous data using bulk data transfer type
US20100188980A1 (en) Explicit Flow Control in a Gigabit/10 Gigabit Ethernet System
US20070047443A1 (en) Channelized flow control
US7493423B2 (en) Data transfer control device and electronic instrument
JP6276392B2 (en) Method and apparatus for processing signaling data between layers in IP-based digital broadcasting system
JP2005517327A (en) Method and apparatus for concatenating and piggybacking data packets
US10067898B2 (en) Protocol adaptation layer data flow control for universal serial bus
CN103348647A (en) Mechanisms to improve the transmission control protocol performance in wireless networks
US8111623B2 (en) Node, method and system for control of communication including a buffer
CA2517426C (en) Pre-empting low-priority traffic with high-priority traffic
CN112328523B (en) Method, device and system for transmitting double-rate signal
CN102821082A (en) Data transmission method, device and system
WO2001075618A3 (en) Asynchronous input/output interface protocol
US20010043567A1 (en) Efficient full duplex simultaneous message transfer
US7688718B2 (en) Variable-sized packet support for enhanced synchronous connection oriented links over a USB interface
US9160338B2 (en) Adaptive interface for coupling FPGA modules
TWI689820B (en) Usb transmission system, usb device and host capable of usb transmission
US20070274209A1 (en) Prioritizing data in a wireless transmission
JP2008544623A (en) Method and apparatus for data transmission using clock domain
WO2017012415A1 (en) Packet slicing method and apparatus, and computer-readable medium
CN103631740A (en) Method and circuit for achieving self-adaptation byte alignment transmission of SD card under SPI mode
CN117251398A (en) Processing system, related integrated circuit, system and method
CN115757250A (en) Bus conversion system and method

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee