Multi-Dimensional Data Permutation for Low-Complexity Error Decorrelation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional error decorrelators require significant memory size and complexity, especially in high-speed communication channels, due to the need for large data permutation and storage, which becomes inefficient as noise correlation increases.
Innovation Solution
The approach involves splitting data permutation into multiple operations across different dimensions, using time-varying permutations and block interleaving to achieve effective data permutation with smaller blocks, reducing gate count and complexity compared to classical designs.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If conventional error decorrelators use large data permutation blocks to handle highly correlated noise, then noise decorrelation performance is improved, but device complexity and memory size increase linearly with throughput and proportionally to the square of memory depth
Solution Approach 1:
The patent divides a large data permutation operation into multiple smaller permutation operations applied sequentially across different dimensions. Instead of permuting all data at once in a single large block, the system applies multiple smaller permutations in sequence (e.g., row-wise permutation followed by column-wise permutation), achieving equivalent decorrelation with reduced memory requirements and lower complexity.
Solution Approach 2:
The patent introduces multi-dimensional permutation by applying permutations along different dimensions (rows, columns, and diagonals) rather than single-dimensional large-block permutation. This dimensional approach allows the system to achieve thorough data mixing and error decorrelation using smaller permutation blocks applied across multiple dimensions, reducing the square-of-memory-depth complexity.
2Reliability
If memory depth is increased to handle higher correlation degrees, then error decorrelation effectiveness is improved, but complexity increases proportionally to the square of memory depth
Solution Approach 1:
The patent segments the memory depth requirement by applying multiple smaller permutations sequentially. Instead of requiring one large permutation buffer, the system uses multiple smaller buffers that are reused across different permutation dimensions, reducing the peak memory depth while maintaining effective decorrelation.
Solution Approach 2:
The patent employs periodic application of permutation operations across different dimensions (row permutation, then column permutation, then diagonal permutation) to achieve thorough mixing. This periodic multi-dimensional approach ensures that errors are effectively decorrelated without requiring proportionally larger memory depth, as each dimension contributes incrementally to the overall decorrelation effect.
3Productivity
If data throughput is increased for high-speed communication channels, then communication speed is improved, but complexity increases linearly with throughput
Solution Approach 1:
The patent segments the data stream into smaller blocks that can be processed independently through multiple permutation dimensions. This segmentation allows parallel processing of different data blocks through the same permutation logic, improving throughput without linearly increasing complexity, as the permutation logic itself remains relatively small and can be reused.
Solution Approach 2:
The patent creates universal permutation logic that can handle multiple permutation dimensions (row, column, diagonal) using the same hardware or software resources. This multi-functional approach allows the system to achieve high throughput by reusing the same permutation engine across different dimensions and data blocks, rather than requiring separate dedicated hardware for each dimension or throughput level.
Data Source
AI summary
Multiple data permutation operations in respective different dimensions are used to provide an overall effective data permutation using smaller blocks of data in each permutation than would be used in directly implementing the overall permutation in a single permutation operation. Data that has been permuted in one permutation operation is block interleaved, and the interleaved data is then permuted in a subsequent permutation operation. A matrix transpose is one example of block interleaving that could be applied between permutation operations.


