How to use imxrt Low Power feature

Size: px
Start display at page:

Download "How to use imxrt Low Power feature"

Transcription

1 NXP Semiconductors Document Number: AN12085 Application Note Rev. 0, 11/2017 How to use imxrt Low Power feature 1. Introduction This document discusses about low power application design and power consumption measurement on i.mxrt. Low power is a very important feature on i.mxrt. 2. Chip overview This section provides main features of i.mx RT chips i.mx RT chip overview The i.mx RT chip is a Cortex-M7 based chip that operates at speeds up to 600MHz to provide high CPU performance and best real-time response. Cortex-M7 based processor which can operates at speed up to 600MHz. Contents 1. Introduction Chip overview i.mx RT chip overview Low Power Overview Power Supply Run Mode Low Power Mode Power Mode Switch example Application Description Low Power Application Design General description Low Power Mode Enter & Exit Sequence Low Power Design Point Conclusion Revision history Reference KB on-chip RAM which can be flexibly configured as TCM or general-purpose on chip RAM. Advanced power management module with DCDC and LDO to reduces complexity of external power supply and simplifies power sequencing. Various memory interfaces, including SDRAM, Raw NAND FLASH, NOR FLASH, SD/eMMC, Quad SPI NXP B.V.

2 Low Power Overview A wide range of other interfaces for connecting peripherals, such as WLAN, Bluetooth, GPS, displays, and camera sensors. Rich audio & video features, including LCD display, basic 2D graphics, camera interface, SPDIF and I2S audio interface. Provide rich peripheral modules, such as SPI, I2C, Can, Ethernet, Flex-Timers, ADC, etc. Target at Industrial HMI, Motor Control and Home Appliance areas. 3. Low Power Overview 3.1. Power Supply Table 1 shows the external power supply rails of i.mxrt. Table 1. External power supply rails Power Rail Description DCDC_IN Power for DCDC. VDD_HIGH_IN Power for analog. VDD_SNVS_IN Power for SNVS and RTC. USB_OTG1_VBUS Power for USB VBUS. USB_OTG2_VBUS VDDA_ADC Power for 12-bit ADC. VDDA_IN Power for LDO_2P5 and 1P1. NVCC_SD0 Power for GPIO in SDIO1 bank (3.3V mode). Power for GPIO in SDIO1 bank (1.8V mode). NVCC_SD1 Power for GPIO in SDIO2 bank (3.3V mode). Power for GPIO in SDIO2 bank (1.8V mode). NVCC_GPIO IO Power for GPIO in GPIO bank. NVCC_EMC IO Power for GPIO in EMC bank. 2 NXP Semiconductors

3 Low Power Overview 3.2. Run Mode Run Mode Definition Table 2. Run Mode Definition Run Mode Definition Overdrive Run CPU runs at 600MHz, overdrive voltage to 1.25V Bus frequency at full speed All the peripheral is enable and runs at target frequency Full Speed Run CPU runs at 528MHz, full loading, lower voltage to 1.15V Bus frequency at full speed All the peripheral is enable and runs at target frequency Low Speed Run CPU runs at 132MHz, lower voltage to 1.15V Internal bus frequency at half speed Some PLL are powered down 20% peripheral are active, others are in low power mode Low Power Run CPU runs at 24MHz, lower voltage to 0.95V Internal bus frequency at 12MHz All PLLs are powered down, OSC24M powered down, RCOSC24 enabled High-speed peripherals are power down In general, we divide RUN mode into those four modes. The Low Speed Run mode uses bus clock in Full Speed Run mode as core clock and Low Power Run mode uses 24MHz internal OSC as core clock source Run Mode Configuration Table 3. Run Mode Configuration Overdrive Run Full Speed Run Low Speed Run Low Power Run CCM LPM Mode RUN RUN RUN RUN NXP Semiconductors 3

4 Low Power Overview CPU Core 600MHz 528MHz 132Mhz 24MHz L1 Cache ON ON ON ON FlexRAM ON ON ON ON SOC Voltage 1.25V 1.15V 1.15V 0.95V Analog LDO ON ON ON In Weak Mode 24MHz XTAL OSC ON ON ON OFF 24MHz RC OSC OFF OFF OFF ON System PLL ON ON ON OFF All Other PLLs ON ON On as needed On as needed Module Clock ON ON On as needed Peripheral clock off RTC32K ON ON ON ON 3.3. Low Power Mode Low Power Mode Definition Table 4. Low Power Mode Definition Low Power Mode System Idle Low Power Idle Suspend Definition CPU can automatically enter this mode when no thread running All the peripheral can remain active CPU only enter WFI mode, it will have its state retained so the interrupt response can be very short Much lower power than System Idle mode, with longer exit time All PLLs are shut off, analog modules running in low power mode All high-speed peripherals are power gated, low speed peripherals can remain running at low frequency The most power saving mode with longest exit time All PLLs are shut off, XTAL are off, all clocks are shut off except 32K clock 4 NXP Semiconductors

5 Low Power Overview All high-speed peripherals are power gated, low speed peripherals are clock gated SNVS All SOC digital logic, analog modules are shut off only except SNVS domain 32KHz RTC is alive Low Power Mode Configuration Table 5. Low Power Mode Configuration System Idle Low Power Idle Suspend SNVS CCM LPM Mode WAIT WAIT STOP - ARM Core (PDM7) WFI WFI Power Down OFF L1 Cache ON ON Power Down OFF FlexRAM (PDRET) ON ON ON OFF FlexRAM (PDRAM0) ON ON Power Down OFF FlexRAM (PDRAM1) ON/OFF ON/OFF Power Down OFF VDD_SOC_IN Voltage 1.15V 0.95V 0.925V OFF 528 PLL ON Power Down Power Down OFF Other PLL Power Down Power Down Power Down OFF 24MHz XTAL OSC ON OFF OFF OFF 24MHz RC OSC OFF ON OFF OFF LDO2P5 ON OFF OFF OFF LDO1P1 ON OFF OFF OFF WEAK2P5 OFF ON OFF OFF WEAK1P1 OFF ON OFF OFF Bandgap ON OFF OFF OFF Low Power Bandgap ON ON ON OFF AHB clock 33MHz 12MHz OFF OFF NXP Semiconductors 5

6 Power Mode Switch example IPG clock 33MHz 12MHz OFF OFF PER clock 33MHz 12MHz OFF OFF Module Clocks ON as needed ON as needed OFF OFF RTC32K ON ON ON ON NOTE Before entering low power mode, each module will be enabled or disable as the configuration table describes. But don't forget to restore those settings when wakeup Wake up source Table 6. Wake up source System Idle Low Power Idle Suspend SNVS GPIO wakeup YES YES YES - YES (1 PIN only) RTC wakeup YES YES YES YES USB remote wakeup YES YES YES NO Other wakeup source YES YES ON NO NOTE No matter in System Idle, Low Power Idle or Suspend mode, user need to enable the wakeup interrupt in GPC module, or, the wakeup will fail. The only pin that can wakeup the system in SNVS is IOMUXC_SNVS_WAKEUP_GPIO5_IO00. This document will not discuss about USB remote wakeup. 4. Power Mode Switch example 4.1. Application Description The power mode switch example is designed to simulate a customer low power application case. Features: FreeRTOS & Tickless feature support. 6 NXP Semiconductors

7 Power Mode Switch example Support all RUN and low power modes switch. Support run after WFI instruction and reset in suspend reset (controlled by macro). Simulate two running tasks and show task status in power mode switch.application usage Power Mode Switch Menu NXP Semiconductors 7

8 Power Mode Switch example In this menu, user can switch power modes and wakeup from idle, suspend modes Task status show When user select to transfer to a new power mode. The task status will be shown. 1. Start working 2. Power mode transition e.g. Overrun => System Idle Wakeup transfer back to Overrun Wakeup Source Two wakeup source can be selected for System Idle, Low Power Idle and Suspend mode, SW8 key (on EVK board) and GPT timer. SW8 user key wakeup. GPT timer wakeup. When choose GPT timer as wakeup source, another menu will ask user to input a durat ion from 1s to 9s to wake up. 8 NXP Semiconductors

9 5. Low Power Application Design This chapter will give some guides in designing a low power application. Also, we ll give some code examples about low power module enable & disable General description Enter a low power mode is a set of enable/disable modules operations. Here we should pay attention to the low power mode configuration again. Because that s what we will do in each low power entry. Table 7. Low Power Configuration System Idle Low Power Idle Suspend SNVS CCM LPM Mode WAIT WAIT STOP - ARM Core (PDM7) WFI WFI Power Down OFF L1 Cache ON ON Power Down OFF FlexRAM (PDRET) ON ON ON OFF FlexRAM (PDRAM0) ON ON Power Down OFF FlexRAM (PDRAM1) ON/OFF ON/OFF Power Down OFF VDD_SOC_IN Voltage 1.15V 0.95V 0.925V OFF 528 PLL ON Power Down Power Down OFF Other PLL Power Down Power Down Power Down OFF 24MHz XTAL OSC ON OFF OFF OFF 24MHz RC OSC OFF ON OFF OFF NXP Semiconductors 9

10 LDO2P5 ON OFF OFF OFF LDO1P1 ON OFF OFF OFF WEAK2P5 OFF ON OFF OFF WEAK1P1 OFF ON OFF OFF Bandgap ON OFF OFF OFF Low Power Bandgap ON ON ON OFF AHB clock 33MHz 12MHz OFF OFF IPG clock 33MHz 12MHz OFF OFF PER clock 33MHz 12MHz OFF OFF Module Clocks ON as needed ON as needed OFF OFF RTC32K ON ON ON ON 5.2. Low Power Mode Enter & Exit Sequence On i.mxrt, we can enter each low power mode and exit to run. System Idle SNVS RUN Low Power Idle Suspend Figure 1. Low Power Mode Enter & Exit Sequence 10 NXP Semiconductors

