Vector Processor Lookup Tables for Memory Bank Conflict Reduction
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Vector processors face performance degradation due to memory bank conflicts when simultaneously reading or writing multiple data pieces, requiring additional hardware to predict and minimize conflicts, which increases complexity and area, and can lead to further performance issues.
Innovation Solution
The use of lookup tables generated by a controller to store and access data, allowing vector processors to read and write data efficiently by dividing memory banks into groups and storing lookup tables in an interleaving form, reducing memory bank conflicts through index vectors and switching units.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If additional hardware is added to predict and minimize memory bank conflicts, then memory access performance is improved, but device complexity and area increase
Solution Approach 1:
The patent creates copy structures (lookup tables) that replicate data from memory banks in a organized manner. These copies allow the vector processor to access data without directly conflicting with memory bank operations, effectively decoupling the processing path from the memory access path and eliminating the need for complex conflict prediction hardware
Solution Approach 2:
The patent introduces lookup tables as intermediary structures between the vector processor and memory banks. These lookup tables serve as a buffer layer that receives data from memory banks and provides it to the vector processor in an organized fashion, mediating the interaction and preventing direct conflicts between memory access and vector operations
2Productivity
If data is organized in lookup tables with interleaved storage, then memory bank conflicts are reduced, but memory organization complexity increases
Solution Approach 1:
The patent divides memory banks into multiple segments or groups, with each lookup table associated with specific memory bank segments. This segmentation allows data to be distributed across different memory bank groups, ensuring that vector operations accessing one lookup table do not conflict with operations on other lookup tables, as they reside in different memory bank segments
Solution Approach 2:
The patent organizes data in lookup tables using an interleaved storage scheme that adds a dimensional organization to the data layout. Instead of simple sequential storage, data elements are interleaved across multiple memory bank groups, creating a multi-dimensional access pattern that eliminates conflicts by distributing accesses across different dimensions of the memory space
Data Source
AI summary
Disclosed is an apparatus comprising: a plurality of memory banks; and a controller for generating a plurality of lookup tables storing data, needed for vector arithmetic operations, copied from data stored in the plurality of memory banks, and generating vector data by reading the data in the generated lookup tables.


