CN1885747A - Device and method for carrying out transmission via universal serial bus channel - Google Patents

Device and method for carrying out transmission via universal serial bus channel Download PDF

Info

Publication number
CN1885747A
CN1885747A CNA2006100831636A CN200610083163A CN1885747A CN 1885747 A CN1885747 A CN 1885747A CN A2006100831636 A CNA2006100831636 A CN A2006100831636A CN 200610083163 A CN200610083163 A CN 200610083163A CN 1885747 A CN1885747 A CN 1885747A
Authority
CN
China
Prior art keywords
transmission
transport
packet
frame
endpoint
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
CNA2006100831636A
Other languages
Chinese (zh)
Other versions
CN100578971C (en
Inventor
张�浩
张倩
吴大畏
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.)
Vimicro Corp
Original Assignee
Vimicro Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Vimicro Corp filed Critical Vimicro Corp
Priority to CN200610083163A priority Critical patent/CN100578971C/en
Publication of CN1885747A publication Critical patent/CN1885747A/en
Application granted granted Critical
Publication of CN100578971C publication Critical patent/CN100578971C/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Transfer Systems (AREA)

Abstract

The disclosed transmission device comprises: an input module for data flow, a multiplex selector to distribute data packet to different points, at least two transmission points as path, and a controller for transmission control. This invention adds transmission bandwidth, and makes full use of USB bus.

Description