11 Enter System Idle mode Low Power Application Design System Idle mode is a simple mode that we don t need to change many modules. Most modules default settings can be kept How to enter To enter system idle mode, we need to change core frequency and disable unused PLLs. The voltage need to be changed accordingly. Before executing WFI instruction, used modules DOZE bits need to be set. Set Clock Mode Change CLPCR[LPM] to WAIT Change PLL settings Change arm PLL to 132MHz Disable unused PLLs Refer to and Adjust voltage Adjust core voltage to 1.15V Execute WFI instruction Set peripheral to enter DOZE mode, IOMUXC_GPR_GPR8 and IOMUXC_GPR_GPR12. Refer to Execute WFI How to exit The exit of System Idle mode is also simple. We need to adjust the core frequency and enable PLLs first and then increase the core voltage if needed. NXP Semiconductors 11

12 Resume peripheral back Clear DOZE bits in IOMUXC_GPR_GPR8 and IOMUXC_GPR_GPR12. Refer to Restore PLL settings Restore arm PLL to 600MHz Enable needed PLLs. Refer to and Adjust voltage Adjust core voltage to 1.25V (for 600MHz frequency) Set Clock Mode Change CLPCR[LPM] to RUN Enter Low Power Idle mode How to enter To enter Low Power Idle mode, we need to do a dozen of things. Please refer to the diagram below. 12 NXP Semiconductors

13 Set Clock Mode Change CLPCR[LPM] to WAIT Switch DCDC Switch DCDC to use internal OSC Power down USBPHY Power down USBPHY Change PLL settings Change arm PLL to use 24MHz OSC Disable all other PLLs Refer to and Enable weak LDO Enable weak 2P5 and 1P1 LDO. Turn off regular 2P5 and 1P1 LDO. Refer to Switch to RC- OSC Switch to24mhz RC-OSC Turn off external 24Mhz OSC Adjust voltage Adjust core voltage to 0.95V Disable regular bandgap Disable regular bandgap and enable low powe r bandgap Refer to Execute WFI instruction Set peripheral to enter DOZE mode, refer to Execute WFI NXP Semiconductors 13

14 How to exit To exit Low Power Idle mode, please refer to the diagram below. Clear DOZE bits Clear DOZE bits in IOMUXC_GPR_GPR8 and IOMUXC_GPR_GPR12. Refer to Adjust voltage Adjust core voltage back to 1.25V (for 600MHz) Switch DCDC Switch DCDC to use external OSC Switch to external OSC Init 24MHz external OSC Switch to external OSC Change PLL settings Change arm PLL to use 24MHz OSC Disable all other PLLs Refer to and Enable regular bandgap Turn on regular bandgap and disable low power bandgap. Refer to Enable refular LDO Enable regular 2P5 and 1P1 LDO. Turn off weak 2P5 and 1P1 LDO. Refer to Set Clock Mode Change CLPCR[LPM] to RUN Enter Suspend mode In suspend mode, as when set CLPCR[LPM] to STOP, the system will help us to power down PLLs, we don t need to adjust frequency. 14 NXP Semiconductors

15 How to enter Set Clock Mode Change CLPCR[LPM] to STOP Set resume entry If use ROM code to handle the resume, set SRC->GPR[0] and SRC- >GPR[1] If boot from APP, set IOMUXC_GPR->GPR16 to vector table. Turn off FlexRAM Turn off FlexRAM per APP request. Refer to Power down USBPHY Power down USBPHY Adjust voltage Adjust core voltage to 0.95V Switch DCDC Switch DCDC to use internal OSC Send power down CPU request Send power down CPU request Execute WFI instruction Set peripheral to enter DOZE mode, refer to Execute WFI NXP Semiconductors 15

16 How to exit Reset Wakeup CPU reset wakeup Turn on FlexRAM Turn on FlexRAM per APP request. Refer to Clear resume entry If use ROM code to handle the resume, set SRC->GPR[0] and SRC- >GPR[1] to 0 If boot from APP, set IOMUXC_GPR->GPR16 to rom code entry. Switch DCDC Switch DCDC to use external OSC Clear CPU Power Down request bit Clear CPU power down request bit Change CLPCR[LPM] to RUN Set Clock Mode 16 NXP Semiconductors

17 SNVS mode How to enter To enter SNVS mode, we need to set SNVS_LPCR[TOP] to 1. Example code: SNVS->LPCR = SNVS_LPCR_TOP_MASK; while (1) /* Shutdown */ { } How to exit Long pressing ON/OFF button (SW2 on EVK board) Low Power Design Point How to change core frequency When need to change core, we also need to consider adjusting the voltage. There s a rule in changing core frequency and voltage. When increasing core frequency, voltage first, frequency second. When decreasing core frequency, frequency first, voltage second How to change PLL frequency The sequence in changing PLL frequency is listed below: Clear POWERDOWN bit. Set ENABLE and BYPASS bits to use bypass clock. Set PLL clock divider. Clear PLL BYPASS bit. Wait for CCM operation finishes by testing CCM_CDHIPR register Example code: /* Wait CCM operation finishes */ while (CCM->CDHIPR!= 0) NXP Semiconductors 17

18 { } NOTE Remember that each time when we need to change PLL frequency, we should use BYPASS clock first, then change PLL frequency and at last, switch PLL back How to enable Tickless Low Power feature in FreeRTOS The FreeRTOS tickless idle mode stops the periodic tick interrupt during idle periods (periods when there are no application tasks that are able to execute), then makes a correcting adjustment to the RTOS tick count value when the tick interrupt is restarted. Stopping the tick interrupt allows the microcontroller to remain in a deep power saving state until an interrupt occurs. NOTE MCU-SDK have already provided fsl_tickless_systick.c and fsl_tickless_gpt.c to implement tickles low power feature. User need to define configuse_tickless_idle in FreeRTOSConfig.h Choose a FreeRTOS Tick timer Normally, we ll use system tick module as tick timer in FreeRTOS. On i.mxrt, the system tick module in Cortex-M7 core can support two timer sources, core clock and 100KHz clock, which is derived from 24M oscillator and divided to 100KHz. As in FreeRTOS, the time consumed in tickless stop will be compensated. The time consumed in tickles stop should not exceed maximum time duration (or FreeRTOS won t be able to know how much time to compensate). The code to calculate maximum duration counts is in function vportsetuptimerinterrupt() in tickless code. ultimercountsforonetick = ( configsystick_clock_hz / configtick_rate_hz ); xmaximumpossiblesuppressedticks = portmax_32_bit_number / ultimercountsforonetick; For system tick module, portmax_32_bit_number is 0x00FFFFFF and normally configtick_rate_hz is set to 1000, meaning that each time tick duration is 1ms. So, in case we choose core clock 600MHz as clock source for system tick module, ultimercountsforonetick will be and xmaximumpossiblesuppressedticks will be , which is also ms ms is too short for a tickless duration. It means when in tickles stop, the system need to wake up every ms to compensate the time. 18 NXP Semiconductors

19 So, when we consider using tickles low power in a FreeRTOS application, we d better not use core clock as systick clock source, but use 100KHz clock source. In this case, ultimercountsforonetick will be 100 and xmaximumpossiblesuppressedticks will be ms, which is about 168s. It s an acceptable duration here. To use 100KHz clock, we just need to define configsystick_clock_hz in FreeRTOSConfig.h. #define configsystick_clock_hz (10000U) Choose a Tickless timer As in tickless mode, FreeRTOS also need to compensate the consumed time, we need to use a timer with maximum time ticks that FreeRTOS can hold. Systick is the first choice for this timer. But in i.mx RT, systick interrupt is not imported in GPC module. So systick interrupt can t wakeup the system, but only the arm core. We need to select another timer as tickless timer. The requirement for a tickless timer will be: Timer. Imported in GPC and can wake up the system. Work in System Idle, Low Power Idle and Suspend mode, even when core and all PLLs are power down. So, we use GPT as tickles timer. GPT module can use 32K RTC (by setting GPT_CR[CLKSRC] = 4) as clock source which can work in System Idle, Low Power Idle and Suspend mode Hook functions before and after WFI instruction FreeRTOS Tickless Idle mode provide two methods. vportsuppressticksandsleep function. In Tickless mode, the system will call vportsuppressticksandsleep function in idle task and pass the expect sleep time in microsecond as parameter. User can implement a customized vportsuppressticksandsleep and Idle task will call this function periodically. Advantage: Can handle WFI instruction as user required. For example, as in suspend mode, the core is power down and thus, the wakeup is indeed a core reset. But as context can be saved, user can run code from WFI after reset. User need to setup a restore point to restore when reset. In this case, it is easier for user to handle the WFI instruction in customer function. Disadvantage: User function need to calculate the tickles period and call vtasksteptick to compensate the consumed time. Note: User can take the vportsuppressticksandsleep function in fsl_tickless_systick.c and fsl_tickless_gpt.c as a reference to compensate the time. NXP Semiconductors 19

20 Two hook functions to call before and after WFI instruction, configpre_sleep_processing and configpost_sleep_processing. If user want to reuse vportsuppressticksandsleep in fsl_tickless_systick.c and fsl_tickless_gpt.c, configpre_sleep_processing and configpost_sleep_processing can be implemented to change and restore modules for a lower power consumption. Advantage: Don t need to care about time compensation. vportsuppressticksandsleep function in fsl_tickless_systick.c and fsl_tickless_gpt.c will do it for you. Disadvantage: Not very flexible. User can t proceed WFI instruction in own function. In Power Mode Switch example, we use the second method to reuse vportsuppressticksandsleep Doze and IPG STOP signal On i.mx RT, before entering low power mode, in order to reduce power, we need to set Doze and Stop bits to ask each module to enter Doze of Stop status. In the example code, we ll enable all supported peripherals DOZE bit, but in an application, the developer should know what modules are needed and enable corresponding modules DOZE bits Doze mode For each module in doze mode, the AHB clock and serial clock domain will be gated off internally, but IPS Bus clock is not gated off. This mode is entered by setting corresponding doze bits in IOMUXC_GPR_GPR8 and IOMUXC_GPR_GPR12, and exited by clear corresponding bits in IOMUXC_GPR_GPR8 and IOMUXC_GPR_GPR12. Example code: NOTE The Doze mode works in all low power modes. So, the Doze bits should be set before entering any low power mode. Before enter low power mode: After wakeup: IOMUXC_GPR->GPR8 = 0xaaaaaaaa; IOMUXC_GPR->GPR12 = 0x a; IOMUXC_GPR->GPR8 = 0x ; IOMUXC_GPR->GPR12 = 0x ; 20 NXP Semiconductors

