CN101312570B - 实现终端唤醒的方法和装置 - Google Patents

实现终端唤醒的方法和装置 Download PDF

Info

Publication number
CN101312570B
CN101312570B CN2007100994572A CN200710099457A CN101312570B CN 101312570 B CN101312570 B CN 101312570B CN 2007100994572 A CN2007100994572 A CN 2007100994572A CN 200710099457 A CN200710099457 A CN 200710099457A CN 101312570 B CN101312570 B CN 101312570B
Authority
CN
China
Prior art keywords
memory
service order
processor
main control
data block
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN2007100994572A
Other languages
English (en)
Other versions
CN101312570A (zh
Inventor
何杰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Leadcore Technology Co Ltd
Original Assignee
Datang Mobile Communications Equipment Co Ltd
Leadcore Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Datang Mobile Communications Equipment Co Ltd, Leadcore Technology Co Ltd filed Critical Datang Mobile Communications Equipment Co Ltd
Priority to CN2007100994572A priority Critical patent/CN101312570B/zh
Publication of CN101312570A publication Critical patent/CN101312570A/zh
Application granted granted Critical
Publication of CN101312570B publication Critical patent/CN101312570B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Stored Programmes (AREA)

Abstract

本发明提供一种实现终端唤醒的方法,包括:预先将用于基带处理器提速和引导业务软件运行的主控软件对应的可下载文件和用于实现终端业务的业务指令数据块存储在外部存储器中;在终端唤醒过程中,在主控软件的控制下将基带处理器提速,通过直接存储器访问或存储器拷贝方式,直接从外部存储器拷贝业务指令数据块到处理器内存中并引导该业务指令运行。本发明还提供实现终端唤醒的装置。利用本发明,基带处理器可以直接运行处理器内存中存储的业务指令数据块,即机器指令,省去了解析的过程,从而实现终端唤醒过程中业务软件的快速加载和引导运行,减少了唤醒过程所花费的时间,延长了终端的待机时间。

Description

实现终端唤醒的方法和装置
技术领域
本发明涉及移动终端技术领域,特别涉及一种实现终端唤醒的方法和装置。
背景技术
移动终端在非业务状态,即没有进行通话或数据传输时,也可以说在待机过程中,为了节电,需要进入睡眠状态,但是由于网络同步和网络寻呼的需要,终端还需要根据网络配置周期性的唤醒到工作状态。
图1示出了终端的状态迁移图。如图所示,终端周期性的在睡眠状态和工作状态间切换,这个周期可以统称为寻呼时间,设为T,其中,设睡眠状态占用时间为TS,而工作状态占用时间为TW。工作状态包括现场恢复、正常工作和现场保护三个过程,设其占用时间分别为TW0、TW1和TW2,且TW=TW0+TW1+TW2。终端在睡眠状态时,物理层协议栈运行的基带处理器不需要工作,因此是关闭的。在终端唤醒过程中,需要唤醒该基带处理器执行网络同步和系统消息接收等工作。上述的基带处理器一般为数字信号处理器。
由于终端的基带处理器在工作状态下的功耗往往是睡眠状态下功耗的数百倍,所以终端基带处理器在工作状态的时长TW对终端待机功耗影响十分巨大。其中,在唤醒过程中,也就是图1所示的现场恢复过程中,基带处理器需要对相关代码进行重载,而基带处理器重载相关代码的时间决定现场恢复过程所占用的时间。换句话说,在终端唤醒过程中,缩短基带处理器重载相关代码所占用的时间可以减少终端基带处理器唤醒时的现场恢复时间,对降低待机功耗十分重要。
现有技术中,一种实现终端唤醒的方法为:基带处理器从现场恢复到进入工作状态都工作在基频,在现场恢复过程以基频载入相关代码。而基频的频率相对较低,在需要载入的相关代码量较大时,这些代码的加载时间就会延长,因此不利于缩短唤醒过程中现场恢复所占用的时间。
现有技术中另一种实现终端唤醒的方法称为二次启动(二次boot)方法,是对前一方法的改进,图2示出了该方法的示意图,其核心是缩短基频状态的工作时间。该方法需要设计简单的、代码量很小的基带处理器提速和工作代码解析软件并将其存储于存储器中;在现场恢复过程中,首先加载存储的代码量很小的基带处理器提速和工作代码解析软件,即进行一次boot,之后,一次boot的代码运行,将基带处理器配置到高速工作状态;在高速工作状态加载实际工作代码,即二次boot,从而缩短了重载工作代码所占用的时间。
上述的第二种方案中,第二次boot加载的代码与第一种方案中加载的一样,是以可下载文件的形式加载和解析的。具体的,可下载文件一般是将可执行指令的代码,按照实际运行地址段的不同进行块封装。每个封装块都有一个包括块存放起始地址,块长度,块属性等基本信息组成的块头字段,块头字段之后是需要加载的机器指令。一个可下载文件可以包括多个封装的块。基带处理器的boot过程是解析可下载文件,加载机器指令并引导机器指令运行的过程。相应地,基带处理器必须逐个解析可下载文件的每一封装块的块头字段,将对应的块内机器指令拷贝到指定的物理地址中,进而执行这些机器指令。
从上述过程中可见,基带处理器必须逐个解析每一个块头字段,进而执行机器指令,而逐个解析的过程显然是费时的。
发明内容
本发明的目的是提供一种实现终端唤醒的方法和装置,以减少现有技术基带处理器唤醒过程中所需的时间。
为解决上述技术问题,本发明提供一种实现终端唤醒的方法和装置是这样实现的:
一种实现终端唤醒的方法,包括:
预先将用于基带处理器提速和引导业务软件运行的主控软件对应的可下载文件和用于实现终端业务的业务指令数据块存储在外部存储器中,所述 可下载文件和业务指令数据块的生成方式包括:终端在系统设计时,将处理器内存空间分为两块,其中一块的首地址作为主控软件存储的首地址,另一块的首地址作为业务软件存储的首地址;
将主控软件加载于处理器内存中主控首地址开始的内存空间中,将业务软件加载于处理器内存中业务首地址开始的内存空间中;
系统在软件编译时,将主控首地址开始的主控软件作为一个完整的软件工程进行编译,生成可下载文件,将主控首地址开始的主控软件和业务首地址内开始的业务软件作为一个完整的软件工程进行编译,生成可执行代码,并从中分离出业务软件的机器指令,构成业务指令数据块;
在终端唤醒过程中,在主控软件的控制下将基带处理器提速,通过直接存储器访问或存储器拷贝方式,直接从外部存储器拷贝业务指令数据块到处理器内存中并引导该业务指令运行,具体实现方式包括:终端的基带处理器在上电开机过程中,通过运行经基带处理器解析闪存中存储的可下载文件获得的主控软件,将基带处理器配置到运行业务指令需要的高频率上;
通过存储器存取访问或存储器拷贝从外部存储器拷贝业务指令数据块到处理器内存中业务首地址开始的内存空间,基带处理器在主控软件的引导下执行处理器内存中的业务首地址开始的业务指令,所述外部存储器包括外部随机存储器和闪存。
所述预先将用于基带处理器提速和引导业务软件运行的主控软件对应的可下载文件和用于实现终端业务的业务指令数据块存储在外部存储器中由以下方式实现:
终端在系统设计时,将主控软件对应的可下载文件和业务指令数据块一同烧录在闪存中;
终端在上电开机过程中,基带处理器解析闪存中存储的可下载文件,加载主控软件,主控软件启动直接存储器访问或通过存储器拷贝的方式将闪存中存储的业务指令数据块拷贝到外部存储器中备份。
所述将主控软件对应的可下载文件和业务指令数据块一同烧录在闪存 中由以下方式实现:
将主控软件作为一个完整的软件工程进行编译后生成可下载文件;将主控软件和业务软件构成的完整的软件工程进行编译,生成可执行代码,并从中分离出业务软件的机器指令,构成业务指令数据块;
将两次编译生成的可下载文件和业务指令数据块一起烧录到闪存中。
所述基带处理器在主控软件的引导下执行处理器内存中的业务首地址开始的业务指令由以下方式实现:
主控软件修改基带处理器的程序指针,使其指向处理器内存中的业务首地址;
基带处理器执行处理器内存中业务首地址开始的业务指令。
还包括主控软件维护系统状态机,所述状态机包括工作状态和睡眠状态,在所述将基带处理器配置到运行业务指令需要的高频率上之后:
查询状态机状态,当查询到系统状态机为工作状态,启动直接存储器访问或通过存储器拷贝方式,将闪存中的业务指令数据块拷贝到处理器内存中的业务首地址,并将同样的业务指令数据块从处理器内存拷贝到外部存储器中进行备份。
还包括主控软件维护系统状态机,所述状态机包括工作状态和睡眠状态,所述主控软件维护系统进入睡眠状态后系统状态机为睡眠状态,在终端唤醒过程中,并在拷贝业务指令数据块到处理器内存之前还包括:
当查询到系统状态机为睡眠状态,修改系统状态机到工作状态。
一种实现终端唤醒的装置,位于终端中,包括外部存储器、处理器内存、直接存储器访问控制器和基带处理器,其中,
外部存储器用于存储基带处理器提速和引导业务软件运行的主控软件对应的可下载文件和用于实现终端业务的业务指令数据块;
处理器内存用于存储主控软件和业务软件,所述处理器内存(52)空间分为两块,其中一块的首地址作为主控软件存储的首地址,另一块的首地址作为业务软件存储的首地址,其中,处理器内存(52)中主控首地址开始的 内存空间用于存储主控软件,处理器内存(52)中业务首地址开始的内存空间用于存储业务软件;
直接存储器访问控制器用于从外部存储器通过直接存储器访问拷贝业务指令数据块到处理器内存;
基带处理器用于运行主控软件和加载在处理器内存中的业务指令,所述基带处理器(54)在上电开机过程中,通过运行经基带处理器(54)解析外部存储器(51)中存储的可下载文件获得的主控软件,将基带处理器(54)配置到运行业务指令需要的高频率上;
直接存储器访问控制器(53)通过直接存储器访问方式从外部存储器(51)拷贝业务指令数据块到处理器内存(52)中业务首地址开始的内存空间,基带处理器(54)在主控软件的引导下运行处理器内存(52)中的业务首地址开始的业务指令。
所述外部存储器为闪存,终端在系统设计时,该闪存用于存储烧录在其内的主控软件对应的可下载文件和业务指令数据块;
终端在上电开机过程中,基带处理器运行闪存中存储的可下载文件,并通过直接存储器访问控制器将闪存中存储的业务指令数据块拷贝到处理器内存中。
所述外部存储器包括闪存和随机存储器,其中,
终端在系统设计时,所述闪存用于存储烧录在其内的主控软件对应的可下载文件和业务指令数据块;
终端在上电开机过程中,随机存储器用于备份由直接存储器访问控制器从闪存中拷贝的业务指令数据块。
所述的装置,还包括系统状态机,其包括工作状态和睡眠状态,
当基带处理器配置到运行业务指令需要的高频率上之后,如果查询到系统状态机为工作状态,直接存储器访问存取装置将闪存中的业务指令数据块拷贝到处理器内存中的业务首地址,并将同样的业务指令数据块从处理器内存拷贝到随机存储器中进行备份。
如果基带处理器查询到系统状态机为睡眠状态,修改系统状态机到工作状态,直接存储器访问控制器通过直接存储器访问从外部存储器拷贝业务指令数据块到处理器内存中的业务首地址中,基带处理器运行该业务指令。
一种实现终端唤醒的装置,位于终端中,包括外部存储器、处理器内存和基带处理器,其中,
外部存储器存储用于基带处理器提速和引导业务软件运行的主控软件对应的可下载文件和用于实现终端业务的业务指令数据块;
处理器内存用于存储主控软件和业务软件,所述处理器内存(62)空间分为两块,其中一块的首地址作为主控软件存储的首地址,另一块的首地址作为业务软件存储的首地址,其中,处理器内存(62)中主控首地址开始的内存空间用于存储主控软件,处理器内存(62)中业务首地址开始的内存空间用于存储业务软件;
基带处理器用于运行主控软件,通过存储器拷贝方式拷贝业务指令数据块到处理器内存中并运行该业务指令,所述基带处理器(63)在上电开机过程中,通过运行经基带处理器(63)解析外部存储器(61)中存储的可下载文件获得的主控软件,将基带处理器(63)配置到运行业务指令需要的高频率上;
基带处理器(63)通过存储器拷贝方式从外部存储器(61)拷贝业务指令数据块到处理器内存(62)中业务首地址开始的内存空间,基带处理器(63)在主控软件的引导下运行处理器内存(62)中的业务首地址开始的业务指令。
所述外部存储器为闪存,终端在系统设计时,该闪存用于存储烧录在其内的主控软件对应的可下载文件和业务指令数据块;
终端在上电开机过程中,基带处理器运行闪存中存储的可下载文件,并通过存储器拷贝方式将闪存中存储的业务指令数据块拷贝到处理器内存中。
所述外部存储器包括闪存和随机存储器,其中,
终端在系统设计时,所述闪存用于存储烧录在其内的主控软件对应的可下载文件和业务指令数据块;
终端在上电开机过程中,随机存储器用于备份由基带处理器通过存储器拷贝方式从闪存中拷贝的业务指令数据块。
所述装置还包括系统状态机,其包括工作状态和睡眠状态,
当基带处理器配置到运行业务指令需要的高频率上之后,如果查询到系统状态机为工作状态,通过存储器拷贝方式将闪存中的业务指令数据块拷贝到处理器内存中的业务首地址,并将同样的业务指令数据块从处理器内存拷贝到随机存储器或同步动态随机存储器中进行备份。
如果基带处理器查询到系统状态机为睡眠状态,修改系统状态机到工作状态,并通过存储器拷贝方式从外部存储器拷贝业务指令数据块到处理器内存中的业务首地址中,基带处理器运行该业务指令。
由以上本发明提供的技术方案可见,本发明将用于实现终端业务的业务指令数据块存储在外部存储器中,在终端唤醒过程中,在主控软件的控制下通过直接存储器访问或存储器拷贝方式,直接从外部存储器拷贝业务指令数据块到处理器内存中并加载该业务指令,并引导业务指令运行,进而基带处理器可以直接运行该业务指令,省去了文件解析的过程,从而实现终端唤醒过程中业务软件的快速加载和引导运行,减少了唤醒过程所花费的时间,延长了终端的待机时间。
附图说明
图1为现有技术终端的状态迁移图;
图2为现有技术中一种实现终端唤醒的二次启动方法的原理示意图;
图3为本发明方法实施例的流程图;
图4为本发明方法的一个完整实施例的流程图;
图5为本发明装置第一实施例的框图;
图6为本发明装置第二实施例的框图。
具体实施方式
本发明提供一种方法和装置,基本思想是将用于基带处理器提速的主控软件对应的可下载文件和用于实现终端业务的业务指令数据块存储在外部存 储器中,在终端唤醒过程中,在主控软件的控制下通过直接存储器访问(DMA)或存储器拷贝方式,直接从外部存储器拷贝业务指令数据块到处理器内存中并加载该业务指令数据块。
前面的第二种方案中提到,基带处理器必须逐个解析每一个块头字段,进而执行机器指令,而逐个解析的过程显然是费时的。特别是读取的机器指令在进行条件判断的情况更为明显。本领域技术人员知道,一条机器指令的处理至少包括指令读取、指令解析和指令运行三个过程。一般的方式是,在执行第一条指令时,解析第二条指令,并同步读取第三条指令。则在进行条件判断的情况下,例如在执行第一条指令时,根据条件判断结果,需要在之后执行的指令不是第二条和第三条指令,则需要重新取指令。该情况下的条件判断会使解析过程更加费时和低效。
下面介绍本发明实施例提供的实现终端唤醒的方法。
为了使本技术领域的人员更好地理解本发明方案,下面结合附图和实施方式对本发明作进一步的详细说明。
之后,终端在唤醒过程中执行的操作可以如图3中的流程图所示,包括以下步骤:
步骤301:预先将用于基带处理器提速和引导业务软件运行的主控软件对应的可下载文件和用于实现终端业务的业务指令数据块存储在外部存储器中。
该步骤是终端在系统设计时,预先将用于基带处理器提速和引导业务软件运行的主控软件对应的可下载文件和用于实现终端业务的业务指令数据块存储在外部存储器中。
本发明与前面第二种方案类似的,将基带处理器在唤醒过程中需要运行的软件分为主控软件和业务软件。主控软件用于基带处理器提速和引导业务软件运行。业务软件用于实现终端业务,如实现终端在待机状态下周期性的寻呼等工作。这两部分软件的作用与前面第二种方案中的类似。
具体的,终端在系统设计时,可以将处理器内的存储空间分为两块。两 块存储空间的首地址固定,其中一个为基带处理器上电启动后缺省执行的首地址,用于存放主控软件代码,该首地址在后续的内容中称为主控首地址。另一存储空间的首地址设为业务软件执行的首地址,后续称为业务首地址。为保证基带处理器在上电启动过程中主控软件和业务软件的正常加载,本发明实施例在系统设计时设定主控软件加载于主控首地址开始的内存空间中,业务软件加载于业务首地址开始的内存空间中。系统在软件编译时,将主控软件作为一个完整的软件工程进行编译,生成可下载文件;将主控软件和业务软件构成的完整的软件工程进行编译,生成可执行代码,并从中分离出业务软件的机器指令,构成业务指令数据块。具体的,系统在软件编译时,将主控首地址开始的主控软件作为一个完整的软件工程进行编译,生成可下载文件,将主控首地址开始的主控软件和业务首地址内开始的业务软件作为一个完整的软件工程进行编译,生成可执行代码,并从中分离出业务软件的机器指令,构成业务指令数据块。
通过这种方式,将两次编译生成的可下载文件和业务指令数据块一起烧录到闪存(Flash)中。由于所述生成的可下载文件和业务指令数据块是要长期保存的,在系统断电的情况下仍然要保留,因此需要存储在Flash中。
在终端的基带处理器在上电开机过程中,运行经基带处理器解析外部Flash存储的可下载文件获得的用于基带处理器提速的主控软件,即将基带处理器配置到运行业务指令需要的高频率上。通过直接存储器存取(DirectMemory Access,DMA)或存储器拷贝方式,将Flash中的业务指令数据块拷贝到处理器内存中的业务首地址开始的内存空间中,并将同样的业务指令数据块拷贝到外部存储器中。该次拷贝是对业务指令数据块进行备份,以备睡眠唤醒时加载。本领域技术人员知道,DMA是可以实现存储器之间自动成批交换数据、同时尽可能减少CPU干预的输入/输出方式;同样地,存储器拷贝也可以实现存储器之间的数据交换,存储器拷贝例如可以是处理器执行的内存拷贝函数。外部存储器例如可以是随机存储器(Random AccessMemory,RAM)等。本领域技术人员知道,业务指令数据块存储于Flash、 RAM,但是RAM相对于Flash具有速度更快的优势。所述RAM可以包括静态随机存储器(STATIC RAM,SRAM)和动态随机存储器(Random AccessMemory,DRAM)等。
业务指令数据块备份完成后,基带处理器执行处理器内存中的业务首地址开始的业务指令数据块,从而完成上电开机。该步骤可以是主控软件修改基带处理器的程序指针,使其指向处理器内存中的业务首地址,从而实现基带处理器执行业务指令。
由于存储在外部存储器中的业务指令数据块为可以直接执行的指令的代码,即可直接执行的机器指令,因此,在后续终端唤醒过程中可以直接读取并执行这些代码,而不需再经过解析的过程。
步骤302:在终端唤醒过程中,在主控软件的控制下将基带处理器提速,通过直接存储器访问或存储器拷贝方式,直接从外部存储器拷贝业务指令数据块到处理器内存中并引导该业务指令运行。
该步骤是将之前存储在外部存储器内的业务指令数据块通过DMA或存储器拷贝直接搬运到处理器内存中,进而基带处理器可以直接执行该业务指令。由于DMA方式或存储器拷贝方式存取速度快,且存取的内容是可以直接运行的业务指令,即机器指令,从而省去了解析的过程,也就减少了唤醒过程所花费的时间。
为了保证终端能够正常地上电开机执行终端业务,并支持待机处理,主控软件需要正确地区分终端是上电开机还是待机过程中的睡眠唤醒,因此,这里还引入系统状态机,由主控软件运行时维护。该系统状态机初始的缺省状态可以为工作状态,而在系统进入睡眠状态之前将状态机置为睡眠状态。
这样,在前面的步骤301中,终端的基带处理器在脱离复位状态过程中,从外部Flash中启动主控软件并运行,将系统时钟配置到业务状态需要的频率上,即进行系统提速。然后,查询状态机状态,由于上电开机时缺省为工作状态,此时查询到系统状态机为工作状态,配置并启动DMA或存储器拷贝,将Flash中的业务指令数据块拷贝到处理器内存中的业务首地址,并将 同样的业务指令数据块从处理器内存拷贝到外部存储器中进行备份,以备睡眠唤醒时加载。
在步骤302中,基带处理器是在待机过程中实现唤醒,前面提到系统进入睡眠状态后系统状态机为睡眠状态,因此,首先查询到系统状态机为睡眠状态,则修改系统状态机到工作状态,启动DMA从外部存储器拷贝业务指令数据块到处理器内存中的业务首地址中,并加载该业务指令数据块。
以下列举一个完整的实施例加以说明,图4示出了该实施例的流程。
应该指出的是,这里,主控软件对应的可下载文件和业务指令数据块已一同烧录到Flash中。
如图4所示,为实现终端唤醒,终端执行的流程包括:
步骤401:终端上电开机或睡眠唤醒。
步骤402:终端在主控软件的控制下查询系统状态。
由于主控软件维护系统状态机,在终端上电开机时系统状态默认为工作状态,而在终端睡眠过程中系统状态为睡眠状态。针对不同的系统状态,终端需要执行不同的操作,因此,终端首先需要在主控软件的控制下查询系统状态。
步骤403:判断当前系统状态是否是工作状态,如果是,执行步骤404;如果否,执行步骤406。
步骤404:启动直接存储器存取或通过存储器拷贝方式从Flash中拷贝业务指令数据块到处理器内存单元中的业务首地址,并将该业务指令数据块拷贝到外部存储器备份。
该步骤是对终端上电开机的过程,由于此时外部存储器中没有备份业务指令数据块,且需要对业务指令进行首次运行,因此需要通过直接存储器访问(DMA)或存储器拷贝的方式,从Flash中拷贝业务指令数据块到处理器内存单元,具体是拷贝到处理器内存单元中的业务首地址,并将该业务指令数据块拷贝到外部存储器备份。
步骤405:修改程序指针指向处理器内存业务首地址并运行业务指令。
该步骤是基带处理器运行处理器内存中的业务指令。
步骤406:修改系统状态到工作状态。
该步骤是针对终端在待机过程中的睡眠唤醒。由于在睡眠过程中系统状态为睡眠状态,因此在唤醒过程中,需要首先修改系统状态到工作状态。
步骤407:启动直接存储器访问或存储器拷贝方式,从外部存储器中拷贝业务指令数据块到处理器内存中的业务首地址,并修改程序指针指向该地址,运行该业务指令。
该步骤的情况下,之前已经在外部存储器中备份了业务指令数据块,这里只需要启动DMA或存储器拷贝,将外部存储器中存储的业务指令数据块拷贝到处理器内存中并执行。具体的,是拷贝到处理器内存中业务首地址开始的内存空间,并修改程序指针,指向该地址,从而运行该业务指令。
步骤408:执行终端业务。
该步骤是终端正常执行业务。
步骤409:关机或进入睡眠状态。
常规地,终端在执行业务之后,或者进入周期性的睡眠状态,或者关机。
由上述完整实施例可见,本实施例将用于实现终端业务的业务指令数据块存储在外部存储器中,在终端唤醒过程中,在主控软件的控制下启动直接存储器访问或存储器拷贝,直接从外部存储器拷贝业务指令数据块到处理器内存,实现业务指令加载,并引导业务指令运行,省去了文件解析的过程,从而实现终端唤醒过程中业务软件的快速加载和引导运行,减少了唤醒过程所花费的时间,延长了终端的待机时间。
以下介绍本发明的装置的第一实施例,图5示出了该实施例的框图,如图所示:
实现终端唤醒的装置,位于终端中,包括外部存储器51、处理器内存52、直接存储器访问控制器53和基带处理器54,其中,
外部存储器51存储用于基带处理器提速和引导业务软件运行的主控软件对应的可下载文件和用于实现终端业务的业务指令数据块;
处理器内存52用于存储主控软件和业务指令;
直接存储器访问控制器53用于从外部存储器51通过直接存储器访问拷贝业务指令数据块到处理器内存52;
基带处理器54用于运行主控软件和加载在处理器内存中的业务指令。
所述外部存储器51为闪存,终端在系统设计时,该闪存用于存储烧录在其内的主控软件对应的可下载文件和业务指令数据块;
终端在上电开机过程中,基带处理器54运行闪存中存储的可下载文件,并通过直接存储器访问控制器53将闪存中存储的业务指令数据块拷贝到处理器内存52中。
所述外部存储器51包括闪存511和随机存储器512,其中,
终端在系统设计时,所述闪存用于存储烧录在其内的主控软件对应的可下载文件和业务指令数据块;
终端在上电开机过程中,随机存储器512用于备份由直接存储器访问控制器53从闪存511中拷贝的业务指令数据块。
所述处理器内存52空间分为两块,其中一块的首地址作为主控软件存储的首地址,另一块的首地址作为业务软件存储的首地址,其中,
处理器内存52中主控首地址开始的内存空间用于存储主控软件,处理器内存52中业务首地址开始的内存空间用于存储业务软件。
所述基带处理器54在上电开机过程中,通过运行经基带处理器(53)解析外部存储器51中存储的可下载文件获得的主控软件,将基带处理器54配置到运行业务指令需要的高频率上;
直接存储器访问控制器53通过直接存储器访问方式从外部存储器51拷贝业务指令数据块到处理器内存52中业务首地址开始的内存空间,基带处理器54在主控软件的引导下运行处理器内存52中的业务首地址开始的业务指令。
该装置还可以包括系统状态机55,其包括工作状态和睡眠状态,
当基带处理器54配置到运行业务指令需要的高频率上之后,如果查询 到系统状态机55为工作状态,直接存储器存取装置53将闪存511中的业务指令数据块拷贝到处理器内存52中的业务首地址,并将同样的业务指令数据块从处理器内存52拷贝到随机存储器或同步动态随机存储器512中进行备份。
如果基带处理器54查询到系统状态机55为睡眠状态,修改系统状态机55到工作状态,直接存储器访问控制器53通过直接存储器访问从外部存储器51拷贝业务指令数据块到处理器内存52中的业务首地址中,基带处理器54运行该业务指令数据块。
以下介绍本发明的装置的第二实施例,图6示出了该实施例的框图,如图所示:
实现终端唤醒的装置,位于终端中,其特征在于,包括外部存储器61、处理器内存62和基带处理器63,其中,
外部存储器61存储用于基带处理器提速和引导业务软件运行的主控软件对应的可下载文件和用于实现终端业务的业务指令数据块;
处理器内存62用于存储主控软件和业务指令;
基带处理器63用于运行主控软件,通过存储器拷贝方式拷贝业务指令数据块到处理器内存62中并运行该业务指令。
所述外部存储器61为闪存,终端在系统设计时,该闪存用于存储烧录在其内的主控软件对应的可下载文件和业务指令数据块;
终端在上电开机过程中,基带处理器63运行闪存中存储的可下载文件,并通过存储器拷贝方式将闪存中存储的业务指令数据块拷贝到处理器内存62中。
所述外部存储器61包括闪存611和随机存储器612,其中,
终端在系统设计时,所述闪存611用于存储烧录在其内的主控软件对应的可下载文件和业务指令数据块;
终端在上电开机过程中,随机存储器612用于备份由基带处理器63通过存储器拷贝方式从闪存611中拷贝的业务指令数据块。
所述处理器内存62空间分为两块,其中一块的首地址作为主控软件存储的首地址,另一块的首地址作为业务软件存储的首地址,其中,
处理器内存62中主控首地址开始的内存空间用于存储主控软件,处理器内存62中业务首地址开始的内存空间用于存储业务软件。
所述基带处理器63在上电开机过程中,通过运行经基带处理器(63)解析外部存储器61中存储的可下载文件获得的主控软件,将基带处理器63配置到运行业务指令需要的高频率上;
基带处理器63通过存储器拷贝方式从外部存储器61拷贝业务指令数据块到处理器内存62中业务首地址开始的内存空间,基带处理器63在主控软件的引导下运行处理器内存62中的业务首地址开始的业务指令。
所述装置还可以包括系统状态机64,其包括工作状态和睡眠状态,
当基带处理器63配置到运行业务指令需要的高频率上之后,如果查询到系统状态机64为工作状态,通过存储器拷贝方式将闪存611中的业务指令数据块拷贝到处理器内存62中的业务首地址,并将同样的业务指令数据块从处理器内存62拷贝到随机存储器或同步动态随机存储器612中进行备份。
如果基带处理器63查询到系统状态机64为睡眠状态,修改系统状态机64到工作状态,并通过存储器拷贝方式从外部存储器61拷贝业务指令数据块到处理器内存62中的业务首地址中,基带处理器63运行该业务指令。
由以上实施例可见,用于实现终端业务的业务指令数据块存储在外部存储器中,在终端唤醒过程中,在主控软件的控制下启动直接存储器存取或存储器拷贝,从外部存储器拷贝业务指令数据块到处理器内存中并加载该业务指令数据块,从而可以直接运行该业务指令数据块,即机器指令,省去了文件解析的过程,从而实现终端唤醒过程中业务软件的快速加载和引导运行,减少了唤醒过程所花费的时间,延长了终端的待机时间。
虽然通过实施例描绘了本发明,本领域普通技术人员知道,本发明有许多变形和变化而不脱离本发明的精神,希望所附的权利要求包括这些变形和变化而不脱离本发明的精神。

Claims (14)

1.一种实现终端唤醒的方法,其特征在于,包括:
预先将用于基带处理器提速和引导业务软件运行的主控软件对应的可下载文件和用于实现终端业务的业务指令数据块存储在外部存储器中,所述可下载文件和业务指令数据块的生成方式包括:终端在系统设计时,将处理器内存空间分为两块,其中一块的首地址作为主控软件存储的首地址,另一块的首地址作为业务软件存储的首地址;
将主控软件加载于处理器内存中主控首地址开始的内存空间中,将业务软件加载于处理器内存中业务首地址开始的内存空间中;
系统在软件编译时,将主控首地址开始的主控软件作为一个完整的软件工程进行编译,生成可下载文件,将主控首地址开始的主控软件和业务首地址内开始的业务软件作为一个完整的软件工程进行编译,生成可执行代码,并从中分离出业务软件的机器指令,构成业务指令数据块;
在终端唤醒过程中,在主控软件的控制下将基带处理器提速,通过直接存储器访问或存储器拷贝方式,直接从外部存储器拷贝业务指令数据块到处理器内存中并引导该业务指令运行,具体实现方式包括:终端的基带处理器在上电开机过程中,通过运行经基带处理器解析闪存中存储的可下载文件获得的主控软件,将基带处理器配置到运行业务指令需要的高频率上;
通过存储器存取访问或存储器拷贝从外部存储器拷贝业务指令数据块到处理器内存中业务首地址开始的内存空间,基带处理器在主控软件的引导下执行处理器内存中的业务首地址开始的业务指令,所述外部存储器包括外部随机存储器和闪存。
2.如权利要求1所述的方法,其特征在于,所述预先将用于基带处理器提速和引导业务软件运行的主控软件对应的可下载文件和用于实现终端业务的业务指令数据块存储在外部存储器中由以下方式实现:
终端在系统设计时,将主控软件对应的可下载文件和业务指令数据块一同烧录在闪存中;
终端在上电开机过程中,基带处理器解析闪存中存储的可下载文件,加载主控软件,主控软件启动直接存储器访问或通过存储器拷贝的方式将闪存中存储的业务指令数据块拷贝到外部存储器中备份。
3.如权利要求2所述的方法,其特征在于,所述将主控软件对应的可下载文件和业务指令数据块一同烧录在闪存中由以下方式实现:
将主控软件作为一个完整的软件工程进行编译后生成可下载文件;将主控软件和业务软件构成的完整的软件工程进行编译,生成可执行代码,并从中分离出业务软件的机器指令,构成业务指令数据块;
将两次编译生成的可下载文件和业务指令数据块一起烧录到闪存中。
4.如权利要求1所述的方法,其特征在于,所述基带处理器在主控软件的引导下执行处理器内存中的业务首地址开始的业务指令由以下方式实现:
主控软件修改基带处理器的程序指针,使其指向处理器内存中的业务首地址;
基带处理器执行处理器内存中业务首地址开始的业务指令。
5.如权利要求4所述的方法,其特征在于,还包括主控软件维护系统状态机,所述状态机包括工作状态和睡眠状态,在所述将基带处理器配置到运行业务指令需要的高频率上之后:
查询状态机状态,当查询到系统状态机为工作状态,启动直接存储器访问或通过存储器拷贝方式,将闪存中的业务指令数据块拷贝到处理器内存中的业务首地址,并将同样的业务指令数据块从处理器内存拷贝到外部存储器中进行备份。
6.如权利要求5所述的方法,其特征在于,还包括主控软件维护系统状态机,所述状态机包括工作状态和睡眠状态,所述主控软件维护系统进入睡眠状态后系统状态机为睡眠状态,在终端唤醒过程中,并在拷贝业务指令数据块到处理器内存之前还包括:
当查询到系统状态机为睡眠状态,修改系统状态机到工作状态。
7.一种实现终端唤醒的装置,位于终端中,其特征在于,包括外部存储器(51)、处理器内存(52)、直接存储器访问控制器(53)和基带处理器(54),其中,
外部存储器(51)用于存储基带处理器提速和引导业务软件运行的主控软件对应的可下载文件和用于实现终端业务的业务指令数据块;
处理器内存(52)用于存储主控软件和业务软件,所述处理器内存(52)空间分为两块,其中一块的首地址作为主控软件存储的首地址,另一块的首地址作为业务软件存储的首地址,其中,处理器内存(52)中主控首地址开始的内存空间用于存储主控软件,处理器内存(52)中业务首地址开始的内存空间用于存储业务软件;
直接存储器访问控制器(53)用于从外部存储器(51)通过直接存储器访问拷贝业务指令数据块到处理器内存(52);
基带处理器(54)用于运行主控软件和加载在处理器内存中的业务指令,所述基带处理器(54)在上电开机过程中,通过运行经基带处理器(54)解析外部存储器(51)中存储的可下载文件获得的主控软件,将基带处理器(54)配置到运行业务指令需要的高频率上;
直接存储器访问控制器(53)通过直接存储器访问方式从外部存储器(51)拷贝业务指令数据块到处理器内存(52)中业务首地址开始的内存空间,基带处理器(54)在主控软件的引导下运行处理器内存(52)中的业务首地址开始的业务指令。
8.如权利要求7所述的装置,其特征在于,所述外部存储器(51)为闪存,终端在系统设计时,该闪存用于存储烧录在其内的主控软件对应的可下载文件和业务指令数据块;
终端在上电开机过程中,基带处理器(54)运行闪存中存储的可下载文件,并通过直接存储器访问控制器(53)将闪存中存储的业务指令数据块拷贝到处理器内存(52)中。
9.如权利要求7所述的装置,其特征在于,所述外部存储器(51)包括闪存(511)和随机存储器(512),其中,
终端在系统设计时,所述闪存(511)用于存储烧录在其内的主控软件对应的可下载文件和业务指令数据块;
终端在上电开机过程中,随机存储器(512)用于备份由直接存储器访问控制器(53)从闪存(511)中拷贝的业务指令数据块。
10.如权利要求9所述的装置,还包括系统状态机(55),其包括工作状态和睡眠状态,
当基带处理器(54)配置到运行业务指令需要的高频率上之后,如果查询到系统状态机(55)为工作状态,直接存储器访问控制器(53)将闪存(511)中的业务指令数据块拷贝到处理器内存(52)中的业务首地址,并将同样的业务指令数据块从处理器内存(52)拷贝到随机存储器(512)中进行备份;
如果基带处理器(54)查询到系统状态机(55)为睡眠状态,修改系统状态机(55)到工作状态,直接存储器访问控制器(53)通过直接存储器访问从外部存储器(51)拷贝业务指令数据块到处理器内存(52)中的业务首地址中,基带处理器(54)运行该业务指令。
11.一种实现终端唤醒的装置,位于终端中,其特征在于,包括外部存储器(61)、处理器内存(62)和基带处理器(63),其中,
外部存储器(61)存储用于基带处理器提速和引导业务软件运行的主控软件对应的可下载文件和用于实现终端业务的业务指令数据块;
处理器内存(62)用于存储主控软件和业务软件,所述处理器内存(62)空间分为两块,其中一块的首地址作为主控软件存储的首地址,另一块的首地址作为业务软件存储的首地址,其中,处理器内存(62)中主控首地址开始的内存空间用于存储主控软件,处理器内存(62)中业务首地址开始的内存空间用于存储业务软件;
基带处理器(63)用于运行主控软件,通过存储器拷贝方式拷贝业务指令数据块到处理器内存(62)中并运行该业务指令,所述基带处理器(63)在上电开机过程中,通过运行经基带处理器(63)解析外部存储器(61)中存储的可下载文件获得的主控软件,将基带处理器(63)配置到运行业务指令需要的高频率上;
基带处理器(63)通过存储器拷贝方式从外部存储器(61)拷贝业务指令数据块到处理器内存(62)中业务首地址开始的内存空间,基带处理器(63)在主控软件的引导下运行处理器内存(62)中的业务首地址开始的业务指令。
12.如权利要求11所述的装置,其特征在于,所述外部存储器(61)为闪存,终端在系统设计时,该闪存用于存储烧录在其内的主控软件对应的可下载文件和业务指令数据块;
终端在上电开机过程中,基带处理器(63)运行闪存中存储的可下载文件,并通过存储器拷贝方式将闪存中存储的业务指令数据块拷贝到处理器内存(62)中。
13.如权利要求11所述的装置,其特征在于,所述外部存储器(61)包括闪存(611)和随机存储器(612),其中,
终端在系统设计时,所述闪存(611)用于存储烧录在其内的主控软件对应的可下载文件和业务指令数据块;
终端在上电开机过程中,随机存储器(612)用于备份由基带处理器(63)通过存储器拷贝方式从闪存(611)中拷贝的业务指令数据块。
14.如权利要求13所述的装置,还包括系统状态机(64),其包括工作状态和睡眠状态,
当基带处理器(63)配置到运行业务指令需要的高频率上之后,如果查询到系统状态机(64)为工作状态,通过存储器拷贝方式将闪存(611)中的业务指令数据块拷贝到处理器内存(62)中的业务首地址,并将同样的业务指令数据块从处理器内存(62)拷贝到随机存储器或同步动态随机存储器(612)中进行备份;
如果基带处理器(63)查询到系统状态机(64)为睡眠状态,修改系统状态机(64)到工作状态,并通过存储器拷贝方式从外部存储器(61)拷贝业务指令数据块到处理器内存(62)中的业务首地址中,基带处理器(63)运行该业务指令。
CN2007100994572A 2007-05-21 2007-05-21 实现终端唤醒的方法和装置 Active CN101312570B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2007100994572A CN101312570B (zh) 2007-05-21 2007-05-21 实现终端唤醒的方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2007100994572A CN101312570B (zh) 2007-05-21 2007-05-21 实现终端唤醒的方法和装置

Publications (2)

Publication Number Publication Date
CN101312570A CN101312570A (zh) 2008-11-26
CN101312570B true CN101312570B (zh) 2011-09-07

Family

ID=40100956

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2007100994572A Active CN101312570B (zh) 2007-05-21 2007-05-21 实现终端唤醒的方法和装置

Country Status (1)

Country Link
CN (1) CN101312570B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101727160B (zh) * 2009-11-11 2012-10-17 无锡中星微电子有限公司 协处理器系统工作模式的切换方法和装置及处理器系统
US8788863B2 (en) * 2011-08-10 2014-07-22 Microsoft Corporation System and method for restoring and/or continuing execution functionality to various processes based on predefined power classifications while transitioning a computing environment from connected standby state to execution state
CN103200331B (zh) * 2013-04-16 2015-04-15 青岛中星微电子有限公司 一种终端设备

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1516979A (zh) * 2001-05-15 2004-07-28 �����ɷ� 减少唤醒一组休眠通信的等待时间的方法和装置
CN1852369A (zh) * 2006-02-17 2006-10-25 华为技术有限公司 一种在移动系统中实现唤醒业务的方法及装置
EP1734699A2 (en) * 2005-06-14 2006-12-20 Samsung Electronics Co., Ltd. Power saving method of portable communication device
US20070021155A1 (en) * 2005-07-25 2007-01-25 Industrial Technology Research Institute System and method for reducing call establishment delay in a wireless network

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1516979A (zh) * 2001-05-15 2004-07-28 �����ɷ� 减少唤醒一组休眠通信的等待时间的方法和装置
EP1734699A2 (en) * 2005-06-14 2006-12-20 Samsung Electronics Co., Ltd. Power saving method of portable communication device
US20070021155A1 (en) * 2005-07-25 2007-01-25 Industrial Technology Research Institute System and method for reducing call establishment delay in a wireless network
CN1852369A (zh) * 2006-02-17 2006-10-25 华为技术有限公司 一种在移动系统中实现唤醒业务的方法及装置

Also Published As

Publication number Publication date
CN101312570A (zh) 2008-11-26

Similar Documents

Publication Publication Date Title
RU2592415C2 (ru) Устройство формирования изображения и способ управления им
US7779284B2 (en) Techniques for operating a processor subsystem to service masked interrupts during a power-down sequence
CN104469916A (zh) 移动装置中的电力管理
JP2019159802A (ja) 記憶装置の電力制御方法および記憶装置
CN101552840B (zh) 一种降低移动终端功耗的方法及移动终端
CN104750227B (zh) 休眠唤醒方法及电子装置
CN100501744C (zh) 一种文档同步方法及系统
KR20080032035A (ko) 휴대용 전자 단말기 및 휴대용 전자 단말기 관리 방법
CN101312570B (zh) 实现终端唤醒的方法和装置
WO2020093868A1 (zh) 多核芯片、系统,及其方法和存储介质
CN101119188B (zh) 一种实现业务不中断的单板升级方法
CN114528029A (zh) 一种实现bios选项设置的方法、系统、设备和存储介质
CN102736928B (zh) 快速唤醒计算机系统方法与计算机系统
CN113223566B (zh) 存储器的控制系统及其控制方法
CN105282327A (zh) 一种控制方法、电子设备及外接设备
JP2011158967A (ja) 電子制御装置
US20170262390A1 (en) Device, prioritizing process method and computer-readable recording medium
CN112130858B (zh) 一种代码编译方法及编译服务器
JP5630313B2 (ja) ストレージ制御装置、ストレージシステム、ストレージ制御方法及びそのためのプログラム
KR20000073579A (ko) 휴대정보단말장치
US20170212704A1 (en) Method for Reducing Power Consumption Memory, and Computer Device
US20170255411A1 (en) Device, data saving process method and medium for data saving process program
CN101377708B (zh) 移动装置及其电源控制方法
CN102271191A (zh) 移动终端和数据访问方法
JP2010277495A (ja) 圧縮記録装置および圧縮記録方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
ASS Succession or assignment of patent right

Owner name: LIANXIN SCIENCE CO., LTD.

Free format text: FORMER OWNER: DATANG MOBILE COMMUNICATION APPARATUS CO., LTD.

Effective date: 20090508

C41 Transfer of patent application or patent right or utility model
TA01 Transfer of patent application right

Effective date of registration: 20090508

Address after: Zip code, 4 building, 41 333 Qinjiang Road, Shanghai, China: 200233

Applicant after: Lian core technology Co., Ltd.

Co-applicant after: Datang Mobile Communication Equipment Co., Ltd.

Co-applicant after: Datang Mobile Communication Equipment Co., Ltd., Shanghai

Address before: Postal code 29, Haidian District, Beijing, Xueyuan Road: 100083

Applicant before: Datang Mobile Communications Equipment Co

Co-applicant before: Datang Mobile Communication Equipment Co., Ltd., Shanghai

C14 Grant of patent or utility model
GR01 Patent grant
ASS Succession or assignment of patent right

Free format text: FORMER OWNER: DATANG MOBILE COMMUNICATION EQUIPMENT CO., LTD. DATANG MOBILE COMMUNICATION EQUIPMENT CO., LTD., SHANGHAI

Effective date: 20120323

C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20120323

Address after: 201206 Pudong New Area Mingyue Road, Shanghai, No. 1258

Patentee after: Leadcore Technology Co., Ltd.

Address before: 201206 Pudong New Area Mingyue Road, Shanghai, No. 1258

Co-patentee before: Datang Mobile Communication Equipment Co., Ltd.

Patentee before: Leadcore Technology Co., Ltd.

Co-patentee before: Datang Mobile Communication Equipment Co., Ltd., Shanghai

EE01 Entry into force of recordation of patent licensing contract

Application publication date: 20081126

Assignee: Shanghai Li Ke Semiconductor Technology Co., Ltd.

Assignor: Leadcore Technology Co., Ltd.

Contract record no.: 2018990000159

Denomination of invention: Method and apparatus implementing terminal wake-up

Granted publication date: 20110907

License type: Common License

Record date: 20180615

EE01 Entry into force of recordation of patent licensing contract