[go: up one dir, main page]

CN105653384A - 一种软核cpu复位方法及主从式系统 - Google Patents

一种软核cpu复位方法及主从式系统 Download PDF

Info

Publication number
CN105653384A
CN105653384A CN201511028108.2A CN201511028108A CN105653384A CN 105653384 A CN105653384 A CN 105653384A CN 201511028108 A CN201511028108 A CN 201511028108A CN 105653384 A CN105653384 A CN 105653384A
Authority
CN
China
Prior art keywords
soft
application program
cpu
soft nucleus
nucleus cpu
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
CN201511028108.2A
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.)
Huizhou Wellav Technologies Co ltd
Original Assignee
Huizhou Wellav Technologies 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 Huizhou Wellav Technologies Co ltd filed Critical Huizhou Wellav Technologies Co ltd
Priority to CN201511028108.2A priority Critical patent/CN105653384A/zh
Publication of CN105653384A publication Critical patent/CN105653384A/zh
Pending legal-status Critical Current

Links

Classifications

    • 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/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0721Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment within a central processing unit [CPU]
    • G06F11/0724Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment within a central processing unit [CPU] in a multiprocessor or a multi-core unit
    • 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/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1415Saving, restoring, recovering or retrying at system level
    • G06F11/1438Restarting or rejuvenating

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Hardware Redundancy (AREA)

Abstract

本发明公开了一种软核CPU复位方法,包括:主CPU将应用程序下发给软核CPU;软核CPU,执行引导程序模块中的引导程序,将应用程序保存在片外RAM中的应用程序备份区和应用程序执行区;软核CPU,基于引导程序,跳转执行应用程序执行区中存储的应用程序,并将状态参数保存在片外RAM中的参数保存区;逻辑监控模块,对软核CPU的工作状态进行监控,在检测到软核CPU异常后,给软核CPU发出复位信号;软核CPU,执行引导程序,将应用程序备份区中的应用程序复制到应用程序执行区;软核CPU,跳转执行应用程序执行区中存储的应用程序,并读取参数保存区中的状态参数,从而实现软核CPU的快速复位。本发明技术方案,相比于传统技术,能够在软核CPU异常时,提高其复位效率。

Description

