Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

recompile and integrate NVDLA RTL #6

Open
ramcn opened this issue Oct 25, 2019 · 3 comments
Open

recompile and integrate NVDLA RTL #6

ramcn opened this issue Oct 25, 2019 · 3 comments
Labels
question Further information is requested

Comments

@ramcn
Copy link

ramcn commented Oct 25, 2019

Hello,

I was looking for some instructions to recompile modified NVDLA RTL and integrate it into firesim.
Below is my high level understanding:

  1. Compile the RTL and generate a new AFI on AWS FPGA AMI using below instructions
    http://nvdla.org/vp_fpga.html#generating-the-afi-on-aws-fpga-ami
  2. Add the new AFI id in "config_hwdb.ini"
  3. Edit defaulthwconfig in config_runtime.ini to specify the above new entry  config_hwdb.in.
  4. Follow the firesim documentation to launch the simulation to use the new RTL.

It will be great if someone can validate this.

Thank you,
Ram

@farzadfch
Copy link
Member

farzadfch commented Oct 25, 2019 via email

@ramcn
Copy link
Author

ramcn commented Oct 26, 2019

Thanks for the response farzad. I had a quick look at it. It seemed more like a document to configure the firesim FPGA image and not NVDLA as such. I was trying to figure out how NVDLA RTL compilation (using VCS) fits in this integration process. For example changing the number of MACs, recompiling the RTL on a system which has VCS license and integrating it into firesim soc on AWS.

So thought this is the right document to begin with:
http://nvdla.org/vp_fpga.html#generating-the-afi-on-aws-fpga-ami

Please let me know if my understanding is incorrect.

Thanks,
Ram

@farzadfch
Copy link
Member

farzadfch commented Oct 29, 2019

http://nvdla.org/vp_fpga.html#generating-the-afi-on-aws-fpga-ami

This link is not related to FireSim-NVLDA but rather to the NVDLA "Virtual Platform". Similar to FireSim-NVDLA, it runs on EC2 but it's totally a different beast.

You can follow this to make a new NVDLA verilog based on predefined configurations (e.g. nv_small and nv_large): http://nvdla.org/hw/v2/environment_setup_guide.html. Or you can edit the generated verilog by hand if you know what you are doing.
And follow this to run the unit tests that come with NVDLA: http://nvdla.org/hw/v2/verif_guide.html

After making sure that your customized verilog is healthy and can be synthesized by Vivado, you should replace the NVDLA verilog files in firesim-nvdla/target-design/firechip/nvidia-dla-blocks/vsrc/large with your customized ones and modify this Tcl script accordinagy: firesim-nvdla/platforms/f1/aws-fpga/hdk/cl/developer_designs/cl_firesim/build/scripts/encrypt.tcl. Then follow the instructions in Building Your Own Hardware to make a new AGFI.

@farzadfch farzadfch added the question Further information is requested label Oct 30, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
question Further information is requested
Projects
None yet
Development

No branches or pull requests

2 participants