移动终端及其数据传输方法与流程

文档序号:11479834阅读:228来源:国知局
移动终端及其数据传输方法与流程

本发明涉及通信技术领域,尤其涉及一种移动终端及其数据传输方法。



背景技术:

随着移动通信技术的发展,越来越多的移动终端如智能手机具有双卡双通的功能,使得用户在实现语音业务的待机同时,能建立数据业务链接。现有的移动终端可以实现两张sim(subscriberidentitymodule,用户身份识别卡)卡同时上网,但是如果一张sim卡上4g(the4thgenerationmobilecommunicationtechnology,第四代移动通信技术),如lte(longtermevolution,长期演进技术),另一张卡只能上3g(3rdgeneration,第三代移动通信技术)的网络或者2g(2-generationwirelesstelephonetechnology,第二代手机通信技术规格),即两张sim卡不能同时使用4g网络。由于移动终端中的两张卡全开时,只有一张卡以使用4g网络,另一张卡只能使用2g或3g网络,导致移动终端中数据传输的效率较低。若两张sim卡要同时使用4g网络,需要两个调制解调器,而移动终端中只有一个调制解调器。

因此,为了使移动终端中的两张sim卡同时支持双lte,以提高数据传输效率,在移动终端中内置两个处理芯片,每个处理芯片都有对应的调制解调器,以使移动终端的两张sim卡可对应不同的调制解调器,从而实现双lte通信功能。

但是,当移动终端内置两个处理芯片时,如果两个处理芯片之间传输数据包的速度太快,将会导致其中一个处理芯片将另一个处理芯片发送的多个数据包识别为一个数据包,导致移动终端两个处理芯片之间的数据交互出现识别错误的情况。



技术实现要素:

本发明的主要目的在于提出一种移动终端及其数据传输方法,旨在解决移动终端通过两个处理芯片实现双lte通信功能过程中,移动终端两个处理芯片之间的数据交互出现识别错误的技术问题。

为实现上述目的,本发明提供的一种移动终端,所述移动终端包括通过预设接口连接的第一处理芯片和第二处理芯片,所述第一处理芯片包括第一应用处理器、与嵌入式用户识别卡和实体用户识别卡连接的第一调制解调器、以及第一计时器,所述第二处理芯片包括第二应用处理器、第二计时器和第二调制解调器;

所述第二处理芯片,用于当处于唤醒状态侦测到数据发送指令,且检测到所述预设接口中未存在处于发送状态的数据包时,初始化所述第二计时器;当所述第二计时器的值等于或者大于第一预设时间时,通过所述预设接口将待发送数据包发送给处于唤醒状态的所述第一处理芯片。

可选地,所述第二处理芯片还用于当处于休眠状态,且接收到数据交互请求时,从所述休眠状态进入唤醒状态,通过所述预设接口发送探测包给所述第一处理芯片,并初始化所述第二计时器;当所述第二计时器的值等于或者大于第二预设时间时,检测是否侦测到数据发送指令。

可选地,所述第一处理芯片还用于当处于休眠状态接收到所述探测包时,根据所述探测包从所述休眠状态进入所述唤醒状态,并初始化所述第一计时器;当所述第一计时器的值等于或者大于所述第三预设时间时,接收所述待发送数据包,并处理所述待发送数据包,其中,所述第二预设时间和所述第三预设时间之间的差值等于或者小于预设数值。

可选地,所述第一处理芯片还用于判断所述第一计时器的值是否等于或者大于第三预设时间;若所述第一计时器的值小于所述第三预设时间,且接收到所述待发送数据包,则丢弃所述待发送数据包。

可选地,所述第二处理芯片还用于当所述第二计时器的值小于所述第三预设时间时,在间隔预设时长后再次通过所述预设接口发送所述探测包给所述第一处理芯片。

此外,为实现上述目的,本发明还提出一种数据传输方法,所述数据传输方法应用于移动终端,所述移动终端包括通过预设接口连接的第一处理芯片和第二处理芯片,所述第一处理芯片包括第一应用处理器、与嵌入式用户识别卡和实体用户识别卡连接的第一调制解调器、以及第一计时器,所述第二处理芯片包括第二应用处理器、第二计时器和第二调制解调器;

当处于唤醒状态的所述第二处理芯片侦测到数据发送指令,且检测到所述预设接口中未存在处于发送状态的数据包时,初始化所述第二计时器;

当所述第二计时器的值等于或者大于第一预设时间时,所述第二处理芯片通过所述预设接口将待发送数据包发送给处于唤醒状态的所述第一处理芯片。

可选地,所述当处于唤醒状态的所述第二处理芯片侦测到数据发送指令,且检测到所述预设接口中未存在处于发送状态的数据包时,初始化所述第二计时器的步骤之前,还包括:

当所述第二处理芯片处于休眠状态,且所述第二处理芯片接收到数据交互请求时,所述第二处理芯片从所述休眠状态进入唤醒状态,通过所述预设接口发送探测包给所述第一处理芯片,并初始化所述第二计时器;

当所述第二计时器的值等于或者大于第二预设时间时,所述第二处理芯片检测是否侦测到数据发送指令。

可选地,所述第二处理芯片从所述休眠状态进入唤醒状态,通过所述预设接口发送探测包给所述第一处理芯片,并初始化所述第二计时器的步骤之后,还包括:

当处于休眠状态的所述第一处理芯片接收到所述探测包时,所述第一处理芯片根据所述探测包从所述休眠状态进入所述唤醒状态,并初始化所述第一计时器;

所述第二处理芯片通过所述预设接口将待发送数据包发送给处于唤醒状态的所述第一处理芯片的步骤之后,还包括:

当所述第一计时器的值等于或者大于所述第三预设时间时,所述第一处理芯片接收所述待发送数据包,并处理所述待发送数据包,其中,所述第二预设时间和所述第三预设时间之间的差值等于或者小于预设数值。

