← All episodes

Ep 21: Caroline Trippel | High-assurance Computer Architectures

Summary

This episode of the Computer Architecture Podcast, hosted by Suvinay Subramanian and Lisa Hsu, features a deep dive into the intersection of hardware and software assurance with Dr. Caroline Trippel, an Assistant Professor in the Computer Science and Electrical Engineering departments at Stanford University. Dr. Trippel’s research is focused on developing high-assurance computer architectures that are demonstrably correct, secure, and reliable.

The core of the discussion centers on the challenges of formal verification for complex hardware designs, a problem with "staggering statistics" where over 85% of hardware projects still contain critical bugs despite massive verification efforts. Dr. Trippel advocates for a shift from traditional, manual, and top-down verification methods to an automated, domain-specific, and "bottom-up" approach. Her work involves building new hardware-software contracts that expose more micro-architectural details to software, allowing for the creation of parameterized compilers and tools that can find and repair hardware-related bugs.

The conversation explores how the formal verification challenges inherent in traditional memory consistency models (like Total Store Order) are fundamentally related to the recent wave of hardware security vulnerabilities (like Spectre and Meltdown). Dr. Trippel details how her team's techniques, originally for verifying memory models, were repurposed to automatically synthesize abstract micro-architectural specifications (μSpec models) from RTL, enabling the discovery and mitigation of side-channel attacks through compiler-level defenses and novel hardware-software contracts.

Chapters

Takeaways