
Click above to get retro games delivered to your door ever month!
X-Hacker.org- TMS320C2x DSP - syntax direct [<label>] lact <dma>
[<<Previous Entry] [^^Up^^] [Next Entry>>] [Menu] [About The Guide]
SYNTAX DIRECT [<LABEL>] LACT <dma>
INDIRECT [<LABEL>] {ind}[,<next ARP>]
OPERANDS 0 . dma . 127; 0 . next ARP . 7.
EXECUTION (PC) + 1 . PC
(dma) * 2 ^ T register(3-0) . ACC
If SXM = 1, then (dma) is sign-extended.
If SXM = 0, then (dma) is not sign-extended.
Affected by SXM.
DESCRIPTION The LACT instruction loads the accumulator with a data memory
value that has been left-shifted. The left-shift is specified
by the four LSB's of the T register, resulting is shift
options from 0 to 15 bits. Using the T register's contents as
a shift code provides a variable shift mechanism.
LACT may be used to denormalize a floating-point number if the
actual exponent is placed in the four LSB's of the T register
and the mantissa is referenced by the data memory address.
Note that this method of denormalization can only be used if
the magnitude of the exponent is four bits or less.
WORDS 1
ENCODING 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
+-----------------------------------------------+
|0 1 0 0 0 0 1 0| 0| data memory address | DIRECT
+-----------------------------------------------+
15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
+-----------------------------------------------+
|0 1 0 0 0 0 1 0| 1| see indirect fields | INDIRECT
+-----------------------------------------------+
CYCLES
+------------------------------------------------+
| Cycle Timings for a Single Instruction |
|------------------------------------------------|
| PI/DI | PI/DE | PE/DI | PE/DE | PR/DI | PR/DE |
|-------+-------+-------+--------+-------+-------|
'20 | 1 | 2+d | 1+p | 2+d+p | - | - |
|-------+-------+-------+--------+-------+-------|
'C25 | 1 | 2+d | 1+p | 2+d+p | 1 | 2+d |
|------------------------------------------------|
| Cycle Timings for a Repeat Instruction |
|------------------------------------------------|
'20 | n | 2n+nd | n+p | 2n+nd+p| - | - |
|-------+-------+-------+--------+-------+-------|
'C25 | n | 1+n+nd| n+p |1+n+nd+p| n |1+n+nd |
+------------------------------------------------+
EXAMPLE LACT DAT1 (DP = 6)
or
LACT * If current auxiliary register contains 769.
BEFORE AFTER
dm769 >1376 dm769 >1376
ACC X >98F7EC83 ACC X >13760
C C
T >3014 T >3014
Online resources provided by: http://www.X-Hacker.org --- NG 2 HTML conversion by Dave Pearson