CN106020879A - 一种终端启动方法和装置 - Google Patents

一种终端启动方法和装置 Download PDF

Info

Publication number
CN106020879A
CN106020879A CN201610326339.XA CN201610326339A CN106020879A CN 106020879 A CN106020879 A CN 106020879A CN 201610326339 A CN201610326339 A CN 201610326339A CN 106020879 A CN106020879 A CN 106020879A
Authority
CN
China
Prior art keywords
unit
buffer
code
terminal
startup
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.)
Pending
Application number
CN201610326339.XA
Other languages
English (en)
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.)
Fuzhou Rockchip Electronics Co Ltd
Original Assignee
Fuzhou Rockchip Electronics 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 Fuzhou Rockchip Electronics Co Ltd filed Critical Fuzhou Rockchip Electronics Co Ltd
Priority to CN201610326339.XA priority Critical patent/CN106020879A/zh
Publication of CN106020879A publication Critical patent/CN106020879A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44521Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

本发明提供了一种终端启动方法和装置,所述方法应用于终端启动装置,所述装置包括缓存设置单元、启动代码存储单元、启动代码加载单元、缓存单元和处理单元;所述方法包括以下步骤:首先启动代码存储单元存储启动代码;而后缓存设置单元将缓存单元的缓存地址映射到总线;而后启动代码加载单元将启动代码从启动代码存储单元加载至缓存单元中;而后处理单元执行缓存单元中的启动代码,启动终端。通过缓存单元的设置使得总线可以对缓存单元进行访问,当终端启动时,将启动代码加载在缓存单元中运行,从而减少了启动流程对SRAM大小的要求,有效减小了SOC芯片硬件面积,节约了硬件成本。

Description