可选地,当所述第一计时器的值等于或者大于所述第三预设时间时,所述第一处理芯片接收所述待发送数据包,并处理所述待发送数据包的步骤之前,还包括:

所述第一处理芯片判断所述第一计时器的值是否等于或者大于第三预设时间;

若所述第一计时器的值小于所述第三预设时间,且所述第一处理芯片接收到所述待发送数据包,所述第一处理芯片则丢弃所述待发送数据包。

可选地,所述第二处理芯片从所述休眠状态进入唤醒状态,通过所述预设接口发送探测包给所述第一处理芯片,并初始化所述第二计时器的步骤之后,还包括:

当所述第二计时器的值小于所述第三预设时间时,所述第二处理芯片在间隔预设时长后再次通过所述预设接口发送所述探测包给所述第一处理芯片。

本发明提供一种移动终端及其数据传输方法,所述数据传输方法应用于移动终端,所述移动终端包括通过预设接口连接的第一处理芯片和第二处理芯片,所述第一处理芯片包括第一应用处理器、与嵌入式用户识别卡和实体用户识别卡连接的第一调制解调器、以及第一计时器,所述第二处理芯片包括第二应用处理器、第二计时器和第二调制解调器;当处于唤醒状态的所述第二处理芯片侦测到数据发送指令,且检测到所述预设接口中未存在处于发送状态的数据包时,初始化所述第二计时器;当所述第二计时器的值等于或者大于第一预设时间时,所述第二处理芯片通过所述预设接口将待发送数据包发送给处于唤醒状态的所述第一处理芯片。实现了在移动终端通过两个处理芯片实现双lte通信功能过程中,当预设接口中未存在处于发送状态的数据包时,只有在第二计时器的值等于或者大于第一预设时间时,第二处理芯片才发送待发送数据包发送给第一处理芯片。避免了移动终端的两个处理芯片在数据包传输过程中,如果第二处理芯片向第一处理芯片传输数据包的速度太快,第一处理芯片会将第二处理芯片发送的多个数据包识别为一个数据包的情况出现,提高了移动终端两个处理芯片在数据传输过程中识别所接收数据包的准确率。

附图说明

图1为本发明一实施例的lte网络架构的示意图;

图2为本发明实施例中移动终端的一种硬件结构示意图;

图3为本发明实施例中第一处理芯片和第二处理芯片之间数据传输的第一种示意图;

图4为本发明实施例中第一处理芯片和第二处理芯片之间数据传输的第二种示意图;

图5为本发明实施例中第一处理芯片和第二处理芯片之间数据传输的第三种示意图;

图6为本发明数据传输方法第一实施例的流程示意图;

图7为本发明数据传输方法第二实施例的流程示意图;

图8为本发明数据传输方法第四实施例的流程示意图。

本发明目的的实现、功能特点及优点将结合实施例,参照附图做说明。

具体实施方式

应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

现在将参考附图描述实现本发明各个实施例的移动终端。在后续的描述中,使用用于表示元件的诸如“模块”、“部件”或“单元”的后缀仅为了有利于本发明的说明,其本身并没有特定的意义。因此,"模块"与"部件"可以混合地使用。

图1是本发明一实施例的lte网络架构的示意图。本发明一实施例的lte网络架构包括:一个或多个移动终端(userequipment,ue)100、e-utran(evolvedumtsterrestrialradioaccessnetwork,演进的umts陆地无线接入网)(图中未标号)、演进分组核心(epc)(图中未标号)、归属订户服务器(hss)107、网络(例如,因特网)(图中未标号)以及电路交换系统(图中未标号)。

e-utran包括演进b节点(enodeb)101和其它enodeb102。enodeb101提供朝向移动终端100的用户面和控制面的协议终接。enodeb101可经由x2接口连接到其他enodeb。enodeb101也可称为基站、基收发机站、无线电基站、无线电收发机、收发机功能、基本服务集、扩展服务集、或其他某个合适的术语。enodeb101为移动终端100提供去往epc的接入点。

enodeb101通过s1接口连接到epc。epc包括移动管理实体(eem)104、其他移动管理实体106、服务网关103,以及分组数据网络(pdn)网关105。移动管理实体104是处理移动终端100与epc之间的信令的控制节点。移动管理实体104提供承载和连接管理。所有用户ip分组通过服务网关103来传递,服务网关103自身连接到pdn网关105。pdn网关105提供ueip地址分配以及其他功能。pdn网关105连接到网络,例如,因特网。

电路交换系统包括交互解决方案模块(iws)108、移动交换中心(msc)109、基站110和移动站111。在一个方面,电路交换系统可以通过iws和mme(mobilitymanagemententity,移动管理实体)与eps(evolvedpacketsystem,演进的分组系统)进行通信。

图2为本发明实施例中移动终端的一种硬件结构示意图。在本发明实施例中,移动终端100包括第一处理芯片001、第二处理芯片002、第一射频模块12和第二射频模块22,其中,第一处理芯片001和第一射频模块12连接,第二处理芯片002和第二射频模块22连接,第一处理芯片001和第二处理芯片002通过预设接口连接。第一处理芯片001包括第一应用处理器(applicationprocessor)10、与实体用户识别卡14和嵌入式用户识别卡13连接的第一调制解调器11(modem1)、rpm(resourcepowermanager,资源电源管理器)15和第一计时器16。第二处理芯片002包括第二应用处理器20、第二调制解调器(modem2)21和第二计时器26。实体用户识别卡14为sim(subscriberidentitymodule,用户识别模块)卡。

第一应用处理器10和第二应用处理器20的内部框架包括应用层、框架层等,可处理复杂的逻辑操作以及进行任务分配等。在本发明实施例中,应用处理器指android操作系统,以及基于android操作系统的各种apk(androidpackage,安卓安装包)。