21 Stop mode When system requires a peripheral device to enter stop mode, it will wait for all transactions to complete and return ACK handshake to system. After ACK handshake returned, the system can gate the AHB Bus clock, IPS Bus clock and serial clock in system level. There is no clock gating action internally. The mode is entered by setting corresponding doze and stop bits in IOMUXC_GPR_GPR8 and IOMUXC_GPR_GPR12, and system should wait for the accordingly bits in IOMUXC_GPR_GPR4 and IOMUXC_GPR_GPR7 to be set. The stop mode works only in Suspend mode. So, the Stop and Doze bits should be set before entering Suspend mode. In the example code, we ll enable all supported peripherals STOP and DOZE bit, but in an customer application, the developer should be aware of what modules are needed and enable corresponding modules STOP and DOZE bits. Example code: Before enter suspend mode: IOMUXC_GPR->GPR4 = 0x ; While ((IOMUXC_GPR->GPR4 & 0x )!= 0x ){}; IOMUXC_GPR->GPR4 = 0x000036ff; IOMUXC_GPR->GPR7 = 0x0000ffff; IOMUXC_GPR->GPR8 = 0xfffcffff; IOMUXC_GPR->GPR12 = 0x a; while ((IOMUXC_GPR->GPR4 & 0x36f90000)!= 0x36f90000) {}; while ((IOMUXC_GPR->GPR7 & 0xffff0000)!= 0xffff0000) {}; After wakeup: IOMUXC_GPR->GPR4 = 0x ; IOMUXC_GPR->GPR7 = 0x ; IOMUXC_GPR->GPR8 = 0x ; IOMUXC_GPR->GPR12 = 0x ; Looking at the codes above, we can see that we send STOP request to EDMA and ENET first. IOMUXC_GPR->GPR4 = 0x ; While ((IOMUXC_GPR->GPR4 & 0x )!= 0x ){}; The reason is that EDMA and ENET are two modules that can act as a master on BUS and initiate transfer. As our code is on SPI Flash, we will not send stop request to SPI Flash. NXP Semiconductors 21

22 For example, CAUTION Please be careful that before entering Suspend mode, if corresponding module s STOP request is asserted, the system should wait for the acknowledge bit to be set. Or, the system may fail to enter the Suspend mode. If the code is in SDRAM and user need to enter Suspend mode. SDRAM need to STOP signal to enter self-refresh mode. Here if we send STOP request to SDRAM and polling for the acknowledge bit to be asserted, we might never get the bit asserted. Because we re running code on SDRAM and the transaction on SDRAM can t STOP. In this way, we should put the code and data to OCRAM or SPI Flash. NOTE: Depending on whether clock gate and IP module s enable bit is set, each IP module may have a different behavior when we send stop signal to it. Some modules can acknowledge to stop signal even clock gate is OFF, for example, PIT. Some modules can t acknowledge to stop signal when clock gate is OFF. But when clock gate is ON, it can acknowledge to stop signal, e.g. EDMA. Some modules can acknowledge to stop signal when clock gate is ON and the module s enable bit is ON. Currently, as we know, only CAN is of this type. So, we ask user to know used modules in their application and set correspondingly bits How to enable weak analog LDO There re two Analog LDO on i.mx RT, regular LDO and low power weak LDO. In Low Power Idle mode, we ll use weak LDO to save power. Enable Weak Analog LDO /* Enable regular 2P5 and wait for stable */ PMU->REG_2P5_SET = PMU_REG_2P5_ENABLE_LINREG_MASK; while ((PMU->REG_2P5 & PMU_REG_2P5_OK_VDD2P5_MASK) == 0) { } /* Turn off weak 2P5 */ PMU->REG_2P5_CLR = PMU_REG_2P5_ENABLE_WEAK_LINREG_MASK; 22 NXP Semiconductors

23 /* Enable regular 1P1 and wait for stable */ PMU->REG_1P1_SET = PMU_REG_1P1_ENABLE_LINREG_MASK; while ((PMU->REG_1P1 & PMU_REG_1P1_OK_VDD1P1_MASK) == 0) { } /* Turn off weak 1P1 */ PMU->REG_1P1_CLR = PMU_REG_1P1_ENABLE_WEAK_LINREG_MASK; Low Power Application Design Disable Weak Analog LDO /* Enable weak 2P5 and turn off regular 2P5 */ PMU->REG_2P5 = PMU_REG_2P5_ENABLE_WEAK_LINREG_MASK; PMU->REG_2P5 &= ~PMU_REG_2P5_ENABLE_LINREG_MASK; /* Enable weak 1P1 and turn off regular 1P1 */ PMU->REG_1P1 = PMU_REG_1P1_ENABLE_WEAK_LINREG_MASK; PMU->REG_1P1 &= ~PMU_REG_1P1_ENABLE_LINREG_MASK; How to disable OCRAM power This SoC has 512 KB of on-chip RAM which is shared by I-TCM, D-TCM and general purpose On Chip RAM (OCRAM). The FlexRAM manages the big on-chip RAM array. The OCRAM have 16 RAM banks, which are divided into Bank0, FlexRAM0 (bank 1-7) and FlexRAM1 (bank 8-16). Description of OCRAM banks is listed below: Table 8. Description of OCRAM banks Bank 0 Bank 1-7 Bank 8-16 Alias Name Bank0 FlexRAM0 FlexRAM1 Power Domain SNVS PDRAM0 PDRAM1 Power Gate Bit N/A GPC_CNTR[PDRAM0_PGE] PGC_MEGA_CTRL[PCR] Power Gate Default Value N/A 1 (Will power down in low power mode) 0 (Won t power down) LPM MODE ON/OFF Status ON Controllable Controllable NXP Semiconductors 23

24 Power down moment In SNVS mode, bank0 is power d own. GPC_CNTR[PDRAM0_PG E] is set and Bank 1 7 will be off when core executes W FI instruction PGC_MEGA_CTRL[PCR] is set and Bank 8 16 will be off immediately NOTE Please pay attention to that when the power gate bit is set, FlexRAM0 won t be OFF immediately, unless core execute WFI instruction. But FlexRAM1 will be OFF immediately. 24 NXP Semiconductors

25 Code examples: Power Down FlexRAM0 and FlexRAM1 /* Turn off FlexRAM1 */ PGC->MEGA_CTRL = PGC_MEGA_CTRL_PCR_MASK; /* Turn off FlexRAM0*/ GPC->CNTR = GPC_CNTR_PDRAM0_PGE_MASK; Power on FlexRAM0 and FlexRAM1 /* Turn on FlexRAM1 */ PGC->MEGA_CTRL &= ~PGC_MEGA_CTRL_PCR_MASK; /* Turn on FlexRAM0*/ GPC->CNTR &= ~GPC_CNTR_PDRAM0_PGE_MASK; Bandgap switch In i.mxrt, there re two bandgap, regular bandgap and low power bandgap. In low power application, we need to switch bandgap to low power bandgap before entering low power wait or stop state. Code example: NOTE In suspend mode, as we ll set STOP mode in CLPCR, which will help to switch bandgap to low power bandgap automatically in low power stop. We don't need to switch bandgap in Suspend mode. Switch bandgap to low power bandgap: /* Switch bandgap */ PMU->MISC0_SET = 0x ; XTALOSC24M->LOWPWR_CTRL_SET = XTALOSC24M_LOWPWR_CTRL_LPBG_SEL_MASK; PMU->MISC0_SET Switch bandgap back to regular bandgap: /* Restore bandgap */ = CCM_ANALOG_MISC0_REFTOP_PWD_MASK; /* Turn on regular bandgap and wait for stable */ CCM_ANALOG->MISC0_CLR = CCM_ANALOG_MISC0_REFTOP_PWD_MASK; while ((CCM_ANALOG->MISC0 & CCM_ANALOG_MISC0_REFTOP_VBGUP_MASK) == 0) { } /* Low power band gap disable */ NXP Semiconductors 25

26 XTALOSC24M->LOWPWR_CTRL_CLR = XTALOSC24M_LOWPWR_CTRL_LPBG_SEL_MASK; PMU->MISC0_CLR = 0x ; Enable DCM mode of DCDC DCDC module provides a Discontinuous Conduction Mode (DCM) and Continuous Conduction Mode (CCM). In run mode, it can operate on the continuous conduction mode or discontinuous conduction mode, depending on the level of the load current. And the discontinuous conduction mode need be enabled by the register configuration. NOTE Normally, we ll use DCDC in RUN mode and DCM mode in low power mode. (User can also use DCM mode in RUN mode if the current in RUN is low). DCM mode can reduce current of DCDC_IN, but DCDC_OUT current will not change. The DCM mode can reduce about 2mA current (3mA to 1mA) in low power mode on DCDC_IN. The DCM mode should be set before entering low power mode. Here s the code example: static void LPM_DCDC_Set_DCM_Mode(void) { /* DCDC Power saving LDO */ DCDC->REG1 &= ~DCDC_REG1_REG_RLOAD_SW_MASK; DCDC->REG0 &= ~(DCDC_REG0_PWD_CMP_OFFSET_MASK DCDC_REG0_PWD_CMP_BATT_DET_MASK DCDC_REG0_OVERCUR_TRIG_ADJ_MASK DCDC_REG0_PWD_ZCD_MASK); DCDC->REG0 = DCDC_REG0_PWD_CMP_BATT_DET_MASK; /* DCDC Power saving enable DCM mode */ DCDC->REG2 = 0x ; /* Disable Step mode, speed up transition */ DCDC_LockTargetVoltage(DCDC); } Don t forget to restore to CCM mode when waked up. User can refer to DCDC chapter in RM for more details on DCM mode. 26 NXP Semiconductors

