CN112306782B - 面向调测试的操作系统内核引导与加载硬件及方法 - Google Patents

面向调测试的操作系统内核引导与加载硬件及方法 Download PDF

Info

Publication number
CN112306782B
CN112306782B CN202011327004.2A CN202011327004A CN112306782B CN 112306782 B CN112306782 B CN 112306782B CN 202011327004 A CN202011327004 A CN 202011327004A CN 112306782 B CN112306782 B CN 112306782B
Authority
CN
China
Prior art keywords
operating system
memory unit
chip
processor core
mode
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
CN202011327004.2A
Other languages
English (en)
Other versions
CN112306782A (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.)
National Defense Technology Innovation Institute PLA Academy of Military Science
Original Assignee
National Defense Technology Innovation Institute PLA Academy of Military Science
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 National Defense Technology Innovation Institute PLA Academy of Military Science filed Critical National Defense Technology Innovation Institute PLA Academy of Military Science
Priority to CN202011327004.2A priority Critical patent/CN112306782B/zh
Publication of CN112306782A publication Critical patent/CN112306782A/zh
Application granted granted Critical
Publication of CN112306782B publication Critical patent/CN112306782B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/2205Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested
    • G06F11/221Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested to test buses, lines or interfaces, e.g. stuck-at or open line faults
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/2205Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested
    • G06F11/2236Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested to test CPU or processors

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

本发明公开了一种面向调测试的操作系统内核引导与加载硬件及方法,本方法通过利用设置的存储单元、外设辅助接口和特殊寄存器,实现并设置四种互为备份且优先级可调整的实时操作系统内核引导和加载模式,根据设定优先级顺序执行四种实时操作系统内核引导和加载模式中的一种或以上,直至完成操作系统内核引导和加载。本发明的面向调测试的操作系统内核引导与加载硬件及方法可以对片上系统设计定型前的系统启动过程进行辅助调测和验证,能够容忍单一途径启动操作系统内核失败时导致的系统状态异常,且可以复用片上系统已有的外设接口,额外硬件开销小。

Description

