USB Power Management Module Suspend State Control
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
USB devices with multiple functions face issues when suspended, as they cannot determine if associated host class or function drivers are active, leading to deadlocks and continuous power consumption due to repeated wake-up requests, especially when pending data or requests are not acknowledged by inactive drivers.
Innovation Solution
A power management module that classifies device functions into 'indefinite', 'locked', and 'unlocked' states based on endpoint status, controlling suspend operations to prevent deadlocks by determining if host drivers are active, and only requesting wake-up when functions are unlocked and have pending data or requests.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If the device requests wake-up when pending data or requests are present after suspend, then data transfer can occur, but the device enters non-suspended mode causing increased power consumption
Solution Approach 1:
The patent changes the state parameters of device functions from binary (active/inactive) to multi-state (indeterminate, locked, unlocked) based on endpoint status. This allows the device to make informed decisions about wake-up requests, transitioning from a parameter that causes unnecessary wake-ups to one that enables selective wake-up only when host drivers are active
Solution Approach 2:
The device autonomously monitors its own endpoint status and determines which functions are locked or unlocked without host intervention. This self-service mechanism allows the device to intelligently manage its own suspend/resume cycles, requesting wake-up only when necessary, thereby reducing unnecessary power consumption while ensuring data transfer completion
2Use of energy by moving object
If the device remains suspended to reduce power consumption, then power usage decreases, but pending data or requests cannot be transferred to the host
Solution Approach 1:
The patent performs preliminary classification of device functions into locked, unlocked, or indeterminate states before the suspend operation completes. By determining which functions have unlocked endpoints (indicating active host drivers) in advance, the device can make informed decisions about wake-up requests, ensuring data transfer capability is restored only when necessary while maintaining power savings during genuine suspend conditions
3Reliability
If the device continuously wakes up to check for pending data, then data transfer opportunities are captured, but the device cannot enter suspended mode leading to continuous power consumption
Solution Approach 1:
The patent implements a feedback mechanism where the device monitors its endpoint status and uses this information to control wake-up behavior. The endpoint status serves as feedback indicating whether host drivers are active, allowing the device to adjust its suspend/resume behavior dynamically. This feedback loop prevents continuous wake-ups by providing clear signals about when wake-up is necessary, thereby eliminating continuous power consumption while maintaining reliable data transfer opportunity capture
Data Source
AI summary
A system and method of managing power of a multi-function USB device suspends the device in response to receipt of a request to suspend from a USB host; assigns respective device functions to indefinite, locked or unlocked states; allows the device to resume if there are data or requests for host attention pending at a given function that is in the unlocked state and assigning the given function to the locked state; and otherwise maintains the suspend even if there are data are pending at one or more functions that are in the locked state.


