掌桥专利:专业的专利平台
掌桥专利
首页

芯片、处理器驱动方法及电子设备

文献发布时间:2023-06-19 11:29:13


芯片、处理器驱动方法及电子设备

技术领域

本申请属于集成电路技术领域,具体涉及一种芯片、处理器驱动方法及电子设备。

背景技术

芯片是一种集成电路(Integrated Circuit,IC),由大量的晶体管构成。集成电路是一种微型电子器件或部件,是把一定数量的电子元件,如电阻、电容、晶体管等,以及这些元件之间的连线,通过半导体工艺集成在一起的具有特定功能的电路。

相关技术中,芯片一旦上电复位,其内部的处理器便开始工作。当该芯片被攻击者获取到之后,由于芯片一上电复位其内部的处理器就开始工作,且处理器架构、指令集和编程模型等都是公开的,攻击者很容易对这些信息进行分析,然后通过仿真方式对芯片进行仿真,进而发现芯片的漏洞,通过该漏洞对芯片进行攻击,比如,篡改芯片的配置信息和读取用户代码等,使得芯片安全性较差。

发明内容

本申请实施例的目的是提供一种芯片、处理器驱动方法及电子设备,能够解决芯片安全性差的问题。

第一方面,本申请实施例提供了一种芯片,包括:存储器、控制模块和处理器,其中,

控制模块分别与存储器和处理器电连接;

存储器用于存储目标数据;

控制模块用于在芯片上电复位后,生成针对存储器的控制信号;根据控制信号,从存储器中读取目标数据;根据目标数据,生成第一信号;向处理器传输第一信号;

处理器用于根据第一信号,确定是否开始工作。

在本申请实施例第一方面的一些可能实现中,控制模块具体用于:

生成用于驱动存储器工作的驱动信号、用于控制存储器读使能的读使能信号和用于从存储器中读取目标数据的数据读取信号;

向存储器传输驱动信号,以使存储器在驱动信号的驱动下工作;

向存储器传输读使能信号,以使存储器在读使能信号的控制下,存储器存储的目标数据能够被读取;

向存储器发送数据读取信号,并根据数据读取信号,从存储器中读取目标数据。

在本申请实施例第一方面的一些可能实现中,目标数据存储于存储器中与预设地址对应的存储区域;控制模块具体用于:

生成预设地址;

向存储器传输包括预设地址的数据读取信号;

根据预设地址,从存储区域读取目标数据。

在本申请实施例第一方面的一些可能实现中,控制模块具体用于:

对目标数据进行目标变换,得到第一信号。

在本申请实施例第一方面的一些可能实现中,处理器具体用于:

检测第一信号与预设信号值是否匹配;

在检测到第一信号与预设信号值匹配的情况下,确定处理器开始工作。

在本申请实施例第一方面的一些可能实现中,目标数据包括:

芯片的全部配置信息或部分配置信息。

在本申请实施例第一方面的一些可能实现中,控制模块包括:寄存器;控制模块还用于:

将配置信息载入寄存器中。

在本申请实施例第一方面的一些可能实现中,控制模块还用于:

检测寄存器是否正确载入配置信息;

在检测到寄存器正确载入配置信息的情况下,从寄存器中读取配置信息;

根据配置信息,生成第一信号。

第二方面,本申请实施例提供了一种处理器驱动方法,应用于本申请实施例第一方面或本申请实施例第一方面的任一可能实现中提供的芯片,处理器驱动方法,包括:

在芯片上电复位后,生成针对存储器的控制信号;

根据控制信号,从存储器中读取目标数据;

根据目标数据,生成第一信号;

向处理器传输第一信号,以使处理器根据第一信号,确定是否开始工作。

第三方面,本申请实施例提供一种电子设备,包括本申请实施例第一方面或本申请实施例第一方面的任一可能实现中提供的芯片。