27 Enable and disable RBC bit Low Power Application Design In Suspend mode, the RBC bit need to set before executing WFI instruction and cleared after wakeup. The RBC bit is in CCM_CCR register. VSTBY bit in CCM_CLPCR will change voltage to standby voltage. This bit need to be set in all low power modes. Enabling RBC_EN and VSTBY will ask analog to enter low power in STOP. Two points need to be noted in enabling and disabling RBC_EN bit. GPC interrupts need to be masked before setting the bit. A delay (3us) is needed after setting the bit. Code example: Enable RBC_EN: /* Mask all GPC interrupts before enabling the RBC counters to */ avoid the counter starting too early if an interupt is already pending. for (i = 0; i < LPM_GPC_IMR_NUM; i++) { } gpcimr[i] = GPC->IMR[i]; GPC->IMR[i] = 0xFFFFFFFFU; /* Enable the RBC bypass counter here to hold off the interrupts. RBC counter * = 32 (1ms). Minimum RBC delay should be 400us. */ CCM->CCR = (CCM_CCR_RBC_EN_MASK CCM_CCR_COSC_EN_MASK CCM_CCR_OSCNT(0xAF)); /* Recover all the GPC interrupts. */ for (i = 0; i < LPM_GPC_IMR_NUM; i++) { GPC->IMR[i] = gpcimr[i]; } NXP Semiconductors 27

28 /* Now delay for a short while (3usec) ARM is at 528MHz at this point * so a short loop should be enough. This delay is required to ensure that * the RBC counter can start counting in case an interrupt is already pending * or in case an interrupt arrives just as ARM is about to assert DSM_request. */ for (i = 0; i < 22 * 24; i++) { } NOP(); Disable RBC_EN: /* Mask all GPC interrupts before disabling the RBC counters */ for (i = 0; i < LPM_GPC_IMR_NUM; i++) { } gpcimr[i] = GPC->IMR[i]; GPC->IMR[i] = 0xFFFFFFFFU; /* Disable the RBC bypass counter */ CCM->CCR &= ~CCM_CCR_RBC_EN_MASK; CCM->CCR &= ~CCM_CCR_REG_BYPASS_COUNT_MASK; /* Now delay for 2 CKIL cycles (61usec). ARM is at 528MHz at this point * so a short loop should be enough. */ for (i = 0; i < 528 * 22; i++) { } NOP(); 28 NXP Semiconductors

29 /* Recover all the GPC interrupts. */ for (i = 0; i < LPM_GPC_IMR_NUM; i++) { GPC->IMR[i] = gpcimr[i]; } Workaround for ERR Errata ERR describes about a case that SoC may fail to enter a low power mode. ERR007265: CCM: When improper low-power sequence is used, the SoC enters low power mode before the ARM core executes WFI. Software workaround: 1) Software should trigger GPR_IRQ to be always pending by setting IOMUX_GPR1_GINT. 2) Software should then unmask GPR_IRQ in GPC before setting CCM Low-Power mode. 3) Software should mask GPR_IRQ right after CCM Low-Power mode is set (set bits 0-1 of CCM_CLPCR). Please search ERR as keyword in example project for code examples How to run after WFI instruction in suspend reset Introduction Suspend mode is a low power mode with least power. But as the core will power down, the wakeup is a reset wakeup. In System Idle and Low Power Idle, when wakeup, the code can continue run after WFI instruction which is convenient but can t get least power consumption. As in Suspend mode, we can get least power consumption, we want the code to continue run after WFI instruction in suspend reset. We need to do some hack for this purpose Why it can run after WFI instruction in suspend reset When SOC enters suspend mode, core is power down, but SDRAM and all other peripherals will retain. When core reset, only core registers will reset, that is, NVIC, SCB, Systick and FPU, etc. About OCRAM power management, please refer to Chapter to control it. SDRAM provide a self-refresh mechanism that in suspend mode, when system enter STOP mode, SDRAM will enter self-refresh mode automatically and data on SDRAM won t lost. NXP Semiconductors 29

30 NOTE Make sure your data can be retained when core is power down Sequence description Save Restore Point Save R4-R12, MSP, PSP, LR, PRIMASK, CONTROL register Save NVIC registers Save SCB registers Execute WFI CPU execute WFI instruction Reset & Restore from Restore Point Reset Restore the system to run after WFI Hook definition in FreeRTOS Tickless mode In the case that we reuse vportsuppressticksandsleep function in fsl_tickless_systick.c or fsl_tickless_gpt.c, we need to implement configpre_sleep_processing and configpost_sleep_processing. Normally, configpre_sleep_processing and configpost_sleep_processing can be defined as functions or macros. But when we want code to run after WFI instruction in suspend reset, we d better define configpre_sleep_processing and configpost_sleep_processing as macros. The reason is as below: 1. The WFI instruction executed in vportsuppressticksandsleep function is not handled by user code. 2. The restore point will be setup in configpre_sleep_processing. 3. When restore, we need to restore the restore point and jump over the WFI instruction. 4. In a function call, the program will jump to an address that will not be located before WFI. So, we can t setup the restore point there. 30 NXP Semiconductors

31 See the diagram below: Setup restore point in configpre_sleep_processing. When restore, jump over WFI. WFI instruction configpost_sleep_processing Figure 2. Suspend Reset Procedure Setup a restore point The restore point is a snapshot of core status that will be restored after reset. What we will do here is to save core registers that need to be saved. General purpose registers, R4-R12 General purpose registers for data operations. Normally, R0-R3 are used to store parameters in a function call, R4-12 stores data that need to be restored in a function call. So here, we will store R4-R12. MSP, PSP MSP, PSP, LR are all very important in this stage. MSP (Main SP) and PSP (Process SP) are banked version of SP. In the system, user can only see one SP register at one time. NXP Semiconductors 31

32 In Thread mode, SPSEL of the CONTROL register indicates the Stack Pointer to use: Table 9. SPSEL bit description CONTROL[SPSEL] Description LR 0 Main Stack Pointer (MSP). This is the reset value. 1 Process Stack Pointer (PSP). In task context of FreeRTOS, PSP will be used. And on reset, the processor will use MSP with the value from address 0x In an application, PSP indicates the task stack pointer and the task stack contains important data of a task. MSP indicates the main stack pointer. Main stack is used in system reset and interrupt context. We need to save both MSP and PSP and in restore operation, we ll restore both MSP and PSP. In a function call, LR stores the return address. In context save function, LR indicates the program address of the point. We need to use LR to set PC register value. Special registers, PRIMASK, CONTROL PRIMASK and CONTROL are used in FreeRTOS. CONTROL register contains information about current stack point. We need to save them. NVIC registers NVIC registers stores interrupt settings. We need to store ISER, STIR and IP. SCB registers The System Control Block (SCB) provides system implementation information, and system control. We will store ACTLR, SCR, CCR, SHCSR, SHPR. Please pay attention to CCR register which contains settings of L1 cache. When CCR register need to restored, DSB and ISB function need to be called, or the system may abnormal. Code example: SCB->CCR = s_corecontext.ccr; /* Cache MUST be invalidated after setting CCR, OR, data access could be failed. */ DSB(); ISB(); 32 NXP Semiconductors

33 Save the context As we need to access SP register, it s better to implement the function in assembly language. Also, as we need to save SP register and any stack operation will change the value of SP, we d better not to touch stack in this function. But as a function call, we also need to restore R4-R12 registers and set LR register s value to PC at the end of the function. Here we describe the implementation method in power mode switch example. 1. Define two array to store general purpose registers and special registers. /* R4, R5, R6, R7, R8, R9, R10, R11, R12, LR */ #define CORE_SAVE_COMMON_REGS_NUM (10) /* PRIMEMASK, CONTROL, MSP, PSP */ #define CORE_SAVE_SPECIAL_REGS_NUM (4) uint32_t s_common_regs_context_buf[core_save_common_regs_num] = { 0 }; uint32_t s_special_regs_context_buf[core_save_special_regs_num] = { 0 }; uint32_t *gpcomregscontextstacktop = s_common_regs_context_buf + CORE_SAVE_COMMON_REGS_NUM; uint32_t *gpcomregscontextstackbottom = s_common_regs_context_buf; uint32_t *gpspecregscontextstacktop = s_special_regs_context_buf + CORE_SAVE_SPECIAL_REGS_NUM; uint32_t *gpspecregscontextstackbottom = s_special_regs_context_buf; 2. Use STMDB instruction to save registers to arrays. LDR LDR STMDB R1, =gpcomregscontextstacktop R0, [R1] R0!, {R4-R12, LR} LDR LDR R1, =gpspecregscontextstacktop R0, [R1] MRS R2, MSP ; MSP => R2 MRS R3, PSP ; PSP => R3 MRS R4, PRIMASK ; PRIMASK => R4 MRS R5, CONTROL ; CONTROL => R5 STMDB R0!, {R2-R5} NXP Semiconductors 33

34 3. Call LPM_IrqStateSave and LPM_CoreStateSave to save NVIC and SCB registers to other data structure. BL BL LPM_IrqStateSave LPM_CoreStateSave 4. Don t forget to restore R4-R12 and set LR value to PC. LDR LDR LDMIA MOV R1, =gpcomregscontextstackbottom R0, [R1] R0!, {R4-R12, LR} PC, LR Where to do the context restores On i.mx RT, there re two methods to do the context restore. We can do the restore either in ROM Code or in Reset procedure. User can set IOMUXC_GPR_GPR16[CM7_INIT_VTOR] to select to boot in rom code or application entry directly. By default, the value of IOMUXC_GPR_GPR16[CM7_INIT_VTOR] is rom code start address. Here re the descriptions of these two methods. Wakeup in ROM Code In this way, we don't need to modify IOMUXC_GPR_GPR16[CM7_INIT_VTOR], but need to set SRC_GPR1 and SRC_GPR2. Code example: /* Set resume entry */ //SRC->GPR[0] = (uint32_t)lpm_resumedsm; //SRC->GPR[1] = context; SRC_GPR1 holds the function entry pointer and SRC_GPR2 holds the argument of the entry function. The ROM code will help to detect whether it is a suspend reset (via PGC->CPU_SR[PSR]) and run the entry function. NOTE There s a big limitation in this way that the function entry pointer must in the OCRAM Bank0 area (0x x20207fff) and thus this way is not recommended. Wakeup in application entry In this way, we ll change IOMUXC_GPR_GPR16[CM7_INIT_VTOR] to wake up in application entry. 34 NXP Semiconductors

