Datasheet

UM10398 All information provided in this document is subject to legal disclaimers. © NXP B.V. 2014. All rights reserved.
User manual Rev. 12.3 — 10 June 2014 545 of 547
NXP Semiconductors
UM10398
Chapter 29: Supplementary information
28.4.5 Power management . . . . . . . . . . . . . . . . . . . 472
28.4.5.1 Entering sleep mode. . . . . . . . . . . . . . . . . . . 472
28.4.5.1.1 Wait for interrupt. . . . . . . . . . . . . . . . . . . . . . 472
28.4.5.1.2 Wait for event . . . . . . . . . . . . . . . . . . . . . . . . 472
28.4.5.1.3 Sleep-on-exit . . . . . . . . . . . . . . . . . . . . . . . . 473
28.4.5.2 Wake-up from sleep mode . . . . . . . . . . . . . . 473
28.4.5.2.1 Wake-up from WFI or sleep-on-exit . . . . . . . 473
28.4.5.2.2 Wake-up from WFE . . . . . . . . . . . . . . . . . . . 473
28.4.5.3 Power management programming hints. . . . 473
28.5 Instruction set . . . . . . . . . . . . . . . . . . . . . . . . 473
28.5.1 Instruction set summary . . . . . . . . . . . . . . . . 473
28.5.2 Intrinsic functions . . . . . . . . . . . . . . . . . . . . . 475
28.5.3 About the instruction descriptions. . . . . . . . . 476
28.5.3.1 Operands . . . . . . . . . . . . . . . . . . . . . . . . . . . 476
28.5.3.2 Restrictions when using PC or SP . . . . . . . . 476
28.5.3.3 Shift Operations . . . . . . . . . . . . . . . . . . . . . . 477
28.5.3.3.1 ASR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 477
28.5.3.3.2 LSR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 477
28.5.3.3.3 LSL. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 478
28.5.3.3.4 ROR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 479
28.5.3.4 Address alignment . . . . . . . . . . . . . . . . . . . . 479
28.5.3.5 PC-relative expressions . . . . . . . . . . . . . . . . 479
28.5.3.6 Conditional execution . . . . . . . . . . . . . . . . . . 480
28.5.3.6.1 The condition flags . . . . . . . . . . . . . . . . . . . . 480
28.5.3.6.2 Condition code suffixes . . . . . . . . . . . . . . . . 480
28.5.4 Memory access instructions . . . . . . . . . . . . . 481
28.5.4.1 ADR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 481
28.5.4.1.1 Syntax. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 481
28.5.4.1.2 Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . 482
28.5.4.1.3 Restrictions. . . . . . . . . . . . . . . . . . . . . . . . . . 482
28.5.4.1.4 Condition flags . . . . . . . . . . . . . . . . . . . . . . . 482
28.5.4.1.5 Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . 482
28.5.4.2 LDR and STR, immediate offset. . . . . . . . . . 482
28.5.4.2.1 Syntax. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 482
28.5.4.2.2 Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . 482
28.5.4.2.3 Restrictions. . . . . . . . . . . . . . . . . . . . . . . . . . 483
28.5.4.2.4 Condition flags . . . . . . . . . . . . . . . . . . . . . . . 483
28.5.4.2.5 Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . 483
28.5.4.3 LDR and STR, register offset . . . . . . . . . . . . 483
28.5.4.3.1 Syntax. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 483
28.5.4.3.2 Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . 484
28.5.4.3.3 Restrictions. . . . . . . . . . . . . . . . . . . . . . . . . . 484
28.5.4.3.4 Condition flags . . . . . . . . . . . . . . . . . . . . . . . 484
28.5.4.3.5 Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . 484
28.5.4.4 LDR, PC-relative. . . . . . . . . . . . . . . . . . . . . . 484
28.5.4.4.1 Syntax. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 484
28.5.4.4.2 Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . 484
28.5.4.4.3 Restrictions. . . . . . . . . . . . . . . . . . . . . . . . . . 484
28.5.4.4.4 Condition flags . . . . . . . . . . . . . . . . . . . . . . . 484
28.5.4.4.5 Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . 485
28.5.4.5 LDM and STM . . . . . . . . . . . . . . . . . . . . . . . 485
28.5.4.5.1 Syntax. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 485
28.5.4.5.2 Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . 485
28.5.4.5.3 Restrictions. . . . . . . . . . . . . . . . . . . . . . . . . . 485
28.5.4.5.4 Condition flags . . . . . . . . . . . . . . . . . . . . . . . 486
28.5.4.5.5 Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . 486
28.5.4.5.6 Incorrect examples . . . . . . . . . . . . . . . . . . . . 486
28.5.4.6 PUSH and POP . . . . . . . . . . . . . . . . . . . . . . 486
28.5.4.6.1 Syntax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 486
28.5.4.6.2 Operation. . . . . . . . . . . . . . . . . . . . . . . . . . . 486
28.5.4.6.3 Restrictions . . . . . . . . . . . . . . . . . . . . . . . . . 486
28.5.4.6.4 Condition flags. . . . . . . . . . . . . . . . . . . . . . . 487
28.5.4.6.5 Examples. . . . . . . . . . . . . . . . . . . . . . . . . . . 487
28.5.5 General data processing instructions. . . . . . 487
28.5.5.1 ADC, ADD, RSB, SBC, and SUB. . . . . . . . . 488
28.5.5.1.1 Syntax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 488
28.5.5.1.2 Operation. . . . . . . . . . . . . . . . . . . . . . . . . . . 488
28.5.5.1.3 Restrictions . . . . . . . . . . . . . . . . . . . . . . . . . 489
28.5.5.1.4 Examples. . . . . . . . . . . . . . . . . . . . . . . . . . . 489
28.5.5.2 AND, ORR, EOR, and BIC. . . . . . . . . . . . . . 489
28.5.5.2.1 Syntax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 490
28.5.5.2.2 Operation. . . . . . . . . . . . . . . . . . . . . . . . . . . 490
28.5.5.2.3 Restrictions . . . . . . . . . . . . . . . . . . . . . . . . . 490
28.5.5.2.4 Condition flags. . . . . . . . . . . . . . . . . . . . . . . 490
28.5.5.2.5 Examples. . . . . . . . . . . . . . . . . . . . . . . . . . . 490
28.5.5.3 ASR, LSL, LSR, and ROR . . . . . . . . . . . . . . 490
28.5.5.3.1 Syntax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 490
28.5.5.3.2 Operation. . . . . . . . . . . . . . . . . . . . . . . . . . . 491
28.5.5.3.3 Restrictions . . . . . . . . . . . . . . . . . . . . . . . . . 491
28.5.5.3.4 Condition flags. . . . . . . . . . . . . . . . . . . . . . . 491
28.5.5.3.5 Examples. . . . . . . . . . . . . . . . . . . . . . . . . . . 491
28.5.5.4 CMP and CMN. . . . . . . . . . . . . . . . . . . . . . . 491
28.5.5.4.1 Syntax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 492
28.5.5.4.2 Operation. . . . . . . . . . . . . . . . . . . . . . . . . . . 492
28.5.5.4.3 Restrictions . . . . . . . . . . . . . . . . . . . . . . . . . 492
28.5.5.4.4 Condition flags. . . . . . . . . . . . . . . . . . . . . . . 492
28.5.5.4.5 Examples. . . . . . . . . . . . . . . . . . . . . . . . . . . 492
28.5.5.5 MOV and MVN. . . . . . . . . . . . . . . . . . . . . . . 492
28.5.5.5.1 Syntax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 492
28.5.5.5.2 Operation. . . . . . . . . . . . . . . . . . . . . . . . . . . 493
28.5.5.5.3 Restrictions . . . . . . . . . . . . . . . . . . . . . . . . . 493
28.5.5.5.4 Condition flags. . . . . . . . . . . . . . . . . . . . . . . 493
28.5.5.5.5 Example. . . . . . . . . . . . . . . . . . . . . . . . . . . . 493
28.5.5.6 MULS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 493
28.5.5.6.1 Syntax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 493
28.5.5.6.2 Operation. . . . . . . . . . . . . . . . . . . . . . . . . . . 494
28.5.5.6.3 Restrictions . . . . . . . . . . . . . . . . . . . . . . . . . 494
28.5.5.6.4 Condition flags. . . . . . . . . . . . . . . . . . . . . . . 494
28.5.5.6.5 Examples. . . . . . . . . . . . . . . . . . . . . . . . . . . 494
28.5.5.7 REV, REV16, and REVSH . . . . . . . . . . . . . . 494
28.5.5.7.1 Syntax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 494
28.5.5.7.2 Operation. . . . . . . . . . . . . . . . . . . . . . . . . . . 494
28.5.5.7.3 Restrictions . . . . . . . . . . . . . . . . . . . . . . . . . 495
28.5.5.7.4 Condition flags. . . . . . . . . . . . . . . . . . . . . . . 495
28.5.5.7.5 Examples. . . . . . . . . . . . . . . . . . . . . . . . . . . 495
28.5.5.8 SXT and UXT. . . . . . . . . . . . . . . . . . . . . . . . 495
28.5.5.8.1 Syntax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 495
28.5.5.8.2 Operation. . . . . . . . . . . . . . . . . . . . . . . . . . . 495
28.5.5.8.3 Restrictions . . . . . . . . . . . . . . . . . . . . . . . . . 495
28.5.5.8.4 Condition flags. . . . . . . . . . . . . . . . . . . . . . . 495
28.5.5.8.5 Examples. . . . . . . . . . . . . . . . . . . . . . . . . . . 496
28.5.5.9 TST . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 496
28.5.5.9.1 Syntax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 496
28.5.5.9.2 Operation. . . . . . . . . . . . . . . . . . . . . . . . . . . 496
28.5.5.9.3 Restrictions . . . . . . . . . . . . . . . . . . . . . . . . . 496
28.5.5.9.4 Condition flags. . . . . . . . . . . . . . . . . . . . . . . 496