在本申请实施例中,本申请实施例提供的芯片包括存储器、控制模块和处理器。控制模块在芯片上电复位后,生成针对存储器的控制信号;根据该控制信号,从存储器中读取目标数据;根据该目标数据,生成第一信号;向处理器传输该第一信号。处理器根据该第一信号,确定其是否开始工作。如此,处理器只有在接收到第一信号,根据该第一信号确定其开始工作后,才开始工作,并非在芯片一上电复位后,就开始工作。并且由于第一信号是由控制模块根据存储器中的目标数据生成,攻击者需要同时获取存储器的目标数据和分析出硬件电路,才有可能模拟出第一信号,但是,由于目标数据是预先存储在芯片的存储器中,攻击者很难直接获取到存储器中的目标数据,也很难分析出硬件电路,因此,即使攻击者获取到该芯片,也很难模拟出第一信号,难以通过仿真方式对芯片进行仿真,难以发现芯片的漏洞,能够提高芯片的安全性。

附图说明

图1是本申请实施例提供的芯片的一种结构示意图;

图2是本申请实施例提供的生成第一信号的一种过程示意图;

图3是本申请实施例提供的芯片的另一种结构示意图;

图4是本申请实施例提供的生成第一信号的另一种过程示意图;

图5是本申请实施例提供的处理器驱动方法的流程示意图。

具体实施方式

下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员获得的所有其他实施例,都属于本申请保护的范围。

本申请的说明书和权利要求书中的术语“第一”、“第二”等是用于区别类似的对象,而不用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施,且“第一”、“第二”等所区分的对象通常为一类,并不限定对象的个数,例如第一对象可以是一个,也可以是多个。此外,说明书以及权利要求中“和/或”表示所连接对象的至少其中之一,字符“/”,一般表示前后关联对象是一种“或”的关系。

下面结合附图,通过具体的实施例及其应用场景对本申请实施例提供的芯片、处理器驱动方法及电子设备进行详细地说明。

图1是本申请实施例提供的芯片的一种结构示意图。芯片100可以包括:控制模块101、处理器102和存储器103,其中,

控制模块101分别与存储器103和处理器102电连接;

存储器103用于存储目标数据;

控制模块101用于在芯片上电复位后,生成针对存储器103的控制信号;根据控制信号,从存储器103中读取目标数据;根据目标数据,生成第一信号;向处理器102传输第一信号;

处理器102用于根据第一信号,确定是否开始工作。

在本申请实施例中,本申请实施例提供的芯片包括存储器、控制模块和处理器。控制模块在芯片上电复位后,生成针对存储器的控制信号;根据该控制信号,从存储器中读取目标数据;根据该目标数据,生成第一信号;向处理器传输该第一信号。处理器根据该第一信号,确定其是否开始工作。如此,处理器只有在接收到第一信号,根据该第一信号确定其开始工作后,才开始工作,并非在芯片一上电复位后,就开始工作。并且由于第一信号是由控制模块根据存储器中的目标数据生成,攻击者需要同时获取存储器的目标数据和分析出硬件电路,才有可能模拟出第一信号,但是,由于目标数据是预先存储在芯片的存储器中,攻击者很难获取到存储器中的目标数据,也很难分析出硬件电路,因此,即使攻击者获取到该芯片,也很难模拟出第一信号,难以通过仿真方式对芯片进行仿真,难以发现芯片的漏洞,能够提高芯片的安全性。

在本申请实施例的一些可能实现中,本申请实施例中的存储有目标数据的存储器可以是非易失性存储器,也可以是易失性存储器。其中,非易失性存储器的示例包括带电可擦除可编程只读存储器(Electrically Erasable Programmable read only memory,EEPROM)、闪存(Flash memory)等。易失性存储器的示例包括随机存取存储器(RandomAccess Memory,RAM)。

