Digital signal processor containing scalar processor and a plurality of vector processors operating from a single instruction
First Claim
1. A digital data processor integrated circuit comprising:
- a plurality of functionally identical first processor elements; and
a second processor element;
wherein said plurality of functionally identical first processor elements are bidirectionally coupled to a cache memory via a crossbar switch, and further comprising circuitry, operable during a single cycle, for performing an N-byte operand cache memory read access or an N-byte operand cache memory write access, where the N-byte operand is on other than an N-byte boundary in said cache memory, where N>
1.
3 Assignments
0 Petitions
Accused Products
Abstract
A digital data processor integrated circuit (1) includes a plurality of functionally identical first processor elements (6A) and a second processor element (5). The first processor elements are bidirectionally coupled to a first cache (12) via a crossbar switch matrix (8). The second processor element is coupled to a second cache (11). Each of the first cache and the second cache contain a two-way, set-associative cache memory that uses a least-recently-used (LRU) replacement algorithm and that operates with a use-as-fill mode to minimize a number of wait states said processor elements need experience before continuing execution after a cache-miss. An operation of each of the first processor elements and an operation of the second processor element are locked together during an execution of a single instruction read from the second cache. The instruction specifies, in a first portion that is coupled in common to each of the plurality of first processor elements, the operation of each of the plurality of first processor elements in parallel. A second portion of the instruction specifies the operation of the second processor element. Also included is a motion estimator (7) and an internal data bus coupling together a first parallel port (3A), a second parallel port (3B), a third parallel port (3C), an external memory interface (2), and a data input/output of the first cache and the second cache.
180 Citations
11 Claims
-
1. A digital data processor integrated circuit comprising:
-
a plurality of functionally identical first processor elements; and
a second processor element;
whereinsaid plurality of functionally identical first processor elements are bidirectionally coupled to a cache memory via a crossbar switch, and further comprising circuitry, operable during a single cycle, for performing an N-byte operand cache memory read access or an N-byte operand cache memory write access, where the N-byte operand is on other than an N-byte boundary in said cache memory, where N>
1.- View Dependent Claims (2, 3, 4)
-
-
5. A digital data processor integrated circuit comprising:
-
a plurality of functionally identical first processor elements; and
a second processor element;
whereinsaid plurality of functionally identical first processor elements are bidirectionally coupled to a first cache via a crossbar switch, and said second processor element is coupled to a second cache;
further comprising a motion estimator having inputs coupled to an output of each of said plurality of first processor elements, wherein said motion estimator operates in cooperation with said plurality of first processor elements to determine a best pixel distance value by executing a series of pixel distance calculations that are accumulated, and by a comparison for the best result.
-
-
6. A digital data processor integrated circuit comprising:
-
a plurality of functionally identical first processor elements; and
a second processor element;
whereinsaid plurality of functionally identical first processor elements are bidirectionally coupled to a cache memory via a data reordering logic block, and further comprising circuitry, operable during a single cycle, for performing an N-byte operand cache memory read access or an N-byte operand cache memory write access, where the N-byte operand is comprised of a plurality of discrete values operated on in parallel by said plurality of functionally identical first processor elements, and where the N-byte operand is stored on other than an N-byte boundary in said cache memory, where N>
1.
-
-
7. A digital data processor integrated circuit comprising:
-
a plurality of functionally identical first processor elements; and
a second processor element;
whereinsaid plurality of functionally identical first processor elements are bidirectionally coupled to a cache memory via a data reordering logic block, and further comprising circuitry, operable during a single cycle, for performing an N-byte operand cache memory read access or an N-byte operand cache memory write access, where the N-byte operand is comprised of a plurality of discrete values operated on in parallel by said plurality of functionally identical first processor elements, and where the N-byte operand is stored in an interleaved manner in non-contiguous storage locations in said cache memory, where N>
1.
-
-
8. A digital data processor integrated circuit, comprising;
-
a plurality of functionally identical first processor elements; and
a second processor element;
whereinsaid plurality of functionally identical first processor elements are bidirectionally coupled to said second processor element;
further comprising a third processor element having inputs coupled to an output of each of said plurality of first processor elements, wherein said third processor element operates in cooperation with said plurality of first processor elements to compute a value based on outputs of each of said plurality of first processor elements, wherein said third processor element is comprised of a motion estimation processor element.
-
-
9. A method for operating a digital data processor, comprising:
-
providing the digital data processor to include a plurality of functionally identical first processor elements and a second processor element;
bidirectionally coupling said plurality of fictionally identical first processor elements to a cache memory via a data reordering logic block; and
during a single cycle, performing an N-byte operand cache memory read access or an N-byte operand cache memory write access, where the N-byte operand is comprised of a plurality of discrete values operated on in parallel by said plurality of functionally identical first processor elements, and where the N-byte operand is stored on other than an N-byte boundary in said cache memory, where N>
1.
-
-
10. A method for operating a digital data processor, comprising:
-
providing the digital data processor to include a plurality of functionally identical first processor elements and a second processor element;
bidirectionally coupling said plurality of functionally identical first processor elements to a cache memory via a data reordering logic block; and
during a single cycle, performing an N-byte operand cache memory read access or an N-byte operand cache memory write access, where the N-byte operand is comprised of a plurality of discrete values operated on in parallel by said plurality of functionally identical first processor elements, and where the N-byte operand is stored in an interleaved manner in non-contiguous storage locations in said cache memory, where N>
1.
-
-
11. A method for operating a digital data processor, comprising:
-
providing the digital data processor to include a plurality of functionally identical first processor elements and a second processor element;
further providing a third processor element having inputs coupled to an output of each of said plurality of first processor elements; and
operating said third processor element in cooperation the said plurality of first processor elements to compute a value based on outputs of each of said plurality of first processor elements, wherein said third processor element is comprised of a motion estimation processor element.
-
Specification