CN114090086A - 一种基于ZynqMP平台嵌入式操作系统快速启动方法 - Google Patents

一种基于ZynqMP平台嵌入式操作系统快速启动方法 Download PDF

Info

Publication number
CN114090086A
CN114090086A CN202111397849.3A CN202111397849A CN114090086A CN 114090086 A CN114090086 A CN 114090086A CN 202111397849 A CN202111397849 A CN 202111397849A CN 114090086 A CN114090086 A CN 114090086A
Authority
CN
China
Prior art keywords
operating system
core
apu
starting
platform
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.)
Granted
Application number
CN202111397849.3A
Other languages
English (en)
Other versions
CN114090086B (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.)
Xian Microelectronics Technology Institute
Original Assignee
Xian Microelectronics Technology Institute
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 Xian Microelectronics Technology Institute filed Critical Xian Microelectronics Technology Institute
Priority to CN202111397849.3A priority Critical patent/CN114090086B/zh
Publication of CN114090086A publication Critical patent/CN114090086A/zh
Application granted granted Critical
Publication of CN114090086B publication Critical patent/CN114090086B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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/4401Bootstrapping
    • G06F9/4406Loading of operating system
    • 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/4401Bootstrapping
    • G06F9/4418Suspend and resume; Hibernate and awake
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

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

Abstract

本发明公开了一种基于ZynqMP平台嵌入式操作系统快速启动方法,系统板上电后,同时加载操作系统和平台管理单元固件,平台管理单元固件对副核上电完成后进入低功耗的待唤醒状态,利用操作系统操作执行唤醒指令对副核进行唤醒,副核根据唤醒指令上电执行指令,跳转至多核状态,实现多核启动。本发明通过操作系统和平台管理单元固件单独加载完成进入各自操作环境中,然后利用操作系统根据唤醒指令对副核唤醒加载,进入多核模式,利用操作系统直接唤醒副核加载进入多核启动,避免了运行时服务加载启动,减少了启动项,简化了操作系统启动的流程,使代码易于维护和移植,加快了整个系统启动的速度。

Description

