SAM3A8C Atmel Corporation, SAM3A8C Datasheet - Page 128

no-image

SAM3A8C

Manufacturer Part Number
SAM3A8C
Description
Manufacturer
Atmel Corporation
Datasheets
11.15 Saturating instructions
11.15.1
11.15.1.1
11.15.1.2
128
128
SAM3X/A
SAM3X/A
SSAT and USAT
Syntax
Operation
This section describes the saturating instructions, SSAT and USAT.
Signed Saturate and Unsigned Saturate to any bit position, with optional shift before saturating.
where:
op
cond
Rd
n
Rm
shift #s
These instructions saturate to a signed or unsigned n-bit value.
The SSAT instruction applies the specified shift, then saturates to the signed range 2
1
The USAT instruction applies the specified shift, then saturates to the unsigned range
0 x 2
For signed n-bit saturation using SSAT, this means that:
For unsigned n-bit saturation using USAT, this means that:
If the returned result is different from the value to be saturated, it is called saturation. If satura-
tion occurs, the instruction sets the Q flag to 1 in the APSR. Otherwise, it leaves the Q flag
unchanged. To clear the Q flag to 0, you must use the MSR instruction, see
To read the state of the Q flag, use the MRS instruction, see
• if the value to be saturated is less than 2
• if the value to be saturated is greater than 2
• otherwise, the result returned is the same as the value to be saturated.
• if the value to be saturated is less than 0, the result returned is 0
• if the value to be saturated is greater than 2
• otherwise, the result returned is the same as the value to be saturated.
x 2
op{cond} Rd, #n, Rm {, shift #s}
SSAT
USAT
n ranges from 1 to 32 for SSAT
n ranges from 0 to 31 for USAT.
ASR #s where s is in the range 1 to 31
LSL #s where s is in the range 0 to 31.
n–1
n
1.
1.
is one of:
Saturates a signed value to a signed range.
Saturates a signed value to an unsigned range.
is an optional condition code, see
is the destination register.
specifies the bit position to saturate to:
is the register containing the value to saturate.
is an optional shift applied to Rm before saturating. It must be one of the following:
n 1
, the result returned is 2
n 1
n
1, the result returned is 2
“Conditional execution” on page
1, the result returned is 2
“MRS” on page
n-1
n
n-1
1
“MSR” on page
11057A–ATARM–17-Feb-12
11057A–ATARM–17-Feb-12
147.
1
96.
148.
n–

Related parts for SAM3A8C