Publication | Closed Access
A pythonic approach for rapid hardware prototyping and instrumentation
57
Citations
13
References
2017
Year
Unknown Venue
Hardware ModelingEngineeringHardware Verification LanguageComputer ArchitectureSoftware EngineeringHardware Design LanguageEmbedded SystemsRapid HardwareHardware ArchitectureHardware SecurityHardware DesignHardware Description LanguageParallel ComputingProgramming Language FeaturesPyrtl-generated HardwareDesignComputer EngineeringSystem PrototypingComputer ScienceFpga DesignSoftware DesignHardware EmulationProgram Analysis
We introduce PyRTL, a Python embedded hardware design language that helps concisely and precisely describe digital hardware structures. Rather than attempt to infer a good design via HLS, PyRTL provides a wrapper over a well-defined "core" set of primitives in a way that empowers digital hardware design teaching and research. The proposed system takes advantage of the programming language features of Python to allow interesting design patterns to be expressed succinctly, and encourage the rapid generation of tooling and transforms over a custom intermediate representation. We describe PyRTL as a language, its core semantics, the transform generation interface, and explore its application to several different design patterns and analysis tools. Also, we demonstrate the integration of PyRTL-generated hardware overlays into Xilinx PYNQ platform. The resulting system provides an almost "pure" pythonic experience for the prototyping and evaluation of FPGA-based SoCs.
| Year | Citations | |
|---|---|---|
Page 1
Page 1