第一应用处理器10和第二应用处理器20通过第一预设接口实现连接,为用户提供交互接口,将用户输入的操作指令(例如,用户通过用户界面输入的有关启动视频通话的操作指令)传输给第一调制解调器11或第二调制解调器21,以实现两个应用处理器之间数据的定义与传递,例如,进行两个应用处理器的休眠、唤醒、同步的控制、开关机时芯片启动顺序的控制等。

在本发明的实施例中,第一预设接口为usb(universalserialbus,通用串行总线)。usb复用出两条数据通道,分别用于第一应用处理器10和第二应用处理器20之间用户数据和信令数据的交互。即第一应用处理器10和第二应用处理器20通过usb传输用户数据和信令数据。其中,用户数据包括但不限于上网产生的数据,图片和聊天信息数据;信令数据包括但不限于开关机的控制数据,开关飞行模式的控制数据,显示状态信号的控制数据。

具体地,第一应用处理器10和第二应用处理器20通过otg(on-the-go)技术进行数据交互。通过otg技术,移动终端100中的第一调制解调器11可通过嵌入式用户识别卡13中的sim卡参数来接入enodeb101,第二调制解调器21可通过实体用户识别卡14的sim卡参数来接入enodeb101;或者第一调制解调器11通过实体用户识别卡14中的sim卡参数来接入enodeb101,第二调制解调器21通过嵌入式用户识别卡13的sim卡参数来接入enodeb101。sim卡参数包括但不限于鉴权数据。

第一调制解调器11和第二调制解调器21通过第二预设接口连接。在本发明实施例中,第二预设接口为uart(universalasynchronousreceiver/transmitter,通用异步收发传输器)。uart用于第一调制解调器11和第二调制解调器21之间sim卡参数的传输。

可以理解的是,通过第一预设接口和第二预设接口,可实现第一处理芯片001和第二处理芯片002之间的连接。

第一调制解调器11和第二调制解调器21包含各种网络交互的网络制式的协议栈,协议栈包含lte/wcdma(widebandcodedivisionmultipleaccess,宽带码分多址)/gsm(globalsystemformobilecommunication,全球移动通信系统)/td-scdma(timedivision-synchronouscodedivisionmultipleaccess,同步时分码分多址)/cdma(codedivisionmultipleaccess,码分多址)/edge(enhanceddatarateforgsmevolution,强型数据速率gsm演进技术)等通讯标准里边规定的协议代码。移动终端100通过协议与运营商网络进行交互,即进行数据流量上网、volte(voiceoverlte)打电话或者cs(circuitswitched,电路交换)域打电话。第一调制解调器11和第二调制解调器21还可对sim卡进行管控等等。

第一射频模块12用于将第一处理芯片001传输的数据处理后传给enodeb101(基站网络),以及用于将enodeb101传输的数据处理后传给第一处理芯片001。第二射频模块22用于将第二处理芯片002传输的数据处理后传给enodeb101(基站网络),以及用于将enodeb101传输的数据处理后传给第二处理芯片002。第一射频模块12和第二射频模块22所涉及的无线接入技术可以包括lte、gsm、gprs(generalpacketradioservice,通用分组无线服务)、cdma、edge、wlan(wirelesslocalareanetworks,无线局域网)、cdma-2000、td-scdma、wcdma、wifi(wirelessfidelity,无线保真)等等。

嵌入式用户识别卡13与实体用户识别卡14和第一调制解调器11连接。其中,嵌入式用户识别卡13通过串口与第一调制解调器11连接,串口包括但不限于通用异步收发传输器(uart)。需要说明的是,嵌入式用户识别卡13为esim(embeddedsubscriberidentitymodule)卡,相关卡参数直接写入该esim卡,该esim卡包含可编程的sim卡芯片;该嵌入式用户识别卡13包括存储模块和片内操作系统(chipoperatingsystem,cos),该存储模块可为efs(encryptingfilesystem,加密文件系统),存储模块用于存储嵌入式用户识别卡13的鉴权数据。鉴权数据包括但不限于imsi(internationalmobilesubscriberidentificationnumber,国际移动用户识别号)和ki(keyidentifier,鉴权密钥)。

当嵌入式用户识别卡13需要进行网络注册时,通过开启的无线保真(wifi)网络发送包含业务菜单数据的下载请求至嵌入式用户识别卡13对应的云端服务器,以从云端服务器获取嵌入式用户识别卡13的数据信息。当获取到嵌入式用户识别卡13的数据信息时,将数据信息写入嵌入式用户识别卡13的存储模块中,以实现嵌入式用户识别卡13的网络注册。其中,数据信息可以包括:imsi、ki、iccid(integratedcircuitcardidentifier)、pin(个人标识号,personalidentificationnumber)、puk(pinunlockingkey)。可以理解的是,云端服务器中存储了各个运营商的卡号资源。

嵌入式用户识别卡13和实体用户识别卡14可承载信息,并根据外界请求返回对应的卡参数,以及对网络进行鉴权运算。其中,嵌入式用户识别卡13和实体用户识别卡14可存储与不同或相同的技术标准相关联的用户信息,用于提供移动通信业务(cs语音业务、ps数据业务和ps语音业务)所需的相关数据,并在其内部存储用户信息、短消息、执行鉴权算法和产生加密密匙等。在特定非限制性实例中,技术标准可为2g通信技术,例如,gsm、edge)、3g通信技术(例如,wcdma、td-scdma)、4g通信技术(例如,lte),或任何其它移动通信技术(例如,4g等等)。

