CN107301042B - 一种带自检功能的SoC应用程序引导方法 - Google Patents

一种带自检功能的SoC应用程序引导方法 Download PDF

Info

Publication number
CN107301042B
CN107301042B CN201710417550.7A CN201710417550A CN107301042B CN 107301042 B CN107301042 B CN 107301042B CN 201710417550 A CN201710417550 A CN 201710417550A CN 107301042 B CN107301042 B CN 107301042B
Authority
CN
China
Prior art keywords
application program
sram
code
soc
self
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
CN201710417550.7A
Other languages
English (en)
Other versions
CN107301042A (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.)
China Academy of Launch Vehicle Technology CALT
Beijing Aerospace Automatic Control Research Institute
Original Assignee
China Academy of Launch Vehicle Technology CALT
Beijing Aerospace Automatic Control Research 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 China Academy of Launch Vehicle Technology CALT, Beijing Aerospace Automatic Control Research Institute filed Critical China Academy of Launch Vehicle Technology CALT
Priority to CN201710417550.7A priority Critical patent/CN107301042B/zh
Publication of CN107301042A publication Critical patent/CN107301042A/zh
Application granted granted Critical
Publication of CN107301042B publication Critical patent/CN107301042B/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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1004Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's to protect a block of data words, e.g. CRC or checksum
    • 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/2273Test methods
    • 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/2284Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing by power-on test, e.g. power-on self test [POST]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Software Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明涉及一种带自检功能的SoC应用程序引导方法,在运行应用程序前将应用程序从FLASH搬运到SRAM去,并将应用程序的第一行指令地址赋予CPU的PC指针,启动程序运行的一种引导功能模块。本发明所述程序引导方法在搬运应用程序前对应用程序运行的SRAM进行检查,并对应用程序搬运的正确性进行检查,在应用程序运行前保证运行目标及其运行环境的正确性。本发明通过程序上传的一致性校验、搬运前、后的校验,保证了从源程序到每次运行程序的正确性,保证了运行环境功能完好,一旦程序发生故障,能够快速进行故障定位。

Description

