Challenge #12 Picking Tools (project GA) - jtristan123/HW-for-AI-ML-ECE-410 GitHub Wiki
Based on your initial benchmarking and profiling of your code, make a first informed decision
what part(s) should be accelerated in HW.
You may want to do a back-of-the-envelope calculation to see if the HW acceleration is worth the
effort. To do so, determine the following times:
The HW acceleration is only worth it if T5 + T6 + T7 < T3.
Next, based on your background and interests, pick one of the high-level tools listed below that
will allow you to do rapid HW prototyping in Python.
• PyMTL (Mamba):
o https://pymtl.github.io
o User group: https://groups.google.com/g/pymtl-users
o An open-source hardware modeling, generation, simulation, and verification
framework.
o MyHDL allows a subset of Python code to be translated to Verilog or VHDL. It offers
co-simulation options where native Python code runs alongside a compiled
simulation model of your hardware.
o Hardware-software co-simulation using PyMTL3:
§ Create your hardware model in PyMTL3
§ Develop software that will interact with the hardware
§ Set up the co-simulation environment
§ Run and analyze results