由于目前的移动终端100只有一套射频模块,当移动终端100有两张用户识别卡时,移动终端100的两张用户识别卡使用该套射频模块是分时复用的关系,并不能同时占用。例如,在两张用户识别卡全开时,其中一张用户识别卡只处理gsm通话,而另一张用户识别卡处理4g网络信息,具体哪个用户识别卡执行何种网络,在此不做限定。因此目前的射频模块双卡分时复用这种架构仅做到了lte+gsm(即一张用户识别卡对应的技术标准为lte,另一张用户识别卡对应的技术标准为gsm)。

可以理解的是,现有的移动终端100虽然可以支持双用户识别卡,但是移动终端100在注册网络的情况下,两张用户识别卡支持的是不同技术标准的网络,一张支持2g或3g,另一张支持4g,会使得移动终端100使用过程中,上网流量速度较慢。在本发明实施例中,移动终端100包括通过预设接口连接第一处理芯片001和第二处理芯片002,由于第二处理芯片002包括第二调制解调器21、以及第二射频模块22,且第二射频模块22支持4g网络。因此,移动终端100可通过第一处理芯片001和第二处理芯片002具备双lte功能(此时嵌入式用户识别卡13和实体用户识别卡14管理的技术标准均为lte标准,第一射频模块12和第二射频模块22所涉及的无线接入技术为lte。即第一调制解调器11可通过嵌入式用户识别卡13支持lte,而第二调制解调器21通过实体用户识别卡14支持lte;或者第一调制解调器11通过实体用户识别卡14支持lte,而第二调制解调器21通过嵌入式用户识别卡13支持lte)。

当移动终端100中不存在与第一处理芯片001连接的第二处理芯片002时,嵌入式用户识别卡13或者实体用户识别卡14所对应的技术标准为gsm,用于进行语音通讯,或者通过第一调制解调器11支持lte用于通过4g网络进行数据访问。

实体用户识别卡14与移动终端100交互时,移动终端100检测该实体用户识别卡14存在与否的信号只在开机瞬时产生,当移动终端100开机检测不到实体用户识别卡14存在时,在移动终端100的显示屏中提示“接入用户识别卡”。移动终端100开机之后,移动终端100和实体用户识别卡14之间28秒通信一次,完成一些固定的通信检查(例如,用户识别卡是否在位等)。

rpm15用于管控各种资源,包括时钟资源、总线资源、pmic(powermanagementic,电源管理集成电路,即各个芯片的电压)、ddr(内存分配),以及管理芯片的休眠唤醒的中断和应用处理器唤醒的截止时间。移动终端100的各个子系统,在需要资源时,向rpm15申请资源,各个子系统分别包括第一应用处理器10,第一调制解调器11、pronto(wifi/蓝牙、nfc(nearfieldcommunication,近场通信)等)、lpass(lowpoweraudiosubsystem,低功耗音频子系统),rpm15用来决定移动终端100系统的休眠状态,具体是,rpm15基于各个子系统的投票机制实现,当各个子系统都投休眠票时,rpm15才可以使移动终端100整个系统进行休眠。而当移动终端100有一个子或者多个子系统投反对休眠的票时,移动终端100整个系统都无法休眠。

在第一处理芯片001和第二处理芯片002之间通过预设接口连接的情况下,唤醒方式可为以下三种:

1、第一应用处理器10接收到信令数据时,通过usb发送探测包给第二应用处理器20,以唤醒第二应用处理器20。

2、第二调制解调器21接收到用户数据时,唤醒第二应用处理器20,由第二应用处理器20通过usb传送探测包给第一应用处理器10,以唤醒第一应用处理器10。

3、第二调制解调器21周期性查找寻呼请求,以主动激活自己。若接收到寻呼请求,第二调制解调器21则唤醒第二应用处理器20,由第二应用处理器20通过usb发送探测包给第一应用处理器10,以唤醒第二应用处理器20。

此外,第二调制解调器21还可以定期唤醒自己,以在移动终端100进行位置更新时,跟基站进行握手交互,此时不需要唤醒第一应用处理器10。

第一计时器16和第二计时器26用于在第一处理芯片001和第二处理芯片002交互过程中时间的计算,以控制第一应用处理器10、第一调制解调器11、第二应用处理器20和/或第二调制解调器21在一定时间内从休眠状态进入唤醒状态,以及控制第一应用处理器10、第一调制解调器11、第二应用处理器20和/或第二调制解调器21在一定时间内从唤醒状态进入休眠状态。在本发明实施例中,第一处理芯片001和第二处理芯片002中计时器的个数可为一个,也可为多个。

在本发明实施例中,移动终端包括但不限于手机、pc(personalcomputer,个人电脑)或pad(personaldigitalassistant,个人数字助理)。

基于上述的lte网络架构图、移动终端100的硬件结构示意图,提出本发明的各个实施例。

本实施例提出一种移动终端100,移动终端100包括通过预设接口连接的第一处理芯片001和第二处理芯片002,第一处理芯片001包括第一应用处理器10、与嵌入式用户识别卡13和实体用户识别卡14连接的第一调制解调器11、以及第一计时器16,第二处理芯片002包括第二应用处理器20、第二计时器26和第二调制解调器21。

第二处理芯片002,用于当处于唤醒状态侦测到数据发送指令,且检测到预设接口中未存在处于发送状态的数据包时,初始化第二计时器26;当第二计时器26的值等于或者大于第一预设时间时,通过预设接口将待发送数据包发送给处于唤醒状态的第一处理芯片001。

当处于唤醒状态的第二处理芯片002侦测到数据发送指令时,第二处理芯片002检测预设接口中是否存在处于发送状态的数据包,即检测预设接口中是否存在未发送完的数据包。若预设接口中未存在处于发送状态的数据包,则启动第二计时器26,并初始化第二计时器26,使第二计时器26的值等于零。当第二计时器26的值等于或者大于第一预设时间时,第二处理芯片002通过预设接口将待发送数据包发送给处于唤醒状态的第一处理芯片001。