一种带自检功能的SoC应用程序引导方法
技术领域
本发明涉及一种带自检功能的SoC应用程序引导方法,属于SoC加载技术领域。
背景技术
SoC,System on Chip的简称,即片上系统。从狭义角度讲,它是信息系统核心的芯片集成,是将系统关键部件集成在一块芯片上;从广义上讲,SoC是一个微小型系统,如果说中央处理器是大脑,那么SoC就是包括大脑、心脏、眼睛和手的系统。国内外学术界一般倾向将SoC定义为将微处理器、模拟IP核、数字IP核和存储器(或片外存储控制接口)集成在单一芯片上,它通常是客户定制的,或是面向特定用途的标准产品。由于其强大的可扩展性和高度的集成性,目前SoC被广泛用于移动电子产品、智能设备和控制装置中。如果将SoC比作躯干,那么运行于SoC中的嵌入式软件即为片上系统的灵魂。SoC借助运行于其中的应用软件来控制外设工作,进行逻辑运算从而完成其所担负的应用功能。本发明所述方法即为嵌入式软件的一部分,属于Bootloader的一种。
在嵌入式操作系统中,Bootloader是在操作系统内核运行之前运行。可以初始化硬件设备、建立内存空间映射图,从而将系统的软硬件环境带到一个合适状态,以便为最终调用操作系统内核准备好正确的环境。在嵌入式系统中,通常并没有像BIOS那样的固件程序,因此整个系统的加载启动任务就完全由Bootloader来完成。目前的Bootloader程序在上电后直接将SoC的FLASH空间中的应用程序目标码搬运到SRAM中,并从第一条语句开始执行。一旦出现故障,无法判别是由于应用程序实现不正确还是由于芯片本身存在故障,或者是由于程序搬运过程存在错误,造成后续排故成本高企。
发明内容
本发明提出一种带自检功能的SoC应用程序引导方法,在启动嵌入式应用程序运行前,对其运行的环境及其应用程序运行前的状态的正确性进行检查,从而提高了嵌入式应用程序运行的正确性和可靠性。
本发明目的通过如下技术方案予以实现:
提供一种带自检功能的SoC应用程序引导方法,步骤具体如下:
(1)生成关于应用程序的在SoC芯片中运行的应用程序目标码,计算应用程序目标码的CRC校验码;
(2)将应用程序目标码和应用程序目标码的CRC校验码打包;
(3)生成带自检功能引导方法的目标码,并将引导方法的目标码放于最前端,与应用程序目标码及应用程序目标码的CRC校验码,一起构成带自检功能的可执行目标码;
(4)上传带自检功能的可执行目标码到SoC的FLASH空间中。
优选的,所述步骤(3)中生成带自检功能引导方法的目标码具体包括如下步骤:
步骤3.1,初始化SoC芯片;
步骤3.2,对应用程序运行的目标SRAM区进行工作正确性检查;
步骤3.3,将应用程序目标码部分从FLASH搬运到应用程序运行的目标SRAM中;
步骤3.4,读取搬运到SRAM中应用程序目标码,采取所述的步骤(1)中计算应用程序目标码的CRC校验码的方法,计算SRAM中应用程序目标码的CRC校验码;
步骤3.5,读取FLASH中的应用程序目标码的CRC校验码,与步骤3.4中计算出SRAM中应用程序目标码的CRC校验码进行比较,检查是否一致,若不一致则报警,若一致,则继续执行步骤3.6;
步骤3.6,运行应用程序。
优选的,步骤3.2中对应用程序运行的目标SRAM区进行工作正确性检查,即对每个SRAM区的存储单元,以双字为单位,进行正确性检查处理,检查处理包括如下步骤:
步骤3.2.1,依次向SRAM的存储单元中写入特定值;
步骤3.2.2,在每次写入特定值后,读取所写入的存储单元中的数据,检查读取数据与写入的值是否一致,若不一致,则SRAM存在故障,进行故障报警;若一致,则继续完成其他单元的检查,直至完成全部应用程序运行的目标SRAM区的正确性检查。
优选的,步骤3.2.2及步骤步骤3.5中的故障报警的方式包括通过SoC的I/O或总线报警。
优选的,故障报警通过I/O输出故障波形或通过总线输出故障消息来完成。
优选的,步骤4中上传带自检功能的可执行目标码到SoC的FLASH空间中的具体方法为:
步骤4.1,通过SoC提供的程序上传接口,将可执行目标码上传至以SOC上电后执行的第一条指令的地址为起始地址的FLASH地址空间中;
步骤4.2,传输完毕后,从FLASH地址空间中读取所上传的可执行目标码,并以字节为单位,与所上传的源目标码进行比较,若一致则结束传输,若不一致,则重新执行步骤4.1;如果两次传输失败则检查SoC和上传硬件通路是否存在故障,排除故障后重新执行步骤4.1。
优选的,SOC上电,执行FLASH地址空间中的带自检功能的引导程序。
优选的,SoC芯片的型号为BM3101,SoC的微处理器为Leon2版本的SparcV8架构。
优选的,在SRAM自检的过程中,由于SRAM是检查的目标,因此在检查的过程中不使用SRAM区。
优选的,以Sparc的指令集实现的SRAM自检功能的引导方法的目标码具体构造步骤如下:
步骤1.将待检查的SRAM区长度以立即数的形式放入l7寄存器中;
步骤2.将l3寄存器清零,作为当前已访问SRAM单元计数器;
步骤3.将l5寄存器设置为SRAM区的检查基址;
步骤4.判断是否SRAM区全部地址检查完毕,如果检查完毕进入步骤12,如果没有检查完毕进入步骤5;
步骤5.将当前地址值偏移量写入l4寄存器;
步骤6.向寄存器g1中写入当前检测值;
步骤7.向l5+l4指定的SRAM地址中写入g1寄存器中的值;
步骤8.读出l5+l4指定的SRAM地址中的数值到寄存器l2中;
步骤9.比较g1和l2中的值是否相等,如不相等则置o2寄存器为1,跳到步骤12,否则继续执行后续步骤;
步骤10.给寄存器l3中的值加一;
步骤11.比较l3的长度与l7中的长度是否相等,如果不相等,则跳转到步骤4,如果相等则执行步骤12;
步骤12.判断o2寄存器中的值是否为0,如果为0,则SRAM自检成功继续执行后续步骤,否则报故障,然后进入死循环等待状态;
步骤13.将应用程序目标码从FLASH区搬运到SRAM区域;
步骤14.计算SRAM中的目标码的CRC校验码;
步骤15.比较SRAM区中应用程序目标码CRC与FLASH中的应用程序目标码的CRC校验码字段的一致性,若一致,则将SRAM中应用程序目标码首地址放入程序指令寄存器中,若不一致,则进行故障报警。
本发明与现有技术相比具有如下优点:
(1)本发明在程序上传至SoC的FLASH空间的过程中进行了一致性校验,保证了FLASH空间中的程序的正确性。
(2)在程序由FLASH空间搬运到其运行的SRAM空间前,对SRAM空间进行功能性校验,保证了程序运行环境的正确性。
(3)在程序由FLASH空间搬运到其运行的SRAM空间后,对程序搬运的正确性进行校验,保证了本次上电运行程序与FLASH空间中的程序一致。
(4)本发明通过程序上传的一致性校验、搬运前、后的校验,保证了从源程序到每次运行程序的正确性,保证了运行环境功能完好,一旦程序发生故障,能够快速进行故障定位。
附图说明
图1为本发明带自检功能的SoC应用程序引导方法流程图;
图2为本发明带自检功能的可执行目标码实施例结构示意图。
具体实施方式
结合图1,带自检功能的SoC应用程序目标码生成及加载方法,步骤具体如下:
(1)生成关于应用程序的在SoC芯片中运行的目标码,以字节为单位,计算CRC校验码;
(2)将目标码和CRC校验码打包,即将所计算出的应用程序CRC校验码放于紧跟应用程序目标码的后面,占用一个字的空间;
(3)生成带自检功能引导方法的目标码,并将其放于应用程序目标码的前面,并与应用程序目标码及所计算出的CRC校验码,一起构成带自检功能的可执行目标码,参见图2。
带自检功能的引导方法包括如下步骤:
步骤3.1,初始化SoC芯片,包括存储器访问配置、Cache访问配置,芯片工作频率、I\O接口、串口、总线等在内的运行最小配置集;
步骤3.2,对应用程序运行的目标SRAM区进行工作正确性检查;对应用程序运行的目标SRAM区进行工作正确性检查,具体为:对每个SRAM区的存储单元,以双字为单位,进行正确性检查处理,检查处理包括如下步骤:
步骤3.2.1,依次向SRAM的存储单元中写入特定值,包括0xFFFFFFFF,0xAAAAAAAA,0x55555555,0x00000000;
步骤3.2.2,在每次写入特定值后,读取所写入的存储单元中的数据,检查读取数据与写入的值是否一致:若不一致,则SRAM存在故障,进行故障报警;若一致,则继续完成其他单元的检查;报警的方式可通过SoC的I/O、串行总线或其他扩展总线,如1553B总线等通过输出故障波形或故障消息来完成;
步骤3.3,将应用程序目标码部分从FLASH搬运到应用程序运行的目标SRAM中;
步骤3.4,读取搬运到SRAM中应用程序目标码,采取所述的步骤(1)处理中相同的方法,以字节为单位,来重新计算CRC校验码;
步骤3.5,读取FLASH中的CRC校验码,与步骤3.4中计算出的CRC校验码进行比较,检查是否一致,若不一致则报警,若一致,则继续执行步骤3.6;
步骤3.6,利用跳转指令,跳转至应用程序的第一条指令处,运行应用程序。
(4)上传带自检功能的可执行目标码到SoC的FLASH空间中,包括如下步骤:
步骤4.1,通过SoC提供的程序上传接口,将可执行目标码上传至以SOC上电后执行的第一条指令的地址为起始地址的FLASH地址空间中;
步骤4.2,传输完毕后,从FLASH地址空间中读取所上传的可执行目标码,并以字节为单位,与所上传的源目标码进行比较,若一致则结束传输,若不一致,则重新执行步骤4.1;如果两次传输失败则检查SoC和上传硬件通路是否存在故障,排除故障后重新执行步骤4.1。
SOC的工作过程如下:
SOC上电,执行FLASH地址空间中的带自检功能的引导程序,执行步骤3.1-3.6,运行应用程序。
在一个实施例中,在型号BM3101的SoC芯片中实现上述引导程序。该SoC的微处理器为Leon2版本的SparcV8架构。本实施例在引导程序进行自检时发现故障的情况下,采用1553B总线对故障信息进行发送。
本发明所构建的Bootloader,即引导程序,是在加电后自动执行,完成CPU和相关硬件的初始化后,再将固化的嵌入式应用程序装在到内存中然后跳转到嵌入式应用程序所在的空间,启动嵌入式应用程序运行。
本发明所述的技术包括了一种引导程序的构建方法,运行逻辑。与其他传统的引导程序不同的方面在于,其在启动嵌入式应用程序运行前,对其运行的环境及其应用程序运行前的状态的正确性进行检查,从而提高了嵌入式应用程序运行的正确性和可靠性。
以下是以Sparc的指令集实现的SRAM自检功能的具体实现方法,在自检失败后,构建1553B故障信息消息并放入RT对应子地址的发送缓冲区中,同时程序停止执行后续功能(进入死循环),等待排故。在SRAM自检的过程中,由于SRAM是检查的目标,因此在检查它的过程中不允许使用SRAM区,包括堆栈区。
带自检功能引导方法的目标码构造步骤如下:
步骤1.将待检查的SRAM区长度以立即数的形式放入l7寄存器中;
步骤2.将l3寄存器清零,作为当前已访问SRAM单元计数器;
步骤3.将l5寄存器设置为SRAM区的检查基址;
步骤4.判断是否SRAM区全部地址检查完毕,如果检查完毕进入步骤24,如果没有检查完毕进入步骤5;
步骤5.将当前地址值偏移量写入l4寄存器;
步骤6.向寄存器g1中写入当前检测值0xFFFFFFFF
步骤7.向l5+l4指定的SRAM地址中写入g1寄存器中的值;
步骤8.读出l5+l4指定的SRAM地址中的数值到寄存器l2中;
步骤9.比较g1和l2中的值是否相等,如不相等则置o2寄存器为1,跳到步骤24,否则继续执行后续步骤;
步骤10.向寄存器g1中写入当前检测值0xAAAAAAAA
步骤11.向l5+l4指定的SRAM地址中写入g1寄存器中的值;
步骤12.读出l5+l4指定的SRAM地址中的数值到寄存器l2中;
步骤13.比较g1和l2中的值是否相等,如不相等则置o2寄存器为1,跳到步骤24,否则继续执行后续步骤;
步骤14.向寄存器g1中写入当前检测值0x55555555
步骤15.向l5+l4指定的SRAM地址中写入g1寄存器中的值;
步骤16.读出l5+l4指定的SRAM地址中的数值到寄存器l2中;
步骤17.比较g1和l2中的值是否相等,如不相等则置o2寄存器为1,跳到步骤24,否则继续执行后续步骤;
步骤18.向寄存器g1中写入当前检测值0x00000000
步骤19.向l5+l4指定的SRAM地址中写入g1寄存器中的值;
步骤20.读出l5+l4指定的SRAM地址中的数值到寄存器l2中;
步骤21.比较g1和l2中的值是否相等,如不相等则置o2寄存器为1,跳到步骤24,否则继续执行后续步骤;
步骤22.给寄存器l3中的值加一
步骤23.比较l3的长度与l7中的长度是否相等,如果不相等,则跳转到步骤4,否则继续执行后续步骤;
步骤24.判断o2寄存器中的值是否为0,如果为0,则SRAM自检成功继续执行后续步骤,否则报故障,然后进入死循环等待状态;
步骤25.将应用程序目标码从FLASH区搬运到SRAM区域;
步骤26.计算SRAM中的目标码得CRC(由于此时SRAM已检查完毕,算法可以使用SRAM区,可以用高级语言撰写);
步骤27.比较SRAM区中应用程序目标码CRC与FLASH中的应用程序目标码的CRC校验码字段的一致性,若一致,则将SRAM中应用程序目标码首地址放入程序指令寄存器中,否则报故障。
以上所述,仅为本发明最佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。
本发明说明书中未作详细描述的内容属于本领域专业技术人员的公知技术。

