CN111221675A - 用于ram错误检测逻辑的自诊断的方法和装置 - Google Patents

用于ram错误检测逻辑的自诊断的方法和装置 Download PDF

Info

Publication number
CN111221675A
CN111221675A CN201911158136.4A CN201911158136A CN111221675A CN 111221675 A CN111221675 A CN 111221675A CN 201911158136 A CN201911158136 A CN 201911158136A CN 111221675 A CN111221675 A CN 111221675A
Authority
CN
China
Prior art keywords
test
core
ram
ecc
cores
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.)
Granted
Application number
CN201911158136.4A
Other languages
English (en)
Other versions
CN111221675B (zh
Inventor
闵丙珍
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.)
Hyundai AutoEver Corp
Original Assignee
Hyundai Autron Co 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 Hyundai Autron Co Ltd filed Critical Hyundai Autron Co Ltd
Publication of CN111221675A publication Critical patent/CN111221675A/zh
Application granted granted Critical
Publication of CN111221675B publication Critical patent/CN111221675B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1008Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
    • G06F11/1048Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices using arrangements adapted for a specific error detection or correction feature
    • 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/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1008Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
    • G06F11/1044Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices with specific ECC/EDC distribution
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/2205Detection 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
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/02Detection or location of defective auxiliary circuits, e.g. defective refresh counters
    • 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]
    • G06F11/0724Error 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] in a multiprocessor or a multi-core unit
    • 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/0766Error or fault reporting or storing
    • G06F11/0772Means for error signaling, e.g. using interrupts, exception flags, dedicated error registers
    • 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/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1004Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's to protect a block of data words, e.g. CRC or checksum
    • 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/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1008Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
    • G06F11/1012Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices using codes or arrangements adapted for a specific type of error
    • G06F11/102Error in check bits
    • 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/16Error detection or correction of the data by redundancy in hardware
    • G06F11/1658Data re-synchronization of a redundant component, or initial sync of replacement, additional or spare unit
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/2205Detection 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/2215Detection 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 error correction or detection circuits
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/26Functional testing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3013Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is an embedded system, i.e. a combination of hardware and software dedicated to perform a certain function in mobile devices, printers, automotive or aircraft systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3037Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a memory, e.g. virtual memory, cache
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C29/38Response verification devices
    • G11C29/42Response verification devices using error correcting codes [ECC] or parity check

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Computer Hardware Design (AREA)
  • Mathematical Physics (AREA)
  • Computer Security & Cryptography (AREA)
  • For Increasing The Reliability Of Semiconductor Memories (AREA)
  • Tests Of Electronic Circuits (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)

Abstract

本公开涉及用于RAM错误检测逻辑的自诊断的方法和装置。用于动力总成控制器的RAM错误检测逻辑的自诊断的方法包括:对于应用了多内核型微控制器单元(MCU)的动力总成控制器的RAM错误检测逻辑的自诊断,通过多个内核的第一内核闲置第二内核的操作并且对与结合第二内核操作的RAM相对应的纠错码(ECC)模块执行测试,并且通过第二内核闲置未被执行测试的多个内核当中的一个内核的操作,并且对与结合相应的内核操作的RAM对应的ECC模块执行测试。

Description

