Hardware Timer Block Control for Low-Overhead Runtime Performance Data

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing computer systems, particularly microcontrollers and automotive ECUs, face challenges in observing and tracking software execution performance due to complex interactions and overhead from additional hardware and software, making it difficult to monitor real-time performance and identify the root cause of misbehavior without excessive complexity or overhead.

Innovation Solution

A monitoring hardware circuit with a performance monitor control register that uses write-1-clear fields to control timer and watchdog elements, allowing for efficient collection of runtime performance data with minimal impact on application code, and utilizing direct memory access to manage counter values, enabling scalable observation of task execution and stall times.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If additional hardware and software are added to provide observation functionality, then measurement precision is improved, but device complexity increases

Engineering Contradiction:
Improvesoftware execution performance observationVSAvoidhardware and software complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The patent combines multiple performance monitoring functions (software execution observation, stall detection, deadline monitoring) into a single integrated hardware circuit. This consolidation provides comprehensive measurement precision while reducing device complexity by eliminating the need for separate hardware components for each function.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The performance monitoring circuit is designed as a universal hardware block that can observe multiple aspects of software execution simultaneously - task execution time, stall conditions, critical section monitoring, and deadline verification. This multi-functionality improves measurement precision without proportionally increasing device complexity.

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

2Reliability

If comprehensive observation mechanisms are implemented to ensure proper operation, then reliability is improved, but processing overhead increases

Engineering Contradiction:
Improvesoftware execution correctnessVSAvoidprocessing overhead
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

The performance monitoring circuit operates autonomously using dedicated hardware counters and comparators that automatically track execution time and detect violations without requiring CPU intervention. This self-service mechanism improves reliability by continuously monitoring software execution while minimizing processing overhead since the CPU does not need to execute additional monitoring code.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The patent replaces software-based monitoring mechanisms with hardware-based counters and comparators. This substitution eliminates the processing overhead associated with software polling and checking, while providing continuous reliable observation of execution performance through dedicated hardware circuits that operate independently of the CPU.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

3Measurement precision

If detailed tracking of execution performance is implemented, then measurement precision is improved, but loss of time increases

Engineering Contradiction:
Improveexecution performance trackingVSAvoidoverhead time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The hardware counters are pre-configured with deadline values and comparison thresholds before execution begins. This preliminary setup allows the circuit to immediately start detailed tracking of execution performance without requiring time-consuming calculations or comparisons during runtime, thus improving measurement precision while minimizing time loss.

Inventive Principle:
Principle #10Preliminary action

4Adaptability or versatility

If multiple control registers are used to control timer and watchdog elements, then adaptability is improved, but device complexity increases

Engineering Contradiction:
Improvecontrol flexibilityVSAvoidregister interface complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The performance monitor control register is designed as a universal interface that controls multiple timer and watchdog elements simultaneously through a single register write operation. This multi-functional control mechanism provides adaptability for configuring different monitoring scenarios while reducing device complexity by eliminating the need for multiple separate control registers.

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

Data Source

PatentUS11016768B2Hardware support for OS-centric performance monitoring with data collection
Publication Date: 2021.05.25 NXP USA INC
  • US11016768B2 patent drawing
  • US11016768B2 patent drawing
  • US11016768B2 patent drawing

AI summary

A system, method, apparatus and integrated circuit are provided for collecting runtime performance data with a set of hardware timers under control of a dedicated hardware control register by connecting a central processing unit (CPU) and memory to a timer block bank having a plurality of timer instances which are selectively enabled and activated to collect runtime performance data during execution of application code by measuring specified software execution events, where the dedicated hardware control register includes a plurality of register fields for independently controlling activation behavior of the plurality of timer instances in response to a single write operation to all register fields in the hardware control register.