一种终端启动方法和装置
技术领域
本发明涉及计算机技术领域,特别涉及一种终端启动方法和装置。
背景技术
现有终端设备在启动时一般都是通过bootrom从存储有启动代码的存储介质中加载启动代码到SRAM,并在SRAM中运行启动代码,完成终端设备的启动。
随着SOC设计越来越复杂,启动代码的代码量也越来越大,例如ARM处理器从32位变位64位过程,代码功能不变,使用64位编译器编译生成的代码量就比用32位编译器编译生成的代码量大。而加载越大的启动代码,就需要容量越大的SRAM,从而导致SOC的面积变大,增加SOC的硬件成本。
发明内容
为此,需要提供一种终端启动的技术方案,用以解决现有的终端启动方法由于启动代码需要在SRAM中运行完成启动,当启动代码较大时,导致SOC面积增加、硬件成本高等问题。
为实现上述目的,发明人提供了一种终端启动装置,所述装置包括缓存设置单元、启动代码存储单元、启动代码加载单元、缓存单元和处理单元;
所述启动代码存储单元用于存储启动代码;
所述缓存设置单元用于将缓存单元的缓存地址映射到总线;
所述启动代码加载单元用于将启动代码从启动代码存储单元加载至缓存单元中;
所述处理单元用于执行缓存单元中的启动代码,启动终端。
进一步地,所述处理单元还用于发送使能信号至缓存单元,所述缓存单元用于接收使能信号,开始执行高速缓存功能。
进一步地,所述缓存单元为cache。
进一步地,所述启动代码存储单元包括SDCard、eMMc、Norflash存储单元。
发明人还提供了一种终端启动方法,所述方法应用于终端启动装置,所述装置包括缓存设置单元、启动代码存储单元、启动代码加载单元、缓存单元和处理单元;所述方法包括以下步骤:
启动代码存储单元存储启动代码;
缓存设置单元将缓存单元的缓存地址映射到总线;
启动代码加载单元将启动代码从启动代码存储单元加载至缓存单元中;
处理单元执行缓存单元中的启动代码,启动终端。
进一步地,所述方法还包括:
处理单元发送使能信号至缓存单元,缓存单元接收使能信号,开始执行高速缓存功能。
进一步地,所述缓存单元为cache。
进一步地,所述启动代码存储单元包括SDCard、eMMc、Norflash存储单元。
上述技术方案所述的终端启动方法和装置,所述方法应用于终端启动装置,所述装置包括缓存设置单元、启动代码存储单元、启动代码加载单元、缓存单元和处理单元;所述方法包括以下步骤:首先启动代码存储单元存储启动代码;而后缓存设置单元将缓存单元的缓存地址映射到总线;而后启动代码加载单元将启动代码从启动代码存储单元加载至缓存单元中;而后处理单元执行缓存单元中的启动代码,启动终端。通过缓存单元的设置使得总线可以对缓存单元进行访问,当终端启动时,将启动代码加载在缓存单元中运行,从而减少了启动流程对SRAM大小的要求,有效减小了SOC芯片硬件面积,节约了硬件成本。
附图说明
图1为本发明一实施方式涉及的终端启动装置的示意图;
图2为本发明一实施方式涉及的终端启动方法的流程图;
附图标记说明:
101、缓存设置单元;
102、启动代码存储单元;
103、启动代码加载单元;
104、缓存单元;
105、处理单元。
具体实施方式
为详细说明技术方案的技术内容、构造特征、所实现目的及效果,以下结合具体实施例并配合附图详予说明。
请参阅图1,为本发明一实施方式涉及的终端启动装置的示意图。所述终端可以为手机、平板等电子设备,也可以为执行启动功能的SOC芯片。所述装置包括缓存设置单元101、启动代码存储单元102、启动代码加载单元103、缓存单元104和处理单元105;
所述启动代码存储单元102用于存储启动代码;
所述缓存设置单元101用于将缓存单元的缓存地址映射到总线;
所述启动代码加载单元103用于将启动代码从启动代码存储单元加载至缓存单元104中;
所述处理单元105用于执行缓存单元中的启动代码,启动终端。
在使用终端启动装置时,首先启动代码存储单元102存储启动代码。启动代码存储单元为启动代码的存储介质,在本实施方式中,所述启动代码存储单元包括SDCard、eMMc、Norflash存储单元,在其他实施例中,所述启动代码存储单元还可以为U盘、移动硬盘等。
而后缓存设置单元101将缓存单元的缓存地址映射到总线。在本实施方式中,缓存单元为cache。将缓存单元的缓存地址映射到总线,可以使得与总线相连接的设备可以通过总线来访问cache。
而后启动代码加载单元103将启动代码从启动代码存储单元加载至缓存单元104中。在本实施方式中,所述启动代码加载单元为bootrom。Cache在未接收到处理单元发送的使能信号时,cache可以取代SRAM作为启动代码的运行空间。由于SOC芯片中的缓存单元容量都较大,以L2cache为例,其容量往往在512K以上,足够满足启动代码运行空间的需求。将启动代码加载至缓存单元中运行,有效减少了终端启动流程对SRAM大小的要求,节约了硬件成本。
而后处理单元105执行缓存单元中的启动代码,启动终端。启动代码为终端启动的相关代码,可以为与总线连接的各个外围设备的驱动代码、芯片内部各个模块的驱动代码等,也可以为一些应用的启动代码等。例如启动代码为DDR初始化代码,处理单元执行DDR初始化代码,完成DDR初始化。
在本实施方式中,所述处理单元还用于发送使能信号至缓存单元,所述缓存单元用于接收使能信号,开始执行高速缓存功能。当缓存单元接收到处理单元发送的使能信号后,即恢复其原有的缓存功能,即执行高速缓存功能。
以及发明人还提供了一种终端启动方法,请参阅图2,为本发明一实施方式涉及的终端启动方法的流程图。所述方法应用于终端启动装置,所述装置包括缓存设置单元、启动代码存储单元、启动代码加载单元、缓存单元和处理单元;所述方法包括以下步骤:
首先进入步骤S201启动代码存储单元存储启动代码。启动代码存储单元为启动代码的存储介质,在本实施方式中,所述启动代码存储单元包括SDCard、eMMc、Norflash存储单元,在其他实施例中,所述启动代码存储单元还可以为U盘、移动硬盘等。
而后进入步骤S202缓存设置单元将缓存单元的缓存地址映射到总线。在本实施方式中,缓存单元为cache。将缓存单元的缓存地址映射到总线,可以使得与总线相连接的设备可以通过总线来访问cache。
而后进入步骤S203启动代码加载单元将启动代码从启动代码存储单元加载至缓存单元中。在本实施方式中,所述启动代码加载单元为bootrom。Cache在未接收到处理单元发送的使能信号时,cache可以取代SRAM作为启动代码的运行空间。由于SOC芯片中的缓存单元容量都较大,以L2cache为例,其容量往往在512K以上,足够满足启动代码运行空间的需求。将启动代码加载至缓存单元中运行,有效减少了终端启动流程对SRAM大小的要求,节约了硬件成本。
而后进入步骤S204处理单元执行缓存单元中的启动代码,启动终端。启动代码为终端启动的相关代码,可以为与总线连接的各个外围设备的驱动代码、芯片内部各个模块的驱动代码等,也可以为一些应用的启动代码等。例如启动代码为DDR初始化代码,处理单元执行DDR初始化代码,完成DDR初始化。
在本实施方式中,所述方法还包括:处理单元发送使能信号至缓存单元,缓存单元接收使能信号,开始执行高速缓存功能。当缓存单元接收到处理单元发送的使能信号后,即恢复其原有的缓存功能,即执行高速缓存功能。
上述技术方案所述的终端启动方法和装置,所述方法应用于终端启动装置,所述装置包括缓存设置单元、启动代码存储单元、启动代码加载单元、缓存单元和处理单元;所述方法包括以下步骤:首先启动代码存储单元存储启动代码;而后缓存设置单元将缓存单元的缓存地址映射到总线;而后启动代码加载单元将启动代码从启动代码存储单元加载至缓存单元中;而后处理单元执行缓存单元中的启动代码,启动终端。通过缓存单元的设置使得总线可以对缓存单元进行访问,当终端启动时,将启动代码加载在缓存单元中运行,从而减少了启动流程对SRAM大小的要求,有效减小了SOC芯片硬件面积,节约了硬件成本。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括……”或“包含……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的要素。此外,在本文中,“大于”、“小于”、“超过”等理解为不包括本数;“以上”、“以下”、“以内”等理解为包括本数。
本领域内的技术人员应明白,上述各实施例可提供为方法、装置、或计算机程序产品。这些实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。上述各实施例涉及的方法中的全部或部分步骤可以通过程序来指令相关的硬件来完成,所述的程序可以存储于计算机设备可读取的存储介质中,用于执行上述各实施例方法所述的全部或部分步骤。所述计算机设备,包括但不限于:个人计算机、服务器、通用计算机、专用计算机、网络设备、嵌入式设备、可编程设备、智能移动终端、智能家居设备、穿戴式智能设备、车载智能设备等;所述的存储介质,包括但不限于:RAM、ROM、磁碟、磁带、光盘、闪存、U盘、移动硬盘、存储卡、记忆棒、网络服务器存储、网络云存储等。
上述各实施例是参照根据实施例所述的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到计算机设备的处理器以产生一个机器,使得通过计算机设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机设备以特定方式工作的计算机设备可读存储器中,使得存储在该计算机设备可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机设备上,使得在计算机设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已经对上述各实施例进行了描述,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改,所以以上所述仅为本发明的实施例,并非因此限制本发明的专利保护范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围之内。