优选地,本申请实施例中的存储器为非易失性存储器。由于非易失性存储器EEPROM和Flash中的数据很难获取,即使攻击者获取到该芯片,也有可能因为获取不到非易失性存储器中的数据,进而无法获知目标数据,也很难模拟出第一信号,难以通过仿真方式对芯片进行仿真,难以发现芯片的漏洞,能够提高芯片的安全性。

在本申请实施例的一些可能实现中,本申请实施例中的控制模块101具体可以用于:

生成用于驱动存储器103工作的驱动信号、用于控制存储器103读使能的读使能信号和用于从存储器103中读取目标数据的数据读取信号;

向存储器103传输驱动信号,以使存储器103在驱动信号的驱动下工作;

向存储器103传输读使能信号,以使存储器103在读使能信号的控制下,存储器103存储的目标数据能够被读取;

向存储器103发送数据读取信号,并根据数据读取信号,从存储器103中读取目标数据。

具体地,在芯片上电复位后,控制模块101生成用于驱动存储器103工作的驱动信号、用于控制存储器103读使能的读使能信号和用于从存储器103中读取目标数据的数据读取信号。控制模块101将该驱动信号、读使能信号和数据读取信号发送给存储器103。存储器103在接收到该驱动信号后开始工作,进而根据该读使能信号,开启数据读取功能,使得控制模块101能够从存储器103中读取数据,进而控制模块101根据数据读取信号从存储器103中读取目标数据。

在本申请实施例的一些可能实现中,目标数据可以存储于存储器中与预设地址对应的存储区域。相应地,控制模块101具体可以用于:生成预设地址;向存储器传输包括预设地址的数据读取信号;根据预设地址,从存储区域读取目标数据。

在本申请实施例的一些可能实现中,预设地址可以为多个地址。进而可以根据多个地址,获取目标数据,也就是说,本申请实施例中的目标数据是由存储于与多个地址对应的存储区域中的数据组合而成。

在本申请实施例中,由于目标数据是由存储于与多个地址对应的存储区域中的数据组合而成,因此,即使攻击者获取到该芯片,也会不会知晓目标数据是由哪些数据组合而成,进而很难获取到目标数据,模拟不出第一信号,进而难以通过仿真方式对芯片进行仿真,难以发现芯片的漏洞,能够提高芯片的安全性。

在本申请实施例的一些可能实现中,控制模块101具体可以用于:

对目标数据进行目标变换,得到第一信号。

具体地,控制模块可以包括:一个或多个,逻辑与门电路、逻辑或门电路、逻辑非门电路、累加电路等中的至少一个,通过逻辑与门电路、逻辑或门电路、逻辑非门电路、累加电路等对目标数据进行目标变换,得到第一信号。

在本申请实施例中,处理器102具体可以用于:

检测第一信号与预设信号值是否匹配;

在检测第一信号与预设信号值匹配的情况下,确定其开始工作。

示例性地,假设预设信号为10101001,当且仅当生成的第一信号也为10101001时,处理器才开始工作。在第一信号不是10101001或处理器未接收到第一信号时,处理器不工作。

在本申请实施例的一些可能实现中,控制模块101可以包括两部分:SCTRL1和SCTRL2。在芯片上电复位后,SCTRL1生成针对存储器103的控制信号以及预设地址,该控制信号包括用于驱动存储器103工作的驱动信号、用于控制存储器103读使能的读使能信号和用于从存储器103中读取目标数据的且包括预设地址的数据读取信号。驱动信号、读使能信号和数据读取信号进入到存储器103后会启动存储器103工作并控制存储器103读使能,进而读取预设地址的硬件编码(code),将读取到的code传输给SCTRL2。SCTRL2对上述code进行目标变换,生成一组激活信号,用于控制处理器102是否开始工作。