面向调测试的操作系统内核引导与加载硬件及方法
技术领域
本发明涉及嵌入式片上系统技术领域,尤其涉及一种面向调测试的操作系统内核引导与加载硬件及方法。
背景技术
在嵌入式微处理器和实时操作系统内核工作过程中,引导和加载程序是系统上电启动运行后执行的第一部分代码。引导程序的功能之一是负责将实时操作系统内核复制加载到静态随机存取存储器(Static Random-Access Memory,SRAM)空间,并按初始设置跳转到指定地址启动执行。能否成功完成操作系统内核的引导和加载过程,直接决定了软硬件系统是否可以正常进入后续工作状态。
目前,嵌入式片上系统(System on Chip,SoC)的操作系统内核的引导和加载过程一般依赖于具有特定用途的Boot ROM,启动方式相对单一,且对专用集成电路定制设计能力和工艺技术要求较高,在设计和验证时缺少系统级备份方案,系统健壮性方面存在薄弱环节甚至失败风险。
发明内容
为解决上述现有技术中存在的技术问题,本发明提供一种面向调测试的操作系统内核引导与加载硬件及方法,从硬件框架和操作流程上将启动代码由固定方式转变为互为备份且优先级可配置的多种模式,增强了嵌入式片上系统的调测试工作的鲁棒性与灵活性。
第一方面,本发明公开了一种面向调测试的操作系统内核引导与加载硬件,所述硬件包括:片外闪存单元、FLASH控制器、片上存储器单元、SPI接口、JTAG接口、第一寄存器、第一控制寄存器、第二控制寄存器、片上总线和处理器核;
所述片外闪存单元通过所述FLASH控制器接入所述片上总线,用于保存引导程序和操作系统内核,所述片上存储器单元接入所述片上总线,所述SPI接口和所述JTAG接口分别接入所述片上总线,所述SPI接口与所述片外闪存单元间设置有直连旁路,所述SPI接口和所述JTAG接口能够连接外部上位机,所述上位机能够通过所述SPI接口或所述JTAG接口访问所述片外闪存单元和所述片上存储器单元;所述第一寄存器用于控制所述处理器核从所述片外闪存单元或所述片上存储器单元读取第一条指令,所述第一控制寄存器和所述第二控制寄存器用于控制所述处理器核的取指操作的启动和暂停。
在一些可选的实施方式中,所述片外闪存单元为Flash存储器。
在一些可选的实施方式中,所述片上存储器单元为静态随机存取存储器。
第二方面,本发明还公开了一种面向调测试的操作系统内核引导与加载方法,包括:
设置四种互为备份且优先级可调整的实时操作系统内核引导和加载模式;
根据设定优先级顺序执行四种实时操作系统内核引导和加载模式中的一种或以上,直至完成操作系统内核引导和加载;
其中,执行第一种模式时,处理器核通过FLASH控制器直接访问片外闪存单元中预先烧写的引导程序和操作系统内核,进行自主引导和加载操作系统;执行第二种模式时,利用上位机通过SPI接口将引导程序和操作系统内核烧写至片外闪存单元,处理器核访问片外闪存单元中的引导程序和操作系统内核,进行引导和加载操作系统;执行第三种模式时,利用上位机通过SPI接口将引导程序和操作系统内核烧写至片上存储器单元,处理器核访问片上存储器单元中的引导程序和操作系统内核,进行引导和加载操作系统;执行第四种模式时,利用上位机通过JTAG接口将引导程序和操作系统内核烧写至片上存储器单元,处理器核访问片上存储器单元中的引导程序和操作系统内核,进行引导和加载操作系统。
在一些可选的实施方式中,所述方法还包括:
在执行四种实时操作系统内核引导和加载模式前,将引导程序和操作系统内核预先烧写至片外闪存单元中。
在一些可选的实施方式中,将第一种模式作为默认引导和加载模式,当第一种模式引导异常时,执行第二种模式;当第二种模式引导异常时,执行第三种模式;当第三种模式引导异常时,执行第四种模式。
在一些可选的实施方式中,在执行第一种模式时,处理器核直接从片外闪存单元读取指令,完成操作系统内核引导和加载。
在一些可选的实施方式中,第二种模式包括如下步骤:
S21,使全系统复位;
S22,等待SPI接口和JTAG接口复位;
S23,上位机通过第一控制寄存器暂停处理器核的取指操作;
S24,上位机通过第一控制寄存器将SPI接口旁路直连至片外闪存单元;
S25,上位机通过SPI接口对片外闪存单元进行引导程序烧写和数据校验;
S26,等待处理器核复位;
S27,上位机通过第一控制寄存器启动处理器核取指操作。
在一些可选的实施方式中,第三种模式包括如下步骤:
S31,使全系统复位;
S32,等待SPI接口和JTAG接口复位;
S33,上位机通过第一控制寄存器暂停处理器核的取指操作;
S34,等待处理器核复位;
S35,上位机通过SPI接口对片上存储器单元进行引导程序烧写和数据校验;
S36,上位机通过SPI接口和第一寄存器控制处理器核从片上存储器单元启动;
S37,上位机通过第一控制寄存器启动处理器核取指操作。
在一些可选的实施方式中,第四种模式包括如下步骤:
S41,使全系统复位;
S42,等待SPI接口和JTAG接口复位;
S43,上位机通过第二控制寄存器暂停处理器核的取指操作;
S44,等待处理器核复位;
S45,上位机通过JTAG接口对片上存储器单元进行引导程序烧写和数据校验;
S46,上位机通过JTAG接口和第一寄存器控制处理器核从片上存储器单元启动;
S47,上位机通过第二控制寄存器启动处理器核的取指操作。
本发明技术方案的主要优点如下:
本发明的面向调测试的操作系统内核引导与加载硬件及方法通过利用设置的存储单元、外设辅助接口和特殊寄存器,实现并设置四种互为备份且优先级可调整的操作系统内核引导与加载模式的配置,从而根据设定优先级顺序执行四种实时操作系统内核引导和加载模式中的一种或以上,直至完成操作系统内核引导和加载,可以对片上系统设计定型前的系统启动过程进行辅助调测和验证,能够容忍单一途径启动操作系统内核失败时导致的系统状态异常,且可以复用片上系统已有的外设接口,额外硬件开销小。
附图说明
此处所说明的附图用来提供对本发明实施例的进一步理解,构成本发明的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1为本发明一实施例的面向调测试的操作系统内核引导与加载硬件的示意图;
图2为本发明一实施例的面向调测试的操作系统内核引导与加载方法的流程图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明具体实施例及相应的附图对本发明技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本发明的一部分实施例,而不是全部的实施例。基于本发明的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
以下结合附图,详细说明本发明实施例提供的技术方案。
第一方面,如附图1所示,本发明一实施例提供了一种面向调测试的操作系统内核引导与加载硬件,该硬件包括:片外闪存单元、FLASH控制器、片上存储器单元、SPI接口、JTAG接口、第一寄存器、第一控制寄存器、第二控制寄存器、片上总线和处理器核;片外闪存单元通过FLASH控制器接入片上总线,用于保存引导程序和操作系统内核,片上存储器单元接入片上总线,SPI接口和JTAG接口分别接入片上总线,SPI接口与片外闪存单元间设置有直连旁路,SPI接口和JTAG接口能够连接外部上位机,上位机能够通过SPI接口和/或JTAG接口访问片外闪存单元和片上存储器单元,第一寄存器用于控制处理器核从片外闪存单元或片上存储器单元读取第一条指令,第一控制寄存器和第二控制寄存器用于控制处理器核的取指操作的启动和暂停。
具体地,本发明一实施例中,片外闪存单元用于保存引导程序和操作系统内核,片上闪存单元通过FLASH控制器接入片上总线(on-chip bus),片上系统的处理器核经片上总线和FLASH控制器接口可直接访问片外闪存单元并读取内容;SPI接口(Serial PeripheralInterface)和片外闪存单元之间设置直连旁路(bypass),SPI接口可直接通过旁路方式对片外闪存单元进行数据访问,外部的调试上位机可以通过SPI接口直接访问片外闪存单元,对片外闪存单元烧写程序和校验数据,调试上位机也可以通过SPI接口或JTAG接口(JointTest Action Group)经片上总线直接访问片上存储器单元,对片上存储器单元烧写程序和校验数据。
本发明一实施例中,片外闪存单元可以为Flash存储器(Flash EEPROM Memory,Flash),片上存储器单元可以为静态随机存取存储器(Static Random-Access Memory,SRAM),FLASH控制器可以采用SPI master类型,SPI接口可以采用SPI slave接口。
进一步地,该硬件还可以包括调试辅助模块(Advanced Debug Unit,ADU),调试辅助模块分别连接片上总线和JTAG接口,第二控制寄存器通过调试辅助模块控制处理器核的取指操作的启动和暂停。
为了实现操作系统内核引导和加载,并便于片上系统的启动,本发明一实施例中,还设置了四个控制信号,四个控制信号包括:处理器核取指控制信号fetch_enable、接口复位控制信号rstn_per、处理器核复位控制信号rstn_core、全系统复位控制信号POR。
其中,处理器核取指控制信号fetch_enable用于对处理器核的取指操作进行暂停或启动控制;接口复位控制信号rstn_per用于对SPI接口和JTAG接口进行复位控制,该接口复位控制信号rstn_per可以由片上系统的时钟与复位单元定制产生;处理器核复位控制信号rstn_core用于对处理器核进行复位控制和系统同步,该处理器核复位控制信号rstn_core可以由片上系统的时钟与复位单元定制产生;全系统复位控制信号POR用于全系统的复位控制,该全系统复位控制信号POR可以以外部物理按键形式产生。
进一步地,本发明一实施例中,为第一寄存器SoC_boot_addr分配可访问的专门物理地址,以用于指导处理器核从片外闪存单元或片上存储器单元读取第一条指令。具体地,第一寄存器SoC_boot_addr的地址可以根据片上系统地址空间划分实际情况自主定义;例如,第一寄存器SoC_boot_addr初始值默认为0xB0000_0000,表示从片外闪存单元读取数据并引导与加载系统;当第一寄存器SoC_boot_addr被置为0时,则表示从片上存储器单元读取数据并引导与加载系统。
进一步地,基于上述设置的控制信号,本发明一实施例中,在第一控制寄存器SPI_slave和第二控制寄存器adv_dbg_if中,各设置一个属性位来控制处理器核取指控制信号fetch_enable,以对处理器核的取指操作进行启动和暂停。
具体地,第一控制寄存器SPI_slave通过SPI接口对处理器核取指控制信号fetch_enable进行控制,以启动或暂停处理器核的取指操作;第二控制寄存器adv_dbg_if通过调试辅助模块对处理器核取指控制信号fetch_enable进行控制,以启动或暂停处理器核的取指操作。
此外,本发明一实施例中,第一控制寄存器SPI_slave还可以用于将SPI接口旁路直连至片外闪存单元,第二控制寄存器adv_dbg_if可通过JTAG接口直接访问。
第二方面,本发明一实施例还提供了一种面向调测试的操作系统内核引导与加载方法,该方法包括:
设置四种互为备份且优先级可调整的实时操作系统内核引导和加载模式;
根据设定优先级顺序执行四种实时操作系统内核引导和加载模式中的一种或以上,直至完成操作系统内核引导和加载;
其中,执行第一种模式时,处理器核通过FLASH控制器直接访问片外闪存单元中预先烧写的引导程序和操作系统内核,进行自主引导和加载操作系统;执行第二种模式时,利用上位机通过SPI接口将引导程序和操作系统内核烧写至片外闪存单元,处理器核访问片外闪存单元中的引导程序和操作系统内核,进行引导和加载操作系统;执行第三种模式时,利用上位机通过SPI接口将引导程序和操作系统内核烧写至片上存储器单元,处理器核访问片上存储器单元中的引导程序和操作系统内核,进行引导和加载操作系统;执行第四种模式时,利用上位机通过JTAG接口将引导程序和操作系统内核烧写至片上存储器单元,处理器核访问片上存储器单元中的引导程序和操作系统内核,进行引导和加载操作系统。
由于,执行第一种模式时,处理器核通过FLASH控制器直接访问片外闪存单元中预先烧写的引导程序和操作系统内核,进行自主引导和加载操作系统;因此,本发明一实施例中,该面向调测试的操作系统内核引导与加载方法还可以包括:在执行四种实时操作系统内核引导和加载模式前,将引导程序和操作系统内核预先烧写至片外闪存单元中。
本发明一实施例中,将第一种模式称为BOOT-FLASH模式,第二种模式称为FLASH-PROGRAM模式,第三种模式称为SPI-SRAM模式,第四种模式称为JTAG-SRAM模式。
可选的,本发明一实施例中,将第一种模式作为默认引导和加载模式,当第一种模式引导异常时,执行第二种模式;当第二种模式引导异常时,执行第三种模式;当第三种模式引导异常时,执行第四种模式。
由于在实时操作系统内核的引导和加载中,需要综合考虑片上系统各时钟域的复位顺序以及处理器核的同步配合;为此,基于上述设定,如附图2所示,本发明一实施例中,上述的四种实时操作系统内核引导和加载模式包括如下所述的步骤。
(1)第一种模式(BOOT-FLASH模式)
本发明一实施例中,BOOT-FLASH模式为默认引导和启动模式,片上系统上电后直接从片外闪存单元读取指令,完成操作系统内核引导和加载。片上系统的启动地址由第一寄存器SoC_boot_addr指定,默认是从片外闪存单元的首地址开始执行,片上系统在编译时自动生成一段引导程序,将操作系统内核加载到片上存储器单元,而后引导系统跳转到片上存储器单元正式启动执行。
(2)第二种模式(FLASH-PROGRAM模式)
具体地,执行FLASH-PROGRAM模式时,包括如下步骤:
S21,将全系统复位控制信号POR拉高,使全系统复位;
S22,等待接口复位控制信号rstn_per释放;
S23,上位机通过第一控制寄存器SPI_slave将处理器核取指控制信号fetch_enable置0,暂停处理器核的取指操作;
S24,上位机通过第一控制寄存器SPI_slave将SPI接口旁路直连至片外闪存单元;
S25,上位机通过SPI接口对片外闪存单元进行引导程序烧写和数据校验;
S26,等待处理器核复位控制信号rstn_core释放;
S27,上位机通过第一控制寄存器SPI_slave将处理器核取指控制信号fetch_enable置1,启动处理器核的取指操作。
(3)第三种模式(SPI-SRAM模式)
具体地,执行SPI-SRAM模式时,包括如下步骤:
S31,将全系统复位控制信号POR拉高,使全系统复位;
S32,等待接口复位控制信号rstn_per释放;
S33,上位机通过第一控制寄存器SPI_slave将处理器核取指控制信号fetch_enable置0,暂停处理器核的取指操作;
S34,等待处理器核复位控制信号rstn_core释放;
S35,上位机通过SPI接口对片上存储器单元进行引导程序烧写和数据校验;
S36,上位机通过SPI接口向第一寄存器SoC_boot_addr写入全0,使得处理器核从片上存储器单元启动;
S37,上位机通过第一控制寄存器SPI_slave将处理器核取指控制信号fetch_enable置1,启动处理器核的取指操作。
(4)第四种模式(JTAG-SRAM模式)
具体地,执行JTAG-SRAM模式时,包括如下步骤:
S41,将全系统复位控制信号POR拉高,使全系统复位;
S42,等待接口复位控制信号rstn_per释放;
S43,上位机通过第二控制寄存器adv_dbg_if将处理器核取指控制信号fetch_enable置0,暂停处理器核的取指操作;
S44,等待处理器核复位控制信号rstn_core释放;
S45,上位机通过JTAG接口对片上存储器单元进行引导程序烧写和数据校验;
S46,上位机通过JTAG接口向第一寄存器SoC_boot_addr写入全0,使得处理器核从片上存储器单元启动;
S47,上位机通过第二控制寄存器adv_dbg_if将处理器核取指控制信号fetch_enable置1,启动处理器核的取指操作。
本发明一实施例中,上述的四种实时操作系统内核引导和加载模式的操作流程和优先级还可以根据设计需要进行动态调整。同时,在片上系统设计定型前或软硬件协同联合调测阶段,可通过修改测试程序中的配置参数来调整操作系统内核引导和加载模式,检验不同引导与加载模式的功能正确性。
本发明一实施例提供的面向调测试的操作系统内核引导与加载硬件及方法通过利用设置的存储单元、外设辅助接口和特殊寄存器,实现并设置四种互为备份且优先级可调整的操作系统内核引导与加载模式的配置,从而根据设定优先级顺序执行四种实时操作系统内核引导和加载模式中的一种或以上,直至完成操作系统内核引导和加载,可以对片上系统设计定型前的系统启动过程进行辅助调测和验证,能够容忍单一途径启动操作系统内核失败时导致的系统状态异常,并且可以复用片上系统已有的外设接口,额外硬件开销小。
需要说明的是,在本文中,诸如“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。此外,本文中“前”、“后”、“左”、“右”、“上”、“下”均以附图中表示的放置状态为参照。
最后应说明的是:以上实施例仅用于说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