Claims (8)

1.一种终端启动装置,其特征在于,所述装置包括缓存设置单元、启动代码存储单元、启动代码加载单元、缓存单元和处理单元;
所述启动代码存储单元用于存储启动代码;
所述缓存设置单元用于将缓存单元的缓存地址映射到总线;
所述启动代码加载单元用于将启动代码从启动代码存储单元加载至缓存单元中;
所述处理单元用于执行缓存单元中的启动代码,启动终端。
2.如权利要求1所述的终端启动装置,其特征在于,所述处理单元还用于发送使能信号至缓存单元,所述缓存单元用于接收使能信号,开始执行高速缓存功能。
3.如权利要求1所述的终端启动装置,其特征在于,所述缓存单元为cache。
4.如权利要求1所述的终端启动装置,其特征在于,所述启动代码存储单元包括SDCard、eMMc、Norflash存储单元。
5.一种终端启动方法,其特征在于,所述方法应用于终端启动装置,所述装置包括缓存设置单元、启动代码存储单元、启动代码加载单元、缓存单元和处理单元;所述方法包括以下步骤:
启动代码存储单元存储启动代码;
缓存设置单元将缓存单元的缓存地址映射到总线;
启动代码加载单元将启动代码从启动代码存储单元加载至缓存单元中;
处理单元执行缓存单元中的启动代码,启动终端。
6.如权利要求5所述的终端启动方法,其特征在于,所述方法还包括:
处理单元发送使能信号至缓存单元,缓存单元接收使能信号,开始执行高速缓存功能。
7.如权利要求5所述的终端启动方法,其特征在于,所述缓存单元为cache。
8.如权利要求5所述的终端启动方法,其特征在于,所述启动代码存储单元包括SDCard、eMMc、Norflash存储单元。
CN201610326339.XA 2016-05-17 2016-05-17 一种终端启动方法和装置 Pending CN106020879A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610326339.XA CN106020879A (zh) 2016-05-17 2016-05-17 一种终端启动方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610326339.XA CN106020879A (zh) 2016-05-17 2016-05-17 一种终端启动方法和装置