当第二计时器26的值小于第一预设时间时,第二处理芯片002暂停发送待发送数据包给第一处理芯片001。即第二处理芯片002发送待响应数据包给第一处理芯片001的时间间隔为第一预设时间。在本实施例中,第一预设时间设置为3ms,在其它实施例中,第一预设时间也可设置为4ms或者5ms等。

可以理解的是,当第一处理芯片001中的第一应用处理器10与第二处理芯片002中的第二应用处理器20进行数据传输(包括传输探测包、以及待发送数据包等)时,预设接口为第一预设接口。在本发明实施例中,第一预设接口为usb。在其它实施例中,第一预设接口可为具有和usb同样功能的接口。当第一处理芯片001中的第一调制解调器11与第二处理芯片002中的第二调制解调器21进行数据传输(包括传输探测包、以及待发送数据包等)时,预设接口为第二预设接口。在本发明实施例中,第二预设接口为uart。在其它实施例中,第二预设接口可为具有和uart同样功能的接口。

进一步地,当预设接口中存在处于发送状态的数据包时,第二处理芯片002等待预设接口中处于发送状态的数据包完全发送给第一处理芯片001。

进一步地,当第二处理芯片002侦测到预设接口中未存在处于发送状态的数据包时,第二处理芯片002检测发送队列中是否存在待发送数据包。若发送队列中存在待发送数据包,则初始化第二计时器26,在第二计时器26的值等于或者大于第一预设时间时,通过预设接口将待发送数据包发送给第一处理芯片001。若发送队列中未存在待发送数据包,则初始化第二计时器26,在第二计时器26的值等于或者大于第一预设时间时,发送队列中还未有待发送数据包,第二处理芯片002则再次初始化第二计时器26。当第二计时器26的值大于或者等于设定时间值,发送队列中还是未有待发送数据包,第二处理芯片002则从唤醒状态进入休眠状态。设定时间值可根据具体需要而设置,在本实施例中,设定时间值可设置为500ms,或者550ms等。可以理解的是,发送队列为存储待发送数据包的存储空间。需要说明的是,当第二计时器26的值大于或者等于设定时间值,且发送队列中还是未有待发送数据包时,调用预设接口协议自带的休眠函数执行预设接口的休眠操作,预设接口休眠释放所占用的时钟资源,以实现第一处理芯片001和第二处理芯片002的休眠,即实现应用处理器和/或调制解调器的休眠。

本实施例通过当处于唤醒状态的第二处理芯片002侦测到数据发送指令时,且检测预设接口中未存在处于发送状态的数据包时,初始化第二计时器26;当第二计时器26的值等于或者大于第一预设时间时,第二处理芯片002通过预设接口将待发送数据包发送给处于唤醒状态的第一处理芯片001。实现了在移动终端100通过两个处理芯片实现双lte通信功能过程中,当预设接口中未存在处于发送状态的数据包时,只有在第二计时器26的值等于或者大于第一预设时间时,第二处理芯片002才发送待发送数据包发送给第一处理芯片001。避免了移动终端100的两个处理芯片在数据包传输过程中,如果第二处理芯片002向第一处理芯片001传输数据包的速度太快,第一处理芯片001会将第二处理芯片002发送的多个数据包识别为一个数据包的情况出现,提高了移动终端两个处理芯片在数据传输过程中识别所接收数据包的准确率。

进一步地,提出本发明移动终端100第二实施例。

移动终端100第二实施例与移动终端100第一实施例的区别在于,第二处理芯片002还用于当处于休眠状态,且接收到数据交互请求时,从休眠状态进入唤醒状态,通过预设接口发送探测包给第一处理芯片001,并初始化第二计时器26。

第二处理芯片002还用于当第二计时器26的值等于或者大于第二预设时间时,检测是否侦测到数据发送指令。

当第二处理芯片002处于休眠状态,且第二处理芯片002接收到数据交互请求时,第二处理芯片002从休眠状态进入唤醒状态。当第二处理芯片002进入唤醒状态后,第二处理芯片002发送探测包给第一处理芯片001,并启动第二计时器26执行计时操作。在启动第二计时器26时,初始化第二计时器26,以使第二计时器26的值等于零。其中,第二处理芯片002接收的数据交互请求可为第二处理芯片002接收到enodeb101的数据请求,或者第二处理芯片002需要访问2g、3g、或者4g网络等。

当第二计时器26的值等于或者大于第二预设时间时,第二处理芯片002检测是否侦测到数据发送指令,其中,该数据发送指令为发送待发送数据包的指令。第二预设时间可根据具体需要而设置,在本实施例中,将第二预设时间设置为30ms,在其它实施例中,也可将第二预设时间设置为34ms,或者40ms等。

需要说明的是,探测包可用固定字长的字符标识,该探测包不是正常的数据包,是正常数据包中不会出现的字段。如在本实施例中,可用0xf9f9f9表示探测包,在其它实施例中,也可用设置为其它形式的探测包,如0xf3f3和0x3f3f。

本实施例通过当处于休眠状态的第二处理芯片002接收到数据交互请求时,主动从休眠状态进入唤醒状态,并发送探测包给第一处理芯片001,以供第一处理芯片001根据探测包从休眠状态进入唤醒状态,以便于第二处理芯片002与第一处理芯片001可以进行正常的数据交互。

进一步地,提出本发明移动终端100第三实施例。

移动终端100第三实施例与移动终端100第二实施例的区别在于,第一处理芯片001还用于当处于休眠状态接收到探测包时,根据探测包从休眠状态进入唤醒状态,并初始化第一计时器16。