35 Code Example: /* Set resume entry */ IOMUXC_GPR->GPR16 = (uint32_t)((uint32_t) VECTOR_TABLE 3); We recommend to wake up in application entry. In the recommended way, we ll detect suspend reset and call the restore function in SystemInit() function. Note: We can t call the restore function in Main. In the startup_mimxrt1052.s, we can see the Reset_Handler function. Reset_Handler CPSID I ; Mask interrupts LDR LDR STR LDR MSR LDR BLX R0, =0xE000ED08 R1, = vector_table R1, [R0] R2, [R1] MSP, R2 R0, =SystemInit R0 CPSIE I ; Unmask interrupts LDR BX R0, = iar_program_start R0 We can see the SystemInit() function is called before iar_program_start. In iar_program_start, all r/w memory spaces will be reset and the context will be destroyed. Thus, if we call restore function in main function, the restore will fail. So we d better detect the suspend reset and do restore in SystemInit() function Restore the context In this stage, we ll reverse the operation that we do in setup the point. Code example: LPM_LoadContextPoint BL LPM_CoreStateRestore NXP Semiconductors 35

36 BL LPM_IrqStateRestore LDR LDR R1, =gpspecregscontextstackbottom R0, [R1] LDMIA R0!, {R2-R5} ; Pop registers MSP, PSP, PRIMASK, CONTROL MSR MSR MSR MSR MSP, R2 PSP, R3 PRIMASK, R4 CONTROL, R5 LDR LDR R1, =gpcomregscontextstackbottom R0, [R1] LDMIA R0!, {R4-R12, LR} ; Pop registers R4-R12, LR MOV R0, LR ADD LR, LR, #12 ; Add a constant to run after WFI MOV PC, LR Here we ll load register values from arrays using LDMIA instruction. NOTE Please pay attention to the immediate operand #12. This constant is an offset which is added to LR and will make PC to run to the program address after WFI instruction. This value might be different in different environment. Please calculate the constant in different applications. The constant can be known in disassembly window in IAR SDRAM Data Storage Suggestion In power mode switch example, we put code on SPI Flash and Data on FlexRAM0. But in most applications, user may want to use SDRAM to store data. SDRAM can enter self-refresh mode automatically in Suspend and data won t be lost. CAUTION Before entering Suspend mode, we need to send STOP request to SDRAM to ask SDRAM to enter self-refresh mode. Here we should avoid accessing SDRAM and use variable in OCRAM. 36 NXP Semiconductors

37 6. Conclusion This document mainly describes how to measure power consumption on i.mx RT and give a lot of design details in designing a low power application. 7. Revision history Reference Revision number Date Substantive changes 0 11/2017 Initial release 8. Reference 1. i.mx RT 1050 Reference Manual. 2. ARM Cortex M7 Reference Manual.. NXP Semiconductors 37

38 How to Reach Us: Home Page: nxp.com Web Support: nxp.com/support Information in this document is provided solely to enable system and software implementers to use NXP products. There are no express or implied copyright licenses granted hereunder to design or fabricate any integrated circuits based on the information in this document. NXP reserves the right to make changes without further notice to any products herein. NXP makes no warranty, representation, or guarantee regarding the suitability of its products for any particular purpose, nor does NXP assume any liability arising out of the application or use of any product or circuit, and specifically disclaims any and all liability, including without limitation consequential or incidental damages. Typical parameters that may be provided in NXP data sheets and/or specifications can and do vary in different applications, and actual performance may vary over time. All operating parameters, including typicals, must be validated for each customer application by customer s technical experts. NXP does not convey any license under its patent rights nor the rights of others. NXP sells products pursuant to standard terms and conditions of sale, which can be found at the following address: nxp.com/salestermsandconditions. NXP, the NXP logo, Freescale, the Freescale logo, and Kinetis,are trademarks of NXP B.V. All other product or service names are the property of their respective owners. Arm, the Arm logo, and Cortex are registered trademarks of Arm Limited (or its subsidiaries) in the EU and/or elsewhere. mbed is a trademark of Arm Limited (or its subsidiaries) in the EU and/or elsewhere. All rights reserved. IEEE nnn, nnn, and nnn are registered trademarks of the Institute of Electrical and Electronics Engineers, Inc. (IEEE). This product is not endorsed or approved by the IEEE NXP B.V. Document Number: AN12085 Rev. 0 11/2017

Power Consumption and Measurement of i.mx RT1020

Power Consumption and Measurement of i.mx RT1020 NXP Semiconductors Document Number: AN12204 Application Note Rev. 0, 06/2018 Consumption and Measurement of i.mx RT1020 1. Introduction This document discusses about the power consumption of i.mx RT1020.

More information

Measuring Interrupt Latency

Measuring Interrupt Latency NXP Semiconductors Document Number: AN12078 Application Note Rev. 0, 10/2017 Measuring Interrupt Latency 1. Introduction The term interrupt latency refers to the delay between the start of an Interrupt

More information

Using the i.mx RT FlexRAM

Using the i.mx RT FlexRAM NXP Semiconductors Document Number: AN12077 Application Note Rev. 0, 10/2017 Using the i.mx RT FlexRAM 1. Introduction This document describes the flexible memory array available on the i.mx RT MCUs. The

More information

MIMXRT1020 EVK Board Hardware User s Guide

MIMXRT1020 EVK Board Hardware User s Guide NXP Semiconductors Document Number: MIMXRT1020EVKHUG User's Guide Rev. 0, 05/2018 MIMXRT1020 EVK Board Hardware User s Guide 1. Introduction This Hardware User s Guide for the MIMXRT1020 Evaluation Kit

More information

i.mxrt1050 Product Lifetime Usage Estimates

i.mxrt1050 Product Lifetime Usage Estimates NXP Semiconductors Document Number: AN12170 Application Note Rev. 0, 04/2018 i.mxrt1050 Product Lifetime Usage Estimates 1. Introduction This document describes the estimated product lifetimes for the

More information

Chip Errata for the i.mx RT1050

Chip Errata for the i.mx RT1050 , NXP Semiconductors Chip Errata Document Number: IMXRT1050CE Rev. 1, 03/2018 Chip Errata for the i.mx RT1050 This document details the silicon errata known at the time of publication for the i.mx RT1050

More information

i.mx 6ULL Product Usage Lifetime Estimates

i.mx 6ULL Product Usage Lifetime Estimates NXP Semiconductors Document Number: AN5337 Application Note Rev. 1, 03/2017 i.mx 6ULL Product Usage Lifetime Estimates 1. Introduction This document describes the estimated product lifetimes for the i.mx

More information

MIMXRT1050 EVK Board Hardware User s Guide

MIMXRT1050 EVK Board Hardware User s Guide NXP Semiconductors Document Number: MIMXRT1050EVKHUG User's Guide Rev. 1, 11/2017 MIMXRT1050 EVK Board Hardware User s Guide Contents 1. Introduction This document is a Hardware User s Guide for the MIMXRT1050

More information

Developing a simple UVC device based on i.mx RT1050

Developing a simple UVC device based on i.mx RT1050 NXP Semiconductors Document Number: AN12103 Application Note Rev. 0, 12/2017 Developing a simple UVC device based on i.mx RT1050 1. Introduction USB Video Class (UVC) describes the capabilities and characteristics

More information

How to Implement USB Suspend/Resume Feature with MCUXpresso SDK USB Stack

How to Implement USB Suspend/Resume Feature with MCUXpresso SDK USB Stack NXP Semiconductors Document Number: AN5385 Application Note Rev. 0, How to Implement USB Suspend/Resume Feature with MCUXpresso SDK USB Stack 1. Introduction This application note contains the USB suspend/resume

More information

Getting Started with the MCU Flashloader

Getting Started with the MCU Flashloader NXP Semiconductors Document Number: MBOOTFLASHGS User's Guide Rev 3, 05/2018 Getting Started with the MCU Flashloader Contents Contents Chapter 1 Introduction...3 Chapter 2 Overview...4 2.1 MCU flashloader...4

More information

i.mx 6UltraLite Product Usage Lifetime Estimates

i.mx 6UltraLite Product Usage Lifetime Estimates NXP Semiconductors Document Number: AN5198 Application Notes Rev. 2, 08/2016 i.mx 6UltraLite Product Usage Lifetime Estimates 1. Introduction This document describes the estimated product lifetimes for

More information

Developing a Camera Application with i.mx RT Series

Developing a Camera Application with i.mx RT Series NXP Semiconductors Document Number: AN12110 Application Note Rev. 0, 12/2017 Developing a Camera Application with i.mx RT Series 1. Introduction This application note describes how to develop an HD camera

More information

i.mx 7 Dual/Solo Product Lifetime Usage

i.mx 7 Dual/Solo Product Lifetime Usage NXP Semiconductors Document Number: AN5334 Application Note Rev. 1, 05/2017 i.mx 7 Dual/Solo Product Lifetime Usage 1. Introduction This document describes the estimated product lifetimes for the i.mx

More information

Kinetis KE1xF512 MCUs

Kinetis KE1xF512 MCUs NXP Semiconductors Document Number: KE1XF512PB Product Brief Rev. 1.1, 08/2016 Kinetis KE1xF512 MCUs Robust 5V MCUs with ADCs, FlexTimers, CAN and expanding memory integration in Kinetis E-series. Now

More information

Using the i.mxrt L1 Cache

Using the i.mxrt L1 Cache NXP Semiconductors Document Number: AN12042 Application Note Rev. 0, 08/2017 Using the i.mxrt L1 Cache 1. Introduction i.mxrt series takes advantage of the ARM Cortex-M7 core with 32K/32K L1 I/D-Cache.

