CN109753391A - 处理器的一个或多个结构的功能测试的***、装置和方法 - Google Patents
处理器的一个或多个结构的功能测试的***、装置和方法 Download PDFInfo
- Publication number
- CN109753391A CN109753391A CN201811167632.1A CN201811167632A CN109753391A CN 109753391 A CN109753391 A CN 109753391A CN 201811167632 A CN201811167632 A CN 201811167632A CN 109753391 A CN109753391 A CN 109753391A
- Authority
- CN
- China
- Prior art keywords
- test
- bridge controller
- sent
- coupled
- result
- 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
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/2205—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested
- G06F11/2236—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested to test CPU or processors
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R31/00—Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
- G01R31/28—Testing of electronic circuits, e.g. by signal tracer
- G01R31/317—Testing of digital circuits
- G01R31/3177—Testing of logic operation, e.g. by logic analysers
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R31/00—Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
- G01R31/28—Testing of electronic circuits, e.g. by signal tracer
- G01R31/317—Testing of digital circuits
- G01R31/31723—Hardware for routing the test signal within the device under test to the circuits to be tested, e.g. multiplexer for multiple core testing, accessing internal nodes
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R31/00—Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
- G01R31/28—Testing of electronic circuits, e.g. by signal tracer
- G01R31/317—Testing of digital circuits
- G01R31/31724—Test controller, e.g. BIST state machine
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R31/00—Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
- G01R31/28—Testing of electronic circuits, e.g. by signal tracer
- G01R31/317—Testing of digital circuits
- G01R31/3181—Functional testing
- G01R31/3183—Generation of test inputs, e.g. test vectors, patterns or sequences
- G01R31/318342—Generation of test inputs, e.g. test vectors, patterns or sequences by preliminary fault modelling, e.g. analysis, simulation
- G01R31/31835—Analysis of test coverage or failure detectability
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R31/00—Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
- G01R31/28—Testing of electronic circuits, e.g. by signal tracer
- G01R31/317—Testing of digital circuits
- G01R31/3181—Functional testing
- G01R31/3183—Generation of test inputs, e.g. test vectors, patterns or sequences
- G01R31/318385—Random or pseudo-random test pattern
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R31/00—Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
- G01R31/28—Testing of electronic circuits, e.g. by signal tracer
- G01R31/317—Testing of digital circuits
- G01R31/3181—Functional testing
- G01R31/319—Tester hardware, i.e. output processing circuits
- G01R31/31917—Stimuli generation or application of test patterns to the device under test [DUT]
- G01R31/31919—Storing and outputting test patterns
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R31/00—Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
- G01R31/28—Testing of electronic circuits, e.g. by signal tracer
- G01R31/317—Testing of digital circuits
- G01R31/3181—Functional testing
- G01R31/319—Tester hardware, i.e. output processing circuits
- G01R31/3193—Tester hardware, i.e. output processing circuits with comparison between actual response and known fault free response
- G01R31/31935—Storing data, e.g. failure memory
-
- 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
- G06F11/27—Built-in tests
-
- 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/582—Pseudo-random number generators
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Computer Networks & Wireless Communication (AREA)
- Test And Diagnosis Of Digital Computers (AREA)
- Tests Of Electronic Circuits (AREA)
Abstract
在一个实施例中,一种装置包括至少一个结构和结构桥控制器,该至少一个结构用于与该装置的多个知识产权(IP)块相接合,至少一个结构包括至少一个状态存储装置,该结构桥控制器耦合到至少一个结构。结构桥控制器可以被配置为响应于在该装置的功能操作期间接收到的结构测试信号而启动对至少一个结构的功能安全测试,经由至少一个状态存储装置接收功能安全测试的结果,并且根据结果将测试报告发送至目的地位置。描述并要求保护其他实施例。
Description
技术领域
实施例涉及具有自测试能力的处理器。
背景技术
在集成电路(IC)中,结构和其他互连用作核心与IC的其他知识产权(IP)逻辑电路之间的***数据传输的主干。特定行业(例如,医疗和汽车行业)的功能安全要求规定硅制造商满足针对低缺陷的严格要求(例如,10-15个缺陷每百万(DPM),特别是对于集成到自主驾驶***中的组件。制造用于通用计算***(例如,个人计算机和服务器计算机)的典型IC难以在不显著增加产品成本的情况下满足这些要求。
对典型IC的高DPM有影响的因素包括组件的高工艺缺陷密度(例如,在14纳米和更小的工艺节点中)、行走死区单元(walking dead unit)和不均匀老化。术语“行走死区单元”是指通过初始产品测试和烧机但在现场使用时故障的IC。当前的产品测试方案包括由IC的制造商和/或包含IC的平台制造商在给定平台内进行的基于制造的测试。然而,一旦IC被放置到平台中并且被送到现场进行正常操作,这种测试是不充分的。
附图说明
图1是根据实施例的计算***的一部分的框图。
图2是根据本发明的实施例的结构桥控制器的框图。
图3是根据实施例的用于功能测试的方法的高级别视图。
图4A和图4B是根据本发明的另一实施例的方法的流程图。
图5是可以使用实施例的示例***的框图。
图6是根据本发明的实施例的***的框图。
图7是根据本发明的另一实施例的***的框图。
具体实施方式
在各种实施例中,可以向诸如处理器或其他片上***(SoC)之类的集成电路提供周期性触发和执行现场自测试的技术。更具体地,本文公开的技术为处理器的结构和其他互连提供动态功能安全测试能力。在实施例中,可以根据可以以不同方式获得的一个或多个测试模式来执行这种现场自测试。
在一些情况下,可以从处理器耦合到的非易失性存储器获得这些测试模式。在其他情况下,如本文描述的,处理器的内部电路自身可以生成这样的测试模式。更一般地,自测试模式在本文中称为“测试程序”,其可以包括这样的测试模式,以及附加的测试信息,例如,用于测试的操作参数、要执行测试的指示位置、报告特性等。其他可编程参数可以包括是发送报告事务(posted transaction)还是非报告事务(non-posted transaction)。对于报告事务不会从目的地接收到完成,而目的地利用完成数据对非报告事务做出响应。还可以包括要与事务一起启动的种子数据。利用这种种子,可以确定数据命令/数据生成的序列。
在其中测试程序存储在非易失性存储器中的实现方式中,为了增强安全性,诸如耦合到处理器的单独组件之类的安全电路可以获得测试程序,对其内容进行确认(validate),并且然后经由封装接口将测试程序传送至处理器的结构桥控制器。在其中内部生成测试程序的实现方式中,结构桥控制器或处理器的其他电路可以被配置为自身执行测试生成。
如本文进一步描述的,该可编程结构桥控制器可以被配置为接收测试编程,启动并控制这样的测试,分析结果,并且将与结果有关的信息发送至一个或多个目的地(例如,非易失性存储装置)以供稍后由***实体访问。更进一步地,在识别出一个或多个故障或其他错误的情况下,结构桥控制器可以被配置为将这样的错误/故障信息传送至给定目的地,例如,终端用户或其他***实体。例如,基本输入/输出***(BIOS)可以被配置为读取测试结果信息,并且在错误/故障的实例中,通知***控制器要采取的动作。尽管实施例不限于此方面,但是这样的动作的示例可以包括关闭***直到发生纠正动作。在其他情况下,特别是在没有指示故障的情况下,可以简单地将测试结果信息存储在给定位置以供稍后访问。例如,测试结果可以与安全电路相关联地存储,安全电路可以在稍后的时间将这样的测试结果信息提供给非易失性存储器,以供稍后由BIOS读取以用于***报告。
通过使用片上低成本硬件,实施例通过检测诸如自主载具***之类的给定平台中的结构缺陷和错误报告来实现满足功能安全目标的技术。更进一步地,通过周期性地触发现场测试,实现动态测试能力。使用这样的测试,可以容易地识别各种缺陷,包括行走死区单元和由于环境条件而故障的单元。因此,实施例增强半导体制造商满足低DPM关键***要求的能力,而没有显着增加成本。尽管本发明的范围不限于此方面,但是在实施例中,周期性(例如,用钥匙开启/用钥匙关闭)测试允许定期测试特定电路以潜在地识别结构特定的缺陷(例如,潜在故障)和检查器电路缺陷(例如,数据和命令奇偶校验错误)。
在不同的实现方式中,结构桥控制器具有多个可编程选项。作为第一选项,结构桥控制器可以使用从非易失性存储器获得的定制测试程序。作为第二选项,结构桥控制器可以使用内置能力来本地生成测试并在结构上启动事务。在实施例中,对要测试哪些结构以及测试的次序进行的确定可以基于关键度。
尽管实施例不限于此方面,但是测试程序可以使用不同的操作来实行各种电路。例如,测试程序可以使报告事务生成用于各种知识产权(IP)块和/或将错误注入到命令/数据块中。类似地,可以将非报告事务发送至可以做出响应的各种IP块,以使得能够在结构桥控制器中观察数据。
在实施例中,结构桥控制器可以收集测试结果并且分析和/或聚合这样的结果以生成最终状态,该最终状态可以被传送至安全电路。反过来,安全电路可以将测试结果发送至非易失性存储装置。在另一种情况下,诸如BIOS之类的固件也可以直接从安全电路读取状态。BIOS可以最终将此状态报告给***监视器以确定要采取的动作。
在一些情况下,要采取的动作取决于错误的关键度。对于可纠正错误,结构桥控制器可以启动纠错。可纠正错误的一个示例是基于纠错编码(ECC)的单个纠错。不可纠正错误可能导致警告用户(例如,驾驶员)安全驾驶载具或提示驾驶员切换到手动模式,从而关闭自主载具***直到采取纠正措施。
现在参考图1,示出了根据实施例的计算***的一部分的框图。作为示例,计算***100可以是汽车计算***、工业计算***、医疗计算***等。因此,计算***100可以被配置为具有高可用性以使得关键任务操作能够在没有错误的情况下在长时段内发生。为此,计算***100可以配置有组件,用于在***的正常操作期间执行功能安全测试,识别并潜在地纠正错误,以及向适当的目的地报告不可纠正(并且可能可纠正的)错误。
更具体地,如本文将描述的,计算***100被配置为执行对在处理器110内实现的一个或多个结构的功能安全测试。如本文描述的,处理器110可以是多核心处理器、片上***(SoC)或任何其他计算集成电路。为了实现针对关键任务应用的高可用性,处理器110被配置为执行对包括在处理器110内的一个或多个结构的功能安全测试。
计算***100还包括耦合到处理器110的附加平台组件。如所见的,***控制器中心(PCH)180可以实现为耦合到处理器110的单独集成电路。尽管示出为单独集成电路,但是在其他实施例中,PCH 180的电路中的至少一些电路可以在处理器110内实现。另外,计算***100还包括非易失性存储装置190,在实施例中,非易失性存储装置190可以实现为闪速存储器。除了存储包括***固件、***软件、数据等的各种平台信息之外,非易失性存储器190还被配置为存储如本文描述地使用的测试信息。
图1示出了处理器110的一些细节。然而,应理解,处理器110的图示处于相对高的级别;给定处理器可以包括更多或更少的组件,并且可以被不同地配置。无论如何,处理器110包括多个结构1150-1153。应理解,虽然为了便于说明而示出了四个结构,但是给定实现方式可以包括更多或更少的结构。在所示的实施例中,结构115(通常)可以实现为主要可扩展结构(PSF),诸如处理器核心、加速器、固定功能单元、安全电路、接口、交换机、路由器等之类的各种IP代理(本文中通常称为“IP逻辑”或“IP块”)可以耦合到该主要可扩展结构。注意,在实施例中,PSF可以是集成片上可扩展结构(IOSF),IOSF可以根据提供用于在芯片内附接IP块的标准化管芯上互连协议的、半导体制造商的给定规范来设计。
在大多数情况下,图1中未示出这样的IP块,以免模糊本文描述的基于结构的测试功能。然而,特定IP块示出为耦合到特定结构。具体地,结构1150可以包括多个内部端口或其他接口,以使得能够耦合到显示电路150、图像处理单元152和快速***组件互连(PCIe)电路155。进而,这些各种IP块可以耦合到在处理器110内部和外部的其他组件。应理解,核心和其他代理可以例如经由相干互连耦合到一个或多个结构115。
如本文将进一步描述的,处理器110包括结构桥控制器120。在实施例中,结构桥控制器120可以被配置为控制对处理器110内的结构的现场功能安全测试。更进一步地,结构桥控制器120被配置为与计算***100的附加电路(包括PCH 180)交互,以实现安全通信路径并且进一步访问非易失性存储器190内的测试信息。
如所示出的,结构桥控制器120包括边带路由器122,其可以实现边带信息的通信,包括如本文描述的功能测试的结果。更具体地,边带路由器122可以实现例如来自结构115的错误状态信息(如存储在给定结构的对应错误状态存储装置116中)的通信。为此,每个结构可以包括边带接口,用于耦合到边带网络的对应边带路由器(1250-1253),以实现包括错误报告信息和其他测试结果信息的各种边带信息从结构110中的每个结构110到结构桥控制器120的通信。在实施例中,事务可以根据适用于PSF的相同IOSF规范的边带协议经由该边带网络进行。结构桥控制器120可以处理这样的信息以执行错误检测、纠错、测试报告等。
仍然参考图1,显示引擎(DE)130将显示流发送至外部显示屏并且耦合在开关160(其在实施例中可以实现为ThunderboltTM开关)与输入/输出(I/O)适配器170之间。在一个实施例中,I/O适配器170可以是灵活I/O适配器(FIA)。I/O适配器170进而提供到包括PHY1650-1651的多个物理单元(PHY)的接口。如进一步所示,开关160还耦合到处理器110的附加组件。在所示实施例中,开关160耦合到主机直接存储器存取(DMA)电路132,主机DMA电路132进一步耦合到结构1153。另外,开关160可以经由一个或多个用于快速PCI的PHY接口(PIPE)接口耦合到PCI接口134,PCI接口134也耦合到结构1153。更进一步地,开关160还耦合到扩展主机控制器接口(xHCI)140,其进一步经由PIPE链路耦合到I/O适配器170并且经由xHCI链路耦合到结构1152。
如所见的,PCH 180包括安全电路182。在实施例中,安全电路182可以实现为专用安全处理器,例如,协处理器、安全引擎、融合安全引擎等。如本文将描述的,安全电路182耦合到非易失性存储装置190并且可以接收经加密和经签名的传入测试信息。安全电路182可以对这样的测试信息进行确认,并且在确认时将其解密并且经由边带路由器184将经解密的测试信息提供给结构桥控制器120。应理解,虽然在图1的实施例中以该高级别示出,但是许多变化和替代是可能的。
现在参考图2,示出了根据本发明的实施例的结构桥控制器的框图。更具体地,结构桥控制器200是对图1的结构桥控制器120的更详细描述。因此,结构桥控制器200可以与片上源和片外源两者通信。更具体地,经由边带路由器220,结构桥控制器200可以与非易失性存储器通信(例如,如由安全电路或其他PCH电路作为中介),并且类似地可以与至少一个片上边带路由器通信。另外,结构桥控制器200可以经由结构接口240与至少一个片上主要结构通信。
结构桥控制器200的可编程性可以包括若干可编程选项。作为示例,该可编程性包括是否生成用于测试电路的管芯上测试程序(例如,特定IP逻辑、结构等),以及将种子值编程为开始测试内容生成。附加可编程性可以包括要测试的目标结构段和IP逻辑、***结构测试的顺序等。
更进一步地,可编程性可以包括来自测试结果的哪些信息被认为对于最终报告是关键的和非关键的。作为示例,可以由具有已存在的冗余硬件的结构纠正的错误被认为是非关键的,而无法纠正的错误被报告为是关键的。注意,此关键度可编程性是对报告的错误的BIOS/软件解码关键度的补充。注意,结构桥控制器200可以被配置为与SoC的每个IP逻辑和结构组件进行通信。
如进一步所示,结构桥控制器200包括可编程寄存器组205。寄存器组205可以被配置为托管从外部闪速存储器到达或在内部生成的事务。寄存器组205还可以收集由结构桥控制器200从IP块接收的事务。在实施例中,可以在寄存器组205内分配单独的寄存器组,用于报告事务、非报告事务和完成事务。可编程寄存器组205可以被配置为可编程地控制以基于例如从非易失性存储器接收的测试信息来启动测试操作。可编程寄存器组205还可以接收在结构桥控制器200自身内生成的测试信息。更具体地,结构桥控制器200包括伪随机生成器230,其被配置为生成可以用于执行对一个或多个结构的功能安全测试的测试信息。
结构桥控制器200还包括测试结果分析器235,其被配置为接收结构测试的结果并确定通过/失败状态、错误信息等。安全分析器235可以聚合来自多个结构和IP块的结果,并且生成经聚合的测试报告。
安全分析器225也存在于结构桥控制器200内,并且可以用于对从芯片外接收的传入测试信息执行安全检查。在实施例中,该安全信息可以以发起者安全属性(SAI)信息的形式。注意,当以桥模式操作时,结构桥控制器200传导安全信息,例如,外部安全电路的SAI,并且不包括其自己的SAI。在其他功能安全测试模式中,结构桥控制器200可以发送其自己的SAI。利用这种桥模式,确保没有结构/端点由于未识别的SAI而丢弃由结构控制器200启动的测试分组。情况如此,因为安全电路的SAI被认为是可信的SAI,使得所有结构/端点都遵守该SAI。测试结果分析器235可以在该模式期间执行若干安全检查。对于每个传入事务,将针对一组允许的SAI来检查SAI,并且在不匹配的情况下中止操作。利用存储的密钥解密从闪速存储器传输的经加密的测试,并且针对预期值对程序的校验和进行确认以检测任何程序篡改。
为了使得结构测试能够发生,可编程寄存器组205耦合到主控制电路212,在实施例中,主控制电路212可以实现为有限状态机(FSM)。在实施例中,主控制电路212可以被配置为当从可编程寄存器组205的控制寄存器接收到注入命令时将请求推送至结构。主电路212还可以被配置用于当从结构接收到对应的授权时,引导先进先出(FIFO)卸载指针逻辑。反过来,可以经由结构接口240在目标控制电路215中接收传入测试结果信息。在实施例中,目标控制电路215可以被配置为N状态FSM,并且负责轮询来自结构的接收信号。注意,可以基于在信用初始化电路210内生成的信用信息经由结构接口240来传送如在结构桥控制器200内获得或生成的测试事务。在实施例中,信用初始化电路210可以被实现为诸如空闲状态机之类的FSM,用于控制何时在接口的主通道上允许事务。ISM还提供用于时钟门控和信用初始化的协议。
现在参考图3,示出了根据实施例的用于功能安全测试的方法的高级别视图。如图3中所示,用于执行结构功能安全测试的事务流程300可以由BIOS 305启动。当然应理解,在其他实施例中,另一***软件或固件代理可以启动该功能安全测试。更具体地,当执行功能安全测试是可行或可能的时,BIOS 305可以在正常***操作期间发出周期性中断。在自主载具***示例中,当载具空闲时,例如,在停车灯处停止等时,可以触发这种中断。在其他情况下,当载具开启或关闭时,响应于对用钥匙开启和/或用钥匙关闭条件做出响应的中断,可以启动功能安全测试。
如所示出的,经由安全电路310提供这些周期性中断,安全电路310验证从可信源(即,BIOS 305)接收的中断。如果是这种情况,则安全电路310与非易失性存储器315交互以启动对一个或多个测试程序的加载,这些测试程序可以通过边带网络320传输至结构桥控制器325。响应于接收到该测试程序信息,结构桥控制器325可以针对给定类型的功能安全测试对其自身进行编程。因此,结构桥控制器325向处理器的多个结构(这里由主要结构330n-330n+1表示)发出功能安全测试的各种事务。这些事务类型中的一些事务类型包括:配置各种IP块的配置(Cfg)事务;以(例如)IP块内的控制寄存器为目标的报告写入;以及从(例如)IP块内的寄存器读取数据的非报告读取。当然,应理解,在特定实施例中可以存在更多结构。更进一步地,虽然本文描述了用于测试主要结构的实施例,但是应理解,本发明的范围不限于此方面,并且在其他情况下,也可以使用本文描述的技术测试其他类型的结构或互连,例如,次要结构等。
如所示出的,结构330可以经由边带网络320将测试的结果传送至结构桥控制器325,其可以聚合结果并采取适当的动作。在实施例中,桥控制器325可以发送边带请求消息以获得测试结果信息。假设所有测试都通过,可以将提供这些结果的经聚合的测试报告传送至安全电路310。安全电路310进而可以将报告记录在非易失性存储器315中以供稍后由***访问。注意,如果识别出可纠正的错误,则结构桥控制器325可以启动纠正错误的机制,例如,识别存储器映射内的有错误的存储器块以禁用该存储器块。还可以执行类似的操作以识别可以被禁用并且用备用电路替换的故障电路。在不可纠正的错误或其他故障的情况下,结构桥控制器325可以生成错误报告并经由安全电路310发送错误报告,这可以引发***错误指示符,以使得***能够采取适当的措施。应理解,虽然在图3的实施例中以该高级别示出,但是许多变化和替代是可能的。
现在参考图4A和图4B,示出了根据本发明的另一实施例的方法的流程图。更具体地,从如本文描述的结构桥控制器的角度来看,方法400是功能安全测试过程的高级别视图。因此,方法400可以由硬件电路、固件、软件和/或其组合来执行。如所示出的,方法400通过在桥控制器中接收测试中断开始(框410)。在实施例中,可以从***软件接收该测试中断信号。作为示例,***软件(例如,固件)可以在其识别出可以执行功能安全测试的适当时间时发出该测试中断信号。这样的时间可以是***操作的空闲时段(例如,当载具停止时)、用钥匙开启或用钥匙关闭条件等。
在任何情况下,控制接下来传递到菱形415以确定是否要在内部生成测试内容。在实施例中,中断信号可以识别功能安全测试内容是否将在内部生成。在其他情况下,中断信号之后可以是测试内容,以指示不在内部生成测试内容。在不同情形中,内部测试生成可以针对结构的更多基本测试发生,而相反可以提供外部测试内容以测试结构的关键特征/功能。
如果确定在内部生成测试内容,则控制传递到框420。在框420处,桥控制器可以基于种子值生成测试内容。例如,种子值可以存储在桥控制器内的寄存器中。在实施例中,测试编写器可以使用边带网络对该寄存器进行编程。在测试操作期间,可以将该种子值提供给伪随机数生成器,该伪随机数生成器响应于该种子值而生成测试内容。随机内容生成可以涉及从预编程的一组错误(例如,存储器读取/写入、配置读取/写入、IO读取/写入等)和与其相关联的随机数据生成命令。命令的数量可能有限并且存储在寄存器中。可以使用线性反馈移位寄存器(LFSR)来生成与命令相关联的数据。对于操作中的每个操作,随机选择命令中的一个命令,并且与此同时可以使用LFSR在管芯上生成随机数据。因此,可以通过该伪随机数生成器生成相对确定性的测试内容(并且因此相对确定性的测试结果)。
相反,如果确定不发生内部测试生成,则控制前进到框425,在框425处可以接收来自外部存储装置(例如,***的给定非易失性存储器)的测试内容。接下来,确定该测试内容是否是经确认的(菱形430)。在一个实施例中,桥控制器可以例如使用SAI信息等来验证测试内容是真实的。在实施例中,检查内容的真实性以确保其未被篡改。将加载的测试程序的校验和与期望值进行比较,并且如果发现任何差异,则终止程序执行。此校验和计算提供独特的签名,其将一个数字足迹与另一数字足迹区分开。如果未发现真实性,则控制传递到框435,在框435处可以例如向触发自测试的固件引发错误。
假设测试内容是经确认的,控制传递到框440,在框440处测试内容被发送至一个或多个结构。例如,结构桥控制器可以向各种结构发出一个或多个事务,例如,报告事务或非报告事务。为此,桥控制器可以被配置为生成包括测试内容的这样的事务(例如,写入事务),该测试内容可以通过识别事务的目的地识别信息中的结构的方式指向特定目的地(例如,一个或多个主要可扩展结构),这使得事务能够路由到适当的目的地。
仍然参考图4A,在框445处,可以经由边带网络请求测试结果。也就是说,桥控制器可以通过经由边带网络请求测试结果来减少主要结构上的流量,该边带网络利用耦合到各种代理和结构的多个边带路由器实现。在一个实施例中,该请求可以作为非报告读取事务发出。然后在框450处,经由相同的边带网络接收测试结果。反过来,可以在桥控制器内处理这些测试结果(框455)。例如,在其中将测试内容发送至多个结构(并且从多个结构接收测试结果)的实例中,该处理可以包括将来自不同结构的测试结果聚合成经聚合的结果。
现在参考图4B,这种处理还可以包括识别是否检测到一个或多个错误。因此,控制可以前进到菱形460以确定是否检测到错误。如果检测到错误,则可以确定错误是否可纠正(菱形465)。如果没有检测到错误,则控制传递到框490,在框490处可以生成错误报告。这种错误报告可以包括关于错误的各种信息,包括错误的位置、错误的类型等。此后在框495处,可以将包括该错误报告的测试结果发送至平台组件。但是本发明的范围不限于此,在一个实施例中,平台组件可以是非易失性存储装置。然而,注意,可以向***控制器提供包括错误报告的测试结果以采取适当的动作,包括向用户引发错误、关闭***中的一些或全部等。
仍然参考图4,相反,如果确定错误是可纠正的,则控制传递到框470,在框470处可以将纠错请求发送至纠错电路。作为示例,纠正电路可以在存储器映射中阻挡已经检测到错误的存储器阵列部分,使得不再使用存储器阵列的该部分。在任何情况下,控制接下来传递到框480,在框480处可以将测试结果发送至平台组件。注意,在该实例中(由于检测到没有错误或由于检测到可纠正(和已纠正的)错误),可以将测试结果记录在例如平台非易失性存储装置中以供***软件稍后访问。应理解,虽然在图4的实施例中以该高级别示出,但是许多变化和替代是可能的。
如本文描述的功能安全测试可以在各种***类型中实现,范围从小型便携式设备到更大型更复杂的计算设备。现在参考图5,示出了可以使用实施例的示例***的框图。在图5的图示中,***500可以是移动***,例如,平板计算机、2:1平板电脑、平板手机、车载***或其他***。如所示出的,存在SoC 510,并且可以将SoC 510配置为作为设备的应用处理器操作。SoC 510可以包括可以在如本文描述的正常操作期间测试的代理和结构。
各种设备可以耦合到SoC 510。在所示的图示中,存储器子***包括耦合到SoC510的闪速存储器540和DRAM 545。另外,触摸板520耦合到SoC 510以提供显示能力和经由触摸的用户输入,包括在触摸板520的显示器上提供虚拟键盘。为了提供有线网络连接,SoC510耦合到以太网接口530。***中心525耦合到SoC 510以使得能够与各种***设备相接合,例如,可以通过各种端口或其他连接器中的任何一个耦合到***500。
除了SoC 510内的内部功率管理电路和功能之外,PMIC 580耦合到SoC 510以提供基于平台的功率管理,例如,基于***是由电池590供电还是经由AC适配器595而AC供电。除了该基于电源的功率管理之外,PMIC 580还可以基于环境条件和使用条件来执行平台功率管理活动。更进一步地,PMIC 580可以将控制和状态信息传送至SoC 510,以在SoC 510内引起各种功率管理动作。
仍然参考图5,为了提供无线能力,WLAN单元550耦合到SoC 510并且进而耦合到天线555。在各种实现方式中,WLAN单元550可以根据一个或多个无线协议提供通信。如进一步所示,多个传感器560可以耦合到SoC 510。这些传感器可以包括各种加速度计、环境和其他传感器,包括用户手势传感器。最后,音频编解码器565耦合到SoC 510以提供到音频输出设备570的接口。当然,应理解,尽管在图5中以该特定实现方式示出,但是许多变化和替代是可能的。
现在参考图6,示出了根据本发明的实施例的***的框图。如图6所示,多处理器***600是点对点互连***,并且包括经由点对点互连650耦合的第一处理器670和第二处理器680。如图6所示,处理器670和680中的每个可以是多核心处理器,包括第一处理器核心和第二处理器核心(即,处理器核心674a和674b以及处理器核心684a和684b),但是潜在地在处理器中存在更多的核心。处理器中的每个处理器可以包括结构(675,685)或其他互连电路,在其上可以如本文描述地执行功能安全测试。
仍然参考图6,第一处理器670还包括存储器控制器中心(MCH)672和点对点(P-P)接口676和678。类似地,第二处理器680包括MCH 682和P-P接口686和688。如图6所示,MCH672和682将处理器耦合到相应的存储器,即,存储器632和存储器634,其可以是本地附接到相应处理器的***存储器(例如,DRAM)的一部分。第一处理器670和第二处理器680可以分别经由P-P互连662和664耦合到芯片组690。如图6所示,芯片组690包括P-P接口694和698。
此外,芯片组690包括通过P-P互连639将芯片组690与高性能图形引擎638耦合的接口692。反过来,芯片组690可以经由接口696耦合到第一总线616。如图6所示,各种输入/输出(I/O)设备614可以耦合到第一总线616,以及将第一总线616耦合到第二总线620的总线桥618。在一个实施例中,各种设备可以耦合到第二总线620,包括例如键盘/鼠标622、通信设备626和数据存储单元628(例如,可以包括代码630的磁盘驱动器或其他大容量存储设备)。此外,音频I/O 624可以耦合到第二总线620。实施例可以并入其他类型的***中,包括诸如智能蜂窝电话、平板计算机、上网本、UltrabookTM等之类的移动设备。
现在参考图7,示出了根据本发明的另一实施例的***的框图。在图7的实施例中,***700是自主驾驶计算***。因此,***700可以在提供某种级别的自主驾驶的载具内实现。应理解,利用不同级别的自主驾驶控制,可以在***700内执行不同级别的工作负载以自主地执行一些驾驶任务或自主地执行所有驾驶任务。
在本文的实施例中,***700可以在功能操作期间动态地执行如本文描述的功能安全测试。这种测试可以以最小化对正常计算工作负载的中断同时确保高级别的功能安全的、快速且可靠的方式对***的各种组件进行。
如所示出的,***700包括处理器710,其可以是通用多核心处理器或其他SoC。在不同的实现方式中,可以实现多个这样的处理器以跨这些处理器灵活地分配自主驾驶工作负载。处理器710接收由功率管理集成电路(PMIC)740控制的功率。如进一步所示,可以在处理器710和PMIC 740两者内发生如本文描述的功能安全测试,其中在这些组件之间传送结果。
***700还可以包括特定自主驾驶工作负载可以卸载到的一个或多个现场可编程门阵列(FPGA)715或其他可编程加速器。处理器710还耦合到非易失性存储器725,在实施例中,非易失性存储器725可以实现为闪速存储器。如本文描述的,非易失性存储器725可以存储功能安全测试模式,其可以用于执行对处理器710、PMIC 740和***700内的附加组件的功能安全测试。为了提供与载具内的其他组件的通信,处理器710进一步耦合到交换机结构720,在实施例中,交换机结构720可以实现为以太网交换机结构,该以太网交换机结构进而可以耦合到载具内的其他组件,包括显示组件、载具信息娱乐***等。更进一步地,处理器710(和交换机结构720)还耦合到微控制器750,微控制器750也可以参与功能安全测试。
此外,为了使得能够与其他***(包括其他载具、道路***、空中更新源、信息娱乐内容源、传感器数据通信等)进行交互,处理器710和MCU 750可以耦合到一个或多个射频集成电路(RFIC)760。在实施例中,RFIC 760可以被配置为支持基于5G的规范,用于经由各种无线网络的、汽车和其他数据的通信。为此,RFIC 760可以耦合到载具的一个或多个天线7700-770n。
如图7中进一步所示,***700可以包括多个传感器7300-730n,其经由传感器中心735向处理器710提供传感器信息。虽然本发明的范围在实施例中不限于此方面,但是这样的传感器可以包括激光雷达、超声波、雷达和光学传感器以及其他传感器类型。当载具运行时,这种传感器可以获得大量的传感器数据。传感器中心735可以被配置为融合该数据中的至少一些以提供关于载具周围环境的信息,以供提供给处理器710。进而,处理器710和/或FPGA 715可以结合执行自主驾驶工作负载来使用该融合的传感器信息。应理解,虽然在图7的实施例中以该高级别示出,但是许多变化和替代是可能的。
以下示例涉及进一步的实施例。
在一个示例中,一种装置包括至少一个结构和耦合到该至少一个结构的结构桥控制器,该至少一个结构与该装置的多个IP块相接合,该至少一个结构包括至少一个状态存储装置。结构桥控制器可以被配置为响应于在该装置的功能操作期间接收到的结构测试信号而启动对至少一个结构的功能安全测试,经由至少一个状态存储装置接收功能安全测试的结果,并且将基于结果的测试报告发送至目的地位置。
在示例中,该装置还包括耦合到至少一个结构和结构桥控制器的第一边带路由器,其中,第一边带路由器用于接收功能安全测试的结果,并且将功能安全测试的结果发送至结构桥控制器。
在示例中,结构桥控制器包括伪随机数生成器,用于基于种子值来生成一个或多个测试模式,其中,结构桥控制器用于将一个或多个测试模式发送至至少一个结构。
在示例中,结构桥控制器用于将第一事务发送至至少一个结构,第一事务包括一个或多个测试模式。
在示例中,结构桥控制器包括第二边带路由器,用于将第二事务发送至第一边带路由器,第一边带路由器耦合到至少一个结构以接收功能安全测试的结果。
在示例中,结构桥控制器还包括测试分析器,用于接收功能安全测试的结果,并且确定是否发生错误。
在示例中,响应于可纠正的错误,结构桥控制器用于向纠错电路发出纠错请求,以使得纠错电路能够纠正可纠正的错误。
在示例中,结构桥控制器用于经由安全电路从非易失性存储装置接收测试模式,并且响应于对与测试模式相关联的安全信息的确认,将测试模式发送至至少一个结构。
在示例中,结构桥控制器用于聚合对多个结构进行的功能安全测试的结果,并且将经聚合的结果传送至耦合到该装置的安全电路,以使得安全电路能够将经聚合的结果存储在非易失性存储装置中。
在另一示例中,一种方法包括:响应于在包括SoC的***的功能操作期间在SoC的桥控制器中接收到测试信号,将测试内容发送至耦合到该桥控制器的、SoC的一个或多个结构,以使得一个或多个结构能够测试一个或多个结构的功能;经由耦合在桥控制器与一个或多个结构之间的边带网络,从一个或多个结构请求功能测试的测试结果信息;在桥控制器中处理测试结果信息;以及将经处理的测试结果信息传送至耦合到SoC的非易失性存储器,以供***存储和访问。
在示例中,该方法还包括:当包括该***的自主载具计算***处于空闲状态时,接收测试信号。
在示例中,该方法还包括:至少部分地基于种子值在桥控制器中生成测试内容。
在示例中,该方法还包括:从非易失性存储器接收测试内容,并且在将测试内容发送至一个或多个结构之前对测试内容进行确认。
在示例中,该方法还包括:响应于识别出错误,将错误消息从桥控制器发送至***控制器。
在示例中,该方法还包括:将测试内容作为报告事务发送至一个或多个结构。
在示例中,该方法还包括:经由非报告事务经由边带网络请求测试结果信息。
在示例中,该方法还包括:利用耦合到SoC的安全电路的安全标识符,将测试内容从桥控制器发送至一个或多个结构。
在另一示例中,一种包括指令的计算机可读介质用于执行以上示例中的任一个的方法。
在另一示例中,一种包括数据的计算机可读介质由至少一个机器用于制造至少一个集成电路以执行以上示例中的任一个的方法。
在另一示例中,一种装置包括用于执行以上示例中的任一个的方法的单元。
在又一示例中,一种***包括SoC,该SOC包括:至少一个核心,用于执行指令;互连,其耦合到至少一个核心;第一结构,其耦合到互连以耦合第一代理和第二代理,第一结构包括第一存储装置和边带接口,第一存储装置用于存储与对第一结构的功能测试有关的测试结果信息,边带接口用于将第一结构耦合到包括多个边带路由器的边带网络;以及结构桥控制器,其耦合到第一结构。结构桥控制器可以在该***的正常操作期间响应于测试信号而启动对第一结构的功能测试,经由边带网络接收包括测试结果信息的、对第一结构进行的功能测试的结果,并且将至少部分地基于结果的测试报告发送至安全电路。该***还包括耦合到SoC的安全电路,其中,安全电路用于将结构测试信号发送至结构桥控制器并且至少将测试报告提供给非易失性存储器。该***还包括耦合到安全电路的非易失性存储器,其中,非易失性存储器用于存储测试报告和要由安全电路提供给结构桥控制器的一个或多个测试程序。
在示例中,结构桥控制器用于在功能测试启动之后,经由边带网络发送边带请求,以从第一结构请求对第一结构进行的功能测试的结果。
在示例中,响应于结果中的错误指示,结构桥控制器用于将错误指示包括在测试报告中,并且响应于包括在测试报告中的错误指示,安全电路用于向***控制器发送消息以使***控制器对***执行动作,该***包括自主载具***。
在更进一步的示例中,一种装置包括:用于将测试内容发送至片上***的一个或多个结构单元以使得一个或多个结构单元能够测试一个或多个结构单元的功能的单元;用于从一个或多个结构单元请求功能测试的测试结果信息的边带单元;用于处理测试结果信息的单元;以及用于将经处理的测试结果信息传送至非易失性存储装置单元以供自主载具计算***存储和访问的单元。
在示例中,该装置还包括用于当自主载具计算***处于空闲状态时接收测试信号的单元,用于发送测试内容的单元用于响应于测试信号而发送测试内容。
在示例中,该装置还包括用于至少部分地基于种子值来生成测试内容的单元。
在示例中,该装置还包括用于将测试内容作为报告事务发送至一个或多个结构单元的单元。
在示例中,边带单元用于经由非报告事务来请求测试结果信息。
应理解的是,上述示例的各种组合是可能的。
注意,术语“电路”和“电路***”在本文中可互换地使用。如本文所使用的,这些术语和术语“逻辑”用于单独或以任何组合指代模拟电路、数字电路、硬连线电路、可编程电路、处理器电路、微控制器电路、硬件逻辑电路、状态机电路和/或任何其他类型的物理硬件组件。实施例可以用在许多不同类型的***中。例如,在一个实施例中,通信设备可以被布置为执行本文描述的各种方法和技术。当然,本发明的范围不限于通信设备,并且相反,其他实施例可以针对其他类型的装置,其用于处理指令,或者包括响应于在计算设备上执行而使设备执行本文描述的方法和技术中的一个或多个的指令的一种或多种机器可读介质。
实施例可以以代码实现,并且可以存储在其上存储有指令的非暂时性存储介质上,该指令可以用于对***进行编程以执行指令。实施例还可以以数据实现,并且可以存储在非暂时性存储介质上,该数据如果由至少一个机器使用,则使至少一个机器制造至少一个集成电路以执行一个或多个操作。更进一步的实施例可以以计算机可读存储介质实现,该计算机可读存储介质包括当制造成SoC或其他处理器时将SoC或其他处理器配置为执行一个或多个操作的信息。存储介质可以包括但不限于:任何类型的盘,包括软盘、光盘、固态驱动器(SSD)、压缩盘只读存储器(CD-ROM)、压缩盘可重写盘(CD-RW)和磁光盘;半导体器件,例如,只读存储器(ROM)、随机存取存储器(RAM)(例如,动态随机存取存储器(DRAM)、静态随机存取存储器(SRAM))、可擦除可编程只读存储器(EPROM)、闪速存储器、电可擦除可编程只读存储器(EEPROM);磁卡或光卡或适用于存储电子指令的任何其他类型的介质。
虽然已经关于有限数量的实施例描述了本发明,但是本领域技术人员将从中意识到许多修改和变化。所附权利要求旨在覆盖落入本发明的真实精神和范围内的所有这些修改和变化。
Claims (25)
1.一种用于执行功能安全测试的装置,包括:
至少一个结构,其与所述装置的多个知识产权(IP)块相接合,所述至少一个结构包括至少一个状态存储装置;以及
结构桥控制器,其耦合到所述至少一个结构,所述结构桥控制器用于响应于在所述装置的功能操作期间接收到的结构测试信号而启动对所述至少一个结构的功能安全测试,经由所述至少一个状态存储装置接收所述功能安全测试的结果,并且将基于所述结果的测试报告发送至目的地位置。
2.根据权利要求1所述的装置,还包括耦合到所述至少一个结构和所述结构桥控制器的第一边带路由器,其中,所述第一边带路由器用于接收所述功能安全测试的结果,并且将所述功能安全测试的结果发送至所述结构桥控制器。
3.根据权利要求1所述的装置,其中,所述结构桥控制器包括伪随机数生成器,用于基于种子值来生成一个或多个测试模式,其中,所述结构桥控制器用于将所述一个或多个测试模式发送至所述至少一个结构。
4.根据权利要求3所述的装置,其中,所述结构桥控制器用于将第一事务发送至所述至少一个结构,所述第一事务包括所述一个或多个测试模式。
5.根据权利要求4所述的装置,其中,所述结构桥控制器包括第二边带路由器,用于将第二事务发送至第一边带路由器,所述第一边带路由器耦合到所述至少一个结构以接收所述功能安全测试的结果。
6.根据权利要求1所述的装置,其中,所述结构桥控制器还包括测试分析器,用于接收所述功能安全测试的结果,并且确定是否发生错误。
7.根据权利要求6所述的装置,其中,响应于可纠正的错误,所述结构桥控制器用于向纠错电路发出纠错请求,以使得所述纠错电路能够纠正所述可纠正的错误。
8.根据权利要求1所述的装置,其中,所述结构桥控制器用于经由安全电路从非易失性存储装置接收测试模式,并且响应于对与所述测试模式相关联的安全信息的确认,将所述测试模式发送至所述至少一个结构。
9.根据权利要求1所述的装置,其中,所述结构桥控制器用于聚合对多个结构进行的所述功能安全测试的结果,并且将经聚合的结果传送至耦合到所述装置的安全电路,以使得所述安全电路能够将所述经聚合的结果存储在非易失性存储装置中。
10.一种用于测试一个或多个结构的功能的方法,包括:
响应于在包括片上***(SoC)的***的功能操作期间在所述SoC的桥控制器中接收到测试信号,将测试内容发送至耦合到所述桥控制器的、所述SoC的一个或多个结构,以使得所述一个或多个结构能够测试所述一个或多个结构的功能;
经由耦合在所述桥控制器与所述一个或多个结构之间的边带网络,从所述一个或多个结构请求功能测试的测试结果信息;
在所述桥控制器中处理所述测试结果信息;以及
将经处理的测试结果信息传送至耦合到所述SoC的非易失性存储器,以供所述***存储和访问。
11.根据权利要求10所述的方法,还包括:当包括所述***的自主载具计算***处于空闲状态时,接收所述测试信号。
12.根据权利要求10所述的方法,还包括:至少部分地基于种子值在所述桥控制器中生成所述测试内容。
13.根据权利要求10所述的方法,还包括:从所述非易失性存储器接收所述测试内容,并且在将所述测试内容发送至所述一个或多个结构之前对所述测试内容进行确认。
14.根据权利要求10所述的方法,还包括:响应于识别出错误,将错误消息从所述桥控制器发送至***控制器。
15.根据权利要求10所述的方法,还包括:将所述测试内容作为报告事务发送至所述一个或多个结构。
16.根据权利要求15所述的方法,还包括:经由非报告事务,经由所述边带网络请求所述测试结果信息。
17.根据权利要求10所述的方法,还包括:利用耦合到所述SoC的安全电路的安全标识符,将所述测试内容从所述桥控制器发送至所述一个或多个结构。
18.一种计算机可读存储介质,包括计算机可读指令,所述计算机可读指令当被执行时用于实现如权利要求10至17中任一项所述的方法。
19.一种用于执行功能测试的***,包括:
片上***(SoC),其包括:
至少一个核心,用于执行指令;
互连,其耦合到所述至少一个核心;
第一结构,其耦合到所述互连以耦合第一代理和第二代理,所述第一结构包括第一存储装置和边带接口,所述第一存储装置用于存储与对所述第一结构的功能测试有关的测试结果信息,所述边带接口用于将所述第一结构耦合到包括多个边带路由器的边带网络;以及
结构桥控制器,其耦合到所述第一结构,所述结构桥控制器用于在所述***的正常操作期间响应于测试信号而启动对所述第一结构的所述功能测试,经由所述边带网络接收包括所述测试结果信息的、对所述第一结构进行的所述功能测试的结果,并且将至少部分地基于所述结果的测试报告发送至安全电路;
所述安全电路,其耦合到所述SoC,其中,所述安全电路用于将结构测试信号发送至所述结构桥控制器,并且至少将所述测试报告提供给非易失性存储器;以及
所述非易失性存储器,其耦合到所述安全电路,其中,所述非易失性存储器用于存储所述测试报告和要由所述安全电路提供给所述结构桥控制器的一个或多个测试程序。
20.根据权利要求19所述的***,其中,所述结构桥控制器用于在所述功能测试启动之后,经由所述边带网络发送边带请求,以从所述第一结构请求对所述第一结构进行的所述功能测试的结果。
21.根据权利要求19所述的***,其中,响应于所述结果中的错误指示,所述结构桥控制器用于将所述错误指示包括在所述测试报告中,并且响应于包括在所述测试报告中的所述错误指示,所述安全电路用于向***控制器发送消息,以使所述***控制器对所述***执行动作,所述***包括自主载具***。
22.一种用于测试一个或多个结构的功能的装置,包括:
用于将测试内容发送至片上***的一个或多个结构单元以使得所述一个或多个结构单元能够测试所述一个或多个结构单元的功能的单元;
用于从所述一个或多个结构单元请求功能测试的测试结果信息的边带单元;
用于处理所述测试结果信息的单元;以及
用于将经处理的测试结果信息传送至非易失性存储装置单元以供自主载具计算***存储和访问的单元。
23.根据权利要求22所述的装置,还包括用于当所述自主载具计算***处于空闲状态时接收测试信号的单元,用于发送所述测试内容的单元用于响应于所述测试信号而发送所述测试内容。
24.根据权利要求22所述的装置,还包括用于至少部分地基于种子值来生成所述测试内容的单元。
25.根据权利要求22所述的装置,还包括用于将所述测试内容作为报告事务发送至所述一个或多个结构单元的单元,并且其中,所述边带单元用于经由非报告事务来请求所述测试结果信息。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/801,443 US11686767B2 (en) | 2017-11-02 | 2017-11-02 | System, apparatus and method for functional testing of one or more fabrics of a processor |
US15/801,443 | 2017-11-02 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109753391A true CN109753391A (zh) | 2019-05-14 |
Family
ID=65138248
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811167632.1A Pending CN109753391A (zh) | 2017-11-02 | 2018-10-08 | 处理器的一个或多个结构的功能测试的***、装置和方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US11686767B2 (zh) |
CN (1) | CN109753391A (zh) |
DE (1) | DE102018124628A1 (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112559317A (zh) * | 2019-09-26 | 2021-03-26 | 通用电气公司 | 测试装置接口附件 |
WO2023185061A1 (zh) * | 2022-04-02 | 2023-10-05 | 浙江中控技术股份有限公司 | 功能安全***的检测方法、***、电子设备、存储介质 |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111767241B (zh) * | 2019-04-02 | 2022-04-29 | 富联精密电子(天津)有限公司 | 一种PCIe注错测试方法、装置以及存储介质 |
CN112486749B (zh) * | 2020-12-02 | 2023-10-13 | 成都长虹网络科技有限责任公司 | 基于5g通信终端的测试方法、装置和可读存储介质 |
US11841397B2 (en) * | 2021-06-30 | 2023-12-12 | Arm Limited | System-on-a-chip testing for energy harvesting devices |
US11748221B2 (en) | 2021-08-31 | 2023-09-05 | International Business Machines Corporation | Test error scenario generation for computer processing system components |
US11495313B1 (en) * | 2021-09-01 | 2022-11-08 | Nuvoton Technology Corporation | Fail-safe IC production testing |
Family Cites Families (29)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE10318111A1 (de) * | 2003-04-22 | 2004-11-11 | Continental Aktiengesellschaft | Verfahren und Vorrichtung zur Erkennung eines Fahrzustands |
DE10361465A1 (de) * | 2003-12-23 | 2005-08-11 | Endress + Hauser Gmbh + Co. Kg | Prozessmessgerät mit erweiterter Hardwarefehlererkennung |
WO2006061033A1 (de) * | 2004-12-07 | 2006-06-15 | Bayerische Motoren Werke Aktiengesellschaft | Verfahren zur strukturierten speicherung von fehlereinträgen |
JP3918950B2 (ja) * | 2005-04-19 | 2007-05-23 | オムロン株式会社 | セーフティデバイス |
FR2897439A1 (fr) * | 2006-02-15 | 2007-08-17 | St Microelectronics Sa | Circuit elelctronique comprenant un mode de test securise par l'utilisation d'un identifiant, et procede associe |
US8099629B2 (en) * | 2006-07-14 | 2012-01-17 | Marvell World Trade Ltd. | System-on-a-chip (SoC) test interface security |
DE602007010039D1 (de) * | 2007-02-16 | 2010-12-02 | Freescale Semiconductor Inc | System und rechnerprogrammprodukt zum testen einer logischen schaltung |
US8666642B2 (en) * | 2010-02-10 | 2014-03-04 | GM Global Technology Operations LLC | Memory corruption detection in engine control systems |
US20120109447A1 (en) * | 2010-11-03 | 2012-05-03 | Broadcom Corporation | Vehicle black box |
US8522189B2 (en) * | 2011-03-09 | 2013-08-27 | Intel Corporation | Functional fabric based test access mechanism for SoCs |
US8929373B2 (en) | 2011-09-29 | 2015-01-06 | Intel Corporation | Sending packets with expanded headers |
JP2013250690A (ja) * | 2012-05-31 | 2013-12-12 | Renesas Electronics Corp | データ処理装置、マイクロコントローラ、およびデータ処理装置の自己診断方法 |
US9436623B2 (en) | 2012-09-20 | 2016-09-06 | Intel Corporation | Run-time fabric reconfiguration |
US8677306B1 (en) * | 2012-10-11 | 2014-03-18 | Easic Corporation | Microcontroller controlled or direct mode controlled network-fabric on a structured ASIC |
JP6496562B2 (ja) * | 2014-04-11 | 2019-04-03 | ルネサスエレクトロニクス株式会社 | 半導体装置、診断テスト方法及び診断テスト回路 |
US10354265B2 (en) * | 2014-04-14 | 2019-07-16 | Sirius Xm Radio Inc. | Systems, methods and applications for using and enhancing vehicle to vehicle communications, including synergies and interoperation with satellite radio |
US9360523B2 (en) * | 2014-04-18 | 2016-06-07 | Breker Verification Systems | Display in a graphical format of test results generated using scenario models |
US10060966B2 (en) | 2015-03-24 | 2018-08-28 | Intel Corporation | Method and apparatus for enhancing guardbands using “in-situ” silicon measurements |
US9898932B2 (en) * | 2015-05-04 | 2018-02-20 | International Business Machines Corporation | Unmanned vehicle movement path assignment and management |
US10397019B2 (en) * | 2015-11-16 | 2019-08-27 | Polysync Technologies, Inc. | Autonomous vehicle platform and safety architecture |
US9891282B2 (en) | 2015-12-24 | 2018-02-13 | Intel Corporation | Chip fabric interconnect quality on silicon |
US11488008B2 (en) * | 2017-05-05 | 2022-11-01 | Intel Corporation | Hardware implemented point to point communication primitives for machine learning |
WO2019005108A1 (en) * | 2017-06-30 | 2019-01-03 | Intel Corporation | DATA MANAGEMENT TECHNOLOGIES IN VEHICLE BASED COMPUTING PLATFORMS |
US11707955B2 (en) * | 2018-02-21 | 2023-07-25 | Outrider Technologies, Inc. | Systems and methods for automated operation and handling of autonomous trucks and trailers hauled thereby |
US10845407B2 (en) * | 2018-06-25 | 2020-11-24 | Intel Corporation | Scalable infield scan coverage for multi-chip module for functional safety mission application |
US11645178B2 (en) * | 2018-07-27 | 2023-05-09 | MIPS Tech, LLC | Fail-safe semi-autonomous or autonomous vehicle processor array redundancy which permits an agent to perform a function based on comparing valid output from sets of redundant processors |
US11157374B2 (en) * | 2018-12-28 | 2021-10-26 | Intel Corporation | Technologies for efficient reliable compute operations for mission critical applications |
US10691570B1 (en) * | 2019-02-19 | 2020-06-23 | Cisco Technology, Inc. | Software assistant for power-on-self-test (POST) and built-in self-test (BIST) in in-vehicle network (IVN) of connected vehicles |
US11755501B2 (en) * | 2020-03-27 | 2023-09-12 | Intel Corporation | Efficient data sharing for graphics data processing operations |
-
2017
- 2017-11-02 US US15/801,443 patent/US11686767B2/en active Active
-
2018
- 2018-10-05 DE DE102018124628.5A patent/DE102018124628A1/de active Pending
- 2018-10-08 CN CN201811167632.1A patent/CN109753391A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112559317A (zh) * | 2019-09-26 | 2021-03-26 | 通用电气公司 | 测试装置接口附件 |
WO2023185061A1 (zh) * | 2022-04-02 | 2023-10-05 | 浙江中控技术股份有限公司 | 功能安全***的检测方法、***、电子设备、存储介质 |
Also Published As
Publication number | Publication date |
---|---|
DE102018124628A1 (de) | 2019-05-02 |
US20190033367A1 (en) | 2019-01-31 |
US11686767B2 (en) | 2023-06-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109753391A (zh) | 处理器的一个或多个结构的功能测试的***、装置和方法 | |
CN108073519B (zh) | 测试用例生成方法和装置 | |
US9823983B2 (en) | Electronic fault detection unit | |
CN106484590B (zh) | 数据校验方法和装置 | |
US9995789B2 (en) | Secure remote debugging of SoCs | |
US20190121719A1 (en) | Human-readable, language-independent stack trace summary generation | |
CN104598341B (zh) | 用于确定在互连/控制器之间的故障的位置的方法和*** | |
CN112015663B (zh) | 测试数据录制方法、装置、设备及介质 | |
CN111211929A (zh) | 故障定位方法、故障定位装置、控制设备及智能设备 | |
US11113385B2 (en) | Communicating trace information between security zones | |
TW201423385A (zh) | 電腦測試系統及方法 | |
CN108108262B (zh) | 具有检查所选择的存储器访问的硬件检查单元的集成电路 | |
CN107273249B (zh) | 主板测试方法、处理器和主板测试*** | |
US10042692B1 (en) | Circuit arrangement with transaction timeout detection | |
US11105854B2 (en) | System, apparatus and method for inter-die functional testing of an integrated circuit | |
JP2023503990A (ja) | ロックステップで動作するプロセッサのモニタリング | |
JP2018014102A (ja) | コンピュータ化されたシステムおよび冗長システム | |
JP2020126592A (ja) | 認証可能なソフトウェアと適格性評価可能なソフトウェアとの組み合わせを通じたコンピュータシステムの信頼性 | |
CN107038095A (zh) | 用于冗余地处理数据的方法 | |
KR101925237B1 (ko) | 디지털 집적회로에 적용되는 esd 검출 장치, 방법 및 집적회로 | |
CN110399258B (zh) | 一种服务器***的稳定性测试方法、***及装置 | |
US11726853B2 (en) | Electronic control device | |
US9323702B2 (en) | Increasing coverage of delays through arbitration logic | |
CN111475400A (zh) | 一种业务平台的验证方法及相关设备 | |
JP2009529722A (ja) | 追跡データを生成するための機器、方法、およびコンピュータ・プログラム製品 |
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 |