Claims (9)

1.一种带自检功能的SoC应用程序引导方法,步骤具体如下:
(1)生成关于应用程序的在SoC芯片中运行的应用程序目标码,计算应用程序目标码的CRC校验码;
(2)将应用程序目标码和应用程序目标码的CRC校验码打包;
(3)生成带自检功能引导方法的目标码,并将引导方法的目标码放于最前端,与应用程序目标码及应用程序目标码的CRC校验码,一起构成带自检功能的可执行目标码;
(4)上传带自检功能的可执行目标码到SoC的FLASH空间中;
以Sparc的指令集实现的SRAM自检功能的引导方法的目标码具体构造步骤如下:
步骤1.将待检查的SRAM区长度以立即数的形式放入l7寄存器中;
步骤2.将l3寄存器清零,作为当前已访问SRAM单元计数器;
步骤3.将l5寄存器设置为SRAM区的检查基址;
步骤4.判断是否SRAM区全部地址检查完毕,如果检查完毕进入步骤12,如果没有检查完毕进入步骤5;
步骤5.将当前地址值偏移量写入l4寄存器;
步骤6.向寄存器g1中写入当前检测值;
步骤7.向l5+l4指定的SRAM地址中写入g1寄存器中的值;
步骤8.读出l5+l4指定的SRAM地址中的数值到寄存器l2中;
步骤9.比较g1和l2中的值是否相等,如不相等则置o2寄存器为1,跳到步骤12,否则继续执行后续步骤;
步骤10.给寄存器l3中的值加一;
步骤11.比较l3的长度与l7中的长度是否相等,如果不相等,则跳转到步骤4,如果相等则执行步骤12;
步骤12.判断o2寄存器中的值是否为0,如果为0,则SRAM自检成功继续执行后续步骤,否则报故障,然后进入死循环等待状态;
步骤13.将应用程序目标码从FLASH区搬运到SRAM区域;
步骤14.计算SRAM中的目标码的CRC校验码;
步骤15.比较SRAM区中应用程序目标码CRC与FLASH中的应用程序目标码的CRC校验码字段的一致性,若一致,则将SRAM中应用程序目标码首地址放入程序指令寄存器中,若不一致,则进行故障报警。
2.如权利要求1所述的带自检功能的SoC应用程序引导方法,其特征在于:所述步骤(3)中生成带自检功能引导方法的目标码具体包括如下步骤:
步骤3.1,初始化SoC芯片;
步骤3.2,对应用程序运行的目标SRAM区进行工作正确性检查;
步骤3.3,将应用程序目标码部分从FLASH搬运到应用程序运行的目标SRAM中;
步骤3.4,读取搬运到SRAM中应用程序目标码,采取所述的步骤(1)中计算应用程序目标码的CRC校验码的方法,计算SRAM中应用程序目标码的CRC校验码;
步骤3.5,读取FLASH中的应用程序目标码的CRC校验码,与步骤3.4中计算出SRAM中应用程序目标码的CRC校验码进行比较,检查是否一致,若不一致则进行故障报警,若一致,则继续执行步骤3.6;
步骤3.6,运行应用程序。
3.如权利要求1所述的带自检功能的SoC应用程序引导方法,其特征在于:步骤3.2中对应用程序运行的目标SRAM区进行工作正确性检查,即对每个SRAM区的存储单元,以双字为单位,进行正确性检查处理,检查处理包括如下步骤:
步骤3.2.1,依次向SRAM的存储单元中写入特定值;
步骤3.2.2,在每次写入特定值后,读取所写入的存储单元中的数据,检查读取数据与写入的值是否一致,若不一致,则SRAM存在故障,进行故障报警;若一致,则继续完成其他单元的检查,直至完成全部应用程序运行的目标SRAM区的正确性检查。
4.如权利要求3所述的带自检功能的SoC应用程序引导方法,其特征在于:步骤3.2.2及步骤步骤3.5中的故障报警的方式包括通过SoC的I/O或总线报警。
5.如权利要求4所述的带自检功能的SoC应用程序引导方法,其特征在于:故障报警通过I/O输出故障波形或通过总线输出故障消息来完成。
6.如权利要求1或2所述的带自检功能的SoC应用程序引导方法,其特征在于:步骤4中上传带自检功能的可执行目标码到SoC的FLASH空间中的具体方法为:
步骤4.1,通过SoC提供的程序上传接口,将可执行目标码上传至以SOC上电后执行的第一条指令的地址为起始地址的FLASH地址空间中;
步骤4.2,传输完毕后,从FLASH地址空间中读取所上传的可执行目标码,并以字节为单位,与所上传的源目标码进行比较,若一致则结束传输,若不一致,则重新执行步骤4.1;如果两次传输失败则检查SoC和上传硬件通路是否存在故障,排除故障后重新执行步骤4.1。
7.如权利要求1或2所述的带自检功能的SoC应用程序引导方法,其特征在于:SOC上电,执行FLASH地址空间中的带自检功能的引导程序。
8.如权利要求1或2所述的带自检功能的SoC应用程序引导方法,其特征在于:SoC芯片的型号为BM3101,SoC的微处理器为Leon2版本的SparcV8架构。
9.如权利要求1或2所述的带自检功能的SoC应用程序引导方法,其特征在于:在SRAM自检的过程中,由于SRAM是检查的目标,因此在检查的过程中不使用SRAM区。
CN201710417550.7A 2017-06-06 2017-06-06 一种带自检功能的SoC应用程序引导方法 Active CN107301042B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710417550.7A CN107301042B (zh) 2017-06-06 2017-06-06 一种带自检功能的SoC应用程序引导方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710417550.7A CN107301042B (zh) 2017-06-06 2017-06-06 一种带自检功能的SoC应用程序引导方法