Publications (1)

Publication Number Publication Date
CN106020879A true CN106020879A (zh) 2016-10-12

Family

ID=57098204

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610326339.XA Pending CN106020879A (zh) 2016-05-17 2016-05-17 一种终端启动方法和装置

Country Status (1)

Country Link
CN (1) CN106020879A (zh)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1946210A (zh) * 2006-10-17 2007-04-11 青岛海信移动通信技术股份有限公司 开机快速启动并显示的td-scdma手机及其实现方法
US20090282139A1 (en) * 2008-05-09 2009-11-12 International Business Machines Corporation Emulating A Computer Run Time Environment
CN103150288A (zh) * 2013-03-14 2013-06-12 福州瑞芯微电子有限公司 一种快速开机的soc芯片及其实现方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1946210A (zh) * 2006-10-17 2007-04-11 青岛海信移动通信技术股份有限公司 开机快速启动并显示的td-scdma手机及其实现方法
US20090282139A1 (en) * 2008-05-09 2009-11-12 International Business Machines Corporation Emulating A Computer Run Time Environment
CN103150288A (zh) * 2013-03-14 2013-06-12 福州瑞芯微电子有限公司 一种快速开机的soc芯片及其实现方法

Similar Documents

Publication Publication Date Title
CN102799456B (zh) 一种游戏引擎加载资源文件的方法、装置和计算机
US20140129814A1 (en) Method and device, terminal and computer readable medium for accelerating startup of operating system
TW202016815A (zh) 一種並行化執行區塊鏈交易的方法、裝置及系統
US20190026246A1 (en) On-chip data partitioning read-write method, system, and device
CN107341115B (zh) 虚拟机内存访问方法、系统和电子设备
US9977598B2 (en) Electronic device and a method for managing memory space thereof
CN111913955A (zh) 数据的排序处理装置、方法和存储介质
CN103810020A (zh) 虚拟机弹性伸缩方法及装置
CN103927193B (zh) Java应用程序函数迁移运行时的加载方法、服务端虚拟机
CN104572568A (zh) 读锁操作方法、写锁操作方法及系统
CN103995748A (zh) 智能终端的任务处理方法及系统
CN103218312A (zh) 文件访问方法及系统
CN103984781A (zh) 一种网页加载方法及装置
JP2021089704A (ja) データ照会方法、装置、電子機器、可読記憶媒体、及びコンピュータープログラム
CN106055294A (zh) 一种图层合成优化方法和装置
CN108021405A (zh) 一种soc系统启动过程中存储介质的驱动方法和装置
CN104050001A (zh) 基于Android系统的资源处理方法、装置和设备
CN110652728B (zh) 一种游戏资源管理方法、装置、电子设备及存储介质
CN111949681A (zh) 数据的聚合处理装置、方法和存储介质
CN104850516A (zh) 一种ddr变频设计方法和装置
US20240005446A1 (en) Methods, systems, and non-transitory storage media for graphics memory allocation
CN106020879A (zh) 一种终端启动方法和装置
CN115878510A (zh) 一种页表的修改方法、验证方法、装置及电子设备
CN106991058B (zh) 预取文件处理方法及装置
CN108334317A (zh) 图形引擎、图形引擎构建方法、更新方法及装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20161012