Noninterfering multiply-MAC (multiply accumulate) circuit
First Claim
1. A circuit for selecting a multiply operation or a MAC (multiply accumulate) operation comprising:
- a first register operative to store a first data, wherein said first register is addressable using a first address which enables said multiply operation and disables an accumulate operation and is addressable using a second address which enables a MAC operation; and
a second register operative to store a second data, wherein said second register is addressable using a third address which enables said multiply operation and disables said accumulate operation and is addressable using a fourth address which enables said MAC operation.
5 Assignments
0 Petitions
Accused Products
Abstract
A noninterfering multiply-MAC (multiply accumulate) circuit is described. The circuit is operational to perform a MAC (multiply accumulate) operation and to perform a multiply operation without interfering with the accumulate value of the MAC operation. The circuit includes a first register, a second register, a multiplier circuit, and an accumulate circuit. The first register is addressable using either a primary first address or an alias first address. Moreover, the second register is addressable using either a primary second address or an alias second address. The multiplier circuit performs a multiply operation to generate a product value based on the data in the first and second registers after a write operation to either the first register or the second register. The accumulate circuit performs an accumulate operation to generate an accumulate value if either the alias first address or the alias second address is used in the write operation.
-
Citations
23 Claims
-
1. A circuit for selecting a multiply operation or a MAC (multiply accumulate) operation comprising:
-
a first register operative to store a first data, wherein said first register is addressable using a first address which enables said multiply operation and disables an accumulate operation and is addressable using a second address which enables a MAC operation; and a second register operative to store a second data, wherein said second register is addressable using a third address which enables said multiply operation and disables said accumulate operation and is addressable using a fourth address which enables said MAC operation. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A circuit for selectively performing a multiply operation and a MAC (multiply accumulate) operation, comprising:
-
a first register operative to store a first data, wherein said first register is addressable using a first address which indicates said multiply operation is selected and is addressable using a second address which indicates said MAC operation is selected; a second register operative to store a second data, wherein said second register is addressable using a third address which indicates said multiply operation is selected and is addressable using a fourth address which indicates said MAC operation is selected; a multiplier circuit coupled to said first and second registers, wherein said multiplier circuit is operative to perform said multiply operation to generate a product value based on data in said first and second registers after a write operation is performed on any one of said first and second registers; and an accumulator circuit coupled to said multiplier circuit, wherein said accumulator circuit is operative to perform an accumulate operation to generate an accumulate value based on said product value and a previous accumulate value if any one of said second and fourth addresses is used in said write operation. - View Dependent Claims (7, 8, 9, 10)
-
-
11. A controller comprising:
-
a first register operative to store a first data, wherein said first register is addressable using a first address which indicates a multiply operation is selected and is addressable using a second address which indicates a MAC (multiply accumulate) operation is selected; a second register operative to store a second data, wherein said second register is addressable using a third address which indicates said multiply operation is selected and is addressable using a fourth address which indicates said MAC operation is selected; a multiplier circuit coupled to said first and second registers, wherein said multiplier circuit is operative to perform said multiply operation to generate a product value based on data in said first and second registers after a write operation is performed on any one of said first and second registers; and an accumulator circuit coupled to said multiplier circuit, wherein said accumulator circuit is operative to perform an accumulate operation to generate an accumulate value based on said product value and a previous accumulate value if any one of said second and fourth addresses is used in said write operation. - View Dependent Claims (12, 13, 14, 15)
-
-
16. A controller comprising:
-
a first register operative to store a first data, wherein said first register is addressable using a first address which disables an accumulate operation and is addressable using a second address which enables said accumulate operation; and a second register operative to store a second data, wherein said second register is addressable using a third address which disables said accumulate operation and is addressable using a fourth address which enables said accumulate operation. - View Dependent Claims (17, 18, 19, 20)
-
-
21. A method of selectively performing a multiply operation and a MAC (multiply accumulate) operation, comprising the steps of:
-
a) writing a first data to a first register using one of a first address which indicates said multiply operation is selected and a second address which indicates said MAC operation is selected; b) performing said multiply operation using said first data and a second data stored in a second register to generate a product value; and c) performing an accumulate operation to generate an accumulate value based on said product value and a previous accumulate value if said second address is used in said step a). - View Dependent Claims (22, 23)
-
Specification