一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

芯片、电子设备及芯片启动方法与流程

2022-07-30 14:36:03 来源:中国专利 TAG:


1.本技术涉及芯片技术领域,特别涉及一种芯片、电子设备及芯片启动方法。


背景技术:

2.目前,绝大多数芯片(比如专用处理芯片,通用处理芯片等)都是从只读存储器开始启动,通过执行只读存储器中的启动代码,实现芯片的启动运行。因此,一旦只读存储器中的写入的启动代码存在错误,比如其中的配置信息错误,将导致芯片无法启动。而只读存储器中的启动代码无法修改,只能将无法启动的芯片报废,增加了芯片的生产成本。


技术实现要素:

3.本技术实施例提供一种芯片、电子设备及芯片启动方法,可以降低芯片的生产成本。
4.本技术公开一种芯片,包括:
5.只读存储器,用于存储所述芯片的启动代码;
6.电可编程熔丝(efuse),用于存储所述启动代码中故障配置信息对应的修复配置信息;
7.中央处理单元,用于从所述只读存储器中读取所述启动代码,并执行所述启动代码;以及在根据所述启动代码完成所述电可编程熔丝的初始化时,从所述电可编程熔丝中读取所述修复配置信息进行配置操作;以及在执行到所述故障配置信息时,跳过所述故障配置信息。
8.本技术还公开一种电子设备,包括如本技术所提供的芯片。
9.本技术还公开一种芯片启动方法,应用于芯片,所述芯片包括只读存储器和中央处理单元,所述只读存储器存储有所述芯片的启动代码,所述芯片启动方法包括:
10.中央处理单元从所述只读存储器中读取所述启动代码,并执行所述启动代码;
11.在根据所述启动代码完成所述电可编程熔丝的初始化时,所述中央处理单元从所述电可编程熔丝中读取所述修复配置信息进行配置操作;
12.所述中央处理单元在执行到所述故障配置信息时,跳过所述故障配置信息。
13.本技术通过改变中央处理单元对启动代码的执行逻辑,使得中央处理单元能够从只读存储器中读取启动代码,并执行该启动代码;以及在根据启动代码完成电可编程熔丝的初始化时,从电可编程熔丝中读取修复配置信息进行配置操作;以及在执行到故障配置信息时,跳过故障配置信息。以此,在芯片启动时按照电可编程熔丝中的修复配置信息进行配置操作,即可成功启动,从而无需报废芯片,达到降低芯片生产成本的目的。
附图说明
14.为了更清楚地说明本技术实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍。
15.图1为本技术实施例提供的芯片的第一种结构示意图。
16.图2为本技术实施例提供的芯片启动流程示例图。
17.图3为本技术实施例提供的芯片的第二种结构示意图。
18.图4为本技术实施例提供的芯片启动方法的流程示意图。
具体实施方式
19.请参照图1,图1为本技术实施例提供的芯片100的结构示意图。该芯片100可包括只读存储器110、电可编程熔丝120以及中央处理单元130。其中,
20.只读存储器110被配置为存储芯片100的启动代码;
21.电可编程熔丝120被配置为存储启动代码中故障配置信息对应的修复配置信息;
22.中央处理单元130被配置为从只读存储器110中读取启动代码,并执行启动代码;以及在根据启动代码完成电可编程熔丝120的初始化后,从电可编程熔丝120中读取修复配置信息进行配置操作;以及在执行到启动代码中的故障配置信息,跳过故障配置信息。
23.应当说明的是,本技术实施例提供的芯片100可以是专用的处理芯片,比如专用的图像处理芯片,音频处理芯片等,也可以是通用的处理芯片,比如中央处理器芯片等。本技术实施例中,芯片100除了包括图1示出的只读存储器110、电可编程熔丝120以及中央处理单元130之外,还包括图1未示出的随机存储器以及外设,其中外设包括但不限于通用串行总线、嵌入式多媒体控制器以及通用异步收发传输器等设备。
24.顾名思义,只读存储器110只能读,只读存储器110在生产出来之后只有一次写的机会,数据一旦写入则不可更改,只读存储器110另外一个特点是存储器掉电后里面的数据不丢失。而启动代码是芯片100上电或者复位后执行的第一段代码,作用在于对芯片100内部的硬件器件以及软件环境进行必要的初始化,包括但不限于:
25.(1)建立中断向量表;
26.(2)初始化存储器;
27.(3)初始化堆栈寄存器;
28.(4)初始化i/o以及其它必要设备;
29.(5)改变中央处理单元的状态和描述。
30.可以理解的是,芯片100在启动时,需要对内部的硬件器件以及软件环境进行正确的配置,才能够正常启动。也即是说,存储在只读存储器110中的启动一旦出错,将导致芯片100不能启动。其中,常见的错误是启动代码中的相关配置信息故障,比如遗漏某些寄存器的配置信息,或者是寄存器的配置信息与硬件器件不匹配(也即配置信息错误)等。一旦出现这样的问题,只能通过重新流片来解决。
31.为此,本技术实施例中,当芯片100回片后,若发现芯片100不能正常启动,并确定是由于某些配置信息故障导致,将这些导致芯片100不能正常启动的配置信息记为故障配置信息,并根据经验确定对应故障配置信息的修复配置信息。由上可知,虽然只读存储器110在芯片100的生产过程中是一次性写入的,里面的内容无法更改,但是芯片100内部的电可编程熔丝120尚未写入数据,因此本技术中复用芯片100内部的电可编程熔丝120,在电可编程熔丝120中写入启动代码中故障配置信息对应的修复配置信息。
32.应当说明的是,除了向电可编程熔丝120中写入前述修复配置信息之外,还同时写
入原本计划写入电可编程熔丝120的数据,比如芯片的电压信息、版本号以及生产日期等。
33.此外,为了使得芯片100能够正常启动,还对芯片100的启动逻辑进行了修改。
34.其中,芯片100在上电后,中央处理单元130将只读存储器110中存储的启动代码读取到随机存储器中,并在随机存储器中执行启动代码。在根据启动代码完成电可编程熔丝120的初始化时,从电可编程熔丝120中读取修复配置信息进行配置操作。此外,在执行到启动代码中的故障配置信息时,跳过故障配置信息。
35.由上可知,本技术提供的芯片包括只读存储器、电可编程熔丝以及中央处理单元。其中,只读存储器存储有芯片的启动代码,包括了导致芯片无法正常启动的故障配置信息。电可编程熔丝存储有对应启动代码中故障配置信息的修复配置信息。以及改变了中央处理单元对启动代码的执行逻辑,使得中央处理单元能够从只读存储器中读取启动代码,并执行该启动代码;以及在根据启动代码完成电可编程熔丝的初始化时,从电可编程熔丝中读取修复配置信息进行配置操作;以及在执行到故障配置信息时,跳过故障配置信息。以此,通过复用电可编程熔丝,在芯片启动时按照电可编程熔丝中的修复配置信息进行配置操作,即可成功启动,从而无需报废芯片,达到降低芯片生产成本的目的。
36.可选地,在一实施例中,故障配置信息包括遗漏配置的寄存器配置信息和/或错误配置的寄存器配置信息。
37.可选地,在一实施例中,中央处理单元130还被配置为在执行启动代码而启动失败时,确定出启动代码中的故障配置信息;以及接收输入的对应故障配置信息对应的修复配置信息,并将修复配置信息写入电可编程熔丝120中。
38.本技术实施例中,只读存储器110中存储有故障检测代码,该故障检测代码被配置为对芯片100进行故障检测,以确定导致芯片100启动失败的故障原因。应当说明的是,本技术实施例中对该故障检测代码的编写不作具体限制,可由本领域普通技术人员根据实际需要进行编写。
39.基于只读存储器110中存储的前述故障检测代码,中央处理单元130在执行启动代码而启动失败时,将前述故障检测代码读取到的随机存储器中,并在随机存储器中执行前述故障检测代码,从而确定出启动代码中导致启动失败的故障配置信息,并输出故障配置信息。
40.由此,相关技术人员可根据经验确定对应故障配置信息的修复配置信息,并通过相关烧录设备,将该修复配置信息与其它原本计划写入电可编程熔丝120的数据一同写入芯片100中的电可编程熔丝120。
41.另一方面,中央处理单元130在接收到输入的对应故障配置信息以及其它写入数据时,将修复配置信息以及其它写入数据一同写入电可编程熔丝120中。
42.可选地,在一实施例中,中央处理单元130被配置为将修复配置信息写入电可编程熔丝120的预设地址中。
43.本技术实施例中,修复配置信息的在电可编程熔丝120中的写入地址并不是随机的,而是一预先确定的固定地址,记为预设地址。此处对该预设地址的配置不作具体限制,可由本领域普通技术人员根据实际需要进行配置。
44.相应的,中央处理单元120在将修复配置信息写入电可编程熔丝120时,具体将修复配置信息写入电可编程熔丝120的预设地址中。
45.应当说明的是,以上预设地址仅用于写入修复配置信息,也即是说,只要预设地址写入了数据,则说明写入的数据为修复配置信息。
46.在芯片100的启动过程中,当根据启动代码完成电可编程熔丝120的初始化时,中央处理单元130直接从电可编程熔丝120的预设地址中读取修复配置信息进行配置操作。
47.可选地,在一实施例中,中央处理单元130还被配置为接收输入的对应故障配置信息的压缩编码后的修复配置信息,并将压缩编码后的修复配置信息写入电可编程熔丝120中;以及在根据启动代码完成电可编程熔丝120的初始化时,从电可编程熔丝120中读取压缩编码后的修复配置信息,并对压缩编码后的修复配置信息进行压缩解码;以及根据压缩解码后的修复配置信息进行配置操作。
48.应当说明的是,电可编程熔丝120的存储空间十分有限,为了有效的利用电可编程熔丝120的存储空间,本技术实施例中对修复配置信息进行压缩编码后再写入电可编程熔丝120。可以理解的是,修复配置信息的作用在于代替启动代码中的故障配置信息用于配置,相应的,修复配置信息不能出错,以不损坏修复配置信息为约束,可由本领域普通技术人员根据实际需要选取无损的压缩编码方式对修复配置信息进行压缩编码。
49.相应的,在本技术实施例中,需要采用配置的无损压缩编码方式对修复配置信息进行压缩编码后,再将压缩编码后的修复配置信息写入电可编程熔丝120。
50.其中,中央处理单元130接收输入的对应故障配置信息的压缩编码后的修复配置信息,并将该压缩编码后的修复配置信息写入电可编程熔丝120中。相应的,在芯片100的启动过程中,中央处理单元130在根据启动代码完成电可编程熔丝120的初始化时,从电可编程熔丝120中读取出压缩编码后的修复配置信息,并对压缩编码后的修复配置信息进行压缩解码,从而根据压缩解码后的修复配置信息进行配置操作。
51.可选地,在一实施例中,中央处理单元130被配置为:从电可编程熔丝120中读取修复配置信息,并对修复配置信息进行安全校验;以及在修复配置信息通过安全校验时,根据修复配置信息进行配置操作。
52.本技术实施例中,中央处理单元130在根据启动代码完成电可编程熔丝120的的初始化时,从该电可编程熔丝120中读取修复配置信息,并按照预先配置的安全策略对该修复配置信息进行安全校验。其中,若修复配置信息通过安全校验,则根据该配置信息进行配置操作,否则结束启动。
53.可选地,在一实施例中,中央处理单元130被配置为通过预设散列算法计算得到修复配置信息的散列值;以及将散列值与预设散列值比对,若散列值与预设散列值比对一致,则判定修复配置信息通过安全校验。
54.本技术实施例提供一可选的安全策略。
55.其中,对于预设散列算法的选取,本技术实施例中不作具体限制,可由本领域普通技术人员根据实际需要进行选取,包括但不限于sha-1、sha-224、sha-256、sha-384以及sha-512等。
56.在本技术实施例中,还预先将预设散列算法的执行代码写入只读存储器110中。相应的,在对读取的修复配置信息进行安全校验时,中央处理单元130将只读存储器110中存储的对应预设散列算法的执行代码读取到随机存储器中执行,通过该预设散列算法计算得到修复配置信息的散列值。
57.应当说明的是,在本技术实施例中,还预先采用预设散列算法对原始的修复配置信息进行散列运算,计算得到对应的散列值,将该散列值作为用于对修复配置信息进行安全校验的预设散列值,并随修复配置信息一同写入电可编程熔丝120中。
58.相应的,中央处理单元130在采用预设散列算法计算得到读取的修复配置信息的散列值之后,进一步将该计算得到的散列值与电可编程熔丝120中预设写入的对应原始的修复配置信息的预设散列值进行比对,若二者比对一致,则说明读取的修复配置信息与原始的修复配置信息一致,此时判定读取的该修复配置信息通过安全校验。
59.可选地,在一实施例中,中央处理单元130还被配置为在根据启动代码完成电可编程熔丝120的初始化时,暂停执行启动代码;以及在从电可编程熔丝120中读取修复配置信息进行配置操作之后,继续执行启动代码。
60.示例性的,在本技术实施例中,修复配置信息按照addr-value的格式存储于一配置信息表中,其中,对于一条修复配置信息,“adrr”表示该修复配置信息需要配置的寄存器的地址,“value”该修复配置信息需要配置的寄存器的值。
61.请参照图2,芯片100在上电后,中央处理单元130将只读存储器110中存储的启动代码读取到随机存储器中,并在随机存储器中执行启动代码,并根据启动代码依次完成自身的初始化,以及完成对电可编程熔丝120的初始化。此时,中央处理单元130暂停执行启动代码,并识别配置信息表是否为空,也即是识别配置信息表是否写入了修复配置信息。若配置信息表不为空,也即是写入了修复配置信息,此时中央处理单元130依次根据配置信息表中的修复配置信息进行配置操作。其中,在每完成一条修复配置信息的配置后,中央处理单元130识别当次完成配置的修复配置信息是否为配置信息表中的最后一条修复配置信息,若否,则继续依序对配置信息表中的修复配置信息进行配置,若是,则继续执行启动代码。
62.如上所述,在启动代码的后续执行过程中,若执行到故障配置信息,则中央处理单元130直接跳过故障配置信息,继续执行启动代码中的其它代码。
63.可选地,请参照图3,在一实施例中,芯片100还包括:
64.图像信号处理单元140,被配置为对来自摄像头的动态图像数据进行第一次图像优化处理;
65.神经网络处理单元150,被配置为对图像信号处理单元140进行第一次图像优化处理后的动态图像数据进行第二次图像优化处理。
66.本技术实施例中,芯片100为用于图像处理的专用芯片,其还包括图像信号处理单元140和神经网络处理单元150。
67.其中,该图像信号处理单元140被配置为对来自摄像头的动态图像数据进行第一次图像优化处理,包括但不限于坏点校正处理、时域降噪处理、3d降噪处理、线性化处理以及黑电平校正处理等优化处理方式,当然,还可以包括本技术所未列出的优化处理方式。其中,动态图像数据可以包括录制视频的图像数据和预览图像的数据等。
68.此外,神经网络处理单元150还被配置为对图像信号处理单元140进行第一次图像优化处理后的动态图像数据进行第二次图像优化处理。神经网络处理单元150处理图像数据的方式可以是按照行的方式读取数据块,并按照行的方式对数据块进行处理。诸如神经网络处理单元150按照多行的方式读取数据块,并按照多行的方式对数据块进行处理。可以理解的是,一帧图像数据可以具有多行数据块,即神经网络处理单元150可以对一帧图像数
据的一部分诸如n行数据块进行处理,其中n为正整数,诸如2、4、5等。当神经网络处理单元150对一帧图像数据未全部处理完,则神经网络处理单元150可以内置缓存来存储神经网络处理单元150在处理一帧图像数据过程中所处理多行数据块的数据。
69.需要说明的是,神经网络处理单元150在数据流中,可以按照预设时间处理完成。预设时间诸如为30fps=33ms(毫秒)。或者说神经网络处理单元150处理一帧图像所预设的时间为33ms,从而可以保证神经网络处理单元150在快速处理图像数据的基础上,可以实现数据的实时传输。
70.神经网络处理单元150进行的第二图像优化处理包括但不限于基于诸如夜景算法、hdr算法、虚化算法、降噪算法,超分辨率算法的优化处理方式。
71.本技术实施例还提供一种电子设备,该电子设备包括如本技术所提供的芯片。
72.本技术还提供一种芯片启动方法,该芯片启动方法应用于图1所示的芯片100,该芯片包括只读存储器110、电可编程熔丝120和中央处理单元130,只读存储器110存储有芯片的启动代码,电可编程熔丝120存储有启动代码中故障配置信息对应的修复配置信息,请参照图4,该芯片启动方法包括:
73.在210中,中央处理单元130从只读存储器110中读取启动代码,并执行启动代码;
74.在220中,在根据启动代码完成电可编程熔丝120的初始化时,中央处理单元130从电可编程熔丝120中读取修复配置信息进行配置操作;
75.在230中,中央处理单元130在执行到故障配置信息时,跳过故障配置信息。
76.芯片100可以是专用的处理芯片,比如专用的图像处理芯片,音频处理芯片等,也可以是通用的处理芯片,比如中央处理器芯片等。本技术实施例中,芯片100除了包括图1示出的只读存储器110、电可编程熔丝120以及中央处理单元130之外,还包括图1未示出的随机存储器以及外设,其中外设包括但不限于通用串行总线、嵌入式多媒体控制器以及通用异步收发传输器等设备。
77.顾名思义,只读存储器110只能读,只读存储器110在生产出来之后只有一次写的机会,数据一旦写入则不可更改,只读存储器110另外一个特点是存储器掉电后里面的数据不丢失。而启动代码是芯片100上电或者复位后执行的第一段代码,作用在于对芯片100内部的硬件器件以及软件环境进行必要的初始化,包括但不限于:
78.(1)建立中断向量表;
79.(2)初始化存储器;
80.(3)初始化堆栈寄存器;
81.(4)初始化i/o以及其它必要设备;
82.(5)改变中央处理单元的状态和描述。
83.可以理解的是,芯片100在启动时,需要对内部的硬件器件以及软件环境进行正确的配置,才能够正常启动。也即是说,存储在只读存储器110中的启动一旦出错,将导致芯片100不能启动。其中,常见的错误是启动代码中的相关配置信息故障,比如遗漏某些寄存器的配置信息,或者是寄存器的配置信息与硬件器件不匹配(也即配置信息错误)等。一旦出现这样的问题,只能通过重新流片来解决。
84.为此,本技术实施例中,当芯片100回片后,若发现芯片100不能正常启动,并确定是由于某些配置信息故障导致,将这些导致芯片100不能正常启动的配置信息记为故障配
置信息,并根据经验确定对应故障配置信息的修复配置信息。由上可知,虽然只读存储器110在芯片100的生产过程中是一次性写入的,里面的内容无法更改,但是芯片100内部的电可编程熔丝120尚未写入数据,因此本技术中复用芯片100内部的电可编程熔丝120,在电可编程熔丝120中写入启动代码中故障配置信息对应的修复配置信息。
85.应当说明的是,除了向电可编程熔丝120中写入前述修复配置信息之外,还同时写入原本计划写入电可编程熔丝120的数据,比如芯片的电压信息、版本号以及生产日期等。
86.此外,为了使得芯片100能够正常启动,还对芯片100的启动逻辑进行了修改。
87.其中,芯片100在上电后,中央处理单元130将只读存储器110中存储的启动代码读取到随机存储器中,并在随机存储器中执行启动代码。在根据启动代码完成电可编程熔丝120的初始化时,从电可编程熔丝120中读取修复配置信息进行配置操作。此外,在执行到启动代码中的故障配置信息时,跳过故障配置信息。
88.可选地,在一实施例中,故障配置信息包括遗漏配置的寄存器配置信息和/或错误配置的寄存器配置信息。
89.可选地,在一实施例中,本技术提供的芯片启动方法还包括:
90.中央处理单元130在执行启动代码而启动失败时,确定出启动代码中的故障配置信息;
91.中央处理单元130接收输入的对应故障配置信息对应的修复配置信息,并将修复配置信息写入电可编程熔丝120中。
92.本技术实施例中,只读存储器110中存储有故障检测代码,该故障检测代码被配置为对芯片100进行故障检测,以确定导致芯片100启动失败的故障原因。应当说明的是,本技术实施例中对该故障检测代码的编写不作具体限制,可由本领域普通技术人员根据实际需要进行编写。
93.基于只读存储器110中存储的前述故障检测代码,中央处理单元130在执行启动代码而启动失败时,将前述故障检测代码读取到的随机存储器中,并在随机存储器中执行前述故障检测代码,从而确定出启动代码中导致启动失败的故障配置信息,并输出故障配置信息。
94.由此,相关技术人员可根据经验确定对应故障配置信息的修复配置信息,并通过相关烧录设备,将该修复配置信息与其它原本计划写入电可编程熔丝120的数据一同写入芯片100中的电可编程熔丝120。
95.可选地,在一实施例中,中央处理单元130将修复配置信息写入电可编程熔丝120中,包括:
96.将修复配置信息写入电可编程熔丝120的预设地址中。
97.本技术实施例中,修复配置信息的在电可编程熔丝120中的写入地址并不是随机的,而是一预先确定的固定地址,记为预设地址。此处对该预设地址的配置不作具体限制,可由本领域普通技术人员根据实际需要进行配置。
98.相应的,中央处理单元120在将修复配置信息写入电可编程熔丝120时,具体将修复配置信息写入电可编程熔丝120的预设地址中。
99.应当说明的是,以上预设地址仅用于写入修复配置信息,也即是说,只要预设地址写入了数据,则说明写入的数据为修复配置信息。
100.在芯片100的启动过程中,当根据启动代码完成电可编程熔丝120的初始化时,中央处理单元130直接从电可编程熔丝120的预设地址中读取修复配置信息进行配置操作。
101.可选地,在一实施例中,中央处理单元130接收输入的对应故障配置信息对应的修复配置信息,并将修复配置信息写入电可编程熔丝120中,包括:
102.中央处理单元130接收输入的对应故障配置信息的压缩编码后的修复配置信息,并将压缩编码后的修复配置信息写入电可编程熔丝120中;
103.中央处理单元130从电可编程熔丝120中读取修复配置信息进行配置操作,包括:
104.中央处理单元130从电可编程熔丝120中读取压缩编码后的修复配置信息,并对压缩编码后的修复配置信息进行压缩解码;
105.中央处理单元130根据压缩解码后的修复配置信息进行配置操作。
106.应当说明的是,电可编程熔丝120的存储空间十分有限,为了有效的利用电可编程熔丝120的存储空间,本技术实施例中对修复配置信息进行压缩编码后再写入电可编程熔丝120。可以理解的是,修复配置信息的作用在于代替启动代码中的故障配置信息用于配置,相应的,修复配置信息不能出错,以不损坏修复配置信息为约束,可由本领域普通技术人员根据实际需要选取无损的压缩编码方式对修复配置信息进行压缩编码。
107.相应的,在本技术实施例中,需要采用配置的无损压缩编码方式对修复配置信息进行压缩编码后,再将压缩编码后的修复配置信息写入电可编程熔丝120。
108.其中,中央处理单元130接收输入的对应故障配置信息的压缩编码后的修复配置信息,并将该压缩编码后的修复配置信息写入电可编程熔丝120中。相应的,在芯片100的启动过程中,中央处理单元130在根据启动代码完成电可编程熔丝120的初始化时,从电可编程熔丝120中读取出压缩编码后的修复配置信息,并对压缩编码后的修复配置信息进行压缩解码,从而根据压缩解码后的修复配置信息进行配置操作。
109.可选地,在一实施例中,中央处理单元130从电可编程熔丝120中读取修复配置信息进行配置操作,包括:
110.中央处理单元130从电可编程熔丝120中读取修复配置信息,并对修复配置信息进行安全校验;
111.在修复配置信息通过安全校验时,中央处理单元130根据修复配置信息进行配置操作。
112.本技术实施例中,中央处理单元130在根据启动代码完成电可编程熔丝120的的初始化时,从该电可编程熔丝120中读取修复配置信息,并按照预先配置的安全策略对该修复配置信息进行安全校验。其中,若修复配置信息通过安全校验,则根据该配置信息进行配置操作,否则结束启动。
113.可选地,在一实施例中,中央处理单元130对修复配置信息进行安全校验,包括:
114.中央处理单元130通过预设散列算法计算得到修复配置信息的散列值;
115.中央处理单元130将散列值与预设散列值比对,若散列值与预设散列值比对一致,则判定修复配置信息通过安全校验。
116.本技术实施例提供一可选的安全策略。
117.其中,对于预设散列算法的选取,本技术实施例中不作具体限制,可由本领域普通技术人员根据实际需要进行选取,包括但不限于sha-1、sha-224、sha-256、sha-384以及
sha-512等。
118.在本技术实施例中,还预先将预设散列算法的执行代码写入只读存储器110中。相应的,在对读取的修复配置信息进行安全校验时,中央处理单元130将只读存储器110中存储的对应预设散列算法的执行代码读取到随机存储器中执行,通过该预设散列算法计算得到修复配置信息的散列值。
119.应当说明的是,在本技术实施例中,还预先采用预设散列算法对原始的修复配置信息进行散列运算,计算得到对应的散列值,将该散列值作为用于对修复配置信息进行安全校验的预设散列值,并随修复配置信息一同写入电可编程熔丝120中。
120.相应的,中央处理单元130在采用预设散列算法计算得到读取的修复配置信息的散列值之后,进一步将该计算得到的散列值与电可编程熔丝120中预设写入的对应原始的修复配置信息的预设散列值进行比对,若二者比对一致,则说明读取的修复配置信息与原始的修复配置信息一致,此时判定读取的该修复配置信息通过安全校验。
121.可选地,在一实施例中,本技术提供的芯片启动方法还包括:
122.在根据启动代码完成电可编程熔丝120的初始化时,中央处理单元130暂停执行启动代码;以及
123.在从电可编程熔丝120中读取修复配置信息进行配置操作之后,中央处理单元130继续执行启动代码。
124.示例性的,在本技术实施例中,修复配置信息按照addr-value的格式存储于一配置信息表中,其中,对于一条修复配置信息,“adrr”表示该修复配置信息需要配置的寄存器的地址,“value”该修复配置信息需要配置的寄存器的值。
125.请参照图2,芯片100在上电后,中央处理单元130将只读存储器110中存储的启动代码读取到随机存储器中,并在随机存储器中执行启动代码,并根据启动代码依次完成自身的初始化,以及完成对电可编程熔丝120的初始化。此时,中央处理单元130暂停执行启动代码,并识别配置信息表是否为空,也即是识别配置信息表是否写入了修复配置信息。若配置信息表不为空,也即是写入了修复配置信息,此时中央处理单元130依次根据配置信息表中的修复配置信息进行配置操作。其中,在每完成一条修复配置信息的配置后,中央处理单元130识别当次完成配置的修复配置信息是否为配置信息表中的最后一条修复配置信息,若否,则继续依序对配置信息表中的修复配置信息进行配置,若是,则继续执行启动代码。
126.如上所述,在启动代码的后续执行过程中,若执行到故障配置信息,则中央处理单元130直接跳过故障配置信息,继续执行启动代码中的其它代码。
127.以上对本技术实施例提供的芯片、电子设备以及芯片启动方法进行了详细介绍。本文中应用了具体个例对本技术的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本技术。同时,对于本领域的技术人员,依据本技术的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本技术的限制。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献