Writing Block Circular Buffer Segmentation for Receiver Data Processing
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing receiver systems face inefficiencies in writing and processing input-data-streams to memory-buffers, particularly in aligning symbol boundaries with buffer boundaries, leading to suboptimal processing and increased DSP cycles due to the need for additional buffers and copying of data.
Innovation Solution
A writing-block that writes input-data-streams to a memory-buffer in a successive manner, restarting at the beginning after reaching a predetermined element, and optionally duplicating writes to ensure each input-data-symbol is stored in a continuous piece of the memory-buffer, allowing for direct in-place processing by the reading-block without the need for additional buffers.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If the writing-block writes input-data-stream to memory-buffer in a successive manner from first-element to predetermined-element and then restarts at first-element, then the data processing continuity is improved, but the alignment between symbol boundaries and buffer boundaries deteriorates
Solution Approach 1:
The memory-buffer is divided into two distinct segments: memory-buffer-core (elements 0 to N-1) and memory-buffer-supplement (elements N to 2N-1). The writing-block writes to both segments simultaneously in a duplicated-writing-process, ensuring that each segment contains complete input-data-symbols aligned with symbol boundaries. This segmentation resolves the contradiction by maintaining both continuous processing and proper boundary alignment.
Solution Approach 2:
The writing-block implements a duplicated-writing-process that writes the same input-data-stream to both memory-buffer-core and memory-buffer-supplement simultaneously. This copying approach ensures that complete input-data-symbols are stored in both segments with proper boundary alignment, while allowing the reading-block to read from continuous pieces in either segment without requiring additional buffers.
2Manufacturing precision
If additional buffers are used to maintain symbol boundary alignment, then the boundary alignment precision is improved, but the device complexity increases
Solution Approach 1:
The memory-buffer-core and memory-buffer-supplement are merged into a single unified memory-buffer structure that can be addressed continuously. The writing-block writes to both segments simultaneously using a duplicated-writing-process, while the reading-block reads from continuous pieces spanning either segment. This merging approach maintains precise symbol boundary alignment without requiring separate additional buffers, thereby reducing device complexity.
3Productivity
If data is copied between buffers to ensure continuous storage, then the data continuity is improved, but the processing time increases
Solution Approach 1:
The writing-block performs preliminary action by writing complete input-data-symbols to both memory-buffer-core and memory-buffer-supplement simultaneously before the reading-block needs to read them. This duplicated-writing-process ensures that when the reading-block reads from continuous pieces in either segment, the data is already continuously available without requiring any copying operations, thereby eliminating processing time delays.
4Quantity of substance
If the memory-buffer is written in a circular manner restarting at first-element, then the memory utilization is improved, but the data continuity for processing deteriorates
Solution Approach 1:
The memory-buffer is segmented into memory-buffer-core (elements 0 to N-1) and memory-buffer-supplement (elements N to 2N-1). The writing-block implements a duplicated-writing-process that writes to both segments simultaneously, ensuring that each segment contains complete input-data-symbols. This segmentation allows the reading-block to read from continuous pieces in either segment without interruption, maintaining data continuity while achieving high memory utilization through the circular buffer structure.
Data Source
AI summary
A writing-block for writing data to a memory-buffer, wherein the memory-buffer comprises an ordered sequence of elements and the writing-block is configured to: receive an input-data-stream; and write the input-data-stream to the memory-buffer in a successive manner from a first-element of the ordered sequence to a predetermined-element of the ordered sequence. Following writing to the predetermined-element the writing-block is configured to continue to write the input-data-stream to the memory-buffer in a successive manner restarting at the first-element. In response to writing the predetermined-element, the writing-block is configured to also continue to write the input-data-stream to the memory-buffer in a successive manner from an element immediately following the predetermined element until a second predetermined-element of the memory-buffer.

