Texas Instruments TMS320C67X/C67X+ DSP Car Speaker User Manual


 
Resource Constraints
3-21Instruction SetSPRU733
3.7.3 Constraints on Cross Paths (1X and 2X)
One unit (either a .S, .L, or .M unit) per data path, per execute packet, can read
a source operand from its opposite register file via the cross paths (1X and 2X).
For example, the .S1 unit can read both its operands from the A register file; or
it can read an operand from the B register file using the 1X cross path and the
other from the A register file. The use of a cross path is denoted by an X following
the functional unit name in the instruction syntax (as in S1X).
The following execute packet is invalid because the 1X cross path is being
used for two different B register operands:
MV .S1X B0, A0 ; \ Invalid. Instructions are using the 1X cross path
|| MV .L1X B1, A1 ; / with different B registers
The following execute packet is valid because all uses of the 1X cross path are
for the same B register operand, and all uses of the 2X cross path are for the
same A register operand:
ADD .L1X A0,B1,A1 ; \ Instructions use the 1X with B1
|| SUB .S1X A2,B1,A2 ; / 1X cross paths using B1
|| AND .D1 A4,A1,A3 ;
|| MPY .M1 A6,A1,A4 ;
|| ADD .L2 B0,B4,B2 ;
|| SUB .S2X B4,A4,B3 ; / 2X cross paths using A4
|| AND .D2X B5,A4,B4 ; / 2X cross paths using A4
|| MPY .M2 B6,B4,B5 ;
The operand comes from a register file opposite of the destination, if the x bit
in the instruction field is set.