具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例中涉及的主机,可以是个人计算机、手机、PAD、无线路由器或通用串行总线(UniversalSerialBUS,USB)调制解调器等各种终端上的中央处理单元(CentralProcessingUnit,CPU)。外部设备,可以是无线保真(WirelessFidelity,WiFi)芯片模块、蓝牙模块、摄像头模块等外设芯片。
图1为本发明提供的基于芯片间高速接口HSIC的唤醒方法一个实施例的流程图,如图1所示,该方法包括:
S101、主机获得与主机通过芯片间高速接口(HighSpeedInter-Chip,HSIC)总线连接的外部设备处于空闲状态。
S102、主机处于休眠状态。
S103、主机从与所述外部设备连接的信号线接收所述外部设备发送的中断信号。
S104、主机根据中断信号,从休眠状态唤醒。
本实施例中涉及的主机与外部设备可以包括HighSpeedInter-Chip(简称HSIC)接口,主机的HSIC接口与外部设备的HSIC接口通过HSIC总线连接,其中,主机和外部设备还可以包括能够产生电平变化的接口(例如GeneralPurposeInputOutput(简称GPIO)接口或中断接口),主机的电平变化的接口与外部设备的电平变化的接口可以通过信号线连接,该信号线可以由一根主机至外部设备之间双向通信的信号线组成,也可以由一根主机至外部设备方向的信号线和一个外设至主机方向的信号线组成。信号线可以是通用输入/输出(GeneralPurposeInputOutput,GPIO)信号线,也可以是其他可以产生电平变化的信号线。
其中,外部设备处于空闲状态可以是指:外部设备没有用户使用,等待用户的场景,也可以是指外部设备的使用率低于一定门限的场景。
主机可以通过检测获得到外部设备处于空闲状态,或者,外部设备处于空闲状态时,也可以将用于指示处于空闲状态的消息主动上报给主机。
主机获得外部设备处于空闲状态后,主机可以将HSIC总线挂起(suspend),以使HSIC总线停止数据传输,之后,主机可以进入休眠状态。其中,主机可以具有多种休眠状态,举例来说,在一种实施场景下,主机可以处于掉电状态,所有软件均不运行,内存处于自刷新状态;在另一种实施场景下,主机可以处于慢时钟状态。本发明实施例中对主机如何处于休眠状态并不限定。
外部设备处于空闲状态后,可以进入休眠状态。作为一种可行的实施方式,主机获得外部设备处于空闲状态后,可以控制外部设备进入休眠状态,举例来说,主机可以通过软件命令控制外部设备进入休眠状态,还可以通过现有的各种方法控制外部设备进入休眠状态。作为另一种可行的实施方式,外部设备在检测到HSIC总线挂起后,可以进入休眠状态。其中,外部设备可以具有多种休眠状态,举例来说,外部设备可以处于低功耗状态,这种状态下外部设备为省电模式,但可以响应用户操作。例如:wifi芯片这种外部设备在休眠状态下可以降低功率,信令帧拉长,可以响应用户接入。
主机处于休眠状态的过程中,外部设备可以通过与主机连接的信号线向主机发送中断信号,该中断信号可以是高电平信号,也可以是低电平信号。主机接收到外部设备发送的中断信号后,可以从休眠状态唤醒,主机被唤醒后,即可以处于正常工作模式。
主机唤醒后,可以将HSIC总线从挂起状态恢复(resume)到正常工作状态,以使HSIC总线恢复数据传输。
在外部设备处于休眠状态的实施场景下,主机将HSIC总线从挂起状态恢复到正常工作状态后,HSIC总线恢复数据传输,外部设备可以从休眠状态唤醒。具体的,HSIC总线恢复数据传输后,可以采用HSIC协议中的resume协议使外部设备可以从休眠状态唤醒。
作为一种可行的实施方式,主机将HSIC总线挂起后,主机还可以先保存HSIC控制器的当前状态,再进入休眠状态。在这种实施场景下,主机根据外部设备发送的中断信号唤醒后,可以首先根据被保存的HSIC的状态来恢复HSIC控制器,再将挂起的HSIC总线恢复到正常工作状态。
作为另一种可行的实施方式,主机将HSIC总线挂起后,主机可以保存HSIC控制器的当前状态,控制HSIC总线断电,之后,主机再进入休眠状态。在这种实施场景下,主机根据外部设备发送的中断信号唤醒后,可以首先控制HSIC总线上电,再根据保存的HSIC控制器的状态恢复HSIC控制器的状态,再将挂起的HSIC总线恢复到正常工作状态。
其中,HSIC总线恢复到正常工作状态后,外部设备可以从休眠状态进入正常的工作状态。
本实施例提供的基于芯片间高速接口HSIC的唤醒方法,当主机获得与主机通过HSIC总线连接的外部设备处于空闲状态,则主机在休眠状态下,从与外部设备连接的信号线接收外部设备发送的中断信号后,可以根据所述中断信号,从所述休眠状态唤醒,从而实现主机和外部设备基于HSIC总线的唤醒,实现节省设备的电能。
图2为本发明提供的基于芯片间高速接口HSIC的唤醒方法又一个实施例的流程图,如图2,该方法包括:
S201、与主机通过芯片间高速接口HSIC总线连接的外部设备接收到用户的操作指令;
S202、外部设备通过与主机连接的信号线向主机发送中断信号,以使主机从休眠状态唤醒。
外部设备接收到用户的操作指令后,可以通过与主机连接的信号线向主机发送中断信号,从而实现基于HSIC总线唤醒处于休眠状态的主机。
需要说明的是,上述的外部设备接收到用户的操作指令,可以是指外部设备处于休眠状态的实施场景,也可以是指外部设备处于正常工作状态的实施场景,即,本发明对于外部设备在什么状态下向主机发送中断信号并不做出限制。
在一种实施场景下,当外部设备处于空闲状态时,例如:外部设备没有用户使用,等待用户的场景,或者,外部设备的使用率低于一定门限的场景下。外部设备可以在主机的控制下进入休眠状态;或者,外部设备可以在检测到与主机连接的HSIC总线挂起,则进入休眠状态。
在外部设备处于休眠状态实施场景下,主机被外部设备发送的中断信号唤醒后,主机可以将HSIC总线从挂起状态恢复到正常工作状态。而外部设备在HSIC总线从挂起状态恢复到正常工作状态之后,可以从休眠状态唤醒。
本实施例提供的基于芯片间高速接口HSIC的唤醒方法,通过芯片间高速接口HSIC总线与主机连接,当接收到用户的操作指令,可以通过与主机连接的信号线向主机发送中断信号,以使主机从休眠状态唤醒,从而实现主机和外部设备基于HSIC总线的唤醒,从而实现节省外部设备的电能。
图3为本发明提供的基于芯片间高速接口HSIC的唤醒方法又一个实施例的流程图,如图3,本实施例提供了主机和外设基于HSIC总线休眠和唤醒的一个实施场景,该方法包括:
S301、主机获得与主机通过芯片间高速接口HSIC总线连接的外部设备处于空闲状态。
S302、主机将HSIC总线挂起,以使HSIC总线停止数据传输。
S303、主机保存HSIC控制器的当前状态。
S304、主机控制HSIC总线断电。
其中,HSIC控制器通常进行HSIC协议处理等操作,主机保存HSIC控制器器的当前状态,以备HSIC总线上电后能够恢复当前状态。
S305、主机进入休眠状态。
S306、外部设备检测到HSIC总线挂起。
S307、外部设备进入休眠状态。
举例来说,外部设备WiFi模块的接入点(AccessPoint,AP)模块可以进入待机休眠态,来等待用户接入,以节省WiFi模块的电源消耗。
S308、外部设备接收到用户的操作指令。
S309、外部设备通过信号线向主机发送中断信号。
主机进入待机休眠状态后,能够响应外部设备与主机之间的信号线上的电平变化产生的中断信号。
当有用户操作外部设备时,例如,用户通过接入外部设备WiFi芯片,则外部设备可以通过信号线向主机发出一个中断信号来唤醒主机。
S310、主机从休眠状态唤醒。
S311、主机控制HSIC总线上电。
S312、主机根据保存的HSIC控制器的状态恢复HSIC控制器的状态。
S313、主机将HSIC总线从挂起状态恢复到正常工作状态,以使HSIC总线恢复数据传输,外部设备从休眠状态唤醒。
其中,上述步骤中的S304与S311可以为可选步骤。
本实施例提供的基于芯片间高速接口HSIC的唤醒方法,主机在获得外部设备处于空闲状态后,主机可以将HSIC总线挂起,并进入休眠状态。外部设备检测到HSIC总线挂起后,也可以进入休眠状态。当外部设备接收到用户的操作指令后,外部设备可以通过与主机之间连接的信号线向主机发送终端信号来唤醒主机,从而实现外部设备和主机基于HSIC总线的休眠和唤醒,实现节省设备能耗。
图4为本发明提供的基于芯片间高速接口HSIC的热插拔方法一个实施例的流程图,如图4所示,该方法包括:
S401、主机获得与主机通过芯片间高速接口HSIC总线连接的外部设备处于空闲状态,或主机根据业务的需求需要控制外部设备断电。
S402、主机控制外部设备断电。
S403、主机控制HSIC总线进入初始状态,以等待外部设备上电。
S404、主机控制外部设备上电。
本实施例中涉及的主机与外部设备之间,可以通过HSIC总线连接。
其中,外部设备处于空闲状态可以是指:外部设备没有用户使用,等待用户的场景,也可以是指外部设备的使用率低于一定门限的场景。主机可以通过直接检测获得到外部设备处于空闲状态,或者,外部设备处于空闲状态时,也可以将用于指示处于空闲状态的消息主动上报给主机。
本实施例中,外部设备可以具有独立的供电模块,或者,外部设备可以具有独立的供电线路。主机获得外部设备处于空闲状态,或者,主机根据业务的需求需要控制外部设备断电时,例如:主机与外部设备通信的过程中获知外部设备出现异常等实施场景,则主机可以控制外部设备断电。举例来说,主机可以控制外部设备的供电模块停止向外部设备供电,或者,主机可以断开外部设备的供电线路,以使外部设备断电。
主机控制外部设备断电之后,主机可以控制HSIC总线进入初始状态,以等待外部设备上电。进入初始状态的HSIC总线在外部设备下次上电接入时,能够识别外部设备,从而保证主机与外部设备之间的正常通信。其中,主机控制HSIC总线进入初始状态,具体可以是控制HSIC控制器重新初始化,以实现HSIC总线进入初始状态。
作为一种可行的实施方式,主机控制HSIC总线进入初始状态之后,主机还可以保存HSIC控制器的当前状态,然后进入休眠状态,以降低主机的功耗。在这种实施场景下,主机唤醒之后,可以根据保存的HSIC寄存器的状态恢复HSIC寄存器状态,再控制外部设备上电。
作为另一种可行的实施方式,主机控制HSIC总线进入初始状态之后,主机可以保存HSIC控制器的当前状态,控制HSIC总线断电。之后,主机可以进入休眠状态,以降低主机的功耗。在这种实施场景下,主机唤醒之后,可以控制HSIC总线上电,根据保存的HSIC寄存器的状态恢复HSIC寄存器状态,再控制外部设备上电。
本实施例提供的基于芯片间高速接口HSIC的热插拔方法,当获得与主机通过HSIC总线连接的外部设备处于空闲状态或者主机根据业务需求需要控制外部设备断电时,主机可以控制外部设备断电,从而实现外部设备的热插拔,节省设备的电能。
图5为本发明提供的基于芯片间高速接口HSIC的热插拔方法又一个实施例的流程图,如图5所示,本实施例提供了主机和外设基于HSIC总线实现热插拔的一个实施场景,该方法包括:
S501、主机获得与主机通过芯片间高速接口HSIC总线连接的外部设备处于空闲状态,或主机根据业务的需求需要控制外部设备断电时。
S502、主机控制外部设备断电。
S503、主机控制HSIC总线进入初始状态,以等待外部设备上电。
S504、主机保存HSIC控制器的当前状态。
S505、主机控制HSIC总线断电。
S506、主机进入休眠状态。
S507、主机由休眠状态唤醒。
S508、主机控制HSIC总线上电。
S509、主机根据保存的HSIC寄存器的状态恢复HSIC寄存器状态。
S510、主机控制外部设备上电。
在外部设备需要重新使用的场景下,主机可以通过控制外部设备上电。外部设备上电后,HSIC总线可以检测到外部设备的连接,并且可以正常枚举外部设备。从而实现HSIC接口的热插拔功能。
本实施例提供的基于芯片间高速接口HSIC的热插拔方法,主机可以在外部设备处于空闲状场景下,或者主机可以根据业务需求控制外部设备断电,以节省电能。主机还可以控制HSIC总线进入初始状态,以便外部设备上电后,HSIC总线能够识别外部设备,从而实现HSIC接口支持热插拔,节约设备电能。
图6为本发明提供的主机一个实施例的结构示意图,如图6所示,该主机包括:HSIC接口11、电平变化接口12和处理器13;
芯片间高速接口HSIC接口11,通过HSIC总线与外部设备连接;
电平变化接口12,通过信号线与外部设备连接,用于接收外部设备发送的中断信号;
处理器13,用于获得外部设备处于空闲状态,主机处于休眠状态,电平变化接口从信号线上接收到外部设备发送的中断信号,则根据中断信号控制主机从休眠状态唤醒。
可选的,处理器13还可以用于:在获得外部设备处于空闲状态之后,控制外部设备进入休眠状态。
进一步的或可选的,在主机处于休眠状态之前,处理器13还可以用于:将HSIC总线挂起,以使HSIC总线停止数据传输。
进一步的或可选的,处理器13将HSIC总线挂起之后,还可以用于保存HSIC控制器的当前状态,控制HSIC总线断电。
进一步的或可选的,处理器13根据中断信号,控制主机从休眠状态唤醒之后,还可以用于控制HSIC总线上电,根据保存的HSIC控制器的状态恢复HSIC控制器的状态。
进一步的或可选的,处理器13根据保存的HSIC控制器的状态恢复HSIC控制器的状态之后,还可以用于将HSIC总线从挂起状态恢复到正常工作状态,以使HSIC总线恢复数据传输,外部设备从休眠状态唤醒。
本发明实施例提供的主机,与本发明实施例提供的基于芯片间高速接口HSIC的唤醒方法相对应,为基于芯片间高速接口HSIC的唤醒方法的执行设备,其执行基于芯片间高速接口HSIC的唤醒方法的过程可参见本发明图1和图3所示实施例中的相关描述,在此不再赘述。
本实施例提供的主机,当获得与主机通过HSIC总线连接的外部设备处于空闲状态,则主机在休眠状态下,从与外部设备连接的信号线接收外部设备发送的中断信号后,可以根据所述中断信号,从所述休眠状态唤醒,从而实现主机和外部设备基于HSIC总线的唤醒,实现节省设备的电能。
图7为本发明提供的外部设备一个实施例的结构示意图,如图7所示,该外部设备包括:HSIC接口21、电平变化接口22和处理器23;
芯片间高速接口HSIC接口21,通过HSIC总线与主机连接;
电平变化接口22,通过信号线与主机连接,在处理器的控制下产生中断信号,并将中断信号通过信号线发送给外部设备;
处理器23,用于接收到用户的操作指令,控制电平变化接口产生中断信号。
可选的,处理器22还可以用于:外部设备处于空闲状态,在主机的控制下控制外部设备进入休眠状态;或者,外部设备处于空闲状态,检测到HSIC总线挂起,控制外部设备进入休眠状态。
进一步的或可选的,外部设备进入休眠状态之后,处理器23还可以用于:在HSIC总线从挂起状态恢复到正常工作状态之后,控制外部设备从休眠状态唤醒。
本发明实施例提供的外部设备,与本发明实施例提供的基于芯片间高速接口HSIC的唤醒方法相对应,为基于芯片间高速接口HSIC的唤醒方法的执行设备,其执行基于芯片间高速接口HSIC的唤醒方法的过程可参见本发明图2和图3所示实施例中的相关描述,在此不再赘述。
本实施例提供的外部设备,通过芯片间高速接口HSIC总线与主机连接,当接收到用户的操作指令,可以通过与主机连接的信号线向主机发送中断信号,以使主机从休眠状态唤醒,从而实现主机和外部设备基于HSIC总线的唤醒,从而实现节省外部设备的电能。
图8为本发明提供的主机另一个实施例的结构示意图,如图8所示,该主机包括:HSIC接口31和处理器32;
芯片间高速接口HSIC接口31,通过HSIC总线与外部设备连接;
处理器32,用于获得外部设备处于空闲状态,或根据业务的需求需要控制外部设备断电时,控制外部设备断电;控制HSIC总线进入初始状态,以等待外部设备上电;控制外部设备上电。
可选的,处理器32控制HSIC总线进入初始状态具体为:控制HSIC控制器重新初始化。
进一步的或可选的,处理器32控制HSIC总线进入初始状态之后,当主机进入休眠状态之前,处理器还用于:保存HSIC控制器的当前状态;控制HSIC总线断电。
进一步的或可选的,主机唤醒之后,处理器控制外部设备上电之前,处理器32还可以用于:控制HSIC总线上电;根据保存的HSIC寄存器的状态恢复HSIC寄存器状态。
本发明实施例提供的主机,与本发明实施例提供的基于芯片间高速接口HSIC的休眠热插拔相对应,为基于芯片间高速接口HSIC的热插拔方法的执行设备,其执行基于芯片间高速接口HSIC的热插拔方法的过程可参见本发明图4和图5所示实施例中的相关描述,在此不再赘述。
本实施例提供的主机,当获得与主机通过HSIC总线连接的外部设备处于空闲状态或者主机根据业务需求需要控制外部设备断电时,主机可以控制外部设备断电,从而实现外部设备的热插拔,节省设备的电能。
图9为本发明提供的无线终端一个实施例的结构示意图,如图9所示,该终端可以包括:主机41和外部设备42;
主机和外部设备包括通过芯片间高速HSIC接口,主机的HSIC接口与外部设备的HSIC接口通过HSIC总线连接,主机和外部设备包括能够产生电平变化的接口,主机的电平变化接口与外部设备的电平变化接口通过信号线连接。
可选的,电平变化的接口可以为通用输入/输出GPIO接口,或中断接口。
进一步的或可选的,外部设备处于空闲状态时,主机可以将HSIC总线挂起,主机处于休眠状态。
进一步的或可选的,主机通过信号线接收到外部设备发送的中断信号后,主机可以从休眠状态唤醒。
进一步的或可选的,外部设备处于空闲状态时,主机可以控制外部设备休眠;或
外部设备检测HSIC总线状态,如果HSIC总线处于挂起状态,外部设备可以处于休眠状态。
进一步的或可选的,主机将HSIC总线挂起后,主机可以保存HSIC控制器的当前状态,主机可以控制HSIC总线断电。
进一步的或可选的,主机从休眠状态唤醒之后,主机可以控制HSIC总线上电,主机可以根据保存的HSIC控制器的状态恢复HSIC控制器的状态,恢复HSIC总线,唤醒外部设备。
进一步的或可选的,主机检测到与主机通过芯片间高速接口HSIC总线连接的外部设备处于空闲状态时,可以控制外部设备断电,主机可以控制HSIC总线进入初始状态。
其中,无线终端可以为无线路由器,手机或USB调制解调器。
本发明实施例提供的终端,其中包括的主机和外部设备的具体结构和功能可参见本发明提供的主机和外部设备的实施例,在此不再赘述。
本发明实施例提供的终端,当主机获得与主机通过HSIC总线连接的外部设备处于空闲状态,则主机在休眠状态下,从与外部设备连接的信号线接收外部设备发送的中断信号后,可以根据所述中断信号,从所述休眠状态唤醒,从而实现主机和外部设备基于HSIC总线的唤醒,实现节省设备的电能。当获得与主机通过HSIC总线连接的外部设备处于空闲状态或者主机根据业务需求需要控制外部设备断电时,主机可以控制外部设备断电,从而实现外部设备的热插拔,节省设备的电能。
需要说明的是,上述实施例中的主机与外部设备可以包括HighSpeedInter-Chip(简称HSIC)接口,主机的HSIC接口与外部设备的HSIC接口通过HSIC总线连接,其中,主机和外部设备还可以包括能够产生电平变化的接口(例如GeneralPurposeInputOutput(简称GPIO)接口,或中断接口),主机的电平变化的接口与外部设备的电平变化的接口可以通过信号线连接。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,RandomAccessMemory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。