一种基于ZynqMP平台嵌入式操作系统快速启动方法
技术领域
本发明属于通信控制操控领域,具体涉及一种基于ZynqMP(Zynq UltraScale+MPSoc)平台嵌入式操作系统快速启动方法,适用于基于ZynqMP对实时性要求高的弹载控制类、无线通信、5G部署等领域操作系统的快速启动。
背景技术
嵌入式操作系统的启动技术是控制系统的关键技术,其中系统启动时间是影响产品性能的关键指标。对于新一代ZynqMP系列芯片,因为考虑整体设备运行稳定性,在引导操作系统启动时,要同时加载6个启动项,操作系统多核启动采用的是SMC(secure monitorcall)指令,对操作系统要求比较高,操作系统启动方式中启动项多,启动流程繁杂,并且导致启动耗时久,影响了产品的实用性能和效率。
发明内容
本发明的目的在于提供一种基于ZynqMP平台嵌入式操作系统快速启动方法,以克服现有技术的不足。
一种基于ZynqMP平台嵌入式操作系统快速启动方法,包括以下步骤:
S1,系统板上电后,同时加载操作系统和平台管理单元固件;
S2,操作系统和平台管理单元固件加载完成后,平台管理单元固件对副核上电完成后进入低功耗的待唤醒状态,利用操作系统执行唤醒指令对副核进行唤醒,跳转至多核状态,实现多核启动。
进一步的,采用APU core0加载并运行fsbl,fsbl对硬件系统进行初始化,并加载平台管理固件和操作系统到内存,平台管理单元固件对副核上电完成后进入低功耗的待唤醒状态。
进一步的,采用wfe指令控制上电完成后的副核进入低功耗的待唤醒状态。
进一步的,操作系统利用set指令唤醒副核进入多核模式。
进一步的,副核被唤醒后,副核的运行地址被指定为操作系统的入口地址。
进一步的,操作系统加载完成后配置APU寄存器。
进一步的,利用APU core0开始运行fsbl后,对APU-a53处理器的核号进行核对,根据APU-a53处理器的核号运行相应的操作。
进一步的,fsbl对APU配置寄存器的值是否为指定值进行判断。
进一步的,若当前运行的APU-a53核号是core0,则对fsbl对硬件系统进行初始化后,并加载平台管理固件和操作系统到内存。
进一步的,若当前运行的APU-a53核号是core1/2/3,当平台管理固件给副核加电后,副核则执行wfe指令,副核进入休眠状态,等待操作系统端发起set指令进行唤醒;如果是一次成功的唤醒,跳转到操作系统入口地址,进入多核状态;如果不是,则认为这是一次错误的唤醒,继续进入休眠状态,等待唤醒。
与现有技术相比,本发明具有以下有益的技术效果:
本发明一种基于ZynqMP平台嵌入式操作系统快速启动方法,系统板上电后,同时加载操作系统和平台管理单元固件,平台管理单元固件对副核上电完成后进入低功耗的待唤醒状态,利用操作系统操作执行唤醒指令对副核进行唤醒,副核根据唤醒指令上电执行指令,跳转至多核状态,实现多核启动。本发明通过操作系统和平台管理单元固件单独加载完成进入各自操作环境中,然后利用操作系统根据唤醒指令对副核唤醒加载,进入多核模式,利用操作系统直接唤醒副核加载进入多核启动,避免了运行时服务加载启动,减少了启动项,简化了操作系统启动的流程,使代码易于维护和移植,加快了整个系统启动的速度。
进一步的,使用wfe和set指令,简化了启动流程,使代码易于维护和移植。
附图说明
图1为本发明实施例中快速启动系统原理图。
图2为本发明实施例中快速启动流程图。
图3为本发明实施例中采用本发明方法针对骊山九天系统操作进行启动结果示意图。
图4为本发明实施例中采用现有方法针对骊山九天系统操作进行启动结果示意图。
具体实施方式
下面结合附图对本发明做进一步详细描述:
如图1所示,一种基于ZynqMP平台嵌入式操作系统快速启动方法,包括以下步骤:
S1,系统板上电后,同时加载操作系统和平台管理单元固件(Plaformmanagementunitfirmware,pmufw);
具体的,系统板上电后,采用APU core0加载并运行fsbl(firststagebootloader),fsbl对硬件系统进行初始化后,并加载平台管理固件和操作系统到内存。
S2,操作系统和平台管理单元固件加载完成后,平台管理单元固件对副核上电完成后进入低功耗的待唤醒状态,利用操作系统执行唤醒指令对副核进行唤醒,副核接收到唤醒指令被唤醒后,跳转至多核状态,实现多核启动。本发明通过操作系统和平台管理单元固件单独加载完成进入各自操作环境中,然后利用操作系统根据唤醒指令对副核唤醒加载,进入多核模式,利用操作系统直接唤醒副核加载进入多核启动,避免了运行时服务加载启动,减少了启动项,简化了操作系统启动的流程,使代码易于维护和移植,加快了整个系统启动的速度。
具体的,采用wfe指令控制上电完成后的副核进入低功耗的待唤醒状态;操作系统利用set指令唤醒副核进入多核模式。副核被唤醒后,副核的运行地址被指定为操作系统的入口地址,进入多核模式。
具体,如图2所示,本申请操作系统采用加速处理器为APU-a53,利用APU-a53开始运行时,对加速处理器核号进行核对,根据APU-a53加载的核号运行相应的操作。
若当前运行的APU-a53核号是core0(主核),则对fsbl对硬件系统进行初始化,此时初步启动处于完成状态,然后同步加载平台管理单元固件和多核操作系统。
若当前运行的APU-a53核号是core1/2/3(副核),当平台管理固件给副核加电后,副核则执行wfe指令,副核进入休眠状态,等待操作系统端发起set指令进行唤醒;如果是一次成功的唤醒,跳转到操作系统入口地址,进入多核状态;如果不是,则认为这是一次错误的唤醒,继续进入休眠状态,等待唤醒。
寄存器是全局的一个寄存器,APU core 0/1/2/3都可以访问,APU core0在将操作系统启动后,配置该寄存器,而处于休眠状态的APU core 1/2/3在被唤醒后,通过判断该寄存器,来判断是否是一次正确的唤醒,如果是,则进入操作系统多核模式,否则继续休眠。
平台管理单元固件对APU配置寄存器的值是否为指定值进行判断:
如果APU配置寄存器的值不是指定值,则平台管理单元固件一直等待唤醒指令。
本发明提出的基于ZynqMP平台嵌入式操作系统快速启动方法的流程如图2所示,利用现有方法及本发明方法分别针对骊山九天操作系统(LSOS)操作进行启动:首先分别配置APU-a53 core1/2/3对应APU配置寄存器;然后通过set指令,唤醒在fsbl阶段等待唤醒的APU-a53 core1/2/3;至此操作系统成功进入多核模式,完成骊山九天操作系统在多核模式下的启动。利用本发明方法,从加电到骊山九天操作系统启动成功总共耗时472ms;其中,fsbl阶段耗时158ms,操作系统启动耗时314ms(如图3所示);而采用现有启动方法,从系统加电到骊山九天操作系统启动成功总共耗时3464ms,其中fsbl耗时230ms,bl31耗时10ms,u-boot耗时2897ms(图4中u-boot是7897ms,但是这是加入5s倒计时时间的,所以u-boot实际耗时2897ms),骊山九天系统启动耗时327ms。由此可见,本发明方法有效提高了整个系统启动的速度,系统的启动更为简单快速,能更好的满足实时性要就较高的产品需求。

