KR20120080019A - System and the method for measuring dependability of embedded systems using hybrid fault injection - Google Patents

System and the method for measuring dependability of embedded systems using hybrid fault injection Download PDF

Info

Publication number
KR20120080019A
KR20120080019A KR1020110001435A KR20110001435A KR20120080019A KR 20120080019 A KR20120080019 A KR 20120080019A KR 1020110001435 A KR1020110001435 A KR 1020110001435A KR 20110001435 A KR20110001435 A KR 20110001435A KR 20120080019 A KR20120080019 A KR 20120080019A
Authority
KR
South Korea
Prior art keywords
error injection
error
unit
reliability
test
Prior art date
Application number
KR1020110001435A
Other languages
Korean (ko)
Other versions
KR101255744B1 (en
Inventor
나종화
Original Assignee
나종화
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 나종화 filed Critical 나종화
Priority to KR1020110001435A priority Critical patent/KR101255744B1/en
Publication of KR20120080019A publication Critical patent/KR20120080019A/en
Application granted granted Critical
Publication of KR101255744B1 publication Critical patent/KR101255744B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/008Reliability or availability analysis
    • 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/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • 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/24Marginal checking or other specified testing methods not covered by G06F11/26, e.g. race tests
    • 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/302Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a software system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3688Test management for test execution, e.g. scheduling of test suites
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44521Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)

Abstract

PURPOSE: A system for measuring the reliability of an embedded system using hybrid fault injection and a method for the same are provided to verify the influence of errors to the system by separating the system into parts and injecting the errors into a desired part. CONSTITUTION: A target system(100) includes the following: a simulation model part(110) is designed based on the hardware description language of an electronic system level or a register transfer level; a hardware part(130) includes at least one of a processor, a memory, a communication module, a network module, an input/output module, and a controller; a software part(150) drives the hardware part by being loaded on the memory; and a communication interface part synchronizes time or data with the simulation model part, the hardware part, and the software part.

Description

통합 오류주입을 이용한 임베디드 시스템의 신뢰도를 측정하는 시스템 및 그 방법{System and the method for measuring dependability of embedded systems using hybrid fault injection}System and method for measuring dependability of embedded systems using hybrid fault injection

본 발명은 통합 오류주입을 이용한 임베디드 시스템의 신뢰도를 측정하는 시스템 및 그 방법에 관한 것으로, 보다 상세하게는 하드웨어, 소프트웨어, 물리적인 부품 및 하드웨어 시뮬레이션 모델들을 포함하는 통합 임베디드 시스템을 구성하고, 구성 요소들 중의 하나에 오류주입시험을 실시하고, 오류주입시험의 결과를 분석하여 통합 임베디드 시스템의 고장률을 분석하여 신뢰도를 측정하는 통합 오류주입을 통해 임베디드 시스템의 신뢰도를 측정하는 시스템 및 그 방법에 관한 것이다.The present invention relates to a system and method for measuring reliability of an embedded system using integrated error injection, and more particularly, to configure an integrated embedded system including hardware, software, physical components and hardware simulation models, The present invention relates to a system and method for measuring the reliability of an embedded system by performing an error injection test, analyzing the results of the error injection test, analyzing a failure rate of an integrated embedded system, and measuring reliability. .

임베디드 시스템(Embedded System, 내장형 시스템)은 시스템을 동작시키는 소프트웨어를 하드웨어에 내장하여 특수한 기능만을 수행하는 컴퓨터 시스템으로, 개인용 컴퓨터(PC)와는 달리 특정한 요구 사항을 가지고 있으며, 미리 정의된 작업(task)만을 수행한다. Embedded system (Embedded system) is a computer system that performs only a special function by embedding the software that operates the system in hardware, and has a specific requirement, unlike a personal computer (PC), and predefined tasks Only carry.

여러 응용 분야들 중에서 자동차, 철도, 항공, 원자력, 군용, 발전, 화학 플랜트 등의 응용 분야에 사용되는 고신뢰도 임베디드 시스템들은 일반 임베디드 시스템들보다 훨씬 높은 동작 신뢰도가 요구된다. 특히 임베디드 시스템이 전력, 조선, 화공 등의 전통 산업과 융합되는 융합IT분야에 사용되는 경우에는, 고장이 발생하면 대형 인명사고가 발생하기 때문에 목표 융합IT 시스템의 신뢰도가 매우 중요하다. 고장이 발생하는 원인은 목표 임베디드 시스템의 설계 과정에서 제품 내부 및 외부의 설계 요구 사항을 100% 고려해서 설계하는 것이 불가능하기 때문인데 특히, 설계 요구사항이 제품의 개발주기의 후반기에 변경되거나 추가될 수 있기 때문에 제품의 개발 초기부터 제조하려는 제품의 요구 사항 및 설계 규격을 모두 반영하기는 어렵다. 이러한 이유 때문에 임베디드 시스템들의 신뢰도를 정량적으로 평가하는 일이 꼭 필요한 실정이다. Among other applications, high reliability embedded systems used in automotive, railroad, aviation, nuclear, military, power generation, chemical plants, etc. require much higher operational reliability than conventional embedded systems. In particular, when the embedded system is used in the converged IT field that is fused with traditional industries such as power, shipbuilding, and chemical engineering, the reliability of the target converged IT system is very important because a large-scale human accident occurs when a failure occurs. The reason for the failure is that it is impossible to design with 100% consideration of the internal and external design requirements in the design process of the target embedded system. In particular, the design requirements may be changed or added later in the product development cycle. It is difficult to reflect all the requirements and design specifications of the product to be manufactured from the initial development of the product. For this reason, it is essential to quantitatively evaluate the reliability of embedded systems.

국내외에서 임베디드 시스템의 신뢰도를 측정하는 방법에 대해서 많은 연구를 진행하고 있으나, 현재 신뢰도를 측정하는 기술은 존재하지 않으며 신뢰도를 향상시키는 기술로는 테스팅 기술이 있다. 테스팅 기술은 설계 단계에서 수행하는 단위 테스팅과 단위 모듈들을 통합한 후 최종적으로 수행하는 통합 테스팅이 일반적이다. Although many studies have been conducted on the method of measuring the reliability of an embedded system at home and abroad, there is no technology for measuring the reliability at present, and there is a testing technique to improve the reliability. Testing techniques generally include unit testing performed at the design stage and integrated testing performed after integrating the unit modules.

이러한 테스팅의 목적은 확인된 설계의 목표 규격 및 그 규격의 기능을 수행 여부를 검증하는 것으로, 설계 규격의 무결성 등은 검증할 수 있으나 신뢰도처럼 제품의 출시 이후의 수명 등은 알 수 없다는 문제가 있다. The purpose of such testing is to verify the target specification of the identified design and the function of the specification. The integrity of the design specification can be verified, but there is a problem that the lifetime after the product is released, such as reliability. .

소프트웨어 테스팅을 예로 들면, IT 제품들은 높은 품질을 유지하기 위하여 제품을 시장에 출시하기 이전에 설계 단계부터 단위 테스팅 및 통합 테스팅을 수행하는 것이 일반적이다. 그러나 이러한 테스팅의 목적은 개발된 프로그램이 설계의 목표 규격에서 지시한 기능들을 수행하는지 여부를 검증하는 것으로서, 소프트웨어 테스팅은 오류의 개수를 최소화하여 제품 수명을 향상시키는 역할은 수행할 수 있지만, 수명 자체를 예측하는 것을 불가능하다. For example, in software testing, IT products typically perform unit testing and integration testing from the design stage before bringing the product to market in order to maintain high quality. However, the purpose of this testing is to verify whether the developed program performs the functions indicated by the target specification of the design. Software testing can play a role in minimizing the number of errors and improving the life of the product. It is impossible to predict.

따라서, 고려되지 않은 설계요소는 테스팅으로 검증이 불가능하며 이는 신뢰도를 향상시키는 것은 가능하지만 최종적으로 신뢰도를 검증하는 것과는 다른 문제이다. Therefore, design elements that are not considered cannot be verified by testing, which is possible to improve reliability but is different from finally verifying reliability.

한편, 임베디드 시스템의 신뢰도를 측정하기 위한 전 단계로서 임베디드 시스템의 신뢰도를 보장하는 방법은 3가지 정도가 있다. 첫 번째는, 정형기법(formal method)을 이용하여 검증하는 방법이다. 이 방법은 시스템을 논리식으로 모델링하고 그 변환된 논리식을 증명하여 임베디드 시스템의 기능을 검증하는 방법이다. 이 방법은 개발 목표 임베디드 시스템의 논리식을 개발을 해야 하는데, 일반적인 임베디드 시스템의 요구사항 및 규격이 매우 복잡하기 때문에 변환이 용이하지 않다는 문제점이 있다. On the other hand, there are three ways to ensure the reliability of the embedded system as a previous step for measuring the reliability of the embedded system. The first is to verify by using the formal method. This method is to verify the function of the embedded system by modeling the system logically and verifying the converted logical expression. This method needs to develop the logic of the development target embedded system, which has a problem that the conversion is not easy because the requirements and specifications of the general embedded system are very complicated.

더욱이 논리식을 이해하고 사용하는 것은 일반적인 초중급 엔지니어가 수행하기에 어려움이 있으며, 일반 소프트웨어 개발자가 요구사항 및 규격을 이용하여 논리식으로 도출하는 과정이 매우 복잡하다는 문제점도 있다. Moreover, understanding and using logic expressions is difficult for general beginners and intermediate engineers to perform, and there is a problem that a general software developer draws a logic expression using requirements and specifications.

