Despite impressive and steady growth, the embedded wireless segment has not yet realized its full potential as some fundamental design problems remain unsolved. These challenges are due to limitations in battery and supply solutions, varying memory requirements, wireless security, and reliability. The recent revolutionary change in memory technology, highlighted by the release of embedded ferroelectric random access memory (FRAM)
, offers developers the best option to tackle these design obstacles. This article will explore these design challenges and the unique features FRAM offers as a memory alternative for embedded wireless applications.
FRAM behaves similarly to DRAM, allowing for random individual bit access for both read and write. Unlike EEPROM or Flash memory technology, FRAM access requires no special sequence or higher programming voltage. However, FRAM is non-volatile, thus retaining its contents when power is removed and offers more flexibility, eliminating any design compromises bi-partisan memory traditionally causes.
Though stand-alone FRAM has been available in the market, its adoption has been limited to general usage in memory storage devices. However, the recent advancement of FRAM technology by on-chip microcontroller (MCU) integration has rightfully promoted and popularized this next-generation memory technology to a much broader application space. The coupling of FRAM with MCUs has in fact enabled the full realization and utilization of the unique memory features in FRAM: universal memory, low-power access, flexibility, high endurance and reliability. The importance of these features can be advantageous and essential in any embedded system; they also happen to be the empowering key features embedded wireless applications have been missing all this time.Flexible memory configuration accommodates stringent wireless protocol requirements, enabling various wireless stacks on the same memory footprint
Perhaps the most interesting and unique characteristic of wireless communication is the amount of design freedom the medium offers in terms of radio parameters such as frequency, bandwidth and output power, or network specifications such as topology and operation, packet definition and various other protocol-specific requirements. Such variations stem from the necessity to tailor designs to the specific needs of different wireless applications, which can drastically diversify the requirements, especially evident in memory for wireless software.
Even within more standardized protocols and standards regulated by governing bodies like Wi-Fi, Bluetooth, or near-field communication (NFC), the actual implementations for the same protocol could vary greatly in memory requirements depending on the features or chosen MCU platform.
Using the traditional Flash-RAM memory module, the program and data memory sizes usually dictate the specific MCU chosen out of a limited pool of devices and memory configurations. This approach prohibits any major changes in the code that might overrun the memory boundaries and force a design with a larger device to future-proof potential firmware upgrades or data requirement changes. Having multiple applications means increasing your development effort, inventory and issuance. Even more importantly, this outdated and restrictive approach essentially limits the innovation that can potentially stem from the development process.
Figure 1: Selecting memory configuration with universal memory.
The non-volatility as well as fast-access natures of FRAM allow the memory to be used as both Flash (code or non-volatile data storage) and RAM (data/variables/etc.), effectively removing such barriers from the design equation. The flexibility of this universal memory allows developers to adjust the memory footprint to fit the specific application’s requirements. Adding new features or changing data buffer sizes now means simply sliding the memory bar instead of opening the brochure to find a larger device. Taking this a step further, the flexibility allows developers to use the same MCU platform and memory footprint for various types of wireless protocols. As shown in Figure 2, the moderately small size of 16kB of FRAM on the MSP430FR5739 can host a number of wireless protocols with significantly different memory configurations.
Figure 2: Memory requirements in different
wireless implementations on MSP430FR5739
The non-traditional data-to-code ratio memory requirement for the Wi-Fi stack using the SimpleLink Wi-Fi CC3000 further illustrates the cost-effective advantage of FRAM. An approach taken by more complex wireless protocols is to offload the majority of the wireless stack to the radio core, leaving just the upper API layer to the host MCU. This reduces the MCU code size, but leaves the data size unchanged as data buffers and data processing still need to take place at the MCU level. The resultant low, code-moderate data memory configuration does not fit very well with traditional ratio-based Flash-to-RAM MCUs.
Using the SimpleLink Wi-Fi CC3000 as an example, the Wi-Fi stack implementation has a modest minimum memory requirement in the range of 3kB for data memory and 6kB for code memory. In an example Wi-Fi application used for evaluation, the application takes advantage of the available data memory to allocate a total of 5.7kB of memory for Wi-Fi buffers and application data, allowing for additional feature enhancements and higher Wi-Fi data throughput. Without the flexibility of FRAM, the 5.7kB RAM requirement requires a device with at least 6kB of RAM. The typical Flash-to-RAM ratio of 8:1 means developers need to start looking for devices with at least 48kB of Flash, most of which will go unused. Alternatively, a device with 16kB of FRAM can fit both the program and code quite nicely. This analysis helped solidify the decision to select the MSP430FR5739 as the MCU platform for the SimpleLink Wi-Fi CC3000 development kit
Figure 3. The SimpleLink Wi-Fi CC3000 development kitUniversal memory offers freedom to innovate
The one-dimensional memory requirement allows FRAM-based applications to easily adjust and accommodate different features or functionalities on the same MCU and hardware platform. Firmware updates can therefore include more than just bug fixes and minor feature enhancements. Designing with FRAM in mind, developers can future-proof the application to support even completely new features or major functionality overhaul within the memory footprint. Also, a single hardware platform can facilitate different models of applications that might greatly vary in functionalities and features.
The advantage of FRAM extends further by enabling modular wireless adapters that can be quickly interchangeable on the same FRAM MCU platform. By using the same hardware platform and the same MCU, this modular approach allows for quick turn around with prototypes and rapid deployment for more synergistic applications. This allows for wireless developers to save time on hardware development and focus more energy on developing the end application. Manufacturers in general can also reap these benefits. Less number of variants means easier and simpler inventory management, lower cost of issuance and ownership and, ultimately, faster time to market for memory modifications and version upgrades.
Universal memory allows for fluid transition from program to data, but it also opens the door for potential memory confusion and corruption. Since data and program memories are interchangeable, care must be taken to ensure that access to dedicated regions in memory are protected and validated. Access control as well as boundary and range checking are all well-known practices in embedded firmware design and the process is rather straightforward when developing a single static firmware. However, these rules and settings become harder to track when memory requirements can change dynamically, transitioning between firmware versions. This is especially true, when coupled with over-the-air updates that can significantly change many aspects of the applications. Fortunately, FRAM MCUs usually offer memory protection, access control and memory protection features to organize and enforce such rules and settings. It is important for and suggested that firmware developers take full advantage of these features to ensure robust and reliable applications.
Low-power and high-speed write opens a new dimension of flexibility for data-logging applications
In a wireless application optimized for low power, the structure and method of data logging can heavily influence the power efficiency of the system. It is well understood that radio operation typically dominates the power budget of a wireless system; common sense suggests that power can be reduced by minimizing the duty cycle of the radio, or, the duration that the radio must stay in active mode.
The overhead associated with each radio transmission, however, is often the unnoticed power-hungry activity. This includes, turning on the radio core, ramping up the power supply, calibrating the oscillator and frequency generator as well as the power consumed during transitions from different radio states. Therefore, it is also necessary to minimize the frequency between data transmission – basically, record as much data as possible before commencing the next radio operation. The limit for this type of power optimization is the size of storage memory available on the MCU. With the traditional model of ratio-based, Flash-RAM memory configuration, some might say the answer is the maximum size of Flash available on the MCU.
This does offer a significant data storage option, but also presents higher power consumption for Flash write operations and speed limitations due to extremely slow Flash writes. On the other hand, RAM is much faster, does consume less power and is offered in a larger size in some MCU platforms. Unfortunately, the high premium of RAM can quickly drive up the cost of the system. Moreover, the volatile nature of RAM does not play well with systems that have “inconsistent” power supplies, such as those found in energy-harvesting applications. The model’s susceptibility to data loss forces the system to either tolerate data loss or increase the frequency of data transmission and radio operations.
Once again, having the best of both worlds with low-power writes as well as non-volatile memory, FRAM can solve the problems that neither of the traditional memory technologies addresses. Figure 4 illustrates both such dimensions.
Figure 4: Low-power and high-speed write with FRAM
More importantly, embedded FRAM opens up a new vector of flexibility when it comes to data memory organization. Data-logging procedures can become more adaptive and adjust their buffer size. Endurance of 1015
(1 thousand trillion) access cycles (both writes and reads) offers a preferred solution for data storing and logging purposes. Low power, dynamic memory and reliability enhance battery-powered or energy harvesting wireless networks
The motivation for many wireless applications is to cut the cord, minimize the number of components and reduce the installation cost. Unfortunately, the inaccessibility issue that wireless systems try to solve remains a problem if maintenance is required. While the battery significantly contributes to the overall bill of the solution, the maintenance cost could actually outweigh the cost of the batteries by four times. Part of this cost is because of the unreliability nature of wireless and battery-powered systems. Improving battery life and data reliability will also solve many maintenance problems.
Reliability with zero-power write ensures data integrity even in systems susceptible to abrupt power loss. A zero-power write means sufficient energy is always stored to guarantee the completion of the current FRAM write, even in the event of sudden power failure. This feature significantly improves the integrity of the data or memory being processed or captured.
The high-speed and low-power write equates to low average current as well as shorter duration for such current consumption. Both of these aspects help shrink the data-logging energy signature, minimizing the total energy consumed per data-logging event. This results in improved battery life time, or reduces the capacity requirement for the energy storage in the system. Additionally, peak current is a key design consideration for energy harvesting applications where the type of energy storage places a restriction on peak current. Unlike a Flash write that requires a charge pump and high peak currents, a FRAM low-power write allows for preservation of high-peak events only for radio operations. This further alleviates the stringent requirements in power supply for energy harvesting systems. Wireless security and IP protection made easy with FRAM
The open- nature of wireless communication inherently makes it vulnerable to security threats. Security is critical in wireless systems to protect both over-the-air transmission data and intellectual property (IP) encapsulated in the wireless nodes. FRAM high-endurance memory allows for abundant storage for encrypted data, security keys and on-the-fly key generation. The same memory can also be used as processing buffer space for any encryption or security algorithm.
For instance, some of the NFC or secure credit card transaction applications require key generations and memory writes up to 100 times a day. On a typical Flash memory with 10K write/erase cycle, achieving 100K write/erase cycle endurance requires 10 bytes of memory for every one byte of data. In comparison, a FRAM memory byte can endure 1015
write/erase cycles – 100 billion times more than a Flash byte. For applications that require high endurance in the order of millions of write/erase cycles, FRAM’s endurance specification is unmatched by other embedded non-volatile memory technologies available today.
The IP protection mechanism can also be enhanced thanks to the duality of FRAM memory. Specifically, IP vendors can easily block off a contiguous segment in FRAM to secure both their IP code as well as the data memory needed to process during execution. This allows for IP vendors to conveniently package up their IP and ensures higher level of protection even against taint tracking.Conclusion
On the road to ubiquity and reaching out to improve every aspect of human lives, wireless applications have seen many challenges and successes. The countless number of advancements in microcontrollers, radios and embedded systems have been instrumental to enable such incremental improvements. Perhaps this revolutionary universal memory can serve as a necessary nudge for wireless systems to gain the momentum necessary to break through and become truly universal.About the author
Dung Dang is an applications engineer for Texas Instruments’ ultra-low-power MSP430 microcontroller (MCU) group. He joined Texas Instruments in 2007 and has since served in various roles in new product development.
Mr. Dang works closely with MSP430 MCU silicon development in addition to supporting development tools and software solutions. His focus also includes realizing various ultra-low-power wireless solutions on MSP430 MCUs. Dung Dang holds an MSEE degree from St. Mary’s University at San Antonio, concentrating on embedded systems and image processing.
If you found this article to be interest, visit Microcontroller / MCU Designline
where – in addition to my blogs on all sorts of "stuff" (also check out my Max's Cool Beans
blog) – you will find the latest and greatest design, technology, product, and news articles with regard to all aspects of designing and using microcontrollers.
Also, you can obtain a highlights update delivered directly to your inbox by signing up for my weekly newsletter – just Click Here
to request this newsletter using the Manage Newsletters tab (if you aren't already a member you'll be asked to register, but it's free and painless so don't let that stop you [grin]).
Last but certainly not least, make sure you check out all of the discussions and other information resources at MicrocontrollerCentral.com
, including blogs by yours truly.