hi all,
I am using xilinx ISE tool for my design. I want to use the library elements available .However when i went through the help. for some elements i found that they are inferred not instantiated.What is the basic difference between these 2. plz help
thanks in advance
Some of the components can be inferred by the tool, while the others needs to be instantiated.
inference means, automatically tool will create the library primitives for the code that you have written.
Instantiation means, we will use the prmitives in the hdl code for generating the logic.
so for inference you have to strictly follow that particular coding style.
Instantiation means to put library parts directly into your schematic or HDL. There's a long list of available library parts with usage examples in your Libraries Guide, chapter Design Elements.
The synthesis tools recognize certain HDL coding styles and automatically generate (infer) counters, memory, arithmetic, etc. See the XST User Guide, chapter HDL Coding Techniques. That's a very helpful chapter with many examples.
Re: Difference between inferring instantiating design elemen
Hi,
Thanks. Now I am clear about that. When we write code for some block its inferring and when we use the already available module its instantiating.but i have a doubt still in mind when you are inferring , the same available element is inferred , for many options .Like a counter inferred will be same if you keep a Ce signal, Tc signal or you do not keep .Is there anyway to instantiate these modules . Or just we have to write code.
When you instantiate a counter, it puts the entire part into your layout, and then an optimizer deletes any portions of the counter that you aren't using.
When you infer a counter, the synthesizer generates flip-flops and gates that do exactly what you want. I don't think it starts with a library part.
Whichever way you do it, the final results are usually similar.