이러한 이유들로 인하여 정형기법은 제안된 지 수십 년이 지났지만, 실제 시스템 개발에 적용하는 것은 특별한 경우에만 가능했으며 특별히 위험도가 매우 높은 시스템의 개발 과정에서만 부분적으로만 시도되어 왔다.For these reasons, orthopedic techniques have been proposed for decades, but their application to actual system development is only possible in special cases, and only in part during the development of very high-risk systems.

이러한 추세는 정형기법이 계속 발전하고는 있으나 개발된 제품의 설계요구사항의 복잡도도 역시 함께 증가하기 때문에 정형기법을 이용한 검증은 앞으로도 용이하지 않을 것으로 예상되는 실정이다.In this trend, the formal technique is continuously developing, but the complexity of the design requirements of the developed product also increases, so verification using the formal technique is not expected to be easy in the future.

두 번째 방법으로는 확률론적 안전성 평가(probabilistic safety assessment) 또는 확률론적 위험도 평가(probabilistic risk assessment)와 같은 방법이다. 이 방법은 고신뢰도 임베디드 시스템의 설계, 특히 원자력 발전 분야에서 많이 사용되는 방법으로서, 고신뢰도 임베디드 시스템의 사용 조건 및 모든 세부 사건의 위험도를 분석하는 고장 수목 법(fault tree analysis) 등을 이용하여 고장률을 확률적으로 판단하는 방법이다. The second method is such as probabilistic safety assessment or probabilistic risk assessment. This method is widely used in the design of high reliability embedded systems, especially in the field of nuclear power generation. The failure rate is analyzed using fault tree analysis, which analyzes the use conditions of the high reliability embedded system and the risk of every detail event. Probability is determined.

이 방법은 모든 세부 사건의 위험도를 하나씩 다 분석하여야 하는데 고신뢰도 임베디드 시스템의 기능이 매우 복잡하고 구성요소도 매우 많으므로 처리해야 할 세부 사건의 수가 너무 많다. 그래서 모든 세부 사건의 고장 수목을 개발하는 업무의 규모가 매우 커지게 되고, 이러한 업무를 일반적인 개발 기간인 수개월 내에 완료하는 것이 매우 어려운 실정이다. In this method, the risk of every detail event must be analyzed one by one. The high-reliability embedded system is very complex and has many components. As a result, the task of developing fault trees for every detail event becomes very large, and it is very difficult to complete such tasks within months of general development.

또한, 각각의 세부 사건들의 위험도를 결정하려면, 그 세부 사건들의 구성요소인 기본 사건들의 위험도를 설정해야 하는데 그 기본 사건들의 위험도를 설정하는 업무가 객관적이라기보다는 주관적 또는 경험적이다. 따라서 위험도를 통계적으로 처리하여 도출된 결과값이 가이드라인으로는 사용될 수 있지만 신뢰도를 정량적으로 평가하는 것에는 어려움이 있다. In addition, in order to determine the risk of each detailed event, it is necessary to set the risk of the basic events that are components of the detailed events, and the task of setting the risk of the basic events is subjective or empirical rather than objective. Therefore, the result obtained by statistically treating risk can be used as a guideline, but it is difficult to quantitatively evaluate the reliability.

세 번째 방법으로는 오류주입기법(fault injection)을 이용한 신뢰도 평가방법으로, 임베디드 시스템에서 오류가 발생할 확률을 이해하기 위해서 사용되며, 오류주입 대상에 따라 물리적 오류주입 기법(physical fault injection), 하드웨어 오류주입 기법(hardware fault injection), 소프트웨어 오류주입 기법(software fault injection)으로 분류된다.The third method is reliability evaluation method using fault injection method, which is used to understand the probability of error in embedded system, and according to the object of error injection, physical fault injection method and hardware error. It is classified into hardware fault injection and software fault injection.

물리적 오류주입 기법은 실제 제품을 대상으로 오류를 주입하여 고장상태를 분석하는 방법이고, 하드웨어 오류주입 기법은 대상 임베디드 하드웨어 또는 보드에 직접 오류를 주입하고 시스템의 고장상태를 분석하는 방법이다. 이 두 가지 방법은 실제 상황과 매우 유사한 오류를 주입할 수 있으므로 그 고장분석 결과를 신뢰할 수 있다는 장점은 있지만, 오류에 의한 내부 상태 변화의 정확한 관찰이 필요한 경우에는 이미 제품화가 되어서 내부를 관찰하는 것이 불가능하거나 매우 어려워 분석이 제한적이라는 단점이 있다. Physical error injection technique is a method of analyzing a failure state by injecting an error into a real product, and hardware error injection technique is a method of injecting an error directly into a target embedded hardware or board and analyzing a failure state of a system. Although these two methods can inject errors that are very similar to the actual situation, the results of the failure analysis can be trusted. However, when accurate observation of the change in the internal state caused by errors is required, it is already commercialized to observe the inside. The disadvantage is that it is impossible or very difficult to analyze.

소프트웨어 오류주입 기법은 소프트웨어에 오류를 주입하므로 용이하게 실험할 수 있는 장점은 있으나, 물리적인 오류가 발생하면 이를 오류모델에 반영하여 실험하는 것이 어려운 단점이 있다. The software error injection technique has an advantage that it can be easily tested because it injects an error into the software, but when a physical error occurs, it is difficult to experiment by reflecting it in an error model.

시뮬레이션 오류주입 기법은 목표 시스템을 시뮬레이션 모델로 설계하고, 그 설계 모델에 오류를 주입하여 오류의 영향을 분석하는 방법이다. 이 기법은 오류를 주입하기 위한 제어가 용이하고, 오류에 의한 시스템의 내부 상태 변화 분석이 가능하다는 장점이 있으나, 시스템의 전체 구성 요소를 모두 시뮬레이션 모델로 개발할 경우 시간과 비용이 크게 증가하는 단점이 있다. Simulation error injection is a method of designing a target system as a simulation model and injecting the error into the design model to analyze the effects of the error. This technique has the advantage of easy control for injecting errors and analysis of changes in the internal state of the system due to errors.However, when all the components of the system are developed as a simulation model, the time and cost are greatly increased. have.

일반적으로 고신뢰성 임베디드 시스템의 신뢰성 평가는 0.01% 또는 0.001% 단위로 신뢰도를 평가하므로 매우 많은 시험횟수 (예를 들면, 10만 또는 100만 회)를 시행해야 하며, 각 시험은 오류모델별로 각각 시행해야 한다. 그러므로 최종적으로 한 임베디드 시스템의 신뢰도를 평가하려면 시험기간이 수년이 소요되기 때문에 시험을 못하거나 시스템의 부품 정도만 평가하게 되는 문제가 있었다. In general, the reliability evaluation of a high reliability embedded system evaluates reliability in units of 0.01% or 0.001%, so a very large number of tests (for example, 100,000 or 1 million times) must be performed, and each test is performed for each error model. Should be. Therefore, in order to evaluate the reliability of an embedded system, it takes several years to test the reliability of the embedded system.

또한, 시뮬레이션 오류주입 기법에는 모델기반 오류주입방법과 커널기반 오류주입방법이 있는데, 먼저 모델기반 오류주입방법은 사용자가 설계모델을 변경하여 오류를 주입한다. 그러나, 최근의 제품들처럼 설계모델이 매우 복잡한 경우에는 완성된 제품을 신뢰성 시험을 위하여 설계를 재변경하는 것이 매우 어렵고, 더욱이 설계모델의 소스코드가 비용이나 기업비밀 등의 이유로 제공되지 않는 경우에 소스코드 확보를 위하여 매우 높은 비용을 지불해야 하는 문제점이 있었다. In addition, the simulation error injection method includes a model-based error injection method and a kernel-based error injection method. In the model-based error injection method, a user injects an error by changing a design model. However, if the design model is very complex, such as recent products, it is very difficult to redesign the finished product for reliability testing. Moreover, if the source code of the design model is not provided due to cost or trade secret, etc. There was a problem of paying a very high cost to secure the source code.

반면에, 커널기반 오류주입기법은 시뮬레이터가 오류를 디자인 모델에 직접 주입하므로 설계모델을 변경할 필요가 없으며, 오류주입시험을 위한 별도의 코딩 작업 없이 시험하려는 오류모델만 설정하면 오류를 주입할 수 있다.On the other hand, since the kernel-based error injection technique injects the error directly into the design model, there is no need to change the design model, and it is possible to inject the error only by setting the error model to be tested without additional coding for error injection testing. .

그러나, 종래의 시뮬레이션 오류주입 기법들은 대부분이 모델기반 오류주입방법으로 커널기반 오류주입기법의 이용한 통합 오류주입 기법이 필요한 실정이다. However, most of the conventional simulation error injection techniques require an integrated error injection technique using a kernel-based error injection technique as a model-based error injection technique.

본 발명은 상술한 문제점을 해결하기 위하여 창출된 것으로, 물리적 오류주입 기법, 하드웨어 오류주입 기법, 소프트웨어 오류주입 기법 및 시뮬레이션 오류주입 기법의 방법들을 융합하여 장점을 극대화한 통합 오류주입을 이용한 임베디드 시스템의 신뢰도를 측정하는 시스템 및 그 방법을 제공하는 데 목적이 있다.The present invention was created to solve the above-mentioned problems, and is an integrated system using integrated error injection that maximizes its merits by fusing methods of physical error injection, hardware error injection, software error injection and simulation error injection. It is an object of the present invention to provide a system and method for measuring reliability.