More information

Smart Plug Software Design Reference Manual

Smart Plug Software Design Reference Manual NXP Semiconductors Document Number: DRM158 Design Reference Manual Rev. 0, 03/2017 Smart Plug Software Design Reference Manual 1. Introduction This design reference manual describes a solution for a smart

More information

MIMXRT1050 EVK Board Hardware User s Guide

MIMXRT1050 EVK Board Hardware User s Guide NXP Semiconductors Document Number: MIMXRT1050EVKHUG User's Guide Rev. 2, 03/2018 MIMXRT1050 EVK Board Hardware User s Guide Contents 1. Introduction This document is a Hardware User s Guide for the MIMXRT1050

More information

How to use FlexMemory as D-Flash and EEPROM in KE1xF

How to use FlexMemory as D-Flash and EEPROM in KE1xF NXP Semiconductors Document Number: AN5338 Application Note Rev. 0, 09/2016 How to use FlexMemory as D-Flash and EEPROM in KE1xF 1. Introduction The FlexMemory (FlexNVM and FlexRAM) is available on NXP's

More information

Exception and fault checking on S32K1xx

Exception and fault checking on S32K1xx NXP Semiconductors Document Number: AN12201 Application Notes Rev. 0, 07/2018 Exception and fault checking on S32K1xx by: NXP Semiconductors 1. Introduction The S32K1xx product series further extends the

More information

How to Enable Boot from HyperFlash and SD Card

How to Enable Boot from HyperFlash and SD Card NXP Semiconductors Document Number: AN12107 Application Note Rev. 0, 12/2017 How to Enable Boot from HyperFlash and SD Card 1. Introduction The i.mx RT Series is industry s first crossover processor provided

More information

Load Position-Independent Code (PIC) on a Kinetis Platform Using the IAR EWARM Compiler

Load Position-Independent Code (PIC) on a Kinetis Platform Using the IAR EWARM Compiler Freescale Semiconductor, Inc. Document Number: AN5163 Application Note Load Position-Independent Code (PIC) on a Kinetis Platform Using the IAR EWARM Compiler 1. Introduction This document provides guidance

More information

How to Reduce SoC Power when Running M4 with A53 on i.mx8m

How to Reduce SoC Power when Running M4 with A53 on i.mx8m NXP Semiconductors Document Number: AN12225 Application Note Rev. 0, 07/2018 How to Reduce SoC Power when Running M4 with A53 on i.mx8m 1. Introduction On i.mx8m EVK board, when user measures current with

More information

Using the i.mxrt L1 Cache

Using the i.mxrt L1 Cache NXP Semiconductors Document Number: AN12042 Application Note Rev. 1, 12/2017 Using the i.mxrt L1 Cache 1. Introduction i.mxrt series takes advantage of the ARM Cortex- M7 core with 32K/32K L1 I/D-Cache.

More information

How to Enable Boot from QSPI Flash

How to Enable Boot from QSPI Flash NXP Semiconductors Document Number: AN12108 Application Note Rev. 0, 02/2018 How to Enable Boot from QSPI Flash 1. Introduction The i.mx RT Series is industry s first crossover processor provided by NXP.

More information

Emulating Dual SPI Using FlexIO

Emulating Dual SPI Using FlexIO Freescale Semiconductor, Inc. Document Number: AN5242 Application Note Rev. 0, 01/2016 Emulating Dual SPI Using FlexIO 1. Introduction This application note discusses one example of how to use FlexIO module

More information

Table 1 provides silicon errata information that relates to the masks 0M55B, 1M55B, and M55B of the MC9328MX21S (i.mx21s) applications processor.

Table 1 provides silicon errata information that relates to the masks 0M55B, 1M55B, and M55B of the MC9328MX21S (i.mx21s) applications processor. Freescale Semiconductor Chip Errata Document : MC9328MX21SCE Rev. 4, 11/2012 MC9328MX21S Chip Errata for Masks:,, Table 1 provides silicon errata information that relates to the masks,, and of the MC9328MX21S

More information

MCUXpresso SDK USB Power Delivery

MCUXpresso SDK USB Power Delivery NXP Semiconductors Document Number: Quick Start Guide Rev. 1.0, 04/2017 MCUXpresso SDK USB Power Delivery 1. Introduction Today many devices charge or get their power from USB port connected in laptops,

More information

Kinetis Bootloader to Update Multiple Devices in a Field Bus Network

Kinetis Bootloader to Update Multiple Devices in a Field Bus Network Freescale Semiconductor, Inc. Document Number: AN5204 Application Note Rev. 0, 01/2016 Kinetis Bootloader to Update Multiple Devices in a Field Bus Network 1. Introduction This application note describes

More information

i.mx 6ULZ Migration Guide

i.mx 6ULZ Migration Guide NXP Semiconductors Document Number: AN12264 Application Note Rev. 0, 10/2018 i.mx 6ULZ Migration Guide Migrating from i.mx 6ULL to i.mx 6ULZ 1. Introduction This application note provides an introduction

More information

AND9407/D Low Power Techniques of LC Series for Audio Applications

AND9407/D Low Power Techniques of LC Series for Audio Applications Low Power Techniques of LC823450 Series for Audio Applications Introduction This application note describes low power techniques to enable customers to control the power consumption to meet their operation

More information

Three-Phase Power Meter Hardware Design Reference Manual

Three-Phase Power Meter Hardware Design Reference Manual Freescale Semiconductor, Inc. Document Number: DRM146 Design Reference Manual Rev. 0, 03/2014 Three-Phase Power Meter Hardware Design Reference Manual by: Albert Chen and Shawn Shi 1 Overview Freescale

More information

MAC57D5xx Start-Up Sequence

MAC57D5xx Start-Up Sequence Freescale Semiconductor Document Number: AN5285 Application Note Rev. 0, 05/2016 MAC57D5xx Start-Up Sequence by: Manuel Rodriguez 1 Introduction The MAC57D5xx family is the next generation platform of

More information

KW41Z IEEE and BLE Coexistence Performance

KW41Z IEEE and BLE Coexistence Performance NXP Semiconductors Document Number: AN12231 Application Note Rev. 0, 08/2018 KW41Z IEEE 802.15.4 and BLE Coexistence Performance MWS module 1. About this manual This document aims to evaluate the performance

More information

AN4749 Application note

AN4749 Application note Application note Managing low-power consumption on STM32F7 Series microcontrollers Introduction The STM32F7 Series microcontrollers embed a smart architecture taking advantage of the ST s ART- accelerator

More information

Configure QSPI Bus Width and Frequency in Pre-Boot Loader Stage on QorIQ LS Series Processors

Configure QSPI Bus Width and Frequency in Pre-Boot Loader Stage on QorIQ LS Series Processors NXP Semiconductors Document Number: AN12279 Application Note Rev. Configure QSPI Bus Width and Frequency in Pre-Boot Loader Stage on QorIQ LS Series Processors 1 Introduction When QSPI is selected as the

More information

MQX RTOS Release Notes for Kinetis SDK v1.2.0 for KL33Z64 for FRDM-KL43Z Freescale Freedom Development Platform

MQX RTOS Release Notes for Kinetis SDK v1.2.0 for KL33Z64 for FRDM-KL43Z Freescale Freedom Development Platform Freescale Semiconductor Document Number: MQXKSDK120KL33RN Release Notes Rev. 0, 4/2015 MQX RTOS Release Notes for Kinetis SDK v1.2.0 for KL33Z64 for FRDM-KL43Z Freescale Freedom Development Platform 1

More information

Emulating I2C Bus Master by using FlexIO

Emulating I2C Bus Master by using FlexIO Freescale Semiconductor, Inc. Document Number: AN5133 Application Notes Rev. 0, 06/2015 Emulating I2C Bus Master by using FlexIO 1. Introduction This application note lists the steps to use the FlexIO

More information

i.mx 6SLL Power Consumption Measurement

i.mx 6SLL Power Consumption Measurement NXP Semiconductors Document Number: AN12001 Application Note Rev 0, 06/2017 i.mx 6SLL Power Consumption Measurement 1 Introduction Contents 1 Introduction... 1 2 Overview of i.mx 6SLL Voltage Supplies...1

More information

Migrating Applications from MC9S12VR64 to MC9S12VR32 by: Manuel Rodríguez

Migrating Applications from MC9S12VR64 to MC9S12VR32 by: Manuel Rodríguez NXP Semiconductors Document Number: AN5091 Application Note Rev. 1, 08/2016 Migrating Applications from MC9S12VR64 to MC9S12VR32 by: Manuel Rodríguez Contents 1. Introduction This application note is intended

More information

Working around ERR7026 according to application needs

Working around ERR7026 according to application needs Freescale Semiconductor Document Number: EB795 Engineering Bulletin Rev. 0, 08/2013 Working around ERR7026 according to application needs by: Automotive and Industrial Solutions Group 1 Introduction This

More information

HVP-KV10Z32 User s Guide

HVP-KV10Z32 User s Guide Freescale Semiconductor, Inc. User s Guide Document Number: HVPKV10Z32UG Rev. 0, 12/2014 HVP-KV10Z32 User s Guide by: Ivan Lovas 1 High voltage controller card HVP-KV10Z32 This document supports the HVP-MC3PH

More information

MQX RTOS Release Notes for Kinetis SDK FRDM- KV10Z Freescale Freedom Development Platform

MQX RTOS Release Notes for Kinetis SDK FRDM- KV10Z Freescale Freedom Development Platform Freescale Semiconductor Document Number: MQXKSDK120KV10RN Release Notes Rev. 0, MQX RTOS Release Notes for Kinetis SDK 1.2.0 FRDM- KV10Z Freescale Freedom Development Platform 1 Overview These are the

More information

FRDM-K64F Board Errata

FRDM-K64F Board Errata Freescale Semiconductor, Inc. Document Number: FRDMK64F_ERRATA Board Errata Rev. 2.0, 06/2014 FRDM-K64F Board Errata by: Freescale Semiconductor, Inc. 2014 Freescale Semiconductor, Inc. 1 Errata Title:

