ADC Controller Context Switching for Multi-Channel Conversion

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional analog-to-digital converter (ADC) controllers face inefficiencies when handling multiple input signals from different applications, requiring time-consuming reprogramming and increased overhead due to the need for CPU involvement and memory-intensive parameter data movement.

Innovation Solution

The implementation of configurable contexts within ADC controllers allows for automated, core-independent conversion processes, where each context is configured with specific parameters and can be saved without transferring data in and out of the CPU, enabling instantaneous switching between contexts and reducing CPU involvement.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If conventional ADC controllers handle multiple input signals from different applications, then the ADC controller can support multiple applications, but the CPU involvement and memory-intensive parameter data movement increase overhead

Engineering Contradiction:
Improvemulti-application supportVSAvoidCPU involvement and overhead
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent segments the ADC controller into multiple independent contexts, where each context is a self-contained configuration set for handling specific applications or channels. This segmentation allows the controller to switch between contexts without requiring CPU intervention for parameter data movement, as each context maintains its own parameters locally. The segmentation resolves the contradiction by enabling multi-application support through contextual division while minimizing CPU overhead within each context.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements preliminary action by pre-configuring multiple contexts with all necessary parameters before runtime. Each context is prepared in advance with application-specific settings, allowing the ADC controller to switch between applications by simply selecting a pre-configured context rather than reprogramming parameters during operation. This eliminates the need for CPU involvement in parameter data movement during application switching, resolving the overhead issue while maintaining versatility.

Inventive Principle:
Principle #10Preliminary action

2Adaptability or versatility

If conventional ADC controllers reprogram parameters for each input channel, then different applications can be handled, but time-consuming reprogramming increases conversion time

Engineering Contradiction:
Improvechannel switching capabilityVSAvoidreprogramming time
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The patent applies preliminary action by pre-configuring all parameter sets for different channels and applications into separate contexts before the ADC operation begins. When channel switching is required, the controller simply switches between pre-configured contexts rather than reprogramming parameters in real-time. This eliminates time-consuming reprogramming operations during conversion, resolving the contradiction between versatility and conversion time.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent creates copies of parameter sets for each application/channel combination, storing them as distinct contexts. Instead of modifying a single parameter set during operation, the system maintains multiple copied configurations and selects the appropriate copy based on the current application. This copying approach enables instantaneous channel switching without reprogramming delays, resolving the time loss issue while maintaining adaptability.

Inventive Principle:
Principle #26Copying

3Adaptability or versatility

If ADC controllers transfer parameter data in and out of CPU, then configuration can be flexible, but data movement increases overhead and reduces efficiency

Engineering Contradiction:
Improveconfiguration flexibilityVSAvoidconversion efficiency
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The patent extracts parameter data from CPU memory and embeds it directly into the ADC controller's context structures. Each context contains complete parameter sets that are self-contained within the ADC hardware, eliminating the need for continuous CPU involvement and data transfer. This extraction resolves the contradiction by maintaining configuration flexibility through programmable contexts while improving productivity by removing the overhead of parameter data movement between CPU and ADC.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent implements self-service by enabling the ADC controller to manage its own parameter configurations through pre-configured contexts. The controller can switch between applications and channels using its internal context selection logic without requiring CPU intervention for parameter loading or configuration changes. This self-service capability maintains configuration flexibility while eliminating the productivity loss associated with CPU data transfer overhead.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS10536156B1Analog-to-digital converter controllers including configurable contexts
Publication Date: 2020.01.14 MICROCHIP TECHNOLOGY INC
  • US10536156B1 patent drawing
  • US10536156B1 patent drawing
  • US10536156B1 patent drawing

AI summary

Various embodiments relate to analog-to-digital converter (ADC) controllers. An ADC controller may include a number of input channels and an ADC selectively coupled to each input channel of the number of input channels. The ADC controller may further include a number of contexts operatively coupled to the ADC, wherein each context of the number of contexts is associated with an input channel of the number of input channels. Further, each context may include at least one register for storing at least one configurable parameter. The ADC controller may also include a sequencer operatively coupled to the number of context and configured to perform a programmed conversion sequence on one or more input channels of the number of input channels based on one or more configurable parameters of one or more contexts of the number of contexts.