Claims (6)

1.一种面向调测试的操作系统内核引导与加载硬件,其特征在于,所述硬件包括:片外闪存单元、FLASH控制器、片上存储器单元、SPI接口、JTAG接口、第一寄存器、第一控制寄存器、第二控制寄存器、片上总线和处理器核;
所述片外闪存单元通过所述FLASH控制器接入所述片上总线,用于保存引导程序和操作系统内核,所述片上存储器单元接入所述片上总线,所述SPI接口和所述JTAG接口分别接入所述片上总线,所述SPI接口与所述片外闪存单元间设置有直连旁路,所述SPI接口和所述JTAG接口能够连接外部上位机,所述上位机能够通过所述SPI接口或所述JTAG接口访问所述片外闪存单元和所述片上存储器单元,以对所述片外闪存单元烧写程序和校验数据,以及对所述片上存储器单元烧写程序和校验数据,所述第一寄存器用于控制所述处理器核从所述片外闪存单元或所述片上存储器单元读取第一条指令,所述第一控制寄存器和所述第二控制寄存器用于控制所述处理器核的取指操作的启动和暂停,所述第一控制寄存器还用于控制所述SPI接口旁路直连至所述片外闪存单元;
其中,所述硬件能够设置四种互为备份且优先级可调整的实时操作系统内核引导和加载模式,执行第一种模式时,所述处理器核通过所述FLASH控制器直接访问所述片外闪存单元中预先烧写的引导程序和操作系统内核,进行自主引导和加载操作系统;执行第二种模式时,利用所述上位机通过所述SPI接口将引导程序和操作系统内核烧写至所述片外闪存单元,所述处理器核访问所述片外闪存单元中的引导程序和操作系统内核,进行引导和加载操作系统;执行第三种模式时,利用所述上位机通过所述SPI接口将引导程序和操作系统内核烧写至所述片上存储器单元,所述处理器核访问所述片上存储器单元中的引导程序和操作系统内核,进行引导和加载操作系统;执行第四种模式时,利用所述上位机通过所述JTAG接口将引导程序和操作系统内核烧写至所述片上存储器单元,所述处理器核访问所述片上存储器单元中的引导程序和操作系统内核,进行引导和加载操作系统;
其中,在执行第二种模式时,通过所述第一控制寄存器控制所述处理器核的取指操作的启动和暂停,以及控制所述SPI接口旁路直连至所述片外闪存单元,在执行第三种模式时,通过所述第一控制寄存器控制所述处理器核的取指操作的启动和暂停,在执行第四种模式时,通过所述第二控制寄存器控制所述处理器核的取指操作的启动和暂停;
其中,在执行第一种模式时,处理器核直接从片外闪存单元读取指令,完成操作系统内核引导和加载;
其中,第二种模式包括如下步骤:
S21,使全系统复位;
S22,等待SPI接口和JTAG接口复位;
S23,上位机通过第一控制寄存器暂停处理器核的取指操作;
S24,上位机通过第一控制寄存器将SPI接口旁路直连至片外闪存单元;
S25,上位机通过SPI接口对片外闪存单元进行引导程序烧写和数据校验;
S26,等待处理器核复位;
S27,上位机通过第一控制寄存器启动处理器核取指操作;
其中,第三种模式包括如下步骤:
S31,使全系统复位;
S32,等待SPI接口和JTAG接口复位;
S33,上位机通过第一控制寄存器暂停处理器核的取指操作;
S34,等待处理器核复位;
S35,上位机通过SPI接口对片上存储器单元进行引导程序烧写和数据校验;
S36,上位机通过SPI接口和第一寄存器控制处理器核从片上存储器单元启动;
S37,上位机通过第一控制寄存器启动处理器核取指操作;
其中,第四种模式包括如下步骤:
S41,使全系统复位;
S42,等待SPI接口和JTAG接口复位;
S43,上位机通过第二控制寄存器暂停处理器核的取指操作;
S44,等待处理器核复位;
S45,上位机通过JTAG接口对片上存储器单元进行引导程序烧写和数据校验;
S46,上位机通过JTAG接口和第一寄存器控制处理器核从片上存储器单元启动;
S47,上位机通过第二控制寄存器启动处理器核的取指操作。
2.根据权利要求1所述的面向调测试的操作系统内核引导与加载硬件,其特征在于,所述片外闪存单元为Flash存储器。
3.根据权利要求1或2所述的面向调测试的操作系统内核引导与加载硬件,其特征在于,所述片上存储器单元为静态随机存取存储器。
4.一种用于如权利要求1至3中任一项所述的面向调测试的操作系统内核引导与加载硬件的面向调测试的操作系统内核引导与加载方法,其特征在于,包括:
设置四种互为备份且优先级可调整的实时操作系统内核引导和加载模式;
根据设定优先级顺序执行四种实时操作系统内核引导和加载模式中的一种或以上,直至完成操作系统内核引导和加载;
其中,执行第一种模式时,处理器核通过FLASH控制器直接访问片外闪存单元中预先烧写的引导程序和操作系统内核,进行自主引导和加载操作系统;执行第二种模式时,利用上位机通过SPI接口将引导程序和操作系统内核烧写至片外闪存单元,处理器核访问片外闪存单元中的引导程序和操作系统内核,进行引导和加载操作系统;执行第三种模式时,利用上位机通过SPI接口将引导程序和操作系统内核烧写至片上存储器单元,处理器核访问片上存储器单元中的引导程序和操作系统内核,进行引导和加载操作系统;执行第四种模式时,利用上位机通过JTAG接口将引导程序和操作系统内核烧写至片上存储器单元,处理器核访问片上存储器单元中的引导程序和操作系统内核,进行引导和加载操作系统。
5.根据权利要求4所述的面向调测试的操作系统内核引导与加载方法,其特征在于,所述方法还包括:
在执行四种实时操作系统内核引导和加载模式前,将引导程序和操作系统内核预先烧写至片外闪存单元中。
6.根据权利要求4所述的面向调测试的操作系统内核引导与加载方法,其特征在于,将第一种模式作为默认引导和加载模式,当第一种模式引导异常时,执行第二种模式;当第二种模式引导异常时,执行第三种模式;当第三种模式引导异常时,执行第四种模式。
CN202011327004.2A 2020-11-24 2020-11-24 面向调测试的操作系统内核引导与加载硬件及方法 Active CN112306782B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011327004.2A CN112306782B (zh) 2020-11-24 2020-11-24 面向调测试的操作系统内核引导与加载硬件及方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011327004.2A CN112306782B (zh) 2020-11-24 2020-11-24 面向调测试的操作系统内核引导与加载硬件及方法

