1/29
Looks like no tags are added yet.
Name | Mastery | Learn | Test | Matching | Spaced | Call with Kai | Chat |
|---|
No analytics yet
Send a link to your students to track their progress
FP16 Exponent Alignment
The process of shifting the significand of the operand with the smaller exponent to the right so both floating-point operands use the same binary scale before addition or subtraction.
The operand with the smaller exponent.
Which operand's significand must be shifted during FP16 exponent alignment?
LargerExponent - SmallerExponent
How is the required alignment shift distance determined?
Because floating-point significands represent quantities at scales determined by their exponents, so they cannot be meaningfully added or subtracted until those scales match.
Why must FP16 exponents be aligned before the significands are combined?
The larger exponent.
After the smaller significand has been aligned, which operand's exponent becomes the common exponent for the significand arithmetic?
Shift-right-jam.
What type of shift does Proteus use to align the smaller significand without losing rounding information?
Effective Sign
The sign used for arithmetic after the requested operation has been taken into account; subtraction reverses Operand B's sign before the significands are combined.
EffectiveSignB = SignB XOR Subtract
How does FP16AddSub convert the sign of Operand B for a shared addition/subtraction datapath?
A - B = A + (-B)
What identity allows FP16 addition and subtraction to share the same basic arithmetic path?
Add the aligned significands.
What does the FP16 datapath do when the two operands have equal effective signs?
Subtract the smaller aligned magnitude from the larger magnitude.
What does the FP16 datapath do when the operands have different effective signs?
Magnitude Ordering for FP16 Add/Sub
The comparison of exponent first and significand second to determine which finite operand has the larger absolute magnitude before significand arithmetic.
Compare the unbiased exponents; if they are equal, compare the significands.
How does FP16AddSub determine which finite operand has the larger magnitude?
It guarantees that different-sign significand arithmetic can be performed as larger magnitude - smaller magnitude using unsigned significands.
Why does FP16AddSub identify the larger-magnitude operand before subtraction?
The sign of the larger-magnitude operand.
When aligned operands have different effective signs and unequal magnitudes, which sign becomes the result sign?
A temporary carry bit above the 14-bit extended significand.
What extra storage does FP16AddSub provide for a carry generated by significand addition?
Addition can produce an oversized significand requiring a right normalization shift.
Why can same-sign FP16 addition require normalization toward the right?
Subtraction can cancel leading significand bits, leaving leading zeros that require left normalization.
Why can different-sign FP16 arithmetic require normalization toward the left?
Exact Cancellation
The condition in which equal finite magnitudes with opposite effective signs subtract to exactly zero.
+0
Under round-to-nearest-ties-to-even, what result does Proteus use for exact cancellation such as 5 + (-5) or 5 - 5?
FP16 Numerical Comparison
A comparison that interprets binary16 values according to IEEE-aware sign, zero, infinity, NaN, and magnitude rules rather than simply comparing the complete 16-bit patterns as unsigned integers.
Unordered
A comparison outcome used when at least one FP16 operand is NaN, meaning ordinary greater-than, equal, and less-than relationships do not apply.
Greater=0, Equal=0, Lesser=0, Unordered=1
What comparison outputs does Proteus produce when either FP16 operand is NaN?
Only when at least one compared operand is a signaling NaN.
Under the first-release Proteus comparison policy, when does a NaN comparison assert InvalidOperation?
Equal
How does IEEE-754 numerical comparison treat +0 compared with -0?
For non-NaN binary16 values, remove the sign bit and compare the remaining 15 exponent-and-fraction bits as unsigned magnitudes.
How can Proteus obtain the magnitude ordering of two non-NaN binary16 encodings?
The positive value is greater than the negative value, after the signed-zero equality case has already been handled.
How are two non-NaN FP16 values ordered when their signs differ?
Larger encoded magnitude means larger numerical value.
How is magnitude ordering interpreted when both FP16 operands are positive?
Larger encoded magnitude means smaller numerical value.
How is magnitude ordering interpreted when both FP16 operands are negative?
Negative Magnitude Reversal
The FP16 comparison rule that reverses magnitude ordering for two negative values because a greater absolute magnitude corresponds to a more negative numerical value.