参照图3,当处于休眠状态的第一处理芯片001接收到探测包时,第一处理芯片001从休眠状态进入唤醒状态,并启动第一计时器16执行计时操作,在启动第一计时器16时,初始化第一计时器16,以使第一计时器16的值等于零。第一处理芯片001判断第一计时器16的值是否等于或者大于第三预设时间。其中,第三预设时间可根据具体需要而设置,在本实施例中,将第三预设时间设置为20ms,在其它实施例中,也可将第三预设时间设置为25ms,或者28ms等。

需要说明的是,当第二处理芯片002通过预设接口给第一处理芯片001发送探测数据包后,mpm(终端深度休眠状态下依然存活的中断检测模块)检测到预设接口上的数据中断,mpm唤醒rpm,由rpm根据终端信号源唤醒对应子系统cpu,那么相应子系统即被唤醒处理事件。

第一处理芯片001还用于当第一计时器16的值等于或者大于第三预设时间时,接收待发送数据包,并处理待发送数据包,其中,第二预设时间和第三预设时间之间的差值等于或者小于预设数值。

当第一计时器16的值等于或者大于第三预设时间时,第一处理芯片001接收待发送数据包,并处理待发送数据包。如当待发送数据包是需要第一处理芯片001进行响应,第一处理芯片001则响应该待发送数据包。可以理解的是,第一处理芯片001处理待发送数据包的实质是根据待发送数据包的属性将待发送数据包发送给对应的模块或者进行相应的处理。

为了保证第一处理芯片001能正常接收第二处理芯片002所发送的待发送数据包,第二预设时间应该大于第三预设时间,且第二预设时间和第三预设时间之间差值应等于或者小于预设数值。可以理解的是,第一处理芯片001从休眠状态转换至唤醒状态的时间应小于或者等于预设数值。在本实施例中,预设数值设置为10ms,在其它实施例中,预设数值可设置为8ms,或者9ms等。

对比图4和图5可知,第一处理芯片001从休眠状态转换至唤醒状态的时间可以等于预设数值(如图4所示),此时,第三预设时间和预设数值之间的和等于第二预设时间。第一处理芯片001从休眠状态转换至唤醒状态的时间可以小于预设数值(如图5所示),此时,第三预设时间和预设数值之间的和小于第二预设时间。

进一步地,第一处理芯片001还用于判断第一计时器16的值是否等于或者大于第三预设时间;若第一计时器的值小于第三预设时间,且接收到待发送数据包,则丢弃待发送数据包。

当第一处理芯片001从休眠状态转换至唤醒状态后,第一处理芯片001判断第一计时器16的值是否等于或者大于第三预设时间。若第一计时器16的值小于第三预设时间,且第一处理芯片001接收到待发送数据包,第一处理芯片001则丢弃该待发送数据包,不将该待发送数据包上报给上层。

本实施例通过当第一处理芯片001处于休眠状态时,第二处理芯片002发送探测包给第一处理芯片001,以唤醒第一处理芯片001。并在第一处理芯片001进入唤醒状态后,通过第一计时器16和第二计时器26之间的时间差,避免了第二处理芯片002发送数据包给第一处理芯片001时,第一处理芯片001处于未完全唤醒状态,导致第一处理芯片001接收数据包失败的情况出现。在移动终端100通过第一处理芯片001和第二芯片002实现双lte通信功能过程中,提高了第一处理芯片001和第二处理芯片002之间数据传输的成功率。

进一步地,提出本发明移动终端100第四实施例。

移动终端100第四实施例与移动终端100第二实施例的区别在于,第二处理芯片002还用于当第二计时器26的值小于第三预设时间时,在间隔预设时长后再次通过预设接口发送探测包给第一处理芯片001。

当第二处理芯片002通过预设接口发送探测包给第一处理芯片001,且初始化第二计时器26后,第二处理芯片002判断第二计时器26的值是否小于第三预设时间。当第二计时器26的值小于第三预设时间时,第二处理芯片002在间隔预设时长后再次通过预设接口发送探测包给第一处理芯片001。在本实施例中,预设时长可根据具体需要而设置,但为了保证第一处理芯片001不会将探测包误认为是第二处理芯片002发送的正常数据包,即将探测包误认为是第二处理芯片002发送的待发送数据包,预设时长应小于第三预设时间。如可以将预设时长设置为4ms,6ms或者8ms等。当第三预设时间为20ms,预设时长为6ms时,第二处理芯片002在每间隔6ms后再次通过预设接口发送探测包给第一处理芯片001,即第二处理芯片002一共发送了三次探测包给第一处理芯片001。

本实施例通过当第二计时器26的值小于第三预设时间时,第二处理芯片002在间隔预设时长后再次通过预设接口发送探测包给第一处理芯片001,以避免第二处理芯片002在发送探测包给第一处理芯片001过程中,探测包丢失,或者探测包损坏等情况出现,以致于第一处理芯片001未能接收到探测包从休眠状态进入唤醒状态。

本发明还提供一种数据传输方法。

参照图6,图6为本发明数据传输方法第一实施例的流程示意图。

本实施例提出一种数据传输方法,在本实施例中,提供了数据传输方法的实施例,需要说明的是,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。

数据传输方法应用于移动终端100中,移动终端100包括通过预设接口连接的第一处理芯片001和第二处理芯片002,第一处理芯片001包括第一应用处理器10、与嵌入式用户识别卡13和实体用户识别卡14连接的第一调制解调器11、以及第一计时器16,第二处理芯片002包括第二应用处理器20、第二计时器26和第二调制解调器21。

步骤s10,当处于唤醒状态的第二处理芯片002侦测到数据发送指令,且检测到预设接口中未存在处于发送状态的数据包时,初始化第二计时器26。

步骤s20,当第二计时器26的值等于或者大于第一预设时间时,第二处理芯片002通过预设接口将待发送数据包发送给处于唤醒状态的第一处理芯片001。

