Traitement en cours

Veuillez attendre...

Paramétrages

Paramétrages

Aller à Demande

1. WO2020161458 - CODAGE D'UNE VALEUR SPÉCIALE DANS UN ÉLÉMENT DE DONNÉES ANCRÉES

Note: Texte fondé sur des processus automatiques de reconnaissance optique de caractères. Seule la version PDF a une valeur juridique

[ EN ]

CLAIMS

1. An apparatus comprising:

processing circuitry to perform data processing; and

an instruction decoder to control the processing circuitry to perform an anchored-data processing operation to generate an anchored-data element; in which:

the anchored-data element has an encoding including type information indicative of whether the anchored-data element represents:

a portion of bits of a two’s complement number, said portion of bits corresponding to a given range of significance representable using the anchored-data element; or

a special value other than said portion of bits of a two’s complement number.

2. The apparatus according to claim 1 , in which the processing circuitry is configured to store the type information in the same register as the anchored-data element.

3. The apparatus according to any of claims 1 and 2, in which the anchored-data processing operation comprises a float-to-anchored conversion operation to convert a floating point value to said anchored-data element.

4. The apparatus according to claim 3, in which when the floating-point value represents a special number, the processing circuitry is configured to generate the anchored-data element with the type information indicating that the anchored-data element represents said special value.

5. The apparatus according to claim 4, in which the type information distinguishes whether the special number represented by the floating-point value is positive infinity, negative infinity, or a Not-a-Number.

6. The apparatus according to any of claims 3 to 5, in which in the float-to-anchored conversion operation, the processing circuitry is configured to generate said anchored-data element based on anchor metadata indicative of said given range of significance for the anchored-data element.

7. The apparatus according to any preceding claim, in which the type information specifies whether the anchored-data element is a saturated type of anchored-data element which is dependent on one of:

a previous anchored-data processing operation which caused a corresponding anchored-data element to overflow; and

a previous float-to-anchored conversion operation for which the floating-point value was outside an allowed numeric range for an anchored-data value comprising one or more anchored-data elements.

8. The apparatus according to claim 7, in which in a float-to-anchored conversion operation to convert a floating-point value to said anchored-data element, the processing circuitry is configured to set the type information of said anchored-data element to indicate said saturated type when one of:

said anchored-data element is to represent a most significant element of an anchored-data value comprising one or more anchored-data values, and representing the floating-point value as a two’s complement number would require at least one bit of greater significance than the given range of significance representable using said anchored-data element; or

said anchored-data element is to represent a least significant element of an anchored-data value comprising one or more anchored-data values, and representing the floating-point value as a two’s complement number would require at least one bit of lower significance than the given range of significance representable using said anchored-data element.

9. The apparatus according to any of claims 7 and 8, in which an encoding of the type information is incapable of distinguishing, for an anchored-data element specified as the saturated type, whether the anchored-data element represents a positive or negative value.

10. The apparatus according to any of claims 7 to 9, in which the processing circuitry comprises adding circuitry to perform an addition of two anchored-data elements to generate a result anchored-data element; in which:

when the addition of the two anchored-data elements causes an overflow when generating a result anchored-data element representing a most significant element of an anchored-data value comprising one or more anchored-data elements each indicative of a respective portion of bits of a two’s complement number represented by the anchored data value, the adding circuitry is configured to generate the result anchored-data element with the type information specifying that the result anchored-data element is the saturated type.

11. The apparatus according to any preceding claim, in which the anchored-data element has an encoding in which:

when a predetermined bit of the anchored-data element has a first value, the anchored-data element represents said portion of bits of a two’s complement number; and

when said predetermined bit of the anchored-data element has a second value, the anchored-data element represents said special value.

12. The apparatus according to claim 11 , in which when said predetermined bit of the anchored-data element has said second value, at least one further bit of the anchored-data element represents which type of special value is represented by the anchored-data element.

