2D Square Constraint Coding for Non-Adjacent Data Arrays
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing two-dimensional data storage technologies face challenges in preventing direct adjacency of data '1' in all four directions (horizontal, vertical, northeast, and southeast) in a quadrilateral grid, which is not effectively addressed by one-dimensional run-length limited encoding methods.
Innovation Solution
A two-dimensional square constraint encoding and decoding method that encodes one-dimensional data streams into 3*2 two-dimensional codewords, ensuring '1' is not adjacent in these directions, using a look-ahead encoding method and sliding-block decoding principle, with a two-state encoder and decoder.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If one-dimensional run-length limited encoding method is used, then horizontal direction constraint is satisfied, but two-dimensional square constraint (all four directions) cannot be achieved
Solution Approach 1:
The patent transitions from one-dimensional encoding to two-dimensional encoding by organizing data into a 3x2 codeword structure. The encoder processes 2-bit input data and outputs a 2x3 two-dimensional codeword array, enabling constraint satisfaction in all four directions (horizontal, vertical, northeast, southeast) rather than just the horizontal direction. This dimensional transformation is the core mechanism that resolves the contradiction between maintaining simplicity and achieving comprehensive directional constraints.
2Reliability
If two-dimensional square constraint encoding is implemented, then data storage reliability is improved, but encoding complexity increases
Solution Approach 1:
The patent segments the encoding process into manageable components: a 2-bit input data stream is divided into pairs, each pair is independently encoded into a 3x2 codeword using a lookup table, and the codewords are arranged in a two-dimensional array. This segmentation allows the complex two-dimensional constraint satisfaction problem to be broken down into simpler, independent encoding operations, reducing overall encoding complexity while maintaining reliability.
Solution Approach 2:
The patent employs a pre-computed encoding table that stores all valid 3x2 codeword patterns satisfying the two-dimensional square constraint. During encoding, the system simply looks up the appropriate codeword in the pre-computed table based on the input data, rather than performing complex real-time constraint checking. This preliminary preparation of encoding patterns significantly reduces the computational complexity of the actual encoding process.
3Productivity
If two-dimensional codeword structure is used, then encoding efficiency reaches approximately 80%, but error propagation may occur
Solution Approach 1:
The patent introduces a two-dimensional codeword structure as an intermediary between the input data stream and the stored data. This codeword structure acts as a buffer that isolates errors - when an error occurs during reading, it is confined to the local 3x2 codeword region and does not propagate throughout the entire data stream. The decoder processes each codeword independently, preventing error propagation and maintaining reliability while achieving high encoding efficiency.
Data Source
AI summary
A two-dimensional square constraint encoding and decoding method and device, relating to the fields of data storage and data communication. The encoding method includes caching a one-dimensional data stream, and dividing the one-dimensional data stream into several sets of one-dimensional 2-bit data; according to an encoding table, encoding each set of 2-bit data into a 3*2 two-dimensional codeword in sequence by an encoder, and then cascading all the two-dimensional codewords into a two-dimensional constraint array in a specified order; the decoding method includes reading the two-dimensional constraint array by a decoder, and dividing the two-dimensional constraint array into several 3*2 two-dimensional codewords; decoding each two-dimensional codeword into the one-dimensional 2-bit data in sequence through a decoding table, and then successively assembling the generated one-dimensional 2-bit data into the one-dimensional data stream and outputting.