More information

Emulating I2S bus on KE06

Emulating I2S bus on KE06 NXP Semiconductors Document Number: AN5325 Application Notes Rev. 0, 08/2016 Emulating I2S bus on KE06 1. Introduction This application note shows how to use a typical SPI interface and proper timer to

More information

AN4820 Application note

AN4820 Application note Application note BlueNRG-1 and BlueNRG-2 low power modes Introduction The BlueNRG-1 and BlueNRG-2 are very low power Bluetooth low energy (BLE) single-mode systemson-chip, compliant with Bluetooth specification.

More information

Processor Expert Software for i.mx Processors Version 1.0

Processor Expert Software for i.mx Processors Version 1.0 Release Notes Processor Expert Software for i.mx Processors Version 1.0 1 Overview Processor Expert Software for i.mx processors is a suite of configuration tools for i.mx family processors. This file

More information

Freedom FRDM-MC-LVBLDC Development Platform User s Guide

Freedom FRDM-MC-LVBLDC Development Platform User s Guide Freescale Semiconductor, Inc. Document Number: FRDMLVBLDCUG User's Guide 0, 02/2016 Freedom FRDM-MC-LVBLDC Development Platform User s Guide 1. Introduction The Freedom development platform is a set of

More information

SPI topics: watchdog, serial output and parity check

SPI topics: watchdog, serial output and parity check NXP Semiconductors Application Note Document Number: AN5106 Rev. 1.0, 7/2016 SPI topics: watchdog, serial output and parity check for the dual SOIC 24 V high-side switch family 1 Introduction This application

More information

i.mx 6Solo/6DualLite Product Lifetime Usage Estimates

i.mx 6Solo/6DualLite Product Lifetime Usage Estimates Freescale Semiconductor, Inc. Application Note Document Number: AN4725 Rev. 2, 02/2015 i.mx 6Solo/6DualLite Product Lifetime Usage Estimates This document describes the estimated product lifetimes for

More information

TWR-KE18F User's Guide

TWR-KE18F User's Guide NXP Semiconductors Document Number: TWRKE18FUG User's Guide Rev. 0, 09/2016 TWR-KE18F User's Guide 1. Introduction The NXP Tower development platform is a set of software and hardware tools for evaluation

More information

i.mxrt1060 Product Lifetime Usage Estimates

i.mxrt1060 Product Lifetime Usage Estimates NXP Semiconductors Document Number: AN12253 Application Notes Rev. 0, 09/2018 i.mxrt1060 Product Lifetime Usage Estimates Introduction This document describes the estimated product lifetimes for the i.mx

More information

Using FCCU on MPC5744P

Using FCCU on MPC5744P NXP Semiconductors Document Number: AN5284 Application Note Rev. 0, 05/2016 Using FCCU on MPC5744P By: Peter Vlna 1. Introduction This document describes the configuration, restrictions, principles, and

More information

Freedom FRDM-KV31F Development Platform User s Guide

Freedom FRDM-KV31F Development Platform User s Guide Freescale Semiconductor, Inc. Document Number: FRDMKV31FUG User's Guide 0, 02/2016 Freedom FRDM-KV31F Development Platform User s Guide 1. Introduction The Freedom development platform is a set of software

More information

Using DMA for Pulse Counting on S32K

Using DMA for Pulse Counting on S32K Freescale Semiconductor, Inc. Document Number: AN5258 Application Note Rev. 0, 02/2016 Using DMA for Pulse Counting on S32K 1. Introduction This application note describes pulse counting on the S32K product

More information

Kinetis SDK Release Notes for the TWR-K24F120M Tower System Module

Kinetis SDK Release Notes for the TWR-K24F120M Tower System Module Freescale Semiconductor Document Number: KSDKK24FN256RN Release Notes 1.0.0, 08/2014 Kinetis SDK Release Notes for the TWR-K24F120M Tower System Module 1 Overview These are the release notes for the TWR-K24F120M

More information

MM912_634, Silicon Analog Mask (M91W) / Digital Mask (N53A) Errata

MM912_634, Silicon Analog Mask (M91W) / Digital Mask (N53A) Errata Freescale Semiconductor, Inc. Chip Errata Document Number: MM912_634ER Rev. 7.0, 4/2015 MM912_634, Silicon Analog Mask (M91W) / Digital Mask (N53A) Errata This errata document applies to the MM912_634

More information

Offline Flash Programmer for Kinetis K- and L-series MCUs

Offline Flash Programmer for Kinetis K- and L-series MCUs NXP Semiconductors Document Number: AN5331 Application Note Rev. 0, 09/2016 Offline Flash Programmer for Kinetis K- and L-series MCUs By: Xi Yang 1 Introduction Effective and convenient tools for the flash

More information

Kinetis USB-KW41Z Wireless Protocol Sniffer Quick Start Guide

Kinetis USB-KW41Z Wireless Protocol Sniffer Quick Start Guide NXP Semiconductors Document Number: MKW41ZSNIFFERQSG User's Guide Rev. 2, 09/2016 Kinetis USB-KW41Z Wireless Protocol Sniffer Quick Start Guide This document describes the usage of the USB- KW41Z evaluation

More information

Realtek Ameba-1 Power Modes

Realtek Ameba-1 Power Modes Realtek Ameba-1 Power Modes Table of Contents 1 Power State... 3 1.1 Deep Sleep Mode... 3 1.2 Deep Standby Mode... 4 1.3 Sleep Mode... 4 1.3.1 Wakeup from sleep mode by UART... 4 1.3.1.1 Solution A, select

More information

i.mx6ull Power Consumption Application Note

i.mx6ull Power Consumption Application Note NXP Semiconductors Application Note Document Number: AN5345 Rev. 2, 10/2017 i.mx6ull Power Consumption Application Note 1. Introduction This application note helps to design power management systems. Through

More information

WCT1011A/WCT1013A Automotive MP-A9 V4.0 Run-Time Debugging

WCT1011A/WCT1013A Automotive MP-A9 V4.0 Run-Time Debugging NXP Semiconductors Document Number: WCT101XAV40RTDUG User's Guide Rev. 4.0, 05/2018 WCT1011A/WCT1013A Automotive MP-A9 V4.0 Run-Time Debugging 1 Introduction NXP provides the FreeMASTER GUI tool for WCT1011A/WCT1013A

More information

AN4696 Application note

AN4696 Application note Application note SPWF01Sx power management options Introduction The purpose of this application note is to describe the power management options available on the SPWF01Sx Wi-Fi module [1]. It introduces

More information

TWR-KL28Z User s Guide

TWR-KL28Z User s Guide NXP Semiconductors Document Number: TWRKL28ZUG User's Guide Rev. 0, 06/2016 TWR-KL28Z User s Guide 1. Introduction The Tower development platform is a set of software and hardware tools for evaluation

More information

FRDM-KL03Z User s Guide

FRDM-KL03Z User s Guide Freescale Semiconductor User s Guide Document Number: FRDMKL03ZUG Rev. 0, 7/2014 FRDM-KL03Z User s Guide 1 Overview The Freescale Freedom development platform is an evaluation and development tool ideal

More information

Getting Started with MCUXpresso SDK CMSIS Packs

Getting Started with MCUXpresso SDK CMSIS Packs NXP Semiconductors Document Number: MCUXSDKPACKSGSUG User's Guide Rev. 1, 11/2017 Getting Started with MCUXpresso SDK CMSIS Packs 1 Introduction The MCUXpresso Software Development Kit (SDK) is a comprehensive

More information

FRDM-KE02Z User s Manual

FRDM-KE02Z User s Manual Freescale Semiconductor Document Number: FRDMKE02ZUM User s Manual Rev. 0, 07/2013 FRDM-KE02Z User s Manual 1 Overview The Freescale Freedom Development Platform is an evaluation and development tool ideal

More information

Introduction. PURPOSE: This course explains several important features of the i.mx21 microprocessor.

Introduction. PURPOSE: This course explains several important features of the i.mx21 microprocessor. Introduction PURPOSE: This course explains several important features of the i.mx21 microprocessor. OBJECTIVES: - Describe the features and functions of the ARM926EJ-S TM Core - Explain three processor

More information

TWR-LS1021A Getting Started

TWR-LS1021A Getting Started Freescale Semiconductor Getting Started Document Number: TWR-LS1021AGS Rev. 0, 09/2014 TWR-LS1021A Getting Started 1 Introduction This document explains how to connect the QorIQ LS1021A Tower System Module

More information

The ARM Cortex-M0 Processor Architecture Part-1

The ARM Cortex-M0 Processor Architecture Part-1 The ARM Cortex-M0 Processor Architecture Part-1 1 Module Syllabus ARM Architectures and Processors What is ARM Architecture ARM Processors Families ARM Cortex-M Series Family Cortex-M0 Processor ARM Processor

More information

ECO and Workarounds for Bugs in ESP32

ECO and Workarounds for Bugs in ESP32 ECO and Workarounds for Bugs in ESP32 Version 1.6 Copyright 2018 About This Guide This document details hardware errata and workarounds in the ESP32. Release Notes Date Version Release notes 2016-11 V1.0

More information

AN5123 Application note

AN5123 Application note Application note STSPIN32F0A - bootloader and USART protocol Introduction Cristiana Scaramel The STSPIN32F0A is a system-in-package providing an integrated solution suitable for driving three-phase BLDC

More information

User Manual Rev. 0. Freescale Semiconductor Inc. FRDMKL02ZUM

User Manual Rev. 0. Freescale Semiconductor Inc. FRDMKL02ZUM FRDM-KL02Z User Manual Rev. 0 Freescale Semiconductor Inc. FRDMKL02ZUM 1. Overview The Freescale Freedom development platform is an evaluation and development tool ideal for rapid prototyping of microcontroller-based

More information

Mask Set Errata for Mask 0N22G

Mask Set Errata for Mask 0N22G Freescale Semiconductor MSE9S12ZVL_0N22G Mask Set Errata Rev 29 SEP 2014 Mask Set Errata for Mask 0N22G This report applies to mask 0N22G for these products: MSE9S12ZVL ID before 15 MAY 2008 ID from 15