用于RAM错误检测逻辑的自诊断的方法和装置
相关申请的交叉引用
本申请要求于2018年11月26日向韩国知识产权局提交的韩国专利申请No.10-2018-0147439的优先权,将其全部内容通过引用结合于此。
技术领域
本公开的实施方式涉及一种用于动力总成控制器的随机存取存储器(RAM)错误检测逻辑的自诊断的方法和装置,且更具体地,涉及一种动力总成控制器的RAM错误检测逻辑的自诊断的方法和装置,其可以诊断动力总成控制器(或者动力总成ECU系统)的RAM错误检测逻辑(或者纠错码(ECC)模块)中是否出现错误。
背景技术
近来,随着对车辆进行电子控制,车辆的功能安全性变得重要。
具体地,其中执行输入、计算与输出的微控制器单元(MCU)的存储器错误检测(或者感测)功能相当于防止控制故障的非常重要的功能。
因此,在常规技术中,为了检测存储器(即,RAM)中的错误,当MCU启用纠错码(ECC)模块时,ECC模块以检测存储器(即,RAM)中的错误的方式运行。
换言之,在常规技术中,ECC模块(或者RAM错误检测逻辑)的自诊断是不可能的,并且存储器(即,RAM)测试中出现的错误类型也无法被区分。即,仅基于ECC模块(或者RAM错误检测逻辑)的信息能够获知存储器是否出现错误。
因此,当ECC模块(或者RAM错误检测逻辑)正常运行时没有问题,但有一个问题是,不能检测ECC模块本身是否执行误操作。因此,需要一种能够验证ECC模块中是否出现错误的方法。
本公开的背景技术在题为“STORAGE DEVICE AND DATA ENCODING AND DECODINGMETHODS THEREOF”的韩国专利申请公开No.10-2015-0073717(2015年7月1号)中公开。
发明内容
各种实施方式涉及提供一种动力总成控制器的RAM错误检测逻辑的自诊断的方法和装置,其可以诊断动力总成控制器(或者动力总成ECU系统)的RAM错误检测逻辑(或ECC模块)中是否出现错误。
在实施方式中,一种用于动力总成控制器的RAM错误检测逻辑的自诊断的方法包括:对于应用多内核型微控制器单元(MCU)的动力总成控制器的RAM错误检测逻辑的自诊断,通过多个内核的第一内核闲置第二内核的操作并且对与结合第二内核操作的RAM对应的纠错码(ECC)模块执行测试;并且通过第二内核闲置未被执行测试的内核中的一个内核的操作,并且对与结合相应的内核操作的RAM对应的ECC模块执行测试。
在本公开中,方法还包括通过多个内核中的第N内核闲置还未被测试的多个内核中的一个内核的操作,并且当完成第N内核上的测试时,对与结合相应的内核操作的RAM对应的ECC模块执行测试。
在本公开中,测试是对用于检测指定的具体RAM的错误的ECC模块的测试。
在本公开中,方法还包括执行测试的初始化。初始化包括用于防止执行测试的测试模式中的测试操作影响MCU的动力总成控制的配置和用于闲置用于配置多内核系统中的测试环境的内核和ECC模块的配置。
在本公开中,当执行测试时,执行测试的每个内核无法对与结合每个相应的内核操作的RAM对应的ECC模块执行测试并且对与结合另一内核操作的RAM对应的ECC模块执行测试。
在本公开中,用于执行测试的每个内核首先在执行测试之前闲置结合待被每个相应的内核测试的RAM操作的相应内核的操作,并且当测试完成时再次运行相应的内核。
在本公开中,当对每个ECC模块执行测试时,通过每个内核执行的测试包括:通过用于对指定值执行OR输入使得在ECC比较器的测试位输入端口出现错误的任务1,来检查错误检测功能是否正确运行;通过用于经所述ECC比较器的输入端口实际输入的一位输入数据被翻转并且输入的可校正错误测试的任务2,检查错误检测功能是否正确运行;以及通过用于所述经ECC比较器的输入端口实际输入的两位输入数据被翻转并且输入的不可校正错误测试的任务3,检查错误检测功能是否正确运行。
在本公开中,方法还包括在ECC模块的测试中,当内核对ECC模块的测试完成时,设置每个预先指定的标记为1。
在本公开中,方法还包括当对结合多个内核中的内核操作的RAM对应的ECC模块的所有测试完成时输出测试结果,并且释放为该测试配置的初始化。
在本公开中,RAM错误检测逻辑是ECC模块。
在实施方式中,一种用于动力总成控制器的随机存取存储器(RAM)错误检测逻辑的自诊断的装置包括含有作为RAM错误检测逻辑的纠错码(ECC)模块的动力总成控制器,其中,多内核型微控制器单元(MCU)已应用于动力总成控制器,控制器被配置为对与结合多个内核的每一个内核操作的RAM对应的ECC模块执行测试,以及存储器被配置为存储用于RAM错误检测逻辑的自诊断的程序或算法。
在本公开中,控制器是微控制器单元(MCU)的多个内核中的任一个内核。
在本公开中,多个内核中的第一内核,作为控制器,闲置第二内核的操作并且对与结合第二内核操作的RAM对应的ECC模块执行测试。第二内核,作为控制器,闲置未被测试的多个内核当中的一个内核的操作,并且对与结合相应的内核操作的RAM对应的ECC模块执行测试。
在本公开中,当完成多个内核的第N内核上的测试时,第N内核,作为控制器,闲置未被测试的多个内核中的一个内核的操作,并且对与结合相应的内核操作的RAM对应的ECC模块执行测试。
在本公开中,测试是对用于检测多个内核的每一个内核中指定的具体的RAM的错误的ECC模块的测试。
在本公开中,用于执行测试的每个内核,作为控制器,首先在执行测试之前闲置结合待被每个相应的内核测试的RAM操作的相应内核的操作,并且当测试完成时再次运行相应的内核。
在本公开中,当对每个ECC模块执行测试时,用于执行测试的每个内核,作为控制器,通过用于对指定值执行OR输入使得在ECC比较器的测试位输入端口出现错误的任务1,来检查错误检测功能是否正确运行;通过用于经所述ECC比较器的输入端口实际输入的一位输入数据被翻转并且输入的可校正错误测试的任务2,检查错误检测功能是否正确运行;以及通过用于所述经ECC比较器的输入端口实际输入的两位输入数据被翻转并且输入的不可校正错误测试的任务3,检查错误检测功能是否正确运行。
在本公开中,当对ECC模块执行测试时,在每个内核对每个ECC模块的每个测试完成时,用于执行测试的每个内核,作为控制器,设置每个预先指定的标记为1。
在本公开中,当对结合多个内核的内核操作的RAM对应的ECC模块的所有测试完成时,用于执行测试的每个内核,作为控制器,输出测试结果,并且释放为该测试配置的初始化。
附图说明
图1是示出了根据本公开的实施方式的动力总成控制器的RAM错误检测逻辑的自诊断的装置的示意性配置的示例性图。
图2是用于描述根据本公开的实施方式的动力总成控制器的RAM错误检测逻辑的自诊断的方法的流程图。
图3是用于描述图2中的RAM测试的三种类型的测试任务的流程图。
具体实施方式
正如相应领域的传统,一些示例性实施方式可以在附图中以功能块、单元和/或模块示出。本领域技术人员将理解这些块、单元和/或模块通过诸如逻辑电路等电子(或者光学)电路、分立组件、处理器、硬连线电路、存储元件、布线连接等物理地实现。在块、单元和/或模块被处理器或者类似硬件实现时,可以使用软件(例如,代码)对其进行编程和控制以执行本文论述的各种功能。可替换地,可以通过专用硬件或作为执行一些功能的专用硬件与执行其它功能的处理器(例如,一个或多个编程的处理器和相关联的电路)的组合来实现每个块、单元和/或模块。在不偏离本发明构思的范围的情况下,一些示例性实施方式中的每个块、单元和/或模块可以物理地分离成两个或多个交互和分立的块、单元和/或模块。此外,在不偏离本发明构思的范围的情况下,一些示例性实施方式中的块、单元和/或模块可以物理地组合成更复杂的块、单元和/或模块。
在下文中,将参考附图,通过实施方式的各种实例,描述动力总成控制器的RAM错误检测逻辑的自诊断的方法和装置。
在该过程中,为了清楚描述和方便起见,附图中示出的元件的线宽或者尺寸可以放大。下文将描述的术语通过考虑它们在本公开中的功能而被定义,并且可以根据操作员的意图或者实践而不同。因此,这些术语应当基于本说明书的总体内容解释。
图1是示出了根据本公开的实施方式的用于动力总成控制器的RAM错误检测逻辑的自诊断的装置的示意性配置的示例性图。
如图1所示,在根据本实施方式的用于动力总成控制器的RAM错误检测逻辑的自诊断的装置中,用作动力总成控制器的微控制器单元(MCU)100包括:多个Core111、121及131(例如,Core0、Core 1及Core2),分别与多个Core111、121及131结合操作的存储器112、122及132(例如,RAM0、RAM1、RAM2)及纠错码(ECC)模块140。
此外,虽然附图中未示出,但根据本实施方式的用于动力总成控制器的RAM错误检测逻辑的自诊断的装置包括用于存储用于RAM错误检测逻辑的自诊断的程序(或算法)的存储器(未示出)。
此外,虽然附图中未示出,但根据本实施方式的用于动力总成控制器的RAM错误检测逻辑的自诊断的装置包括用于基于存储器(未示出)中存储的用于RAM错误检测逻辑的自诊断的程序(或算法)而统一执行RAM错误检测逻辑的自诊断的控制器(未示出)。
在该情况下,控制器(或者测试处理器)(未示出)可包括MCU 100的多个Core111、121及131(例如,Core0、Core 1及Core2)中的任一个或者另一内核(未示出)。
ECC模块140其中包括至少一个ECC比较器。在本实施方式中,控制器(未示出)基于存储器(未示出)中存储的用于RAM错误检测逻辑(即,ECC模块)的自诊断的程序(或算法)选择测试模式或者动力总成控制模式。因此,测试模式中的测试操作不影响动力总成控制。
仅供参考,在多内核系统中,需要在结合相应的RAM来操作的内核已停止(或者空闲)的状态下进行存储器(或者RAM)测试(即,对用于检测具体RAM的错误的ECC模块的测试)。
因此,对于RAM测试(即,对检测具体RAM的错误的ECC模块的测试),当测试在控制器停止(或者闲置)与相应的RAM结合而操作的相应的内核(例如,Core0至Core2中的一个)之后完成时,控制器(或者测试处理器)(未示出)再次运行停止的(或者空闲的)内核(例如,Core0至Core2中的一个)。
在该情况下,在本实施方式中,RAM测试(即,对检测具体RAM的错误的ECC模块的测试)包括主要执行三种类型的测试任务(参考图3)。即,主要对用于检测与MCU中包括的多个存储器(例如,RAM0至RAM2)中的任一个对应的错误的RAM错误检测逻辑(即,ECC模块)执行三种类型的测试任务(参考图3)。
将参考图3更具体地描述用于RAM测试的三种类型的测试任务(即,对用于检测具体RAM的错误的ECC模块的测试)。
在本实施方式中,已图示用于具有三个内核的多内核系统中的RAM错误检测逻辑的自诊断的方法,但是该方法还可以应用于具有四个或更多内核的多内核系统。
图2是根据本公开的实施方式的用于描述动力总成控制器的RAM错误检测逻辑的自诊断的方法的流程图。图3是用于描述图2中的RAM测试的三种类型的测试任务的流程图。
下文参考图2和图3描述根据本实施方式的用于动力总成控制器的RAM错误检测逻辑的自诊断的方法。
参考图2,当开始RAM测试模式时,控制器(未示出)基于预先指定的配置执行RAM测试(即,对用于检测具体RAM的错误的ECC模块的测试)的初始化(S110)。
例如,初始化包括用于防止RAM测试模式下的测试操作影响动力总成控制的配置(例如,中断或者自陷备用(trap backup))和用于内核(例如,内核空闲)和用于配置多内核系统中的测试环境的ECC模块的配置。
当完成如上所述RAM测试(即,对用于检测具体RAM的错误的ECC模块的测试)的初始化时,通过多个内核的第一内核(Core0)111执行RAM(例如,RAM1)测试(S120)。
在该情况下,第一内核(Core0)111不能对结合第一内核111操作的RAM(即,RAM0)执行RAM测试,但是可对结合其他内核(例如,Core1或Core2)操作的RAM(例如,RAM1或者RAM2)执行RAM测试。此外,第一内核(Core0)111需要停止(或者闲置)结合将被执行RAM测试的RAM而操作的相应的内核(例如,Core1至Core2中的一个)。理由在于如果相应的内核未停止(或者空闲),结合该内核进行操作的RAM将继续操作。
通过图3中示出的三种类型的测试任务S210、S220及S230,执行通过第一内核(Core0)111执行RAM(例如,RAM1)测试的方法。
参考图3,通过用于对指定值(例如,1)执行OR输入(在该情况下,通过ECC比较器的测试位输入端口输入的所有的输入数据是标准数据)使得在测试位输入端口出现错误的任务1,第一内核(Core0)111检查错误检测功能是否正确运行(S210)。
此外,通过用于经ECC比较器的输入端口实际输入的一位输入数据被翻转并且输入的可校正错误测试的任务2,第一内核(Core0)111检查错误检测功能是否正确运行(S220)。
此外,通过用于经ECC比较器的输入端口实际输入的两位输入数据被翻转并且输入的不可校正错误测试的任务3,第一内核(Core0)111检查错误检测功能是否正确运行(S230)。
通过测试任务1、2及3确定RAM测试中出现的ECC模块的错误类型(S210至S230)。
参考回至图2,当第一内核(Core0)111的RAM(例如,RAM1)测试完成时(S130中的是(Y)),第一内核(Core0)111将标记0(flag0)设置为1(即,设置Flag_0=1)(S140)。如果标记0被设为1(即,设置Flag_0=1),这是指第一内核(Core0)111的RAM(例如,RAM1)测试已完成。
当如上所述第一内核(Core0)111的RAM(例如,RAM1)测试完成时,执行通过第二内核(Core1)121进行的RAM(例如,RAM2)测试(S150)。
在执行第二内核(Core1)121的RAM(例如,RAM2)测试时,第二内核(Core1)121停止(或者闲置)结合RAM(例如,RAM2),即,RAM测试目标而操作的第三内核(Core2)131(S151)。
此外,通过第二内核(Core1)121执行RAM(例如,RAM2)测试(S152)。通过图3中示出的三种类型的测试任务S210、S220及S230执行通过第二内核(Core1)121执行RAM(例如,RAM2)测试的方法。因为图3中示出的三种类型的测试任务S210、S220及S230与上述那些相同,在下文中省去其描述。
此外,当通过第二内核(Core1)121进行的RAM(例如,RAM2)完成时(S153中的是(Y)),第二内核(Core1)121再次运行第三内核(Core2)121并且设置标记1为1(即,设置Flag_1=1)(S155)。如果标记1被设为1(即,设置Flag_1=1),这是指通过第二内核(Core1)121进行的RAM(例如,RAM2)测试已完成。
当如上所述第二内核(Core1)121的RAM(例如,RAM2)测试完成时(S160中的是(Y)),执行通过第三内核(Core2)131进行的RAM(例如,RAM0)测试(S170)。
当执行通过第三内核(Core2)131进行的RAM(例如,RAM0)测试时,第三内核(Core2)131停止(或者闲置)结合RAM(例如,RAM0),即,RAM测试目标而操作的第一内核(Core0)111(S171)。
此外,通过第三内核(Core2)131执行RAM(例如,RAM0)测试(S172)。通过图3中示出的三种类型的测试任务S210、S220及S230执行通过第三内核(Core2)131执行RAM(例如,RAM0)测试的方法。因为图3中示出的三种类型的测试任务S210、S220、及S230与上述那些相同,在下文中省去其描述。
此外,当通过第三内核(Core2)131进行的RAM(例如,RAM0)测试完成时(S173中的是(Y)),第三内核(Core2)131再次运行第一内核(Core0)111(S174)并且设置标记2为1(即,设置Flag_2=1)(S175)。如果标记2被设为1(即,设置Flag_2=1),这是指第三内核(Core2)131的RAM(例如,RAM0)测试已完成。
当如上所述通过第三内核(Core2)131进行的RAM(例如,RAM0)测试完成时(S180中的是(Y)),即,当对与多内核系统的所有RAM对应的ECC模块的RAM测试完成时,输出RAM测试结果(S190)。释放被配置成RAM测试的初始化(S200)。
如上所述,在本实施方式中,在多内核系统中,第一内核停止(或者闲置)下一个内核(即,第二内核)的操作并且执行对与结合内核(即,第二内核)而操作的RAM相对应的ECC模块的测试。下一个内核(即,第二内核)停止(或者闲置)该下一个内核之后的内核(即,第三内核)的操作,并且对与结合该内核(即,第三内核)而操作的RAM对应的ECC模块执行测试。最后的内核(即,第N内核)停止(或者闲置)第一内核的操作,并且对与结合内核(即,第一内核)操作的RAM对应的ECC模块执行测试。
在实施方式中,将多个内核的每一个内核示出为好像其仅基于指定顺序对结合另一内核操作的RAM执行测试。然而,RAM测试不是通过向内核分配顺序执行的。应注意,属于多内核的并且已在其上完成测试的任一个内核可对与结合除了相应内核之外的所有其他(或者多个)内核进行操作的RAM相对应的ECC模块执行测试。
如上所述,在本实施方式中,可以检查动力总成控制器(或者动力总成ECU系统)的RAM错误检测逻辑(或者ECC模块)中是否出现错误。
已基于附图中示出的实施方式描述了本公开,但是实施方式仅是说明性的。本公开所属技术领域的普通技术人员将理解可根据实施方式做出各种变型及其他等效实施方式。因此,本公开的技术保护范围应当通过以下权利要求确定。此外,本说明书中描述的实现方式可以实现为例如方法或者处理、装置、软件程序、数据流或者信号。虽然仅在一种形式的实现方式的背景下对本公开进行了论述(例如,仅作为方法论述),具有所论述特性的实现方式还可以以另一形式(例如,装置或者程序)实现。该装置可以实现为适当的硬件、软件、或者固件。该方法可以在诸如通常称作处理设备(包括例如,计算机、微处理器、集成电路或者可编程逻辑设备)的处理器的装置中实现。处理器包括通信设备,诸如计算机、蜂窝电话、移动电话/个人数字助理(“PDA”)和促进终端用户之间信息通信的其他设备。
根据本公开的一方面,本公开可以诊断动力总成控制器(或者动力总成ECU系统)的RAM错误检测逻辑(或者ECC模块)中是否出现错误。
尽管已经为了说明的目的描述了本发明的优选的实施方式,但本领域技术人员将理解,在不背离在所附权利要求中所限定的本公开的范围和精神的情况下,可以进行各种修改、增加和替换。因此,本公开的真正的技术范围应由以下权利要求来限定。