当处于唤醒状态的第二处理芯片002侦测到数据发送指令时,第二处理芯片002检测预设接口中是否存在处于发送状态的数据包,即检测预设接口中是否存在未发送完的数据包。若预设接口中未存在处于发送状态的数据包,则启动第二计时器26,并初始化第二计时器26,使第二计时器26的值等于零。当第二计时器26的值等于或者大于第一预设时间时,第二处理芯片002通过预设接口将待发送数据包发送给处于唤醒状态的第一处理芯片001。

当第二计时器26的值小于第一预设时间时,第二处理芯片002暂停发送待发送数据包给第一处理芯片001。即第二处理芯片002发送待响应数据包给第一处理芯片001的时间间隔为第一预设时间。在本实施例中,第一预设时间设置为3ms,在其它实施例中,第一预设时间也可设置为4ms或者5ms等。

可以理解的是,当第一处理芯片001中的第一应用处理器10与第二处理芯片002中的第二应用处理器20进行数据传输(包括传输探测包、以及待发送数据包等)时,预设接口为第一预设接口。在本发明实施例中,第一预设接口为usb。在其它实施例中,第一预设接口可为具有和usb同样功能的接口。当第一处理芯片001中的第一调制解调器11与第二处理芯片002中的第二调制解调器21进行数据传输(包括传输探测包、以及待发送数据包等)时,预设接口为第二预设接口。在本发明实施例中,第二预设接口为uart。在其它实施例中,第二预设接口可为具有和uart同样功能的接口。

进一步地,当预设接口中存在处于发送状态的数据包时,第二处理芯片002等待预设接口中处于发送状态的数据包完全发送给第一处理芯片001。

进一步地,当第二处理芯片002侦测到预设接口中未存在处于发送状态的数据包时,第二处理芯片002检测发送队列中是否存在待发送数据包。若发送队列中存在待发送数据包,则初始化第二计时器26,在第二计时器26的值等于或者大于第一预设时间时,通过预设接口将待发送数据包发送给第一处理芯片001。若发送队列中未存在待发送数据包,则初始化第二计时器26,在第二计时器26的值等于或者大于第一预设时间时,发送队列中还未有待发送数据包,第二处理芯片002则再次初始化第二计时器26。当第二计时器26的值大于或者等于设定时间值,发送队列中还是未有待发送数据包,第二处理芯片002则从唤醒状态进入休眠状态。设定时间值可根据具体需要而设置,在本实施例中,设定时间值可设置为500ms,或者550ms等。可以理解的是,发送队列为存储待发送数据包的存储空间。需要说明的是,当第二计时器26的值大于或者等于设定时间值,且发送队列中还是未有待发送数据包时,调用预设接口协议自带的休眠函数执行预设接口的休眠操作,预设接口休眠释放所占用的时钟资源,以实现第一处理芯片001和第二处理芯片002的休眠,即实现应用处理器和/或调制解调器的休眠。

本实施例通过当处于唤醒状态的第二处理芯片002侦测到数据发送指令时,且检测预设接口中未存在处于发送状态的数据包时,初始化第二计时器26;当第二计时器26的值等于或者大于第一预设时间时,第二处理芯片002通过预设接口将待发送数据包发送给处于唤醒状态的第一处理芯片001。实现了在移动终端100通过两个处理芯片实现双lte通信功能过程中,当预设接口中未存在处于发送状态的数据包时,只有在第二计时器26的值等于或者大于第一预设时间时,第二处理芯片002才发送待发送数据包发送给第一处理芯片001。避免了移动终端100的两个处理芯片在数据包传输过程中,如果第二处理芯片002向第一处理芯片001传输数据包的速度太快,第一处理芯片001会将第二处理芯片002发送的多个数据包识别为一个数据包的情况出现,提高了移动终端两个处理芯片在数据传输过程中识别所接收数据包的准确率。

进一步地,提出本发明数据传输方法第二实施例。

数据传输方法第二实施例与数据传输方法第一实施例的区别在于,参照图7,数据传输方法还包括:

步骤s30,当第二处理芯片002处于休眠状态,且第二处理芯片002接收到数据交互请求时,第二处理芯片002从休眠状态进入唤醒状态,通过预设接口发送探测包给第一处理芯片001,并初始化第二计时器26。

步骤s40,当第二计时器26的值等于或者大于第二预设时间时,第二处理芯片002检测是否侦测到数据发送指令。

当第二处理芯片002处于休眠状态,且第二处理芯片002接收到数据交互请求时,第二处理芯片002从休眠状态进入唤醒状态。当第二处理芯片002进入唤醒状态后,第二处理芯片002发送探测包给第一处理芯片001,并启动第二计时器26执行计时操作。在启动第二计时器26时,初始化第二计时器26,以使第二计时器26的值等于零。其中,第二处理芯片002接收的数据交互请求可为第二处理芯片002接收到enodeb101的数据请求,或者第二处理芯片002需要访问2g、3g、或者4g网络,或者第二处理芯片002有鉴权需求等。

当第二计时器26的值等于或者大于第二预设时间时,第二处理芯片002检测是否侦测到数据发送指令,其中,该数据发送指令为发送待发送数据包的指令。第二预设时间可根据具体需要而设置,在本实施例中,将第二预设时间设置为30ms,在其它实施例中,也可将第二预设时间设置为34ms,或者40ms等。

需要说明的是,探测包可用固定字长的字符标识,该探测包不是正常的数据包,是正常数据包中不会出现的字段。如在本实施例中,可用0xf9f9f9表示探测包,在其它实施例中,也可用设置为其它形式的探测包,如0xf3f3和0x3f3f。

本实施例通过当处于休眠状态的第二处理芯片002接收到数据交互请求时,主动从休眠状态进入唤醒状态,并发送探测包给第一处理芯片001,以供第一处理芯片001根据探测包从休眠状态进入唤醒状态,以便于第二处理芯片002与第一处理芯片001可以进行正常的数据交互。

