Publication
ISCA 2024
Tutorial

Agile Software-Hardware Co-Design of AI-Centric Heterogeneous SoCs

Visit website

Abstract

Intelligent edge systems constitute a key growth segment within the cloud-backed cognitive IoT marketplace. The EPOCHS (“Efficient Programmability of Cognitive Heterogeneous Systems”) research project at IBM (with collaborative university partners) is driven by the specific edge application domain of connected autonomous vehicles. An adjacent domain application considered was extended reality (XR), modeled by the ILLIXR project at UIUC. Our team has developed leading edge methodologies for agile software-hardware co-design of heterogeneous SoCs to support the target application domains. As part of this project, we have successfully taped out two functional EPOCHS chips in 12 nm technology and have demonstrated full-stack solutions using FPGA and ASIC versions of the chipset. Specific use cases that have been illustrated in the context of our active technology transition phase are: (a) collaborative perception, involving a pair of communicating autonomous vehicles; (b) detecting hazards while scanning for objects and vehicles during autonomous navigation; (c) sentiment analysis of human-expressed conversations or commands (using an NLP algorithm). In this tutorial, we summarize the key innovations and open-source tools-driven agile methodology derived from this 5-year DARPA-sponsored project (2018-2023) that is now transitioning into commercially deployable solutions in partnership with clients. In particular, we will cover the following aspects of the overall topic area in considerable detail: (a) the fundamentals of Columbia’s ESP-driven agile SoC methodology, with demonstrated proof points in support of 10-100X improvement in designer productivity; (b) domain-specific hardware accelerators for AI/NLP – architecture and design methodology that address customer requirements in real-time performance, energy efficiency and security; (c) intelligent task scheduling and compiler support for domain-specific SoCs targeted for the important application space of connected autonomous vehicles, easily portable across adjacent application domains.