Claims
- 1. A method for serially calculating a Fast Hadamard Transform of a first order of a sampled signal from a first channel, comprising the steps of:
serially storing a plurality of Hadamard Transforms of a second order, the second order being less than the first order; computing a sum of a first Hadamard Transform and a second Hadamard Transform from the plurality of Hadamard Transforms of the second order; storing the sum; computing a difference of the first Hadamard Transform and the second Hadamard Transform from the plurality of Hadamard Transforms of the second order; and storing the difference.
- 2. The method of claim 1, wherein the sampled signal contains 2N samples where N is an integer.
- 3. The method of claim 1, wherein the sum of the first Hadamard Transform of the second order and of the second Hadamard Transform of the second order is computed during the same clock cycle and the difference of the first Hadamard Transform of the second order and the second Hadamard Transform of the second order is computed during a second clock cycle.
- 4. The method of claim 1, wherein the sum of the first Hadamard Transform of the second order and of the second Hadamard Transform of the second order is computed during the same clock cycle and the difference of the first Hadamard Transform of the second order and the second Hadamard Transform of the second order is computed during the same clock cycle.
- 5. The method of claim 1, wherein the first order is of the form 2K and the second order is of the form 2J, wherein K is greater than J.
- 6. The method of claim 1, wherein computing the difference of the first Hadamard Transform of the second order and the second Hadamard Transform of the second order comprises the step of
computing a sum of the first Hadamard Transform of the second order and a two's complements of the second Hadamard Transform of the second order.
- 7. The method of claim 1, wherein Hadamard Transforms of order one (1) are samples from the sampled signal.
- 8. The method of claim 1, wherein the Hadamard Transforms of the second order are serially calculated using a method comprising the steps of:
serially storing a plurality of Hadamard Transforms of a third order, the third order being less than the second order; computing a sum of a first Hadamard Transform and a second Hadamard Transform from the plurality of Hadamard Transforms of the third order; storing the sum; computing a difference of the first Hadamard Transform and the second Hadamard Transform from the plurality of Hadamard Transforms of the third order; and storing the difference.
- 9. The method of claim 8, wherein computing a difference of the first Hadamard Transform of the third order and the second Hadamard Transform of the third order comprises the step of
computing a sum of the first Hadamard Transform of the third order and a two's complements of the second Hadamard Transform of the third order.
- 10. The method of claim 8, wherein Hadamard Transforms of order one (1) are samples from the sampled signal.
- 11. The method of claim 8, wherein the sampled signal contains 2N samples where N is an integer.
- 12. The method of claim 8, wherein the sum of the first Hadamard Transform of the third order and the second Hadamard Transform of the third order is computed during a first clock cycle and the difference of the first Hadamard Transform of the third order and the second Hadamard Transform of the third order is computed during a second clock cycle.
- 13. The method of claim 8, wherein the sum of the first Hadamard Transform of the third order and the second Hadamard Transform of the third order is computed during the same clock cycle and the difference of the first Hadamard Transform of the third order and the second Hadamard Transform of the third order is computed during the same clock cycle.
- 14. The method of claim 8, wherein the first order is of the form 2K and the second order is of the form 2J and the third order is of the form 2I, wherein K is greater than J which is greater than I.
- 15. The method of claim 1, wherein the steps of computing and storing sums and differences are applied repeatedly to produce Fast Hadamard Transforms of successively greater order.
- 16. The method of claim 15, wherein the steps of computing and storing sums and differences are first applied to samples of the sampled signal.
- 17. An apparatus for serially calculating a Fast Hadamard Transform of a sampled signal from a first channel, comprising:
a first shift register for serially receiving samples of the signal; a first two's complement generator for producing a two's complement of a first sample of the signal; a first multiplexer for selecting between a first sample of the signal and the two's complement of the signal to produce a multiplexer output; and a first adder for generating a sum of a second sample of the signal and the multiplexer output.
- 18. The apparatus of claim 17, wherein the sampled signal contains 2N samples where N is an integer.
- 19. The apparatus of claim 17, wherein the first adder generates a sum of a first sample of the signal and the second sample of a signal during a first clock cycle and wherein the first adder generates a difference of a first sample of the signal and the second sample of the signal during a second clock cycle.
- 20. The apparatus of claim 17, wherein the first adder generates a sum of a first sample of the signal and the second sample of a signal during the same clock cycle and wherein the first adder generates a difference of a first sample of the signal and the second sample of the signal during the same clock cycle.
- 21. The apparatus of claim 20, wherein the sum and the difference are passed to a second shift register.
- 22. The apparatus of claim 17, wherein the first shift register is a random access memory.
- 23. The apparatus of claim 17, wherein the first shift register is a FIFO.
- 24. The apparatus of claim 17, wherein the first adder is shared with a second channel.
- 25. The apparatus of claim 17 further comprising:
a second shift register for serially receiving the sum from the first adder; a second two's complement generator for producing a two's complement of a signal stored in the second shift register; a second multiplexer for selecting between a signal stored in the second shift register and the two's complement of said signal to produce a multiplexer output; and a second adder for generating a sum of another signal stored in the second shift register and the multiplexer output.
- 26. A method for serially calculating a Fast Hadamard Transform of a sampled signal from a first channel, comprising the steps of:
serially storing samples of the signal; computing a first sum of a first sample of the signal and a last sample of the signal; storing the first sum; computing a second sum of a first sample of the signal and a two's complement of the last sample of the signal; and storing the second sum.
- 27. An apparatus for serially calculating a Fast Hadamard Transform of order 2N of a sampled signal from a first channel, comprising:
a first shift register for serially receiving Hadamard Transforms of order 2N−1; a first two's complement generator for producing a two's complement of a first Hadamard Transform of order 2N−1 that is stored in the first shift register; and; a first adder for generating a sum of a second Hadamard Transform of order 2N−1, and the first Hadamard Transform of the order 2N, the first adder also generating a sum of the second Hadamard Transform of order 2N−1 and a two's complements of the first Hadamard Transform of order 2N−1.
- 28. The apparatus of claim 27, further comprising a first multiplexer for selecting between the first Hadamard Transform of order 2N−1 and the two's complements of the first Hadamard Transform of the order 2N.
- 29. The apparatus of claim 27, further comprising a second shift register for serially receiving Hadamard Transforms of order 2N.
- 30. The apparatus of claim 27, wherein the sampled signal contains 2N samples where N is an integer.
- 31. The apparatus of claim 27, wherein the sum of the second Hadamard Transform of order 2N−1 and the first Hadamard Transform of order 2N−1 is generated during a first clock cycle and wherein the sum of the second Hadamard Transform of order 2N−1 and the two's complements of the first Hadamard Transform of order 2N−1 is generated during a second clock cycle.
- 32. The apparatus of claim 27, wherein the sum of the second Hadamard Transform of order 2N−1 and the first Hadamard Transform of order 2N−1 is generated during the same clock cycle and wherein the sum of the second Hadamard Transform of order 2N−1 and the two's complements of the first Hadamard Transform of order 2N−1 is generated during the same clock cycle.
- 33. The apparatus of claim 27, wherein the first shift register is a random access memory.
- 34. The apparatus of claim 27, wherein the first shift register is a FIFO register.
- 35. The apparatus of claim 27, wherein the first adder is shared with another channel.
- 36. An method for serially calculating a Fast Hadamard Transform of a sampled signal from a first channel, comprising the steps of:
serially storing samples of the signal; computing a first sum of a second sample of the signal and a first sample of the signal; storing the first sum; computing a second sum of the second sample of the signal and a two's complement of the first sample of the signal; and storing the second sum.
- 37. The method of claim 36, further comprising storing the first and second sums in a memory.
- 38. The method of claim 36, wherein the sampled signal contains 2N samples where N is an integer.
- 39. The method of claim 36, wherein the first sum is computed during a first clock cycle and the second sum is computed during a second clock cycle.
- 40. The method of claim 36, wherein the first sum is computed during the same clock cycle and the second sum is computed during the same clock cycle.
CROSS-REFERENCE TO RELATED APPLICATIONS
[0001] This application claims priority to the provisional patent application Ser. No. 60/346,143 filed on Jan. 4, 2002.
Provisional Applications (1)
|
Number |
Date |
Country |
|
60346143 |
Jan 2002 |
US |