进一步地,提出本发明数据传输方法第三实施例。

数据传输方法第三实施例与数据传输方法第二实施例的区别在于,数据传输方法还包括:

步骤a,当处于休眠状态的第一处理芯片001接收到探测包时,第一处理芯片001根据探测包从休眠状态进入唤醒状态,并初始化第一计时器16。

参照图3,当处于休眠状态的第一处理芯片001接收到探测包时,第一处理芯片001从休眠状态进入唤醒状态,并启动第一计时器16执行计时操作,在启动第一计时器16时,初始化第一计时器16,以使第一计时器16的值等于零。第一处理芯片001判断第一计时器16的值是否等于或者大于第三预设时间。其中,第三预设时间可根据具体需要而设置,在本实施例中,将第三预设时间设置为20ms,在其它实施例中,也可将第三预设时间设置为25ms,或者28ms等。

需要说明的是,当第二处理芯片002通过预设接口给第一处理芯片001发送探测数据包后,mpm(终端深度休眠状态下依然存活的中断检测模块)检测到预设接口上的数据中断,mpm唤醒rpm,由rpm根据终端信号源唤醒对应子系统cpu,那么相应子系统即被唤醒处理事件。

步骤b,当第一计时器16的值等于或者大于第三预设时间时,第一处理芯片001接收待发送数据包,并处理待发送数据包,其中,第二预设时间和第三预设时间之间的差值等于或者小于预设数值。

当第一计时器16的值等于或者大于第三预设时间时,第一处理芯片001接收待发送数据包,并处理待发送数据包。如当待发送数据包是需要第一处理芯片001进行响应,第一处理芯片001则响应该待发送数据包。可以理解的是,第一处理芯片001处理待发送数据包的实质是根据待发送数据包的属性将待发送数据包发送给对应的模块或者进行相应的处理。

为了保证第一处理芯片001能正常接收第二处理芯片002所发送的待发送数据包,第二预设时间应该大于第三预设时间,且第二预设时间和第三预设时间之间差值应等于或者小于预设数值。可以理解的是,第一处理芯片001从休眠状态转换至唤醒状态的时间应小于或者等于预设数值。在本实施例中,预设数值设置为10ms,在其它实施例中,预设数值可设置为8ms,或者9ms等。

对比图4和图5可知,第一处理芯片001从休眠状态转换至唤醒状态的时间可以等于预设数值(如图4所示),此时,第三预设时间和预设数值之间的和等于第二预设时间。第一处理芯片001从休眠状态转换至唤醒状态的时间可以小于预设数值(如图5所示),此时,第三预设时间和预设数值之间的和小于第二预设时间。

进一步地,数据传输方法还包括:

步骤c,第一处理芯片001判断第一计时器16的值是否等于或者大于第三预设时间。

步骤d,若第一计时器16的值小于第三预设时间,且第一处理芯片001接收到待发送数据包,第一处理芯片001则丢弃待发送数据包。

当第一处理芯片001从休眠状态转换至唤醒状态后,第一处理芯片001判断第一计时器16的值是否等于或者大于第三预设时间。若第一计时器16的值小于第三预设时间,且第一处理芯片001接收到待发送数据包,第一处理芯片001则丢弃该待发送数据包,不将该待发送数据包上报给上层。

本实施例通过当第一处理芯片001处于休眠状态时,第二处理芯片002发送探测包给第一处理芯片001,以唤醒第一处理芯片001。并在第一处理芯片001进入唤醒状态后,通过第一计时器16和第二计时器26之间的时间差,避免了第二处理芯片002发送数据包给第一处理芯片001时,第一处理芯片001处于未完全唤醒状态,导致第一处理芯片001接收数据包失败的情况出现。在移动终端100通过第一处理芯片001和第二芯片002实现双lte通信功能过程中,提高了第一处理芯片001和第二处理芯片002之间数据传输的成功率。

进一步地,提出本发明数据传输方法第四实施例。

数据传输方法第四实施例与数据传输方法第二实施例的区别在于,参照图8,数据传输方法还包括:

步骤s50,当第二计时器26的值小于第三预设时间时,第二处理芯片002在间隔预设时长后再次通过预设接口发送探测包给第一处理芯片001。

当第二处理芯片002通过预设接口发送探测包给第一处理芯片001,且初始化第二计时器26后,第二处理芯片002判断第二计时器26的值是否小于第三预设时间。当第二计时器26的值小于第三预设时间时,第二处理芯片002在间隔预设时长后再次通过预设接口发送探测包给第一处理芯片001。在本实施例中,预设时长可根据具体需要而设置,但为了保证第一处理芯片001不会将探测包误认为是第二处理芯片002发送的正常数据包,即将探测包误认为是第二处理芯片002发送的待发送数据包,预设时长应小于第三预设时间。如可以将预设时长设置为4ms,6ms或者8ms等。当第三预设时间为20ms,预设时长为6ms时,第二处理芯片002在每间隔6ms后再次通过预设接口发送探测包给第一处理芯片001,即第二处理芯片002一共发送了三次探测包给第一处理芯片001。

本实施例通过当第二计时器26的值小于第三预设时间时,第二处理芯片002在间隔预设时长后再次通过预设接口发送探测包给第一处理芯片001,以避免第二处理芯片002在发送探测包给第一处理芯片001过程中,探测包丢失,或者探测包损坏等情况出现,以致于第一处理芯片001未能接收到探测包从休眠状态进入唤醒状态。

需要说明的是,在本文中,术语“包括”、“包含”或者其任何其它变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其它要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。

上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例的方法。

以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其它相关的技术领域,均同理包括在本发明的专利保护范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1