또한, 본 발명은 상술한 문제점을 해결하기 위하여 현장의 엔지니어들이 활용할 수 있는 수준의 임베디드 시스템의 신뢰도 평가지표를 개발하여 신뢰도를 정량적으로 추정할 수 있는 통합 오류주입을 이용한 임베디드 시스템의 신뢰도를 측정하는 시스템 및 그 방법을 제공하는 데 또 다른 목적이 있다. In addition, the present invention is to measure the reliability of the embedded system using the integrated error injection to develop the reliability evaluation index of the embedded system that can be utilized by engineers in the field to solve the above problems and quantitatively estimate the reliability. Another object is to provide a system and method thereof.

상기의 목적을 달성하기 위한 본 발명에 따른 통합 오류주입을 이용한 임베디드 시스템의 신뢰도를 측정하는 시스템은, 오류주입 시험의 대상이 되는 타겟시스템과 오류주입 시나리오를 설정하여 상기 타겟시스템에 오류주입을 수행하는 오류주입시험부 및 상기 오류주입시험부의 결과를 정상시험의 결과와 비교 분석하여 상기 타겟시스템의 고장률을 추출하여 신뢰도를 측정하는 신뢰도측정부를 포함한다.The system for measuring the reliability of the embedded system using the integrated error injection according to the present invention for achieving the above object, by setting the target system and the error injection scenario to be subjected to the error injection test to perform the error injection to the target system. The error injection test unit and the result of the error injection test unit is compared with the results of the normal test to extract a failure rate of the target system includes a reliability measuring unit for measuring the reliability.

상기 타켓시스템은 전자 시스템 수준(ESL - Electronic Systems Level) 또는 레지스터 전송 수준(RTL - Register Transfer Level)의 하드웨어 기술 언어를 이용하여 설계된 시뮬레이션 모델부와 프로세서, 메모리, 통신 모듈, 네트워크 모듈, 입출력 모듈 또는 제어부 중 적어도 하나를 포함한 하드웨어부와 상기 메모리에 로드되어 상기 하드웨어부를 구동시키는 소프트웨어부 및 상기 시뮬레이션 모델부, 상기 하드웨어부 및 상기 소프트웨어부에 대해 시간 또는 데이터를 동기화하여 연동하는 통신 인터페이스부를 포함할 수 있다. The target system may include a simulation model unit and a processor, memory, communication module, network module, input / output module, or the like, which are designed using a hardware description language of an electronic system level (ESL) or a register transfer level (RTL). It may include a hardware unit including at least one of the control unit and a software unit loaded in the memory to drive the hardware unit, and a communication interface unit for synchronizing the time or data for the simulation model unit, the hardware unit and the software unit in synchronization. have.

또한, 상기 타켓시스템은 상기 시뮬레이션 모델부를 구동시킬 수 있는 시뮬레이션 구동보드를 더 포함할 수 있다. In addition, the target system may further include a simulation driving board capable of driving the simulation model unit.

또한, 상기 오류주입시험부는 상기 시뮬레이션 모델부를 통해 상기 하드웨어부의 시뮬레이션 커널에 오류주입을 수행할 수 있고, 상기 시뮬레이션 모델부에 주입한 오류에 의한 동작 특성을 상기 하드웨어부를 통해 평가할 수 있다. The error injection test unit may perform error injection into the simulation kernel of the hardware unit through the simulation model unit, and evaluate an operation characteristic due to an error injected into the simulation model unit through the hardware unit.

또한, 상기 오류주입시험부는 오류주입 시험을 위한 오류주입 시나리오를 설정하는 유저 인터페이스부를 포함할 수 있다. 이때, 상기 오류주입 시나리오는 오류 발생 시간, 오류 발생 위치, 오류 발생 유형 또는 오류 발생 빈도 중 적어도 하나의 기준에 따라 상기 타겟시스템에 주입할 오류를 결정할 수 있고, 오류 주입 횟수를 결정하는 것을 더 포함할 수 있다. In addition, the error injection test unit may include a user interface for setting an error injection scenario for the error injection test. The error injection scenario may determine an error to be injected into the target system according to at least one of an error occurrence time, an error occurrence location, an error occurrence type, or an error occurrence frequency, and further include determining an error injection number. can do.

상기 오류 주입 횟수는 선행 오류주입 시험을 기설정된 초기 시험 횟수만큼 실행하고, 그에 따른 고장률을 통계방법을 이용하여 결정할 수 있으며, 상기 오류주입시험부의 결과는 상기 오류주입시험부의 오류주입시험에 의한 로그 파일 내역, 통신 기록 내역 또는 메모리 기록 내역 중 적어도 하나를 포함할 수 있다. The number of error injections may be performed by performing a predetermined error test prior to a predetermined initial test number, and determining a failure rate according to the statistical method, and the result of the error injection test part is a log of the error injection test part of the error injection test part. It may include at least one of file history, communication history history or memory history history.

또한, 상기 신뢰도측정부는 상기 오류주입시험부의 결과를 이용하여 고장률을 계산하여 고장률 분포 함수 유형을 비교하거나, 몬테카를로 기법 또는 최대우도기법을 이용하여 고장률 함수 λ(t)를 추정하여, 상기 고장률 함수 λ(t)를 신뢰도 미분 방정식에 대입하여 신뢰도를 측정할 수 있다. In addition, the reliability measuring unit calculates the failure rate using the result of the error injection test unit to compare the failure rate distribution function type, or by using the Monte Carlo method or the maximum likelihood method to estimate the failure rate function λ (t), the failure rate function λ The reliability can be measured by substituting (t) for the reliability differential equation.

한편, 상기의 목적을 달성하기 위한 본 발명에 따른 통합 오류주입을 이용한 임베디드 시스템의 신뢰도를 측정하는 방법은 (a) 오류주입 시험의 대상이 되는 타겟시스템을 제작하는 단계와 (b) 오류주입시험의 오류주입횟수를 구하는 단계 및 (c) 상기 타겟시스템에 상기 오류주입횟수만큼 통합 오류주입을 실행하여 신뢰도를 측정하는 단계를 포함한다.On the other hand, the method for measuring the reliability of the embedded system using the integrated error injection according to the present invention for achieving the above object comprises the steps of (a) manufacturing a target system for the object of the error injection test and (b) error injection test Obtaining an error number of injections and measuring the reliability by performing integrated error injection on the target system by the number of error injections.

상기 타겟시스템은 전자 시스템 수준(ESL - Electronic Systems Level) 또는 레지스터 전송 수준(RTL - Register Transfer Level)의 하드웨어 기술 언어를 이용하여 설계된 시뮬레이션 모델부와 프로세서, 메모리, 통신 모듈, 네트워크 모듈, 입출력 모듈 또는 제어부 중 적어도 하나를 포함한 하드웨어부와 상기 메모리에 로드되어 상기 하드웨어부를 구동시키는 소프트웨어부 및 상기 시뮬레이션 모델부, 상기 하드웨어부 및 상기 소프트웨어부에 대해 시간 또는 데이터를 동기화하여 연동하는 통신 인터페이스부를 포함할 수 있다. The target system includes a simulation model unit and a processor, a memory, a communication module, a network module, an input / output module, or a simulation model unit designed using a hardware description language of an electronic system level (ESL) or a register transfer level (RTL). It may include a hardware unit including at least one of the control unit and a software unit loaded in the memory to drive the hardware unit, and a communication interface unit for synchronizing the time or data for the simulation model unit, the hardware unit and the software unit in synchronization. have.

또한, 상기 오류주입횟수는 선행 오류주입시험을 기설정된 초기시험횟수만큼 실행하고, 고장률을 포함한 상기 선행 오류주입시험 실행 결과를 정규분포로 변환하여. 기설정된 신뢰수준을 만족하는 신뢰구간을 추출하여, 상기 신뢰구간을 만족하는 도출된 횟수일 수 있다. In addition, the error injection frequency is performed by performing a preceding error injection test by a predetermined initial test number, and converts the result of the preceding error injection test including a failure rate into a normal distribution. By extracting a confidence interval that satisfies a predetermined confidence level, it may be a derived number that satisfies the confidence interval.

본 발명에 따른 통합 오류주입을 이용한 임베디드 시스템의 신뢰도를 측정하는 시스템 및 그 방법에 의하면,According to the system and method for measuring the reliability of the embedded system using the integrated error injection according to the present invention,

첫째, 복잡한 구조의 임베디드 시스템을 물리적인 부품, 하드웨어 부품, 소프트웨어 부품 및 시뮬레이션 부품으로 분리하여, 원하는 부품에 오류를 주입하여 오류에 의한 시스템의 영향을 구체적으로 파악할 수 있다. First, the embedded system of complex structure can be divided into physical parts, hardware parts, software parts, and simulation parts, and errors can be injected into the desired parts to understand the effects of the system due to the errors.

둘째, 다양한 오류주입 기법을 통합하여 사용함으로써 신뢰도 시험의 결과와 목표 임베디드 시스템을 현장에서 사용하였을 때 발생하는 변수의 값 사이의 격차가 최소화된다. Second, by integrating various error injection techniques, the gap between the results of the reliability test and the value of the variable that occurs when the target embedded system is used in the field is minimized.

셋째, 다양한 오류주입 기법을 통합하여 사용함으로써 관찰의 용이성, 분석의 용이성, 제어의 용이성, 시험결과의 신뢰도 및 시험의 용이성 등의 각각 오류주입 기법들의 장점을 극대화할 수 있다. Third, by integrating various error injection techniques, the advantages of each error injection technique such as ease of observation, ease of analysis, ease of control, reliability of test results, and ease of testing can be maximized.

