Multiple Port Memory Bank Segmentation for Concurrent Access

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional memory devices can only perform a single memory operation per clock cycle, leading to delayed read operations during write cycles, which is inefficient in networking and switching applications that require simultaneous read and write operations.

Innovation Solution

A memory device with multiple content and parity memory banks, where the memory control device services multiple requests by writing new content data to a different content memory bank and updating parity data in corresponding parity banks, allowing up to four memory requests to be serviced in a single clock cycle.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If conventional memory devices perform single memory operation per clock cycle, then device complexity is reduced, but productivity deteriorates due to delayed read operations during write cycles

Engineering Contradiction:
Improvememory operation throughputVSAvoidmemory bank configuration
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The memory device is divided into multiple content memory banks (first content memory bank, second content memory bank) and parity memory banks. This segmentation allows different memory operations to be performed in parallel across different banks, enabling multiple read and write operations to occur simultaneously in a single clock cycle, thereby resolving the contradiction between productivity and device complexity.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a new dimension by adding parity memory banks that store parity data for reconstructing content data. This additional dimension enables read operations to access data from parity banks instead of blocking for write operations in the same bank, allowing concurrent operations and improving throughput without requiring complex multi-port memory structures.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

2Productivity

If multiple read requests are serviced in a single clock cycle by using parity data to reconstruct data, then productivity improves, but device complexity increases due to additional parity memory banks and control logic

Engineering Contradiction:
Improveconcurrent memory operation capabilityVSAvoidparity memory bank structure
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

Parity memory banks serve as intermediary structures that store parity data generated from content data. When multiple read requests need to be serviced concurrently, the parity data in these intermediary banks enables reconstruction of content data without direct access to the content memory banks, allowing parallel operations while managing complexity through a systematic parity storage approach.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The parity memory banks serve multiple functions: storing parity data for error detection, providing data for reconstruction during concurrent read operations, and enabling read operations to proceed without blocking write operations. This multi-functionality improves productivity while the structured approach to parity storage manages the added complexity.

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

3Reliability

If write operations require several clock cycles to complete, then data integrity is maintained, but productivity deteriorates due to delayed read operations

Engineering Contradiction:
Improvedata integrity during write operationsVSAvoidread operation speed
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

By segmenting memory operations across different banks, the system can perform write operations in one content memory bank while simultaneously performing read operations in another content memory bank or in parity memory banks. This segmentation maintains data integrity through proper write sequencing while improving productivity by allowing non-blocking read operations to proceed concurrently.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system performs preliminary actions by pre-establishing parity data in parity memory banks before write operations complete. This allows read operations to access reconstructed data from parity banks during write cycles, maintaining data integrity while enabling concurrent read operations that would otherwise be blocked.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS11403173B2Multiple read and write port memory
Publication Date: 2022.08.02 MARVELL ISRAEL (M L S L) LTD
  • US11403173B2 patent drawing
  • US11403173B2 patent drawing
  • US11403173B2 patent drawing

AI summary

A memory device includes content banks configured to store content data and parity banks configured to store parity data for reconstructing the content data. In response to receiving, in a first clock cycle, a first request requesting a first operation to be performed in a first content bank and a second request requesting to write new content data to the first content bank, the memory device performs the first operation in the first content bank, and writes the new content data to a second content bank. The second content bank is selected from a subset of content banks defined by content banks that correspond with parity banks different from parity banks that correspond with the first content bank. The memory device updates, based on the new content data written to the second content bank, parity data in the parity banks that correspond with the second content bank.