DMA Controller Mode Switching for Resource Efficiency

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing System on a Chip (SoC) designs require separate DMA controllers or channels for privilege and normal modes, leading to resource inefficiency as the same DMA controller or channel is not always used by the same privilege level.

Innovation Solution

A direct memory access (DMA) controller with a mode register and configuration interface that allows switching between privilege and normal modes using a single DMA channel, enabling access to either the privilege or normal memory areas based on the register value, thus conserving hardware resources.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If separate DMA controllers or channels are used for privilege and normal modes, then data security is ensured, but hardware resources are wasted

Engineering Contradiction:
Improvedata securityVSAvoidhardware resources
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The DMA channel is designed to serve dual purposes by implementing a mode register that can switch between privilege mode and normal mode. The same DMA channel hardware can be dynamically allocated to different privilege levels based on the register value, making the hardware universal and eliminating the need for separate dedicated channels for each mode.

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

Solution Approach 2:

The DMA controller implements dynamic mode switching through a configurable mode register. The operational state of the DMA channel (privilege or normal mode) can be changed at runtime by modifying the register value, allowing the system to adapt hardware resource allocation dynamically rather than using static separate channels.

Inventive Principle:
Principle #15Dynamics

2Quantity of substance

If a single DMA channel is shared between privilege and normal modes, then hardware resources are saved, but access control to privilege data may be compromised

Engineering Contradiction:
Improvehardware resourcesVSAvoidaccess control
Core Design Contradiction:
Quantity of substanceVSReliability

Solution Approach 1:

The DMA channel implements multi-functionality by being capable of operating in both privilege and normal modes through a single hardware instance. The mode register enables the same physical channel to be universally applied to different security contexts, reducing hardware quantity while maintaining security through software-controlled mode switching.

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

Solution Approach 2:

The mode register acts as an intermediary control mechanism that mediates access to the DMA channel. By setting the mode register value, the system controls whether the DMA channel can access privilege memory areas or is restricted to normal memory areas, providing access control without requiring separate physical channels.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Adaptability or versatility

If the DMA channel can access both privilege and normal areas in privilege mode, then operational flexibility is improved, but security risks increase

Engineering Contradiction:
Improveoperational flexibilityVSAvoidsecurity risks
Core Design Contradiction:
Adaptability or versatilityVSObject-affected harmful factors

Solution Approach 1:

The DMA channel implements dynamic access control where the set of accessible memory areas changes based on the operational mode. In privilege mode, the channel can access both privilege and normal areas, while in normal mode, access is restricted to normal areas only. This dynamic restriction reduces security risks while maintaining operational flexibility when needed.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system changes the access parameters of the DMA channel by modifying the mode register value. This parameter change dynamically alters the permissions of the DMA channel, enabling or disabling access to privilege memory areas based on security requirements, thus managing security risks while preserving flexibility.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS11860804B2Direct memory access (DMA) controller, electronic device using the DMA controller and method of operating the DMA controller
Publication Date: 2024.01.02 REALTEK SEMICON CORP
  • US11860804B2 patent drawing
  • US11860804B2 patent drawing
  • US11860804B2 patent drawing

AI summary

A direct memory access (DMA) controller, an electronic device that uses the DMA controller, and a method of operating the DMA controller are provided. The DMA controller is configured to access a memory that contains a privilege area and a normal area. The method of operating the DMA controller includes the following steps: searching for a DMA channel that is in an idle state in the DMA controller; setting a register value of a mode register of the DMA channel such that the DMA channel operates in a privilege mode; setting a memory address register and a byte count register of the DMA channel; and controlling the DMA channel to transfer data based on the memory address register and the byte count register.