Segmented Memory List Search for Faster Unsorted Matching

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Searching an unsorted list or array is inefficient due to the need for serial comparison in linear searches and the requirement of additional data structures in hash-based searches, which are not applicable to unsorted lists.

Innovation Solution

A memory system is used to store list items in multiple words, where each word stores a portion of each item, allowing for simultaneous comparison of multiple item portions to reduce search time, using control logic to match search items across these portions.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If a linear search is used to search an unsorted list, then the search can be performed on any unsorted list, but the search time increases linearly with the list size

Engineering Contradiction:
Improvesearch applicability to unsorted listsVSAvoidsearch time
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The patent divides each list item into multiple portions (e.g., first portion and second portion) and stores them in separate memory locations. The search process is segmented into multiple phases, where each phase compares one portion of the search item against corresponding portions of list items. This segmentation enables parallel comparison operations, reducing the effective search time while maintaining compatibility with unsorted lists.

Inventive Principle:
Principle #1Segmentation

2Loss of time

If a hash-based search is used, then the search time is reduced, but additional data structures and memory are required

Engineering Contradiction:
Improvesearch timeVSAvoiddata structure complexity
Core Design Contradiction:
Loss of timeVSDevice complexity

Solution Approach 1:

The patent transforms the search problem from a single-dimension comparison (comparing complete items sequentially) into a multi-dimensional approach by dividing items into portions and comparing them in separate phases. This dimensional transformation enables parallel processing of multiple items simultaneously in each phase, achieving hash-like speedup without requiring hash tables or additional complex data structures.

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

3Productivity

If the entire item list is fetched from memory for comparison, then all items can be compared simultaneously, but power consumption increases

Engineering Contradiction:
Improvecomparison throughputVSAvoidpower consumption
Core Design Contradiction:
ProductivityVSUse of energy by moving object

Solution Approach 1:

The patent segments the item list into multiple portions stored in separate memory locations, and segments the search process into multiple phases. In each phase, only the specific portion of items relevant to that phase is fetched and compared. This segmented approach enables simultaneous comparison of multiple items in each phase while minimizing the total amount of data fetched from memory, thereby reducing power consumption.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent performs preliminary organization of item portions in memory before the search begins, arranging them so that corresponding portions of multiple items are located in easily accessible memory locations. This preliminary arrangement enables efficient phase-based comparisons without requiring repeated full memory fetches during the search process, reducing overall power consumption.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS12572328B2List search
Publication Date: 2026.03.10 INFINEON TECHNOLOGIES AMERICAS CORP
  • US12572328B2 patent drawing
  • US12572328B2 patent drawing
  • US12572328B2 patent drawing

AI summary

A memory stores an item list in first words and second words such that each first word stores a first portion of two different list items and each second word stores a second portion of the two different list items. Control logic is configured to compare a first portion of a search item to the first portion of each list item in each first word; in response to the first portion of the search item matching a first portion in a first word, determine the first word is a matching first word; compare a second portion of the search item to the second portion of each list item stored in each second word corresponding to each matching first word; and in response to the second portion of the search item matching a second portion of a list item in a second word, determine the search item matches the list item.