Claims (10)

1.一种基于ZynqMP平台嵌入式操作系统快速启动方法,其特征在于,包括以下步骤:
S1,系统板上电后,同时加载操作系统和平台管理单元固件;
S2,操作系统和平台管理单元固件加载完成后,平台管理单元固件对副核上电完成后进入低功耗的待唤醒状态,利用操作系统执行唤醒指令对副核进行唤醒,跳转至多核状态,实现多核启动。
2.根据权利要求1所述的一种基于ZynqMP平台嵌入式操作系统快速启动方法,其特征在于,采用APU core0加载并运行fsbl,fsbl对硬件系统进行初始化后,并加载平台管理固件和操作系统到内存。
3.根据权利要求1所述的一种基于ZynqMP平台嵌入式操作系统快速启动方法,其特征在于,采用wfe指令控制上电完成后的副核进入低功耗的待唤醒状态。
4.根据权利要求1所述的一种基于ZynqMP平台嵌入式操作系统快速启动方法,其特征在于,操作系统利用set指令唤醒副核进入多核模式。
5.根据权利要求4所述的一种基于ZynqMP平台嵌入式操作系统快速启动方法,其特征在于,副核被唤醒后,副核的运行地址被指定为操作系统的入口地址,进入多核模式。
6.根据权利要求1所述的一种基于ZynqMP平台嵌入式操作系统快速启动方法,其特征在于,操作系统加载完成后配置APU寄存器。
7.根据权利要求6所述的一种基于ZynqMP平台嵌入式操作系统快速启动方法,其特征在于,利用APU core0开始运行fsbl后,对APU-a53处理器的核号进行核对,根据APU-a53处理器的核号运行相应的操作。
8.根据权利要求6所述的一种基于ZynqMP平台嵌入式操作系统快速启动方法,其特征在于,fsbl对APU配置寄存器的值是否为指定值进行判断。
9.根据权利要求7所述的一种基于ZynqMP平台嵌入式操作系统快速启动方法,其特征在于,若当前运行的APU-a53核号是core0,则对fsbl对硬件系统进行初始化后,并加载平台管理固件和操作系统到内存。
10.根据权利要求7所述的一种基于ZynqMP平台嵌入式操作系统快速启动方法,其特征在于,若当前运行的APU-a53核号是core1/2/3,当平台管理固件给副核加电后,副核则执行wfe指令,副核进入休眠状态,等待操作系统端发起set指令进行唤醒;如果是一次成功的唤醒,跳转到操作系统入口地址,进入多核状态;如果不是,继续进入休眠状态,等待唤醒。
CN202111397849.3A 2021-11-23 2021-11-23 一种基于ZynqMP平台嵌入式操作系统快速启动方法 Active CN114090086B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111397849.3A CN114090086B (zh) 2021-11-23 2021-11-23 一种基于ZynqMP平台嵌入式操作系统快速启动方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111397849.3A CN114090086B (zh) 2021-11-23 2021-11-23 一种基于ZynqMP平台嵌入式操作系统快速启动方法

Publications (2)

