CN117251221B - 微控制芯片及其管理方法、存储介质 - Google Patents
微控制芯片及其管理方法、存储介质 Download PDFInfo
- Publication number
- CN117251221B CN117251221B CN202311523224.6A CN202311523224A CN117251221B CN 117251221 B CN117251221 B CN 117251221B CN 202311523224 A CN202311523224 A CN 202311523224A CN 117251221 B CN117251221 B CN 117251221B
- Authority
- CN
- China
- Prior art keywords
- space
- option field
- field
- pin
- boot
- 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
Links
- 238000007726 management method Methods 0.000 title claims abstract description 18
- 230000005540 biological transmission Effects 0.000 claims abstract description 19
- 238000000034 method Methods 0.000 claims description 29
- 238000012545 processing Methods 0.000 claims description 8
- 238000013461 design Methods 0.000 abstract description 3
- 238000013507 mapping Methods 0.000 description 8
- 230000006870 function Effects 0.000 description 4
- 238000004590 computer program Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
- G06F21/572—Secure firmware programming, e.g. of basic input output system [BIOS]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
- G06F21/575—Secure boot
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本申请提出了一种微控制芯片及其管理方法、存储介质。本申请通过设置选项字段来控制引导加载程序空间的编程/擦除权限以及将Boot引脚复用于传输模式,具体地,在确定第一选项字段被配置为第一字段时,允许对引导加载程序空间执行对应的编程/擦除操作,使得引导加载程序空间可以作为闪存的可使用空间,可以增大小容量MCU的闪存的可使用空间,降低用户成本;在确定第二选项字段被配置为第二字段时,将Boot引脚复用为传输模式引脚,并禁止引导加载程序空间的编程/擦除权限,以此将Boot引脚复用为数据传输所需的引脚,可以满足少引脚MCU的设计需求,并降低成本。
Description
技术领域
本申请涉及芯片与电数字数据处理技术领域,具体涉及一种微控制芯片(Micro-controller Unit,简称MCU)及其管理方法、存储介质。
背景技术
微控制芯片又称微控制单元、微控制器,是各种设备的主控单元,其出厂发行时通常带有引导加载程序(Boot loader)及用于指示Boot模式的引脚,称为Boot引脚。引导加载程序是嵌入式系统在加电后执行的第一段代码,其在完成CPU和相关硬件的初始化之后,再将操作系统映像或固化的嵌入式应用程序装载到内存中然后跳转到操作系统所在的空间,启动并运行操作系统。
微控制芯片的闪存预置有空间以存储引导加载程序,即为引导加载程序空间,但引导加载程序通常仅在出厂发行时使用一次,这无疑会影响闪存的可使用空间,尤其是对于小容量少引脚的微控制芯片,闪存空间本身就很小,如果再划分出一块空间专门作为引导加载程序空间,则容易导致闪存空间不够用;而如果购买较大容量的微控制芯片,则会导致成本较高。
发明内容
鉴于此,本申请提供一种微控制芯片及其管理方法、存储介质,可以改善引导加载程序导致闪存的可使用空间低及成本高的问题。
本申请提供的一种针对微控制芯片的管理方法,所述微控制芯片的闪存包括主空间、引导加载程序空间及选项字段(Option word)空间,所述方法包括:
在所述选项字段空间内设置第一选项字段,所述第一选项字段用于指示所述引导加载程序空间的编程/擦除权限;
加载所述第一选项字段;
接收并解析针对所述闪存的编程/擦除指令以得到目标地址和目标数据;
判断所述目标地址是否对应于所述引导加载程序空间;
若否,则允许在所述主空间内对所述目标数据执行对应的编程/擦除操作;
若是,则检测所述第一选项字段;以及,
在确定所述第一选项字段被配置为第一字段时,允许在所述引导加载程序空间对所述目标数据执行对应的编程/擦除操作;在确定所述第一选项字段未被配置为第一字段时,禁止在所述引导加载程序空间对所述目标数据执行对应的编程/擦除操作。
可选地,所述方法还包括:
在所述选项字段空间内设置第二选项字段,所述第二选项字段用于指示所述微控制芯片的Boot引脚的工作模式;
加载并检测所述第二选项字段;
在确定所述第二选项字段被配置为第二字段时,执行所述检测所述第一选项字段这一步骤;
在确定所述第二选项字段未被配置为第二字段时,将所述Boot引脚复用为传输模式引脚,并禁止所述引导加载程序空间的编程/擦除权限。
可选地,在确定所述第二选项字段被配置为第二字段时,所述方法还包括:
检测所述Boot引脚的译码;
在确定所述Boot引脚为第一译码时,执行所述检测所述第一选项字段这一步骤;
在确定所述Boot引脚为第二译码时,禁止所述引导加载程序空间的编程/擦除权限。
可选地,所述传输模式引脚包括GPIO引脚和UART引脚中的至少一种。
可选地,所述方法还包括:
检测所述微控制芯片的Boot引脚的译码;
在确定所述Boot引脚为第一译码时,执行所述检测所述第一选项字段这一步骤。
可选地,在确定所述第一选项字段未被配置为第一字段时,所述方法还包括:从所述主空间对所述目标数据执行对应的编程/擦除操作。
可选地,判断所述目标地址是否对应于所述引导加载程序空间,包括:
判断所述目标数据的占存是否大于所述主空间的内存。
本申请提供的一种微控制芯片,所述微控制芯片的闪存包括主空间、引导加载程序空间及选项字段空间;
所述微控制芯片还包括中央处理器、存储器及接口;
所述接口用于连接外部设备以获取所述外部设备发送的编程/擦除指令;
所述中央处理器用于在所述选项字段空间内设置第一选项字段,所述第一选项字段用于指示所述引导加载程序空间的编程/擦除权限;
所述中央处理器还用于解析所述编程/擦除指令得到目标地址和目标数据;以及,判断所述目标地址是否对应于所述引导加载程序空间;
若否,则允许在所述主空间内对所述目标数据执行对应的编程/擦除操作;
若是,则检测所述选项字段空间的第一选项字段,所述第一选项字段用于指示所述引导加载程序空间的编程/擦除权限;以及,
在确定所述第一选项字段被配置为第一字段时,允许在所述引导加载程序空间对所述目标数据执行对应的编程/擦除操作;
在确定所述第一选项字段未被配置为第一字段时,禁止在所述引导加载程序空间对所述目标数据执行对应的编程/擦除操作。
可选地,所述中央处理器还用于执行如下:
在所述选项字段空间内设置第二选项字段,所述第二选项字段用于指示所述微控制芯片的Boot引脚的工作模式;以及,
加载并检测所述第二选项字段;
在确定所述第二选项字段被配置为第二字段时,检测所述第一选项字段;
在确定所述第二选项字段未被配置为第二字段时,将所述Boot引脚复用为传输模式引脚,并禁止所述引导加载程序空间的编程/擦除权限;
或者,
在所述选项字段空间内设置第二选项字段,所述第二选项字段用于指示所述微控制芯片的Boot引脚的工作模式;以及,
加载并检测所述第二选项字段;
在确定所述第二选项字段被配置为第二字段时,检测所述Boot引脚的译码,在确定所述Boot引脚为第一译码时,检测所述第一选项字段;在确定所述Boot引脚为第二译码时,禁止所述引导加载程序空间的编程/擦除权限;
在确定所述第二选项字段未被配置为第二字段时,将所述Boot引脚复用为传输模式引脚,并禁止所述引导加载程序空间的编程/擦除权限;
或者,
检测所述微控制芯片的Boot引脚的译码;以及,在确定所述Boot引脚为第一译码时,检测所述第一选项字段。
本申请提供的一种存储介质,存储有指令,所述指令适于处理器加载,以执行如上任一项所述的针对微控制芯片的管理方法。
如上所述,本申请通过设置选项字段(即第一选项字段)来控制引导加载程序空间的编程/擦除权限,例如在确定第一选项字段被配置为第一字段时,允许在引导加载程序空间执行对应的编程/擦除操作,使得引导加载程序空间可以作为闪存的可使用空间,从而增大闪存的可使用空间,降低用户成本。
另外,本申请通过设置选项字段(即第二选项字段)来控制Boot引脚的工作模式,例如在确定第二选项字段被配置为第二字段时,将Boot引脚复用为传输模式引脚,并禁止引导加载程序空间的编程/擦除权限,从而可以将Boot引脚复用为数据传输所需的引脚,可以满足少引脚MCU的设计需求,并降低成本。
附图说明
图1是本申请实施例提供的一种针对微控制芯片的管理方法的流程图;
图2是本申请实施例提供的一种得到目标地址的示意图;
图3是本申请实施例提供的另一种针对微控制芯片的管理方法的流程图;
图4是本申请实施例提供的一种微控制芯片的结构示意图。
具体实施方式
为了解决现有技术中存在的上述问题,本申请提供一种微控制芯片及其管理方法、存储介质。这几个保护主题基于同一构思,解决问题的原理基本相同或相似,各保护主题的实施方式可相互参阅,重复之处不予赘述。
为使本申请的目的、技术方案和优点更加清楚,下面将结合具体实施例及相应的附图,对本申请的技术方案进行清楚地描述。显然,下文所描述实施例仅是本申请的一部分实施例,而非全部的实施例。在不冲突的情况下,下述各个实施例及其技术特征可相互组合,且亦属于本申请的技术方案。
在描述本发明的技术方案之前,先对微控制芯片进行简单说明:
微控制芯片,是把中央处理器(Central Process Unit;CPU)的频率与规格做适当缩减,并将内存(memory)、计数器(Timer)、USB、A/D转换、UART、PLC、DMA等周边接口,甚至驱动电路都整合在单一芯片上,形成芯片级的计算机,为不同的应用场合做不同组合控制。
微控制芯片的闪存(Flash)包括主空间、引导加载程序空间及选项字段空间。引导加载程序空间用于配置及存储引导加载程序,以使微控制芯片可以加载引导加载程序,以启动并运行操作系统。选项字段空间用于配置及存储选项字段,所谓选项字段允许用户自定义设置,以限定微控制芯片执行预设功能。主空间是闪存除引导加载程序空间和选项字段空间之外的存储空间,可用于存储微控制芯片与各种应用程序执行相应功能的缓存数据等。
本申请实施例提供的一种针对微控制芯片的管理方法,至少用于管控引导加载程序空间的编程/擦除权限,其执行主体可以是微控制芯片,或者具有该微控制芯片的电子设备、服务器等。请参阅图1,该方法包括如下:
S1:在选项字段空间内设置第一选项字段,所述第一选项字段用于指示引导加载程序空间的编程/擦除权限。
S10:加载第一选项字段。
S2:接收并解析针对闪存的编程/擦除指令以得到目标地址和目标数据。
S3:判断目标地址是否对应于引导加载程序空间。
所述编程/擦除指令至少包含两个信息:一是需要编程/擦除的数据,即目标数据,二是需要编程/擦除的地址,即目标地址。
在一示例中,得到目标地址的方式,包括:
根据编程/擦除指令获取逻辑存储页地址,确定对应的逻辑字线地址;再以逻辑字线地址作为索引查找一级映射表,确定逻辑字线地址对应的物理字线地址和对应的二级映射表地址;然后以逻辑存储页地址作为索引在对应的二级映射表中查找,确定逻辑存储页地址对应的物理存储页地址并作为目标地址。
举例而言,结合图2所示,以解析编程/擦除指令得到的逻辑字线地址4作为索引查找一级映射表,确定对应的物理字线地址4和对应的二级映射表地址4;然后,以逻辑存储页地址作为索引在对应的二级映射表4中查找,确定逻辑存储页地址1对应的物理存储页地址1,即作为目标地址。
本申请可以根据得到的目标地址判断其是否对应于引导加载程序空间。
在另一示例中,本申请可以判断目标数据的占存是否大于主空间的内存,以此来判断目标地址是否对应于引导加载程序空间。例如,目标数据占存大于主空间的内存,以一小容量的微控制芯片为例,所述微控制芯片的闪存容量为32Kbyte(千字节),其中,出厂发行时设定引导加载程序空间的容量为4Kbyte,主空间的容量为26Kbyte,如果目标数据的占存为30Kbyte,此时目标数据的占存大于主空间的容量,则确定目标地址对应于引导加载程序空间。
若确定所述目标地址未对应于引导加载程序空间,则执行S41:允许在主空间内对目标数据执行对应的编程/擦除操作。
若确定所述目标地址对应于引导加载程序空间,则执行S42:检测第一选项字段;以及执行如下S51或S52。
S51:在确定第一选项字段被配置为第一字段时,允许在引导加载程序空间对目标数据执行对应的编程/擦除操作。
S52:在确定第一选项字段未被配置为第一字段时,禁止在引导加载程序空间对目标数据执行对应的编程/擦除操作。
在接收到编程指令时,可以将目标数据写入引导加载程序空间,或者将目标数据需要存储于引导加载程序空间内的部分写入引导加载程序空间;又例如,在接收到擦除指令时,可以将目标数据从引导加载程序空间擦除,或者将目标数据存储于引导加载程序空间内的部分擦除。
在接收到编程指令时,不会将目标数据写入引导加载程序空间,或者不会将目标数据需要存储于引导加载程序空间内的部分写入引导加载程序空间;又例如,在接收到擦除指令时,不会将目标数据从引导加载程序空间擦除,或者不会将目标数据存储于引导加载程序空间内的部分擦除。
如上所述,本申请通过设置第一选项字段来控制引导加载程序空间的编程/擦除权限,即将第一选项字段配置为第一字段,以此使得引导加载程序空间可以作为闪存的可使用空间,从而增大闪存的可使用空间,降低用户成本。
以一小容量的微控制芯片为例,所述微控制芯片的闪存容量为32Kbyte,其中,出厂发行时设定引导加载程序空间的容量为4Kbyte,剩余空间的容量为28Kbyte。如果用户需要使用容量为30Kbyte的空间,则可以自行修改第一选项字段,例如将其配置为0(即第一字段为0),即可以允许对容量为4Kbyte的引导加载程序空间执行对应的编程/擦除操作。
在所述S52中,在确定第一选项字段未被配置为第一字段时,在一示例中,所述方法还包括:禁止从主空间对目标数据执行对应的编程/擦除操作。
在另一示例中,在确定第一选项字段未被配置为第一字段时,所述方法还包括:从主空间对目标数据执行对应的编程/擦除操作。也就是说,即使禁止引导加载程序空间的编程/擦除权限,本申请的主空间也可以根据编程/擦除指令正常执行对应的编程/擦除操作。例如,在主空间具有足够存储目标数据的未使用空间(可称为空闲空间)时,可以将目标数据全部存储于主空间内,此时建立目标数据在主空间内的地址(即实际存储地址)与目标地址之间的映射关系,以便于在后续接收到针对于目标数据的读取指令、或者针对于目标地址(该目标地址至少部分对应于引导加载程序空间)对目标数据的擦除指令时,可以根据该映射关系得到目标数据在主空间内的地址,以此在主空间内的地址进行对应的编程/擦除操作。
本申请实施例提供的另一种针对微控制芯片的管理方法,包括如下:
S1:在选项字段空间内设置第一选项字段和第二选项字段,所述第一选项字段用于指示引导加载程序空间的编程/擦除权限,所述第二选项字段用于指示微控制芯片的Boot引脚的工作模式。
S11:加载第一选项字段和第二选项字段。
S2:接收并解析针对闪存的编程/擦除指令以得到目标地址和目标数据。
S3:判断目标地址是否对应于引导加载程序空间。
若否,则执行S41:允许在主空间内对目标数据执行对应的编程/擦除操作。
若是,则执行S420:检测第二选项字段;以及执行如下S421或S422。
S421:在确定第二选项字段被配置为第二字段时,检测第一选项字段;以及执行如下S51或S52。
S51:在确定第一选项字段被配置为第一字段时,允许在引导加载程序空间对目标数据执行对应的编程/擦除操作。
S52:在确定第一选项字段未被配置为第一字段时,禁止在引导加载程序空间对目标数据执行对应的编程/擦除操作。
S422:在确定第二选项字段未被配置为第二字段时,将Boot引脚复用为传输模式引脚,并禁止引导加载程序空间的编程/擦除权限。
在前述实施例的描述基础上,不同的是,在本实施例中,被配置为第二字段的第二选项字段表示禁止Boot引脚复用为传输模式引脚,即该Boot引脚仅能用于指示Boot模式,此时可选地根据输入的Boot引脚的译码决定是否允许从引导加载程序空间启动,具体地,请参阅图3,所述方法还包括:
S4211:在确定第二选项字段被配置为第二字段时,检测Boot引脚的译码;
S4212:在确定Boot引脚为第一译码时,执行检测第一选项字段这一步骤;以及执行后续的所述S51或所述S52;
S4213:在确定Boot引脚为第二译码时,禁止引导加载程序空间的编程/擦除权限。
以一少引脚的微控制芯片为例,出厂发行时默认微控制芯片仅有一个Boot引脚,输入Boot引脚的译码值为0(即第二译码)时,禁止引导加载程序空间的编程/擦除权限,而输入Boot引脚的译码值为1(即第一译码)时,可以根据被配置为第一字段的第一选项字段,允许引导加载程序空间的编程/擦除权限。
本申请通过设置第二选项字段来控制Boot引脚的工作模式,即将第二选项字段配置为第二字段,将Boot引脚复用为数据传输所需的引脚,可以满足少引脚MCU的设计需求,并降低成本。
传输模式引脚包括但不限于GPIO引脚和UART引脚中的至少一种。
在其他实施例中,本申请可以检测微控制芯片的Boot引脚的译码;只要在确定Boot引脚为第一译码时,即可执行检测第一选项字段这一步骤,即前述S42,然后执行所述S51或所述S52。也就是说,本申请可以直接根据Boot引脚的译码来判断是否将Boot引脚复用为传输模式引脚。
本申请实施例还提供一种微控制芯片,如图4所示,所述微控制芯片7还包括中央处理器71、存储器72及接口73,存储器72可视为闪存,包括主空间、引导加载程序空间及选项字段空间。
所述微控制芯片7复位后自动加载选项字(包括下文的第一选项字段和第二选项字段)。
接口73用于连接外部设备以获取外部设备发送的编程/擦除指令。
中央处理器71用于在选项字段空间内设置第一选项字段,所述第一选项字段用于指示引导加载程序空间的编程/擦除权限;
中央处理器71还用于解析编程/擦除指令得到目标地址和目标数据;
以及,判断目标地址是否对应于引导加载程序空间;
若否,则允许在主空间内对目标数据执行对应的编程/擦除操作;
若是,则检测选项字段空间的第一选项字段;以及,
在确定所述第一选项字段被配置为第一字段时,允许在引导加载程序空间对目标数据执行对应的编程/擦除操作;
在确定第一选项字段未被配置为第一字段时,禁止在引导加载程序空间对目标数据执行对应的编程/擦除操作。
在一可选示例中,所述中央处理器71还用于:
在选项字段空间内设置第二选项字段,所述第二选项字段用于指示微控制芯片7的Boot引脚的工作模式;以及,加载并检测第二选项字段;在确定第二选项字段被配置为第二字段时,才会执行前述检测第一选项字段的步骤;在确定第二选项字段未被配置为第二字段时,将Boot引脚复用为传输模式引脚,并禁止引导加载程序空间的编程/擦除权限;
或者,在选项字段空间内设置第二选项字段,第二选项字段用于指示微控制芯片7的Boot引脚的工作模式;以及,加载并检测第二选项字段;在确定第二选项字段被配置为第二字段时,检测Boot引脚的译码,在确定Boot引脚为第一译码时,才会执行前述检测第一选项字段的步骤;在确定Boot引脚为第二译码时,禁止引导加载程序空间的编程/擦除权限;在确定第二选项字段未被配置为第二字段时,将Boot引脚复用为传输模式引脚,并禁止引导加载程序空间的编程/擦除权限;
或者,检测微控制芯片7的Boot引脚的译码;以及,在确定Boot引脚为第一译码时,才会执行前述检测第一选项字段的步骤。
在图4所示的微控制芯片7中,各个结构元件执行针对微控制芯片7的管理方法的具体原理及过程,可参见上述各实施例,本处不再赘述。
本申请实施例还提供一种存储介质,存储有指令,所述指令适于处理器加载,以执行上述任一实施例中的针对微控制芯片的管理方法的步骤。
在本申请提供的微控制芯片和存储介质的实施例中,可以包含任一上述管理方法实施例的全部技术特征,因此具有对应的有益效果,说明书拓展和解释内容与上述方法的各实施例基本相同,在此不再做赘述。
基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上的一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,被控终端,或者网络设备等)执行本申请每个实施例的方法。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行计算机程序指令时,全部或部分地产生按照本申请实施例的流程或功能。
应理解,本申请实施例提供的微控制芯片为完整的器件,也具备已知的微控制芯片具有的结构,在此仅对其中涉及引导加载程序、Boot引脚和闪存的部件进行说明,对于其他部件不予以赘述。
以上所述仅为本申请的部分实施例,并非因此限制本申请的专利范围,对于本领域普通技术人员而言,凡是利用本说明书及附图内容所作的等效结构变换,均同理包括在本申请的专利保护范围内。
尽管本文采用术语“第一、第二”等描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。另外,单数形式“一”、“一个”和“该”旨在也包括复数形式。术语“或”和“和/或”被解释为包括性的,或意味着任一个或任何组合。仅当元件、功能、步骤或操作的组合在某些方式下内在地互相排斥时,才会出现该定义的例外。
Claims (6)
1.一种针对微控制芯片的管理方法,其特征在于,所述微控制芯片的闪存包括主空间、引导加载程序空间及选项字段空间,所述方法包括:
在所述选项字段空间内设置第一选项字段和第二选项字段,所述第一选项字段用于指示所述引导加载程序空间的编程/擦除权限,所述第二选项字段用于指示所述微控制芯片的Boot引脚的工作模式;
加载所述第一选项字段和第二选项字段;
接收并解析针对所述闪存的编程/擦除指令以得到目标地址和目标数据;
判断所述目标地址是否对应于所述引导加载程序空间;
若否,则允许在所述主空间内对所述目标数据执行对应的编程/擦除操作;
若是,则检测所述第二选项字段;
在确定所述第二选项字段未被配置为第二字段时,将所述Boot引脚复用为传输模式引脚,并禁止所述引导加载程序空间的编程/擦除权限;
在确定所述第二选项字段被配置为第二字段时,检测所述Boot引脚的译码;
在确定所述Boot引脚为第二译码时,禁止所述引导加载程序空间的编程/擦除权限;
在确定所述Boot引脚为第一译码时,检测所述第一选项字段;以及,
在确定所述第一选项字段被配置为第一字段时,允许在所述引导加载程序空间对所述目标数据执行对应的编程/擦除操作;在确定所述第一选项字段未被配置为所述第一字段时,禁止在所述引导加载程序空间对所述目标数据执行对应的编程/擦除操作。
2.根据权利要求1所述的方法,其特征在于,所述传输模式引脚包括GPIO引脚和UART引脚中的至少一种。
3.根据权利要求1所述的方法,其特征在于,在确定所述第一选项字段未被配置为第一字段时,所述方法还包括:
从所述主空间对所述目标数据执行对应的编程/擦除操作。
4.根据权利要求1所述的方法,其特征在于,判断所述目标地址是否对应于所述引导加载程序空间,包括:
判断所述目标数据的占存是否大于所述主空间的内存。
5.一种微控制芯片,其特征在于,所述微控制芯片的闪存包括主空间、引导加载程序空间及选项字段空间;
所述微控制芯片还包括中央处理器、存储器及接口;
所述接口用于连接外部设备以获取所述外部设备发送的编程/擦除指令;
所述中央处理器用于在所述选项字段空间内设置第一选项字段和第二选项字段,所述第一选项字段用于指示所述引导加载程序空间的编程/擦除权限,所述第二选项字段用于指示所述微控制芯片的Boot引脚的工作模式;
所述中央处理器还用于:
解析所述编程/擦除指令得到目标地址和目标数据;以及,判断所述目标地址是否对应于所述引导加载程序空间;
若否,则允许在所述主空间内对所述目标数据执行对应的编程/擦除操作;
若是,则检测所述第二选项字段;以及,
在确定所述第二选项字段未被配置为第二字段时,将所述Boot引脚复用为传输模式引脚,并禁止所述引导加载程序空间的编程/擦除权限;
在确定所述第二选项字段被配置为第二字段时,检测所述Boot引脚的译码,且在确定所述Boot引脚为第二译码时,禁止所述引导加载程序空间的编程/擦除权限;在确定所述Boot引脚为第一译码时,检测所述选项字段空间的第一选项字段;以及,
在确定所述第一选项字段被配置为第一字段时,允许在所述引导加载程序空间对所述目标数据执行对应的编程/擦除操作;在确定所述第一选项字段未被配置为第一字段时,禁止在所述引导加载程序空间对所述目标数据执行对应的编程/擦除操作。
6.一种存储介质,其特征在于,存储有指令,所述指令适于处理器加载,以执行如权利要求1至4中任一项所述的针对微控制芯片的管理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311523224.6A CN117251221B (zh) | 2023-11-16 | 2023-11-16 | 微控制芯片及其管理方法、存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311523224.6A CN117251221B (zh) | 2023-11-16 | 2023-11-16 | 微控制芯片及其管理方法、存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117251221A CN117251221A (zh) | 2023-12-19 |
CN117251221B true CN117251221B (zh) | 2024-01-30 |
Family
ID=89126695
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311523224.6A Active CN117251221B (zh) | 2023-11-16 | 2023-11-16 | 微控制芯片及其管理方法、存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117251221B (zh) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108572830A (zh) * | 2017-12-22 | 2018-09-25 | 深圳市鼎阳科技有限公司 | 一种嵌入式系统及其引导程序的升级方法、系统 |
CN115905050A (zh) * | 2022-10-18 | 2023-04-04 | 上海水木蓝鲸半导体技术有限公司 | 闪存保护方法、装置、电子设备及存储介质 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102014220616A1 (de) * | 2014-10-10 | 2016-04-14 | Bundesdruckerei Gmbh | Verfahren zum Laden von ausführbaren Programminstruktionen in eine Chipkarte im Wirkbetrieb |
-
2023
- 2023-11-16 CN CN202311523224.6A patent/CN117251221B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108572830A (zh) * | 2017-12-22 | 2018-09-25 | 深圳市鼎阳科技有限公司 | 一种嵌入式系统及其引导程序的升级方法、系统 |
CN115905050A (zh) * | 2022-10-18 | 2023-04-04 | 上海水木蓝鲸半导体技术有限公司 | 闪存保护方法、装置、电子设备及存储介质 |
Non-Patent Citations (1)
Title |
---|
DSP用户程序二次引导加载设计;万勇利 等;自动化技术与应用;第35卷(第08期);第47-51页 * |
Also Published As
Publication number | Publication date |
---|---|
CN117251221A (zh) | 2023-12-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9558016B2 (en) | Platform system, method for changing support hardware configuration of universal extensible firmware interface basic input output system and computer program product | |
KR100924497B1 (ko) | 비-휘발성 어플리케이션 및 화일 저장 디바이스로부터부팅시키기 위한 시스템 및 방법 | |
CN110134446B (zh) | 启动pcie设备扫描的方法 | |
US7386653B2 (en) | Flash memory arrangement | |
US7565521B2 (en) | Method for managing memory space during system initialization | |
US20140281464A1 (en) | Method of implementing magnetic random access memory (mram) for mobile system-on chip boot | |
US7127603B2 (en) | System and method for manufacture of information handling systems with selective option ROM executions | |
US9003174B2 (en) | Method for boosting an electronic device with multiple processing units, and electronic device for implementing the same | |
US20060265581A1 (en) | Method for switching booting devices of a computer | |
CN114721493B (zh) | 芯片启动方法、计算机设备及可读存储介质 | |
KR20140083530A (ko) | 하드웨어를 디버깅하는 부트 쉘을 포함하는 시스템온칩 및 이의 구동 방법 | |
EP2645239A1 (en) | Electronic apparatus and booting method | |
CN113190279B (zh) | 一种预启动功能控制方法、系统及介质 | |
CN117251221B (zh) | 微控制芯片及其管理方法、存储介质 | |
CN115664953B (zh) | 一种外接设备的资源分配方法及相关装置 | |
US11340882B2 (en) | Systems and methods for enforcing update policies while applying updates from bootable image file | |
CN102455919A (zh) | 基本输入输出系统自动最佳化设定方法 | |
KR100640389B1 (ko) | Nand플래시 메모리를 구비한 장치에서 어플리케이션을실행하는 방법 및 그 장치 | |
CN115291951A (zh) | Uefi启动方法、装置、电子设备以及存储介质 | |
CN113032008B (zh) | 电子处理装置及存储器控制方法 | |
CN112667544A (zh) | 一种控制主板插槽使能的方法、装置、系统及介质 | |
CN108804144B (zh) | 操作系统启动的控制方法/系统、存储介质及电子设备 | |
US11023217B2 (en) | Systems and methods for support of selective processor microcode updates | |
US9086895B1 (en) | Controlling hardware driver selection | |
CN114490010A (zh) | 资源操作控制方法、电子设备、芯片及可读存储介质 |
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 |