The patent badge is an abbreviated version of the USPTO patent document. The patent badge does contain a link to the full patent document.
The patent badge is an abbreviated version of the USPTO patent document. The patent badge covers the following: Patent number, Date patent was issued, Date patent was filed, Title of the patent, Applicant, Inventor, Assignee, Attorney firm, Primary examiner, Assistant examiner, CPCs, and Abstract. The patent badge does contain a link to the full patent document (in Adobe Acrobat format, aka pdf). To download or print any patent click here.
Patent No.:
Date of Patent:
Sep. 10, 2019
Filed:
Jan. 02, 2018
Arm Limited, Cambridge, GB;
Michael Alexander Kennedy, Cambridge, GB;
Neil Burgess, Cardiff, GB;
ARM Limited, Cambridge, GB;
Abstract
An apparatus and method are provided for performing multiply-and-accumulate-products (MAP) operations. The apparatus has processing circuitry for performing data processing, the processing circuitry including an adder array having a plurality of adders for accumulating partial products produced from input operands. An instruction decoder is provided that is responsive to a MAP instruction specifying a first J-bit operand and a second K-bit operand, to control the processing circuitry to enable performance of a number of MAP operations, where the number is dependent on a parameter. For each performed MAP operation, the processing circuitry is arranged to generate a corresponding result element representing a sum of respective E×F products of E-bit portions within an X-bit segment of the first operand with F-bit portions within a Y-bit segment of the second operand, where E<X≤J and F<Y≤K. In response to the MAP instruction, the instruction decoder is configured to control the processing circuitry to perform a rearrangement operation to rearrange the portions of at least one of the first operand and the second operand to form transformed first and second operands so that the E×F products that are required to be summed are aligned with a number of columns of adders within the adder array. Further, the adder array is controlled in dependence on the transformed first and second operands to add the required E×F products using the number of columns of adders within the adder array. Further, the rearrangement performed by the rearrangement operation is controlled in dependence on the parameter such that at least one column of adders used when the parameter indicates the first number of MAP operations is reused when the parameter indicates a second number of MAP operations different to the first number. This provides a particularly area and power efficient implementation for handling MAP operations.