Publications (2)

Publication Number Publication Date
CN112306782A CN112306782A (zh) 2021-02-02
CN112306782B true CN112306782B (zh) 2022-04-26

Family

ID=74335526

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011327004.2A Active CN112306782B (zh) 2020-11-24 2020-11-24 面向调测试的操作系统内核引导与加载硬件及方法

Country Status (1)

Country Link
CN (1) CN112306782B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114398216B (zh) * 2022-02-15 2022-11-15 深圳市航顺芯片技术研发有限公司 链路控制方法、装置、系统、设备及可读存储介质
CN114595006A (zh) * 2022-03-21 2022-06-07 恒玄科技(上海)股份有限公司 一种用于智能穿戴设备的快速启动方法、装置和存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1501621A (zh) * 2002-11-18 2004-06-02 华为技术有限公司 一种系统安全启动方法
CN105278974A (zh) * 2014-06-30 2016-01-27 深圳市中兴微电子技术有限公司 一种芯片启动方法及装置
CN105930186A (zh) * 2016-04-20 2016-09-07 中车株洲电力机车研究所有限公司 多cpu的软件加载方法及基于多cpu的软件加载装置

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7809934B2 (en) * 2006-10-13 2010-10-05 Texas Instruments Incorporated Security measures for preventing attacks that use test mechanisms
CN101329385B (zh) * 2008-08-01 2011-08-24 炬力集成电路设计有限公司 一种片上系统的调测系统、调测方法以及片上系统
JP5815717B2 (ja) * 2010-10-15 2015-11-17 コーヒレント・ロジックス・インコーポレーテッド マルチプロセッサシステムにおける通信の無効化
CN108279935A (zh) * 2016-12-30 2018-07-13 北京中科晶上科技股份有限公司 一种针对片上系统的操作系统启动引导方法
CN110389772B (zh) * 2018-04-23 2022-12-13 中车株洲电力机车研究所有限公司 双核mcu应用程序升级方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1501621A (zh) * 2002-11-18 2004-06-02 华为技术有限公司 一种系统安全启动方法
CN105278974A (zh) * 2014-06-30 2016-01-27 深圳市中兴微电子技术有限公司 一种芯片启动方法及装置
CN105930186A (zh) * 2016-04-20 2016-09-07 中车株洲电力机车研究所有限公司 多cpu的软件加载方法及基于多cpu的软件加载装置