Claims (19)

1.一种用于动力总成控制器的随机存取存储器RAM错误检测逻辑的自诊断的方法,所述方法包括:
对于应用了多内核型微控制器单元MCU的动力总成控制器的RAM错误检测逻辑的自诊断:
通过多个内核中的第一内核闲置第二内核的操作,并且对与结合所述第二内核进行操作的RAM相对应的纠错码ECC模块执行测试;以及
通过所述第二内核闲置未被执行测试的多个内核当中的一个内核的操作,并且对与结合相应的内核进行操作的RAM相对应的ECC模块执行测试。
2.根据权利要求1所述的方法,还包括:
当完成所述多个内核中的第N内核上的测试时,通过所述第N内核闲置未被执行测试的多个内核中的一个内核的操作,并且对与结合相应的内核进行操作的RAM相对应的ECC模块执行测试。
3.根据权利要求1所述的方法,其中,所述测试是对用于检测指定的具体RAM的错误的ECC模块的测试。
4.根据权利要求1所述的方法,还包括执行用于所述测试的初始化,
其中,所述初始化包括:用于防止在执行所述测试的测试模式中的测试操作影响所述MCU的动力总成控制的配置以及用于配置多内核系统中的测试环境的内核和ECC模块的闲置的配置。
5.根据权利要求1所述的方法,其中,当执行所述测试时,执行所述测试的每个内核不能对与结合每个相应的内核进行操作的RAM相对应的ECC模块执行测试,并且对与结合其他内核进行操作的RAM相对应的ECC模块执行测试。
6.根据权利要求5所述的方法,其中,用于执行所述测试的每个内核首先在执行所述测试之前,闲置与将被每个相应的内核执行所述测试的RAM相结合而操作的相应的内核的操作,并且当完成所述测试时再次运行所述相应的内核。
7.根据权利要求1所述的方法,其中,当对每个ECC模块执行所述测试时,每个内核执行的所述测试包括:
通过用于对指定值执行OR输入使得在ECC比较器的测试位输入端口出现错误的任务1,来检查错误检测功能是否正确运行;
通过用于经所述ECC比较器的输入端口实际输入的一位输入数据被翻转并且输入的可校正错误测试的任务2,检查错误检测功能是否正确运行;以及
通过用于经所述ECC比较器的输入端口实际输入的两位输入数据被翻转并且输入的不可校正错误测试的任务3,检查错误检测功能是否正确运行。
8.根据权利要求1所述的方法,还包括:在对所述ECC模块的测试中,当所述内核对所述ECC模块的测试完成时,将每个预先指定的标记设置为1。
9.根据权利要求1所述的方法,还包括:
当完成对与结合所述多个内核中的内核进行操作的RAM相对应的ECC模块的所有测试时,输出测试结果,以及
释放被配置用于所述测试的初始化。
10.根据权利要求1所述的方法,其中,所述RAM错误检测逻辑是ECC模块。
11.一种用于动力总成控制器的随机存取存储器RAM错误检测逻辑的自诊断的装置,所述装置包括:
动力总成控制器,包括作为RAM错误检测逻辑的纠错码ECC模块,其中,多内核型微控制器单元MCU已应用于所述动力总成控制器;
控制器,被配置为对与结合多个内核中的每一个内核进行操作的RAM相对应的ECC模块执行测试;以及
存储器,被配置为存储用于所述RAM错误检测逻辑的自诊断的程序或算法。
12.根据权利要求11所述的装置,其中,所述控制器是所述微控制器单元MCU的所述多个内核中的任一个内核。
13.根据权利要求11所述的装置,其中:
所述多个内核中的第一内核,作为所述控制器,闲置第二内核的操作并且对与结合所述第二内核进行操作的RAM相对应的ECC模块执行测试;以及
所述第二内核,作为所述控制器,闲置未被执行测试的多个内核当中的一个内核的操作,并且对与结合相应的内核进行操作的RAM相对应的ECC模块执行测试。
14.根据权利要求11所述的装置,其中,当完成所述多个内核中的第N内核上的测试时,所述第N内核,作为所述控制器,闲置未被执行测试的多个内核中的一个内核的操作,并且对与结合相应的内核进行操作的RAM相对应的ECC模块执行测试。
15.根据权利要求11所述的装置,其中,所述测试是对用于检测所述多个内核的每一个内核中指定的具体RAM的错误的ECC模块的测试。
16.根据权利要求11所述的装置,其中,用于执行所述测试的每个内核,作为所述控制器,首先在执行所述测试之前闲置与将被每个相应的内核执行测试的RAM结合而操作的相应的内核的操作,并且当完成所述测试时再次运行所述相应的内核。
17.根据权利要求11所述的装置,其中,当对每个ECC模块执行所述测试时,用于执行所述测试的每个内核,作为所述控制器:
通过用于对指定值执行OR输入使得在ECC比较器的测试位输入端口出现错误的任务1,来检查错误检测功能是否正确运行;
通过用于经所述ECC比较器的输入端口实际输入的一位输入数据被翻转并且输入的可校正错误测试的任务2,检查错误检测功能是否正确运行;以及
通过用于经所述ECC比较器的输入端口实际输入的两位输入数据被翻转并且输入的不可校正错误测试的任务3,检查错误检测功能是否正确运行。
18.根据权利要求11所述的装置,其中,当对所述ECC模块执行所述测试时,用于执行所述测试的每个内核作为所述控制器,在完成每个内核对每个ECC模块的每个测试时,将每个预先指定的标记设定为1。
19.根据权利要求11所述的装置,其中,用于执行所述测试的每个内核作为所述控制器:
当完成对与结合所述多个内核中的内核进行操作的RAM相对应的ECC模块的所有测试时,输出测试结果,以及
释放被配置用于所述测试的初始化。
CN201911158136.4A 2018-11-26 2019-11-22 用于ram错误检测逻辑的自诊断的方法和装置 Active CN111221675B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR10-2018-0147439 2018-11-26
KR1020180147439A KR102131230B1 (ko) 2018-11-26 2018-11-26 파워트레인 제어기의 램 에러 감지 로직의 자가진단 방법 및 장치