示例性地,如图2所示。图2为本申请实施例提供的生成第一信号的第一种过程示意图。在芯片上电复位后,SCTRL1生成用于驱动存储器103工作的驱动信号(drive,d)、用于控制存储器103读使能的读使能信号(read enable,re)和用于从存储器103中读取目标数据的且包括预设地址的数据读取信号(read data,rd)。其中,rd中包括的预设地址为Add[3]。驱动信号d、读使能信号re进入到存储器103后会启动存储器103工作并控制存储器103读使能,SCTRL1根据数据读取信号rd包括的预设地址Add[3]从存储器103中Add[3]对应的存储区域读取数据。SCTRL1读取到code为11000001,将11000001传输给SCTRL2。11000001在SCTRL2中进行目标转换,转换为第一信号“00100001”。SCTRL2将00100001传输给处理器102,处理器102在接收到00100001后会开始工作。当接收不到00100001或者接收的不是00100001时,处理器102不工作。

可以理解的是,本申请实施例中的code即为上述目标数据。code是预先设定的并且每个地址都有对应的编码,通过SCTRL1给定预设地址读取对应的code并输出。

在本申请实施例的一些可能实现中,本申请实施例中的目标数据可以包括:芯片的全部配置信息或部分配置信息。

在本申请实施例中,可以通过芯片的全部或部分配置信息生成第一信号,进而驱动处理器工作。由于目标数据包括芯片的全部或部分配置信息,因此,引导程序中无需芯片的配置信息或仅需芯片的少量配置信息即可,即使芯片的引导程序被攻击者获取,攻击者也无法获知芯片的全部配置信息或部分配置信息,进而也很难通过仿真方式对芯片进行仿真,难以发现芯片的漏洞,能够提高芯片的安全性。

其中,处理器启动后会执行芯片配置、上电/复位引导、用户代码执行等功能,这些功能统称为引导程序。引导程序包括但不限于:配置时钟频率、配置电压修调参数、配置系统控制寄存器、配置调试模块、配置外设模块、配置输入/输出(Input/Output,IO)等。

在本申请实施例的一些可能实现中,控制模块101可以包括寄存器,如图3所示。图3是本申请实施例提供的芯片的另一种结构示意图。芯片100可以包括:控制模块101、处理器102和存储器103。其中,

控制模块101分别与存储器103和处理器102电连接;

存储器103,用于存储目标数据;

控制模块101,用于在芯片上电复位后,生成针对存储器102的控制信号;根据控制信号,从存储器102中读取目标数据;将目标数据载入到寄存器中;根据目标数据,生成第一信号;向处理器102传输第一信号;其中,目标数据包括芯片的全部配置信息或部分配置信息。

处理器102,用于根据第一信号,确定是否开始工作。

其中,控制模块101包括寄存器104,寄存器104用于暂存全部或部分目标数据,或目标数据变换中或变换后的数据。

寄存器104可存储从存储器103中读取的目标数据以供读取,不只供控制模块101读取,还可以供其他模块读取。如果没有寄存器,从存储器103读取的目标数据只能用于控制模块101运算,而无法用于其他用途。

在本申请实施例中,由于目标数据包括芯片的全部配置信息或部分配置信息,在处理器开始工作之前,寄存器中已存储芯片的全部或部分配置信息,在处理器开始工作之后,仅需再加载芯片少量的配置信息或无需再加载芯片的配置信息,能够提高处理器的工作效率。

在本申请实施例的一些可能实现中,控制模块101还可以用于:检测寄存器是否正确载入配置信息;在检测到寄存器正确载入配置信息的情况下,从寄存器中读取配置信息;根据配置信息,生成第一信号。

本申请实施例并不对检测寄存器是否正确载入芯片的全部或部分配置信息所采用的方式进行限定,任何可用的方式均可以应用于本申请实施例中。比如,通过一致性检查检测寄存器是否正确载入芯片的全部或部分配置信息。

