Emerging applications that interact heavily with the physical world (e.g., robotics, medical devices, the internet of things, augmented and virtual reality, and machine learning on edge devices) present critical challenges for modern computer architecture, including hard real-time constraints, strict power budgets, diverse deployment scenarios, and a critical need for safety, security, and reliability. Hardware acceleration can provide high-performance and energy-efficient computation, but design requirements are shaped by the physical characteristics of the target electrical, biological, or mechanical deployment; external operating conditions; application performance demands; and the constraints of the size, weight, area, and power allocated to onboard computing-- leading to a combinatorial explosion of the computing system design space. To address this challenge, I identify common computational patterns shaped by the physical characteristics of the deployment scenario (e.g., geometric constraints, timescales, physics, biometrics), and distill this real-world information into systematic design flows that span the software-hardware system stack, from applications down to circuits. An example of this approach is robomorphic computing: a systematic design methodology that transforms robot morphology into customized accelerator hardware morphology by leveraging physical robot features such as limb topology and joint type to determine parallelism and matrix sparsity patterns in streamlined linear algebra functional units in the accelerator. Using robomorphic computing, we designed an accelerator for a critical bottleneck in robot motion planning and implemented the design on an FPGA for a manipulator arm, demonstrating significant speedups over state-of-the-art CPU and GPU solutions. Taking a broader view, in order to design generalized computing systems for robotics and other physically embodied applications, the traditional computing system stack must be expanded to enable co-design with physical real-world information, and new methodologies are needed to implement designs with minimal user intervention. In this talk, I will discuss my recent work in designing computing systems for robotics, and outline a future of systematic co-design of computing systems with the real world.
Sabrina M. Neuman is an Assistant Professor in the Department of Computer Science at Boston University. Her research interests are in computer architecture design informed by explicit application-level and domain-specific insights. She is particularly focused on robotics applications because of their heavy computational demands and potential to improve the well-being of individuals in society. She received her S.B., M.Eng., and Ph.D. from MIT, and she was a postdoctoral NSF Computing Innovation Fellow at Harvard University. She is a 2021 EECS Rising Star, and her work on robotics acceleration has received Honorable Mention in IEEE Micro Top Picks 2022 and IEEE Micro Top Picks 2023.