UPGRADE YOUR BROWSER

We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!

cancel
Showing results for 
Search instead for 
Did you mean: 
Visitor pmcmahon
Visitor
16,604 Views
Registered: ‎06-03-2009

Can I add an NGC file to a Project of source-type "schematic"

Jump to solution

Hi,

 

Didn't know whether to post this in "Design Entry" or "Implementation"...

 

I have an NCG netlist for my design and want to send this to a customer.

 

I'm not sure what type of "source" they have defined their ISE project to be.

I know that if it's type NGC/NGO then there will be no problem for them to

read in and use the ngc file. Does anyone know if you can add ngc files to

"other" project types e.g. schematic/hdl

 

I have not found a way to do this. ISE tells me you can't mix them.

However, this page:

http://www.xilinx.com/itp/xilinx10/isehelp/ise_p_adding_a_source_to_a_project.htm

says:

Note EDIF and NGC macros files should not be added to a top level Schematic or HDL project. However, EDIF and NGC files that are instantiated in the design must be included in the project directory or in the macro search path. For details about the macro search path, see Translate Properties.

 

If I don't add it, but do have the ngc file in search path I get an error when compiling,

saying the design cannot be found.

 

Thanks for reading.

0 Kudos
1 Solution

Accepted Solutions
Visitor pmcmahon
Visitor
19,689 Views
Registered: ‎06-03-2009

Re: Can I add an NGC file to a Project of source-type "schematic"

Jump to solution

Hi Eilert,

 

In fact this is working now. It could not "find" the ngc file due to the naming

conventation in which it was initially exported.

 

When I renamed "top#block1.ngc" to simply "block1.ngc", ISE was able to

pick up the ngc file in the directory,

 

 

Thanks.

0 Kudos
8 Replies
Advisor eilert
Advisor
16,587 Views
Registered: ‎08-14-2007

Re: Can I add an NGC file to a Project of source-type "schematic"

Jump to solution

Hi,

your design is something like an IP-core to be used by the custumer?

Then you have to provide him the I/O specification (Entity) as well.

 

He needs to instantiate it either through a symbol for schematic workflow,

or through component declaration and instantiation in his prefered HDL.

 

There's no further need to add the ngc file to the project.

Once ISE finds an instance without corresponding source, it's treated as a black-box.

During implementation these black-boxes are filled with cores of equal name found in the macro search path (or the local project directory, which is the default).

Of course, errors occure when no fitting macro can be found. Either because they are just missing, or the I/Os do not match.

 

Have a nice synthesis

  Eielrt 

 

 

0 Kudos
Visitor pmcmahon
Visitor
16,582 Views
Registered: ‎06-03-2009

Re: Can I add an NGC file to a Project of source-type "schematic"

Jump to solution

Hi Eilert,

 

Thanks for your helpful reply!

 

Yes, we're delivering an IP block. I am trying to test that the deliverable will be ok for the

customer to integrate.

 

This is what I do:

In the original project (that creates the ngc file), I create a partition at the level of the

design I want (e.g. block1). This creates an ngc file called top#block1.ngc

 

In a completely new project, I copy over into the directory...

top#block1.ngc

top.v (which instantiates block1)

and create a black box verilog file with pin names, i/o declaration called "block1.v"

I create a new project as source type HDL.

I add top.v and block1.v to the project and run the implementation.

 

Synthesis completes but the implementation falls over with the message:

ERROR:NgdBuild:604 - logical block 'block1' with type 'block1'
   could not be resolved. A pin name misspelling can cause this, a missing edif
   or ngc file, or the misspelling of a type name. Symbol 'block1' is not
   supported in target 'virtex5'.

 

So, somehow, it's not picking up the ngc file in the directory.

 

Does this flow seem correct to you? Can you spot anything I'm doing wrong?

Is there a way I can read what pin names are in my ngc file to make sure

it's not a pin naming issue or bus delimiter issue.

 

Thanks again for your help.

0 Kudos
Visitor pmcmahon
Visitor
19,690 Views
Registered: ‎06-03-2009

Re: Can I add an NGC file to a Project of source-type "schematic"

Jump to solution

Hi Eilert,

 

In fact this is working now. It could not "find" the ngc file due to the naming

conventation in which it was initially exported.

 

When I renamed "top#block1.ngc" to simply "block1.ngc", ISE was able to