一种软核CPU复位方法及主从式系统
技术领域
本发明涉及电子技术领域,特别是涉及一种软核CPU复位方法及主从式系统。
背景技术
随着设计与制造技术的发展,集成电路设计已经发展到IP的集成,即SOC(SystemOn-a-Chip)设计技术。SOC可有效降低开发成本、缩短开发周期,是今后工业界将采用的最主要的产品开发方式。
参见图1,为传统技术中SOC的一个应用场景,在一个主从式系统中包括主设备11和从设备12。主设备11具有主CPU,而从设备12采用SOC实现。在系统上电时,主CPU对SOC进行初始化配置并下发应用程序。SOC上使用一个或以上的软核CPU,用以执行应用程序,从而实现SOC定制的各种功能。软核CPU作为从设备的核心,一旦受限于逻辑工作情况及自身结构影响而产生异常,将影响系统的正常工作。因此,必须及时对软核CPU进行复位。传统技术中,是由主CPU和软核CPU通过接口电路进行通信,对软核CPU的运行状态进行监控,一旦出现异常,就控制软核CPU复位,即由主CPU对软核CPU进行初始化配置,并下发应用程序,这种复位方法,由于通信接口通信通常较慢,故整个过程耗时比较长,效率比较低,当主设备的主CPU完成对软核CPU的重新配置和传输应用程序,从设备可能已经造成巨大的问题。
发明内容
基于此,有必要提供一种软核CPU复位方法及主从式系统,相比于传统技术,能够在软核CPU异常时,提高其复位效率。
一种软核CPU复位方法,应用于一主从式系统,所述主从式系统包括主CPU、片上系统和片外RAM,所述片上系统包括软核CPU、引导程序模块、和逻辑监控模块;所述方法包括:
主CPU将应用程序下发给软核CPU;
软核CPU,执行引导程序模块中的引导程序,将应用程序保存在片外RAM中的应用程序备份区和应用程序执行区;
软核CPU,基于引导程序,跳转执行应用程序执行区中存储的应用程序,并将状态参数保存在片外RAM中的参数保存区;
逻辑监控模块,对软核CPU的工作状态进行监控,在检测到软核CPU异常后,给软核CPU发出复位信号;
软核CPU,执行引导程序,将应用程序备份区中的应用程序复制到应用程序执行区;
软核CPU,跳转执行应用程序执行区中存储的应用程序,并读取参数保存区中的状态参数,从而实现软核CPU的快速复位。
一种主从式系统,包括主CPU、片上系统和片外RAM,所述片上系统包括软核CPU、引导程序模块、和逻辑监控模块;
所述主CPU,用于将应用程序下发给软核CPU;
软核CPU,用于执行引导程序模块中的引导程序,将应用程序保存在片外RAM中的应用程序备份区和应用程序执行区;
软核CPU,还用于基于引导程序,跳转执行应用程序执行区中存储的应用程序,并将状态参数保存在片外RAM中的参数保存区;
逻辑监控模块,用于对软核CPU的工作状态进行监控,在检测到软核CPU异常后,给软核CPU发出复位信号;
软核CPU,还用于执行引导程序,将应用程序备份区中的应用程序复制到应用程序执行区;
软核CPU,还用于跳转执行应用程序执行区中存储的应用程序,并读取参数保存区中的状态参数,从而实现软核CPU的快速复位。
上述软核CPU复位方法及主从式系统,由软核CPU将主CPU下发的应用程序存储到片外RAM的应用程序备份区和应用程序执行区,再跳转执行应用程序执行区中的应用程序,并将状态参数保存在片外RAM中的参数保存区,由逻辑监控模块对软核CPU的工作状态进行监控,在检测到软核CPU异常后,给软核CPU发出复位信号,软核CPU将应用程序备份区中的应用程序复制到应用程序执行区,跳转执行应用程序执行区中存储的应用程序,并读取参数保存区中的状态参数,相比于传统技术由主CPU通过通信接口电路监控软核CPU状态,并在复位时重新下发应用程序,提高了复位效率。
附图说明
图1为传统技术的一个应用场景示意图;
图2为一个实施例中的主从式系统的结构示意图;
图3为一个实施例中的片外RAM的存储结构示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
参见图2,提供了一种主从式系统,包括主CPU21、片上系统和片外RAM23,所述片上系统包括软核CPU221、引导程序模块222、和逻辑监控模块223;
所述主CPU,用于将应用程序下发给软核CPU;
软核CPU,用于执行引导程序模块中的引导程序,将应用程序保存在片外RAM中的应用程序备份区和应用程序执行区;
软核CPU,还用于基于引导程序,跳转执行应用程序执行区中存储的应用程序,并将状态参数保存在片外RAM中的参数保存区;
逻辑监控模块,用于对软核CPU的工作状态进行监控,在检测到软核CPU异常后,给软核CPU发出复位信号;
软核CPU,还用于执行引导程序,将应用程序备份区中的应用程序复制到应用程序执行区;
软核CPU,还用于跳转执行应用程序执行区中存储的应用程序,并读取参数保存区中的状态参数,从而实现软核CPU的快速复位。
结合图2和图3,提供了一种可用于实施例中所述主从式系统的软核CPU复位方法,该方法包括:
主CPU将应用程序下发给软核CPU。具体的,系统在上电后,主CPU对软核CPU进行初始化参数配置,并提供应用程序下载。
软核CPU,执行引导程序模块中的引导程序,将应用程序保存在片外RAM中的应用程序备份区和应用程序执行区。
软核CPU,基于引导程序,跳转执行应用程序执行区中存储的应用程序,并将状态参数保存在片外RAM中的参数保存区。
逻辑监控模块,对软核CPU的工作状态进行监控,在检测到软核CPU异常后,给软核CPU发出复位信号。具体的,逻辑监控模块和软核CPU可以处在同一片FPGA上,通信速率较快。逻辑监控模块可以通过硬件描述语言,如VHDL、verilog等实现,可实时获取软核CPU内部寄存器一系列标识运行状态的值,从而对软核CPU的运行状态进行检测,在检测到异常,可以但不限于向软核CPU复位引脚发送一低电平信号。
软核CPU,重新执行片上引导程序,同时提取逻辑状态信息,根据状态信息中的异常复位标志以及应用程序备份区地址以及长度,将应用程序备份区中的应用程序复制到应用程序执行区。具体的,在复位时,软核CPU从片外RAM中的应用程序备份区拷贝应用程序。如图3中,应用程序备份区和应用程序执行区同属于一片外RAM,数据传输较快,相比于传统技术由主CPU通过通信接口如UART、I2C等串口下发程序,提高了传输速率。图3为一个片外RAM的存储结构,地址0x0至0x200000之间为应用程序备份区,地址0x2000000至0x400000为参数存储区,地址0x4000000至0x6000000为应用程序执行区,地址0x6000000至0x8000000为备用的保留区。
软核CPU,跳转执行应用程序执行区中存储的应用程序,并读取参数保存区中的状态参数,从而实现软核CPU的快速复位。具体的,软核CPU执行程序执行区中的应用程序,并读取状态参数进行加载,可以快速恢复到发生异常时的系统工作进度,相比于传统技术,无需在复位后重头开始执行应用程序。
上述实施例中的软核CPU复位方法及主从式系统,由软核CPU将主CPU下发的应用程序存储到片外RAM的应用程序备份区和应用程序执行区,再跳转执行应用程序执行区中的应用程序,并将状态参数保存在片外RAM中的参数保存区,由逻辑监控模块对软核CPU的工作状态进行监控,在检测到软核CPU异常后,给软核CPU发出复位信号,软核CPU将应用程序备份区中的应用程序复制到应用程序执行区,跳转执行应用程序执行区中存储的应用程序,并读取参数保存区中的状态参数,相比于传统技术由主CPU通过通信接口电路监控软核CPU状态,并在复位时重新下发应用程序,提高了复位效率。
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。