在本申请实施例的一些可能实现中,控制模块101可以包括两部分:SCTRL3和SCTRL4。在芯片上电复位后,SCTRL3生成针对存储器103的控制信号以及预设地址,该控制信号包括用于驱动存储器103工作的驱动信号、用于控制存储器103读使能的读使能信号和用于从存储器103中读取目标数据的且包括预设地址的数据读取信号。驱动信号、读使能信号和数据读取信号进入到存储器103后会启动存储器103工作并控制存储器103读使能,进而读取预设地址的硬件编码(code),该code为芯片的全部或部分配置信息,将读取到的code载入到寄存器104中,寄存器104中的数据即可以作产生处理器102启动信号的数据,又可以在作为处理器102引导程序中的芯片配置代码。SCTRL4检测配置信息是否正确载入寄存器104,当检测到正确载入到寄存器104之后,从该寄存器104中读取配置信息,进而根据配置信息,生成第一信号。

示例性地,如图4所示。图4为本申请实施例提供的生成第一信号的另一种过程示意图。在芯片上电复位后,SCTRL3生成用于驱动存储器103工作的驱动信号d、用于控制存储器103读使能的读使能信号re和用于从存储器103中读取目标数据的且包括预设地址的数据读取信号rd。其中,rd中包括的预设地址为Add[3]。驱动信号d、读使能信号re进入到存储器103后会启动存储器103工作并控制存储器103读使能,SCTRL3根据数据读取信号rd包括的预设地址Add[3]从存储器103中Add[3]对应的存储区域读取数据。SCTRL3读取到code为11000001,将11000001载入到寄存器104中,当11000001正确载入到寄存器104之后,SCTRL4从寄存器104中读取11000001,进而对11000001进行目标转换,转换为第一信号“00100001”。SCTRL4将00100001传输给处理器102,处理器102在接收到00100001后会开始工作。当接收不到00100001或者接收的不是00100001时,处理器102不工作。

图5是本申请实施例提供的处理器驱动方法的流程示意图。本申请实施例提供的处理器驱动方法可以应用于本申请实施例提供的芯片。处理器驱动方法包括:

步骤501:在芯片上电复位后,生成针对存储器的控制信号;

步骤502:根据控制信号,从存储器中读取目标数据;

步骤503:根据目标数据,生成第一信号;

步骤504:向处理器传输第一信号,以使处理器根据第一信号,确定是否开始工作。

具体地,在芯片上电复位后,控制模块生成针对存储器的控制信号,根据该控制信号,从存储器中读取目标数据,根据该目标数据,生成第一信号,向处理器传输该第一信号。处理器在接收到该第一信号后,确定其是否开始工作,当处理器根据该第一信号,确定其开始工作,则开始工作。

在本申请实施例中,本申请实施例提供的芯片包括存储器、控制模块和处理器。控制模块在芯片上电复位后,生成针对存储器的控制信号;根据该控制信号,从存储器中读取目标数据;根据该目标数据,生成第一信号;向处理器传输该第一信号。处理器根据该第一信号,确定其是否开始工作。如此,处理器只有在接收到第一信号,根据该第一信号确定其开始工作后,才开始工作,并非在芯片一上电复位后,就开始工作。并且由于第一信号是由控制模块根据存储器中的目标数据生成,攻击者需要同时获取存储器的目标数据和分析出硬件电路,才有可能模拟出第一信号,但是,由于目标数据是预先存储在芯片的存储器中,攻击者很难获取到存储器中的目标数据,也很难分析出硬件电路,因此,即使攻击者获取到该芯片,也很难模拟出第一信号,难以通过仿真方式对芯片进行仿真,难以发现芯片的漏洞,能够提高芯片的安全性。

在本申请实施例的一些可能实现中,处理器在接收到该第一信号后,可以将该第一信号与预设信号值进行匹配,在第一信号与预设信号值匹配的情况下,开始工作。

