Don’t Let Storage Be an Afterthought in Designing for IoT, the Metaverse, and Automotive
January 17, 2022
Story
Embedded devices are generating an enormous surge of data. That should come as no surprise to anyone who works in the IoT space. What might be surprising is just how big this surge is.
According to IDC, IoT devices will generate over 73 zettabytes (ZB) of data by 2025.
In other words, as the IoT boom continues, these devices are going to create a massive tidal wave of data that will need to be channeled, processed, and stored.
This problem is not limited to any one industry. According to research firm Yole Développement, auto manufacturers installed 4 Billion gigabytes (GB) of NAND-based storage in 2021, and are likely to need 16 Billion GB in 2024 and 78 Billion GB in 2028. Meanwhile, Western Digital estimates that smartphone users generated storage workloads of up to 30GB per day per user in 2020, up from less than 15GB per day in 2015.
Before that data tidal wave crashes onto you, it pays to be prepared.
Data from the Yole Developpement NAND Market Monitor Q4 2021.
Planning for Embedded Storage
The simple fact is that the modern, always-on, fully digital world depends on massive amounts of data. Developers and system architects of embedded systems need to consider storage needs from the start of the product development process, regardless of their industry.
It’s not just about the volume, either — although that’s clearly a significant consideration. Storage users need to evaluate performance (speed of read/write operations), and reliability to reduce mean time between failure (MTBF). One part of reliability pertains to endurance, which is essentially the ability to write and rewrite large amounts of data over the device’s lifetime. Users must also consider the specific connectivity and capacity needs for their design or product when choosing storage.
Let’s start with connectivity. When developing non-embedded, cloud-dependent applications, storage is relatively easy to solve: Just allocate more S3 buckets. If only it were so simple in IoT. It’s true that for long-term storage, data from IoT devices can, like any other bits, be stored in the cloud. And the cloud is a significant part of the equation in IoT, but it isn’t a one-stop shop.
Cloud storage depends on a device’s ability to connect to the cloud, and in many applications, network connectivity is not a given. Devices deep underground or far out at sea may be disconnected from the internet for long periods of time, and thus unable to reach cloud storage. For autonomous vehicles relying on embedded sensors, the latency and intermittent nature of a wireless connection can introduce unacceptable risks. For such devices, onboard storage is far faster and more reliable.
For embedded devices, endurance looms larger than it does for personal mobile devices or systems located in a datacenter, where replacement is straightforward. It’s much more difficult to replace a storage unit in a device located on the tip of an antenna 300 meters above the ground, or deep underwater in an offshore drilling rig. So designers will want to choose storage that will last a long time, both with respect to endurance (many read/write cycles) and the capacity that will likely be needed over the life of the device.
Measuring Endurance Correctly
The endurance of a storage device is measured by the amount of data you can write to it, in terabytes. The terabytes written (TBW) limit varies based on the type of storage, so you’ll need to estimate the data write requirements based on the actual workloads you anticipate.
Another important item to consider is the write amplification factor (WAF). WAF is the amount of data that is actually written to the NAND versus the amount of data sent to the NAND by the system. These two numbers can differ if the device receives a lot of data writes that don’t fill up memory pages. This results in empty storage space spread across many different pages, which can only be freed up by moving the data (similar to defragmenting a hard drive). The process of moving that data uses up additional writes.
What this means is that if the host sends 50TB of data to a storage device supporting, say, an automotive application and the device has to move a lot of data around to fill the memory pages efficiently, resulting in a WAF of 3.0, the actual TBW to the NAND is 150TB. Obviously, that will cause the useful life of the NAND to be much shorter than if you were expecting a WAF of 1.0. There are things that can be done on the host side to solve for this, but if you were to calculate incorrectly, in this case, the actual useful life could only be 1/3 of that and may cause the system to fail unexpectedly. This is just another reason why a systems designer needs to know how a car will be accessing the storage device and to consider the life of the product.
Designing Storage for IIoT
Industrial devices bring their own set of unique requirements, which will vary depending on the specific application.
Environment: In what environment will the device operate? Environmental conditions that can affect the reliability and performance of storage devices include altitude, temperature, humidity, and vibration. High pressure and acceleration may also come into play. Ensure that the storage you are using is rated for operation in its intended environment — or future proof it for environments that it may encounter in the future.
Endurance: How much data can you write to the device? As mentioned above, the life of a device is important to consider — but so too is the frequency of writes. New workloads often require storage that can support continuous read and write operations for a prolonged period of time. Higher endurance will reduce the amount of maintenance needed.
Data retention: How long do you need the data to be reliably stored for? Will the data be processed and analyzed at the endpoints, in an onsite device near the “edge” device, or in the cloud? For some industrial applications, you will need to retain data for a longer time: For instance, in agricultural or weather applications, you may need to retain data for months or years in order to compare seasonal temperature patterns. Your storage solution needs to be able to retain data for as long as needed based on the application and your organization’s (or industry’s) data-retention policies.
Remote monitoring: IIoT devices aren’t always easily accessible. How can you monitor these devices to ensure that they are operating properly — or predict defects before they actually occur? Monitoring and predictive maintenance are common considerations for production equipment already — and they are also important for IIoT devices and the storage supporting them.
Storage in Automotive Applications
Embedded devices intended for use in passenger cars, trucks, or other vehicles will need to be robust enough to survive a wide range of environments, in addition to dust, dirt, vibration, and acceleration. In addition, safety issues and regulations may impose their own unique requirements. Here are some storage considerations for the automotive industry.
Automotive-grade: When developing embedded devices for automotive uses, automotive-grade storage is a must. These devices need to withstand wider temperature ranges, from -40C to 105C. In order to meet the automotive industry’s rigorous requirements, these storage units will have gone through extensive testing to ensure that they are less susceptible to failures.
Interface: Designers of automotive devices have a wide range of storage interfaces available, including SD, e.MMC, UFS, and PCIe. Which one you use will depend on the SoC in use. But performance requirements can also affect this choice.
For example, e.MMC would be a good choice for applications that don’t require ultra high-speed reads and writes, and can help avoid the challenges of routing and signal integrity that high-performance designs entail. UFS is the next step up in performance, and is growing in popularity. PCIe is on the horizon and will be a good choice to support high-performance applications.
Endurance: Finally, in automotive, as in IIoT, endurance is important. Vehicles generate a lot of data, which can lead to a high volume of read and write operations. Ensure that the TBW capacity of the storage you’re using is appropriate to the expected life of the device you’re building.
Storage for the Metaverse and Beyond
You might not think that embedded devices would have a big role to play in the metaverse, but they do — from the 3D headsets used for truly immersive virtual reality (VR) experiences to more portable glasses that provide augmented reality (AR) experiences as the users walk around in the real world. Such devices make use of embedded storage which brings its own set of considerations.
Power consumption: While we’re still very early in the development of AR and VR devices, there are a few general guidelines. Storage in these devices will borrow heavily from the requirements of mobile devices like smartphones. Power consumption is critical, as it affects battery life — a primary consumer concern.
Weight: Weight may become unusually significant in AR. For wearables, like eyeglasses, every gram counts. If your eyeglasses weigh just 12 grams, adding even one or two grams is a noticeable difference. The storage device form factor and size will affect its weight and should be taken into account.
Regardless of whether we’re all going to be walking around with AR glasses or not, one thing is clear: The range of industries and use cases for embedded computing is continuing to expand. That means data volumes will continue to increase, and with them, the need for more storage — and storage that is faster, longer-lasting, and more resistant to environmental factors than ever before. Embedded system designers would do well to not let storage become an afterthought and consider storage from the start when planning the next generation of IoT.
Yaniv Iarovici is the marketing director of IoT and Connected Home at Western Digital. Yaniv is responsible for developing go-to-market strategies for storage solutions targeting these markets. He also oversees Western Digital’s eco-system development for these and related industries.
A 20-year veteran with a diverse background in software, business development and product marketing in the high-tech industry, Yaniv has been with Western Digital for over 14 years holding various Engineering and Marketing roles.
Before joining Western Digital Corporation, Yaniv held engineering and management positions at M-Systems. Prior to that, he was a software engineer at IAI (Israeli Aerospace Industries) and Friendly Robotics.
Yaniv holds a bachelor’s degree in both Mathematics and Computer Science from the University of Haifa.