This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

Difference in the current consumption for different register place for few instructions

Hello to all,

While working on different assembly instructions, I have come across a very different problem of the register's place. For example: 

SBC r11,r7,r11 : 3.0217mAmps

but 

SBC r11,r7,r7 : 2.7477mAmps

Similarly, for ORN and MVN also.

For all these (SBC, ORN, MVN) instructions.If

SBC Rd,Rn,Rd

or

ORN Rd, Rn, Rd

or

MVN Rd, Rd,

then the current consumption is comparatively high. This was seen only for these three instructions. Does anyone know about such behavior, present for these instructions?

I am working on ARM Cortex-M4.

Thanking you,

Regards,

Himanshu

Parents
  • Not sure how you program look like, but if you execute a sequence of

    SBC r11,r7,r11

    The value of r11 keep changing, and the toggling activities in the data path increase the power. 

    If you execute a sequence of

    SBC r11,r7,r7

    The value of r11 doesn't change (no toggling in the data path) - hence lower power.

    Hope this helps.

    regards,

    Joseph

Reply
  • Not sure how you program look like, but if you execute a sequence of

    SBC r11,r7,r11

    The value of r11 keep changing, and the toggling activities in the data path increase the power. 

    If you execute a sequence of

    SBC r11,r7,r7

    The value of r11 doesn't change (no toggling in the data path) - hence lower power.

    Hope this helps.

    regards,

    Joseph

Children