DMA Controller Shuffling Unit for Security

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Direct memory access (DMA) systems are vulnerable to external attacks that can gather information from timing and energy consumption features of block move operations, necessitating enhanced security measures.

Innovation Solution

Incorporating a shuffling unit that randomizes the order of memory access addresses, either by using a lookup table, adding dummy addresses, or altering least significant bits, to create different timing and power consumption patterns, thereby enhancing security.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If DMA controller accesses memory in sequential order, then access efficiency is high, but security is compromised due to predictable timing patterns

Engineering Contradiction:
ImprovesecurityVSAvoidaccess efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent applies preliminary action by pre-generating multiple random access order patterns and storing them in a lookup table before DMA operations begin. The shuffling unit selects and applies a predetermined random pattern from this table, allowing the system to maintain high access efficiency while ensuring security through pre-planned randomization strategies.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent implements dynamics by making the memory access order changeable and adaptive. Instead of fixed sequential access, the system dynamically selects from multiple random access patterns stored in the lookup table, allowing the access sequence to vary while maintaining predictable performance characteristics through the pre-computed patterns.

Inventive Principle:
Principle #15Dynamics

2Reliability

If DMA controller adds shuffling unit for randomization, then security is enhanced, but device complexity increases

Engineering Contradiction:
ImprovesecurityVSAvoidcontroller structure
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent applies segmentation by dividing the shuffling function into distinct modular components: a lookup table storing random patterns, a shuffling unit that selects and applies patterns, and the existing DMA controller. This modular segmentation allows the security enhancement to be added as a separate functional block without fundamentally redesigning the entire DMA controller architecture.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent uses an intermediary approach by introducing a lookup table as a mediator between the DMA controller and memory access operations. The lookup table pre-stores random access patterns, acting as an intermediary that provides randomization without requiring complex real-time generation logic within the DMA controller itself, thus reducing overall system complexity.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Reliability

If DMA controller uses randomized access order, then security against attacks is improved, but access time variability increases

Engineering Contradiction:
Improvesecurity against attacksVSAvoidaccess time variability
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent applies preliminary action by pre-calculating and storing optimal random access patterns in the lookup table during system initialization or idle periods. These pre-computed patterns are designed to provide both security randomization and acceptable performance characteristics, eliminating the need for complex real-time optimization during actual DMA operations.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent applies parameter changes by modifying the access order parameter while maintaining other performance-critical parameters within acceptable ranges. The lookup table stores random patterns that have been optimized to balance security requirements with performance constraints, allowing the system to achieve security enhancement without excessive time variability.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS11954050B2System and method for direct memory access
Publication Date: 2024.04.09 NXP USA INC
  • US11954050B2 patent drawing
  • US11954050B2 patent drawing
  • US11954050B2 patent drawing

AI summary

A method for direct memory access includes: receiving a direct memory access request designating addresses in a data block to be accessed in a memory; randomizing an order of the addresses the data block is accessed; and accessing the memory at addresses in the randomized order. A system for direct memory access is disclosed.