一种唤醒低功耗电路的检测电路的设计方法
文献发布时间:2023-06-19 11:45:49
技术领域
本发明涉及电子电路领域,特别涉及一种唤醒低功耗电路的检测电路的设计方法。
背景技术
现有技术中,USB总线空闲时,USB设备会收到主机通过USB总线发送的suspend信号,从而进入一种低功耗suspend状态,当USB设备接受到主机通过USB总线发送的唤醒信号退出suspended状态。如果为进一步降低功耗,需USB设备端关闭处理器内核电源以及时钟和总线,使处理器进入低功耗sleep状态,只有中断信号和复位信号才能使处理器退出sleep状态。处理器sleep状态下USB设备无法响应主机通过USB总线发送的唤醒信号。
现有技术中的术语和解释:
Suspended(挂起状态):3ms未见USB总线活动而处于省电状态,USB设备不可用,但仍然保持原有的USB地址和配置,进入suspended状态后USB总线上保持J状态。
J状态:USB总线上D+=1,D-=0。
K状态:USB总线上D+=0,D-=1。
SE0状态:USB总线上D+=0,D-=0。
为保证USB设备能接受到并响应主机通过USB总线发送的唤醒信号退出suspended状态恢复工作,就需要保持打开处理器内核的电源和时钟和总线,这会导致USB设备在suspended状态下功耗过大,可能无法满足USB IF compliance认证要求的低功耗要求。而若使处理器进入低功耗sleep状态,被关闭了时钟和总线的USB设备是无法直接识别和响应主机通过USB总线发送的任何信号。
发明内容
为了解决上述问题,本发明的目的在于:本发明可以使USB设备在接收到主机通过USB总线发送的suspended命令后,进入一种更低功耗的suspended状态,且本发明可以检测到主机通过USB总线对USB设备发送的K信号以及SE0信号,并使USB设备退出suspended状态。
具体地,本发明提供一种唤醒低功耗电路的检测电路的设计方法,所述方法包括:
S1,使USB设备在接收到主机通过USB总线发送的suspended命令后,进入一种低功耗的suspended状态;
S2,检测到主机通过USB总线对USB设备发送的K信号或者SE0信号,使USB设备退出suspended状态。
进一步包括:
首先根据USB设备进入suspended状态USB总线上保持J状态,即D+=1,D-=0;
当主机对设备发送K状态,即D+=0,D-=1状态或SE0状态,即D+=0,D-=0状态,则D+状态从1变为0,那么将D+作为USB设备的处理器中断触发,使处理器退出sleep状态,从而使USB设备退出suspended状态。
由此,本申请的优势在于:当USB设备收到主机发送的suspended信号进入一种更低功耗的suspended状态,即处理器进入sleep状态,处理器关闭内核的电源和时钟和总线;通过本申请的方法可以检测到主机通过USB总线对USB设备发送的K或SE0信号,作为处理器的中断信号使处理器退出sleep状态,恢复USB总线,从而使USB设备退出suspended状态。而不再只有中断信号和复位信号才能使处理器退出sleep状态。解决处理器sleep状态下USB设备无法响应主机通过USB总线发送的唤醒信号的问题,方法简单。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,并不构成对本发明的限定。
图1是本发明方法的示意流程图。
图2是本发明系统的具体实施例的应用电路设计示意图。
图3是USB总线从suspended状态下收到K信号进入唤醒流程的示意图。
图4是USB总线从suspended状态下收到SE0信号进入port rest即复位握手流程的示意图。
具体实施方式
为了能够更清楚地理解本发明的技术内容及优点,现结合附图对本发明进行进一步的详细说明。
如图1所示,本发明涉及一种唤醒低功耗电路的检测电路的设计方法,所述方法包括:
S1,使USB设备在接收到主机通过USB总线发送的suspended命令后,进入一种低功耗的suspended状态;
S2,检测到主机通过USB总线对USB设备发送的K信号或者SE0信号,使USB设备退出suspended状态。
进一步包括:
首先根据USB设备进入suspended状态USB总线上保持J状态,即D+
=1,D-=0;
当主机对设备发送K状态,即D+=0,D-=1状态或SE0状态,即D+
=0,D-=0状态,则D+状态从1变为0,那么将D+作为USB设备的处理器中断触发,使处理器退出sleep状态,从而使USB设备退出suspended状态。
所述方法是在保证USB2.0信号质量下完成的。
所述方法根据USB2.0协议,只要USB总线上出现K状态或者SE0状态USB设备就退出suspended状态。
进一步包括,当USB总线上出现K信号状态,USB设备进入唤醒流程,当USB总线上出现SE0信号状态,USB设备会进入复位握手流程。
当USB设备收到主机发送的suspended信号进入一种低功耗的suspended状态,即处理器进入sleep状态。
所述处理器进入sleep状态,处理器关闭内核的电源和时钟和总线。
以下举一具体实施例,如图2所示,以北京君正集成电路股份有限公司的X1500应用电路设计为例。默认状态模拟开关U23的D+与HSD1+连通,D-与HSD1-相连通;当处理器USB设备进入suspended状态后,处理器U24发送切换开关的控制信号USB_SEL,将USB的DP信号切换置另一通道,即D+与HSD2+相连通,与其相连的GPIO设置为处理器的中断信号,通过软件关闭时钟、总线以及处理器内核电源进入更低功耗的sleep状态。当主机发送K或者SE0时,DP信号边沿由高变低,作为中断信号使处理器退出sleep状态,并在USB2.0总线协议的最长响应时间6ms内发送切换开关的控制信号,断开D+与HSD2+的连接,切换为D+与HSD1+,D-与HSD1-,并恢复主机与处理器之间的USB总线,USB设备恢复工作。
根据USB2.0协议,只要USB总线上出现K状态或者SE0状态USB设备就退出suspended状态,如图3所示,当USB总线上出现K信号,USB设备进入唤醒流程,如图4所示,当USB总线上出现SE0信号,USB设备会进入复位握手流程。本发明,在保证USB2.0信号质量下,通过检测K状态和SE0状态作为中断触发使控制器退出sleep状态,从而恢复USB总线。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明实施例可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
- 一种唤醒低功耗电路的检测电路的设计方法
- 一种电池低功耗唤醒电路及电池低功耗控制系统