Also Published As

Publication number Publication date
CN112306782A (zh) 2021-02-02

Similar Documents

Publication Publication Date Title
JP5119686B2 (ja) 情報処理装置および設定方法
JP6124994B2 (ja) レガシーos環境から統合拡張可能ファームウェア・インターフェース(uefi)ブート前環境への復元を行うための方法およびシステム、ならびにコンピュータ・プログラム
US9471435B2 (en) Information processing device, information processing method, and computer program
US20180032349A1 (en) Optimized UEFI Reboot Process
CN112306782B (zh) 面向调测试的操作系统内核引导与加载硬件及方法
US9367107B2 (en) Method and system for controlling reset state change in a system-on-a-chip device
US20060010282A1 (en) Method and apparatus to boot a system by monitoring an operating status of a NAND flash memory
CN105760191A (zh) 嵌入式系统设备程序烧写量产方法
CN109800032B (zh) Bootrom多核加载方法及装置
US11829220B2 (en) Power management circuit, chip and upgrade method therefor, and server
Kaminaga Improving linux startup time using software resume (and other techniques)
CN113076142B (zh) Tcon参数初始化方法及显示设备
US8601215B2 (en) Processor, server system, and method for adding a processor
CN110825421B (zh) 一种固件升级方法、系统及可读存储介质
US20160179626A1 (en) Computer system, adaptable hibernation control module and control method thereof
EP3242237B1 (en) Sub-area-based method and device for protecting information of mcu chip
CN110377303A (zh) 基于备用存储区方式升级程序的方法及其设备
CN100498710C (zh) 自储存装置上读取选择只读存储器程序代码的方法
CN109582370B (zh) 一种nor flash嵌入式设备的启动方法及装置
CN113099279A (zh) 一种tcon参数写入的方法及显示设备
JP3951371B2 (ja) ウォッチドッグタイマ及びマイクロコンピュータ
CN115309463A (zh) 一种amp系统引导和配置的方法
CN114185561A (zh) 分体式5g/v2x设备的固件烧录方法、装置及系统
TW200419450A (en) BIOS upgrading method of embedded controller in electronic device
CN115617356A (zh) 一种Linux系统的快捷启动烧录方法

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