pick up the ngc file in the directory,

 

 

Thanks.

0 Kudos
Participant nc6
Participant
16,538 Views
Registered: ‎05-07-2009

Re: Can I add an NGC file to a Project of source-type "schematic"

Jump to solution

Extending this question if I may, can I ask you this question?

 

Can this IP Core be a system comprising of  (plb bus logic, a couple of master and slave peripherals). and the top level netlist and the wrapper file be shipped across to customer? and then the customer add this top level netlist and the wrapper to another system of his own?

 

I mean do i just need to ship the top netlist and not the subsystem (plb bus logic master slave peripherals) netlists or all of them together?

0 Kudos
Advisor eilert
Advisor
16,528 Views
Registered: ‎08-14-2007

Re: Can I add an NGC file to a Project of source-type "schematic"

Jump to solution

Hi,

Yes, it can be anything. As long as the client is provided with the neccessary I/O informations and (in some cases) constraints for his UCF file you can even put I/Os in the NGC-File. 

This is needed sometimes when you have interfaces that need special wiring in the IOBs. 

Still, you can not guarantee implementation success, because the timing depends on the place and route afterwards.

But with source code you have the same problem.

 

About the complexity of your design. Look at the EDK. You can either work in the EDK or you can set up your "MicroBlaze+Peripherals"-Design and export the NGC file to use it as a component in your ISE project.  

So even there it's done this way.

 

Even if you are synthesizing a hierarchical design, it will result in a single netlist. 
I'm not sure what happens, when you have a toplevel that uses instances of netlists in itself. Maybe this depends on some synthesis tool options.

It's probably a good idea to do a simulation of your netlist. (ngc2vhdl will generate the simulation code for that purpose)

 

Have a nice synthesis

  Eilert

0 Kudos
Highlighted
Participant nc6
Participant
16,510 Views
Registered: ‎05-07-2009

Re: Can I add an NGC file to a Project of source-type "schematic"

Jump to solution

Thanks for the response Eilert.

 

"

About the complexity of your design. Look at the EDK. You can either work in the EDK or you can set up your "MicroBlaze+Peripherals"-Design and export the NGC file to use it as a component in your ISE project.  

So even there it's done this way.

"

 

Just to be clear, I have given two project directories below. if create a system with a processor, bus system, a couple of master and slave peripherals in "main project 1". After synthesis it creates a top1.ngc and a top1.vhd/v wrapper. lets say pin and ucf information are also available. Now if I export the top1.ngc and top1.v/vhd wrapper to  the project directory "main_proj"  wil I be able to use the ngc file in the project 0, without any dependancy to project 1 (without exporting any other NGCs other than the top1.ngc to the project 0 directory)?

 

main_proj1/implementation

                 /projnav

                 /data

                 /etc

                 /............

 

main_proj0/implementation

                 /projnav

                 /data

                 /etc

                 .......... )

 

Technically i know this should have no problem to work with some minro effort, however i dont know if really this would happen.

 

thanks and regards,

Chakra.

Tags (4)
0 Kudos
Contributor
Contributor
15,482 Views
Registered: ‎10-11-2009

Re: Can I add an NGC file to a Project of source-type "schematic"

Jump to solution

Please, excuse me for my bad english.

I have similar problem like pmcmahon - cannot use NGC from previous project as part of new project. I use ISE WebPack 11.2 (L46).

1) I made project, synthesize it correctly (without I/O Buffers - this option is disabled, is this right?) and generate instatiation template.

2) New project ("Top-level source type" is "HDL"), copy ngc file from step 1 to the new project directory. i use instatiation template from project in step 1 in top level (or other "shell" file). But ISE cannot see NGC file and it is marked as "?". The message is, of course, "HDL Compilers:87 "<name of file>" line <"line"> Coud not find module/primitive '<name of instatniation>' ".

 I try to select the directory for "read cores" opition, but nothing happen.

If i set "Top-level source type" in second project (step 2) to "NGC/NGO"- ngc file is added like other source file and ISE see it correctly. but synthesis failed with the same message. 

Please, can you help me? i will keep searching for solution in ISE help files and manuals, but i realy need help...

 

0 Kudos
Contributor
Contributor
15,459 Views
Registered: ‎10-11-2009

Re: Can I add an NGC file to a Project of source-type "schematic"

Jump to solution
i found solution, just Verilog have some speciality...
0 Kudos