Publications (2)

Publication Number Publication Date
CN107301042A CN107301042A (zh) 2017-10-27
CN107301042B true CN107301042B (zh) 2020-07-14

Family

ID=60134678

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710417550.7A Active CN107301042B (zh) 2017-06-06 2017-06-06 一种带自检功能的SoC应用程序引导方法

Country Status (1)

Country Link
CN (1) CN107301042B (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108132853A (zh) * 2017-11-24 2018-06-08 北京动力机械研究所 用于发动机控制器软件的上电校验双冗余引导加载方法
WO2019169615A1 (zh) * 2018-03-09 2019-09-12 深圳市汇顶科技股份有限公司 访问指令sram的方法和电子设备
CN109273031B (zh) * 2018-10-09 2021-07-27 珠海格力电器股份有限公司 一种flash译码电路和flash译码方法
CN109460677A (zh) * 2018-11-12 2019-03-12 湖南中车时代通信信号有限公司 一种嵌入式环境下采用多任务技术的数据存储系统
CN110704236B (zh) * 2019-10-11 2020-09-01 南京元晨微电子科技有限公司 芯片flash数据的在线校验方法及计算机存储介质
CN113220318A (zh) * 2020-01-21 2021-08-06 广州汽车集团股份有限公司 电机控制器的程序更新方法、装置及可读存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101431441A (zh) * 2008-12-12 2009-05-13 北京邮电大学 一种内部植入cpu的fpga系统在线升级的方法
CN102354294A (zh) * 2011-08-23 2012-02-15 西安空间无线电技术研究所 一种星载dsp芯片的空间单粒子翻转检测方法
CN102819705A (zh) * 2012-07-26 2012-12-12 郑州信大捷安信息技术股份有限公司 在主引导区实现系统文件完整性验证的系统及方法
CN103176875A (zh) * 2013-03-19 2013-06-26 卡斯柯信号有限公司 一种嵌入式系统上电自检方法
CN104298599A (zh) * 2014-10-21 2015-01-21 卡斯柯信号有限公司 嵌入式软件运行时故障的在线自检与切片恢复方法及装置
US9311206B2 (en) * 2014-04-15 2016-04-12 Freescale Semiconductor, Inc. Method and apparatus for monitoring general purpose input output, GPIO, signals

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009044416A1 (en) * 2007-10-03 2009-04-09 Power-One Italy S.P.A. Method for reprogramming applications in embedded devices and related device

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101431441A (zh) * 2008-12-12 2009-05-13 北京邮电大学 一种内部植入cpu的fpga系统在线升级的方法
CN102354294A (zh) * 2011-08-23 2012-02-15 西安空间无线电技术研究所 一种星载dsp芯片的空间单粒子翻转检测方法
CN102819705A (zh) * 2012-07-26 2012-12-12 郑州信大捷安信息技术股份有限公司 在主引导区实现系统文件完整性验证的系统及方法
CN103176875A (zh) * 2013-03-19 2013-06-26 卡斯柯信号有限公司 一种嵌入式系统上电自检方法
US9311206B2 (en) * 2014-04-15 2016-04-12 Freescale Semiconductor, Inc. Method and apparatus for monitoring general purpose input output, GPIO, signals
CN104298599A (zh) * 2014-10-21 2015-01-21 卡斯柯信号有限公司 嵌入式软件运行时故障的在线自检与切片恢复方法及装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
"嵌入式系统离线测试";祝捷 等;《电子设计应用》;20040930(第9期);第119页右栏第2段至第120页左栏第1段 *

Also Published As

Publication number Publication date
CN107301042A (zh) 2017-10-27

Similar Documents

Publication Publication Date Title
CN107301042B (zh) 一种带自检功能的SoC应用程序引导方法
US8261130B2 (en) Program code trace signature
CN103930878B (zh) 用于存储器验证的方法、装置及系统
CN107357666B (zh) 一种基于硬件保护的多核并行系统处理方法
CN108899061B (zh) 一种电源常开芯片中的存储器内建自测试方法和系统
US20080016415A1 (en) Evaluation system and method
CN106547653B (zh) 计算机系统故障状态检测方法、装置及系统
CN111145826B (zh) 一种存储器内建自测试方法、电路及计算机存储介质
TW201901427A (zh) 伺服器的偵錯裝置及其偵錯方法
CN115756984A (zh) 内存测试方法、装置、设备及存储介质
CN109117299B (zh) 服务器的侦错装置及其侦错方法
US9959172B2 (en) Data processing device and method of conducting a logic test in a data processing device
US10831578B2 (en) Fault detection circuit with progress register and status register
US10970191B2 (en) Semiconductor device and debug method
CN113254288B (zh) 一种星载设备中fpga单粒子翻转故障注入方法
US8990624B2 (en) Emulator verification system, emulator verification method
CN112086119B (zh) 存储器设备
CN103443734A (zh) 硬件复位原因
CN112912958A (zh) 使用内置自测控制器测试只读存储器
WO2019169615A1 (zh) 访问指令sram的方法和电子设备
CN117785756B (zh) 存储器控制系统、方法、芯片及计算机可读存储介质
US20230281302A1 (en) Module and method for monitoring systems of a host device for security exploitations
CN115794488A (zh) 一种fpga程序备份保护方法及系统
CN1987785A (zh) 测量基本输入输出系统的自我开机测试时间的方法
JPS61846A (ja) メモリ内容の正常性試験方法

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