USB Scheduling Using Real-Time Data Analysis
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional USB communication systems overestimate the transmission time of packets due to the worst-case scenario assumption of stuffed bytes, leading to deferred transmissions and reduced bandwidth, even when packets contain zeros.
Innovation Solution
Accurately determine the number of stuffed bytes by counting strings of consecutive ones in the payload data, allowing for a more precise estimation of the total packet size and scheduling packets for transmission within the current bus interval if they fit within the available bandwidth.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If the controller estimates transmission time based on worst-case scenario (all bytes are 1's), then the transmission timing is conservative and reliable, but the bandwidth utilization is reduced and packets are deferred unnecessarily
Solution Approach 1:
The patent changes the estimation parameter from a fixed worst-case assumption to a dynamic calculation based on actual payload content. The controller now determines the number of stuffed bytes by analyzing the actual bit pattern in the payload, rather than assuming all bytes are 1's. This parameter change allows the system to maintain reliable timing while improving bandwidth utilization by accurately reflecting actual transmission requirements.
Solution Approach 2:
The patent replaces the mechanical worst-case assumption mechanism with an analytical approach that examines actual payload data. Instead of using a fixed conservative estimate, the system substitutes a calculation mechanism that counts actual strings of consecutive ones and determines stuffed bytes accordingly, replacing the crude mechanical estimation with a more sophisticated analytical method.
2Device complexity
If the controller assumes all payload bytes are 1's for estimation, then the transmission time calculation is simple, but the estimation accuracy is poor leading to deferred transmissions
Solution Approach 1:
The patent applies preliminary action by analyzing the payload data before transmission scheduling. The controller performs a preliminary scan of the payload to count strings of consecutive ones and calculate the actual number of stuffed bytes needed. This preliminary analysis enables accurate estimation of transmission time before the packet is scheduled, improving measurement precision without excessive complexity.
Solution Approach 2:
The patent introduces feedback by using the actual payload content to inform the transmission time estimation. The controller feeds back information about the actual bit pattern (number of consecutive one strings) into the estimation calculation, creating a closed-loop system where the estimation is continuously adjusted based on actual data characteristics rather than relying on fixed assumptions.
3Stability of the object's composition
If packets are deferred to the next bus interval due to overestimation, then the transmission timing is conservative, but the bandwidth is wasted and data transfer speed is reduced
Solution Approach 1:
The patent applies dynamics by making the transmission schedule adaptive rather than static. The scheduling decision is now dynamic, based on real-time analysis of payload content and actual stuffed byte requirements. This dynamic approach allows the system to adjust transmission timing to match actual needs, preventing both premature deferral and transmission overruns, thereby reducing bandwidth waste while maintaining schedule stability.
Solution Approach 2:
The patent merges the payload analysis function with the transmission scheduling function. By combining the counting of consecutive one strings with the bandwidth availability check, the system creates an integrated scheduling mechanism that simultaneously considers both data characteristics and channel capacity, eliminating the need for separate conservative estimation and scheduling decisions.
Data Source
AI summary
A communication device includes controller circuitry and transmitter circuitry. The controller circuitry determines a number of strings of consecutive ones in a data packet, and determines a number of stuffed bytes based on the number of strings of consecutive ones. Further, the controller circuitry schedules a transaction packet to be transmitted within a bus interval based on a determination that a total number of bytes of the transaction packet is less than a number of available bytes in the bus interval. The total number of bytes of the transaction packet is based on a number of payload bytes of the data packet and the number of stuffed bytes. The transmitter circuitry transmits the transaction packet during the bus interval based on the controller circuitry scheduling the transaction packet for transmission.


