FPGAs Enable a New Class of Always-on Applications

New ultra-low-power FPGAs provide system designers the flexibility to create completely customizable low-power sensor-management solutions to bring new classes of applications to life.

There’s been a pronounced use of sensors in consumer electronic products over recent years as manufacturers compete with each other to offer exciting functions that make devices more user-friendly. In fact, it’s common to find about a dozen sensors in any given smartphone today, and with smartphone shipments growing rapidly, the sensor market is witnessing unprecedented growth. The emergence of the Internet of Things (IoT), wearable computing, next-generation mobile health equipment and wireless sensor networks—all made possible in part by the growing use of sensors—will no doubt exponentially increase sensor use even further. By some estimates, the sensors market alone is expected to be a 16B unit market by 2016 (Source Yole). The types of applications using sensors are varied and disparate, but the common theme across all markets is the requirement to use sensors in an always-on mode, thus necessitating the use of ultra-low-power components.

High-end smartphones typically include several sensors such as barometers, thermometers, gyroscopes, multiple cameras, touch, accelerometers, magnetometers and GPS, just to name a few. Smartphones of the future will likely have even more sensors with more valued-added features, such as the monitoring of human vital signs as one example. With this increasing use of sensors in a single device, high-end smartphones and other products are designed with dedicated hardware to manage sensors, thus creating an independent sensor subsystem. Independent sensors operating in isolation provide interesting data; however in some situations it is the fused data from multiple sensors that make the data useful to create compelling applications. For example, data from a gyroscope, accelerometer and magnetometer are together used to create an inertial navigation system. In addition to managing all sensors, the dedicated sensor manager chips (typically an MCU) also perform sensor-related tasks such as fusion. However, MCU-based sensor managers most often consume too much power to be used in an always-on mode, limiting the use of sensors.

Always-on Gesture Recognition
Although smartphones have incorporated sensors for several generations now, few use these sensors to their full potential because of power consumption. For example, if the accelerometer, magnetometer, barometer and gyroscope are used in an always-on fashion to augment the GPS sensor, one can create a dead-reckoning application without manual activation by the user. This would be useful to create an indoor navigation application. While all the components already exist in many smartphones to perform this function, using sensors in an always-on mode and computing the data to create an inertial navigation system is extremely power-hungry. Such a solution would drain the smartphone battery within hours.

Figure 1: Using an FPGA for gesture recognition

However, even with the power limitations of today’s smartphones, several always-on features could still be implemented using ultra-low-power FPGAs.

Figure 1 illustrates an implementation of a ultra-low-power FPGA used as a companion chip to the host, (application processor or sensor manager MCU ) to enable always-on gesture recognition. Independent I2C masters may be used to manage different sensors to ensure the right throughput is achieved from each sensor. The always-on sensor manager may be designed to continuously monitor the accelerometer to detect specific patterns. After a predefined gesture has been detected, the always-on sensor manager can interrupt the host to take action or enable other sensors, for example. This design approach would enable the host to be in standby until a valid gesture has been detected and thereby reduce total system power.

Always-on Context-Aware Smartphone:
The accelerometer along with an ultra-low-power FPGA may be used to implement a new class of always-on, context-aware features. Context awareness is a class of applications that sense the mobile device’s environment and adapt to surroundings. For example, if the mobile device can detect that it has been placed on a table, it can then decide to stop polling the GPS sensor and thereby save total system power. While there are many interesting use cases for context-aware devices, power consumption has kept this trend at bay. In order to implement power-efficient context-awareness in a mobile device, it is the context-change detection that needs to be performed in an always-on fashion. Once the change is detected, it can then be classified into a pre-defined state like in hand, on a table, in a car and so forth.

Figure 2: Context awareness using a low-power FPGA

Figure 2 illustrates the use of the ultra-low-power FPGA used in an always-on mode to implement context awareness in a mobile device. Here, the FPGA and the accelerometer are always-on— i.e., in active mode. On the host side, the FPGA is interfaced to either the application processor (AP) or the sensor manager MCU chip using a standard SPI bus. The FPGA interfaces to the accelerometer using an I2C bus and constantly reads its output. This data is buffered within the FPGA and passed on to the context-change detector. The intelligence required to detect a context change is implemented within the FPGA along with the interrupt logic to wake up the host when a change is detected. The host can then read the buffered accelerometer data to classify the context change into relevant classes such as on table, on hand, etc. Finally, the device context may be passed along to the application layer to create the use case.

Always-on Pedometer
Pedometers are very popular among health enthusiasts. Since the smartphone is physically with the user through the entire day, it would be natural to embed a pedometer within a smartphone. Most pedometer applications available on smartphones today drain the battery too quickly to make it useful. The power issue can be overcome by using an ultra-low-power FPGA to implement the entire pedometer solution in a single chip.

Figure 3: Pedometer using low-power FPGA

Figure 3 shows how an ultra-low-power FPGA can be used to implement a pedometer solution in a single chip. In this illustration, the FPGA and the accelerometer are used in an always-on mode and the entire pedometer logic is implemented within the FPGA. The accelerometer output that is noisy is first filtered and this output is passed along to a step counter block. Embedded RAM within the FPGA may be used to keep count of the steps. The host can poll the FPGA as required to read the number of steps taken. Parameters such as calories burned, distance covered, etc. may be computed at the application level based on the step count information. The advantage of this implementation is that the accelerometer and the FPGA can work independent of the rest of the system to enable a low power pedometer solution.

Ultra-low-power is a fundamental requirement for sensor management across multiple markets. The use of always-on sensors in smartphones is going to create innovative application and use cases over the next few years. In other areas such as the Internet of Things and wireless sensor networks, sensors and actuators are being used extensively to create compelling application. New ultra-low-power FPGAs provide system designers the flexibility to create completely customizable low-power sensor management solutions, bringing new classes of applications to life.


Subra Chandramouli is a senior marketing manager at Lattice Semiconductor. He has been working in the mobile handheld industry for the last 15 years. Prior to joining Lattice, Subra was a successful entrepreneur and has worked at Cypress semiconductors and Intel Corporation. Subra has one patent and 4 patent application on file all in the field of flash memory design. He has an MBA from Duke University, NC and a M.S.EE from Wright State University, OH.

Share and Enjoy:
  • Digg
  • Sphinn
  • del.icio.us
  • Facebook
  • Mixx
  • Google
  • TwitThis

Tags: ,