Claims
- 1. A method of performing a one-dimensional discrete cosine transform (1D DCT) on eight samples, the method comprising:
- A. providing an associative processor array featuring a plurality of memory words made up of associative memory cells, said cells being operative to compare values stored therein to a value broadcast to a plurality of said memory words and to write thereto a value broadcast to a plurality of said memory words, operable to implement at least one arithmetic operation in parallel on a plurality of pairs of input values;
- B. inputting at least eight data samples to said associative processor array; and
- C. executing five additions, five subtractions and one multiplication, each of said arithmetic operations being executed in parallel on a plurality of pairs of data elements, said data elements being said input data samples, results of said arithmetic operations and constant values.
- 2. The method of claim 1, wherein at least one of said additions is executed concurrent to at least one of said subtractions.
- 3. The method of claim 1, wherein said arithmetic operations are executed by:
- I. arranging, in a plurality of said memory words, at least a portion of two associated of said data elements within a single of said memory words;
- II. broadcasting a value to a plurality of said memory words and locating instances of said value; and,
- III. writing a broadcast result value, in parallel, to said memory words based on said located instances.
- 4. The method of claim 3, wherein at least one of said additions and subtractions is executed by performing an associative add/sub operations.
- 5. The method of claim 4, wherein said associative processor array features a register array operative to store responders arriving from said memory cells and to communicate said responders to said memory cells, and wherein said arranging is carried out by said register array receiving said responders from a first plurality of said memory cells, shifting said responders in said register array and communicating said responders to a second plurality of said memory cells.
- 6. The method of claim 1, wherein said input data samples include a plurality of 8.times.8 blocks of samples, the method performing the 1D DCT for said plurality of 8.times.8 blocks of samples in parallel.
- 7. The method of claim 1, wherein said associative processor array calculates the DCT in less than two machine cycles per each of said input data samples.
- 8. A method of performing a one-dimensional inverse discrete cosine transform (1D IDCT) of eight coefficients, the method comprising:
- A. providing an associative processor array featuring a plurality of memory words made up of associative memory cells, said cells being operative to compare values stored therein to a value broadcast to a plurality of said memory words and to write thereto a value broadcast to a plurality of said memory words, operable to implement at least one arithmetic operation in parallel on a plurality of pairs of input values;
- B. inputting at least eight DCT coefficients to said associative processor array; and
- C. executing five additions, five subtractions and one multiplication, each of said arithmetic operations being executed in parallel on a plurality of pairs of data elements, said data elements being said input DCT coefficients, results of said arithmetic operations and constant values.
- 9. The method of claim 8, wherein at least one of said additions is executed concurrent to at least one of said subtractions.
- 10. The method of claim 8, wherein said arithmetic operations are executed by:
- (I) arranging, in a plurality of said memory words, at least a portion of two associated of said data elements within a single of said memory words;
- (II) broadcasting a value to a plurality of said memory words and locating instances of said value; and,
- (III) writing a broadcast result value, in parallel, to said memory words based on said located instances.
- 11. The method of claim 10, wherein at least one of said additions and subtractions is executed by performing an associative add/sub operation.
- 12. The method of claim 10, wherein said associative processor array features a register array operative to store responders arriving from said memory cells and to communicate said responders to said memory cells, and wherein said arranging is carried out by said register array receiving said responders from a first plurality of said memory cells, shifting said responders in said register array and communicating said responders to a second plurality of said memory cells.
- 13. The method of claim 8, wherein said input includes a plurality of 8.times.8 blocks of DCT coefficients, the method performing the 1D IDCT for said plurality of 8.times.8 DCT coefficients in parallel.
- 14. The method of claim 8, wherein said associative processor array performs the IDCT in less than two machine cycles per each of said input DCT coefficients.
Parent Case Info
This application is a continuation in part of U.S. patent application Ser. No. 08/353,612 filed on Dec. 9, 1994, now U.S. Pat. No. 5,809,322, and Ser. No. 08/602,871 filed on Feb. 6, 1996, abandoned.
US Referenced Citations (2)
Continuation in Parts (1)
|
Number |
Date |
Country |
Parent |
353612 |
Dec 1994 |
|