Because of the holidays, TI E2E™ design support forum responses will be delayed from Dec. 25 through Jan. 2. Thank you for your patience.

This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

C2XLP, AMODE = 1 indirect addressing modes with MOV32, does not work?

Other Parts Discussed in Thread: TMS320F28335

Greetings,

CCS 3.3, cgt 5.2.4, TMS320F28335, running from RAM for now.

I would like to use C2XLP indirect addressing with pointer postfix ARP7 increment, in FPU instruction MOV32. According to CPU datasheet, the AMODE bit has to be set for this addressing mode. I'm writing this assembly routine manually.

OK, the assembler seems to understand my point and shows the correct disassembly in Mixed mode assembly window:

Alas, this does not work. R7H gets weird values (weird but meaningful, actually wrong cells from a data matrix), and XAR7 (the pointer) never increments:

Is my code doomed, is this addressing mode out of question in FPU instructions, or am I missing something very basic here?

Best regards,

Jormaporo

  • HI,

    Ah, I think I solved it myself. I understood the usage of the addressing mode wrong. I changed the "NOP" to "NOP *, ARP7" to steer the ARP to point to correct register, and changed "MOV R7H,*0++, ARP7" to "MOV R7H,*0++, ARP6" to prepare for the parallel MOV32 instruction. All is well now, my bad.

    Jormaporo