넷째, 선행오류주입시험을 통하여 선행오류주입시험변수를 도출하고, 그 변수들을 통계학의 추정기법을 이용하여 분석한 후, 가속시험기법을 이용하여 수명주기에 해당하는 신뢰도 시험을 수행하므로 객관적인 신뢰도 추정이 가능하다. Fourth, the lead error injection test variable is derived through the preceding error injection test, the variables are analyzed using the estimation method of statistics, and the reliability test corresponding to the life cycle is performed using the accelerated test method to estimate the objective reliability. This is possible.

다섯째, 시뮬레이션 오류주입시험에서 시뮬레이션 모델은 ESL (Electronic Systems Level)과 RTL(Register Transaction Level)을 개별적 또는 통합적으로 사용할 수 있으므로 특정한 설계 방법 또는 설계 도구에 의존하지 않는다. Fifth, in the simulation error injection test, the simulation model can use ESL (Electronic Systems Level) and RTL (Register Transaction Level) separately or integratedly, so it does not depend on a specific design method or design tool.

여섯째, 실험 데이터의 분석에서 기존의 통계학적인 추정이론을 적용함으로써 결과의 유용성 및 활용성을 높일 수 있다. 즉, 시험의 변수 값들과 결과 값들의 객관적 타당성이 통계적으로 보장되므로 시험 결과를 현장 업무에 용이하게 적용할 수 있다. Sixth, the usefulness and usefulness of the results can be improved by applying existing statistical estimation theory in the analysis of experimental data. That is, the objective validity of the test variable values and the result values is statistically guaranteed, so that the test results can be easily applied to field work.

도 1은 통합 오류주입을 이용한 임베디드 시스템의 신뢰도를 측정하는 시스템의 구성도이다.
도 2는 통합 오류주입을 이용한 임베디드 시스템의 신뢰도를 측정하는 시스템의 실시예이다.
도 3은 통합 오류주입을 이용한 임베디드 시스템의 신뢰도를 측정하는 방법의 흐름도이다.
1 is a configuration diagram of a system for measuring reliability of an embedded system using integrated error injection.
2 is an embodiment of a system for measuring the reliability of an embedded system using integrated error injection.
3 is a flowchart of a method of measuring the reliability of an embedded system using integrated error injection.

이하 첨부된 도면을 참조하면서 본 발명에 따른 바람직한 실시예를 상세히 설명하기로 한다. 이에 앞서, 본 명세서 및 청구범위에 사용된 용어나 단어는 통상적이거나 사전적인 의미로 한정해서 해석되어서는 아니 되며, 발명자는 그 자신의 발명을 가장 최선의 방법으로 설명하기 위해 용어의 개념을 적절하게 정의할 수 있다는 원칙에 입각하여, 본 발명의 기술적 사상에 부합하는 의미와 개념으로 해석되어야만 한다.Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings. Prior to this, terms and words used in the present specification and claims should not be construed as limited to ordinary or dictionary terms, and the inventor should appropriately interpret the concepts of the terms appropriately The present invention should be construed in accordance with the meaning and concept consistent with the technical idea of the present invention.

따라서, 본 명세서에 기재된 실시예와 도면에 도시된 구성은 본 발명의 가장 바람직한 일 실시예에 불과할 뿐이고 본 발명의 기술적 사상을 모두 대변하는 것은 아니므로, 본 출원시점에 있어서 이들을 대체할 수 있는 다양한 균등물과 변형예들이 있을 수 있음을 이해하여야 한다.Therefore, the embodiments described in this specification and the configurations shown in the drawings are merely the most preferred embodiments of the present invention and do not represent all the technical ideas of the present invention. Therefore, It is to be understood that equivalents and modifications are possible.

도 1은 통합 오류주입을 이용한 임베디드 시스템의 신뢰도를 측정하는 시스템의 구성도이고, 도 2는 통합 오류주입을 이용한 임베디드 시스템의 신뢰도를 측정하는 시스템의 실시예를 도시한 것으로, 도 1과 도 2를 참조하여 통합 오류주입을 이용한 임베디드 시스템의 신뢰도를 측정하는 시스템을 설명한다. 1 is a configuration diagram of a system for measuring reliability of an embedded system using integrated error injection, and FIG. 2 illustrates an embodiment of a system for measuring reliability of an embedded system using integrated error injection, FIGS. 1 and 2. The following describes a system for measuring the reliability of an embedded system using integrated error injection.

통합 오류주입을 이용한 임베디드 시스템은 오류주입 시험의 대상이 되는 타겟시스템(100), 오류주입 시나리오를 설정하여 상기 타겟시스템(100)에 오류주입을 수행하는 오류주입시험부(200), 상기 오류주입시험부(200)에서 오류를 주입하기 위한 데이터를 저장하고 있는 오류속성 DB(DataBase, 400), 시뮬레이션옵션 DB(500) 및 상기 오류주입시험부(200)의 결과를 정상시험의 결과와 비교 분석하여 상기 타겟 시스템의 고장률을 추출하여 신뢰도를 추출하는 신뢰도측정부(300)를 포함한다. The embedded system using the integrated error injection includes a target system 100 that is a target of the error injection test, an error injection test unit 200 for performing error injection on the target system 100 by setting an error injection scenario, and the error injection. Comparing and analyzing the results of the error property DB (DataBase, 400), simulation option DB (500) and the error injection test unit 200 that stores the data for injecting errors in the test unit 200 with the results of the normal test And a reliability measuring unit 300 extracting reliability by extracting a failure rate of the target system.

상기 타겟시스템(100)은 시뮬레이션 모델부(110), 하드웨어부(130), 소프트웨어부(150), 통신 인터페이스부(170) 및 시뮬레이션 구동부(190)를 포함한다. The target system 100 includes a simulation model unit 110, a hardware unit 130, a software unit 150, a communication interface unit 170, and a simulation driver 190.

상기 시뮬레이션 모델부(110)는 SystemC, HandelC 또는 SystemVerilog와 같은 전자 시스템 수준(ESL - Electronic Systems Level)의 하드웨어 기술 언어 또는 Verilog 나 VHDL과 같은 레지스터 전송 수준(RTL - Register Transfer Level)의 하드웨어 기술 언어를 이용하여 설계되며, 설계된 시뮬레이션 모델은 워크스테이션에서 실행한다. The simulation model unit 110 uses a hardware description language of an electronic system level (ESL-Electronic Systems Level) such as SystemC, HandelC or SystemVerilog, or a hardware description language of a register transfer level (RTL-Register Transfer Level) such as Verilog or VHDL. The simulation model is designed to run on a workstation.

다만, 상기 시뮬레이션 모델부(110)가 워크스테이션에서 시뮬레이션을 실행하는 경우 워크스테이션의 성능, 시뮬레이션 모델의 복잡도, 장시간의 시뮬레이션 시간으로 실험 시간에 문제가 될 수 있다. 따라서 이러한 경우 상기 시뮬레이션 구동부(190)에서 상기 시뮬레이션 모델을 구동시키는데 accelerator board 혹은 hardware emulator board를 이용한다. However, when the simulation model 110 executes a simulation on a workstation, the performance of the workstation, the complexity of the simulation model, and a long simulation time may be a problem in the experiment time. Therefore, in this case, an accelerator board or a hardware emulator board is used to drive the simulation model in the simulation driver 190.

상기 하드웨어부(130)는 프로세서, 메모리, 통신 모듈, 네트워크 모듈 또는 입출력 모듈 중 적어도 하나를 포함하고, 그외 온도, 습도, 위치 센서들과 모터, 엔진과 같은 장치 및 상기 장치들을 제어하는 제어부를 포함할 수 있다. The hardware unit 130 includes at least one of a processor, a memory, a communication module, a network module, and an input / output module, and other devices including temperature, humidity, position sensors, a motor, an engine, and a controller for controlling the devices. can do.

소프트웨어부(150)는 상기 메모리에 로드되어 상기 하드웨어부(130)를 구동시킨다. The software unit 150 is loaded into the memory to drive the hardware unit 130.

상기 통신 인터페이스부(170)는 상기 시뮬레이션 모델부(110), 상기 하드웨어부(130) 및 상기 소프트웨어부(150)에 대해 시간 또는 데이터를 동기화하여 연동한다. 예를 들어, 상기 시뮬레이션 모델부(110)에서 시뮬레이션 모델을 ESL 설계언어로 디자인한 경우, 시뮬레이션 모델의 출력 데이터를 하드웨어부(130)로 전송하기 위한 데이터 변환이 필요하다. BFM(Bus Function Model)은 시뮬레이션 출력 데이터를 하드웨어부(130)에서 인식 가능하고, 다른 하드웨어 작업과 충돌하지 않도록 제어한다. 또한, 상기 통신 인터페이스부(170)는 시뮬레이션 모델을 구동하는 워크스테이션과 하드웨어부(130) 간의 물리적인 연결을 위해 별도의 인터페이스 보드를 포함할 수도 있다. 이처럼, 상기 통신 인터페이스부(170)를 구성함에 있어서 래퍼(wrapper)를 이용하거나 메시지 통신을 이용하거나 공유 메모리를 이용하는 등 다양한 방법으로 구성할 수 있음은 물론이다. The communication interface unit 170 synchronizes time or data with respect to the simulation model unit 110, the hardware unit 130, and the software unit 150. For example, when the simulation model is designed in the ESL design language by the simulation model unit 110, data conversion for transmitting output data of the simulation model to the hardware unit 130 is required. The BFM (Bus Function Model) recognizes the simulation output data in the hardware unit 130 and controls it so as not to collide with other hardware tasks. In addition, the communication interface 170 may include a separate interface board for physical connection between the workstation driving the simulation model and the hardware unit 130. As such, in the configuration of the communication interface unit 170, a wrapper, a message communication, or a shared memory may be used.

