DMA Adapter Circuit for Legacy Peripheral Compatibility

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Legacy peripherals without DMA features are incompatible with newer processors and microcontrollers that have DMA capabilities, limiting the execution of legacy software on newer systems and requiring separate code for DMA operations.

Innovation Solution

A DMA adapter circuit that interfaces with legacy and DMA-enabled peripherals, allowing shared access between the CPU and DMA controller, enabling legacy code to run on DMA-capable systems by utilizing DMA-specific registers and interrupts, and facilitating the coexistence of legacy and DMA-based operations.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If legacy peripherals without DMA features are used in newer processors with DMA capabilities, then compatibility with legacy software is maintained, but data transfer efficiency is limited because the CPU must handle all data transfers

Engineering Contradiction:
Improvecompatibility with legacy softwareVSAvoiddata transfer efficiency
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The patent introduces a DMA adapter as an intermediary component that sits between legacy peripherals and the DMA controller. The adapter translates legacy peripheral operations into DMA-compatible operations, enabling data transfers to occur through the DMA controller even for peripherals that natively lack DMA support. This resolves the contradiction by maintaining legacy software compatibility while enabling efficient DMA-based data transfers through the adapter layer.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The DMA adapter provides multi-functionality by supporting both legacy peripheral interfaces and DMA controller interfaces simultaneously. It can handle traditional CPU-mediated data transfers for legacy compatibility while also enabling direct DMA transfers for improved efficiency. This universal interface approach allows the system to accommodate both legacy and modern operational modes within a single hardware component.

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

2Productivity

If separate code is written for DMA operations, then data transfer efficiency is improved, but code complexity and maintenance burden increase

Engineering Contradiction:
Improvedata transfer efficiencyVSAvoidcode complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The DMA adapter acts as a transparent intermediary that allows legacy code to interact with DMA-capable peripherals through a unified interface. Software can access peripherals using standard routines without needing to determine whether DMA is available or configure separate DMA transfer code. The adapter handles the complexity of DMA coordination in hardware, eliminating the need for complex software logic while maintaining high transfer efficiency.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The DMA adapter automatically manages the complexity of DMA operations without requiring software intervention. It autonomously coordinates between the CPU, DMA controller, and legacy peripherals, handling buffer management, address translation, and transfer coordination. This self-service capability allows legacy software to remain simple while the adapter handles all DMA-related complexity in the background.

Inventive Principle:
Principle #25Self-service

3Ease of operation

If the CPU is fully occupied during data transfer operations, then data transfer control is simplified, but the CPU becomes unavailable to perform other work

Engineering Contradiction:
Improvedata transfer controlVSAvoidCPU availability
Core Design Contradiction:
Ease of operationVSLoss of time

Solution Approach 1:

The DMA adapter serves as an intermediary that offloads data transfer operations from the CPU to the DMA controller. Legacy software can continue to use simple CPU-controlled transfer routines, while the adapter translates these into efficient DMA operations executed by the dedicated DMA controller. This allows the CPU to initiate transfers and immediately proceed with other tasks, eliminating CPU unavailability while maintaining simple control logic through the adapter layer.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The system replaces the mechanical approach of CPU-mediated data transfers with a more advanced DMA-based mechanism. Instead of the CPU executing individual read/write cycles for each data element, the DMA controller autonomously handles bulk data transfers. The adapter enables this substitution while maintaining compatibility with legacy software that expects traditional CPU-controlled transfers, thus improving CPU availability without complicating software control.

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

Data Source

PatentUS20190227966A1Direct Memory Access Adapter
Publication Date: 2019.07.25 MICROCHIP TECHNOLOGY INC
  • US20190227966A1 patent drawing
  • US20190227966A1 patent drawing

AI summary

A processor includes a central processing unit (CPU) and a direct memory access (DMA) adapter circuit. The DMA adapter circuit includes a DMA controller circuit and is configured to interface with a legacy internal hardware peripheral and with a DMA-enabled internal hardware peripheral. The DMA-enabled internal hardware peripheral includes a first special function register (SFR). The legacy internal hardware peripheral includes no DMA features. The CPU is configured to execute a legacy application that accesses a setting in memory through the legacy internal hardware peripheral. Execution of the legacy application includes access by the CPU of the setting in memory. The DMA controller circuit is configured to access the setting in memory during execution of a DMA-enabled application through the DMA-enabled internal hardware peripheral.