The pseudo code for single operand pipeline operation is
- Mov r0,#oprand1_data // moving the operand1 to r0 for First
Operation
- Mov r1, #oprand1_address // moving the operand1 address to r1 for
First Operation
- Mov r2, #resultR0_address // moving the result R0 address to r2 for
First Operation
- Mov r3,#oprand1_data // moving the operand1 to r0 for Second
Operation
- Mov r4, #oprand1_address // moving the operand1 address to r1 for
Second Operation
- Mov r5, #resultR0_address // moving the result R0 address to r2 for Second
Operation
- STR r0, [r1] // write to do a single operand TMU operation for First
Operation
- STR r3, [r4] // write to do a single operand TMU operation for First
Operation
- DMB // to ensure strongly ordered read write
- NOP
- NOP
- NOP
- NOP
- LDR r6, [r2] // moving the TMU result R0 data into r6
- LDR r7, [r5] // moving the TMU result R1 data into r7
Note: TI recommends to read the results in the same order as the operation is
performed.