Claims (2)

1.一种软核CPU复位方法,应用于一主从式系统,所述主从式系统包括主CPU、片上系统和片外RAM,所述片上系统包括软核CPU、引导程序模块、和逻辑监控模块;其特征在于,所述方法包括:
主CPU将应用程序下发给软核CPU;
软核CPU,执行引导程序模块中的引导程序,将应用程序保存在片外RAM中的应用程序备份区和应用程序执行区;
软核CPU,基于引导程序,跳转执行应用程序执行区中存储的应用程序,并将状态参数保存在片外RAM中的参数保存区;
逻辑监控模块,对软核CPU的工作状态进行监控,在检测到软核CPU异常后,给软核CPU发出复位信号;
软核CPU,执行引导程序,将应用程序备份区中的应用程序复制到应用程序执行区;
软核CPU,跳转执行应用程序执行区中存储的应用程序,并读取参数保存区中的状态参数,从而实现软核CPU的快速复位。
2.一种主从式系统,其特征在于,所述主从式系统包括主CPU、片上系统和片外RAM,所述片上系统包括软核CPU、引导程序模块、和逻辑监控模块;
所述主CPU,用于将应用程序下发给软核CPU;
软核CPU,用于执行引导程序模块中的引导程序,将应用程序保存在片外RAM中的应用程序备份区和应用程序执行区;
软核CPU,还用于基于引导程序,跳转执行应用程序执行区中存储的应用程序,并将状态参数保存在片外RAM中的参数保存区;
逻辑监控模块,用于对软核CPU的工作状态进行监控,在检测到软核CPU异常后,给软核CPU发出复位信号;
软核CPU,还用于执行引导程序,将应用程序备份区中的应用程序复制到应用程序执行区;
软核CPU,还用于跳转执行应用程序执行区中存储的应用程序,并读取参数保存区中的状态参数,从而实现软核CPU的快速复位。
CN201511028108.2A 2015-12-30 2015-12-30 一种软核cpu复位方法及主从式系统 Pending CN105653384A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201511028108.2A CN105653384A (zh) 2015-12-30 2015-12-30 一种软核cpu复位方法及主从式系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201511028108.2A CN105653384A (zh) 2015-12-30 2015-12-30 一种软核cpu复位方法及主从式系统

