CN115699124A - 基于硬件的传感器分析 - Google Patents

基于硬件的传感器分析 Download PDF

Info

Publication number
CN115699124A
CN115699124A CN202180038732.8A CN202180038732A CN115699124A CN 115699124 A CN115699124 A CN 115699124A CN 202180038732 A CN202180038732 A CN 202180038732A CN 115699124 A CN115699124 A CN 115699124A
Authority
CN
China
Prior art keywords
hash
message
hash value
sensor
data
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
Application number
CN202180038732.8A
Other languages
English (en)
Inventor
M·哈伦达
G·帕内萨尔
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
SIEMENS INDUSTRY SOFTWARE Ltd
Original Assignee
SIEMENS INDUSTRY SOFTWARE Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by SIEMENS INDUSTRY SOFTWARE Ltd filed Critical SIEMENS INDUSTRY SOFTWARE Ltd
Publication of CN115699124A publication Critical patent/CN115699124A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/079Root cause analysis, i.e. error or fault diagnosis
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q9/00Arrangements in telecontrol or telemetry systems for selectively calling a substation from a main station, in which substation desired apparatus is selected for applying a control signal thereto or for obtaining measured values therefrom
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/282Testing of electronic circuits specially adapted for particular applications not provided for elsewhere
    • G01R31/2829Testing of circuits in sensor or actuator systems
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/2851Testing of integrated circuits [IC]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0721Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment within a central processing unit [CPU]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0733Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a data processing system embedded in an image processing device, e.g. printer, facsimile, scanner
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0751Error or fault detection not based on redundancy
    • G06F11/0763Error or fault detection not based on redundancy by bit configuration check, e.g. of formats or tags
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0793Remedial or corrective actions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2228Indexing structures
    • G06F16/2255Hash tables
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/81Threshold
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q2209/00Arrangements in telecontrol or telemetry systems
    • H04Q2209/80Arrangements in the sub-station, i.e. sensing device
    • H04Q2209/82Arrangements in the sub-station, i.e. sensing device where the sensing device takes the initiative of sending data
    • H04Q2209/823Arrangements in the sub-station, i.e. sensing device where the sensing device takes the initiative of sending data where the data is sent when the measured values exceed a threshold, e.g. sending an alarm

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Software Systems (AREA)
  • Biomedical Technology (AREA)
  • Health & Medical Sciences (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Electromagnetism (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Computer Hardware Design (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Debugging And Monitoring (AREA)

Abstract

一种使用集成电路监控来自传感器的消息的方法,该消息包括由该传感器测量的数据,该方法包括:从集成电路的互连电路读取第一消息,该互连电路将传感器与被配置为处理消息的一个或多个核心装置相连接;对第一消息计算第一哈希值;将第一哈希值与存储在哈希存储器中的一个或多个先前哈希值进行比较,每个先前哈希值都对应于从互连电路中先于第一消息读取的消息;以及如果第一哈希值与存储在哈希存储器中的至少一个先前哈希值之间的差低于预定阈值,则执行校正动作。

Description

基于硬件的传感器分析
技术领域
本发明涉及使用片上系统(System-on-Chip,SoC)或多芯片模块(Multi-chipModule,MCM)内的监控电路来监控来自传感器的消息。
背景技术
集成电路芯片可用于监控由传感器记录的数据消息。所记录的数据消息可用于检测导致传感器不能全部或部分地刷新该传感器记录的消息的传感器故障。传感器的这种故障将导致不能记录在系统内(传感器应用于该系统内)发生的问题。为了检测已知集成电路芯片布置中的传感器故障,通过首先将传感器记录的数据消息写入到与集成电路芯片相连接的存储器来监控这些消息。一旦消息已被写入存储器,则可从存储器读取这些消息并由包括在芯片上的一个或多个处理模块内的软件进行处理。
可用于表明系统内发生的问题的传感器的一个示例是图像传感器,例如相机。在传感器是图像传感器的情况下,由该传感器记录的每个数据消息都是在给定时间窗口内捕获的图像帧。通过用监控软件比较在后续时间窗口内捕获的图像帧来确定是否发生了问题。传感器随时间记录的图像帧中的强相似性可用于表明传感器的故障。
在可以通过监控软件处理消息之前,要把数据消息存储在存储器中,对集成电路芯片的这个要求在检测传感器的故障时引入了显著的时间延迟。这对于强烈依赖于传感器数据来识别系统内(该传感器应用于该系统中)的问题的实现是有问题的,从而可以以最小的时间延迟来执行对这些问题的响应。例如,在传感器是图像传感器的情况下,可能要求传感器识别即将到来的外部物体并触发对这些物体的接近的响应。
存在减少监控由传感器记录的数据消息所花费的时间的需求。
发明内容
根据第一方面,提供了一种使用集成电路监控来自传感器的消息的方法,该消息包括由传感器测量的数据,该方法包括:从集成电路的互连电路读取第一消息,该互连电路将传感器与被配置为处理消息的一个或多个核心装置相连接;计算对于第一消息的第一哈希(hash)值;将第一哈希值与存储在哈希存储器中的一个或多个先前哈希值进行比较,每个先前哈希值对应于从互连电路中先于第一消息所读取的消息;以及如果第一哈希值与存储在哈希存储器中的至少一个先前哈希值之间的差低于预定阈值,则执行校正动作。
该方法还可以包括,将第一哈希值存储在哈希存储器中。
可以在将第一哈希值与先前哈希值进行比较的同时将第一哈希值存储在哈希存储器中。
该方法还可以包括,在第一消息被一个或多个核心装置读取之前缓冲该第一消息。
缓冲器的大小可以对应于用于计算包括第一哈希值的数据哈希的数据值的数目。
该方法还可以包括,将第一哈希值与M个先前哈希值进行比较,并且如果第一哈希值与P个先前哈希值之间的差低于预定阈值,则执行校正动作,其中,1<P<M。
该方法还可以包括,导出对应于P个先前哈希值的置信值,其中,第一哈希值和P个先前哈希值中的每个值之间的差低于预定阈值。
M可以是可动态配置的。
如果第一哈希值与存储在哈希存储器中的至少一个先前哈希值相同,则可以执行校正动作。
该方法还可以包括,为第一消息计算多个哈希值,该多个哈希值中的每个哈希值表示第一消息的一部分,并且第一消息的多个哈希值中的每个哈希值可以与对应于第一消息的那个部分的一个或多个先前哈希值进行比较。
对于第一消息计算的多个哈希值可以表示第一消息的重叠部分。
对于第一消息计算的多个哈希值可以表示第一消息的非重叠部分。
互连电路还可以将传感器与存储器相连接,并且存储器可以存储由传感器传递的消息。
校正动作可以是以下项的一个或多个:告知用户传感器数据不可靠、停用集成电路的取决于从传感器获得的数据的部件、以及启用被构造为修复传感器的机构。
校正动作可以包括,向集成电路的另一部件输出告警信号。
校正动作可以包括,输出硬件事件、输出中断信号、或向外部核心装置输出消息。
传感器可以是图像传感器,并且从互连电路读取的每个消息可以是由图像传感器捕获的帧。
集成电路可以是片上系统。
互连电路可以是数据总线。
根据第二方面,提供了一种用于监控来自传感器的消息的集成电路芯片,该消息包括由该传感器测量的数据,该集成电路芯片包括:将传感器与被配置为处理消息的核心装置相连接的互连电路;被配置为从互连电路读取第一消息的监控装置;用于存储多个先前哈希值的哈希存储器,每个哈希值对应于从互连电路先于第一消息所读取的消息;以及处理器,该处理器被配置为:为第一消息计算第一哈希值;以及将第一哈希值与存储在哈希存储器中的一个或多个先前哈希值进行比较;其中,集成电路被配置为:如果第一哈希值与存储在哈希存储器中的至少一个先前哈希值之间的差低于预定阈值,则执行校正动作。
附图说明
现在将参照附图通过示例描述本发明。在附图中:
图1是示例性集成电路芯片装置的示意图;
图2是使用集成电路芯片装置监控数据消息的示例性系统的示意图;
图3是图2所示的集成电路芯片装置的监控装置的详细实施例;
图4是用于使用集成电路芯片装置来监控数据消息的替代示例性系统的示意图;
图5是如图2或图4所示的使用集成电路芯片装置来监控来自传感器的消息的示例性方法的流程图;以及
图6是如图2或图4所示的使用集成电路芯片装置来监控来自传感器的消息的替代示例性方法的流程图。
具体实施方式
图1至图4是示例性系统架构和该系统架构内的部件的示意图。这些图以功能块的形式展现结构。在这些图中省略了用于执行本领域公知的功能的一些功能块。图5和图6是示出使用图1至图4的系统架构来监控传感器消息的方法的流程图。每个流程图描述了可以执行该流程图的方法的顺序。然而,这些流程图并不旨在将所描述的方法限制为以所描述的顺序来实现。这些方法的步骤可以以与流程图中所描述的顺序不同的顺序执行。
图1示出了用于SoC 100的示例性监控网络的一般结构。监控电路104布置为监控系统电路102。例如,为了检测与安全问题或安保问题有关的核心装置的不当操作。
图2示出了示例性系统200,该系统包括用于监控从传感器202接收的数据消息的集成电路芯片100,例如SoC。这些消息被称为数据消息,因为它们包括由传感器记录的一个或多个不同的数据值。传感器202可以是能够周期性地记录数据的任何类型的传感器。即,传感器202可以能够以规则的时间窗口连续地记录数据。每个时间窗口可以另外地被称为集成电路芯片的时钟周期。在一个示例中,传感器202是例如相机的图像传感器,并且由传感器记录的每个数据消息是图像帧。
和传感器202一样,SoC 100也与存储器204相连接。因此,传感器202通过SoC 100与存储器204相连接。在图2中,存储器204是外部存储器。外部存储器是不被包括在SoC 100之内的存储器。在替代示例中,存储器204可以是内部存储器,并且因此可以被包括在SoC100内。存储器204被配置为存储由传感器202记录、并且通过SoC 100被传递至存储器204的数据消息。
与图1一样,图2中的SoC包括系统电路102和监控电路104。系统电路102包括互连电路206和一个或多个核心装置208、210、212。互连电路206将传感器202和存储器204与核心装置208、210、212相连接,并且还将核心装置208、210、212彼此连接。因此,互连电路206使得能够在传感器202、存储器204和核心装置208、210、212之间传输数据。在一个示例中,核心装置208、210、212是主装置。在替代示例中,核心装置208、210、212是主装置和从装置的组合。核心装置208、210、212中的一个或多个被配置为处理从传感器202接收的数据消息。为了能够处理数据,一个或多个核心装置208、210、212包括适当的系统软件。尽管在图2中所示的SoC包括三个核心装置,但是任何数量的核心装置都可以适当地集成到系统电路中。SoC互连形成SoC的通信主干(communication backbone),核心装置可以通过该通信主干彼此通信。这些通信是双向的。
主装置是那些发起例如网络中的读取/写入等信息流通请求的装置。主装置的示例是处理器,例如DSP(数字信号处理器)、视频处理器、应用处理器、CPU(中央处理器单元)和GPU(图形处理器单元)。任何可编程处理器都可以是主装置。主装置的其他示例是带有DMA(直接存储器访问)能力的装置,例如用于将数据从一个位置移动到另一位置的常规DMA、带有DMA能力的自主协处理器(例如加密引擎)和带有DMA能力的外围装置(例如以太网控制器)。
从装置是响应主装置的命令的那些装置。从装置的示例是片上存储器、用于片外存储器(例如DRAM)的存储器控制器和外围单元。
互连电路206的拓扑是取决于SoC的。例如,互连电路可以包括以下类型的网络中的任何一种或其组合,以在系统电路周围传输通信:总线网络、环形网络、树形网络或网状网络。在一个示例中,互连电路是数据总线。
如上所述,系统电路102的核心装置208、210、212被配置为处理由传感器202记录的数据消息。核心装置208、210、212使用适当的系统软件来执行该数据处理。为了处理数据消息,首先将这些数据消息写入存储器204。也就是说,一旦数据消息已经被写入存储器204,这些数据消息就可以被一个或多个核心装置208、210、212读取以进行处理。通过将最近获得的数据值与存储在存储器204中的先前数据值进行比较,可以由包括在一个或多个核心装置208、210、212中的软件来处理数据。在一个示例中,从连续数据消息中获得的数据值之间的相似性表明传感器故障的发生。即,在系统(传感器应用于该系统)的状态发生变化时,传感器202可能记录到重复的数据值。在传感器202是图像传感器的示例中,检测由传感器记录到的重复的数据值可以表明图像传感器包括有缺陷的像素或停滞的像素。
使用系统电路102来处理由传感器202记录的数据消息的缺点在于,这导致从传感器的故障到检测到该故障具有显著时间延迟。即,传感器数据必须在其可由包括在核心装置208、210、212内的软件读取和处理之前被写入到存储器204中。存储和处理数据消息所花费的时间可以是几十毫秒到几百毫秒的量级。这对于一些集成系统来说太慢了,这些集成系统需要更快的故障检测机制以允许以适当时间量实现对传感器故障的反应。
为了提供监控由传感器202记录的数据消息的更快方法,监控电路104包括一个或多个监控装置214、216、218。监控装置214、216、218与互连电路206相连接。监控装置214、216、218被配置为从互连电路206读取数据消息。来自互连电路206的数据消息是在到达存储器204之前由传感器202通过互连电路206传递的消息。这些数据消息由核心装置208、210、212读取,而不是从互连电路206中提取。不采用核心装置208、210、212所使用的系统软件,而是监控装置214、216、218被配置为使用硬件部件的布置来读取并随后处理数据消息。
监控装置214、216、218可以被配置为选择性地仅读取由传感器202传递的数据消息。也就是说,监控装置214、216、218可以被配置为过滤掉不是来自传感器的数据消息的所有消息、以及穿过互连电路206传输的所有消息(如果存在这样的消息的话)。监控装置214、216、218还被配置为自主地读取这些数据消息,而无需任何软件介入。在一个示例中,穿过互连电路206传递的消息可以伴随有标记从何模块传递出该消息的标识。监控装置214、216、218可以被配置为通过观察该识别标识来过滤掉不是由传感器202传递的数据消息的消息。换句话说,监控装置214、216、218可以选择性地只读取这些数据消息,该数据消息包括将传感器202标记为传递出这些数据消息的模块的标识。在另一示例中,穿过互连电路206传递的消息伴有表明这些消息将被写入的模块的标记。因此,监控装置214、216、218可以选择性地只读取这样的数据消息:该数据消息包括标记在存储器204内将要被写入的地址的标识。
尽管在图2中SoC被示为包括三个监控装置,但是任何数量的监控装置都可以适当地集成到集成电路芯片100中。每个监控装置214、216、218可以通过单个通信链路与互连电路206相连接。替代地,一个或多个装置单元214、216、218可以与多个通信链路相连接。监控装置214、216、218还被配置为监控已经从互连电路206读取的数据消息,并确定这些消息是否包括表明传感器202正在监控的系统中的传感器故障的数据值。
除了互连电路206之外,监控装置214、216、218与输出模块220相连接。输出模块220被配置为:如果一个或多个监控装置214、216、218确定包括在数据消息内的数据值表明传感器故障,则执行校正动作。也就是说,监控装置214、216、218被配置为如果它们确定包括在数据消息中的数据值表明传感器故障,则指示输出模块220执行校正动作。在图2中,系统包括一个输出模块220,然而,电路可以包括任何数量的输出模块220。尽管图2的输出模块220被示出为在集成电路芯片100之外,但是作为替代,输出模块220可以被包括在集成电路芯片内。在电路包括多于一个的输出模块220的情况下,每个输出模块可以被配置为响应于来自一个或多个监控装置214、216、218的确定,即确定读取的数据表明传感器故障,而执行不同的校正动作。
图3是图1和2中示出的集成电路芯片的监控装置214的详细实施例。监控装置214能够使用硬件部件的布置来读取和监控来自互连电路206的数据消息,而无需任何系统软件的介入。这些硬件部件包括与数据存储器304和通信器306均相连接的处理器302。
监控装置214的处理器302被配置为对从互连电路102接收的第一消息计算第一哈希(hash)值。哈希存储器304是被配置为存储多个先前哈希值的存储器,其中,每个存储的哈希值对应于从互连电路中先于第一消息读取的消息。处理器302还被配置为将为第一消息计算的至少一个哈希值与存储在哈希存储器304中的一个或多个先前哈希值进行比较。如果处理器302确定第一哈希值和存储在哈希存储器中的至少一个先前哈希值之间的差低于由处理器302识别的预定阈值,则处理器向通信器306输出信号。在接收到该信号时,通信器306随后被配置为指示与集成电路相连接的输出模块220执行校正动作。
监控装置214的处理器302还包括与哈希计算器310相连接的数据缓冲器308。除了数据缓冲器308之外,哈希计算器310与当前哈希选择器312和比较器314相连接。当前哈希选择器312和比较器314都与哈希存储器304相连接。比较器314还与通信器306相连接。
数据缓冲器308被配置为接收从互连电路206读取的数据消息,并将这些接收到的数据消息存储一短时间段。然后,数据缓冲器308将接收到的数据消息传送到哈希计算器310。如上总结的,由数据缓冲器308接收的第一数据消息是在被与集成电路芯片100相连接的存储器204接收并写入之前就从互连电路206读取的数据消息。因此,在一个或多个核心装置208、210、212从存储器204读取数据消息之前,数据缓冲器308就接收第一数据消息。
数据缓冲器308可以是预先确定的大小。在一个示例中,数据缓冲器308的大小与缓冲器所接收的数据消息的大小相同。换句话说,数据缓冲器308的大小与缓冲器所接收的第一消息的大小相同。因此,数据缓冲器308被配置为仅存储在一个时钟周期中记录的数据消息。在一个替代的示例中,数据缓冲器308的大小是包括在第一数据消息内的数据值的仅仅一个子集的大小。在该替代示例中,缓冲器的大小对应于由哈希计算器310计算的哈希的大小。因此,数据缓冲器308被配置为在任何一个时钟周期中仅存储包括在一个数据消息内的数据值的子集。下面进一步详细描述哈希大小。
哈希计算器310被配置为对从数据缓冲器308接收的每个数据消息计算一个或多个数据哈希。每个数据哈希都包括表示来自用于计算该哈希的消息的数据值的哈希值。上面已经提到,从数据缓冲器308接收的每个数据消息都包括一个或多个不同的数据值。因此,每个数据消息可以包括多个数据值。在一个示例中,哈希计算器310被配置为对所接收的数据消息的所有数据值计算一个数据哈希。在一个替代示例中,哈希计算器310被配置为对每个接收到的数据消息计算多个数据哈希。在该替代示例中,对于第一数据消息,对该数据消息的数据值的子集计算每个哈希值。该子集可以包括来自第一数据消息的一个或多个数据值。即,为第一数据消息计算的每个哈希值表示该数据消息的一部分。
由哈希计算器310计算的每个数据哈希都具有预定的哈希大小,其中,哈希大小表明用于计算该哈希的数据值的数量。哈希大小可由集成电路芯片的操作者配置。在一个示例中,哈希大小可由操作者在集成电路芯片100的实例化时间配置。在一个替代示例中,哈希大小是可动态配置的。即,哈希大小在集成电路芯片100的操作期间是可配置的。
在传感器是图像传感器的示例中,从互连电路206读取的每个数据消息是图像帧。因此,给定消息的每个数据值可以是图像帧的像素。因此,在一个示例中,哈希计算器310被配置为对第一图像帧的所有像素计算数据哈希。在一个替代示例中,哈希计算器310被配置为对第一图像帧的限定像素子集中的每一者计算数据哈希。
在哈希计算器310被配置为对从数据缓冲器308接收的每个数据消息计算多于一个的数据哈希的示例中,可以使用数据消息的数据值来形成滚动输入或非重叠输入以形成这些哈希值。滚动输入为:在该滚动输入中在用于计算连续哈希的数据值中存在显著重叠的输入。即,为每个数据消息计算的哈希表示该消息的重叠数据子集或重叠部分。从滚动输入获得的一组数据哈希的示例可如下所示:
H1=f(X1,X2,...XN)
H2=f(X2,X3,...XN+1)
H3=f(X3,X4,...XN+2)
在上述说明中,H1、H2和H3各自表示从数据消息Y1中的数据值X1、X2、......XN+2的子集中获得的数据哈希的值。在上面提供的示例中,数据哈希H1和数据哈希H2的输入相差一个数据值。类似地,数据哈希H2和数据哈希H3的输入相差一个数据值。在替代示例中,连续数据哈希之间的输入可以相差更多数量的数据值。
非重叠输入是用于形成连续哈希值的数据值之间没有重叠的输入。即,为每个数据消息计算的哈希值代表该消息的非重叠部分。从非重叠输入获得的一组数据哈希的示例可如下所示:
H1=f(X1,X2,...XN)
H2=f(XN+1,XN+2,...X2N)
H3=f(X2N+1,X2N+2,...X3N)
在上述说明中,H1、H2和H3各自表示从数据消息Y1中的数据值X1、X2、……XN+2的子集中获得的数据哈希的值。
哈希存储器304是被配置为存储在接收第一数据消息之前由哈希计算器310计算的多个先前哈希值的存储器。哈希存储器304包括多个条目316、318、320,这些条目用于存储由哈希计算器310计算的先前哈希值。
存储在哈希存储器304中的每个先前哈希值对应于一个数据消息,该数据消息先于由数据缓冲器308接收到第一数据消息被监控装置214从互连102中读取。对于为第一数据消息计算的每个哈希值,哈希存储器存储先前哈希值,该先前哈希值对于与已经用于计算数据消息的一个或多个哈希值的数据值的子集相同的数据值的子集已经计算过了(但是是对于先前时钟周期计算的)。例如,由传感器202在第一时钟周期T内记录的第一数据消息可以由标记Y1,T表示。由哈希计算器310从该第一数据消息计算的第一哈希值可以由标记H1,T表示。因此,条目316、318、320可以存储与先于第一数据消息Y1,T记录的数据消息Y1,T-1、Y1,T-2、……Y1,T-N相对应的先前哈希值。这些哈希值可以被表示为H1,T-1、H1,T-2、……H1,T-N。例如,第一先前哈希值H1,T-1可以存储在第一条目316中。哈希存储器可存储已接收数据的任何数量的先前时钟周期的哈希值。
注意,在一个替代示例中,第一哈希值H1,T可以由哈希计算器310仅针对包含在第一消息Y1,T中的数据值X1,T、X2,T、……XN,T的子集计算。
一旦哈希计算器310对第一数据消息Y1,T计算了第一哈希值H1,T,该哈希值就将被传递到当前哈希选择器312和比较器314。当前哈希选择器312被配置为接收已由哈希计算器310计算的数据哈希的哈希值,并使用该哈希值来查找存储在哈希存储器304中的相应的先前哈希值。相应的先前哈希值是对于已经为用于形成第一数据消息的数据子集或已经用于计算第一哈希值的第一数据消息的一部分而计算的哈希值(但是是对于不同的先前窗口计算的)。因此,对于针对第一数据消息Y1,T而计算的第一哈希值H1,T,相应的先前哈希值是H1,T-1、H1,T-2等。即,一个或多个先前哈希值H1,T-1、H1,T-2等是对应于用于生成第一哈希值H1,T的第一消息Y1,T的先前哈希值。一旦识别了哈希存储器304中相应的先前哈希值,就将这些值传递到比较器314。
比较器314与哈希存储器304和哈希计算器310都相连接。因此,比较器被配置为接收由哈希计算器310计算的第一哈希值H1,T和来自哈希存储器304的相应的先前哈希值。比较器314还被配置为将从哈希计算器310接收的第一哈希值H1,T与存储在哈希存储器304中的一个或多个相应的先前哈希值进行比较。如果第一哈希值H1,T表示第一时钟周期T中第一数据消息Y1,T的哈希值,则该哈希值将首先与先前哈希值H1,T-1进行比较。然后可以将H1,T与先前哈希值H1,T-2进行比较,一直到与先前哈希值H1,T-M进行比较,其中,M是要与第一哈希值H1,T进行比较的先前哈希值的总数。要与第一哈希值比较的先前哈希值的数量M可由集成电路芯片的操作者配置。在一个示例中,M在集成电路芯片100的实例化时间是可配置的。在一个替代示例中,M是可动态配置的。也就是说,M在集成电路芯片100的操作期间是可配置的。
比较器314被配置为将第一数据哈希H1,T的哈希值以及每个先前哈希值H1,T-2、……H1,T-M与预定阈值W1进行比较。预定阈值的值可以存储在监控装置214中。在一个示例中,预定阈值的值被存储在监控装置的附加存储器(未示出)中。替代地,该附加存储器可以被包括在哈希存储器304中,或者在比较器314的存储器中。此外,预定阈值通常可以存储在处理器302或监控装置214内的替代位置中。比较器314还被配置为确定第一哈希值H1,T与存储在哈希存储器中的先前哈希值H1,T-2、……H1,T-M中的至少一个之间的差是否低于预定阈值W1。也就是说,比较器被配置为确定是否|H1-H1,T-Z|<W1,其中,Z=1,2...M。
在一个示例中,监控装置214被配置为,如果确定第一哈希值H1,T与先前哈希值之一之间的差低于预定阈值W1,则执行校正动作。在该示例中,第一哈希值仅与紧接在该哈希值之前的哈希值进行比较。如果|H1-H1,T-1|<W1,则执行校正动作。
在一个替代示例中,监控装置214被配置为,如果确定第一哈希值H1,T与多个先前哈希值之间的差低于预定阈值W1,则执行校正动作。在该示例中,对于第一哈希值和每个先前哈希值之间的差低于预定阈值的先前哈希值的数目P由监控装置214预先定义。先前哈希值的数量P被定义为M的一部分,其中,M是将要由比较器314与第一哈希值H1,T进行比较的先前哈希值的总数。因此,1<P<M。例如,P可以等于M/2。因此,如果|H1-H1,T-Z|<W1的先前哈希值的数目大于M/2,则执行校正动作。
如果确定第一哈希值H1,T和存储在哈希存储器304中的至少一个先前哈希值之间的差,如上定义的,低于预定阈值W1,则比较器314向通信器306输出信号。通信器306被配置为与监控装置214外部的一个或多个输出模块220通信。因此,通信器306负责向输出模块传递指令。该指令表明将要由系统执行的校正动作。
由通信器306指示的校正动作可以包括以下动作中的一个或多个:
告知用户传感器数据不可靠;
停用依靠于从传感器202获得的数据的集成电路100的部件;
启用被构造为修复传感器202的机构;
向集成电路100的另一部件输出告警信号;
输出硬件事件;
输出中断信号;以及
向外部核心装置208、210、212输出消息。
当前哈希选择器312还被配置为,将第一哈希值H1,T插入哈希存储器304中。一旦被插入到哈希存储器304中,第一哈希值就变成先前哈希值。该先前哈希值然后可用于与对从互连电路206读取的输入数据消息计算的将来哈希值进行比较。在一个示例中,第一哈希值H1,T由当前哈希选择器312插入哈希存储器中,同时由比较器314将该第一哈希值与和该第一哈希值对应的先前哈希值进行比较。也就是说,第一哈希值H1,T与该第一哈希值相应的先前哈希值的比较以及该哈希值在哈希存储器304中的存储同时发生。在一个替代示例中,第一哈希值H1,T在被比较器314处理之后被存储在哈希存储器中。换句话说,第一哈希值的比较和存储可以发生在相同的时钟周期中,或者发生在连续的时钟周期中。
在图2中示出的集成电路芯片包括三个监控装置214、216、218。如上所述,芯片可替带地包括任意数量的监控装置。对于包括多个监控装置的芯片,这些装置中的每一个都可以负责对从第一数据消息Y1,T获得的数据值的不同子集进行哈希值的计算和比较。也就是说,第一监控装置可以对数据值X1、X2、……XN的子集的第一哈希值H1,T进行计算和比较。第二监控装置可以对子集X2、X3、……XN+1的第二哈希值H2,T进行计算和比较。第三监控装置可以对子集X3、X4、……XN+2的第一哈希值H1,T进行计算和比较。以这种方式,每个监控装置可以同时对其数据消息的数据值的子集执行处理。这将进一步减少与传感器数据处理相关的等待时间。
图4是用于使用集成电路芯片装置来监控数据消息的替代示例性系统的示意图。如图2所示,该系统包括通过SoC 100的方式与外部存储器404相连接的传感器402。SoC还包括系统电路102和被配置为监控系统电路102的监控电路104。系统电路102包括对应于图2中的核心装置208、210、212的核心装置406、408、410、418、420。监控电路包括对应于图2中的监控装置214、216、218的监控装置422、424、426。核心装置420是输出模块,并且在下面进一步详细描述。核心装置418是内部存储器或片上存储器。在一个示例中,除了外部存储器404之外,片上存储器418也可用于存储由传感器402记录的数据消息。在另一示例中,来自传感器402的数据消息可以仅写入到外部存储器404或片上存储器418中的一者。被写入数据消息的存储器可以根据该存储器的特性来选择。可以用来确定数据消息是否被写入至给定存储器的特性的示例包括:该存储器所包括的存储量、与将数据消息写到该存储器相关的等待时间(该等待时间是该存储器离传感器的距离的函数)以及该存储器支持多少带宽。
如图4所示,系统电路102的互连电路还包括存储器控制器412和传感器控制器416。传感器控制器416与传感器402和SoC互连器414都相连接。传感器控制器416负责向传感器402传递指令,并且控制传感器的性能。传感器控制器416还负责接收由传感器402记录的数据消息,并将这些消息经由SoC互连器414传递至系统电路102的其他部件。存储器控制器412与存储器404和SoC互连器414都相连接。存储器控制器412负责从SoC互连接收将要写入或存储在存储器中的数据消息,并负责经由SoC互连器414将存储的数据消息传递至核心装置。
SoC互连器414与核心装置406、408、410、418、420、传感器控制器416和存储器控制器412相连接。因此,SoC互连器414负责在传感器402(经由传感器控制器416)、存储器404和核心装置之间传送数据消息。SoC互连器的拓扑是依赖于SoC的,但是可以包括以下类型的网络中的任何一种或其组合,以在系统电路周围传输通信:总线网络、环形网络、树形网络或网状网络。在一个示例中,SoC互连器414是数据总线。
在图4中示出的系统电路102和监控电路104都包括一个或多个输出模块420、432、436。该输出模块被配置为响应于由核心装置406、408、410或监控装置422、424、426所接收的信号而执行校正动作。输出模块420是安全控制器。安全控制器420被配置为执行一个或多个动作以确保系统(集成电路芯片应用于该系统中)的安全。例如,如果集成电路芯片100用于移动的车辆内,则安全控制器可以被配置为将制动器应用于系统。输出模块432是分析CPU。该分析CPU被配置为对由核心装置406、408、410或监控装置422、424、426输出的数据执行进一步分析,以确定为什么发生传感器故障。
分析CPU通过消息引擎428和内部通信器430与一个或多个监控装置422、424、426相连接。消息引擎428将监控电路的所有部件连接在一起,并被配置为在这些部件之间传送消息。与SoC互连器414一样,消息引擎的拓扑是依赖于SoC的,但是可以包括以下类型的网络中的任何一种或其组合,以在系统电路周围传输通信:总线网络、环形网络、树形网络或网状网络。在一个示例中,消息引擎428是数据总线。内部通信器430被配置为在分析CPU与消息引擎428之间中继消息。
输出模块436是外部调试器。外部调试器436用于解决集成电路芯片100内的或对传感器故障负责的周围系统内的缺陷或问题。由外部调试器436使用的策略可以包括交互式调试、控制流分析、单元测试、集成测试、日志文件分析、应用程序或系统级别的监控,存储器转储和/或剖析。外部调试器436通过外部通信器434与消息引擎428相连接。外部通信器434被配置为在外部调试器436和消息引擎428之间中继消息。
图5是使用如图2或图4所示的使用集成电路芯片装置来监控来自传感器的消息的示例性方法的流程图。如上所述,数据消息包括从与集成电路芯片100相连接的传感器202、204所测量的数据。该方法开始于步骤502,其中,使用一个或多个监控装置214、216、218从集成电路的互连电路206读取第一数据消息Y1,T。由传感器202对第一时钟周期T记录第一数据消息Y1,T。第一数据消息Y1,T由位于监控装置的处理器302内的数据缓冲器308接收。在一个示例中,数据消息Y1,T仅包括数据值X1的一个子集。在一个替代示例中,数据消息包括数据值的多个子集。
在步骤504,监控装置214的处理器302的哈希计算器310对第一数据消息Y1,T计算具有哈希值H1,T的第一数据哈希。如上所总结的,第一哈希值H1,T可以表示在接收到的数据消息中的所有数据值,或者可以替代地仅表示包括在该数据消息中的数据值的子集。一旦计算了第一哈希值H1,T,就将该哈希值传递至当前哈希选择器312。当前哈希选择器312使用第一哈希值H1,T来查找存储在哈希存储器304中的相应的先前哈希值。那些相应的先前哈希值由比较器314从哈希存储器304中读取。
在步骤506,比较器314将第一哈希值H1,T与存储在哈希存储器304中的一个或多个先前哈希值H1,T-1、……H1,T-M进行比较。如上所述,存储在哈希存储器中的每个先前哈希值对应于从互连电路206中先于第一数据消息读取的数据消息。在一个示例中,将第一哈希值与仅一个先前哈希值H1,T-1进行比较。在一个替代示例中,将第一哈希值与多个连续的先前哈希值H1,T-1至H1,T-M进行比较。然后,将第一哈希值H1,T与一个或多个先前哈希值H1,T-1、……H1,T-M之间的差与存储在监控装置214内的预定阈值进行比较。
在步骤508,比较器314将第一哈希值H1,T和一个或多个先前哈希值H1,T-1、H1,T-2、……H1,T-M之间的差与预定阈值W1相比较。如果比较器314确定第一哈希值与一个或多个先前哈希值中的至少一个之间的差小于预定阈值W1,则该方法前进到步骤510,在步骤510,通信器306指示集成电路的输出模块220执行校正动作。响应于该指示,输出模块220执行校正动作。如果比较器314确定第一哈希值与一个或多个先前哈希值之一之间的差不小于预定阈值W1(即,该差大于或等于W1),则通信器306不传递指示。因此,一个或多个输出模块220不执行校正动作。该方法替代地跳过步骤510并前进到步骤512。
在步骤510,如果比较器314确定第一哈希值和至少一个先前哈希值之间的差低于预定阈值,则比较器向通信器306输出信号。在接收到该信号时,通信器306指示执行校正动作。即,通信器306将一个或多个指示传递至监控装置214外部的一个或多个模块。这些指示表示将要由系统执行的校正动作。
在步骤512,第一哈希值H1,T存储在哈希存储器304中。因此,第一哈希值成为先前哈希值,并且可以与随后的输入哈希值进行比较,以确定这些随后的哈希值是否表明传感器故障的发生。然后,该方法进行到步骤514,其中,用Y1,T+1代替Y1,T作为步骤502的输入。即,在记录Y1,T的时钟周期的后续时钟周期,由传感器记录的数据消息被数据缓冲器308接收。在步骤504,哈希计算器310使用随后的数据消息Y1,T+1来计算新的哈希值H1,T+1,并且将该新的哈希值与先前的哈希值H1,T、H1,T-1、H1,T-2、……H1,T-M等进行比较。
当由哈希计算器310计算的哈希值对于类似的数据值是类似的时,图5所示的方法是适当的。在相似数据值的哈希值是相似的情况下,可以使用阈值W1来确定哈希值在连续时钟周期上改变到什么程度。图6是示出了如图2或图4所示的使用集成电路芯片装置来监控来自传感器的消息的替代示例性方法的流程图,其中,对于类似的数据值不生成类似的哈希值。即,由哈希计算器310为相似数据值计算的哈希值可以具有显著不同的值,其中,哈希值之间的差与数据值本身之间的差无关。在该示例中,一致的阈值来表明哈希值在连续时钟周期上改变的程度是不可能的。传感器故障的识别可以改为通过观察哈希值之间的相等性来确定。也就是说,如果第一哈希值与一个或多个先前哈希值相同,则可以确定传感器故障已经发生。
图6的步骤602至步骤604对应于图5的步骤502至步骤506。即,在步骤602,使用一个或多个监控装置208、210、212从集成电路的互连电路206读取第一数据消息Y1,T。在步骤604,监控装置214的处理器302的哈希计算器310对第一数据消息Y1,T计算第一哈希值H1,T
在步骤608,比较器314比较第一哈希值H1,T和先前哈希值H1,T-Z之间的差,其中,Z=1、2、……M。如果比较器314确定H1,T等于H1,T-Z,或者换句话说|H1,T-H1,T-Z|=0,则该方法进行到步骤610,在该步骤通信器306指示集成电路的输出模块220执行校正动作。响应于该指示,输出模块220执行校正动作。如果比较器314确定H1,T不等于H1,T-Z,或者换言之|H1,T-H1,T-Z|>0,则通信器306不传递指示。因此,一个或多个输出模块220不执行校正动作。该方法替代地跳过步骤610并前进到步骤612。
图6的步骤610至步骤614对应于图5的步骤510至步骤514。即,在步骤610,通信器306指示集成电路的输出模块220执行校正动作。在步骤612,第一哈希值H1,T被存储在哈希存储器304中。在步骤614,用Y1,T+1代替Y1,T作为步骤602的输入。
如上所述,在一个示例中,比较器314确定是否已经满足第一哈希值与预定数量的先前哈希值P中的每个先前哈希值之间的差,其中,P被定义为M的一部分。M是要由比较器314与第一哈希值H1,T进行比较的先前哈希值的总数。在该示例的另一实现中,比较器314可以将先前哈希值的数量(其中,|H1-H1,T-Z|<W1)与多个预定数量的哈希值P1、P2、……PN进行比较。每个预定义的数目P1对应于表明监控装置对传感器故障已经发生的确定程度的置信值。即,比较器314可导出第一预定义数目P1,其中P1=M/2。因此,如果|H1-H1,T-Z|<W1的先前哈希值的数量大于P1,则比较器可以“非常确信”地确定发生了传感器故障。比较器314还可以导出第二预定数目P2,其中P2=M/4。因此,如果|H1-H1,T-Z|<W1的先前哈希值的数目小于P1但大于P2,则比较器314可“有些确信”地确定已发生传感器故障。比较器314可以访问任何数量的预定数字P1、P2、……PN。其中,每个预定义的数目与表明传感器故障已发生的不同可能性的置信值相关联。预定义的数目和相应的置信水平可以存储在监控装置214内的存储器中。
如上所述,在一个示例中,与集成电路芯片相连接的传感器是照相机,并且由集成电路芯片的一个或多个监控装置读取的每个数据消息都是在第一时钟周期T捕获的图像帧。在这个示例中,集成电路芯片,以及特别是一个或多个监控装置,可以被用来监控帧中停滞像素的出现。即,如果监控器214的处理器302的比较器314确定第一哈希值H1与存储在哈希存储器中的至少一个相应的先前哈希值H1,T-1、H1,T-2等之间的差低于预定阈值W1,则该确定表明已被用于计算H1的帧的一部分包括停滞像素。
在传感器是相机的示例的一个应用中,上述集成电路芯片可以被插入到例如自主车辆等车辆中。在该示例中,一个或多个输出模块220包括汽车安全控制器。可以由监控装置214的通信器306指示的一个或多个校正动作因此可以包括以下各项:
提示车辆的操作者相机视图不可靠;
停用依靠相机辅助来操作的汽车子系统;
启用相机清洗器,该相机清洗器可以从相机上清除导致故障的污物;
向车辆安全控制器告知该故障,从而安全控制器能够确定要采取的特定动作。
虽然在一个示例中传感器是图像传感器,但是能够记录连续数据的任何类型的传感器可以替代地与集成电路芯片相连接。可以监控消息的替代传感器的示例包括温度传感器、近程传感器、加速度计、压力传感器、流动传感器、湿度传感器或触摸传感器。例如,传感器可以是恒温器,并且集成电路芯片可以用于监控由恒温器记录的温度。
与依赖于软件实现的相应系统相比,在此描述的系统和方法显著减少了识别传感器故障所花费的时间量。即,监控装置对哈希值的计算和比较可以仅在几个硬件时钟周期中执行。一旦一个或多个监控装置识别出传感器故障,这些装置可以确保适当的输出模块被指示使用低等待时间机制来执行校正动作,以进一步减少时间延迟。
所描述的SoC被适当地结合在基于计算的装置中。该基于计算的装置可以是电子装置。适当地,基于计算的装置包括一个或多个处理器,该处理器用于处理计算机可执行指令以控制装置的操作,从而实现这里描述的方法。可以使用例如存储器等任何计算机可读介质来提供计算机可执行指令。这里描述的一些方法可以由有形存储介质上的机器可读形式的软件来执行。可以在基于计算的装置处提供软件以实现这里描述的一些方法。
以上描述将系统电路和监控电路描述为包括在相同的SoC上。在一个替代实现中,系统电路和监控电路包括在MCM的两个或多个集成电路芯片上。在MCM中,集成电路芯片通常堆叠或相邻地位于内插器基板上。一些系统电路可以位于一个集成电路芯片上,而其他系统电路位于MCM的不同集成电路芯片上。类似地,监控电路可以分布在MCM的多于一个的集成电路芯片上。因此,以上在SoC的上下文中所描述的方法和设备也适用于MCM的上下文中。
申请人在此孤立地公开了在此描述的每个单独的特征以及两个或更多个这样的特征的任何组合,达到的程度是,这样的特征或组合能够根据本领域技术人员的公知常识基于本说明书作为整体来实现,而不论这样的特征或特征的组合是否解决在此公开的任何问题,并且不限于权利要求的范围。申请人指出,本发明的各方面可以包括任何这样的单独特征或特征的组合。考虑到前面的描述,对于本领域技术人员来说显而易见的是,在本发明的范围内可以进行各种修改。

Claims (20)

1.一种使用集成电路监控来自传感器的消息的方法,所述消息包括由所述传感器测量的数据,所述方法包括:
从所述集成电路的互连电路读取第一消息,所述互连电路将所述传感器与被配置为处理所述消息的一个或多个核心装置相连接;
为所述第一消息计算第一哈希值;
将所述第一哈希值与存储在哈希存储器中的一个或多个先前哈希值进行比较,每个先前哈希值对应于从所述互连电路中先于所述第一消息读取的消息;以及
如果所述第一哈希值与存储在所述哈希存储器中的至少一个所述先前哈希值之间的差低于预定阈值,则执行校正动作。
2.根据权利要求1所述的方法,还包括将所述第一哈希值存储在所述哈希存储器中。
3.根据权利要求2所述的方法,其中,在将所述第一哈希值与所述先前哈希值进行比较的同时,将所述第一哈希值存储在所述哈希存储器中。
4.根据前述权利要求中任一项所述的方法,还包括在所述第一消息被所述一个或多个核心装置读取之前缓冲所述第一消息。
5.根据权利要求4所述的方法,其中,所述缓冲器的大小对应于用于计算包括所述第一哈希值的数据哈希的数据值的数目。
6.根据前述权利要求中任一项所述的方法,还包括将所述第一哈希值与M个先前哈希值进行比较,并且如果所述第一哈希值与P个先前哈希值之间的差低于所述预定阈值,则执行校正动作,其中,1<P<M。
7.根据权利要求6所述的方法,还包括导出对应于所述P个先前哈希值的置信值,其中,所述第一哈希值与所述P个先前哈希值之间的差低于所述预定阈值。
8.根据权利要求6所述的方法,其中,M是可动态配置的。
9.根据前述权利要求中任一项所述的方法,其中,如果所述第一哈希值与存储在所述哈希存储器中的至少一个所述先前哈希值相同,则执行校正动作。
10.根据前述权利要求中任一项所述的方法,还包括对所述第一消息计算多个哈希值,所述多个哈希值中的每个哈希值表示所述第一消息的一部分,并且其中,将所述第一消息的所述多个哈希值中的每个哈希值与对应于所述第一消息的该部分的一个或多个先前哈希值进行比较。
11.根据权利要求10所述的方法,其中,对于所述第一消息计算的所述多个哈希值表示所述第一消息的重叠部分。
12.根据权利要求10所述的方法,其中,对于所述第一消息计算的所述多个哈希值表示所述第一消息的非重叠部分。
13.根据前述权利要求中任一项所述的方法,其中,所述互连电路还将所述传感器与存储器相连接,并且所述存储器存储由所述传感器传递的消息。
14.根据前述权利要求中任一项所述的方法,其中所述校正动作是以下项中的一个或多个:告知用户所述传感器数据不可靠、停用所述集成电路的依靠从所述传感器获得的数据的部件、以及启用被配置为修复所述传感器的机构。
15.根据前述权利要求中任一项所述的方法,其中,所述校正动作包括向所述集成电路的另一部件输出告警信号。
16.根据前述权利要求中任一项所述的方法,其中,所述校正动作包括:输出硬件事件、输出中断信号、或向外部核心装置输出消息。
17.根据前述权利要求中任一项所述的方法,其中,所述传感器是图像传感器,并且从所述互连电路读取的每个消息是由所述图像传感器捕获的帧。
18.根据前述权利要求中任一项所述的方法,其中,所述集成电路是片上系统。
19.根据前述权利要求中任一项所述的方法,其中,所述互连电路是数据总线。
20.一种用于监测来自传感器的消息的集成电路芯片,所述消息包括由所述传感器测量的数据,所述集成电路芯片包括:
互连电路,所述互连电路将所述传感器与被配置为处理所述消息的核心装置相连接;
监测装置,所述监测装置被配置为从所述互连电路读取第一消息;
哈希存储器,所述哈希存储器用于存储多个先前哈希值,每个哈希值对应于从所述互连电路中先于所述第一消息读取的消息;以及
处理器,所述处理器被配置为:
对于所述第一消息计算第一哈希值;以及
将所述第一哈希值与存储在所述哈希存储器中的一个或多个所述先前哈希值进行比较;
其中,所述集成电路被配置为:如果所述第一哈希值与存储在所述哈希存储器中的至少一个所述先前哈希值之间的差低于预定阈值,则执行校正动作。
CN202180038732.8A 2020-05-28 2021-05-27 基于硬件的传感器分析 Pending CN115699124A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
GB2007982.8A GB2595485A (en) 2020-05-28 2020-05-28 Hardware-based sensor analysis
GB2007982.8 2020-05-28
PCT/US2021/034542 WO2021243034A1 (en) 2020-05-28 2021-05-27 Hardware-based sensor analysis

Publications (1)

Publication Number Publication Date
CN115699124A true CN115699124A (zh) 2023-02-03

Family

ID=71526243

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202180038732.8A Pending CN115699124A (zh) 2020-05-28 2021-05-27 基于硬件的传感器分析

Country Status (6)

Country Link
US (1) US20230229549A1 (zh)
EP (1) EP4158610A1 (zh)
JP (1) JP2023527367A (zh)
CN (1) CN115699124A (zh)
GB (1) GB2595485A (zh)
WO (1) WO2021243034A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023033804A1 (en) * 2021-08-31 2023-03-09 Siemens Industry Software Inc. Hardware-based sensor analysis

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5542381B2 (ja) * 2009-07-24 2014-07-09 株式会社東芝 プラント運転データ管理装置、管理方法及び管理プログラム
KR101505072B1 (ko) * 2013-08-22 2015-03-23 한전케이디엔주식회사 전력설비 진단 시스템 및 그 방법
US9525865B2 (en) * 2014-10-23 2016-12-20 Texas Instruments Incorporated Fault detection and method of detecting faults in digital imaging systems
US20160227235A1 (en) * 2015-02-02 2016-08-04 Yaniv Frishman Wireless bandwidth reduction in an encoder
US10831383B2 (en) * 2018-11-02 2020-11-10 Hamilton Sundstrand Corporation Command line voting using hashing

Also Published As

Publication number Publication date
EP4158610A1 (en) 2023-04-05
GB202007982D0 (en) 2020-07-15
GB2595485A (en) 2021-12-01
JP2023527367A (ja) 2023-06-28
WO2021243034A1 (en) 2021-12-02
US20230229549A1 (en) 2023-07-20

Similar Documents

Publication Publication Date Title
CN115699124A (zh) 基于硬件的传感器分析
JP2010218510A (ja) 状態監視システムおよび状態監視方法
JP2023503990A (ja) ロックステップで動作するプロセッサのモニタリング
US9483045B2 (en) Numerical controller
CN117859161A (zh) 基于硬件的传感器分析
JPS6242242A (ja) Cpuの異常監視装置
WO2021028963A1 (ja) 異常検出装置、制御方法、及びプログラム
JP4830796B2 (ja) ディジタル保護継電装置の自動監視方法
JPS6051136B2 (ja) デ−タ誤り検出方式
JPH0477617A (ja) センサ二重化監視システム
CN116361039A (zh) 设备状态恢复方法、装置、计算机设备、存储介质
JPH0721093A (ja) ダイレクトメモリアクセス装置の異常監視方式
JP3962956B2 (ja) 情報処理装置および情報処理方法
JPH0370418B2 (zh)
JPH0916434A (ja) Cpu暴走時の障害情報検出方法
JPH02234533A (ja) 通信端末装置
JP2005078534A (ja) 情報処理装置及びシステム障害監視方法
JPH0779489A (ja) データ伝送装置
JPS5918741B2 (ja) 自動診断方式
JPS58221533A (ja) 遠方監視制御方式
JPS5858630A (ja) 集中制御システムにおけるdma機能診断方法
JPS607297B2 (ja) プロセス入出力装置故障診断方式
JPH02214413A (ja) ディジタル形保護継電装置の監視方式
JPH11184734A (ja) Cpuの相互監視装置
JPS6161427B2 (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