More information

i.mx 8M EVK Board Hardware User's Guide

i.mx 8M EVK Board Hardware User's Guide NXP Semiconductors Document Number: IMX8MDQLQEVKHUG User's Guide Rev. 0, 01/2018 i.mx 8M EVK Board Hardware User's Guide 1. Introduction This document is the hardware User s Guide for the i.mx 8M Evaluation

More information

Freescale MQX RTOS TWR-K64F120M Release Notes

Freescale MQX RTOS TWR-K64F120M Release Notes Freescale Semiconductor Document Number: MQXTWRK64RN Release Notes Rev. 2, 03/2014 Freescale MQX RTOS 4.1.0 TWR-K64F120M Release Notes 1 Introduction These are the Release Notes for the K64F120M standalone

More information

Building U-Boot in CodeWarrior ARMv8

Building U-Boot in CodeWarrior ARMv8 NXP Semiconductors Document Number: AN5347 Application Note Rev. 0, 10/2016 Building U-Boot in CodeWarrior ARMv8 1 Introduction This application note defines guidelines for configuring CodeWarrior for

More information

Getting Started with FreeRTOS BSP for i.mx 7Dual

Getting Started with FreeRTOS BSP for i.mx 7Dual Freescale Semiconductor, Inc. Document Number: FRTOS7DGSUG User s Guide Rev. 0, 08/2015 Getting Started with FreeRTOS BSP for i.mx 7Dual 1 Overview The FreeRTOS BSP for i.mx 7Dual is a Software Development

More information

FRDM-KL26Z User s Guide

FRDM-KL26Z User s Guide Freescale Semiconductor User s Guide Doc Number: FRDMKL26ZUG Rev. 0, 10/2013 FRDM-KL26Z User s Guide by Freescale Semiconductor, Inc. 1 Overview The Freescale Freedom development platform is a set of software

More information

Kinetis KV5x Real-Time Control MCUs with Ethernet Up to 1 MB Flash and 256 KB SRAM

Kinetis KV5x Real-Time Control MCUs with Ethernet Up to 1 MB Flash and 256 KB SRAM Freescale Semiconductor, Inc. Document Number: KV5xPB Product Brief Rev. 0, 02/2015 Kinetis KV5x Real-Time Control MCUs with Ethernet Up to 1 MB Flash and 256 KB SRAM 1. Kinetis V family introduction Kinetis

More information

Hardware Development Guide for the MIMXRT1050 Processor

Hardware Development Guide for the MIMXRT1050 Processor NXP Semiconductors Document Number: MIMXRT1050HDUG User s Guide Rev.1 11/2017 Hardware Development Guide for the MIMXRT1050 Processor 1. Introduction This document s purpose is to help hardware engineers

More information

HVP-KV31F120M User s Guide

HVP-KV31F120M User s Guide Freescale Semiconductor, Inc. User s Guide Document Number: HVPKV31F120MUG Rev. 0, 12/2014 HVP-KV31F120M User s Guide by: Ivan Lovas 1 High voltage controller card HVP-KV31F120M This document supports

More information

Power Network Design MC9328MX1, MC9328MXL, and MC9328MXS

Power Network Design MC9328MX1, MC9328MXL, and MC9328MXS Freescale Semiconductor Application Note Document Number: AN2537 Rev. 3, 11/2006 Power Network Design MC9328MX1, MC9328MXL, and MC9328MXS By Lewis Ling 1 Abstract As power network design becomes more complex,

More information

Mask Set Errata for Mask 2N27B

Mask Set Errata for Mask 2N27B Freescale Semiconductor COLDFIREPLUS_2N27B Mask Set Errata Rev 29 JUL 2013 Mask Set Errata for Mask 2N27B Introduction This report applies to mask 2N27B for these products: COLDFIREPLUS Errata ID Errata

More information

AN5016. Trigonometry approximations. Document information

AN5016. Trigonometry approximations. Document information Rev. 2.0 21 June 2016 Application note Document information Info Content Abstract This application note documents mathematical approximations to inverse trigonometric functions used in the NXP Sensor Fusion

More information

Getting Started with Freescale MQX RTOS for Kinetis SDK and MDK-ARM Keil

Getting Started with Freescale MQX RTOS for Kinetis SDK and MDK-ARM Keil Freescale Semiconductor, Inc. Document Number: KSDKGSKEILUG User s Guide Rev. 1, 04/2015 Getting Started with Freescale MQX RTOS for Kinetis SDK and MDK-ARM Keil µvision5 1 Read Me First This document

More information

AN Sleep programming for NXP bridge ICs. Document information

AN Sleep programming for NXP bridge ICs. Document information Rev. 01 5 January 2007 Application note Document information Info Keywords Abstract Content SC16IS750, Bridge IC, Sleep programming The sleep programming of NXP Bridge ICs such as SC16IS750 (I 2 C-bus/SPI

More information

Multitasking on Cortex-M(0) class MCU A deepdive into the Chromium-EC scheduler

Multitasking on Cortex-M(0) class MCU A deepdive into the Chromium-EC scheduler Multitasking on Cortex-M(0) class MCU A deepdive into the Chromium-EC scheduler $whoami Embedded Software Engineer at National Instruments We just finished our first product using Chromium-EC and future

More information

Kinetis KM3x Metrology MCUs based on ARM Cortex -M0+ Core

Kinetis KM3x Metrology MCUs based on ARM Cortex -M0+ Core Freescale Semiconductor, Inc. Document Number: KM3XPB Product Brief Rev. 0, 06/2015 Kinetis KM3x Metrology MCUs based on ARM Cortex -M0+ Core Up to 256 KB Flash and 32 KB SRAM 1. Kinetis M family Kinetis

More information

Freescale Kinetis Software Development Kit Release Notes

Freescale Kinetis Software Development Kit Release Notes Freescale Semiconductor, Inc. Document Number: KSDKRN Release Notes Rev. 1.0.0, 07/2014 Freescale Kinetis Software Development Kit Release Notes 1 Overview These are the release notes for the Freescale

More information

ARM Cortex-M4 Architecture and Instruction Set 1: Architecture Overview

ARM Cortex-M4 Architecture and Instruction Set 1: Architecture Overview ARM Cortex-M4 Architecture and Instruction Set 1: Architecture Overview M J Brockway January 25, 2016 UM10562 All information provided in this document is subject to legal disclaimers. NXP B.V. 2014. All

More information

ECO and Workarounds for Bugs in ESP32

ECO and Workarounds for Bugs in ESP32 ECO and Workarounds for Bugs in ESP32 Version 1.5 Copyright 2018 About This Guide This document details the bugs in the ESP32. The structure is as follows: Chapter Title Content Chapter 1 Chip Revision

More information

i.mx 6UltraLite Power Consumption Measurement

i.mx 6UltraLite Power Consumption Measurement NXP Semiconductors Document Number: AN5170 Application Note Rev. 2, 05/2016 i.mx 6UltraLite Power Consumption Measurement 1. Introduction This application note helps to design power management systems.

More information

TWR-KV10Z32 Sample Code Guide for IAR Board configuration, software, and development tools

TWR-KV10Z32 Sample Code Guide for IAR Board configuration, software, and development tools Freescale Semiconductor User s Guide Doc Number: TWRKV10Z32IARUG Rev. 0.1, 01/2014 TWR-KV10Z32 Sample Code Guide for IAR Board configuration, software, and development tools by Freescale Semiconductor,

More information

APPLICATION NOTE. Atmel AT03782: Using Low Power Modes in SAM4N Microcontroller. Atmel 32-bit Microcontroller. Features.

APPLICATION NOTE. Atmel AT03782: Using Low Power Modes in SAM4N Microcontroller. Atmel 32-bit Microcontroller. Features. APPLICATION NOTE Atmel AT03782: Using Low Power Modes in SAM4N Microcontroller Atmel 32-bit Microcontroller Features Low power modes in SAM4N Power supply in SAM4N Introduction The purpose of this application

More information

Kinetis SDK v Release Notes for the MK21DA5 and MKW24D5 Devices

Kinetis SDK v Release Notes for the MK21DA5 and MKW24D5 Devices Freescale Semiconductor, Inc. Document Number: KSDK110MK21DA5MKW24D5RN Release Notes Rev. 0, 02/2015 Kinetis SDK v.1.1.0 Release Notes for the MK21DA5 and MKW24D5 Devices 1 Overview These are the release

More information

Kinetis SDK v Release Notes for KV5x Derivatives

Kinetis SDK v Release Notes for KV5x Derivatives Freescale Semiconductor, Inc. Document Number: KSDK120MKV5XRN Release Notes Rev. 0, 08/2015 Kinetis SDK v.1.2.0 Release Notes for KV5x Derivatives 1 Overview These are the release notes for the Freescale

More information

Watt Saver Software Component (WSC)

Watt Saver Software Component (WSC) Freescale Semiconductor Document Number:WSSCUG User Guide Rev 1, 10/2013 Watt Saver Software Component (WSC) 1 Introduction This document describes the basic steps for getting started with the Watt Saver

More information

ES_LPC5410x. Errata sheet LPC5410x. Document information

ES_LPC5410x. Errata sheet LPC5410x. Document information Rev. 2.3 21 November 2017 Errata sheet Document information Info Keywords Abstract Content LPC54102J512UK49; LPC54102J256UK49; LPC54101J512UK49; LPC54101J256UK49; LPC54102J512BD64; LPC54102J256BD64; LPC54101J512BD64;

More information

TEVATRON TECHNOLOGIES PVT. LTD Embedded! Robotics! IoT! VLSI Design! Projects! Technical Consultancy! Education! STEM! Software!

TEVATRON TECHNOLOGIES PVT. LTD Embedded! Robotics! IoT! VLSI Design! Projects! Technical Consultancy! Education! STEM! Software! Summer Training 2016 Advance Embedded Systems Fast track of AVR and detailed working on STM32 ARM Processor with RTOS- Real Time Operating Systems Covering 1. Hands on Topics and Sessions Covered in Summer

More information