Circular Queue Prioritized Reads Multiplexer Tree

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Circular queues in integrated circuits lack an efficient mechanism for prioritizing reads, leading to suboptimal data retrieval and potential reading of invalid data, especially in applications requiring sequential data buffering and processing.

Innovation Solution

A circular queue with a priority circuit and multiplexer tree that generates selection signals based on valid bits to prioritize data retrieval, ensuring the oldest valid data is read by assigning higher priority to storage locations with set valid bits closest to the read pointer or the beginning address if none are set beyond it.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If a simple read pointer mechanism is used in a circular queue, then the device complexity is low, but the reliability of data retrieval deteriorates due to potential reading of invalid data

Engineering Contradiction:
Improvedata retrieval reliabilityVSAvoidread prioritization complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The read mechanism is segmented into multiple priority levels (first priority, second priority, third priority read ports), each with its own selection logic. The priority circuit divides the storage locations into different priority groups based on valid bit status and read pointer position, allowing independent selection at each priority level rather than a single unified selection mechanism.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

A priority circuit is introduced as an intermediary component between the storage locations and read ports. This circuit generates selection signals based on valid bits and read pointer position, mediating the selection process to ensure that valid data is prioritized. The multiplexer tree also acts as an intermediary, translating priority signals into actual data path selections.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If storage locations are prioritized based on valid bits and read pointer position, then the productivity of data retrieval is improved, but the device complexity increases due to priority circuits and multiplexer trees

Engineering Contradiction:
Improvedata retrieval efficiencyVSAvoidpriority circuit complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

Valid bits are set in advance for each storage location when data is written, preparing the priority circuit with all necessary information about which locations contain valid data. The read pointer position is continuously maintained and updated, providing real-time information about the current read position without requiring complex search or validation logic during the read operation itself.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The complex mechanical search and validation process is replaced with electronic signal processing. The priority circuit uses logical operations on valid bits and read pointer positions to generate selection signals, and the multiplexer tree uses these signals to automatically route the correct data path. This electronic substitution eliminates the need for sequential searching or complex control logic that would otherwise be required.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

3Adaptability or versatility

If multiple priority levels are implemented for different read ports, then the adaptability of the circular queue is improved, but the device complexity increases due to additional priority circuits and multiplexers

Engineering Contradiction:
Improvemulti-read port adaptabilityVSAvoidmultiplexer tree complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

Multiple priority selection logic functions are merged into a single integrated priority circuit that serves all read ports. Instead of having separate priority circuits for each read port, one priority circuit generates selection signals for all priority levels, and the multiplexer tree structure is shared across all read ports. This merging reduces the total number of components while maintaining full multi-port functionality.

Inventive Principle:
Principle #5Merging (Combining)

Data Source

PatentUS9652371B2Lookahead scheme for prioritized reads
Publication Date: 2017.05.16 APPLE INC
  • US9652371B2 patent drawing
  • US9652371B2 patent drawing
  • US9652371B2 patent drawing

AI summary

A circular queue implementing a scheme for prioritized reads is disclosed. In one embodiment, a circular queue (or buffer) includes a number of storage locations each configured to store a data value. A multiplexer tree is coupled between the storage locations and a read port. A priority circuit is configured to generate and provide selection signals to each multiplexer of the multiplexer tree, based on a priority scheme. Based on the states of the selection signals, one of the storage locations is coupled to the read port via the multiplexers of the multiplexer tree.