상기 타겟시스템(100)과 같이 통합 오류주입 시험의 대상이 되는 시험 대상 시스템은 기존의 신뢰성 시험방법들처럼 개발과정 및 개발결과에서 발생하는 산출물들을 개별적으로 사용하는 것이 아니라 하드웨어, 기계부품, 소프트웨어, 시뮬레이션 모델 등을 모두 통합한 시스템이다. 따라서, 개발된 임베디드 시스템 제품을 현장에서 사용할 때 발생하는 결과값과 신뢰성 시험의 예측 결과 사이의 격차가 최소화될 수 있다는 장점이 있다. The target system to be subjected to the integrated error injection test, such as the target system 100, does not individually use the outputs generated in the development process and the development result like the existing reliability test methods, but uses hardware, machine parts, software, It is an integrated system of simulation models. Therefore, there is an advantage that the gap between the result value generated when the developed embedded system product is used in the field and the predicted result of the reliability test can be minimized.

상기 오류주입시험부(200)는 상기 오류속성 DB(400)와 시뮬레이션옵션 DB(500)를 참조하여 상기 시뮬레이션 모델부(110)를 통해 상기 하드웨어부(130)의 시뮬레이션 커널에 오류 주입을 수행한다. 이처럼 커널기반 오류주입기법을 이용하여 통합 오류주입시험을 수행하면 기존의 오류주입기법보다 오류 관찰성(visibility)이 증가하여 신속하고 정확한 시험이 가능하다. 즉, 각각의 주입된 오류의 영향을 시스템의 모든 구성요소에서, 예를 들면 하드웨어 부품 및 물리적인 부품에서 직접 확인할 수 있기 때문에 이전 방법들보다 정확한 분석 결과를 도출할 수 있고, 시험 분석 결과와 실제 결과 간의 갭을 최소화하는 장점이 있다. The error injection test unit 200 performs error injection into the simulation kernel of the hardware unit 130 through the simulation model unit 110 with reference to the error property DB 400 and the simulation option DB 500. . As such, when the integrated error injection test is performed using the kernel-based error injection method, error observability increases compared to the existing error injection method, thereby enabling rapid and accurate test. In other words, the impact of each injected error can be seen directly on all components of the system, for example, in hardware and physical parts, resulting in more accurate analysis results than previous methods. This has the advantage of minimizing the gap between the results.

또한, 커널기반 오류주입기법을 이용하여 통합 오류주입기법을 수행하면 기존의 오류주입방법보다 시험 대상물 제작이 용이하여 신속하고 정확한 실험이 가능하다. 즉, 각각의 구성요소를 개발할 때, 구성요소의 형태에 관계없이 제품을 구성하는 것이 가능하다. 예를 들면, 마이크로프로세서를 칩으로 된 물리적인 부품을 사용할 수도 있고, verilog와 같은 하드웨어 기술언어로 작성된 시뮬레이션 모델일 수도 있고, 또는 마이크로프로세서의 시뮬레이션 소프트웨어가 될 수도 있다. 그러므로 모델 제작시 제한 사항이 축소되어 신속한 시험 모델의 제작이 가능하다는 장점이 있다. In addition, if the integrated error injection method is performed using the kernel-based error injection method, the test object is easier to manufacture than the existing error injection method, thereby enabling rapid and accurate experiments. That is, when developing each component, it is possible to construct a product regardless of the form of the component. For example, a microprocessor can use physical components in chips, a simulation model written in a hardware description language such as verilog, or a microprocessor simulation software. Therefore, there is an advantage that the limitation of the model making is reduced and the test model can be produced quickly.

또한, 커널기반 오류주입기법을 이용하여 통합 오류주입시험을 수행하면 오류주입시험의 재현성(repeatibility)이 기존의 다른 방법들보다 높으므로 신속하고 정확한 실험 결과를 도출할 수 있다. 하드웨어 오류주입은 하드웨어에 오류를 주입하여 고장이 발생하게 되면 그 모델은 더 이상 재사용을 할 수 없다. 그러나 통합오류주입시험에서는 고장이 하드웨어 모델이 아니라 시뮬레이션 모델에서 발생하게 되는 경우, 시험 모델에서 고장이 발생하게 되더라도 시험 모델을 재사용할 수 있다. 그러므로 모델 제작시 발생하는 여러 가지 제한 사항이 축소되어 신속한 시험이 가능한 장점이 있다. In addition, if the integrated error injection test is performed using the kernel-based error injection method, the repeatability of the error injection test is higher than that of other methods, and thus, a rapid and accurate test result can be obtained. Hardware fault injection injects hardware into the failure and the model can no longer be reused. However, in the integrated error injection test, if the failure occurs in the simulation model rather than the hardware model, the test model can be reused even if the failure occurs in the test model. Therefore, there are advantages that can be tested quickly by reducing various restrictions that occur during model making.

또한, 상기 오류주입시험부(200)는 상기 시뮬레이션 모델부(110)에서 주입한 오류에 의한 동작 특성을 상기 하드웨어부(130)를 통해 평가한다. 즉, 시험대상을 하드웨어 파트와 시뮬레이션 파트로 분리하여 시뮬레이션 파트에 오류를 주입하고 오류에 의한 동작 특성을 하드웨어 파트를 통해 평가하여 시스템의 신뢰도를 확인하는 것이다. 이때, 상기 시뮬레이션 모델부(110)는 하드웨어 시뮬레이션 모델(ESL/RTL)과 어플리케이션 소프트웨어가 통합된 모델인 것이 바람직하다. In addition, the error injection test unit 200 evaluates the operation characteristics due to the error injected by the simulation model unit 110 through the hardware unit 130. That is, the test object is divided into a hardware part and a simulation part to inject an error into the simulation part, and the operation characteristics caused by the error are evaluated through the hardware part to confirm the reliability of the system. In this case, the simulation model unit 110 is preferably a model in which a hardware simulation model (ESL / RTL) and application software are integrated.

상기 시뮬레이션 모델부(110)로의 오류주입은 하드웨어 기술언어에 따라 달리 적용할 수 있다. 일 실시예로 C++에 기반한 하드웨어 설계언어인 SystemC(IEEE 1666) 시뮬레이션 모델인 경우 SystemC-Based Simulation Fault Injection(SyFI)을 사용하며, Verilog HDL을 사용하는 경우에는 Verilog-based Simulation Fault Injection(VSFI) 오류주입시험 장치와 이를 이용한 오류주입시험 방법으로 활용이 가능하다. Error injection into the simulation model unit 110 may be applied differently according to the hardware description language. For example, SystemC (IEEE 1666) simulation model, a hardware design language based on C ++, uses SystemC-Based Simulation Fault Injection (SyFI), and Verilog-based Simulation Fault Injection (VSFI) error when using Verilog HDL. It can be used as an injection test device and an error injection test method using the same.

오류주입 시험을 위한 오류주입 시나리오를 설정하는 유저 인터페이스부(210)를 포함한다. And a user interface unit 210 for setting an error injection scenario for the error injection test.

상기 오류주입 시나리오는 오류 발생 시간, 오류 발생 위치, 오류 발생 유형 또는 오류 발생 빈도 중 적어도 하나의 기준에 따라 상기 타겟시스템(100)에 주입할 오류를 결정한다. 상기 오류 발생 시간은 결정형 또는 랜덤형으로 오류주입 가능하며, 상기 오류 발생 위치는 결정형 또는 랜덤형으로 오류주입 가능하며, 상기 오류 발생 유형은 stuck-at-0/1, stuck-at-multi-bit-0/1, open/short fault, bridge fault 중 적어도 하나의 형태로 오류주입 가능하며, 상기 오류 발생 빈도는 일시적 오류, 지속적 오류, 주기적 재발 오류, 비주기적 재발 요류 등의 형태로 오류주입 가능하다. The error injection scenario determines an error to be injected into the target system 100 according to at least one criterion of an error occurrence time, an error occurrence location, an error occurrence type, or an error occurrence frequency. The error occurrence time may be error-injected in a crystalline or random form, the error occurrence position may be error-injected in a crystalline or random form, and the error occurrence type may be stuck-at-0 / 1, stuck-at-multi-bit Error injection is possible in the form of at least one of -0/1, open / short fault, bridge fault, and the frequency of error occurrence can be error injection in the form of temporary error, continuous error, periodic recurrence error, aperiodic recurrent flow, etc. .

또한 상기 오류주입 시나리오는 오류 주입 횟수를 결정하는 것도 포함한다. 상기 오류 주입 횟수는 선행 오류주입 시험을 기설정된 초기 시험 횟수만큼 실행하고, 그에 따른 고장률을 통계방법을 이용하여 결정한다.The error injection scenario also includes determining the number of error injections. The number of error injections is performed by performing a previous error injection test a predetermined number of initial tests, and determining the failure rate according to the statistical method.