Publications (2)

Publication Number Publication Date
CN111221675A true CN111221675A (zh) 2020-06-02
CN111221675B CN111221675B (zh) 2023-12-22

Family

ID=70546056

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911158136.4A Active CN111221675B (zh) 2018-11-26 2019-11-22 用于ram错误检测逻辑的自诊断的方法和装置

Country Status (4)

Country Link
US (1) US11347582B2 (zh)
KR (1) KR102131230B1 (zh)
CN (1) CN111221675B (zh)
DE (1) DE102019131865A1 (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102418060B1 (ko) * 2020-12-14 2022-07-07 현대오토에버 주식회사 플래시 메모리 ecc 모듈의 진단 장치 및 방법
EP4222746A1 (en) 2021-09-29 2023-08-09 Dream CHIP Technologies GmbH Electronic circuit and method for self-diagnosis of a data memory
US20230290423A1 (en) * 2022-03-11 2023-09-14 Changxin Memory Technologies, Inc. Method and apparatus for testing memory chip, storage medium, and electronic device

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001075936A (ja) * 1999-09-02 2001-03-23 Toshiba Corp マルチプロセッサシステムおよびそのシステムの異常診断方法
US20070089035A1 (en) * 2005-09-30 2007-04-19 Intel Corporation Silent data corruption mitigation using error correction code with embedded signaling fault detection
CN101349905A (zh) * 2007-07-20 2009-01-21 通用汽车环球科技运作公司 引擎控制模块的双核体系结构
CN103098378A (zh) * 2010-09-15 2013-05-08 桑迪士克科技股份有限公司 分布式ecc处理的系统和方法
CN104977523A (zh) * 2014-04-11 2015-10-14 瑞萨电子株式会社 半导体器件、诊断测试和诊断测试电路
CN105824719A (zh) * 2016-03-16 2016-08-03 浙江中控技术股份有限公司 一种随机存储器的检测方法及系统
US20160284424A1 (en) * 2015-03-27 2016-09-29 Intel Corporation Dynamic application of error correction code (ecc) based on error type
JP2018076072A (ja) * 2018-02-07 2018-05-17 日本精工株式会社 電動パワーステアリング装置の制御装置
WO2018208353A1 (en) * 2017-05-12 2018-11-15 Qualcomm Incorporated Error correcting code testing

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6728916B2 (en) * 2001-05-23 2004-04-27 International Business Machines Corporation Hierarchical built-in self-test for system-on-chip design
US6988237B1 (en) * 2004-01-06 2006-01-17 Marvell Semiconductor Israel Ltd. Error-correction memory architecture for testing production errors
US7225375B2 (en) * 2004-03-31 2007-05-29 International Business Machines Corporation Method and apparatus for detecting array degradation and logic degradation
US9224503B2 (en) * 2012-11-21 2015-12-29 International Business Machines Corporation Memory test with in-line error correction code logic
KR102108386B1 (ko) 2013-12-23 2020-05-08 삼성전자주식회사 저장 장치 및 그것의 데이터 엔코딩 및 디코딩 방법들
KR20160076270A (ko) * 2014-12-22 2016-06-30 현대모비스 주식회사 차량용 멀티 코어 시스템
US9583216B2 (en) * 2015-03-13 2017-02-28 Analog Devices, Inc. MBIST device for use with ECC-protected memories
US9865362B1 (en) * 2016-02-09 2018-01-09 Cadence Design Systems, Inc. Method and apparatus for testing error correction code (ECC) logic and physical memory onboard a manufactured integrated circuit (IC)
US10706950B1 (en) * 2018-06-19 2020-07-07 Cadence Design Systems, Inc. Testing for memory error correction code logic
US10928449B2 (en) * 2019-03-30 2021-02-23 Intel Corporation Apparatus for memory built-in self-test with error detection and correction code awareness

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001075936A (ja) * 1999-09-02 2001-03-23 Toshiba Corp マルチプロセッサシステムおよびそのシステムの異常診断方法
US20070089035A1 (en) * 2005-09-30 2007-04-19 Intel Corporation Silent data corruption mitigation using error correction code with embedded signaling fault detection
CN101349905A (zh) * 2007-07-20 2009-01-21 通用汽车环球科技运作公司 引擎控制模块的双核体系结构
CN103098378A (zh) * 2010-09-15 2013-05-08 桑迪士克科技股份有限公司 分布式ecc处理的系统和方法
CN104977523A (zh) * 2014-04-11 2015-10-14 瑞萨电子株式会社 半导体器件、诊断测试和诊断测试电路
US20160284424A1 (en) * 2015-03-27 2016-09-29 Intel Corporation Dynamic application of error correction code (ecc) based on error type
CN105824719A (zh) * 2016-03-16 2016-08-03 浙江中控技术股份有限公司 一种随机存储器的检测方法及系统
WO2018208353A1 (en) * 2017-05-12 2018-11-15 Qualcomm Incorporated Error correcting code testing
JP2018076072A (ja) * 2018-02-07 2018-05-17 日本精工株式会社 電動パワーステアリング装置の制御装置

Also Published As

Publication number Publication date
DE102019131865A1 (de) 2020-05-28
CN111221675B (zh) 2023-12-22
KR102131230B1 (ko) 2020-07-08
KR20200062443A (ko) 2020-06-04
US20200167230A1 (en) 2020-05-28
US11347582B2 (en) 2022-05-31

Similar Documents

Publication Publication Date Title
CN111221675B (zh) 用于ram错误检测逻辑的自诊断的方法和装置
US9904591B2 (en) Device, system and method to restrict access to data error information
US10204698B2 (en) Method to dynamically inject errors in a repairable memory on silicon and a method to validate built-in-self-repair logic
TWI635503B (zh) 半導體記憶體裝置及操作該半導體記憶體裝置的方法
US20160246668A1 (en) System and method for recovering from a configuration error
US10891185B2 (en) Error counters on a memory device
KR101852919B1 (ko) 에러 정정 능력을 테스트하기 위한 회로 및 방법
JP2008009721A (ja) 評価システム及びその評価方法
CN111782446B (zh) Ssd正常掉电的测试方法、装置、计算机设备及存储介质
US7979760B2 (en) Test system for conducting parallel bit test
US9934117B2 (en) Apparatus and method for fault detection to ensure device independence on a bus
US10372545B2 (en) Safe reset techniques for microcontroller systems in safety related applications
US9003251B2 (en) Diagnosis flow for read-only memories
EP3525210A2 (en) Data register monitoring
WO2024082812A1 (zh) Fpga存储单元失效分析方法、装置、电子设备以及存储介质
JP2002323993A (ja) シングルチップマイクロコンピュータ並びにその試験方法及び試験プログラム
US20170262335A1 (en) Memory diagnosis circuit
TWI594126B (zh) 資料儲存裝置與資料儲存方法
US20240221854A1 (en) Testing parity and ecc logic using mbist
US11831337B2 (en) Semiconductor device and error detection methods
US11532374B2 (en) Memory testing
TWI777259B (zh) 開機方法
US20240320112A1 (en) Method and apparatus to inject errors in a memory block and validate diagnostic actions for memory built-in-self-test (mbist) failures
WO2015147829A1 (en) System and method of run-time continuous memory check for embedded systems
WO2013018202A1 (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
TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20211104

Address after: Seoul, South Kerean

Applicant after: Hyundai Aotebo Corp.

Address before: Seoul, South Kerean

Applicant before: HYUNDAI AUTRON Co.,Ltd.

GR01 Patent grant
GR01 Patent grant