Self-Test Controller with Encoded Test Patterns for Automotive Safety

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The challenge lies in supporting structural in-field tests for safety-critical automotive systems without modifying pre-closed hard macros, managing storage of large test stimuli on-chip, and running multiple on-demand structural test cases for higher automotive safety integrity levels, particularly for systems involving central processing units, digital signal processors, and dedicated hardware accelerators.

Innovation Solution

A self-test controller is developed with a memory configured to store test patterns that include subpatterns corresponding to different test cores, allowing dynamic selection and decoding of test vectors based on configuration parameters, reducing storage needs by assuming all test cores are enabled and using repetition values to encode repetitive test data, thus enabling efficient parallel implementation of Built-In Self-Tests (BISTs).

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If test patterns are stored for every combination of test cores, then complete test coverage is achieved, but storage space requirements increase significantly

Engineering Contradiction:
Improvetest coverageVSAvoidstorage space
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The test pattern is segmented into multiple test subpatterns, where each subpattern corresponds to a different test core. This segmentation allows the system to store test data for individual cores separately, enabling selective activation based on configuration parameters rather than storing all possible combinations simultaneously.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system dynamically selects which test subpatterns to execute based on configuration parameters that indicate which test cores are enabled. This dynamic selection mechanism allows the same stored test data to serve multiple configuration scenarios, reducing the need to pre-store test patterns for every possible combination of enabled/disabled cores.

Inventive Principle:
Principle #15Dynamics

2Productivity

If multiple test cases are run in parallel, then testing efficiency is improved, but storage requirements and system complexity increase

Engineering Contradiction:
Improvetesting efficiencyVSAvoidstorage space
Core Design Contradiction:
ProductivityVSQuantity of substance

Solution Approach 1:

Test cores are organized as discrete, independently testable units with dedicated test subpatterns. This segmentation enables selective parallel execution of tests on enabled cores while keeping the test data footprint minimal, as each core has its own dedicated test vectors rather than requiring complete test suites for all possible combinations.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The self-test controller is designed to universally support multiple test cores through a common control architecture that can dynamically configure which cores to test. This multi-functionality allows the same controller infrastructure to handle parallel testing of different core combinations without requiring separate dedicated test systems for each scenario.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Data Source

PatentEP3580762B1In-field multi core self-test controller with stored test pattern for safety critical automotive use cases
Publication Date: 2020.11.04 QUALCOMM INC
  • EP3580762B1 patent drawingFigure 1
  • EP3580762B1 patent drawingFigure 2
  • EP3580762B1 patent drawingFigure 3

AI summary

A self-test controller (100) includes a memory (104) configured to store a test patterns, configuration registers (102), and a memory data component. The test patterns are encoded in the memory using various techniques in order to save storage space. By using the configuration parameters, the memory data component is configured to decode the test patterns and perform multiple built-in self-test on a multitude of test cores (706). The described techniques allow for built- in self-test to be performed dynamically while utilizing less space in the memory.