Instruction Tracer Circuitry for Non-Intrusive Logging

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing integrated circuits face challenges in efficiently logging commands executed by processing units without impacting performance or execution time, particularly in systems requiring multiple processing units for advanced features, as traditional logging methods can cause resource contention and increased latency.

Innovation Solution

An integrated circuit with an instruction tracer circuitry that intercepts store instructions, retrieves logging data, and generates logging packets without stalling the processing unit, allowing non-intrusive monitoring and reducing resource contention by direct coupling to the processing unit, and optionally adding time references and memory addresses to enhance debugging features.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If traditional logging methods are used to log commands executed by processing units, then logging functionality is provided, but resource contention and increased latency occur

Engineering Contradiction:
Improvelogging functionalityVSAvoidperformance and execution time
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The system segments the logging function from the main processing unit by introducing a separate instruction tracer circuitry that operates independently. This circuitry is specifically designed to trace store instructions and generate logging packets without interfering with the processing unit's normal execution, thereby eliminating resource contention while maintaining logging functionality.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The instruction tracer circuitry acts as an intermediary between the processing unit and the logging system. It intercepts store instructions, retrieves logging data, and generates logging packets through a dedicated path that does not share resources with the processing unit, thus avoiding resource contention and latency issues.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Ease of operation

If store instructions are intercepted to retrieve logging data, then non-intrusive monitoring is achieved, but additional circuitry is required

Engineering Contradiction:
Improvenon-intrusive monitoringVSAvoidinstruction tracer circuitry
Core Design Contradiction:
Ease of operationVSDevice complexity

Solution Approach 1:

The instruction tracer circuitry is designed with multi-functionality, serving both as a tracing mechanism for software profiling and as a logging system. It can trace any store instruction to a predetermined memory region, making it a universal solution that handles various logging scenarios without requiring separate dedicated hardware for each function.

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

Solution Approach 2:

The instruction tracer circuitry automatically traces store instructions and generates logging packets without requiring external intervention or complex configuration. It self-manages the tracing process by detecting store instructions, retrieving logging data, and generating packets autonomously, which simplifies the overall system operation despite the added circuitry.

Inventive Principle:
Principle #25Self-service

3Reliability

If logging data is stored in a predetermined memory region, then logging is enabled, but memory resources are consumed

Engineering Contradiction:
Improvelogging capabilityVSAvoidmemory resources
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The system allocates a predetermined memory region specifically for logging data before the logging process begins. This pre-allocation ensures that logging data has a dedicated storage location without interfering with other memory usage, and the memory region is optimized for the specific purpose of storing logging information efficiently.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The predetermined memory region is designated with specific local characteristics suitable for logging data storage. This dedicated memory area has optimized access patterns and storage characteristics that are locally tailored for logging operations, improving efficiency compared to using general-purpose memory resources.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS20230289155A1Tracing instructions in a processing unit
Publication Date: 2023.09.14 NOKIA SOLUTIONS & NETWORKS OY
  • US20230289155A1 patent drawing
  • US20230289155A1 patent drawing
  • US20230289155A1 patent drawing

AI summary

An integrated circuit includes at least one processing unit for executing instructions of at least one computer program. The at least one computer program includes at least one logging command with at least one store instruction to store logging data within a memory region. The integrated circuit includes at least one instruction tracer circuitry configurable for tracing instructions executed by the at least one processing unit, and respectively coupled to the at least one processing unit. Wherein the at least one instruction tracer circuitry is configured to i) intercept the at least one store instruction to the memory region when executed by the at least one processing unit; ii) retrieve the logging data from the intercepted store instruction; and iii) generate a logging packet including the logging data.