CN116088914A - 多核异构片上系统升级方法及装置 - Google Patents
多核异构片上系统升级方法及装置 Download PDFInfo
- Publication number
- CN116088914A CN116088914A CN202211624895.7A CN202211624895A CN116088914A CN 116088914 A CN116088914 A CN 116088914A CN 202211624895 A CN202211624895 A CN 202211624895A CN 116088914 A CN116088914 A CN 116088914A
- Authority
- CN
- China
- Prior art keywords
- chip
- storage slot
- state
- upgrade
- slot
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
- G06F8/654—Updates using techniques specially adapted for alterable solid state memories, e.g. for EEPROM or flash memories
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/76—Architectures of general purpose stored program computers
- G06F15/78—Architectures of general purpose stored program computers comprising a single central processing unit
- G06F15/7807—System on chip, i.e. computer system on a single chip; System in package, i.e. computer system on one or more chips in a single package
- G06F15/7821—Tightly coupled to memory, e.g. computational memory, smart memory, processor in memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/76—Architectures of general purpose stored program computers
- G06F15/78—Architectures of general purpose stored program computers comprising a single central processing unit
- G06F15/7839—Architectures of general purpose stored program computers comprising a single central processing unit with memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
- G06F8/656—Updates while running
-
- Y—GENERAL 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
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE 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/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Computing Systems (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Stored Programmes (AREA)
Abstract
本申请公开了一种多核异构片上系统升级方法及装置,涉及汽车电子技术领域。方法包括:在片上系统处于正常工作状态的情况下,微控制单元选择非易失闪存包括的内容相同的第一存储插槽和第二存储插槽分别作为工作存储插槽和备份存储插槽,微处理器选择嵌入式多媒体卡包括的两个内容不同的存储插槽中当前运行的存储插槽作为工作存储插槽,将另一个存储插槽作为备份存储插槽;在接收到升级指令的情况下,将微控制单元和微处理器各自的升级镜像分别写入各自的备份存储插槽;重启片上系统;在片上系统重启成功的情况下,将第一存储插槽与第二存储插槽进行同步,片上系统升级完成。根据本申请实施例,微控制单元和微处理器能够采用不同升级策略进行升级。
Description
技术领域
本申请属于汽车电子技术领域,尤其涉及一种多核异构片上系统升级方法及装置。
背景技术
片上系统(System-on-a-chip,SoC)包括微控制单元(Microcontroller Unit,MCU)和微处理器(Microprocessor Unit,MPU)。SoC外接两种不同大小的非易失存储器,其中,小的给MCU使用,大的给MPU使用。存储器上主要存储代码和数据,为了保证SoC升级的安全性,存储器分成两个存储插槽(slot)。每个存储器都有自己的slot管理逻辑,哪个slot是当前运行slot,哪个slot是备份slot。在升级时,可能单独升级MCU、MPU,也可能同时升级MCU和MPU。
多核异构SoC在基于空中下载(Over-the-Air,OTA)技术进行升级时,为了支持失败回滚等功能,会将两种存储器统一划分为两个slot,一个slot作为当前运行slot,另一个slot作为备份slot。SoC在OTA升级时,先将用于升级的新镜像(image)存储于备份slot,重启SoC,当验证SoC升级成功后,将备份slot切换为当前运行slot,同时将之前运行的slot切换为备份slot。
在上述这种升级方式中,MCU和MPU共用slot进行升级,使得MCU和MPU的slot只能使用同一种升级策略,而不能采用不同的升级策略。
发明内容
本申请实施例提供一种多核异构片上系统升级方法及装置,能够解决MCU和MPU不能采用不同的升级策略进行升级的问题。
第一方面,本申请实施例提供一种多核异构片上系统升级方法,片上系统包括:微控制单元和微处理器,片上系统外接非易失闪存(nor flash)和嵌入式多媒体卡(embeddedMultimedia Card,eMMC),非易失闪存包括第一存储插槽和第二存储插槽,第一存储插槽和第二存储插槽为内容相同的存储插槽,嵌入式多媒体卡包括两个内容不同的存储插槽;
多核异构片上系统升级方法包括:
在片上系统处于正常工作状态的情况下,微控制单元选择第一存储插槽和第二存储插槽分别作为工作存储插槽和备份存储插槽,微处理器选择两个内容不同的存储插槽中当前运行的存储插槽作为工作存储插槽,将另外一个存储插槽作为备份存储插槽;
在接收到升级指令的情况下,将微控制单元和微处理器各自的升级镜像分别写入各自的备份存储插槽;
重启片上系统;
在片上系统重启成功的情况下,将第一存储插槽与第二存储插槽进行同步,片上系统升级完成。
第二方面,本申请实施例提供一种多核异构片上系统升级装置,包括:
选择模块,用于在片上系统处于正常工作状态的情况下,微控制单元选择第一存储插槽和第二存储插槽分别作为工作存储插槽和备份存储插槽,微处理器选择两个内容不同的存储插槽中当前运行的存储插槽作为工作存储插槽,将另外一个存储插槽作为备份存储插槽;
第一写入模块,用于在接收到升级指令的情况下,将微控制单元和微处理器各自的升级镜像分别写入各自的备份存储插槽;
重启模块,用于重启片上系统;
第一同步模块,用于在片上系统重启成功的情况下,将第一存储插槽与第二存储插槽进行同步,片上系统升级完成。
在本申请实施例中,片上系统包括微控制单元和微处理器,片上系统外接非易失闪存和嵌入式多媒体卡,非易失闪存包括第一存储插槽和第二存储插槽,第一存储插槽和第二存储插槽为内容相同的存储插槽,嵌入式多媒体卡包括两个内容不同的存储插槽;在片上系统处于正常工作状态的情况下,微控制单元选择第一存储插槽和第二存储插槽分别作为工作存储插槽和备份存储插槽,微处理器选择两个内容不同的存储插槽中当前运行的存储插槽作为工作存储插槽,将另外一个存储插槽作为备份存储插槽;在接收到升级指令的情况下,将微控制单元和微处理器各自的升级镜像分别写入各自的备份存储插槽;重启片上系统;在片上系统重启成功的情况下,将第一存储插槽与第二存储插槽进行同步,片上系统升级完成。如此,微控制单元和微处理器能够使用不同的存储插槽进行升级,实现了微控制单元和微处理器的升级解耦,微控制单元和微处理器能够采用不同的升级策略进行升级。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例中所需要使用的附图作简单的介绍,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的多核异构片上系统升级方法的流程示意图;
图2是本申请实施例提供的多核异构片上系统的状态变化示意图;
图3是本申请实施例提供的多核异构片上系统升级装置的结构示意图。
具体实施方式
下面将详细描述本申请的各个方面的特征和示例性实施例,为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及具体实施例,对本申请进行进一步详细描述。应理解,此处所描述的具体实施例仅意在解释本申请,而不是限定本申请。对于本领域技术人员来说,本申请可以在不需要这些具体细节中的一些细节的情况下实施。下面对实施例的描述仅仅是为了通过示出本申请的示例来提供对本申请更好的理解。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
下面结合附图,通过具体的实施例及其应用场景对本申请实施例提供的多核异构片上系统升级方法及装置进行详细地说明。
图1是本申请实施例提供的多核异构片上系统升级方法的流程示意图。本申请实施例中的多核异构片上系统可以包括:微控制单元和微处理器,片上系统外接非易失闪存和嵌入式多媒体卡,非易失闪存包括第一存储插槽和第二存储插槽,第一存储插槽和第二存储插槽为内容相同的存储插槽,嵌入式多媒体卡包括两个内容不同的存储插槽。
如图1所示,多核异构片上系统升级方法可以包括:
S101:在片上系统处于正常工作状态的情况下,微控制单元选择第一存储插槽和第二存储插槽分别作为工作存储插槽和备份存储插槽,微处理器选择两个内容不同的存储插槽中当前运行的存储插槽作为工作存储插槽,将另外一个存储插槽作为备份存储插槽;
S102:在接收到升级指令的情况下,将微控制单元和微处理器各自的升级镜像分别写入各自的备份存储插槽;
S103:重启片上系统;
S104:在片上系统重启成功的情况下,将第一存储插槽与第二存储插槽进行同步,片上系统升级完成。
上述各个步骤的具体实现方式将在下文中进行详细描述。
在本申请实施例中,片上系统包括微控制单元和微处理器,片上系统外接非易失闪存和嵌入式多媒体卡,非易失闪存包括第一存储插槽和第二存储插槽,第一存储插槽和第二存储插槽为内容相同的存储插槽,嵌入式多媒体卡包括两个内容不同的存储插槽;在片上系统处于正常工作状态的情况下,微控制单元选择第一存储插槽和第二存储插槽分别作为工作存储插槽和备份存储插槽,微处理器选择两个内容不同的存储插槽中当前运行的存储插槽作为工作存储插槽,将另外一个存储插槽作为备份存储插槽;在接收到升级指令的情况下,将微控制单元和微处理器各自的升级镜像分别写入各自的备份存储插槽;重启片上系统;在片上系统重启成功的情况下,将第一存储插槽与第二存储插槽进行同步,片上系统升级完成。如此,微控制单元和微处理器能够使用不同的存储插槽进行升级,实现了微控制单元和微处理器的升级解耦,微控制单元和微处理器能够采用不同的升级策略进行升级。
在本申请实施例的一些可能实现中,微控制单元可以始终选择第一存储插槽作为其工作存储插槽。
示例性地,非易失闪存包括slot A和slot B,在片上系统处于正常工作状态的情况下,微控制单元始终选择非易失闪存的slot A作为其工作slot,将非易失闪存的slot B作为其备份slot,在微控制单元的工作slot工作异常的情况下,会启用备份slot,以提高微控制单元的健壮性和安全性。嵌入式多媒体卡也包括一套slot A和slot B,在片上系统处于正常工作状态的情况下,微处理器选择嵌入式多媒体卡当前运行的slot作为其工作slot,例如,嵌入式多媒体卡的slot A为当前运行的slot,则微处理器选择嵌入式多媒体卡的slot A作为其工作slot,将嵌入式多媒体卡的slot B作为其备份slot。当微处理器工作slot出现异常时,也不会启用微处理器的备份slot。因为微控制单元的升级image远小于微处理器的升级image,而且关键的功能集中在微控制单元,对微控制单元和微处理器升级采用两种不同的策略,既可以保证在线升级的效率,也可以提高片上系统整体的健壮性和安全性。
在接收到OTA管理器(master)发来的升级指令的情况下,将微控制单元的升级image写入非易失闪存的slot B,将微处理器的升级image写入嵌入式多媒体卡的slot B;重启片上系统;在片上系统重启成功的情况下,将非易失闪存的slot A与非易失闪存的slot B进行同步,即将非易失闪存的slot B同步给非易失闪存的slot A,多核异构片上系统升级完成。
在本申请实施例的一些可能实现中,由于微控制单元始终选择第一存储插槽作为其工作存储插槽,因此,需要保持第一存储插槽和第二存储插槽中的image一致,因此,需要将第一存储插槽与第二存储插槽进行同步。
在本申请实施例的一些可能实现中,在S102之前,本申请实施例提供的多核异构片上系统升级方法还可以包括:为微控制单元和微处理器写入升级标志,以使片上系统进入开始升级(update_begin)状态。
在本申请实施例的一些可能实现中,在S103之前,本申请实施例提供的多核异构片上系统升级方法还可以包括:将片上系统的状态修改为升级镜像就绪(image_ready)状态。
在本申请实施例的一些可能实现中,在S103之后,本申请实施例提供的多核异构片上系统升级方法还可以包括:将片上系统的状态修改为开始升级验证(verify_begin)状态,其中,在片上系统处于开始升级验证状态的情况下,用于存储升级验证状态的字段的值修改为用于表示无法启动的值。
其中,用于存储升级验证状态的字段可以为verify_status,用于表示无法启动的值可以为unbootable。当verify_status字段的值为unbootable时,如果片上系统重启不成功,会再次重启片上系统,此时由于verify_status的值为unbootable,片上系统重启之后会进入回退状态。
在本申请实施例的一些可能实现中,在S104之前,本申请实施例提供的多核异构片上系统升级方法还可以包括:将片上系统的状态修改为升级验证成功(verify_succ)状态。
在本申请实施例的一些可能实现中,在S104之前,本申请实施例提供的多核异构片上系统升级方法还可以包括:与升级管理组件(OTA master)进行通信,确认升级是否成功;在升级管理组件确认升级成功的情况下,将片上系统的状态修改为升级成功(update_succ)状态。
通常情况下,OTA master会同时管理多个芯片,在升级时会进行多个芯片的升级,当OTA master确认多个芯片都升级成功的情况下,OTA master确认本次升级成功。本申请实施例并不对OTA master确认本次升级是否成功所采用的方式进行限定,任何可用的方式均可以应用于本申请实施例中。当OTA master确认本次升级成功,则将片上系统的状态修改为升级成功状态。
在本申请实施例的一些可能实现中,在S104之前,本申请实施例提供的多核异构片上系统升级方法还可以包括:将片上系统的状态修改为开始同步(sync_begin)状态。
在本申请实施例的一些可能实现中,在S104之后,本申请实施例提供的多核异构片上系统升级方法还可以包括:将片上系统的状态修改为同步完成(sync_finish)状态。
在本申请实施例的一些可能实现中,在S104之后,本申请实施例提供的多核异构片上系统升级方法还可以包括:清除升级标志;将片上系统的状态修改为正常工作状态。
在本申请实施例的一些可能实现中,本申请实施例提供的多核异构片上系统升级方法还可以包括:在满足升级回退条件的情况下,进行升级回退,其中,满足升级回退条件包括以下所列项任意一种:
升级镜像写入备份存储插槽失败;
升级管理组件确认升级不成功;
接收到升级中断指令;
片上系统重启失败。
在本申请实施例的一些可能实现中,进行升级回退,可以包括:重启片上系统;将第二存储插槽与第一存储插槽进行同步。
需要说明的是,对于微控制单元而言,由于第一存储插槽和第二存储插槽是内容相同的两个存储插槽,微控制单元始终选择第一存储插槽作为其工作存储插槽,因此,需要保持第一存储插槽和第二存储插槽中的image一致,因此,在升级回退时,需要将第二存储插槽与第一存储插槽进行同步。对于微处理器而言,由于嵌入式多媒体卡包括两个内容不同的存储插槽,在升级回退时,重新选择升级前的工作存储插槽即可。
在本申请实施例的一些可能实现中,在升级回退,重启片上系统之前,本申请实施例提供的多核异构片上系统升级方法还可以包括:将片上系统的状态修改为升级回退状态。
在本申请实施例的一些可能实现中,将第二存储插槽与第一存储插槽进行同步之后,本申请实施例提供的多核异构片上系统升级方法还可以包括:将片上系统的状态修改为同步完成状态;清除升级标志;将片上系统的状态修改为正常工作状态。
在本申请实施例的一些可能实现中,将第二存储插槽与第一存储插槽进行同步之前,本申请实施例提供的多核异构片上系统升级方法还可以包括:将片上系统的状态修改为开始同步状态。
在本申请实施例的一些可能实现中,将第二存储插槽与第一存储插槽进行同步之前,本申请实施例提供的多核异构片上系统升级方法还可以包括:将片上系统的状态修改为更新失败状态。
需要说明的是,本申请实施例中的将第一存储插槽与第二存储插槽进行同步指将第一存储插槽中的内容更新为与第二存储插槽中的内容相同,即利用第二存储插槽中的内容覆盖第一存储插槽中的内容;本申请实施例中的将第二存储插槽与第一存储插槽进行同步指将第二存储插槽中的内容更新为与第一存储插槽中的内容相同,即利用第一存储插槽中的内容覆盖第二存储插槽中的内容。
在本申请实施例的一些可能实现中,对于片上系统的状态可以通过非易失闪存两个存储插槽和嵌入式多媒体卡两个存储插槽的状态进行确定,其中,非易失闪存两个存储插槽和嵌入式多媒体卡两个存储插槽的状态通过一些字段值进行表示。示例性地,在片上系统当前处于正常状态时,微控制单元选择非易失闪存的slot A作为其工作slot,微处理器选择嵌入式多媒体卡当前运行的slot A作为其工作slot。则片上系统的状态与存储插槽的字段值对应关系可以如表1所示。
表1
其中,上述表1中,sync字段表示升级标志,当sync字段为F时,表示微控制单元升级,slot字段表示当前启动的slot,verify_status字段用于表示各阶段状态,其中,X表示初值,该初值可以为任意值,bootable表示可重新启动片上系统,unbootable表示不可以重新启动片上系统,verified表示验证,begin_sync表示开始同步,succ字段表示存储插槽状态,当succ字段为T时,表示该存储插槽处于已启动状态,当succ字段为0时,表示该存储插槽处于升级状态,pri字段用于表示存储插槽工作的优先级,微处理器选择优先级高的存储插槽作为工作存储插槽,pri字段为0时表示该存储插槽处于升级状态。
图2是本申请实施例提供的多核异构片上系统的状态变化示意图。
在图2中,当片上系统处于正常工作状态时,重启片上系统,片上系统重启之后,片上系统还会处于正常工作状态。
当片上系统处于正常工作状态接收到升级指令之后,写入升级标志,片上系统进入开始升级状态。
将微控制单元和微处理器各自的升级镜像分别写入各自的备份存储插槽成功之后,片上系统进入升级镜像就绪状态。
当片上系统处于升级镜像就绪状态时,重启片上系统,同时片上系统进入开始升级验证状态。
当片上系统重启成功之后,片上系统进入升级验证成功状态。此时,升级image在备份slot上启动成功。
当片上系统处于升级验证成功状态时,与OTA master进行通信进行升级确认,当OTA master确认本次升级成功的情况下,片上系统进入升级成功状态。然后,片上系统进入开始同步状态。
当片上系统处于开始同步状态时,将微控制单元的备份存储插槽同步给工作存储插槽。当将存储插槽的备份slot同步给工作slot之后,存储插槽进入同步完成状态,然后,清除升级标志,片上系统进入正常工作状态。
当将升级image写入备份slot失败、片上系统重启失败、OTA master确认本次失败等,片上系统进入升级回退状态。
当片上系统处于升级回退状态时,重启片上系统,当片上系统重启成功之后,片上系统进入升级失败状态。然后,片上系统进入开始同步状态。
当片上系统处于升级回退时的开始同步状态时,将微控制单元的工作存储插槽同步给备份存储插槽。当将微控制单元的工作存储插槽同步给备份存储插槽之后,片上系统进入同步完成状态,然后,清除升级标志,片上系统进入正常工作状态。
本申请实施例还提供一种多核异构片上系统升级装置,如图3所示。图3是本申请实施例提供的多核异构片上系统升级装置的结构示意图,该多核异构片上系统升级装置300可以包括:
选择模块301,用于在片上系统处于正常工作状态的情况下,微控制单元选择第一存储插槽和第二存储插槽分别作为工作存储插槽和备份存储插槽,微处理器选择两个内容不同的存储插槽中当前运行的存储插槽作为工作存储插槽,将另外一个存储插槽作为备份存储插槽;
第一写入模块302,用于在接收到升级指令的情况下,将微控制单元和微处理器各自的升级镜像分别写入各自的备份存储插槽;
重启模块303,用于重启片上系统;
第一同步模块304,用于在片上系统重启成功的情况下,将第一存储插槽与第二存储插槽进行同步,片上系统升级完成。
在本申请实施例中,片上系统包括微控制单元和微处理器,片上系统外接非易失闪存和嵌入式多媒体卡,非易失闪存包括第一存储插槽和第二存储插槽,第一存储插槽和第二存储插槽为内容相同的存储插槽,嵌入式多媒体卡包括两个内容不同的存储插槽;在片上系统处于正常工作状态的情况下,微控制单元选择第一存储插槽和第二存储插槽分别作为工作存储插槽和备份存储插槽,微处理器选择两个内容不同的存储插槽中当前运行的存储插槽作为工作存储插槽,将另外一个存储插槽作为备份存储插槽;在接收到升级指令的情况下,将微控制单元和微处理器各自的升级镜像分别写入各自的备份存储插槽;重启片上系统;在片上系统重启成功的情况下,将第一存储插槽与第二存储插槽进行同步,片上系统升级完成。如此,微控制单元和微处理器能够使用不同的存储插槽进行升级,实现了微控制单元和微处理器的升级解耦,微控制单元和微处理器能够采用不同的升级策略进行升级。
在本申请实施例的一些可能实现中,本申请实施例提供的多核异构片上系统升级装置300还可以包括:
第二写入模块,用于为微控制单元和微处理器写入升级标志,以使片上系统进入开始升级状态。
在本申请实施例的一些可能实现中,本申请实施例提供的多核异构片上系统升级装置300还可以包括:
状态修改模块,用于将片上系统的状态修改为升级镜像就绪状态。
在本申请实施例的一些可能实现中,状态修改模块还可以用于:
将片上系统的状态修改为开始升级验证状态,其中,在片上系统处于开始升级验证状态的情况下,用于存储升级验证状态的字段的值为用于表示无法启动的值。
在本申请实施例的一些可能实现中,状态修改模块还可以用于:
将片上系统的状态修改为升级验证成功状态。
在本申请实施例的一些可能实现中,本申请实施例提供的多核异构片上系统升级装置300还可以包括:
升级确认模块,用于与升级管理组件进行通信,确认升级是否成功;
相应地,状态修改模块还可以用于:在升级管理组件确认升级成功的情况下,将片上系统的状态修改为升级成功状态。
在本申请实施例的一些可能实现中,状态修改模块还可以用于:
将片上系统的状态修改为开始同步状态。
在本申请实施例的一些可能实现中,状态修改模块还可以用于:
将片上系统的状态修改为同步完成状态。
在本申请实施例的一些可能实现中,本申请实施例提供的多核异构片上系统升级装置300还可以包括:
清除模块,用于清除升级标志;
相应地,状态修改模块还可以用于:将片上系统的状态修改为正常工作状态。
在本申请实施例的一些可能实现中,本申请实施例提供的多核异构片上系统升级装置300还可以包括:
升级回退模块,用于在满足升级回退条件的情况下,进行升级回退,其中,满足升级回退条件包括以下所列项任意一种:
升级镜像写入备份存储插槽失败;
升级管理组件确认升级不成功;
接收到升级中断指令;
片上系统重启失败。
在本申请实施例的一些可能实现中,升级回退模块可以包括:
重新子模块,用于重启片上系统;
同步子模块,用于将第二存储插槽与第一存储插槽进行同步。
在本申请实施例的一些可能实现中,状态修改模块还可以用于:将片上系统的状态修改为同步完成状态;以及在清除升级标志之后,将片上系统的状态修改为正常工作状态。
在本申请实施例的一些可能实现中,状态修改模块还可以用于:
将片上系统的状态修改为开始同步状态。
在本申请实施例的一些可能实现中,状态修改模块还可以用于:
将片上系统的状态修改为升级回退状态。
在本申请实施例的一些可能实现中,状态修改模块还可以用于:
将片上系统的状态修改为更新失败状态。
需要明确的是,本申请并不局限于上文所描述并在图中示出的特定配置和处理。为了简明起见,这里省略了对已知方法的详细描述。在上述实施例中,描述和示出了若干具体的步骤作为示例。但是,本申请的方法过程并不限于所描述和示出的具体步骤,本领域的技术人员可以在领会本申请的精神后,做出各种改变、修改和添加,或者改变步骤之间的顺序。
以上所述的结构框图中所示的功能块可以实现为硬件、软件、固件或者它们的组合。当以硬件方式实现时,其可以例如是电子电路、专用集成电路(Application SpecificIntegrated Circuit,ASIC)、适当的固件、插件、功能卡等等。当以软件方式实现时,本申请的元素是被用于执行所需任务的程序或者代码段。程序或者代码段可以存储在机器可读介质中,或者通过载波中携带的数据信号在传输介质或者通信链路上传送。“机器可读介质”可以包括能够存储或传输信息的任何介质。机器可读介质的例子包括电子电路、半导体存储器设备、ROM、闪存、可擦除只读存储器(Erasable Read Only Memory,EROM)、软盘、只读光盘(Compact Disc Read-Only Memory,CD-ROM)、光盘、硬盘、光纤介质、射频(RadioFrequency,RF)链路,等等。代码段可以经由诸如因特网、内联网等的计算机网络被下载。
还需要说明的是,本申请中提及的示例性实施例,基于一系列的步骤或者装置描述一些方法或系统。但是,本申请不局限于上述步骤的顺序,也就是说,可以按照实施例中提及的顺序执行步骤,也可以不同于实施例中的顺序,或者若干步骤同时执行。
上面参考根据本公开的实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本公开的各方面。应当理解,流程图和/或框图中的每个方框以及流程图和/或框图中各方框的组合可以由计算机程序指令实现。这些计算机程序指令可被提供给通用计算机、专用计算机、或其它可编程数据处理装置的处理器,以产生一种机器,使得经由计算机或其它可编程数据处理装置的处理器执行的这些指令使能对流程图和/或框图的一个或多个方框中指定的功能/动作的实现。这种处理器可以是但不限于是通用处理器、专用处理器、特殊应用处理器或者现场可编程逻辑电路。还可理解,框图和/或流程图中的每个方框以及框图和/或流程图中的方框的组合,也可以由执行指定的功能或动作的专用硬件来实现,或可由专用硬件和计算机指令的组合来实现。
以上所述,仅为本申请的具体实施方式,所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的系统、模块和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。应理解,本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本申请的保护范围之内。
Claims (16)
1.一种多核异构片上系统升级方法,其特征在于,所述片上系统包括微控制单元和微处理器,所述片上系统外接非易失闪存和嵌入式多媒体卡,所述非易失闪存包括第一存储插槽和第二存储插槽,所述第一存储插槽和所述第二存储插槽为内容相同的存储插槽,所述嵌入式多媒体卡包括两个内容不同的存储插槽;
所述方法包括:
在所述片上系统处于正常工作状态的情况下,所述微控制单元选择所述第一存储插槽和所述第二存储插槽分别作为工作存储插槽和备份存储插槽,所述微处理器选择所述两个内容不同的存储插槽中当前运行的存储插槽作为工作存储插槽,将另外一个存储插槽作为备份存储插槽;
在接收到升级指令的情况下,将所述微控制单元和所述微处理器各自的升级镜像分别写入各自的备份存储插槽;
重启所述片上系统;
在所述片上系统重启成功的情况下,将所述第一存储插槽与所述第二存储插槽进行同步,所述片上系统升级完成。
2.根据权利要求1所述的方法,其特征在于,所述将所述微控制单元和所述微处理器各自的升级镜像分别写入各自的备份存储插槽之前,所述方法还包括:
为所述微控制单元和所述微处理器写入升级标志,以使所述片上系统进入开始升级状态。
3.根据权利要求2所述的方法,其特征在于,所述重启所述片上系统之前,所述方法还包括:
将所述片上系统的状态修改为升级镜像就绪状态。
4.根据权利要求3所述的方法,其特征在于,所述重启所述片上系统之后,所述方法还包括:
将所述片上系统的状态修改为开始升级验证状态,其中,在所述片上系统处于开始升级验证状态的情况下,用于存储升级验证状态的字段的值为用于表示无法启动的值。
5.根据权利要求4所述的方法,其特征在于,所述将所述第一存储插槽与所述第二存储插槽进行同步之前,所述方法还包括:
将所述片上系统的状态修改为升级验证成功状态。
6.根据权利要求5所述的方法,其特征在于,所述将所述第一存储插槽与所述第二存储插槽进行同步之前,所述方法还包括:
与升级管理组件进行通信,确认升级是否成功;
在所述升级管理组件确认升级成功的情况下,将所述片上系统的状态修改为升级成功状态。
7.根据权利要求6所述的方法,其特征在于,所述将所述第一存储插槽与所述第二存储插槽进行同步之前,所述方法还包括:
将所述片上系统的状态修改为开始同步状态。
8.根据权利要求7所述的方法,其特征在于,所述将所述第一存储插槽与所述第二存储插槽进行同步之后,所述方法还包括:
将所述片上系统的状态修改为同步完成状态。
9.根据权利要求8所述的方法,其特征在于,所述将所述片上系统的状态修改为同步完成状态之后,所述方法还包括:
清除所述升级标志;
将所述片上系统的状态修改为正常工作状态。
10.根据权利要求1至9任一项所述的方法,其特征在于,所述方法还包括:
在满足升级回退条件的情况下,进行升级回退,其中,所述满足升级回退条件包括以下所列项任意一种:
所述升级镜像写入所述备份存储插槽失败;
升级管理组件确认升级不成功;
接收到升级中断指令;
所述片上系统重启失败。
11.根据权利要求10所述的方法,其特征在于,所述进行升级回退,包括:
重启所述片上系统;
将所述第二存储插槽与所述第一存储插槽进行同步。
12.根据权利要求11所述的方法,其特征在于,所述将所述第二存储插槽与所述第一存储插槽进行同步之后,所述方法还包括:
将所述片上系统的状态修改为同步完成状态;
清除升级标志;
将所述片上系统的状态修改为正常工作状态。
13.根据权利要求12所述的方法,其特征在于,所述将所述第二存储插槽与所述第一存储插槽进行同步之前,所述方法还包括:
将所述片上系统的状态修改为开始同步状态。
14.根据权利要求11所述的方法,其特征在于,所述重启所述片上系统之前,所述方法还包括:
将所述片上系统的状态修改为升级回退状态。
15.根据权利要求11所述的方法,其特征在于,所述将所述第二存储插槽与所述第一存储插槽进行同步之前,所述方法还包括:
将所述片上系统的状态修改为更新失败状态。
16.一种多核异构片上系统升级装置,其特征在于,所述片上系统包括微控制单元和微处理器,所述片上系统外接非易失闪存和嵌入式多媒体卡,所述非易失闪存包括第一存储插槽和第二存储插槽,所述第一存储插槽和所述第二存储插槽为内容相同的存储插槽,所述嵌入式多媒体卡包括两个内容不同的存储插槽;
所述装置包括:
选择模块,用于在所述片上系统处于正常工作状态的情况下,所述微控制单元选择所述第一存储插槽和所述第二存储插槽分别作为工作存储插槽和备份存储插槽,所述微处理器选择所述两个内容不同的存储插槽中当前运行的存储插槽作为工作存储插槽,将另外一个存储插槽作为备份存储插槽;
第一写入模块,用于在接收到升级指令的情况下,将所述微控制单元和所述微处理器各自的升级镜像分别写入各自的备份存储插槽;
重启模块,用于重启所述片上系统;
第一同步模块,用于在所述片上系统重启成功的情况下,将所述第一存储插槽与所述第二存储插槽进行同步,所述片上系统升级完成。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211624895.7A CN116088914A (zh) | 2022-12-16 | 2022-12-16 | 多核异构片上系统升级方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211624895.7A CN116088914A (zh) | 2022-12-16 | 2022-12-16 | 多核异构片上系统升级方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116088914A true CN116088914A (zh) | 2023-05-09 |
Family
ID=86207376
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211624895.7A Pending CN116088914A (zh) | 2022-12-16 | 2022-12-16 | 多核异构片上系统升级方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116088914A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116775085A (zh) * | 2023-08-17 | 2023-09-19 | 北京芯驰半导体科技有限公司 | 多核异构片上系统更新方法、装置、芯片及交通设备 |
-
2022
- 2022-12-16 CN CN202211624895.7A patent/CN116088914A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116775085A (zh) * | 2023-08-17 | 2023-09-19 | 北京芯驰半导体科技有限公司 | 多核异构片上系统更新方法、装置、芯片及交通设备 |
CN116775085B (zh) * | 2023-08-17 | 2023-11-14 | 北京芯驰半导体科技有限公司 | 多核异构片上系统更新方法、装置、芯片及交通设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN100578461C (zh) | 一种引导程序的备份方法及其备份装置 | |
CN109358882B (zh) | 一种电视终端进行固件升级的方法及装置 | |
CN111142911B (zh) | 具有异常恢复功能的嵌入式系统及其升级方法 | |
US8972591B2 (en) | Method for downloading software | |
CN101923473B (zh) | 嵌入式电子装置及更新其固件的方法 | |
CN102043651B (zh) | Nand闪存及其数据更新管理方法 | |
WO2009046284A1 (en) | Firmware image update and management | |
CN102508686A (zh) | 一种系统安全升级的实现方法及其系统 | |
CN108958767B (zh) | 一种基于最小系统备份实现的安全模式自动升级方法 | |
CN100487648C (zh) | 移动通信终端的文件更新系统和启动管理系统及其方法 | |
CN105094927A (zh) | 一种设备固件升级方法和装置 | |
CN108345464A (zh) | 一种安卓系统的启动方法及安卓车机 | |
CN112612524A (zh) | Linux系统启动的方法、装置、设备及存储介质 | |
CN116088914A (zh) | 多核异构片上系统升级方法及装置 | |
CN104536841A (zh) | 一种Android系统Data分区自修复方法及系统 | |
CN107436783B (zh) | 一种用于移动终端的差分升级方法、存储介质及移动终端 | |
CN115658152A (zh) | 固件升级方法、固件、电子设备和计算机可读存储介质 | |
CN113885926A (zh) | 一种基于安全芯片的操作系统在线升级方法 | |
CN112004155A (zh) | Oad升级方法、装置、智能电视和可读存储介质 | |
CN112905218B (zh) | 一种固件升级方法、装置及设备 | |
CN111209141A (zh) | 运用于系统迭代的双系统切换方法和装置 | |
CN111324488B (zh) | 一种程序备份处理方法及装置 | |
CN113805946B (zh) | 用于安卓系统的非易失属性的处理方法、装置及电子设备 | |
CN116932010B (zh) | 系统固件升级方法、装置及服务器 | |
CN113297011B (zh) | 一种主从mcu升级失败的自恢复方法及系统 |
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 |