Bringing Source-Level Debugging Frameworks to Hardware Generators
TimeThursday, July 14th3:30pm - 3:50pm PDT
Location3000, Level 3
Design Verification and Validation
DescriptionHigh-level hardware generators have significantly increased the productivity of design engineers. They use software engineering to reduce the repetition required to express complex designs. However, these benefits are undermined by a lack of debugging infrastructure, requiring hardware designers to debug generated, usually incomprehensible, RTL code. This paper describes a framework that connects modern software source-level debugging frameworks to RTL created from hardware generators. Our prototype offers an IDE experience that lets designers set breakpoints in complex source code such as RocketChip, relate RTL simulation state back to source-level variables, and do forward/backward debugging, with almost no simulation overhead.