I'm using XST (synthesis tool in the Xilinx ISE 14.7 suite) to compile VHDL source files to a netlist (*.ngc file).
My code uses several Xilinx IP Cores like ChipScope ILAs for debugging, which are also pre-synthesized as ngc files. I would like to ship only one ngc file to our costumer. It's a proof of concept design, so he should see a simple interface:
- our IPCore + VHDL component
- his ChipScope ICON IP Core / netlist with 5 open ports for our IP Core
How can I merge these ngc files info one ngc file?
The ISE design flow uses "Translate" to merge all netlists together and emits a ngd file, which is the input for the "Map" step.
Internal debates on how easy it was to find the answer aside there's some cause for propagating the question and it's answer in Stackoverflow. The idea being Stackoverflow is a search resource before someone asks the same question again, striving to be a higher quality resource in general than found by searching the Internet at large.
While googling merge .ngc Xilinx I found the very first hit lead to an answer on the Xilinx web site (See NGC File include. NGC file problem asking how to merge Native Generic Compiler (ngc) netlists, the answer leading to a now dated v 1.2 UG628 Command Line Tools User Guide, the latest is v 14.7 available only through that version's Help Center, it doesn't show up in on line searches).
So there's a command line tool named ngcbuild that's described as capable of merging .ngc netlists in Chapter 24 of the Command Line Tools User Guide:
We look in the linked Xilinx support item and we see the presumption that merging netlists is done for ChipScope just as Paebbel's asks. This is a common thread through most of the uses for merging .ngc netlists.
This is supported in the ChipScope Pro Software and User Guide, (UG029, v 14.3) which demonstrates usage. See the section Edit CDC Project Step:
(Without invoking ChipScope repeatedly.)
It certainly appears to be the right tool for what the question asks, and the usage of Chipscope implies it's need in a lot of cases according to the googling results.