상기 신뢰도측정부(300)는 상기 오류주입시험부(200)의 결과를 이용하여 고장률을 계산하여 고장률 분포 함수 유형을 비교하거나, 몬테카를로 기법 또는 최대우도기법을 이용하여 고장률 함수 λ(t)를 추정하여, 상기 고장률 함수 λ(t)를 신뢰도 미분 방정식에 대입하여 신뢰도를 측정한다. 이때 상기 오류주입시험의 결과는 상기 오류주입시험부(200)의 오류주입시험에 의한 로그 파일 내역, 통신 기록 내역 또는 메모리 기록 내역 중 적어도 하나를 포함한다. The reliability measuring unit 300 calculates a failure rate using the result of the error injection test unit 200 and compares the failure rate distribution function types, or estimates the failure rate function λ (t) using Monte Carlo technique or the maximum likelihood technique. Then, the failure rate function lambda (t) is substituted into the reliability differential equation to measure the reliability. In this case, the result of the error injection test may include at least one of a log file history, a communication history, or a memory history by the error injection test of the error injection test unit 200.

도 3은 통합 오류주입을 이용한 임베디드 시스템의 신뢰도를 측정하는 방법의 흐름도로, 도 3을 참조하여 통합 오류주입을 이용한 임베디드 시스템의 신뢰도를 측정하는 방법을 설명한다. 3 is a flowchart illustrating a method of measuring the reliability of an embedded system using integrated error injection. Referring to FIG. 3, a method of measuring the reliability of an embedded system using integrated error injection will be described.

먼저 오류주입 시험의 대상이 되는 타겟시스템을 제작하고(S10), 오류주입시험의 오류주입횟수를 구한 다음에(S20), 상기 타겟시스템에 상기 오류주입횟수만큼 통합 오류주입을 실행하여 신뢰도를 측정한다(S30).First, a target system to be subjected to an error injection test is manufactured (S10), and an error injection count of the error injection test is obtained (S20), and then integrated error injection is performed on the target system as much as the error injection count to measure reliability. (S30).

상기 타겟시스템은 전자 시스템 수준(ESL - Electronic Systems Level) 또는 레지스터 전송 수준(RTL - Register Transfer Level)의 하드웨어 기술 언어를 이용하여 설계된 시뮬레이션 모델부와 프로세서, 메모리, 통신 모듈, 네트워크 모듈, 입출력 모듈 또는 제어부 중 적어도 하나를 포함한 하드웨어부와 상기 메모리에 로드되어 상기 하드웨어부를 구동시키는 소프트웨어부 및 상기 시뮬레이션 모델부, 상기 하드웨어부 및 상기 소프트웨어부에 대해 시간 또는 데이터를 동기화하여 연동하는 통신 인터페이스부를 포함한다.The target system includes a simulation model unit and a processor, a memory, a communication module, a network module, an input / output module, or a simulation model unit designed using a hardware description language of an electronic system level (ESL) or a register transfer level (RTL). A hardware unit including at least one of the control unit and a software unit loaded in the memory to drive the hardware unit, and a communication interface unit for synchronizing the time or data for the simulation model unit, the hardware unit and the software unit in synchronization.

상기 시뮬레이션 모델부의 시뮬레이션 모델은 소형 컴퓨터에서 실행 중인 시뮬레이터를 이용하고, 하드웨어의 일부분 혹은 전체회로에 해당하는 셜계모델인 Hardware Description Language의 일종인 Register Transfer Level 도구인 Verilog 또는 VHDL로 설계된 부품인 것이 바람직하다. 예를 들면, Verilog로 마이크로프로세서 모델을 설계하여 FPGA/PLD로 합성할 수 있다. 또한, FPGA/PLD 에는 시뮬레이션 모델과 보드를 연결하는 모듈을 합성하므로, 시뮬레이션 모듈은 프로세서이고 보드에서는 통신 모듈을 이용하는 경우라면 FPGA/PLD 에서는 Bus Functional Module 또는 Wrapper를 합성함으로써 시뮬레이션 모델인 프로세서와 하드웨어인 통신 모듈을 연결할 수 있다. The simulation model of the simulation model unit is preferably a part designed with Verilog or VHDL, which is a register transfer level tool, which is a kind of hardware description language that uses a simulator running on a small computer and corresponds to a part or whole circuit of hardware. . For example, you can design microprocessor models with Verilog and synthesize them into FPGAs / PLDs. In addition, since FPGA / PLD synthesizes a module that connects a simulation model and a board, if a simulation module is a processor and a communication module is used on a board, the FPGA / PLD synthesizes a bus functional module or a wrapper in the FPGA / PLD. Communication module can be connected.

다만, 만일 프로세서나 메모리를 칩으로 된 하드웨어를 사용해야 하는 경우라서 프로세서 시뮬레이션 모델을 이용할 수 없는 경우라면, 다른 하드웨어의 구성요소 중 하나를 HDL로 설계하여 활용한다. 예를 들면, 프로세서와 메모리 간의 버스에 감시모듈을 HDL로 설계하고 시뮬레이션 모델을 구성한다. However, if the processor simulation model cannot be used because the processor or memory must use hardware in chip, one of the components of the other hardware is designed and used in HDL. For example, a supervisory module is designed in HDL on the bus between the processor and memory and a simulation model is constructed.

이처럼 상기 타겟시스템은 하드웨어, 소프트웨어, 물리적 부품, 그리고 시뮬레이션 모델이 연결된 통합 임베디드 시스템이다. As such, the target system is an integrated embedded system in which hardware, software, physical components, and simulation models are connected.

한편, 상기 타겟시스템에 대하여 오류주입시험의 오류주입횟수를 구하는 것은 신뢰성 있는 결과값의 도출을 위해 중요하다. 따라서 오류주입 시험의 대상이 되는 타겟시스템의 제작(S10)이 완료되면 오류주입횟수를 구한다(S20). On the other hand, obtaining the error injection frequency of the error injection test for the target system is important for deriving a reliable result. Therefore, when the production of the target system to be subjected to the error injection test (S10) is completed, the error injection frequency is obtained (S20).

상기 오류주입횟수는 선행 오류주입시험을 기설정된 초기시험횟수만큼 실행하고, 고장률을 포함한 상기 선행 오류주입시험 실행 결과를 정규분포로 변환하여. 기설정된 신뢰수준을 만족하는 신뢰구간을 추출하여, 상기 신뢰구간을 만족하는 도출된 횟수이다. The error injection frequency is performed by performing a preceding error injection test by a predetermined initial test number, and converting the execution result of the preceding error injection test including a failure rate into a normal distribution. A confidence interval that satisfies a predetermined confidence level is extracted, and is a derived number that satisfies the confidence interval.

다시 말하면, 커널기반 오류주입기법을 상기 타겟시스템을 이용하여 일차적으로 선행 오류주입시험을 수행한다. 최초에는 시험기간 및 시험오류와 같은 오류주입시험의 변수가 알려져 있지 않다. 따라서 잘 알려진 오류모델 (예를 들면 stuck-at-1/0, bridge) 등을 대상으로하여 초기시험횟수를 설정하여 그만큼 실행하고, 고장률을 통계적으로 계산하여 오류주입횟수를 구한다. In other words, a kernel-based error injection technique first performs an advanced error injection test using the target system. Initially, the parameters of the error injection test, such as test duration and test error, are not known. Therefore, we set the initial test frequency for the well-known error model (e.g. stuck-at-1 / 0, bridge) and execute it accordingly, and calculate the error rate by calculating the failure rate statistically.

오류주입횟수를 구하는 과정은, 선행 오류주입시험이 완료되면 고장률 등의 시험 결과를 정규분포로 변환한 뒤, 표본평균이 x이고, 횟수 n, 모분산이 σ2 일 때, 지정된 신뢰수준을 만족하는 신뢰구간의 상한 및 하한의 통계량은 각각

Figure pat00001
이라고 할 수 있다. 이러한 신뢰수준을 만족하는 상한 및 하한 통계량이 정해지면, 설정된 신뢰수준을 만족하는 오류주입횟수 n을 도출할 수 있다. 이 오류주입횟수만큼 시험을 반복하여 고장률 결과를 얻을 수 있다. In the process of calculating the error injection frequency, when the previous error injection test is completed, the test result such as the failure rate is converted into a normal distribution, and then the specified confidence level is satisfied when the sample mean is x, the number n and the variance are σ 2. The statistics for the upper and lower bounds of the confidence interval
Figure pat00001
It can be said. If the upper limit and the lower limit statistics satisfying the confidence level are determined, the number of error injections n satisfying the set confidence level can be derived. The failure rate results can be obtained by repeating the test for this number of error injections.

상기 타겟시스템에 상기 오류주입횟수만큼 통합 오류주입을 실행하여 신뢰도를 측정하는 단계(S30)는 고장률 함수 λ(t)를 신뢰도 미분 방정식에 대입하여 신뢰도를 측정한다. 일반적으로 고장률(λ)과 신뢰도 R(t)는 다음 수학식 1과 같은 관계를 갖는다.In the step (S30) of measuring the reliability by performing the integrated error injection as much as the error injection frequency in the target system, the reliability is measured by substituting the failure rate function λ (t) into the reliability differential equation. In general, the failure rate λ and the reliability R (t) have a relationship as shown in Equation 1 below.

Figure pat00002
Figure pat00002

수학식 1의 해인 R(t)는 수학식 2와 같다.R (t), a solution of Equation 1, is equal to Equation 2.

Figure pat00003
Figure pat00003

이때 일반적인 제품의 초기상태를 충분히 지난 일반 사용기간에서의 고장률 함수 λ(t)는 일반적으로 상수이므로 λ(t) 대신에 λ를 대입하면, 신뢰도 R(t)는 수학식 3과 같다. In this case, the failure rate function λ (t) in a general service period that has sufficiently passed the initial state of a general product is generally a constant, so when λ is substituted instead of λ (t), the reliability R (t) is expressed by Equation 3 below.

