Advanced driver-assistance systems (ADAS) are quickly being integrated into almost all new automobiles. These systems often introduce automakers and Tier 1s with unique computing needs that the standard CPU or GPU may not be well suited for.
Example of ADAS applications. Image used courtesy of Microsemi (PDF)
As is the trend in many other fields in electrical engineering, a well-accepted solution for ADAS has been hardware acceleration—unique hardware meant for a specific task. However, unlike other industries where ASICs are the go-to solution, ADAS system designers tend to opt for FPGAs (PDF).
A Case for FPGAs Over ASICs
While ASICs may seem like an appropriate solution for hardware acceleration, there are many reasons why FPGAs are more suitable for ADAS.
First and foremost, FPGAs offer high customizability and flexibility. Every smart car has a number of distinct ADAS functions—reading input from unique sensors, applying proprietary algorithms on the data, and performing specific actions based on the data.
Example of how one of Intel’s FPGAs might be integrated into a mono-front camera ADAS. Image used courtesy of Intel
As such, each vehicle developer integrates different sensors, prioritizes different applications, and implements algorithms in different ways. The use cases, data acquisition systems, and requirements are simply too broad and dynamic, and an FPGA allows the designers the ability to customize their solutions specifically to their needs while differentiating from the competition.
High-level, general comparison of FPGAs vs. ASICs. Image used courtesy of Hardware Bee
Along the same lines, FPGAs allow for scalability. As new models of the same car are developed with more complex tasks and design constraints, engineers can easily build on the FPGA design from previous generations without having to go through the hassle of spinning a new ASIC.
Finally, quick time to market makes FPGAs a desirable solution for car manufacturers and Tier 1s who are frequently releasing the newest, best thing.
Constraints Unique to Automotive Design
Designing with FPGAs in a mission-critical automotive design is unlike design in other environments because of its complex constraints and harsh environments.
Reliability is a paramount concern for FPGAs in ADAS. Historically, FPGAs are prone to failure due to the packaging technology, assembly technology, environmental overstress, or ESD, all of which are catalyzed by high temperatures. This is an important design consideration when using FPGAs in ADAS since automobiles tend to experience extreme operating temperatures.
As a result, many suppliers have created FPGA architectures that are able to operate under extreme conditions.
Layers of automotive security. Image used courtesy of NXP
Further, security is always an important concern as automobiles become smarter, and more connected via the IoT. Automobiles contain hundreds of embedded devices communicating over the CAN protocol, which are not always designed or optimized for security concerns.
The communication between embedded devices in a car via the CAN bus can render the system vulnerable to security threats. FPGAs can be leveraged for security in ADAS systems to employ encryption for intra-vehicle communication or perform system authentication with a hardware root-of-trust.
FPGA Demand on the Rise
As a testament to the increased demand for FPGAs and the subsequent need for FPGA designers, Lattice Semiconductor has opened a comprehensive training center meant to train engineers in the art of FPGA design. One of the driving forces for this program is the electrification of the automobile and the correlating need for more FPGAs.
Xilinx, which specializes in automotive FPGAs, has increased production for OEMs as ADAS becomes a staple in newer vehicles. Image used courtesy of Xilinx
Gowen Semiconductor recently rose to the challenge of meeting this demand by releasing automotive-grade FPGAs purpose-built for telematics, infotainment, and powertrains in vehicles. Gowen notes that these devices are AEC-Q100-qualified, which certifies them as resilient and capable of withstanding harsh automotive conditions.
Do you have experience working with FPGAs for ADAS applications? If so, what advice do you have for other designers with similar projects? Share your thoughts in the comments below.