Patent ID: 9519456
Filing Date: 2016-12-13
CPC Classification: G06F

Claim Text:
1. A data processing apparatus for performing a shift function on a binary number, comprising: count determination circuitry configured to determine a number of contiguous bit positions in the binary number having a predetermined bit value, and to output a count value indicative of said number of contiguous bit positions; coarse shifting circuitry configured to determine, for at least one predetermined number of contiguous bit positions, whether said predetermined number of contiguous bit positions within the binary number has said predetermined bit value, and to perform an initial shift operation on the binary number based on said determination in order to produce an intermediate binary number, said coarse shifting circuitry operating in parallel with said count determination circuitry; and fine shifting circuitry configured to perform a further shift operation on the intermediate binary number, based on the count value output by the count determination circuitry, in order to produce a result binary number, wherein said at least one predetermined number of contiguous bit positions comprises a set of multiple different predetermined numbers of contiguous bit positions, and the coarse shifting circuitry is configured, if a plurality of said multiple different predetermined numbers of contiguous bit positions have said predetermined bit value, to select a largest of the predetermined numbers of contiguous bit positions from said plurality, and to perform the initial shift operation based on said selected predetermined number of contiguous bit positions.