Figure pat00004
Figure pat00004

상기 수학식 3을 이용하여 타겟시스템의 신뢰도를 계산한다. The reliability of the target system is calculated using Equation 3 above.

한편, 본 발명에 따른 통합 오류주입을 이용한 임베디드 시스템의 신뢰도를 측정하는 방법은 전체적인 오류주입시험의 통제가 용이하므로 이러한 방법을 이용한 실시예로서 가속수명시험이 가능하다. 아래의 두 가지 방법으로 가속수명시험을 구성할 수 있다. On the other hand, the method for measuring the reliability of the embedded system using the integrated error injection according to the present invention is easy to control the overall error injection test, the accelerated life test is possible as an embodiment using this method. Accelerated life tests can be configured in two ways:

첫 번째로 , 스트레스 횟수증가기법은 선행 및 가속수명시험기간을 고정시키고 그 기간 사이에 주입되는 스트레스 즉, 주입되는 오류의 개수를 증가시켜서 오류주입시험을 실시하는 방법이다. Firstly, the stress count increase technique is a method of performing the error injection test by fixing the preceding and accelerated life test periods and increasing the number of stresses that are injected between the periods.

두 번째로, 시험기간 압축기법으로서 이 방법은 선행 수명시험기간에서 발생한 오류의 횟수를 압축된 수명시험기간에 적절한 값으로 환산한 뒤, 변경된 횟수의 오류를 압축된 수명시험기간 동안에 주입하여 가속수명시험 오류주입시험을 실시한다. Second, as a test period compressor method, this method converts the number of errors that occurred in the preceding life test period into an appropriate value for the compressed life test period, and then injects the changed number of errors during the compressed life test period to accelerate the life. Perform a fault injection test.

이러한 방법들을 이용하여 가속수명시험 환경에서의 고장률 시험결과를 구하고 이들을 이용하여 신뢰도 R(t)를 상기 수학식 3을 이용하여 계산한다. Using these methods, the failure rate test results in the accelerated life test environment are obtained, and the reliability R (t) is calculated using the above Equation 3 using them.

이상과 같이, 본 발명은 비록 한정된 실시예와 도면에 의해 설명되었으나, 본 발명은 이것에 의해 한정되지 않으며 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 의해 본 발명의 기술 사상과 아래에 기재될 청구범위의 균등 범위 내에서 다양한 수정 및 변형이 가능함은 물론이다.As described above, although the present invention has been described by way of limited embodiments and drawings, the present invention is not limited thereto and is intended by those skilled in the art to which the present invention pertains. Of course, various modifications and variations are possible within the scope of equivalents of the claims to be described.

100 타겟시스템 110 시뮬레이션 모델부
130 하드웨어부 150 소프트웨어부
170 통신 인터페이스부 190 시뮬레이션 구동보드
200 오류주입시험부 210 유저 인터페이스부
300 신뢰도측정부 400 오류속성 DB
500 시뮬레이션옵션 DB
100 target system 110 simulation model part
130 Hardware Section 150 Software Section
170 Communication Interface 190 Simulation Drive Board
200 Error injection test unit 210 User interface unit
300 Reliability Measurement Unit 400 Error Property DB
500 Simulation Option DB

Claims (13)

오류주입 시험의 대상이 되는 타겟시스템;
오류주입 시나리오를 설정하여 상기 타겟시스템에 오류주입을 수행하는 오류주입시험부; 및
상기 오류주입시험부의 결과를 정상시험의 결과와 비교 분석하여 상기 타겟시스템의 고장률을 추출하여 신뢰도를 측정하는 신뢰도측정부;를 포함하는 통합 오류주입을 이용한 임베디드 시스템의 신뢰도를 측정하는 시스템.
A target system subject to the error injection test;
An error injection test unit configured to set an error injection scenario and perform error injection on the target system; And
And a reliability measuring unit which compares and analyzes a result of the error injection test unit with a result of a normal test to extract a failure rate of the target system to measure reliability.
제 1 항에 있어서,
상기 타켓시스템은,
전자 시스템 수준(ESL - Electronic Systems Level) 또는 레지스터 전송 수준(RTL - Register Transfer Level)의 하드웨어 기술 언어를 이용하여 설계된 시뮬레이션 모델부;
프로세서, 메모리, 통신 모듈, 네트워크 모듈, 입출력 모듈 또는 제어부 중 적어도 하나를 포함한 하드웨어부;
상기 메모리에 로드되어 상기 하드웨어부를 구동시키는 소프트웨어부; 및
상기 시뮬레이션 모델부, 상기 하드웨어부 및 상기 소프트웨어부에 대해 시간 또는 데이터를 동기화하여 연동하는 통신 인터페이스부;를 포함하는 임베디드 시스템인 것을 특징으로 하는 통합 오류주입을 이용한 임베디드 시스템의 신뢰도를 측정하는 시스템.
The method of claim 1,
The target system,
A simulation model unit designed using a hardware description language of an electronic systems level (ESL) or a register transfer level (RTL);
A hardware unit including at least one of a processor, a memory, a communication module, a network module, an input / output module, and a controller;
A software unit loaded in the memory to drive the hardware unit; And
And a communication interface unit for synchronizing time or data with respect to the simulation model unit, the hardware unit, and the software unit. The system for measuring the reliability of an embedded system using integrated error injection.
제 2 항에 있어서,
상기 타켓시스템은,
상기 시뮬레이션 모델부를 구동시킬 수 있는 시뮬레이션 구동보드;를 더 포함하는 것을 특징으로 하는 통합 오류주입을 이용한 임베디드 시스템의 신뢰도를 측정하는 시스템.
The method of claim 2,
The target system,
And a simulation driving board capable of driving the simulation model unit. The system for measuring the reliability of an embedded system using integrated error injection.
제 2 항에 있어서,
상기 오류주입시험부는,
상기 시뮬레이션 모델부를 통해 상기 하드웨어부의 시뮬레이션 커널에 오류주입을 수행하는 것을 특징으로 하는 오류주입을 이용한 임베디드 시스템의 신뢰도를 측정하는 시스템.
The method of claim 2,
The error injection test unit,
System for measuring the reliability of the embedded system using the error injection, characterized in that for performing the error injection to the simulation kernel of the hardware unit through the simulation model.
제 2 항에 있어서,
상기 오류주입시험부는,
상기 시뮬레이션 모델부에 주입한 오류에 의한 동작 특성을 상기 하드웨어부를 통해 평가하는 것을 특징으로 하는 오류주입을 이용한 임베디드 시스템의 신뢰도를 측정하는 시스템.
The method of claim 2,
The error injection test unit,
The system for measuring the reliability of the embedded system using the error injection, characterized in that for evaluating the operation characteristics due to the error injected into the simulation model unit through the hardware unit.
제 1 항에 있어서,
상기 오류주입시험부는,
오류주입 시험을 위한 오류주입 시나리오를 설정하는 유저 인터페이스부;를 포함하는 것을 특징으로 하는 오류주입을 이용한 임베디드 시스템의 신뢰도를 측정하는 시스템.
The method of claim 1,
The error injection test unit,
And a user interface configured to set an error injection scenario for the error injection test.
제 1 항에 있어서,
상기 오류주입 시나리오는,
오류 발생 시간, 오류 발생 위치, 오류 발생 유형 또는 오류 발생 빈도 중 적어도 하나의 기준에 따라 상기 타겟시스템에 주입할 오류를 결정하는 것을 특징으로 하는 오류주입을 이용한 임베디드 시스템의 신뢰도를 측정하는 시스템.
The method of claim 1,
The error injection scenario,
The system for measuring the reliability of the embedded system using the error injection, characterized in that for determining the error to be injected into the target system according to at least one of the error occurrence time, error occurrence location, error occurrence type or error occurrence frequency.
제 7 항에 있어서,
상기 오류주입 시나리오는,
오류 주입 횟수를 결정하는 것을 더 포함하고,
상기 오류 주입 횟수는,
선행 오류주입 시험을 기설정된 초기 시험 횟수만큼 실행하고, 그에 따른 고장률을 통계방법을 이용하여 결정하는 것을 특징으로 하는 오류주입을 이용한 임베디드 시스템의 신뢰도를 측정하는 시스템.
The method of claim 7, wherein
The error injection scenario,
Determining the number of error injections,
The error injection number is,
A system for measuring the reliability of an embedded system using an error injection, characterized in that for performing a preceding error injection test a predetermined number of initial test, and determine the failure rate according to the statistical method.
제 1 항에 있어서,
상기 오류주입시험부의 결과는,
상기 오류주입시험부의 오류주입시험에 의한 로그 파일 내역, 통신 기록 내역 또는 메모리 기록 내역 중 적어도 하나를 포함하는 것을 특징으로 하는 오류주입을 이용한 임베디드 시스템의 신뢰도를 측정하는 시스템.
The method of claim 1,
The result of the error injection test unit,
System for measuring the reliability of the embedded system using the error injection, characterized in that it comprises at least one of the log file history, communication record history or memory record history by the error injection test of the error injection test.
제 9 항에 있어서,
상기 신뢰도측정부는,
상기 오류주입시험부의 결과를 이용하여 고장률을 계산하여 고장률 분포 함수 유형을 비교하거나, 몬테카를로 기법 또는 최대우도기법을 이용하여 고장률 함수 λ(t)를 추정하여, 상기 고장률 함수 λ(t)를 신뢰도 미분 방정식에 대입하여 신뢰도를 측정하는 것을 특징으로 하는 오류주입을 이용한 임베디드 시스템의 신뢰도를 측정하는 시스템.
The method of claim 9,
The reliability measuring unit,
Calculate the failure rate using the result of the error injection test unit, compare the failure rate distribution function types, or estimate the failure rate function λ (t) using Monte Carlo method or the maximum likelihood method, and calculate the reliability rate function λ (t) A system for measuring the reliability of an embedded system using error injection characterized in that the reliability is measured by substituting the equation.
(a) 오류주입 시험의 대상이 되는 타겟시스템을 제작하는 단계;
(b) 오류주입시험의 오류주입횟수를 구하는 단계; 및
(c) 상기 타겟시스템에 상기 오류주입횟수만큼 통합 오류주입을 실행하여 신뢰도를 측정하는 단계;를 포함하는 통합 오류주입을 이용한 임베디드 시스템의 신뢰도를 측정하는 방법.
(a) manufacturing a target system to be subjected to the error injection test;
(b) obtaining the error injection frequency of the error injection test; And
(c) measuring reliability by executing integrated error injection on the target system by the number of error injection times.
제 11 항에 있어서,
상기 타겟시스템은,
전자 시스템 수준(ESL - Electronic Systems Level) 또는 레지스터 전송 수준(RTL - Register Transfer Level)의 하드웨어 기술 언어를 이용하여 설계된 시뮬레이션 모델부;
프로세서, 메모리, 통신 모듈, 네트워크 모듈, 입출력 모듈 또는 제어부 중 적어도 하나를 포함한 하드웨어부;
상기 메모리에 로드되어 상기 하드웨어부를 구동시키는 소프트웨어부; 및
상기 시뮬레이션 모델부, 상기 하드웨어부 및 상기 소프트웨어부에 대해 시간 또는 데이터를 동기화하여 연동하는 통신 인터페이스부;를 포함하는 것을 특징으로 하는 통합 오류주입을 이용한 임베디드 시스템의 신뢰도를 측정하는 방법.
The method of claim 11,
The target system,
A simulation model unit designed using a hardware description language of an electronic systems level (ESL) or a register transfer level (RTL);
A hardware unit including at least one of a processor, a memory, a communication module, a network module, an input / output module, and a controller;
A software unit loaded in the memory to drive the hardware unit; And
And a communication interface unit for synchronizing time or data with respect to the simulation model unit, the hardware unit, and the software unit. 7.
제 11 항에 있어서,
상기 오류주입횟수는,
선행 오류주입시험을 기설정된 초기시험횟수만큼 실행하고, 고장률을 포함한 상기 선행 오류주입시험 실행 결과를 정규분포로 변환하여. 기설정된 신뢰수준을 만족하는 신뢰구간을 추출하여, 상기 신뢰구간을 만족하는 도출된 횟수인 것을 특징으로 하는 통합 오류주입을 이용한 임베디드 시스템의 신뢰도를 측정하는 방법.





