Audio Data De-shuffler Using Lookup Table Addressing
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional digital signal processor (DSP) techniques for de-shuffling DV encoded audio samples are inefficient and do not support real-time transcoding between DV and MPEG formats, requiring extensive barrel shifting operations and memory usage, and are not suitable for real-time systems.
Innovation Solution
A data de-shuffler system with a buffer and control circuitry using a look-up table to efficiently de-shuffle audio data samples by generating addresses for storing and retrieving samples, allowing for real-time de-shuffling and transcoding between DV and MPEG formats, with the ability to perform simultaneous de-shuffling and encoding/decoding operations.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If conventional DSP de-shuffling techniques are used, then de-shuffling operation can be performed, but it requires many barrel shifting operations and substantial memory usage, and does not guarantee real-time transcoding
Solution Approach 1:
The patent pre-calculates and stores the de-shuffling permutation sequence in a lookup table during system initialization or manufacturing. This preliminary action eliminates the need for complex runtime calculations and iterative barrel shifting operations, enabling real-time de-shuffling by simply referencing the pre-computed table.
Solution Approach 2:
The patent replaces the mechanical barrel shifting operation with a direct memory address calculation using the lookup table. Instead of physically shifting data bits through multiple stages, the system calculates the target address directly from the input sample position and the pre-stored permutation sequence, dramatically reducing computational complexity.
2Adaptability or versatility
If DV to MPEG transcoding is performed, then format compatibility is achieved, but the DV data rate is several times higher than MPEG data rate requiring efficient de-shuffling
Solution Approach 1:
The de-shuffling permutation table is pre-computed based on the DV standard specification, storing the exact mapping relationship between shuffled and unshuffled sample positions. This preliminary preparation enables the transcoding system to handle the high DV data rate efficiently by directly accessing pre-determined positions rather than computing them in real-time.
Solution Approach 2:
The patent uses the lookup table as a copy of the de-shuffling algorithm results, storing the permutation sequence that would otherwise require complex computation. This copying approach allows the system to maintain format compatibility between DV and MPEG while achieving the computational efficiency needed for real-time transcoding.
3Adaptability or versatility
If real-time audio editing is implemented, then user-selected raw audio data can replace DV audio data, but requires simultaneous de-shuffling and encoding/decoding operations
Solution Approach 1:
The lookup table is prepared in advance, enabling the system to perform de-shuffling operations immediately when audio data arrives. This preliminary preparation is crucial for real-time audio editing, as it allows the system to rapidly de-shuffle incoming DV audio data while simultaneously performing encoding/decoding and user-selected audio replacement without computational bottlenecks.
Solution Approach 2:
The patent replaces complex runtime de-shuffling computation with simple table lookup and address calculation. This substitution enables the system to handle multiple simultaneous operations (de-shuffling, encoding/decoding, audio editing) by eliminating the computational burden of traditional barrel shifting methods.
Data Source
AI summary
A data de-shuffler includes a buffer having a set of addressable locations for storing data and control circuitry for de-shuffling a sequence of shuffled data samples. The control circuitry stores a first data sample of the sequence of shuffled data samples at a first location in the buffer with a first address generated from an entry in a look up table and stores a second data sample at a second location in the buffer with a second address generated by incrementing from the first address by a selected incrementation value. The first and second locations in the buffer place the first and second samples in corresponding positions in an un-shuffled sequence of samples.