The device and method that transmits by universal serial bus channel
Technical field
The present invention relates to the universal serial bus channel transmission technology, particularly the device and method that transmits by universal serial bus channel.
Background technology
(Universal Serial Bus is a serial bus standard that connects external equipment USB) to USB, is widely used owing to it has higher transmission rate, particularly multi-medium data transmission application.
The USB transmission generally includes four kinds of modes: control transmission, (ISO) transmission synchronously, interruption transmission and bulk transfer, wherein, control transmission is generally used for configuration/order/situations such as state, the ISO transmission is the continuous transmission means in a kind of cycle, be generally used for having the transmission of Information of substantial connection with the time, interruption is used for the very little transmission of Information of aperiodic abiogenous data volume, as keyboard and mouse etc., is used for a large amount of transfer of data that the time is not required in batches.
Three kinds of velocity modes are supported in USB transmission usually, that is: low-speed mode (low speed), and maximum transmission bandwidth is 1.5Mbit/s; Full speed pattern (full speed), maximum transmission bandwidth is 12Mb/s; Fast mode (high speed), maximum transmission bandwidth is 480Mb/s.Wherein USB 1.1 agreements are only supported low-speed mode and full speed pattern, and the USB2.0 agreement is then supported all patterns.
Divide framing (frame) with effective bandwidth in USB 1.1 standards, every frame normally 1ms is long.But because the transmission rate of USB2.0 reaches as high as 480Mb/s, therefore in USB2.0, the long frame of each 1ms has been divided into 8 the 125 long little frames (micro_frame) of μ s.And when ISO transmits, can transmit 7 packets in the little frame at most; And, can transmit 6 packets in the little frame at most for interrupting transmission.
ISO transmission and interruption transmission all belong to regularly transmission means, promptly in one or several frame/little frame period, only transmit the packet of specifying number, the size at interval and the number of packet depend on the needs of different device application, are decided by the device description of device.
When using the ISO transmission at present or interrupting transmission, all be to use a passage to finish, as shown in Figure 1, application end data flow when video transmission, as video flowing (video stream), store into earlier in the data flow input module (FIFO), use the ISO transmission mode or interrupt transmission mode by a Transport endpoint endpoint 1 then, be transferred to the PC terminal via usb bus, the driving by the PC terminal at last becomes data flow with the reduction of data that receives.Wherein Transport endpoint endpoint 1 is according to gap size and packet number that device description determined, the packet of transmission fixed number in one or several frame/little frame, such as: can in 1 frame/little frame, transmit 1 or 2 packets, also can be at 1 packet of transmission in 1 or 2 the frame/little frames.
Give an example, an ISO Transport endpoint (endpoint) or an interruption Transport endpoint transmit 3 packets at most in a little frame under USB2.0 high speed (high-speed) transmission mode.The schematic diagram that is ISO Transport endpoint ep1 transmits data packets in each little frame shown in Figure 2, wherein, solid line boxes partly identifies the period that ep1 can transmits data packets, 0,1,2 three packets representing ep1 timesharing serial transmission in a little frame respectively wherein, dashed rectangle are partly represented the period that ep1 can not transmits data packets.As seen, an ISO Transport endpoint transmits 3 packets in each little frame after, need to wait for 4 can not transmits data packets period, arrive to next little frame, transmit 3 packets again.
In like manner, one interrupts Transport endpoint transmit 3 packets in each little frame after, need to wait for 3 can not transmits data packets period, to next little frame arrival, transmit 3 packets again.
Because each packet is 1024byte to the maximum, a Transport endpoint transmits maximum 3kB in a little frame so.So ISO Transport endpoint or the maximum bandwidth of interrupting Transport endpoint are 23.44MB/s.And the maximum transmission bandwidth of USB2.0 is deducted agreement and is taken part actual transmissions ability also more than 48MB/s up to 480Mbit/s.
(full-speed) pattern also has and high-speed pattern similar phenomenon at full speed.
As seen, in the USB of prior art transmission means, because the restriction of single Transport endpoint transmittability under ISO transmission means and the interruption transmission means, make the transmittability of data flow be restricted, thereby cause existing usb data transmission can not make full use of the maximum bandwidth of usb bus, even under the fast mode of the fastest USB2.0 of transmission rate, all can not surpass 23.44MB/s, this defective seems particularly outstanding in for the video flowing transmission that the mass data transmission is arranged, and needs to be resolved hurrily.
Summary of the invention
First purpose of the present invention is to propose a kind of device that transmits by the USB passage, avoids the transmittability restriction of single Transport endpoint, makes full use of the USB transfer bandwidth.
Second purpose of the present invention is to propose a kind of method of transmitting by the USB passage, makes the ISO transmission of USB and the restriction that the interruption transmission can break through a Transport endpoint transmission bandwidth to make full use of the USB transmission bandwidth.
For realizing above-mentioned first purpose, the present invention proposes a kind of device that transmits by the USB passage, comprising:
The data flow input module is used to provide packet waiting for transmission;
MUX, the packet delivery that is used for described data flow input module is sent is to different Transport endpoints;
At least two Transport endpoints are used to provide the transmission channel of packet, the packet that the transmission MUX is sent;
Controller is used to finish the transmission controlled function of command analysis and data flow.
Described Transport endpoint is 2 or 3.
For realizing above-mentioned second purpose, the present invention proposes a kind of method of transmitting by the USB passage, at least two Transport endpoints are set in the transmitting device that transmits by the USB passage with main frame, and carry out following steps:
When main frame and described transmitting device transmits data packets, described transmitting device sends to main frame by different Transport endpoints with packet in a frame/little frame, and a Transport endpoint transmits a fixed number threshold value packet at most in each frame/little frame.
This method specifically comprises:
A, main frame send token to described transmitting device, comprise the endpoint number of the Transport endpoint of transmits data packets in this token;
B, described transmitting device send to main frame with the Transport endpoint of the current packet that will send appointment from described token.
Further comprising the steps of before the described step a:
Main frame is provided with a counter for each Transport endpoint, the corresponding Transport endpoint of accumulative total number of transmits data packets in each frame/little frame.
2 or 3 Transport endpoints are set in described transmitting device.
Described transmitting device also comprises after the described step b to interrupt the transmission means transmission:
C, described main frame carry out verification to current data packets for transmission, if verification is passed through, then return success response to described transmitting device; Otherwise do not return any response.
The present invention adopts a plurality of Transport endpoints, when carrying out the ISO transmission or interrupting transmission, utilize MUX to carry out the Transport endpoint scheduling, select different Transport endpoints timesharing transmits data packets in a frame/little frame, thereby broken through prior art and had only a Transport endpoint, and in a frame/little frame, can only transmit the restriction of 3 packets at most, make transmission bandwidth increase greatly, avoided bandwidth waste, thereby made full use of the bandwidth of usb bus.
Description of drawings
Fig. 1 is the structural representation of the device that transmits by the USB passage in the prior art;
Fig. 2 is the structure chart of the little frame on the usb bus in the prior art;
The apparatus structure schematic diagram of Fig. 3 for transmitting by the USB passage in the embodiment of the invention;
The method flow diagram of Fig. 4 for transmitting by the USB passage in the embodiment of the invention;
Fig. 5 is the structure chart of the little frame on the usb bus in the embodiment of the invention.
Embodiment
The present invention is provided with 2 above Transport endpoints in each carries out the transmitting device of transfer of data by USB passage and main frame, make under the full speed and fast mode of USB1.1 and USB2.0, when transmitting each frame/little frame by a plurality of Transport endpoint joint transmission, thereby make full use of the bandwidth of usb bus.Here, described main frame can be the PC terminal, is example with the PC terminal all hereinafter.
Further, in order to write down the number of transmits data packets of each Transport endpoint in the transmitting device, can one counter be set for each Transport endpoint.
Be example to interrupt transmission means below, transmitting device of the present invention and transmission method are described in detail.When adopting the ISO transmission means, the structure of transmitting device and transmission method and interruption transmission means are similar substantially, just have technicality on specific implementation, such as: interrupt transmission means and need detect handshake, and the ISO transmission means does not need; For another example: in the transmitting device that the ISO transmission means is adopted three Transport endpoints or the like can be set.
The apparatus structure schematic diagram of Fig. 3 for transmitting by the USB passage in the embodiment of the invention, wherein, the right side solid box is depicted as the transmitting device in the embodiment of the invention.The data flow input module of this transmitting device adopts first in first out (FIFO) memory module, is used to store the data flow that needs transmission, as video flowing; Be provided with 2 Transport endpoint-endpoint31 and endpoint32 in this transmitting device, corresponding two transmission channels; This transmitting device carries out the parsing of order by controller, and switches at two interchannels by MUX, thereby is implemented in every frame/little frame by different Transport endpoint timesharing to PC terminal transmission packet.This transmitting device specifically comprises:
Data flow input module 1 is used to provide packet waiting for transmission, and sends it to MUX 2;
MUX 2, the packet delivery that is used for data flow input module 1 is sent is to different Transport endpoints;
Transport endpoint 31 and 32 is used to the data packet transmission of PC terminal and described device that transmission channel is provided, the packet that transmission MUX 2 is sent, the corresponding logical address of each Transport endpoint;
Controller 4 is used to finish command analysis and to the transmission controlled function of data flow, as the control MUX packet is sent on the Transport endpoint of appointment.
This device links to each other with the USB driver module of PC terminal by usb bus.
This device is for the greatest improvement of prior art: the data flow input module links to each other with usb bus by 2 Transport endpoint endpoint, and utilize MUX 2 that packet delivery is gone up transmission to different e ndpoint, MUX 2 function class herein is like a variable connector.
The method flow diagram of Fig. 4 for transmitting by the USB passage in the embodiment of the invention, this method adopt USB2.0 high-speed pattern, carry out two channel combined transmission based on 2 endpoint.The main thought that realizes is: when PC terminal and described transmitting device transmits data packets, described transmitting device sends to the PC terminal by different Transport endpoints with the packet timesharing in a little frame.
In the present embodiment, in order to write down the number of transmits data packets of each Transport endpoint, in the PC terminal is that two Transport endpoints are provided with a counter respectively, because the device description of record can know that transmit port is to interrupt transmit port during the PC terminal drove by USB device, so the counter initial value is set to 3.Concrete counting process is: in the transmission course of a little frame, packet of the every transmission of each Transport endpoint, the PC terminal is just done the counter of this Transport endpoint and is subtracted 1 operation, when the counter of this Transport endpoint is 0, in this little frame, the PC terminal no longer sends token to this Transport endpoint, and this Transport endpoint is transmits data packets no longer, at next little frame, all counters recover initial value.Certainly, the counter initial value also can be set to 0, packet of every biography, and the PC terminal is done counter and is added 1 operation, and Counter Value is 3 o'clock, and the PC terminal no longer sends token to this Transport endpoint, and this Transport endpoint is transmits data packets no longer.Here, the PC terminal can be done the Counter Value 0, the PC terminal that subtract under 1 operational circumstances and do the Counter Value 3 unified fixed number threshold values that are called that add under 1 operational circumstances.
By above-mentioned counting process, just can guarantee that each Transport endpoint transmits 3 packets at most in each little frame.
Based on structure shown in Figure 3 and above-mentioned counting process, the concrete processing procedure of present embodiment transmission method may further comprise the steps:
The USB driver module of step 101, PC terminal sends a token (token) to controller 4, the endpoint number of Transport endpoint that comprises the transmits data packets of appointment in this token, it is endpoint number, this Transport endpoint is chosen wantonly, based on condition be that the counter of respective transmissions end points does not reach the fixed number threshold value, the Transport endpoint of PC terminal appointment is endpoint31 herein;
Step 102, controller 4 are resolved the token order of receiving, control data stream input module 1 packet that its current pointer is pointed sends to MUX 2;
Step 103, MUX 2 send to packet on the usb bus by Transport endpoint endpoint31 under the control of controller 4;
After step 104, USB driver module receive packet, current institute data packets for transmission is carried out verification,, then return a response handshake handshake, the pointer forward of controller 4 control datas stream input module 1 to controller 4 if verification is passed through; Otherwise do not return any response.
In the ISO transmission means, this step is not carried out, USB drive mould never opinion whether correctly receive packet, all can send out token next.
If the transmission of this packet is unsuccessful, then the USB driver module can not return handshake, controller 4 can control data yet the pointer forward of stream input module 1, when the USB driver module sends next token, data flow input module 1 can send to MUX to the packet of current pointer indication, and this packet promptly is not transmit successful packet last time.
After the transmission of this packet finished, next packet may also may transmit by endpoint32 by endpoint31, and the precedence of endpoint31 and endpoint32 transfer data packets does not limit in the present invention.
In the present embodiment, can continue to adopt endpoint31 to transmit, after endpoint31 transmitted 3 packets continuously, its Counter Value was 0 o'clock, and next period is transmitted by endpoint32 again, until the end of transmission of this little frame end or entire stream; Can certainly adopt by endpoint31 and endpoint32 and take turns the mode of transmits data packets.In a word, the present invention can guarantee that endpoint31 and endpoint32 transmit 3 packets at the most in each little frame by being provided with of fixed number threshold value.
Fig. 5 is the packet on the usb bus, and with the period of ep1 sign endpoint31 data packets for transmission, the period of ep2 sign endpoint32 transmits data packets, other was similar.Like this, in a little frame, make the maximum bandwidth of video flowing increase greatly, made full use of the usb bus bandwidth by two endpoint joint transmission.
In the ISO transmission means, according to the restriction of USB2.0 agreement, the transmission period of the ISO bag that in a little frame 7 sizes to be arranged at most be 1KB, so in the ISO transmission, need to use three Transport endpoints, equally, for each Transport endpoint is provided with a counter respectively, and the fixed number threshold value is set.In the transmission of each little frame, 3 packets of the each biography at most of each Transport endpoint, 1 packet of minimum biography so, just can utilize the bandwidth of usb bus fully.Packet is transferred to PC by three Transport endpoints jointly by usb bus, because USB is serial output, so have only an endpoint to transmit at every turn, is arbitrarily and select which endpoint at every turn.
In a word, the above is preferred embodiment of the present invention only, is not to be used to limit protection scope of the present invention.In fact the one of ordinary skilled in the art can be according to the technical scheme of above-mentioned specific embodiment, obtain other embodiment, as method and apparatus of the present invention being applied under the full speed pattern of USB1.1, for another example Transport endpoint is adopted different transmission sequence or the like.Therefore within the spirit and principles in the present invention all, any modification of being done, be equal to replacement, improvement etc., all should be included within protection scope of the present invention.

