CN113608951B - 芯片状态检测方法和***、电子设备及可读存储介质 - Google Patents
芯片状态检测方法和***、电子设备及可读存储介质 Download PDFInfo
- Publication number
- CN113608951B CN113608951B CN202110851473.2A CN202110851473A CN113608951B CN 113608951 B CN113608951 B CN 113608951B CN 202110851473 A CN202110851473 A CN 202110851473A CN 113608951 B CN113608951 B CN 113608951B
- Authority
- CN
- China
- Prior art keywords
- chip
- response
- random number
- preset control
- control period
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/26—Functional testing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/2273—Test methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4282—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/58—Random or pseudo-random number generators
- G06F7/588—Random number generators, i.e. based on natural stochastic processes
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Computing Systems (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明提供一种芯片状态检测方法和***、电子设备及可读存储介质,其中所述方法包括:S1、在预设控制周期的任务中,将采用随机数产生方法产生的随机数发送给第二芯片,基于随机数,在第一芯片的第一应答表中读取到第一应答数;S2、当第二芯片收到随机数后,接收由第二芯片基于随机数、在第二芯片的第二应答表中读取到的第二应答数;S3、在下一个预设控制周期的任务中,比较第一应答数和接收到的第二应答数是否相同;S4、若相同,则将下一个预设控制周期作为预设控制周期并返回S1;S5、若不相同,则检测出第二芯片出错。本发明可以实现在引入多颗芯片以后,用其中的第一芯片来统筹管理整个控制器中其他芯片的运行状态。
Description
技术领域
本发明涉及自动驾驶技术领域,尤其涉及一种芯片状态检测方法和***、电子设备及可读存储介质。
背景技术
自动驾驶的控制器因为要应对多种传感器(激光雷达,摄像头和毫米波雷达)信号的输入,解析和计算,单芯片无法达到算力的要求,因此,往往会在自动驾驶控制器内部配置多颗芯片,用来进行算力的分配。按照以往的单芯片控制器,只要在单颗芯片内部内置状态检测机制就可以简单地获取芯片的运行状态。但是,在引入多颗芯片以后,如何用主芯片来统筹的管理整个控制器中多个芯片的运行状态,成为一个新的问题。
常用从芯片功能架构如下:应用层软件用以完成自动驾驶相关的逻辑运算,如原始的感知结果输入,数据的处理,控制逻辑运算等。应用层软件监控模块负责监控应用层软件的输出。软件运行和硬件设备监控层负责监控单元的自诊断、硬件环境的检测、软件运行状态监控等。主芯片作为两个从芯片的后续工作芯片,以主芯片的身份存在。在主芯片或从芯片进行后续工作前,需要知道从主芯片或从芯片传送过来的信号是否存在问题。传统的做法是主芯片或从芯片的供应商会在主芯片或从芯片的底层软件做相应的自检机制,并将状态实时地存入状态寄存器,供主芯片或从芯片进行读取。但是因为国内外芯片供应商良莠不齐,并且主芯片或从芯片的供应商不会开放主芯片或从芯片的自检机制,此处就存在浑水摸鱼的可能性,而且即使状态寄存器也存在失效的可能性,有可能会导致主芯片或从芯片已经处于失效的状态,但是状态寄存器存储的运行状态依然为良好。
发明内容
本发明提供一种芯片状态检测方法和***、电子设备及可读存储介质,用以解决现有技术中存在的技术缺陷。
本发明提供一种芯片状态检测方法,包括:
S1、在预设控制周期的任务中,将采用随机数产生方法产生的随机数发送给第二芯片,基于所述随机数,在第一芯片的第一应答表中读取到第一应答数;
S2、接收由所述第二芯片基于所述随机数、在第二芯片的第二应答表中读取到的第二应答数;其中,所述第二应答表与第一应答表采用内容相同的预设应答表;
S3、在下一个预设控制周期的任务中,比较所述第一应答数和接收到的第二应答数是否相同;
S4、若相同,则将下一个预设控制周期作为预设控制周期并返回所述S1;
S5、若不相同,则检测出所述第二芯片出错。
根据本发明所述的芯片状态检测方法,所述将采用随机数产生方法产生的随机数发送给第二芯片,包括:
调用所述第一芯片内置的时间获取函数,将时间获取函数所获取的***时间对应的数值定为随机数初始值;
用所述随机数初始值对所述第一应答表的表长取余,将余数作为最终的随机数;
将所述随机数发送给第二芯片。
根据本发明所述的芯片状态检测方法,所述采用随机数产生方法产生的随机数不大于所述第一应答表的表长。
根据本发明所述的芯片状态检测方法,所述在第一芯片的第一应答表中读取到第一应答数以及在第二芯片的第二应答表中读取到第二应答数均采用读取应答数方法实现,所述读取应答数方法包括:
将预设应答表的首地址赋值给一个数组指针,作为其初始值;
将采用随机数产生方法产生的随机数作为索引,在所述数组指针中读取相应的值作为新的索引号;
基于所述新的索引号,在所述数组指针中读取对应的值作为第一应答数或第二应答数。
根据本发明所述的芯片状态检测方法,所述接收由所述第二芯片基于所述随机数、在第二芯片的第二应答表中读取到的第二应答数包括:
通过与所述第一芯片与第二芯片之间的SPI通信,接收由所述第二芯片基于所述随机数、在第二芯片的第二应答表中读取到的第二应答数。
根据本发明所述的芯片状态检测方法,所述S4包括:
若相同,则在控制器下电前将下一个预设控制周期作为预设控制周期并返回所述S1。
根据本发明所述的芯片状态检测方法,所述S5之后,所述方法还包括:
基于检测出所述第二芯片的出错,进行错误处理。
本发明还提供了一种芯片状态检测***,包括:
第一应答数读取模块,用于在预设控制周期的任务中,将采用随机数产生方法产生的随机数发送给第二芯片,基于所述随机数,在第一芯片的第一应答表中读取到第一应答数;
第二应答数读取模块,用于接收由所述第二芯片基于所述随机数、在第二芯片的第二应答表中读取到的第二应答数;其中,所述第二应答表与第一应答表采用内容相同的预设应答表;
应答数对比模块,用于在下一个预设控制周期的任务中,比较所述第一应答数和接收到的第二应答数是否相同;
循环检测模块,用于若第一应答数和接收到的第二应答数相同,则将下一个预设控制周期作为预设控制周期并返回所述第一应答数读取模块;
检错模块,用于若第一应答数和接收到的第二应答数不相同,则检测出所述第二芯片出错。
本发明还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述任一种所述芯片状态检测方法的步骤。
本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述任一种所述芯片状态检测方法的步骤。
本发明提供的芯片状态检测方法和***、电子设备及可读存储介质基于所述随机数,在第一芯片的第一应答表中读取到第一应答数,并接收由所述第二芯片基于所述随机数、在第二芯片的第二应答表中读取到的第二应答数;通过比对所述第一应答数和接收到的第二应答数是否相同来检测第二芯片的状态,可以实现在引入多颗芯片以后,用其中的第一芯片来统筹的管理整个控制器中其他第二芯片的运行状态,能够更加全面、精准的检测芯片。
附图说明
为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明提供的芯片状态检测方法的流程示意图;
图2是本发明提供的芯片状态检测***的结构示意图;
图3是本发明提供的电子设备的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
下面结合图1描述本发明的一种芯片状态检测方法,该方法的执行主体是第一芯片,该方法包括:
S1、在预设控制周期的任务中,将采用随机数产生方法产生的随机数发送给第二芯片,基于所述随机数,在第一芯片的第一应答表中读取到第一应答数;
预设控制周期可以设置为10ms,10ms是一般芯片典型的控制周期,第一芯片作为执行主体,可以是自动驾驶控制器中内置的主芯片或者从芯片,第一芯片的数量可以是多片,也可以是一片,一般情况下,是一片主芯片或者多片从芯片。在自动驾驶控制器中,感知传感器单元分别可以由多种传感器组合配置而成,多片从芯片作为众多传感器信号接收,解析和计算方使用。基于所述随机数,在第一芯片的第一应答表中读取到第一应答数是通过读取应答数方法实现。理论上,主从芯片在检测机制上是一样的,对称的,所以可以相互检测。第一应答数可以存储为Result,就是写代码的时候,需要用一个变量来代表这个第一应答数,这里给这个变量取名为Result。
读取应答数方法的程序如下:
uint AlgorithmX(uint input)
{
int*table=&β;
int convertNum=0;
convertNum=table[input];
return(table[convertNum]);
}
S2、接收由所述第二芯片基于所述随机数、在第二芯片的第二应答表中读取到的第二应答数;其中,所述第二应答表与第一应答表采用内容相同的预设应答表;
第二芯片的第二应答表中读取第二应答数也是通过读取应答数方法实现。第二芯片读取第二应答数基于的随机数与第一芯片读取第一应答数的随机数是同一个随机数,该随机数都是通过随机数产生方法产生的。第二应答表与第一应答表是相同的,都是采用预设应答表。随机数其实就是个编号,也就是通过随机数进行抽签,抽到应答数表里面的第几号,则将第几号作为第一应答数或第二应答数。
预设应答表可以如下表1所示,表中的数字可以随意更改,但是不能大于表的长度。
表1
序号 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 |
表值 | 16 | 8 | 12 | 5 | 10 | 7 | 9 | 15 | 1 | 6 | 11 | 14 | 4 | 2 | 3 | 13 |
随机数产生方法对应的程序如下:
uint RANDOM(uint TableLen)
{
uint random;
random=getTime();//GetTime可取芯片内置的时间获取函数
random=random%TableLen;//对产生的随机数取余,获取不大于问题表β的值
return(random);
S3、在下一个预设控制周期的任务中,比较所述第一应答数和接收到的第二应答数是否相同;
在下一个预设控制周期的任务中,对第一应答数和接收到的第二应答数进行比较。在被检测芯片正常工作的情况下,第二应答数应当与第一应答数是相同的。
S4、若相同,则将下一个预设控制周期作为预设控制周期并返回所述S1;
若所述第一应答数和接收到的第二应答数相同,则说明被检测的第二芯片没有问题,则需要循环继续检测下一个预设控制周期的任务,因为有可能这一个预设控制周期没错误,下一预设控制周期会产生错误,所以检测需要一直循环。
S5、若不相同,则检测出所述第二芯片出错。
若所述第一应答数和接收到的第二应答数不相同,则说明第二芯片传送回来的信号出现问题,说明第二芯片出错。
本发明提供的芯片状态检测方法和***、电子设备及可读存储介质基于所述随机数,在第一芯片的第一应答表中读取到第一应答数,并接收由所述第二芯片基于所述随机数、在第二芯片的第二应答表中读取到的第二应答数;通过比对所述第一应答数和接收到的第二应答数是否相同来检测第二芯片的状态,可以实现在引入多颗芯片以后,用其中的第一芯片来统筹的管理整个控制器中其他第二芯片的运行状态,能够更加全面、精准的检测芯片。
根据本发明所述的芯片状态检测方法,所述将采用随机数产生方法产生的随机数发送给第二芯片,包括:
调用所述第一芯片内置的时间获取函数,将时间获取函数所获取的***时间对应的数值定为随机数初始值;
时间获取函数是现有技术,一般芯片都会自带时间获取函数,时间获取函数获取的是***时间,在计算机表示中其实就是一个整数,把这个整数作为随机数的第一个值,也就是所获取的***时间对应的数值,将该数值作为随机数初始值,具备更好的随机性。
用所述随机数初始值对所述第一应答表的表长取余,将余数作为最终的随机数。该随机数用于在预设应答表中随机读取应答数;
将所述随机数发送给第二芯片。
根据本发明所述的芯片状态检测方法,所述采用随机数产生方法产生的随机数不大于所述第一应答表的表长。是由于需要用所述随机数初始值对所述第一应答表的表长取余,因此需要随机数不大于所述第一应答表的表长。
根据本发明所述的芯片状态检测方法,所述在第一芯片的第一应答表中读取到第一应答数以及在第二芯片的第二应答表中读取到第二应答数均采用以下方式包括:
将预设应答表的首地址赋值给一个数组指针,作为其初始值;
将采用随机数产生方法产生的随机数作为索引,在所述数组指针中读取相应的值作为新的索引号;
基于所述新的索引号,在所述数组指针中读取对应的值作为第一应答数或第二应答数。
根据本发明所述的芯片状态检测方法,所述接收由所述第二芯片基于所述随机数、在第二芯片的第二应答表中读取到的第二应答数包括:
通过与所述第一芯片与第二芯片之间的SPI通信,接收由所述第二芯片基于所述随机数、在第二芯片的第二应答表中读取到的第二应答数。
SPI(Serial Peripheral interface),就是串行***设备接口,SPI分为主、从两种模式,一个SPI通讯***需要包含一个(且只能是一个)主设备(也就是主芯片),一个或多个从设备(也就是从芯片)。SPI接口的读写操作,都是由主设备发起。当存在多个从设备时,通过各自的片选信号进行管理。支持全双工通信、通信简单、数据传输速率快。
根据本发明所述的芯片状态检测方法,所述S4包括:
若相同,则在控制器下电前将下一个预设控制周期作为预设控制周期并返回所述S1。检测控制器下电之前的第二芯片是否出错,当控制器下电之后,就不需要检测。
根据本发明所述的芯片状态检测方法,所述S5之后,所述方法还包括:
基于检测出所述第二芯片的出错,进行错误处理。
参见图2,下面对本发明提供的芯片状态检测***进行描述,下文描述的芯片状态检测***与上文描述的芯片状态检测方法可相互对应参照。
第一应答数读取模块10,用于在预设控制周期的任务中,将采用随机数产生方法产生的随机数发送给第二芯片,基于所述随机数,在第一芯片的第一应答表中读取到第一应答数;
预设控制周期可以设置为10ms,10ms是一般芯片典型的控制周期,第一芯片作为执行主体,可以是自动驾驶控制器中内置的主芯片或者从芯片,第一芯片的数量可以是多片,也可以是一片,一般情况下,是一片主芯片或者多片从芯片。在自动驾驶控制器中,感知传感器单元分别可以由多种传感器组合配置而成,多片从芯片作为众多传感器信号接收,解析和计算方使用。基于所述随机数,在第一芯片的第一应答表中读取到第一应答数是通过读取应答数方法实现。理论上,主从芯片在检测机制上是一样的,对称的,所以可以相互检测。第一应答数可以存储为Result,就是写代码的时候,需要用一个变量来代表这个第一应答数,这里给这个变量取名为Result。
第二应答数读取模块20,用于接收由所述第二芯片基于所述随机数、在第二芯片的第二应答表中读取到的第二应答数;其中,所述第二应答表与第一应答表采用内容相同的预设应答表;
第二芯片读取第二应答数基于的随机数与第一芯片读取第一应答数的随机数是同一个随机数,该随机数都是通过随机数产生方法产生的。第二应答表与第一应答表是相同的,都是采用预设应答表。随机数其实就是个编号,也就是通过随机数进行抽签,抽到应答数表里面的第几号,则将第几号作为第一应答数或第二应答数。
应答数对比模块30,用于在下一个预设控制周期的任务中,比较所述第一应答数和接收到的第二应答数是否相同;
在下一个预设控制周期的任务中,对第一应答数和接收到的第二应答数进行比较。在被检测芯片正常工作的情况下,第二应答数应当与第一应答数是相同的。
循环检测模块40,用于若第一应答数和接收到的第二应答数相同,则将下一个预设控制周期作为预设控制周期并返回所述第一应答数读取模块;
若所述第一应答数和接收到的第二应答数相同,则说明被检测的第二芯片没有问题,则需要循环继续检测下一个预设控制周期的任务,因为有可能这一个预设控制周期没错误,下一预设控制周期会产生错误,所以检测需要一直循环。
检错模块50,用于若第一应答数和接收到的第二应答数不相同,则检测出所述第二芯片出错。
若所述第一应答数和接收到的第二应答数不相同,则说明第二芯片传送回来的信号出现问题,说明第二芯片出错。
根据本发明所述的芯片状态检测***,所述将采用随机数产生方法产生的随机数发送给第二芯片,包括:
调用所述第一芯片内置的时间获取函数,将时间获取函数所获取的***时间对应的数值定为随机数初始值;
时间获取函数是现有技术,一般芯片都会自带时间获取函数,时间获取函数获取的是***时间,在计算机表示中其实就是一个整数,把这个整数作为随机数的第一个值,也就是所获取的***时间对应的数值,将该数值作为随机数初始值,具备更好的随机性。
用所述随机数初始值对所述第一应答表的表长取余,将余数作为最终的随机数。该随机数用于在预设应答表中随机读取应答数;
将所述随机数发送给第二芯片。
根据本发明所述的芯片状态检测***,所述采用随机数产生方法产生的随机数不大于所述第一应答表的表长。是由于需要用所述随机数初始值对所述第一应答表的表长取余,因此需要随机数不大于所述第一应答表的表长。
根据本发明所述的芯片状态检测***,所述在第一芯片的第一应答表中读取到第一应答数以及在第二芯片的第二应答表中读取到第二应答数均采用读取应答数方法实现,所述读取应答数方法包括:
将预设应答表的首地址赋值给一个数组指针,作为其初始值;
将采用随机数产生方法产生的随机数作为索引,在所述数组指针中读取相应的值作为新的索引号;
基于所述新的索引号,在所述数组指针中读取对应的值作为第一应答数或第二应答数。
根据本发明所述的芯片状态检测***,所述接收由所述第二芯片基于所述随机数、在第二芯片的第二应答表中读取到的第二应答数包括:
通过与所述第一芯片与第二芯片之间的SPI通信,接收由所述第二芯片基于所述随机数、在第二芯片的第二应答表中读取到的第二应答数。
根据本发明所述的芯片状态检测***,所述循环检测模块40用于:
若第一应答数和接收到的第二应答数相同,则在控制器下电前将下一个预设控制周期作为预设控制周期并返回所述第一应答数读取模块10。检测控制器下电之前的第二芯片是否出错,当控制器下电之后,就不需要检测。
根据本发明所述的芯片状态检测方法,所述***还包括:
错误处理模块,用于基于检测出所述第二芯片的出错,进行错误处理。
图3示例了一种电子设备的实体结构示意图,该电子设备可以包括:处理器(processor)310、通信接口(Communications Interface)320、存储器(memory)330和通信总线340,其中,处理器310,通信接口320,存储器330通过通信总线340完成相互间的通信。处理器310可以调用存储器330中的逻辑指令,以执行芯片状态检测方法,该方法包括:
S1、在预设控制周期的任务中,将采用随机数产生方法产生的随机数发送给第二芯片,基于所述随机数,在第一芯片的第一应答表中读取到第一应答数;
S2、接收由所述第二芯片基于所述随机数、在第二芯片的第二应答表中读取到的第二应答数;其中,所述第二应答表与第一应答表采用内容相同的预设应答表;
S3、在下一个预设控制周期的任务中,比较所述第一应答数和接收到的第二应答数是否相同;
S4、若相同,则将下一个预设控制周期作为预设控制周期并返回所述S1;
S5、若不相同,则检测出所述第二芯片出错。
此外,上述的存储器430中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
另一方面,本发明还提供一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行上述各方法所提供的芯片状态检测方法,该方法包括:
S1、在预设控制周期的任务中,将采用随机数产生方法产生的随机数发送给第二芯片,基于所述随机数,在第一芯片的第一应答表中读取到第一应答数;
S2、接收由所述第二芯片基于所述随机数、在第二芯片的第二应答表中读取到的第二应答数;其中,所述第二应答表与第一应答表采用内容相同的预设应答表;
S3、在下一个预设控制周期的任务中,比较所述第一应答数和接收到的第二应答数是否相同;
S4、若相同,则将下一个预设控制周期作为预设控制周期并返回所述S1;
S5、若不相同,则检测出所述第二芯片出错。
又一方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各提供的芯片状态检测方法,该方法包括:
S1、在预设控制周期的任务中,将采用随机数产生方法产生的随机数发送给第二芯片,基于所述随机数,在第一芯片的第一应答表中读取到第一应答数;
S2、当所述第二芯片收到随机数后,接收由所述第二芯片基于所述随机数、在第二芯片的第二应答表中读取到的第二应答数;其中,所述第二应答表与第一应答表采用内容相同的预设应答表;
S3、在下一个预设控制周期的任务中,比较所述第一应答数和接收到的第二应答数是否相同;
S4、若相同,则将下一个预设控制周期作为预设控制周期并返回所述S1;
S5、若不相同,则检测出所述第二芯片出错。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (10)
1.一种芯片状态检测方法,其特征在于,包括:
S1、在预设控制周期的任务中,将采用随机数产生方法产生的随机数发送给第二芯片,基于所述随机数,在第一芯片的第一应答表中读取到第一应答数;
S2、接收由所述第二芯片基于所述随机数、在第二芯片的第二应答表中读取到的第二应答数;其中,所述第二应答表与第一应答表采用内容相同的预设应答表;
S3、在下一个预设控制周期的任务中,比较所述第一应答数和接收到的第二应答数是否相同;
S4、若相同,则将下一个预设控制周期作为预设控制周期并返回所述S1;
S5、若不相同,则检测出所述第二芯片出错。
2.根据权利要求1所述的芯片状态检测方法,其特征在于,所述将采用随机数产生方法产生的随机数发送给第二芯片,包括:
调用所述第一芯片内置的时间获取函数,将时间获取函数所获取的***时间对应的数值定为随机数初始值;
用所述随机数初始值对所述第一应答表的表长取余,将余数作为最终的随机数;
将所述随机数发送给第二芯片。
3.根据权利要求1所述的芯片状态检测方法,其特征在于,所述采用随机数产生方法产生的随机数不大于所述第一应答表的表长。
4.根据权利要求1-3任一所述的芯片状态检测方法,其特征在于,所述在第一芯片的第一应答表中读取到第一应答数以及在第二芯片的第二应答表中读取到第二应答数均采用以下方式实现:
将预设应答表的首地址赋值给一个数组指针,作为其初始值;
将采用随机数产生方法产生的随机数作为索引,在所述数组指针中读取相应的值作为新的索引号;
基于所述新的索引号,在所述数组指针中读取对应的值作为第一应答数或第二应答数。
5.根据权利要求1所述的芯片状态检测方法,其特征在于,所述接收由所述第二芯片基于所述随机数、在第二芯片的第二应答表中读取到的第二应答数包括:
通过与所述第一芯片与第二芯片之间的SPI通信,接收由所述第二芯片基于所述随机数、在第二芯片的第二应答表中读取到的第二应答数。
6.根据权利要求1所述的芯片状态检测方法,其特征在于,所述S4包括:
若相同,则在控制器下电前将下一个预设控制周期作为预设控制周期并返回所述S1。
7.根据权利要求1所述的芯片状态检测方法,其特征在于,所述S5之后,所述方法还包括:
基于检测出所述第二芯片的出错,进行错误处理。
8.一种芯片状态检测***,其特征在于,包括:
第一应答数读取模块,用于在预设控制周期的任务中,将采用随机数产生方法产生的随机数发送给第二芯片,基于所述随机数,在第一芯片的第一应答表中读取到第一应答数;
第二应答数读取模块,用于接收由所述第二芯片基于所述随机数、在第二芯片的第二应答表中读取到的第二应答数;其中,所述第二应答表与第一应答表采用内容相同的预设应答表;
应答数对比模块,用于在下一个预设控制周期的任务中,比较所述第一应答数和接收到的第二应答数是否相同;
循环检测模块,用于若第一应答数和接收到的第二应答数相同,则将下一个预设控制周期作为预设控制周期并返回所述第一应答数读取模块;
检错模块,用于若第一应答数和接收到的第二应答数不相同,则检测出所述第二芯片出错。
9.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至7任一项所述的芯片状态检测方法的步骤。
10.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现如权利要求1至7任一项所述的芯片状态检测方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110851473.2A CN113608951B (zh) | 2021-07-27 | 2021-07-27 | 芯片状态检测方法和***、电子设备及可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110851473.2A CN113608951B (zh) | 2021-07-27 | 2021-07-27 | 芯片状态检测方法和***、电子设备及可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113608951A CN113608951A (zh) | 2021-11-05 |
CN113608951B true CN113608951B (zh) | 2023-10-03 |
Family
ID=78305614
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110851473.2A Active CN113608951B (zh) | 2021-07-27 | 2021-07-27 | 芯片状态检测方法和***、电子设备及可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113608951B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115877185B (zh) * | 2023-01-30 | 2023-05-09 | 北京怀美科技有限公司 | 适用于芯片检测的灵活比对方法和设备 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102221834A (zh) * | 2010-04-19 | 2011-10-19 | 通用汽车环球科技运作有限责任公司 | 确保汽车应用分布式网络上微处理器的安全完整性的方法 |
CN105760253A (zh) * | 2016-01-13 | 2016-07-13 | 奇瑞汽车股份有限公司 | 一种电子节气门芯片安全监控的软件实现方法 |
CN106200453A (zh) * | 2015-06-01 | 2016-12-07 | 三菱电机株式会社 | 车载电子控制装置 |
KR20190094746A (ko) * | 2018-02-05 | 2019-08-14 | 삼성전자주식회사 | 심 카드를 적재하는 트레이가 삽입되는 전자 장치 및 그의 제어 방법 |
CN110688092A (zh) * | 2019-09-04 | 2020-01-14 | 湖南遥昇通信技术有限公司 | 一种随机数生成方法、装置、设备及存储介质 |
CN111506345A (zh) * | 2020-06-29 | 2020-08-07 | 深圳市芯天下技术有限公司 | 一种非型闪存指令组合验证方法、***、存储介质和终端 |
CN111856242A (zh) * | 2020-06-22 | 2020-10-30 | 深圳米飞泰克科技有限公司 | 合封芯片的检测方法、装置及电子设备 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4050196B2 (ja) * | 2003-07-09 | 2008-02-20 | 三菱電機株式会社 | 監視制御回路を有する電子制御装置 |
JP5743144B2 (ja) * | 2011-05-02 | 2015-07-01 | 株式会社ユニバーサルエンターテインメント | Rfidタグを備えた複数のチップからデータを読み取るシステム及び方法 |
KR101558687B1 (ko) * | 2013-12-10 | 2015-10-08 | 현대자동차주식회사 | 직렬 통신 테스트 장치, 시스템 및 방법 |
US9734006B2 (en) * | 2015-09-18 | 2017-08-15 | Nxp Usa, Inc. | System and method for error detection in a critical system |
CN111656333B (zh) * | 2018-03-26 | 2024-01-30 | 株式会社富士 | 从属设备、作业机及存储日志信息的方法 |
-
2021
- 2021-07-27 CN CN202110851473.2A patent/CN113608951B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102221834A (zh) * | 2010-04-19 | 2011-10-19 | 通用汽车环球科技运作有限责任公司 | 确保汽车应用分布式网络上微处理器的安全完整性的方法 |
CN106200453A (zh) * | 2015-06-01 | 2016-12-07 | 三菱电机株式会社 | 车载电子控制装置 |
CN105760253A (zh) * | 2016-01-13 | 2016-07-13 | 奇瑞汽车股份有限公司 | 一种电子节气门芯片安全监控的软件实现方法 |
KR20190094746A (ko) * | 2018-02-05 | 2019-08-14 | 삼성전자주식회사 | 심 카드를 적재하는 트레이가 삽입되는 전자 장치 및 그의 제어 방법 |
CN110688092A (zh) * | 2019-09-04 | 2020-01-14 | 湖南遥昇通信技术有限公司 | 一种随机数生成方法、装置、设备及存储介质 |
CN111856242A (zh) * | 2020-06-22 | 2020-10-30 | 深圳米飞泰克科技有限公司 | 合封芯片的检测方法、装置及电子设备 |
CN111506345A (zh) * | 2020-06-29 | 2020-08-07 | 深圳市芯天下技术有限公司 | 一种非型闪存指令组合验证方法、***、存储介质和终端 |
Also Published As
Publication number | Publication date |
---|---|
CN113608951A (zh) | 2021-11-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6496790B1 (en) | Management of sensors in computer systems | |
US11748218B2 (en) | Methods, electronic devices, storage systems, and computer program products for error detection | |
US11720505B2 (en) | Device for a single wire digital bus, master device, sensor, and method to assign addresses to multiple devices on a single wire digital bus | |
AU2012272906B2 (en) | System and method for determining an optimum QC strategy for immediate release results | |
DE102019129275A1 (de) | Verfahren, Schaltung und integrierte Schaltung zum Transferieren von Daten und eines Datenprüffeldes | |
CN110580235B (zh) | 一种sas扩展器通信方法及装置 | |
CN113608951B (zh) | 芯片状态检测方法和***、电子设备及可读存储介质 | |
CN111600885A (zh) | Sql注入漏洞检测方法和装置、设备及存储介质 | |
CN105183575A (zh) | 处理器故障的诊断方法、装置及*** | |
US20120030549A1 (en) | Data transmission detecting device, data transmission detecting method and electronic device thereof | |
CN112835885B (zh) | 一种分布式表格存储的处理方法、装置及*** | |
CN103412838B (zh) | 一种扩展***、通信方法、地址配置方法、设备及装置 | |
CN112948233A (zh) | 一种接口测试方法、装置、终端设备及介质 | |
CN112699648B (zh) | 数据处理方法及装置 | |
CN116627861B (zh) | 基于扩展器的数据处理方法、***、电子设备及存储介质 | |
CN107203373B (zh) | 界面控件的获取方法、测试方法及获取装置、测试装置 | |
CN116126613A (zh) | 一种PCIe设备的位置检测方法、装置、电子设备及存储介质 | |
US8554966B2 (en) | Method for data exchange | |
WO2010050957A1 (en) | Bit inversion for communication interface | |
KR20230039397A (ko) | 차량의 can 퍼징 장치 및 그 방법 | |
US8738221B2 (en) | Methods and systems for securing vehicle data | |
CN115114062B (zh) | 指令字线路的故障检测方法、装置、设备和存储介质 | |
CN117631655B (zh) | 用于车辆诊断的安全通信方法、装置、设备及存储介质 | |
US20040093357A1 (en) | Method for parameterizing an apparatus | |
CN110096555B (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 |