Publication Number Publication Date
CN114090086A true CN114090086A (zh) 2022-02-25
CN114090086B CN114090086B (zh) 2023-05-30

Family

ID=80303538

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111397849.3A Active CN114090086B (zh) 2021-11-23 2021-11-23 一种基于ZynqMP平台嵌入式操作系统快速启动方法

Country Status (1)

Country Link
CN (1) CN114090086B (zh)

Citations (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101464807A (zh) * 2009-01-08 2009-06-24 杭州华三通信技术有限公司 一种应用程序的加载方法及装置
US20090254901A1 (en) * 2008-04-08 2009-10-08 Broadcom Corp. Systems and methods for using operating system (os) virtualisation for minimizing power consumption in mobile phones
CN101604263A (zh) * 2009-07-13 2009-12-16 浪潮电子信息产业股份有限公司 一种实现操作系统核心代码段多副本运行的方法
US20100064154A1 (en) * 2008-09-05 2010-03-11 Broadcom Corporation Operating system (os) virtualisation and processor utilization thresholds for minimizing power consumption in mobile phones
CN102207881A (zh) * 2011-07-07 2011-10-05 电子科技大学 一种基于Android的操作系统快速启动方法
CN102693162A (zh) * 2011-12-29 2012-09-26 中国科学技术大学苏州研究院 基于共享内存和核间中断的多核平台上多个虚拟机之间进程通信方法
US20130073884A1 (en) * 2011-09-19 2013-03-21 Qualcomm Incorporated Dynamic sleep for multicore computing devices
US20140181560A1 (en) * 2012-12-26 2014-06-26 Rajeev D. Muralidhar Platform power consumption reduction via power state switching
CN104050137A (zh) * 2013-03-13 2014-09-17 华为技术有限公司 一种异构操作系统中内核运行的方法及装置
CN106407156A (zh) * 2016-09-23 2017-02-15 深圳震有科技股份有限公司 一个bootrom引导多核cpu启动的方法及系统
US20170364137A1 (en) * 2016-06-21 2017-12-21 Alexander Gendler Processor Having Concurrent Core And Fabric Exit From A Low Power State
CN107807827A (zh) * 2017-10-19 2018-03-16 安徽皖通邮电股份有限公司 一种支持多核cpu多操作系统的方法
CN108701033A (zh) * 2018-05-08 2018-10-23 深圳前海达闼云端智能科技有限公司 客户操作系统唤醒方法、装置、电子设备及可读介质
CN109885343A (zh) * 2019-02-25 2019-06-14 深圳忆联信息系统有限公司 一种控制器低功耗启动方法、装置、计算机设备及存储介质
CN110908724A (zh) * 2019-12-03 2020-03-24 深圳市迅雷网络技术有限公司 一种Android App启动方法及相关组件
CN111694787A (zh) * 2020-04-30 2020-09-22 新华三半导体技术有限公司 一种芯片启动的方法、网络设备和机器可读存储介质
CN112346789A (zh) * 2020-11-06 2021-02-09 中国电子信息产业集团有限公司 双系统休眠及唤醒方法、装置、设备及存储介质
CN112463342A (zh) * 2020-12-14 2021-03-09 北京四方继保工程技术有限公司 一种多核cpu运行模式的平台架构设计方法

Patent Citations (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090254901A1 (en) * 2008-04-08 2009-10-08 Broadcom Corp. Systems and methods for using operating system (os) virtualisation for minimizing power consumption in mobile phones
US20100064154A1 (en) * 2008-09-05 2010-03-11 Broadcom Corporation Operating system (os) virtualisation and processor utilization thresholds for minimizing power consumption in mobile phones
US20120309468A1 (en) * 2008-09-05 2012-12-06 Broadcom Corporation Operating system (os) virtualisation and processor utilization thresholds for minimizing power consumption in mobile phones
CN101464807A (zh) * 2009-01-08 2009-06-24 杭州华三通信技术有限公司 一种应用程序的加载方法及装置
CN101604263A (zh) * 2009-07-13 2009-12-16 浪潮电子信息产业股份有限公司 一种实现操作系统核心代码段多副本运行的方法
CN102207881A (zh) * 2011-07-07 2011-10-05 电子科技大学 一种基于Android的操作系统快速启动方法
US20130073884A1 (en) * 2011-09-19 2013-03-21 Qualcomm Incorporated Dynamic sleep for multicore computing devices
CN102693162A (zh) * 2011-12-29 2012-09-26 中国科学技术大学苏州研究院 基于共享内存和核间中断的多核平台上多个虚拟机之间进程通信方法
US20140181560A1 (en) * 2012-12-26 2014-06-26 Rajeev D. Muralidhar Platform power consumption reduction via power state switching
CN104050137A (zh) * 2013-03-13 2014-09-17 华为技术有限公司 一种异构操作系统中内核运行的方法及装置
US20170364137A1 (en) * 2016-06-21 2017-12-21 Alexander Gendler Processor Having Concurrent Core And Fabric Exit From A Low Power State
CN106407156A (zh) * 2016-09-23 2017-02-15 深圳震有科技股份有限公司 一个bootrom引导多核cpu启动的方法及系统
CN107807827A (zh) * 2017-10-19 2018-03-16 安徽皖通邮电股份有限公司 一种支持多核cpu多操作系统的方法
CN108701033A (zh) * 2018-05-08 2018-10-23 深圳前海达闼云端智能科技有限公司 客户操作系统唤醒方法、装置、电子设备及可读介质
CN109885343A (zh) * 2019-02-25 2019-06-14 深圳忆联信息系统有限公司 一种控制器低功耗启动方法、装置、计算机设备及存储介质
CN110908724A (zh) * 2019-12-03 2020-03-24 深圳市迅雷网络技术有限公司 一种Android App启动方法及相关组件
CN111694787A (zh) * 2020-04-30 2020-09-22 新华三半导体技术有限公司 一种芯片启动的方法、网络设备和机器可读存储介质
CN112346789A (zh) * 2020-11-06 2021-02-09 中国电子信息产业集团有限公司 双系统休眠及唤醒方法、装置、设备及存储介质
CN112463342A (zh) * 2020-12-14 2021-03-09 北京四方继保工程技术有限公司 一种多核cpu运行模式的平台架构设计方法

Also Published As

Publication number Publication date
CN114090086B (zh) 2023-05-30

Similar Documents

Publication Publication Date Title
US10592254B2 (en) Technologies for fast low-power startup of a computing device
US8276009B2 (en) Operating system (OS) virtualisation and processor utilization thresholds for minimizing power consumption in mobile phones
US8205196B2 (en) Systems and methods for using operating system (OS) virtualisation for minimizing power consumption in mobile phones
CN109375954B (zh) 基于蜂窝技术的物联网芯片的控制方法及物联网芯片
US8700936B2 (en) Modular gating of microprocessor low-power mode
US20080098245A1 (en) Power management system and method
US10795422B2 (en) Method and apparatus for mission critical standby of a portable communication drive
CN110568921B (zh) 一种降低芯片功耗的方法
US8984315B2 (en) Method and system for adjusting the operation mode of a multicore data processing device
US7906996B1 (en) System and method for controlling an integrated circuit in different operational modes
CN108377484B (zh) 一种蓝牙控制器功耗控制方法和装置
KR20160121876A (ko) 와이파이시스템의 슬립모드로부터 어웨이크모드로 전환하는 방법
WO2014176893A1 (zh) 移动终端的关机方法及装置
CN114090086B (zh) 一种基于ZynqMP平台嵌入式操作系统快速启动方法
KR20050065394A (ko) 모바일 장치에서의 메모리 전류 누설을 줄이기 위한 방법및 장치
CN112947738A (zh) 一种智能终端电源系统及智能终端待机、唤醒方法
CN102156523A (zh) 电源管理方法及计算机系统
CN112944565A (zh) 室外机唤醒方法、装置以及多联机空调系统
CN107741865B (zh) 一种能自唤醒的待机系统及待机方法
CN115599457B (zh) 一种基于spi接口的从芯片唤醒与启动方法
CN110362351A (zh) 一种低功耗的nbiot应用进程系统的执行方法
CN109753313B (zh) 一种用于唤醒处理器的装置和方法
US20240022237A1 (en) Oscillator control system
CN116243987A (zh) 台式机远程控制方法、系统、设备和可读存储介质
US20130179714A1 (en) Backup power supply circuit and method

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant