Altera_Forum
Honored Contributor
12 years agoManaging One Design with Multiple FPGA Output Binaries
I have a single project that I would like to build into three FPGA images. The only difference between the FPGA images is which top level Verilog file is used. All three images have the same pin declarations, timing constraints, etc. An external host processor loads one of the three images into the FPGA depending on what task the FPGA needs to complete.
Is there a simple, scalable way to make that happen automatically each time I build? I say scalable because the design will probably have more than three variations in the future. Right now I’m manually editing the project constraints to change the top-level source file, then compiling. I repeat that process for each additional binary. Not only is that tedious, but I have to check up on it since it doesn't automatically advance to the next compile. I want to change to a system where I can just kick off a single build that repeats synthesis, fitting, etc using each top level Verilog file. Ideally I would click the compile button once in Quartus and end up with three .rbf files. Is there a simple approach, or am I going to need a large Tcl script that includes all the project constraints?