13. The apparatus according to claim 12, in which when said predetermined bit of the anchored-data element has said first value, said at least one further bit of the anchored-data element represents part of said portion of the two’s complement number or at least one overlap bit for accommodating carries from a part of the anchored-data element representing said portion of the two’s complement number.

14. The apparatus according to any of claims 11 to 13, in which said predetermined bit is a most significant bit of the anchored-data element.

15. The apparatus according to any preceding claim, in which in a given anchored-data processing operation, when an input anchored-data element has said type information specifying that the input anchored-data element is a special value, the processing circuitry is configured to generate a corresponding result anchored-data element with said type information specifying that the result anchored-data element is a special value.

16. The apparatus according to any preceding claim, in which the processing circuitry comprises adding circuitry to perform an addition of two anchored-data elements to generate a result anchored-data element, and

when two type information of the two anchored-data elements indicates that one of the two anchored-data elements represents positive infinity and the other of the two anchored-data elements represents negative infinity, the adding circuitry is configured to generate the result anchored-data element with type information specifying that the result anchored-data element represents a Not-a-Number.

17. The apparatus according to any preceding claim, in which said anchored-data element is an N-bit value including V overlap bits and W non-overlap bits; and

in a float-to-anchored conversion operation for converting a floating-point value to the anchored-data element, when the floating-point value represents a number other than a special number, and the number represented by the floating-point value is within an allowed numeric range, the processing circuitry is configured to set the W non-overlap bits of the anchored-data element to represent a portion of bits of the two’s complement number corresponding to the floating-point value, and to set the V overlap bits of the anchored-data element to a sign-extension of the W non-overlap bits.

18. The apparatus according to claim 17, in which N-V-W > 0.

19. The apparatus according to any of claims 17 and 18, in which the processing circuitry is responsive to an overlap propagation instruction to align the V overlap bits of a first anchored-data element with W non-overlap bits of a second anchored-data element, and add the aligned overlap bits and non-overlap bits to generate an updated value for the second anchored-data element.

20. The apparatus according to claim 19, in which in response to the overlap propagation instruction, when one of the first anchored-data element and the second anchored-data element has type information specifying said special value, the processing circuitry is configured to perform one of:

retain a previous value of the second anchored-data element; or

when the type information of the first anchored-data element indicates a special value, propagate the type information of the first anchored-data element to the type information of the second anchored-data element.

21. The apparatus according to any of claims 19 and 20, in which when the addition of the aligned overlap bits and non-overlap bits causes an overflow of the second anchored-data element, the processing circuitry is configured to set the type information for the second anchored-data element to indicate a saturated type value.

22. The apparatus according to any of claims 17 to 21 , in which the processing circuitry is responsive to an overlap clearing instruction to clear the overlap bits of a target anchored-data element to zero.

23. The apparatus according to claim 22, in which in response to the overlap clearing instruction, when the target anchored-data element has type information specifying said special value, the processing circuitry is configured to retain a previous value of the target anchored-data element.

24. A computer program for controlling a host data processing apparatus to provide an instruction execution environment for execution of instructions; the computer program comprising:

instruction decoding program logic to decode program instructions of target code to control the host data processing apparatus to perform data processing;

said instruction decoding program logic including anchored-data processing program logic to control the host data processing apparatus to perform an anchored-data processing operation to generate an anchored-data element, in which:

the anchored-data element has an encoding including type information indicative of whether the anchored-data element represents:

a portion of bits of a two’s complement number, said portion of bits corresponding to a given range of significance representable using the anchored-data element; or

a special value other than said portion of bits of a two’s complement number.

25. A data processing method comprising:

decoding one or more instructions; and

in response to the decoded instructions, controlling processing circuitry to perform an anchored-data processing operation to generate an anchored-data element, in which:

the anchored-data element has an encoding including type information indicative of whether the anchored-data element represents:

a portion of bits of a two’s complement number, said portion of bits corresponding to a given range of significance representable using the anchored-data element; or

a special value other than said portion of bits of a two’s complement number.