CN102866896B - 基于单存储器的嵌入式设备的启动系统 - Google Patents
基于单存储器的嵌入式设备的启动系统 Download PDFInfo
- Publication number
- CN102866896B CN102866896B CN201110186989.6A CN201110186989A CN102866896B CN 102866896 B CN102866896 B CN 102866896B CN 201110186989 A CN201110186989 A CN 201110186989A CN 102866896 B CN102866896 B CN 102866896B
- Authority
- CN
- China
- Prior art keywords
- kernel
- memory
- embedded device
- single type
- initialization
- 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.)
- Expired - Fee Related
Links
- 230000015654 memory Effects 0.000 title claims abstract description 77
- 230000000977 initiatory effect Effects 0.000 claims abstract description 11
- 230000002093 peripheral effect Effects 0.000 claims abstract description 7
- 238000000034 method Methods 0.000 claims description 11
- 230000007704 transition Effects 0.000 claims description 4
- 230000006870 function Effects 0.000 abstract description 6
- 238000010586 diagram Methods 0.000 description 10
- 230000008859 change Effects 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 5
- 230000008569 process Effects 0.000 description 5
- 230000000694 effects Effects 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 230000006837 decompression Effects 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Landscapes
- Stored Programmes (AREA)
Abstract
本发明提供一种基于单存储器的嵌入式设备的启动系统,其至少包括:中央处理器,系统总线,外围总线设备,以及一单类型存储器,其中,所述单类型存储器通过所述系统总线与所述中央处理器连接,所述单类型存储器划分有启动程序存储区、内核存储区、文件系统存储区、以及系统RAM区,以使所述嵌入式设备在常规和XIP的两种启动模式下执行启动作业,进而可实现存储空间的共享,根据需求可以调整各个存储区的大小,便于实现软件升级及嵌入式设备的高效运行;同时可简化CPU接口,节约I/O引脚数量,在一些应用中甚至可以使用不带DRAM控制器的CPU以达到节约成本的目的。
Description
技术领域
本发明涉及一种嵌入式操作系统存储器领域,特别是涉及一种基于单存储器的嵌入式设备可以在常规和XIP的两种启动模式下的启动系统。
背景技术
嵌入式系统是以应用为中心、以计算机技术为基础、软件硬件可裁剪、适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。随着嵌入式技术及半导体存储器技术的飞速发展,消费者对嵌入式产品的系统尺寸、启动速度、运行实时性、功耗等各方面提出来更高的要求。因此,简化嵌入式操作系统的启动引导过程、缩短启动时间、降低系统功耗对嵌入式产品的赢得市场地位具有十分重要的意义。
一个嵌入式系统从软件角度看可以分为四个部分,请参阅图1,显示为传统的嵌入式设备的启动系统架构示意图,如图所示,所述传统的嵌入式设备的启动系统1包括CPU控制器11,系统总线12、外围总线设备13、NOR Flash存储器14、NAND Flash存储器15,易失性DRAM16组成,所述的嵌入式操作系统1在正常启动过程可以分为以下四个阶段:
(1)上电/复位:片内固件运行,进行启动方式选择;当选择从Flash启动时,加载并开始执行引导加载程序;
(2)引导加载程序的引导装载过程:硬件设备初始化,建立内存空间映射,解压内核映像文件并跳转到内核映像入口;
(3)内核:内核初始化,搜索设备和安装驱动,挂载根文件系统;
(4)用户空间:从文件系统中启动init程序初始化和启动图形界面,应用程序初始化等。
由上可知,所述的嵌入式操作系统1采用了NOR+NAND+DRAM混合类型存储器结构,具体是指,采用非易失的NOR Flash存储器14来存储启动程序代码,采用NAND Flash存储器15存储代码(操作系统和应用软件)和数据,采用易失性DRAM16存储执行代码时的变量和数据结构。在嵌入式设备启动运行时,需要将操作系统和应用软件都映射到DRAM中执行,这种技术降低了系统的运行速度同时增加了对DRAM的需求,因此增加了系统成本和功耗。再者,由于NAND Flash存储器15采用块操作模式,不支持XIP启动模式和随机存取。
经过实验研究证明,发明人发现造成嵌入式系统的启动缓慢主要原因在于:呈如图2显示的传统嵌入式设备的常规启动方式所示,所述嵌入式系统启动时,由所述NAND Flash存储器15到所述易失性DRAM16内核映像的拷贝解压过程中耗费了大量时间,以及内核加载文件系统时对文件系统的根文件系统进行解压、挂载,拷贝、解压也浪费了很长时间。同时,常规的嵌入式系统采用混合的多种类型的存储器构建嵌入式存储系统,混合类型的存储器系统在使用时带来一定的局限性,同时在存储系统的管理、控制方面也相对复杂。
因而,如何提供一种新型的非挥发性存储器作为嵌入式设备的存储系统,并基于该存储系统实现设备的两种启动模式,实已成本本领域从业者亟待解决的问题。
发明内容
鉴于以上所述现有技术的缺点,本发明的目的在于提供一种基于单存储器的嵌入式设备的启动系统,不但可以实现常规启动及基于XIP两种启动模式,还可实现存储空间的共享,根据需求可以调整各个存储区的大小,便于软件升级及嵌入式设备的高效运行,以及能够简化CPU接口,节约I/O引脚数量,甚至可以在一些应用中使用不带DRAM控制器的CPU,以达到节约成本的目的。
为实现上述目的及其他相关目的,本发明提供一种基于单存储器的嵌入式设备的启动系统,其特征在于,至少包括:中央处理器,系统总线,外围总线设备,以及一单类型存储器,其中,所述单类型存储器通过所述系统总线与所述中央处理器连接,所述单类型存储器划分有启动程序存储区、内核存储区、文件系统存储区、以及系统RAM区,以使所述嵌入式设备在常规和XIP的两种启动模式下执行启动作业。
在本发明的基于单存储器的嵌入式设备的启动系统中,所述单类型存储器为单一类型的非挥发随机存储器,具体地,所述单一类型的非挥发随机存储器为相变存储器、阻变存储器、磁存储器、或铁电存储器其中之一者。
本发明的基于单存储器的嵌入式设备的启动系统,在常规启动模式下,所述嵌入式设备上电或复位之后,首先执行所述启动程序存储区的引导程序,以初始化所述嵌入式设备的硬件,然后把所述内核存储区压缩的内核映像拷贝到所述系统RAM区中解压并跳转到内核映像的入口,接着进行内核初始化,内核程序搜索系统设备驱动并加载所述文件系统存储区的文件系统,最后从文件系统中启动初始化程序初始化和启动界面,应用程序初始化,内核执行过程中所述中央处理器将代码段、数据段、及堆栈的寄存器指针同时指向位于所述系统RAM区中的内核拷贝区域,以执行所述嵌入式设备的启动作业。
本发明的基于单存储器的嵌入式设备的启动系统,在XIP启动模式下,所述嵌入式设备上电或复位之后,直接基于所述内核存储区进行内核初始化,把需要写操作的数据段拷贝到所述系统RAM区,并进行内核运行的硬件环境初始化作业,内核执行过程中所述中央处理器将代码段及数据段寄存器指针同时指向所述内核存储区,以执行所述嵌入式设备的启动作业。
如上所述,本发明的基于单存储器的嵌入式设备的启动系统,与现有技术相比,具有的有益以下效果:
1,实现存储空间共享:基于单一类型的非挥发的随机访问存储器构造嵌入式设备存储系统,可实现存储空间的共享,根据需求可以调整各个存储区的大小,便于软件升级、内核更新、文件系统更新以及获得较大的系统RAM区实现嵌入式设备的高效运行。
2,采用单一存储器可简化CPU接口,节约I/O引脚数量,在一些应用中甚至可以使用不带DRAM控制器的CPU,以达到节约成本的目的。
3,系统高效、低功耗:系统中采用的新型的非挥发性的随机访问存储器作为程序存储器时,数据写入不需要按块擦除过程,数据写速度比FLASH闪存快;作为数据存储器时无需周期供电动态刷新保存数据。
4,启动时间加快:可支持基于XIP模式启动模式,节省了解压缩和拷贝代码段的时间,节省了代码段占用的系统RAM存储空间。
附图说明
图1显示为传统的嵌入式设备的启动系统架构示意图。
图2显示为传统嵌入式设备的常规启动方式示意图。
图3显示为本发明的基于单存储器的嵌入式设备的启动系统架构示意图。
图4显示为本发明的嵌入式设备在常规模式下的启动方式示意图。
图5显示为本发明的嵌入式设备在XIP模式下的启动方式示意图。
具体实施方式
以下通过特定的具体实例说明本发明的实施方式,本领域技术人员可由本说明书所揭示的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在不背离本发明的精神下进行各种修饰或改变。
请参阅图3,显示为本发明的基于单存储器的嵌入式设备的启动系统架构示意图。需要说明的是,本实施例中所提供的图示仅以示意方式说明本发明的基本构想,遂图式中仅显示与本发明中有关的组件而非按照实际实施时的组件数目、形状及尺寸绘制,其实际实施时各组件的型态、数量及比例可为一种随意的改变,且其组件布局型态也可能更为复杂。
如图3所示,本发明提供一种基于单存储器的嵌入式设备的启动系统2,其至少包括:中央处理器(CPU)21,系统总线(Bus)22,外围总线设备23,以及一个单类型存储器24。于本实施方式中,需要说明的是,因所述中央处理器21在工作时需要与外围总线设备23通过系统总线22进行数据、命令的交换的技术为本领域技术人员所熟知,故在本实施方式中,对所述外围总线设备23的原理及功效不再赘述。
所述单类型存储器24通过所述系统总线22与所述中央处理器连接21,所述单类型存储器24划分有启动程序存储区241、内核存储区242、文件系统存储区243、以及系统RAM区244,以使所述嵌入式设备在常规和XIP的两种启动模式下执行启动作业。
需要说明的是,在本发明揭示的实施方式中,所述单类型存储器24为单一类型的非挥发随机存储器,具体地,所述单一类型的非挥发随机存储器包括但不限于相变存储器(PCRAM,Phase Change Random Access Memory)、阻变存储器(R-RAM)、磁存储器(MRAM,MagneticRandom Access Memory)、铁电存储器(FeRAM)等存储器。在本实施方式中,所述单类型存储器24暂以相变存储器(PCRAM,Phase Change Random Access Memory)为例进行说明。
在本发明的启动系统,基于单一存储器类型的嵌入式设备可实现两种模式:即常规启动模式和基于XIP模式启动。下面将分别详述在本发明的启动系统在上述两种模式下的启动过程。
请参阅图4,显示为本发明的嵌入式设备在常规模式下的启动方式示意图。如图所示,在常规启动模式下,所述嵌入式设备上电或复位之后,首先执行所述启动程序存储区241的引导程序(Bootloader),以初始化所述嵌入式设备的例如内存等硬件,然后把所述内核存储区242压缩的内核(Kernel)映像拷贝到所述系统RAM区244中解压并跳转到内核映像的入口,接着进行内核初始化,内核程序搜索系统设备驱动并加载所述文件系统存储区243的文件系统(Rootfs),最后从文件系统中启动初始化程序(init程序)初始化和启动界面,应用程序初始化,内核执行过程中所述中央处理器将代码段(CS)、数据段(DS)、及堆栈(SS)的寄存器指针同时指向位于所述系统RAM区244中的内核拷贝区域(Kernel),以执行所述嵌入式设备的启动作业。
由上可知,基于单类型存储器的嵌入式设备的常规启动与传统嵌入式设备的常规启动相比较,其优势在于存储空间共享,根据需求可以调整各个存储区的大小便于软件升级、内核更新、文件系统更新以及获得较大的系统RAM区实现嵌入式设备的高效运行。
请参阅图5,显示为本发明的嵌入式设备在XIP模式下的启动方式示意图。如图所示,在XIP启动模式下,所述嵌入式设备上电或复位之后,所述启动程序存储区241的引导程序(Bootloader)不需要从内核存储区242拷贝内核映像到系统RAM区244,而是直接在内核存储区242执行内核(Kernel)初始化,内核运行程序把需要读写操作的数据段拷贝到所述系统RAM区244,并进行内核运行的硬件环境初始化作业,具体是指进行片级初始化、板级初始化等内核运行的硬件环境初始化工作,最后是根据内核参数执行内核各个子系统的初始化。内核执行过程中所述中央处理器21将代码段(CS)及数据段(DS)的指针同时指向所述内核存储区242,以执行所述嵌入式设备的启动作业。
由上可知,基于单类型存储器的嵌入式设备的XIP启动方式其优势在于设备启动过程中系统既节省了解压缩和拷贝代码段的时间,又节省了代码段(CS)占用系统RAM的存储空间。基于单一存储器类型的嵌入式设备的XIP启动方式与传统嵌入式设备的启动方式相比较,其优势除了共享存储空间的优势外,内核(Kernel)执行过程中央处理器21的代码段、数据段指针同时指向内核存储区,提高了内核(Kernel)执行效率的同时节省占用系统RAM的存储空间。
综上所述,本发明的启动系统中应用同时划分有启动程序存储区、内核存储区、文件系统存储区、以及系统RAM区的单类型存储器,以使所述嵌入式设备在常规和XIP的两种启动模式下执行启动作业,进而可实现存储空间的共享,根据需求可以调整各个存储区的大小,便于实现软件升级及嵌入式设备的高效运行;同时可简化CPU接口,节约I/O引脚数量,在一些应用中甚至可以使用不带DRAM控制器的CPU以达到节约成本的目的。所以,本发明有效克服了现有技术中的种种缺点而具高度产业利用价值。
上述实施例仅例示性说明本发明的原理及其功效,而非用于限制本发明。任何熟悉此技术的人士皆可在不违背本发明的精神及范畴下,对上述实施例进行修饰或改变。因此,举凡所属技术领域中具有通常知识者在未脱离本发明所揭示的精神与技术思想下所完成的一切等效修饰或改变,仍应由本发明的权利要求所涵盖。
Claims (3)
1.一种基于单存储器的嵌入式设备的启动系统,其特征在于,至少包括:中央处理器,系统总线,外围总线设备,以及一单类型存储器,其中,所述单类型存储器通过所述系统总线与所述中央处理器连接,所述单类型存储器划分有启动程序存储区、内核存储区、文件系统存储区、以及系统RAM区,以使所述嵌入式设备在常规和XIP的两种启动模式下执行启动作业;
在常规启动模式下,所述嵌入式设备上电或复位之后,首先执行所述启动程序存储区的引导程序,以初始化所述嵌入式设备的硬件,然后把所述内核存储区压缩的内核映像拷贝到所述系统RAM区中解压并跳转到内核映像的入口,接着进行内核初始化,内核程序搜索系统设备驱动并加载所述文件系统存储区的文件系统,最后从文件系统中启动初始化程序初始化和启动界面,应用程序初始化,内核执行过程中所述中央处理器将代码段、数据段、及堆栈的寄存器指针同时指向位于所述系统RAM区中的内核拷贝区域,以执行所述嵌入式设备的启动作业;
在XIP启动模式下,所述嵌入式设备上电或复位之后,直接基于所述内核存储区进行内核初始化,把需要写操作的数据段拷贝到所述系统RAM区,并进行内核运行的硬件环境初始化作业,内核执行过程中所述中央处理器将代码段及数据段寄存器指针同时指向所述内核存储区,以执行所述嵌入式设备的启动作业。
2.根据权利要求1所述的基于单存储器的嵌入式设备的启动系统,其特征在于:所述单类型存储器为单一类型的非挥发随机存储器。
3.根据权利要求2所述的基于单存储器的嵌入式设备的启动系统,其特征在于:所述单一类型的非挥发随机存储器为相变存储器、阻变存储器、磁存储器、或铁电存储器其中之一者。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110186989.6A CN102866896B (zh) | 2011-07-05 | 2011-07-05 | 基于单存储器的嵌入式设备的启动系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110186989.6A CN102866896B (zh) | 2011-07-05 | 2011-07-05 | 基于单存储器的嵌入式设备的启动系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102866896A CN102866896A (zh) | 2013-01-09 |
CN102866896B true CN102866896B (zh) | 2015-08-26 |
Family
ID=47445778
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201110186989.6A Expired - Fee Related CN102866896B (zh) | 2011-07-05 | 2011-07-05 | 基于单存储器的嵌入式设备的启动系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102866896B (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103136025B (zh) * | 2013-02-04 | 2016-08-03 | 深圳市硅格半导体有限公司 | 多级加载程序的方法和装置 |
CN106951392A (zh) * | 2013-11-12 | 2017-07-14 | 上海新储集成电路有限公司 | 一种具有自学习功能的快速启动低功耗计算机片上系统 |
CN103955389B (zh) * | 2014-05-06 | 2017-09-29 | 中国科学院微电子研究所 | 一种基于pcm的系统启动方法 |
CN105630535A (zh) * | 2015-05-29 | 2016-06-01 | 上海磁宇信息科技有限公司 | 一种计算系统及启动系统的方法 |
CN108255524A (zh) * | 2016-12-28 | 2018-07-06 | 中科创达软件股份有限公司 | 一种开机Logo显示方法、装置及嵌入式设备 |
CN108804221B (zh) * | 2018-04-11 | 2020-09-11 | 百富计算机技术(深圳)有限公司 | 基于xip方式的嵌入式系统及其资源优化方法 |
CN112632562B (zh) * | 2020-12-28 | 2024-01-26 | 四川虹微技术有限公司 | 设备启动方法、设备管理方法和嵌入式设备 |
CN114385255B (zh) * | 2022-01-13 | 2023-11-21 | 深圳市捷诚技术服务有限公司 | Pos机的控制方法、系统、装置以及计算可读介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101329632A (zh) * | 2008-04-30 | 2008-12-24 | 中兴通讯股份有限公司 | 一种使用boot启动cpu的方法与装置 |
CN101826027A (zh) * | 2010-05-28 | 2010-09-08 | 深圳市融创天下科技发展有限公司 | 一种嵌入式系统及其升级方法 |
-
2011
- 2011-07-05 CN CN201110186989.6A patent/CN102866896B/zh not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101329632A (zh) * | 2008-04-30 | 2008-12-24 | 中兴通讯股份有限公司 | 一种使用boot启动cpu的方法与装置 |
CN101826027A (zh) * | 2010-05-28 | 2010-09-08 | 深圳市融创天下科技发展有限公司 | 一种嵌入式系统及其升级方法 |
Also Published As
Publication number | Publication date |
---|---|
CN102866896A (zh) | 2013-01-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102866896B (zh) | 基于单存储器的嵌入式设备的启动系统 | |
US10296217B2 (en) | Techniques to configure a solid state drive to operate in a storage mode or a memory mode | |
US10210012B2 (en) | Techniques for persistent memory virtualization | |
US20140063026A1 (en) | Soc performing dynamic voltage and frequency scaling policies using 3d workload, and method using the same | |
US20180018583A1 (en) | Electronics device performing software training on memory channel and memory channel training method thereof | |
CN107636618B (zh) | 在具有嵌入式可编程数据检查的非易失性系统存储器计算系统中的即时重启 | |
US9588915B2 (en) | System on chip, method of operating the same, and apparatus including the same | |
US20190042414A1 (en) | Nvdimm emulation using a host memory buffer | |
KR20120031971A (ko) | 비-휘발성 메모리를 구비한 시스템에 대한 전력 예산의 동적 할당 | |
US11693466B2 (en) | Application processor and system on chip | |
KR20170027125A (ko) | 컴퓨팅 시스템 및 컴퓨팅 시스템에서 연산들을 처리하는 방법 | |
US9652152B2 (en) | Efficient decompression locality system for demand paging | |
US11908039B2 (en) | Graphics rendering method and apparatus, and computer-readable storage medium | |
KR102222752B1 (ko) | 프로세서의 동적 전압 주파수 스케일링 방법 | |
US11030095B2 (en) | Virtual space memory bandwidth reduction | |
US10140677B2 (en) | Graphics processing unit and device employing tessellation decision | |
KR20200108774A (ko) | 순환 큐 기반의 명령어 메모리를 포함하는 메모리 장치 및 그 동작방법 | |
US11474710B2 (en) | Application-specific memory scaling in multi-device systems | |
KR102653373B1 (ko) | 컨트롤러 및 컨트롤러의 동작방법 | |
US12020065B2 (en) | Hierarchical processor selection | |
CN114647446A (zh) | 存储级存储装置、计算机模块及服务器系统 | |
US20230004318A1 (en) | Systems and methods for reordering data in a storage device based on data access patterns | |
US11782746B2 (en) | Memory system and operating method thereof | |
US9766875B2 (en) | Multimedia data processing method in general purpose programmable computing device and data processing system according to the multimedia data processing method | |
CN113448880A (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 | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20150826 |