Post Date: 2015-03-25
This week, Texas Instruments introduced the MSP432, a 32-bit replacement for the 16-bit MSP430 family of microcontrollers. It is also a new ARM-based MCU family designed to provide MSP430 and ARM M0 developers with a migration path to more powerful, feature-rich, and lower power architectures.
In order to create this low-power architecture, TI built the MSP432 around the powerful Cortex-M4F core architecture (Figure 1), instead of the Cortex-M0 core developed by ARM in 2008 as a 32-bit replacement, for the use of the following licenses 8-bit and 16-bit MCUs.
Figure 1: TI's MSP432 integrates many enhancements to reduce power consumption.
TI product marketing engineer Mione Plant explained in an interview with EE Times that when the Cortex-M0 was first introduced, it was a good architecture for embedded applications that existed at the time. The 3-level pipeline M0 designed for 8-bit and 16-bit slots implements the smallest instruction subset, mainly 16-bit Thumb 1 instructions and some Thumb 2 type 32-bit instructions, in order to achieve very small chip size Size and power consumption.
However, Plant emphasized that the nature of both traditional industrial control applications and new IoT applications requires functions with larger functions and calculations and lower power consumption.
TI's answer in MSP432 is to use the 48MHz ARM Cortex-M4F core (Figure 1) as a starting point. In addition to the dedicated floating-point accelerator, MF4 integrates all the features needed for a more complex connected environment: the thumbnail 1 and Thumb 2 instruction sets, and the various new personal electronics devices required for many new wearables and IoT-based personal electronics devices Extended applications and industrial control 32-bit hardware multiplied with 32-bit or 64-bit results, signed or unsigned multiplied or added 32-bit hardware division (2-12 cycles) Saturated math support with single cycle 16 / 32-bit MAC DSP extension, single-cycle dual 16-bit MAC; and 8 / 16-bit SIMD algorithm.
MSP430 developers will recognize some aspects of the new architecture as the MCU has ported many resources to the MSP432 (Figure 2), including driver libraries, real-time clock, timer / pulse width modulator, watchdog time, JTAG , AES-256, UART / SPI / I2C functions as well as analog functions such as comparator, reference voltage, temperature sensor and capacitive touch I / O.
Figure 2: 16-bit MSP430 users will find a lot of familiar content (yellow) in 32-bit MSP432.
Although the MSP432 was not specifically designed as an M0 killer, Plant said that in a survey of developers using TI's 16-bit MSP430, many believed that the capabilities of the M4 were necessary for their success in this new design environment. The trick, she said, is to provide designers with this set of capabilities within the required power / performance range in a resource-constrained embedded design.
"I think we have aggregated the power-saving improvements in process technology, circuit design, and architecture integrated into the MSP432, which will make it hard for stubborn users of the MSP430 MCU and Cortex M0 core to resist."
Plant said that in sleep mode, with active power operating at 95 μA / MHz and 850 nA, the MSP432 achieved a score of 167.4 when evaluated on EEMBC's low-power ULPBench tool-better than all other Cortex-M3 and -M4F MCU market.
To achieve this low-power operation, TI uses a low-leakage, 90nm CMOS process and has an extended input voltage range: 1.62-3.7V, which is much narrower than 1.8-3.5V typically used in MCU designs. This means that for a given current, the power consumption of the MSP432 will always be better. The wider range also means that it can support higher voltage batteries. In addition, the company has also carried out other low power optimizations.
To reduce the power consumption associated with random access memory operations, the company has incorporated 64 KB of RAM (expanded to 256 KB in the future), enabling developers to perform complex operations such as the following without having to access external memory: Update the LCD in real time Or a dot matrix array shows that this is always a power consuming operation.
In addition, RAM reduces the power consumption of each bank by approximately 30 nA through a selectable set of RAM reservations accessible to developers. They only allow the amount of RAM required to activate the application. For example, when the system is asleep, you can shut down a RAM library that is commonly used as a scratchpad or to buffer data when active. Plant said that complementing this is the MSP432's support for eight DMA channels, enabling it to offload power-hungry memory transactions from the CPU.
Similarly, the MSP432's on-chip flash memory is organized in two separate memory areas, which allow simultaneous read and erase operations. Using two banks, the CPU can read / execute in one bank and erase in the other bank. This feature is particularly useful when updating firmware or data logging, in which the device can perform simultaneous erase operations. By spending less time performing these functions, power consumption can be reduced.
They reside in read-only memory (ROM) on the MSP432, rather than storing the necessary device driver code library in flash memory. In addition to reducing the die area that may have to be dedicated to larger flash gates, putting DriverLib in ROM can also be accessed at 35% less power than before.
"At the same time, by allowing access to the DriverLib firmware in ROM instead of flash, the code can be executed 200% faster, which is essential for many real-time deterministic operations," Plan said.
Although it may sound counterintuitive, TI designers have also integrated low-dropout (LDO) regulators and DC / DC converters to reduce power consumption. When using LDO for power regulation, the system is able to switch between sleep and active modes faster, and when using a DC / DC converter, the system can achieve efficiencies up to 95%.
Plant said that in most other MCU implementations, developers must choose between one or the other. By providing two power regulation methods, developers can dynamically optimize regulation. In standby mode, an LDO can be used, for example, to minimize wake-up time. However, in situations where active current needs to be managed to reduce power consumption, developers can choose a DC / DC converter. "
In addition, there is a 14-bit ADC that consumes only 375 microamps at 1MSPS, which is five times the sampling speed of the fastest MSP430 MCU, while maintaining low power operation. It contains 32 channels for simultaneous sampling, so the MSP432 minimizes the processor's sampling time.
Finally, MSP432 uses predictive instructions to prefetch up to 8 instructions at a time, thereby reducing the number of times the flash is accessed to load program code, which improves performance and reduces power consumption.
Taken together, these improvements mean that the MSP432 can not only support five low-power modes (Figure 3), but also switch from one to the other very quickly. She said that, for example, when fast wake-up response time is needed, the MSP432 MCU can switch to another lower node in less than 10 microseconds.
Figure 3: With five low-power modes, the MSP432 can switch from one to the other very quickly to achieve both performance and energy savings.
TI is not limited to pure hardware enhancements to reduce the power consumption of the MSP432. As part of the toolchain supporting the device, they include EnergyTrace +, an energy-based code analysis tool that measures and displays the energy state of an application and helps optimize it for ultra-low power consumption.
"Usually, power is measured by amplifying the signal of interest and measuring its current consumption and voltage drop," Plant said. "Using this new tool, a software-controlled DC-DC converter will generate the target power source, where DC- The time density of the DC converter charge pulse is equal to the energy consumption of the target microcontroller. "
TI's Cloud IDE is also available to MSP432 developers, including several online tools such as Code Composer Studio (CCS) Cloud IDE V1.0 and Resource Explorer.
CCS Cloud IDE V 1.0 is a web-based IDE that allows developers to create, edit, and build projects online, supplementing the traditional Code Composer Studio desktop tools accessed by the Launchpad board of the MSP432 (Figure 4). After successfully completing the design using the IDE, developers can download the project and run it on the connected launchpad.
Figure 4: With Launchpad, MSP432 can be used locally or online for prototype applications through TI's Cloud IDE.
Resource Explorer is a web-based tool to browse and access MSPWare content in the cloud without downloading the entire package. Plant said that this feature will be of great benefit to developers as it will greatly reduce the time and effort required for software management and make collaboration between project members easier and faster.
"I think in MSP432, we provide developers with the right building block and tool portfolio design for various traditional ultra-low-power embedded applications in industrial and building automation and emerging personal electronics and IoT, such as smart Watch."
Plant said that in many new consumer applications, the requirements for high performance, fast display refresh, and real-time sensor data acquisition are no more daunting than industrial designs. "In the past, many of these requirements were difficult to achieve, especially for users who weren't charging for days or weeks."
However, compared to TI's existing 16-bit microcontroller family, Plant emphasized that MSP432 should not be considered as a replacement or successor to MSP430. "In the end there are 13,000 customers and 500 products, which is a healthy and prosperous product. Therefore, the architecture will continue to be enhanced," including those that were first used in MSP432, she said.