The method of claim 11,
The error injection frequency is
Performing a preceding error injection test by a predetermined initial test number, and converting the preceding error injection test execution result including a failure rate into a normal distribution. And extracting a confidence interval that satisfies a predetermined confidence level, and determining a reliability interval of the embedded system using integrated error injection.





KR1020110001435A 2011-01-06 2011-01-06 System and the method for measuring dependability of embedded systems using hybrid fault injection KR101255744B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020110001435A KR101255744B1 (en) 2011-01-06 2011-01-06 System and the method for measuring dependability of embedded systems using hybrid fault injection

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020110001435A KR101255744B1 (en) 2011-01-06 2011-01-06 System and the method for measuring dependability of embedded systems using hybrid fault injection

Publications (2)

Publication Number Publication Date
KR20120080019A true KR20120080019A (en) 2012-07-16
KR101255744B1 KR101255744B1 (en) 2013-04-17

Family

ID=46712794

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020110001435A KR101255744B1 (en) 2011-01-06 2011-01-06 System and the method for measuring dependability of embedded systems using hybrid fault injection

Country Status (1)

Country Link
KR (1) KR101255744B1 (en)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103729296A (en) * 2013-12-31 2014-04-16 北京理工大学 Network-based Motif software stability assessment method
KR101440995B1 (en) * 2012-11-07 2014-09-17 한국항공우주연구원 Spacecraft Simulation Apparatus and Method
KR101581309B1 (en) 2015-08-13 2015-12-31 국방과학연구소 Airplane Electronic Device for Interlocking Failure Detection and Elimination of Each Board Unit
KR20180054255A (en) * 2016-11-15 2018-05-24 국방과학연구소 Apparatus and Method for verifying automation based robustness using mutation Application Programming Interface
CN108614764A (en) * 2016-12-12 2018-10-02 中国航空工业集团公司西安航空计算技术研究所 IMA application software fault filling methods
CN111861141A (en) * 2020-06-29 2020-10-30 国网上海市电力公司 Power distribution network reliability assessment method based on fuzzy fault rate prediction
CN112364491A (en) * 2020-10-28 2021-02-12 中国电子产品可靠性与环境试验研究所((工业和信息化部电子第五研究所)(中国赛宝实验室)) System safety quantitative test method and device, computer equipment and storage medium
KR102253549B1 (en) * 2020-11-18 2021-05-18 국방과학연구소 A method and apparatus for inspecting firing control system usinf failure categorization

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101440995B1 (en) * 2012-11-07 2014-09-17 한국항공우주연구원 Spacecraft Simulation Apparatus and Method
CN103729296A (en) * 2013-12-31 2014-04-16 北京理工大学 Network-based Motif software stability assessment method
KR101581309B1 (en) 2015-08-13 2015-12-31 국방과학연구소 Airplane Electronic Device for Interlocking Failure Detection and Elimination of Each Board Unit
KR20180054255A (en) * 2016-11-15 2018-05-24 국방과학연구소 Apparatus and Method for verifying automation based robustness using mutation Application Programming Interface
CN108614764A (en) * 2016-12-12 2018-10-02 中国航空工业集团公司西安航空计算技术研究所 IMA application software fault filling methods
CN108614764B (en) * 2016-12-12 2021-09-14 中国航空工业集团公司西安航空计算技术研究所 IMA application software fault injection method
CN111861141A (en) * 2020-06-29 2020-10-30 国网上海市电力公司 Power distribution network reliability assessment method based on fuzzy fault rate prediction
CN111861141B (en) * 2020-06-29 2024-02-13 国网上海市电力公司 Power distribution network reliability assessment method based on fuzzy fault rate prediction
CN112364491A (en) * 2020-10-28 2021-02-12 中国电子产品可靠性与环境试验研究所((工业和信息化部电子第五研究所)(中国赛宝实验室)) System safety quantitative test method and device, computer equipment and storage medium
CN112364491B (en) * 2020-10-28 2021-10-15 中国电子产品可靠性与环境试验研究所((工业和信息化部电子第五研究所)(中国赛宝实验室)) System safety quantitative test method and device, computer equipment and storage medium
KR102253549B1 (en) * 2020-11-18 2021-05-18 국방과학연구소 A method and apparatus for inspecting firing control system usinf failure categorization

Also Published As

Publication number Publication date
KR101255744B1 (en) 2013-04-17

Similar Documents

Publication Publication Date Title
KR101255744B1 (en) System and the method for measuring dependability of embedded systems using hybrid fault injection
EP1980964B1 (en) Method and computer program product for performing failure mode and effects analysis of an integrated circuit
US10775430B2 (en) Fault campaign in mixed signal environment
US11416662B1 (en) Estimating diagnostic coverage in IC design based on static COI analysis of gate-level netlist and RTL fault simulation
CN114065677B (en) Method and system for fault injection testing of integrated circuit hardware design
US20190171539A1 (en) Parallel fault simulator with back propagation enhancement
CN110134599A (en) A kind of system architecture misdeed verification method and device
Mariani et al. Using an innovative SoC-level FMEA methodology to design in compliance with IEC61508
US20160125110A1 (en) Method for the simulation of faults in integrated circuits of electronic systems implementing applications under functional safety, corresponding system and computer program product
Nouacer et al. EQUITAS: A tool-chain for functional safety and reliability improvement in automotive systems
Benso et al. A functional verification based fault injection environment
Alexandrescu et al. EDA support for functional safety—How static and dynamic failure analysis can improve productivity in the assessment of functional safety
Roux et al. High level fault injection method for evaluating critical system parameter ranges
Roux et al. Cross layer fault simulations for analyzing the robustness of rtl designs in airborne systems
Portolan et al. Alternatives to fault injections for early safety/security evaluations
Björkman et al. Verification of safety logic designs by model checking
Ferrante et al. A methodology for formal requirements validation and automatic test generation and application to aerospace systems
Dan et al. A method of analysis and verification for safety-critical software based on modelling and testing
Roux et al. Cross-layer approach to assess FMEA on critical systems and evaluate high-level model realism
Nouacer et al. Enhanced quality using intensive test and analysis on simulators
Cassano Analysis and test of the effects of single event upsets affecting the configuration memory of SRAM-based FPGAs
Bombieri et al. RTL-TLM equivalence checking based on simulation
Yu et al. Fault Injection Techniques: A perspective on the state of Research
Tian et al. A Markov error propagation model for component-based software systems
Bağbaba Methods to Optimize Functional Safety Assessment for Automotive Integrated Circuits

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee