![background image](http://html1.mh-extra.com/html/texas-instruments/tms320c28x/tms320c28x_reference-manual_1097071529.webp)
XBANZ pma,*ind{,ARPn}
6-372
XBANZ pma,*ind{,ARPn}
C2 x LP Source-Compatible Branch If ARn Is Not Zero
SYNTAX OPTIONS
OPCODE
OBJMODE
RPT
CYC
XBANZ pma,*
0101 0110 0000 1100
CCCC CCCC CCCC CCCC
1
−
4/2
XBANZ pma,*++
0101 0110 0000 1010
CCCC CCCC CCCC CCCC
1
−
4/2
XBANZ pma,*
−−
0101 0110 0000 1011
CCCC CCCC CCCC CCCC
1
−
4/2
XBANZ pma,*0++
0101 0110 0000 1110
CCCC CCCC CCCC CCCC
1
−
4/2
XBANZ pma,*0
−−
0101 0110 0000 1111
CCCC CCCC CCCC CCCC
1
−
4/2
XBANZ pma,*,ARPn
0011 1110 0011 0nnn
CCCC CCCC CCCC CCCC
1
−
4/2
XBANZ pma,*++,ARPn
0011 1110 0011 1nnn
CCCC CCCC CCCC CCCC
1
−
4/2
XBANZ pma,*
−−
,ARPn
0011 1110 0100 0nnn
CCCC CCCC CCCC CCCC
1
−
4/2
XBANZ pma,*0++,ARPn
0011 1110 0100 1nnn
CCCC CCCC CCCC CCCC
1
−
4/2
XBANZ pma,*0
−−
,ARPn
0011 1110 0101 0nnn
CCCC CCCC CCCC CCCC
1
−
4/2
Operands
pma
16-bit immediate program-memory address,
can only access high 64K of program space range (0x3F0000 to 0x3FFFFF)
ARPn
3-bit auxiliary register pointer (ARP0 to ARP7)
Description
If the lower 16 bits of the auxiliary register pointed to by the current auxiliary
register pointer (ARP) is not equal to 0, then a branch is taken by loading the
lower 16 bits of the PC with the 16-bit immediate “pma” value and forcing the
upper 6 bits of the PC to 0x3F. Then, the current auxiliary register, pointed to
by the ARP, is modified as specified by the indirect mode. Then,, if indicated,
the ARP pointer value is changed to point a new auxiliary register:
if( AR[ARP] != 0 )
PC = 0x3F:pma
if(*++ indirect mode) XAR[ARP] = XAR[ARP] + 1;
if(*−− indirect mode) XAR[ARP] = XAR[ARP] – 1;
if(*0++ indirect mode) XAR[ARP] = XAR[ARP] + AR0;
if(*0−− indirect mode) XAR[ARP] = XAR[ARP] − AR0;
if(ARPn specified) ARPn = n;
Note:
This instruction can only transfer program control to a location located in the upper 64K
range of program space (0x3F0000 to 0x3FFFFF). The cycle times for this operation
are:
If branch is taken, then the instruction takes 4 cycles
If branch is not taken, then the instruction takes 2 cycles
Summary of Contents for TMS320C28x
Page 30: ...1 12...
Page 80: ...This page intentionally left blank 2 50 This page intentionally left blank...
Page 269: ...IN loc16 PA 6 112 MOV AL 0 AL 0 UOUT IORegC AL IOspace IORegC AL 10...
Page 308: ...MAXCUL P loc32 6 151 Saturate MOVL Var64 2 ACC Store result into Var64 MOVL Var64 P...
Page 509: ...SUBL ACC P PM 6 352 SUBL ACC P PM ACC S B 11 M X 4 MOVH Y ACC 5 Store Q15 result into Y...
Page 585: ...This page intentionally left blank 7 32 This page intentionally left blank...