Claims (7)

1, a kind of device that transmits by universal serial bus channel is characterized in that, comprising:
The data flow input module is used to provide packet waiting for transmission;
MUX, the packet delivery that is used for described data flow input module is sent is to different Transport endpoints;
At least two Transport endpoints are used to provide the transmission channel of packet, the packet that the transmission MUX is sent;
Controller is used to finish the transmission controlled function of command analysis and data flow.
2, the device that transmits by universal serial bus channel according to claim 1 is characterized in that, described Transport endpoint is 2 or 3.
3, a kind of method of transmitting by universal serial bus channel is characterized in that, at least two Transport endpoints are set in the transmitting device that transmits by the USB passage with main frame, and carries out following steps:
When main frame and described transmitting device transmits data packets, described transmitting device sends to main frame by different Transport endpoints with packet in a frame/little frame, and a Transport endpoint transmits a fixed number threshold value packet at most in each frame/little frame.
4, the method for transmitting by universal serial bus channel according to claim 3 is characterized in that, this method specifically comprises:
A, main frame send token to described transmitting device, comprise the endpoint number of the Transport endpoint of transmits data packets in this token;
B, described transmitting device send to main frame with the Transport endpoint of the current packet that will send appointment from described token.
5, the method for transmitting by universal serial bus channel according to claim 4 is characterized in that, and is further comprising the steps of before the described step a:
Main frame is provided with a counter for each Transport endpoint, the corresponding Transport endpoint of accumulative total number of transmits data packets in each frame/little frame.
6, according to claim 3, the 4 or 5 described methods of transmitting by universal serial bus channel, it is characterized in that, 2 or 3 Transport endpoints are set in described transmitting device.
7, according to claim 4 or the 5 described methods of transmitting by universal serial bus channel, it is characterized in that: described transmitting device also comprises after the described step b to interrupt the transmission means transmission:
C, described main frame carry out verification to current data packets for transmission, if verification is passed through, then return success response to described transmitting device; Otherwise do not return any response.
CN200610083163A 2006-06-07 2006-06-07 Device and method for carrying out transmission via universal serial bus channel Expired - Fee Related CN100578971C (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN200610083163A CN100578971C (en) 2006-06-07 2006-06-07 Device and method for carrying out transmission via universal serial bus channel

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN200610083163A CN100578971C (en) 2006-06-07 2006-06-07 Device and method for carrying out transmission via universal serial bus channel

Publications (2)

Publication Number Publication Date
CN1885747A true CN1885747A (en) 2006-12-27
CN100578971C CN100578971C (en) 2010-01-06

Family

ID=37583746

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200610083163A Expired - Fee Related CN100578971C (en) 2006-06-07 2006-06-07 Device and method for carrying out transmission via universal serial bus channel

Country Status (1)

Country Link
CN (1) CN100578971C (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101650700B (en) * 2009-09-17 2011-12-28 飞天诚信科技股份有限公司 Method and device for supporting multi-logical channel communication
CN102306133A (en) * 2011-07-04 2012-01-04 珠海全志科技股份有限公司 USB (universal serial bus) host controller and data transfer method thereof
WO2013189377A3 (en) * 2012-11-27 2014-02-13 中兴通讯股份有限公司 Method and universal interface chip for achieving high-speed data transmission
JP2020092956A (en) * 2018-12-14 2020-06-18 日本光電工業株式会社 Biological information processing device, biological information sensor, and biological information system

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101650700B (en) * 2009-09-17 2011-12-28 飞天诚信科技股份有限公司 Method and device for supporting multi-logical channel communication
CN102306133A (en) * 2011-07-04 2012-01-04 珠海全志科技股份有限公司 USB (universal serial bus) host controller and data transfer method thereof
CN102306133B (en) * 2011-07-04 2014-07-02 珠海全志科技股份有限公司 USB (universal serial bus) host controller and data transfer method thereof
WO2013189377A3 (en) * 2012-11-27 2014-02-13 中兴通讯股份有限公司 Method and universal interface chip for achieving high-speed data transmission
CN103838691A (en) * 2012-11-27 2014-06-04 中兴通讯股份有限公司 Method for achieving high-speed data transmission and universal interface chip
US9900257B2 (en) 2012-11-27 2018-02-20 Zte Corporation Method and universal interface chip for achieving high-speed data transmission
CN103838691B (en) * 2012-11-27 2018-08-14 中兴通讯股份有限公司 Realize the method and common interface chip of high speed data transfer
JP2020092956A (en) * 2018-12-14 2020-06-18 日本光電工業株式会社 Biological information processing device, biological information sensor, and biological information system
JP7340926B2 (en) 2018-12-14 2023-09-08 日本光電工業株式会社 Biological information processing devices, biological information sensors, and biological information systems

Also Published As

Publication number Publication date
CN100578971C (en) 2010-01-06

Similar Documents

Publication Publication Date Title
CN100345130C (en) Multi-channel interface for communications between devices
CN1841353A (en) Data rate controller, and method of control thereof
CN101034384A (en) DMA controller and transmit method capable of simultaneously carrying out read-write operation
EP1116122B1 (en) Method and apparatus for transmitting and receiving network protocol compliant signal packets over a platform bus
CN1763696A (en) Data transmission system and its link power supply state changing method
CN1767499A (en) The method of transmitting time-critical information in the synchronous ethernet system
CN1825295A (en) Data transmission control device, image processing unit, and data transmission control method
CN101046786A (en) DMA controller and transmission method of implementing high efficient DMA transmission
CN1934557A (en) Scalable bus structure
CN1885747A (en) Device and method for carrying out transmission via universal serial bus channel
CN1295633C (en) Method for multiple CPU communication
CN1832488A (en) System and method for inter connecting SP14 equipment and PCI Express equipment
CN1696917A (en) Direct internal storage access controller in master-slave system and bus structure
WO2018229697A1 (en) Regrouping of video data by a network interface controller
CN1788261A (en) Usb host controller with memory for transfer descriptors
JPH07221780A (en) System for enhancement of speed of reception of data packet
CN101061690A (en) Performance based packet ordering in a PCI Express bus
CN1955890A (en) Method for raising communication speed of HID equipment
CN1801823A (en) Single bus communication protocol with multi node equipment interconnection
CN1639679A (en) A communication system
CN1602475A (en) Asynchronous serial data interface
CN1866233A (en) Signal processing apparatus, signal processing system and signal processing method
US8004991B1 (en) Method and system for processing network information
CN1151644C (en) Full duplex asynchronous serial communication method and its communication system
CN1383074A (en) Method for arbitrating bus control right and its arbitrator

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
C17 Cessation of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20100106

Termination date: 20120607