A method and system for increasing the efficiency of usb bandwidth usage
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2026-07-10
- Publication Date
- 2026-08-11
AI Technical Summary
[0007]目前多bulk out/in传输场景下,虽然可以通过一个usb接口传输多种数据流,达到多业务隔离的作用,但还有个很大问题:即带宽浪费严重
[0018]本发明通过提出一种增加usb带宽使用效率的方法,usb主机默认不轮询in端点,仅在设备复用Type-C闲置引脚反馈请求时才发起in传输,有效缓解了因持续轮询造成的带宽浪费问题,显著提高了usb业务流的传输上限,且巧妙复用了sstx+/sstx-引脚传输端点需求,避免了额外增加通信模块。
Smart Images

Figure CN122547719A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of USB data transmission, and more specifically to a method and system for increasing the efficiency of USB bandwidth utilization. Background Technology
[0002] USB, as a new type of serial communication technology, has seen its transmission speed continuously improve with each protocol update, evolving from low-speed and full-speed to high-speed and ultra-high-speed transmission rates. Compared to older computer interfaces, the USB bus offers advantages such as plug-and-play functionality, hot-swapping support, miniaturized interfaces, resource efficiency, and flexible usage.
[0003] For different USB device classes, data transmission involves extensive enumeration and handshakes. Enumeration determines the device's basic type and transmission endpoints, enabling data transfer. Enumeration involves the interaction between various descriptors. The host obtains the device's basic configuration and transmission endpoints through the descriptors provided by the device, thereby abstracting the device class and performing class-related business transmissions. According to the USB specification, a device may be abstracted into different classes, such as HID, CDC, and UVC, each with different transmission endpoints and characteristics.
[0004] Although USB transmission speeds have been continuously improving, upgrading from the traditional USB 1.0 to USB 2.0 / 3.0 and even higher, USB 2.0 remains the preferred choice for most users in terms of both technological maturity and cost-effectiveness. Furthermore, considering factors such as transmission reliability, bandwidth utilization, and usage scenarios, USB bulk transmission is widely used for the following reasons: High reliability: Supports error detection and retransmission mechanisms, ensuring data integrity and accuracy, suitable for applications with high accuracy requirements; Large data capacity support: Specifically designed for continuous transmission of large amounts of data, maximizing USB bandwidth utilization; Bidirectional communication capability: Bulk endpoints can be unidirectional or bidirectional, and most applications use both bulk out and bulkkin simultaneously. The out endpoint is used to transmit large amounts of business data, while the in endpoint only transmits small amounts of feedback information; Wide support: Bulk transmission is one of the four transmission types defined in the USB protocol and is widely used in various USB devices.
[0005] As a type of USB interface, the Type-C interface plays an important role in high-speed data transmission, high-power charging, and multi-functionality. Its main features include: reverse pluggability; ultra-high transmission speed; powerful power transmission capability; multi-functional integration; and support for audio and video output.
[0006] In USB multi-serial / network data transmission and multi-channel audio data transmission scenarios, the sending end is the host, and the receiving end is the USB device. Both parties define multiple bulk out_N / in_N endpoint pairs through enumeration and abstraction. The host obtains the initial data source through a multi-serial or network module, and then, based on prior negotiation with the device, transmits the corresponding serial / network data service stream to the specific bulk out endpoint. Different bulk out endpoints correspond to different services. The bulk in endpoints are for device use, only sending a small amount of feedback information to the host based on its own data reception status.
[0007] Currently, in multi-bulk out / in transmission scenarios, although multiple data streams can be transmitted through a single USB interface, achieving the effect of multi-service isolation, a significant problem remains: severe bandwidth waste. In these scenarios, each service stream has a bulk in endpoint, which is used by the receiver to send a small amount of acknowledgment or control signals. Although the data volume is small, due to the half-duplex communication of USB 2.0, the host needs to continuously send bulk out token packets to the device. In most cases, the device does not need to send corresponding in data, so it returns a NACK signal to the host. However, the host needs to constantly poll the device's in endpoint to determine if there is any device transmitting, which results in a significant waste of host bandwidth and severely limits the upper limit of service data that can be transmitted. Summary of the Invention
[0008] This invention proposes a method to increase USB bandwidth utilization efficiency. In a USB 2.0 multi-type data transmission system, the USB host sends service data to the USB device through the OUT endpoint and, by default, does not send IN token packets to poll the USB device's IN endpoint. When the USB device's IN endpoint needs to transmit feedback data, the USB device reuses the idle SSTX+ and SSTX- pins in the standard Type-C interface. By pulling the level of the SSTX+ pin high and configuring the voltage range of the SSTX- pin, an IN transmission request signal is generated. The USB host captures the IN transmission request signal through the rising edge interrupt of the SSTX+ pin and parses the corresponding target IN endpoint according to the voltage range of the SSTX- pin. The USB host initiates IN transmission for the target IN endpoint. When the SSTX+ pin is detected to return to a low level, the default non-polling state is restored.
[0009] Furthermore, S1 specifically includes: in the USB 2.0 multi-type data transmission system, the USB host and the USB device are connected via a standard Type-C data cable, and the USB host, as the main data sending end, establishes multiple bulk out data transmission channels and bulk in data transmission channels; the USB host sends a large amount of business data to the USB device through the bulk out data transmission channels, and by default does not send in token packets to the bulk in data transmission channels.
[0010] Further, S2 specifically includes: the sstx+ pin is an enable signal pin, which is normally at a low level; when the in endpoint of the USB device needs to transmit feedback data, the USB device pulls the sstx+ pin high to make it high level; the sstx- pin is an analog pin, whose voltage value varies from 0 to V_max, and the USB device divides the voltage of the sstx- pin into N voltage ranges according to the number of in endpoints in the system, and identifies the target in endpoint that needs to transmit data by setting the voltage of the sstx- pin to the corresponding voltage range, thereby generating the in transmission request signal.
[0011] Further, S3 specifically includes: the USB host captures the IN transmission request signal using the rising edge interrupt mode of the sstx+ pin; when the rising edge interrupt is captured, the USB host reads the current voltage value of the sstx- pin and compares the current voltage value with N preset voltage ranges, thereby resolving the target IN endpoint corresponding to the voltage range where the current voltage value is located.
[0012] Further, S4 specifically includes: the USB host sending an IN token packet to the parsed target IN endpoint to receive response data or control signals returned by the USB device through the target IN endpoint; after the target IN endpoint completes data transmission, the USB device pulls the SSTX+ pin low to the default low level; after the USB host detects that the SSTX+ pin has returned to the low level, it stops sending IN token packets to the target IN endpoint and restores the default non-polling state.
[0013] Furthermore, after S1, the process includes: the USB device receiving the service data through the bulk out data transmission channel; when the reception is complete and a response packet or feedback packet needs to be returned, the step of generating an in transmission request signal in S2 is triggered.
[0014] Furthermore, the voltage range division of the sstx pin specifically includes: defining V_min as the minimum effective voltage threshold, and the voltage of the sstx pin being in the (0, V_min) range by default; when the nth in endpoint of the USB device needs to send data, the voltage of the sstx pin is configured to the voltage range corresponding to the nth in endpoint, where n is a positive integer less than or equal to N.
[0015] Furthermore, after S4, the procedure also includes: when the USB device has a new IN endpoint that needs to transmit data, the steps of pulling the SSTX+ pin high and configuring the voltage range of the SSTX- pin are performed again to resend the IN transmission request signal to the USB host.
[0016] Furthermore, the sstx+ pin and the sstx- pin are high-speed differential signal pins that are idle in the USB 2.0 scenario of the standard Type-C interface. The USB device can use the high-speed differential signal pins to feed back bandwidth requirements without adding an additional communication module.
[0017] Furthermore, this application also proposes a system for increasing USB bandwidth utilization efficiency, comprising: a USB host, used to send service data through an out endpoint, and in a default state where no in token packets are sent, receive an in transmission request signal sent by a USB device through multiplexing the SSTX+ and SSTX- pins, parse the target in endpoint, and initiate an in transmission; and a USB device, used to receive the service data, and when the in endpoint needs to transmit feedback data, generate the in transmission request signal by pulling the level of the SSTX+ pin high and configuring the voltage range of the SSTX- pin, and send it to the USB host.
[0018] This invention proposes a method to increase the efficiency of USB bandwidth utilization. By default, the USB host does not poll the IN endpoint, but only initiates IN transmission when the device reuses an idle Type-C pin to provide feedback. This effectively alleviates the bandwidth waste caused by continuous polling, significantly increases the transmission limit of USB service flows, and cleverly reuses the SSTX+ / SSTX- pin transmission endpoint requirements, avoiding the need for additional communication modules. Attached Figure Description
[0019] Figure 1 This is a flowchart illustrating a battery swapping service scheduling method proposed in this invention. Figure 2 This is a flowchart illustrating the USB enumeration and transmission process in this invention. Figure 3 This is a diagram of the USB Type-C interface in this invention; Figure 4This is a diagram of the USB Type-C interface and a description of the USB Type-C pins in this invention; Figure 5 This is a diagram of USB multi-module data transmission in this invention; Figure 6 This is a diagram of USB multi-channel audio transmission in this invention; Figure 7 This is a schematic diagram of the transmission principle of the present invention; Figure 8 This is a diagram showing the voltage variation of the sstx pin in this invention. Detailed Implementation
[0020] refer to Figure 1 This invention proposes a method for increasing USB bandwidth utilization efficiency, comprising: S1. In a USB 2.0 multi-type data transmission system, the USB host sends service data to the USB device through the out endpoint, and by default does not send in token packets to poll the in endpoint of the USB device.
[0021] The USB 2.0 multi-type data transmission system refers to a system where a USB host and device are connected via a Type-C data cable, with one side acting as the primary data sender and the other as the primary data receiver. To avoid the difficulty of transmitting multiple business data streams from a single bulk endpoint, multiple bulk out / in data transmission channels are established. Since this invention only considers USB 2.0 and not USB 3.0 or later versions, the Type-C interface does not require high-speed SSTX+ / SSTX- pins under the USB 2.0 transmission standard, so they can be reused. The default decision not to send IN token packets to poll the USB device's IN endpoint means that the host does not need to continuously send IN token packets to poll the device's IN endpoint data during data transmission. In other words, by default, the host considers that all IN ports of the device do not need to send IN data, thus avoiding bandwidth waste caused by continuous polling under half-duplex communication.
[0022] Specifically, the host, as the primary data sender, is responsible for distributing large volumes of service streams through the out endpoint, instead of sending in token packets in real time to query the data status of the slave's in endpoint. Regardless of whether it is plugged in correctly or incorrectly, only one row of pins on the Type-C interface is active at any given time. Since both rows A and B have corresponding idle SSTX+ / SSTX- pins, the connectivity of the physical connection is guaranteed.
[0023] In a specific implementation scenario, refer to Figures 5-6 In industrial communication modules with multiple serial / network port data transmission scenarios or CDC-type multi-channel audio interface application scenarios, the host transmits a large amount of business data streams through a specific bulk out endpoint. At this time, the host does not send any in token packets.
[0024] S2. When the in endpoint of the USB device needs to transmit feedback data, the USB device reuses the idle sstx+ and sstx- pins in the standard Type-C interface, and generates an in transmission request signal by pulling the level of the sstx+ pin high and configuring the voltage range of the sstx- pin.
[0025] The sstx+ and sstx- pins are idle high-speed differential signal pins of the standard Type-C interface in a USB 2.0 scenario, as referenced. Figures 3-4 The IN transmission request signal is control information used to indicate to the host which bulk IN endpoint requires the host to send a token packet. The step of raising the level of the SSTX+ pin and configuring the voltage range of the SSTX- pin means that the device uses the level raising and voltage configuration actions to coordinate the encoding of the endpoint request information. SSTX+ is defined as an enable signal; normally, SSTX+ is low. When the slave device needs to request an IN endpoint token, it raises the SSTX+ voltage to a high level.
[0026] Specifically, the SSTX pin is specified as an analog pin, with a voltage value varying from 0 to V_max. It is categorized into N levels based on the number of IN endpoints in the USB system, as per reference. Figure 8 Each voltage range corresponds to a data request for an in endpoint. The default sstx-voltage is 0, and it is only valid when the sstx-voltage is greater than V_min.
[0027] In one specific implementation scenario, when the device needs to send back a response through the bulk in endpoint after receiving the service data, it pulls the sstx+ pin high and configures the sstx- pin voltage.
[0028] S3. The USB host captures the IN transmission request signal through the rising edge interrupt of the sstx+ pin, and parses the corresponding target IN endpoint according to the voltage range of the sstx- pin.
[0029] The capture mentioned above refers to the host determining whether an IN token needs to be sent by using a rising edge interrupt on the sstx+ pin. (See reference...) Figure 7 The process of resolving the corresponding target IN endpoint refers to the host reading the voltage value of the sstx pin and determining its voltage range, thereby deducing the endpoint number corresponding to the requester.
[0030] Specifically, when the host detects a rising edge interrupt on the sstx+ pin, it reads the current analog voltage of the sstx- pin and compares it with the pre-divided N voltage levels to locate the in endpoint mapped to the matching voltage range.
[0031] In one specific implementation scenario, the system has 4 in endpoints, and the voltage of the sstx pin is divided into 4 intervals. When the host detects the rising edge and reads that the voltage of the sstx pin falls in the third interval, it parses and determines that the target is in endpoint 3.
[0032] S4. The USB host initiates an IN transmission to the target IN endpoint. When it detects that the sstx+ pin returns to a low level, it returns to the default non-polling state.
[0033] The "initiating IN transmission" refers to the host sending the corresponding IN token packet to the parsed target IN endpoint to receive data from the device. The "restoring the default non-polling state" means that after the data transmission is completed, the device restores the pin state by pulling sstx+ low to the default low level. The host then detects that the sstx+ pin has been restored to the low level and cancels the current polling action, returning to the standby listening mode.
[0034] Specifically, the host sends the corresponding IN token packet, and the device sends a small number of acknowledgment or control signals through the IN endpoint. After the sending is completed, the device pulls sstx+ low to the default low level. The host stops sending IN token packets through the endpoint after detecting the level change.
[0035] In one specific implementation scenario, after the data transmission at the in endpoint 3 is completed, the device pulls sstx+ low. After the host confirms that there are no new requests, it stops sending token packets to the in endpoint 3 and continues to maintain the state of only sending out service data until the sstx+ pin is pulled high again.
[0036] Furthermore, S1 specifically includes: in the USB 2.0 multi-type data transmission system, the USB host and the USB device are connected via a standard Type-C data cable, and the USB host, as the main data sending end, establishes multiple bulk out data transmission channels and bulk in data transmission channels; the USB host sends a large amount of business data to the USB device through the bulk out data transmission channels, and by default does not send in token packets to the bulk in data transmission channels.
[0037] The multiple bulk out / in data transmission channels are independent channels established to address the difficulty of transmitting multiple service data streams with a single bulk endpoint. The out endpoint is used to transmit a large amount of service data, and the in endpoint is used to transmit a small amount of feedback information.
[0038] Specifically, refer to Figure 2Before transmission, the host and device enumerate and abstract classes to determine the bulk endpoint pairs for data transmission. Subsequently, the host only pushes data unidirectionally through the out endpoint and does not actively poll the in endpoint.
[0039] In one specific implementation scenario, during multi-channel audio transmission, the host sends audio streams for each channel through the bulk out endpoint and establishes multiple bulk in endpoints, but the host does not send polling tokens to these in endpoints.
[0040] Further, S2 specifically includes: the sstx+ pin is an enable signal pin, which is normally at a low level; when the in endpoint of the USB device needs to transmit feedback data, the USB device pulls the sstx+ pin high to make it high level; the sstx- pin is an analog pin, whose voltage value varies from 0 to V_max, and the USB device divides the voltage of the sstx- pin into N voltage ranges according to the number of in endpoints in the system, and identifies the target in endpoint that needs to transmit data by setting the voltage of the sstx- pin to the corresponding voltage range, thereby generating the in transmission request signal.
[0041] The enable signal pin is used to indicate the switch of the request state; the voltage is divided into N voltage intervals, which is an encoding mechanism that maps analog voltage values to discrete endpoint numbers.
[0042] Specifically, if there are N in endpoints, the sstx- voltage is divided into N equal parts from 0 to V_max, with each interval representing an in endpoint. The device identifies itself by configuring the sstx- pin voltage to fall into the corresponding interval.
[0043] In one specific implementation scenario, the system has 8 in endpoints, and V_max is 3.3V. The span of each interval is 3.3V / 8. If in endpoint 5 needs to transmit data, the device will configure the voltage of the sstx- pin in the range of approximately 2.06V to 2.47V and pull the sstx+ pin high.
[0044] Further, S3 specifically includes: the USB host captures the IN transmission request signal using the rising edge interrupt mode of the sstx+ pin; when the rising edge interrupt is captured, the USB host reads the current voltage value of the sstx- pin and compares the current voltage value with N preset voltage ranges, thereby resolving the target IN endpoint corresponding to the voltage range where the current voltage value is located.
[0045] The rising edge interrupt method is a hardware-level response mechanism for level changes, ensuring that the host can promptly detect device requests; the comparison is the process of matching the measured voltage value with a pre-stored interval threshold.
[0046] Specifically, after the host interrupt is triggered, the ADC is started to read the sstx- voltage, and the endpoint number is decoded by determining which predetermined segment the voltage falls into.
[0047] In one specific implementation scenario, the host reads that the sstx- voltage is 2.3V, which, after comparison, belongs to the 5th interval. Therefore, the target in endpoint is determined to be endpoint number 5.
[0048] Further, S4 specifically includes: the USB host sending an IN token packet to the parsed target IN endpoint to receive response data or control signals returned by the USB device through the target IN endpoint; after the target IN endpoint completes data transmission, the USB device pulls the SSTX+ pin low to the default low level; after the USB host detects that the SSTX+ pin has returned to the low level, it stops sending IN token packets to the target IN endpoint and restores the default non-polling state.
[0049] The restoration of the default non-polling state is achieved through a transmission termination control mechanism using a level reset mechanism, preventing the host from getting stuck in invalid polling.
[0050] Specifically, after the data transmission is complete, the device actively pulls down sstx+. When the host detects that the pin returns to a low level, it determines that the transmission is over and then cancels the token transmission to the in endpoint.
[0051] In one specific implementation scenario, after endpoint 5 sends the response packet, the device sets sstx+ low, and the host immediately stops sending in tokens to endpoint 5 and returns to the state of sending only out data.
[0052] Furthermore, after S1, the process includes: the USB device receiving the service data through the bulk out data transmission channel; when the reception is complete and a response packet or feedback packet needs to be returned, the step of generating an in transmission request signal in S2 is triggered.
[0053] The trigger execution is an action connection logic based on receiving out data and having a feedback requirement.
[0054] Specifically, after the device has fully received the out endpoint service flow, if the upper layer application requires confirmation, the sstx pin configuration process will be initiated.
[0055] In one specific implementation scenario, after receiving a batch of audio data packets, the device needs to send back the verification results, and then pulls up the sstx+ voltage and sets the sstx- voltage.
[0056] Furthermore, the voltage range division of the sstx pin specifically includes: defining V_min as the minimum effective voltage threshold, and the voltage of the sstx pin being in the (0, V_min) range by default; when the nth in endpoint of the USB device needs to send data, the voltage of the sstx pin is configured to the voltage range corresponding to the nth in endpoint, where n is a positive integer less than or equal to N.
[0057] Here, V_min is an invalid region threshold set to eliminate low-voltage noise interference; the corresponding voltage range is a dedicated voltage segment allocated according to the principle of equal division.
[0058] Specifically, the range from 0 to V_min is considered as no request by default, and only voltage values exceeding V_min are considered as valid endpoint number codes.
[0059] In one specific implementation scenario, V_min is set to 0.2V. When n=3, the device sets the sstx- voltage within the third equal interval greater than 0.2V.
[0060] Furthermore, after S4, the procedure also includes: when the USB device has a new IN endpoint that needs to transmit data, the steps of pulling the SSTX+ pin high and configuring the voltage range of the SSTX- pin are performed again to resend the IN transmission request signal to the USB host.
[0061] The resending of the in transmission request signal is a loop mechanism that supports multiple asynchronous requests from different endpoints.
[0062] Specifically, after a transmission is completed, the pin is reset. If there are other IN endpoints that need to be transmitted, the level pull-up and voltage configuration actions are repeated.
[0063] In one specific implementation scenario, after endpoint 5 finishes transmitting, if endpoint 7 also needs to transmit, the device will raise sstx+ again and adjust the sstx- voltage to the 7 range to initiate the next round of requests.
[0064] Furthermore, the sstx+ pin and the sstx- pin are high-speed differential signal pins that are idle in the USB 2.0 scenario of the standard Type-C interface. The USB device can use the high-speed differential signal pins to feed back bandwidth requirements without adding an additional communication module.
[0065] The idle high-speed differential signal pin is a high-speed communication pin that is not used in USB 2.0 mode. Reusing it can avoid hardware modification costs.
[0066] Specifically, the existing sstx+ / - physical lines in the Type-C cable are used directly to transmit custom control levels, achieving communication with zero additional modules.
[0067] In one specific implementation scenario, a regular USB 2.0 Type-C cable can meet this feedback requirement without the need for a custom cable with an additional communication chip.
[0068] Furthermore, this application also proposes a system for increasing USB bandwidth utilization efficiency, comprising: a USB host, used to send service data through an out endpoint, and in a default state where no in token packets are sent, receive an in transmission request signal sent by a USB device through multiplexing the SSTX+ and SSTX- pins, parse the target in endpoint, and initiate an in transmission; and a USB device, used to receive the service data, and when the in endpoint needs to transmit feedback data, generate the in transmission request signal by pulling the level of the SSTX+ pin high and configuring the voltage range of the SSTX- pin, and send it to the USB host.
[0069] The USB host and the USB device constitute the hardware carrier for executing the above method, and the two work together through a standard Type-C interface to achieve on-demand request transmission.
[0070] Specifically, the USB host is responsible for listening and issuing tokens, while the USB device is responsible for pin driving and data transmission.
[0071] In one specific implementation scenario, the computer acts as the USB host, and the industrial data acquisition module acts as the USB device. The two work together to achieve efficient on-demand transmission of multiple bulk data streams.
[0072] The above are merely preferred embodiments of the present invention, but the scope of protection of the present invention is not limited thereto. Any equivalent substitutions or modifications made by those skilled in the art within the scope of the technology disclosed in the present invention, based on the technical solution and inventive concept of the present invention, should be covered within the scope of protection of the present invention.
Claims
1. A method for increasing USB bandwidth utilization efficiency, characterized in that, include: S1. In a USB 2.0 multi-type data transmission system, the USB host sends service data to the USB device through the out endpoint, and by default does not send in token packets to poll the in endpoint of the USB device; S2. When the in endpoint of the USB device needs to transmit feedback data, the USB device reuses the idle sstx+ and sstx- pins in the standard Type-C interface, and generates an in transmission request signal by pulling the level of the sstx+ pin high and configuring the voltage range of the sstx- pin. S3. The USB host captures the IN transmission request signal through the rising edge interrupt of the sstx+ pin, and resolves the corresponding target IN endpoint according to the voltage range of the sstx- pin; S4. The USB host initiates an IN transmission to the target IN endpoint. When it detects that the sstx+ pin returns to a low level, it returns to the default non-polling state.
2. The method for increasing USB bandwidth utilization efficiency as described in claim 1, characterized in that, Specifically, S1 includes: in the USB 2.0 multi-type data transmission system, the USB host and the USB device are connected via a standard Type-C data cable; the USB host, as the main data sender, establishes multiple bulk out data transmission channels and bulk in data transmission channels; the USB host sends a large amount of business data to the USB device through the bulk out data transmission channels, and by default does not send in token packets to the bulk in data transmission channels.
3. The method for increasing USB bandwidth utilization efficiency as described in claim 1, characterized in that, S2 specifically includes: the sstx+ pin is an enable signal pin, which is normally at a low level; when the in endpoint of the USB device needs to transmit feedback data, the USB device pulls the sstx+ pin high to make it high level; the sstx- pin is an analog pin, whose voltage value varies from 0 to V_max. The USB device divides the voltage of the sstx- pin into N voltage ranges according to the number of in endpoints in the system, and identifies the target in endpoint that needs to transmit data by setting the voltage of the sstx- pin to the corresponding voltage range, thereby generating the in transmission request signal.
4. The method for increasing USB bandwidth utilization efficiency as described in claim 1, characterized in that, Specifically, S3 includes: the USB host captures the IN transmission request signal using the rising edge interrupt mode of the sstx+ pin; when the rising edge interrupt is captured, the USB host reads the current voltage value of the sstx- pin and compares the current voltage value with N preset voltage ranges, thereby resolving the target IN endpoint corresponding to the voltage range where the current voltage value is located.
5. The method for increasing USB bandwidth utilization efficiency as described in claim 1, characterized in that, S4 specifically includes: the USB host sending an IN token packet to the parsed target IN endpoint to receive response data or control signals returned by the USB device through the target IN endpoint; after the target IN endpoint completes data transmission, the USB device pulls the SSTX+ pin low to the default low level; after the USB host detects that the SSTX+ pin has returned to the low level, it stops sending IN token packets to the target IN endpoint and restores the default non-polling state.
6. The method for increasing USB bandwidth utilization efficiency as described in claim 2, characterized in that, Following S1, the process further includes: the USB device receiving the service data through the bulk out data transmission channel; when the reception is complete and a response packet or feedback packet needs to be returned, the step of generating an in transmission request signal in S2 is triggered.
7. The method for increasing USB bandwidth utilization efficiency as described in claim 3, characterized in that, The voltage range division of the sstx pin specifically includes: defining V_min as the minimum effective voltage threshold, and the voltage of the sstx pin being in the (0, V_min) range by default; when the nth in endpoint of the USB device needs to send data, the voltage of the sstx pin is configured to the voltage range corresponding to the nth in endpoint, where n is a positive integer less than or equal to N.
8. The method of increasing efficiency of USB bandwidth usage as claimed in claim 1, wherein, Following S4, the procedure further includes: when the USB device has a new IN endpoint that needs to transmit data, the steps of pulling the SSTX+ pin high and configuring the voltage range of the SSTX- pin are performed again to resend the IN transmission request signal to the USB host.
9. The method of increasing efficiency of USB bandwidth usage as claimed in claim 1, wherein, The sstx+ and sstx- pins are idle high-speed differential signal pins of the standard Type-C interface in the USB 2.0 scenario. The USB device can use the high-speed differential signal pins to feedback bandwidth requirements without adding an additional communication module.
10. A system for increasing the efficiency of bandwidth usage of a USB, characterized in that, include: The USB host is used to send business data through the out endpoint and, by default, does not send in token packets. It receives in transmission request signals sent by USB devices through multiplexing the SSTX+ and SSTX- pins, parses the target in endpoint, and initiates in transmission. The USB device is used to receive the service data, and when the IN endpoint needs to transmit feedback data, it generates the IN transmission request signal by pulling the level of the SSTX+ pin high and configuring the voltage range of the SSTX- pin, and sends it to the USB host.