Publications (1)

Publication Number Publication Date
CN105653384A true CN105653384A (zh) 2016-06-08

Family

ID=56490231

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201511028108.2A Pending CN105653384A (zh) 2015-12-30 2015-12-30 一种软核cpu复位方法及主从式系统

Country Status (1)

Country Link
CN (1) CN105653384A (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106528311A (zh) * 2016-09-29 2017-03-22 杭州芯讯科技有限公司 嵌入式系统及其控制方法
CN106951342A (zh) * 2017-03-17 2017-07-14 数据通信科学技术研究所 一种TF卡片内Flash的纠错方法
CN108121625A (zh) * 2016-11-30 2018-06-05 联芯科技有限公司 出错时获取数据的方法
CN109032823A (zh) * 2018-05-30 2018-12-18 出门问问信息科技有限公司 一种语音模块异常自恢复的方法及装置
CN114518183A (zh) * 2022-01-06 2022-05-20 北京全路通信信号研究设计院集团有限公司 基于运行温度的处理器状态非接触监测方法、模块和系统
CN115562465A (zh) * 2022-09-14 2023-01-03 中国科学院空间应用工程与技术中心 一种fpga系统中软核处理器的复位方法和系统

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1804799A (zh) * 2005-01-12 2006-07-19 华为技术有限公司 单片机在线加载升级方法及系统
CN1929669A (zh) * 2006-07-25 2007-03-14 浙江三维通信股份有限公司 一种直放站设备嵌入式软件在应用远程升级的方法
CN101004690A (zh) * 2007-01-09 2007-07-25 京信通信技术(广州)有限公司 嵌入式系统加载程序与应用程序一体化更新方法
CN202041826U (zh) * 2010-12-27 2011-11-16 北京遥测技术研究所 一种基于nios ii微处理器的集成化天线数字控制装置
CN103744713A (zh) * 2014-02-11 2014-04-23 哈尔滨工业大学 基于fpga的嵌入式双核系统的自主配置方法
CN104102518A (zh) * 2014-07-23 2014-10-15 江苏兆伏新能源有限公司 一种双cpu系统及其程序升级方法
CN104282054A (zh) * 2014-08-06 2015-01-14 上海交通大学 基于sopc技术的mvb总线解码与随车记录系统
CN104346239A (zh) * 2014-06-27 2015-02-11 国家电网公司 嵌入式系统中应用程序的异常恢复方法和装置
CN104572206A (zh) * 2015-01-14 2015-04-29 厦门为那通信科技有限公司 应用程序自更新和备份恢复的方法
CN104698941A (zh) * 2015-03-11 2015-06-10 南京大全自动化科技有限公司 基于fpga的嵌入式双核继电保护系统

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1804799A (zh) * 2005-01-12 2006-07-19 华为技术有限公司 单片机在线加载升级方法及系统
CN1929669A (zh) * 2006-07-25 2007-03-14 浙江三维通信股份有限公司 一种直放站设备嵌入式软件在应用远程升级的方法
CN101004690A (zh) * 2007-01-09 2007-07-25 京信通信技术(广州)有限公司 嵌入式系统加载程序与应用程序一体化更新方法
CN202041826U (zh) * 2010-12-27 2011-11-16 北京遥测技术研究所 一种基于nios ii微处理器的集成化天线数字控制装置
CN103744713A (zh) * 2014-02-11 2014-04-23 哈尔滨工业大学 基于fpga的嵌入式双核系统的自主配置方法
CN104346239A (zh) * 2014-06-27 2015-02-11 国家电网公司 嵌入式系统中应用程序的异常恢复方法和装置
CN104102518A (zh) * 2014-07-23 2014-10-15 江苏兆伏新能源有限公司 一种双cpu系统及其程序升级方法
CN104282054A (zh) * 2014-08-06 2015-01-14 上海交通大学 基于sopc技术的mvb总线解码与随车记录系统
CN104572206A (zh) * 2015-01-14 2015-04-29 厦门为那通信科技有限公司 应用程序自更新和备份恢复的方法
CN104698941A (zh) * 2015-03-11 2015-06-10 南京大全自动化科技有限公司 基于fpga的嵌入式双核继电保护系统

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106528311A (zh) * 2016-09-29 2017-03-22 杭州芯讯科技有限公司 嵌入式系统及其控制方法
CN108121625A (zh) * 2016-11-30 2018-06-05 联芯科技有限公司 出错时获取数据的方法
CN106951342A (zh) * 2017-03-17 2017-07-14 数据通信科学技术研究所 一种TF卡片内Flash的纠错方法
CN106951342B (zh) * 2017-03-17 2019-07-19 数据通信科学技术研究所 一种TF卡片内Flash的纠错方法
CN109032823A (zh) * 2018-05-30 2018-12-18 出门问问信息科技有限公司 一种语音模块异常自恢复的方法及装置
CN114518183A (zh) * 2022-01-06 2022-05-20 北京全路通信信号研究设计院集团有限公司 基于运行温度的处理器状态非接触监测方法、模块和系统
CN115562465A (zh) * 2022-09-14 2023-01-03 中国科学院空间应用工程与技术中心 一种fpga系统中软核处理器的复位方法和系统

Similar Documents

Publication Publication Date Title
CN105653384A (zh) 一种软核cpu复位方法及主从式系统
CN103403689B (zh) 一种资源故障管理方法、装置及系统
CN102890662B (zh) 通过对usb hid设备进行二次枚举以识别主机操作系统的方法
CN103955414A (zh) USB Host故障自恢复的方法及装置
CN105302383A (zh) 一种电容触摸传感器抗干扰的方法和设备
CN104331318B (zh) 一种嵌入式双系统及其工作方法
CN107038104A (zh) 一种远程监控异构加速卡的方法
CN111193583B (zh) 具有时钟故障恢复的接收装置和包括接收装置的传输系统
CN104010077B (zh) 一种信息处理方法及电子设备
CN102681739A (zh) 触摸屏静电消除方法
CN104750226B (zh) Usb otg模式识别系统及方法
CN102681450B (zh) 一种芯片控制方法及设备
CN204256036U (zh) 供电电源中断的掉电信号产生电路
DE102014116538A1 (de) Selektives Deaktivieren von Sensoren und dazugehörigen Funktionen
CN103423186A (zh) 一种检测风扇故障的方法及一种电子设备
CN103186447B (zh) 一种总线读写检测装置
CN105095041A (zh) 芯片的调试方法
CN102156899B (zh) Rfid标签芯片时钟管理单元
CN108226752B (zh) 一种芯片的故障修复方法、装置和设备
CN206363301U (zh) 超低功耗的type_c接口协议芯片
Mukherjee et al. Formal verification of hardware/software power management strategies
CN105159843B (zh) 一种基于超级块的多通道管理方法与系统
CN109391481A (zh) 虚拟化网元故障自愈方法和装置
US10678983B1 (en) Local retiming optimization for circuit designs
CN207182275U (zh) 一种从机设备及高频载波同步的实现系统

Legal Events

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

Application publication date: 20160608

RJ01 Rejection of invention patent application after publication