在本申请实施例的一些可能实现中,控制模块可以生成用于驱动存储器工作的驱动信号、用于控制存储器读使能的读使能信号和用于从存储器中读取目标数据的数据读取信号,将该驱动信号、读使能信号和数据读取信号发送给存储器。存储器在接收到该驱动信号后开始工作,进而根据该读使能信号,开启数据读取功能,使得控制模块能够从存储器中读取数据,进而控制模块根据数据读取信号从存储器中读取目标数据。

在本申请实施例的一些可能实现中,目标数据可以存储于存储器中与预设地址对应的存储区域。控制模块还可以:生成预设地址;向存储器传输包括预设地址的数据读取信号;根据预设地址,从存储区域读取目标数据。

在本申请实施例的一些可能实现中,预设地址可以为多个地址。进而可以根据多个地址,获取目标数据,也就是说,本申请实施例中的目标数据是由存储于与多个地址对应的存储区域中的数据组合而成。

在本申请实施例中,由于目标数据是由存储于与多个地址对应的存储区域中的数据组合而成,因此,即使攻击者获取到该芯片,也不会知晓目标数据是由哪些数据组合而成,进而很难获取到目标数据,模拟不出第一信号,进而难以通过仿真方式对芯片进行仿真,难以发现芯片的漏洞,能够提高芯片的安全性。

在本申请实施例的一些可能实现中,本申请实施例中的目标数据可以包括:芯片的全部配置信息或部分配置信息。

在本申请实施例中,可以通过芯片的全部或部分配置信息生成第一信号,进而驱动处理器工作。由于目标数据包括芯片的全部或部分配置信息,因此,引导程序中无需芯片的配置信息或仅需芯片的少量配置信息即可,即使芯片的引导程序被攻击者获取,攻击者也无法获知芯片的全部配置信息或部分配置信息,进而也很难通过仿真方式对芯片进行仿真,难以发现芯片的漏洞,能够提高芯片的安全性。

在本申请实施例的一些可能实现中,在步骤502之后,步骤503之前,本申请实施例提供的处理器驱动方法还可以包括:将包括芯片的全部配置信息或部分配置信息的目标数据载入到寄存器中。

在本申请实施例中,由于目标数据包括芯片的全部配置信息或部分配置信息,在处理器开始工作之前,寄存器中已存储芯片的全部或部分配置信息,在处理器开始工作之后,仅需再加载芯片少量的配置信息或无需再加载芯片的配置信息,能够提高处理器的工作效率。

在本申请实施例的一些可能实现中,在将包括芯片的全部配置信息或部分配置信息的目标数据载入到寄存器中之后,本申请实施例提供的处理器驱动方法还可以包括:检测寄存器是否正确载入芯片的全部或部分配置信息。当检测到寄存器正确载入芯片的全部或部分配置信息后,执行步骤503。

本申请实施例并不对检测寄存器是否正确载入芯片的全部或部分配置信息所采用的方式进行限定,任何可用的方式均可以应用于本申请实施例中。比如,通过一致性检查检测寄存器是否正确载入芯片的全部或部分配置信息。

本申请实施例还提供一种电子设备,包括本申请实施例提供的芯片。

应理解,本申请实施例提到的芯片还可以称为系统级芯片、系统芯片、芯片系统或片上系统芯片等。

需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。此外,需要指出的是,本申请实施方式中的方法和装置的范围不限按示出或讨论的顺序来执行功能,还可包括根据所涉及的功能按基本同时的方式或按相反的顺序来执行功能,例如,可以按不同于所描述的次序来执行所描述的方法,并且还可以添加、省去、或组合各种步骤。另外,参照某些示例所描述的特征可在其他示例中被组合。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法通过硬件的方式实现。

上面结合附图对本申请的实施例进行了描述,但是本申请并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本申请的启示下,在不脱离本申请宗旨和权利要求所保护的范围情况下,还可做出很多形式,均属于本申请的保护之内。

相关技术
  • 芯片、处理器驱动方法及电子设备
  • 电子设备显示屏驱动芯片驱动方法、装置及电子设备
技术分类

06120112941109