3 constraints on cross paths (1x and 2x) – Texas Instruments TMS320C67X/C67X+ DSP User Manual

Page 81

Advertising
background image

Resource Constraints

3-21

Instruction Set

SPRU733

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.

Advertising