Memory Emulator Using Single-Port Cells and Mapping Tables
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional multi-port memory architectures consume significant area and power, leading to degraded performance, increased chip area, and high power consumption due to the need for additional transistors and complex implementations.
Innovation Solution
Implementing a multi-port memory using primarily single-port read/write (1RW) memory cells, with spare memory banks and mapping tables to emulate two-port read and two-port write (2R2W) functionality, allowing for concurrent access while reducing the number of transistors and complexity.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If a true monolithic multi-port memory is implemented using additional transistors for each port, then multi-port functionality is achieved, but chip area and power consumption increase significantly
Solution Approach 1:
The patent segments the memory system into multiple single-port memory banks (first plurality and second plurality of memory cells) that can be independently accessed. This segmentation allows the system to achieve multi-port functionality through software-controlled access patterns rather than hardware-level multi-port cells, thereby reducing the transistor count and chip area required for each individual memory cell while maintaining the ability to perform concurrent read and write operations across different ports.
2Adaptability or versatility
If a true monolithic multi-port memory is implemented using additional transistors for each port, then multi-port functionality is achieved, but power consumption increases significantly
Solution Approach 1:
By dividing the memory into separate single-port memory banks, the patent reduces the number of transistors that need to be simultaneously active for multi-port operations. Each memory bank can be accessed independently, allowing the system to achieve multi-port functionality with lower power consumption compared to a monolithic implementation where additional transistors for each port would require simultaneous operation.
3Adaptability or versatility
If a true monolithic multi-port memory is implemented, then multi-port functionality is achieved, but performance degrades due to increased complexity
Solution Approach 1:
The patent segments the memory access paths into separate single-port memory banks, which simplifies the internal structure of each memory cell and reduces the complexity of concurrent access control. This segmentation allows for more straightforward read and write operations with fixed latency, improving overall performance compared to a monolithic multi-port memory where increased transistor count and access control complexity would degrade productivity.
4Area of stationary object
If single-port memory cells are used to emulate multi-port functionality, then chip area and power consumption are reduced, but access latency may increase
Solution Approach 1:
The patent employs a controller that pre-manages memory bank selection and mapping before actual data access occurs. By establishing the mapping between logical ports and physical memory banks in advance, and by using dedicated checksum modules for error detection, the system minimizes access latency when actual read or write operations occur, despite using simpler single-port memory cells.
Data Source
AI summary
A memory operative to provide concurrent two-port read and two-port write access functionality includes a memory array comprising first and second pluralities of single-port memory cells organized into a plurality of rows of memory banks, and multiple checksum modules. The second plurality of memory cells are operative as spare memory banks. Each of the checksum modules is associated with a corresponding one of the rows of memory banks. The memory further includes a first controller and multiple mapping tables. The first controller and at least a portion of the first and second pluralities of memory cells enable the memory array to support two-port read or single-port write operations. A second controller is operative to receive read and write access requests, and to map logical and spare memory bank identifiers to corresponding physical memory bank identifiers via the mapping tables to thereby emulate concurrent two-port read and two-port write access functionality.


