Shared Memory Controller Bus Arbitration

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional microcontroller integrated circuits face challenges in efficiently utilizing data bus terminals for accessing various memory devices of different widths, leading to suboptimal memory data bus bandwidth and utilization.

Innovation Solution

A novel memory controller mechanism that operates in two modes: one for simultaneous independent narrow accesses and another for wider accesses by dynamically switching and sharing data bus terminals and conductors between memory controllers, allowing for increased bandwidth and utilization.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If separate data buses are used for each memory controller, then each controller can perform accesses simultaneously, but the device complexity and loss of substance increase due to unused bus terminals

Engineering Contradiction:
Improvememory access throughputVSAvoidunused data bus terminals
Core Design Contradiction:
ProductivityVSLoss of substance

Solution Approach 1:

The patent merges the data bus terminals of multiple memory controllers into a shared resource. Specifically, memory controllers are configured to share common data bus terminals (e.g., D0-D15) with other masters in the system, allowing these terminals to be used by multiple controllers sequentially rather than being dedicated to single controllers. This reduces the total number of physical bus terminals needed while maintaining simultaneous access capability through time-multiplexed arbitration.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The data bus terminals are designed to serve multiple functions and multiple masters. The same set of data bus terminals can be used by different memory controllers at different times, depending on which controller wins the bus arbitration. This multi-functionality allows the system to achieve high productivity without requiring dedicated separate buses for each controller, thereby reducing material loss.

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

2Productivity

If dedicated data buses are allocated to each memory controller, then simultaneous independent accesses are enabled, but the device complexity increases

Engineering Contradiction:
Improveconcurrent memory access capabilityVSAvoidnumber of data bus sets
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent combines multiple dedicated data bus sets into a shared data bus infrastructure. Instead of providing separate physical data buses for each memory controller, the system uses a common set of data bus terminals that are arbitrated among multiple controllers. This merging approach maintains concurrent access capability through arbitration while significantly reducing the total number of bus terminals and associated complexity.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The patent introduces a bus arbitration mechanism as an intermediary between multiple memory controllers and the shared data bus terminals. The arbitration logic mediates access requests from multiple controllers, granting bus ownership to the appropriate controller based on priority or round-robin schemes. This intermediary enables simultaneous independent accesses to be coordinated without requiring dedicated physical buses for each controller.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Loss of substance

If data bus terminals are shared between memory controllers, then bandwidth utilization improves, but the difficulty of detecting and measuring increases due to arbitration requirements

Engineering Contradiction:
Improvedata bus terminal utilizationVSAvoidbus arbitration control
Core Design Contradiction:
Loss of substanceVSDifficulty of detecting and measuring

Solution Approach 1:

The patent employs arbitration logic as an intermediary that manages shared data bus terminal access. This arbitration mechanism detects and measures bus usage by monitoring access requests from multiple memory controllers and granting bus ownership accordingly. The arbitration logic includes state machines and control signals that track bus ownership, request status, and grant decisions, making the sharing mechanism detectable and measurable despite the added complexity.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The bus arbitration system uses feedback mechanisms to manage shared data bus terminals. The arbitration logic receives feedback from memory controllers regarding their access requests and bus availability status, and adjusts bus grant decisions based on this feedback. This feedback loop enables efficient utilization of shared terminals while providing a structured way to detect and measure arbitration behavior through standardized control signals and state transitions.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS8244994B1Cooperating memory controllers that share data bus terminals for accessing wide external devices
Publication Date: 2012.08.14 IXYS INTL LTD
  • US8244994B1 patent drawing
  • US8244994B1 patent drawing
  • US8244994B1 patent drawing

AI summary

A memory controller mechanism is operable in a first mode and a second mode. In the first mode, a first memory controller portion of the mechanism can use a first set of data terminals to perform a first external bus access operation (EBAO) and a second memory controller portion of the mechanism can use a second set of data terminals to perform a second EBAO. The first and second EBAO operations may be narrow accesses that occur simultaneously. In the second mode, one of the controllers can use both the first and second sets of data terminals to perform a wider third EBAO. The memory controller mechanism can dynamically switch between first mode and second mode operations. In situations in which one of the sets of data terminals would not otherwise be used, performing wide accesses in the second mode using the one set of data terminals improves bus utilization.