STMicroelectronics has extended its STM32 microcontroller family, which uses the ARM Cortex-M3 32bit processor core, with extra features and up to 1Mbyte of on-chip flash. The additional flash more than doubles the memory available to developers, says the company, supporting future scalability, increasing system performance. It also provides application features, such as next-generation graphical user interfaces for consumer and industrial products. With the XL-density devices, the company now has 99 STM32 variants with a range of memory densities, operating speeds, and integrated features. All are pin- and software-compatible, and share a common pool of peripherals. Developers can upgrade and re-use intellectual property, tools and hardware in multiple projects to reduce costs and speed-up time to market. Additional features include additional high-speed volatile RAM, up to 96kbyte, which can simplify software design and speed-up execution. Six more timers are also included, increasing flexibility for applications such as motor control, factory automation or power distribution. A memory protection unit has been added, which is transparent to existing software but allows new applications to protect specific code or data during execution. This feature permits efficient use of existing certified software modules in projects such as medical or metering equipment, saving the time and cost to re-certify the complete application. The 1Mbyte flash memory is organised in two banks of 512kbyte.This dual-bank architecture safeguards upgrading of applications in the field by uploading new software into the second memory bank. The update can then be copied across safely into the main bank, and the process managed to protect against hazards such as power loss while the upgrade is being applied. The portfolio includes the company's Access Line devices, the USB Access Line with on-chip USB support, the 72MHz Performance Line with USB and CAN, and the Connectivity Line supporting Ethernet, USB OTG and dual CAN. They are offered in 768kbyte or 1Mbyte flash memory options and in a choice of 64-, 100-, or 144-pin packages.