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: 
Highlighted
Newbie engrforever
Newbie
14,148 Views
Registered: ‎04-30-2009

ISE 11.1 - Running simulations

I am new to the xilinx products and HDL designing. I have a working design that was tested earlier using only ModelSim. I downloaded the most recent ISE 11.1 to get a feel for it and am having issues.

 

1. I cannot seem to simulate my previously working design with the testbench. It looks like the only available simulator is ISIM and it is not allowing me to force values either.

2. My output pins are always showing up as "UUU..."

 

Please advice what my options are and what can I try?

0 Kudos
17 Replies
Xilinx Employee
Xilinx Employee
14,123 Views
Registered: ‎09-14-2007

Re: ISE 11.1 - Running simulations

Hi,

 

We did not disable the capability to use ModelSim when you are in the project navigator environment. You should be able to accomplish exactly what you were doing in 10.1 and prior versions.

 

Can you clarify how you were forcing values? If it was using the force command in ModelSim, there is an equivalent command in ISim as well.

 

Please take a look at the ISim documentation that details how you can achieve this:

 

http://www.xilinx.com/support/documentation/sw_manuals/xilinx11/plugin_ism.pdf

 

isim force Command
The isim force command adds or removes a value on a signal. This command forces a value on the signal,
until isim force remove is issued. This command works only for VHDL signals and Verilog wire types. It
does not work for Verilog regs. The force command cannot be overridden by the stimulus from the design. The
force is valid until the simulation is restarted or until the isim force remove command is issued
Note This command is case sensitive.
isim force {add|remove} < object_name > < value > [option]

 

Thanks

Duth

 

0 Kudos
Visitor lbeli
Visitor
14,035 Views
Registered: ‎05-13-2009

Re: ISE 11.1 - Running simulations

hi!

 

i am having similar proglems. i can force values with force command, but i know that in previous versions i  was able to force values in GUI with right click on signal, and even set signal to be a clock.

i am also missing "create waverofm benchmark" option in project navigator. what would be the substitute?

 

i am using webpack.

 

 

thanks!

0 Kudos
Xilinx Employee
Xilinx Employee
14,024 Views
Registered: ‎09-14-2007

Re: ISE 11.1 - Running simulations

Hi,

 

I see now what you guys are referring to. What you are referring to is the Testbench Waveform Editor. This tool has been removed from PN in the current release, please see the Whats new document in ISE. The decision was made due to the fact that it would have a been a lot of work to rework it to make it efficient and stable to be of the same quality level of the rest of the tools and there were not significant requests to keep it around. Please see my earlier thread asking for feedback on removal of this product.

 

The substitute would be to write HDL code for testbenches. The ISE Language templates have very good testbench templates and similarly the Synthesis and Simulation Design Guide has examples as well.

 

Thanks

Duth

 

0 Kudos
Newbie dgustavson
Newbie
13,874 Views
Registered: ‎05-26-2009

Re: ISE 11.1 - Running simulations

Re: Removal of Testbench Waveforms

 

"please see the Whats new document in ISE"

 

I do not see anywhere a mention of this new UNFEATURE in ISE 11.1, removal of testbench waveform support.

 

"there were not significant requests to keep it around. Please see my earlier thread asking for feedback on removal of this product."

 

I don't have a habit of going into this forum looking for problems.  I only come here when I have a problem.  Now I do have a problem; I have to learn how to write test benches in HDL. 

 

 

0 Kudos
Historian
Historian
13,868 Views
Registered: ‎02-25-2008

Re: ISE 11.1 - Running simulations


dgustavson wrote:

 

Now I do have a problem; I have to learn how to write test benches in HDL. 

 


 The time spent learning how to write a proper HDL test bench is well worth it. HDL test benches are far superior to drawing waveforms and eyeballing the results.

 

I recommend buying a copy of Janick Bergeron's "Writing Test Benches" for a well-rounded text on the subject.

 

Once you get into the idea of having a model of a data source feeding your FPGA, and a model of your data sink getting data from your FPGA, and having the test bench tell you whether your processing was correct, you will wonder how you were able to do real FPGA work.

 

-a

----------------------------Yes, I do this for a living.
0 Kudos
Visitor lbeli
Visitor
13,850 Views
Registered: ‎05-13-2009

Re: ISE 11.1 - Running simulations

this is true, soon that wavaform testbench becomes useless, though that was a handy feature. (!!!)

 

i miss one another thing - when i edit and compile some vhd files, how do i just reload them in isim, now i have to close isim and reopen it. takes some time, unfortunally .:(

 

thanks

0 Kudos
Xilinx Employee
Xilinx Employee
13,831 Views
Registered: ‎09-14-2007

Re: ISE 11.1 - Running simulations

Hi,

 

Can you clarify exactly what you are looking for as far as reloading? Are you saying that you change the files and you want to recompile and reload? Are you looking for a way to do this from the Tcl console? 

 

Right now the Tcl console is only available as part of the executable. This means if you change your files, you will need to recompile and create a new executable. That said, you dont need to go into PN, if you dont want to, as you can just as easily run the steps in batch mode and then launch the GUI using the -gui switch when running the executable. More information on this is available in the ISim user guide.

 

Thanks

Duth

 

0 Kudos
13,827 Views
Registered: ‎05-27-2009

Re: ISE 11.1 - Running simulations

I'm finding the same problem.  If I want to change my testbench then I've got to run the scripts again which isn't bad.  But if I want to make a minor change to my design I've got to save my waveform cfg, close ISim,

change to Implementation in ISE, recompile the design, change back to Behavioral Simulation, restart ISim, reopen my waveform, and finally run the simulation.  

 

Is there a faster way to do this? Thanks.

0 Kudos
Xilinx Employee
Xilinx Employee
13,799 Views
Registered: ‎09-14-2007

Re: ISE 11.1 - Running simulations

Thanks for the explanation!

 

We are looking into seeing what it would take to enable a simple change and recompile and re-load in the simulator. Basically the steps would be to revert to Project Navigator and double click on run behavioral simulation again. The problem is that the waveform viewer is operating on a compiled design and so when you make a change, there is no ability to re-compile without going back to PN or to command line.

 

Question on the use case you have. How are you changing your testbench? If it is in PN, then i would assume the steps would make sense inside PN itself. Are you doing this via a text editor outside of PN?

 

Thanks

Duth

 

0 Kudos
7,892 Views
Registered: ‎05-27-2009

Re: ISE 11.1 - Running simulations

I hope I understand your question correctly.  When I make changes to the testbench I do use an external text editor.  I would use PN, but I it only allows me to view the testbench, not make changes.

At the same time though, using the external editor works fine because I also use it to run fuse and the simulation executable.

0 Kudos
Visitor lbeli
Visitor
7,885 Views
Registered: ‎05-13-2009

Re: ISE 11.1 - Running simulations

i am working inside PN, because of structure and everything.
0 Kudos
Xilinx Employee
Xilinx Employee
7,876 Views
Registered: ‎09-14-2007

Re: ISE 11.1 - Running simulations

Hi,

 

Does this mean that you are running fuse in command line mode? If that is the case, then what you would do when you change your code is to rerun fuse and this time use the -incremental switch. This would ensure only the files you changed are recompiled.

 

Then you can run the executable with the -gui switch to bring you back to where you were.

 

The issue that is there today is that the executable has the Tcl shell inside it, and so you cant change the compiled code underneath you from this Tcl shell. We will be looking for a way to improve this.

 

Hope this helps

 

Thanks

Duth

 

0 Kudos
Visitor gretzteam
Visitor
7,117 Views
Registered: ‎12-08-2009

Re: ISE 11.1 - Running simulations

Hi,

I fully agree with the previous poster. When designing hardware, it's very useful to be able to quickly change one line, either in the testbench or the design, and quickly re-run the simulation. Usually, you even want to see the same waveform that you were previously seeing, zoomed in at the same place...

Right now, when using PN and ISIM in GUI mode, this is quite a tedious process. You need to save your waveform, close ISIM, go to PN, make the change, click on simulate behavioral model, open the waveform, run the sim, zoom in wherever I was before, and only then start analyzing results...

 

I think either in ISIM or PN there should be a quick way to re-run the simulation:

-from ISIM: something like RELOAD, where it recompiles everything and run the new simulation

-from PN: if you double click on 'simulate behavioral model' while ISIM was already running, it runs the new sim in the current ISIM windows with the current waveform/settings...

 

This is more or less how modelsim works,

 

Diego 

0 Kudos
Xilinx Employee
Xilinx Employee
7,098 Views
Registered: ‎09-14-2007

Re: ISE 11.1 - Running simulations

Thanks for the input. The use case is very clear now and I will add it to our roadmap.

 

Thanks

Duth

 

0 Kudos
Visitor gretzteam
Visitor
7,093 Views
Registered: ‎12-08-2009

Re: ISE 11.1 - Running simulations

I would also add that the time position of the wave window is quite important...this is usually the only thing that people look at.

 

For example: 

You zoom in somewhere, realize that the state machine enters an illegal state, change one line of verilog in the code, and now I want to see if the problem is fixed...ideally, I only want to press something like 'RELOAD', and 'PLAY', WHILE the wave window is stilled zoomed in at the same place....the 'new' waveform simply appears where the old one was...I then check if the state machine is fixed, and move in to the next bug.

 

Right now, there are a few steps involved to 'RELOAD', and the time position of the waveform windows gets completely lost in the process.  I need to zoom out in full, and then zoom in where the problem was....

 

Related to this, the fact that ISIM insists on showing the line of code that was last executed when I press 'PAUSE', is quite useless....the source code windows appears on top of the wave window, and the first thing I need to do is close the code window (cause honestly, nobody really cares where 'stop' was pressed...it's quite random!)...

 

Diego 

0 Kudos
Xilinx Employee
Xilinx Employee
7,084 Views
Registered: ‎09-14-2007

Re: ISE 11.1 - Running simulations

Hi Diego,

 

I would expect the initial iteration of the reload to be something where we would recompile and reload your simulation. We dont currently have a mechansim to keep track of every single operation you have done, to be able to bring it exactly back to where you had it. Usually if you make a change that is drastic enough, you probably want to re-run simulation.

 

With regards to the  feedback on the break. The idea there is that if you hit a breakpoint or you click on the pause button, we want to show you the line that you were executing. Now in some cases, you may think this is useless, although if you think of a use case where you are stuck in an infinte loop, you will see that the first thing you want to see is which line you were stuck at. There is no way for us to know the intent of the user, so we followed what all other industry standard simulators do.

 

Thanks

Duth

 

0 Kudos
Visitor gretzteam
Visitor
7,082 Views
Registered: ‎12-08-2009

Re: ISE 11.1 - Running simulations

Hi,

 

''I would expect the initial iteration of the reload to be something where we would recompile and reload your simulation.''  

That is exactly what is needed...brand new simulation, however, only one click needed:) 

 

''We dont currently have a mechansim to keep track of every single operation you have done, to be able to bring it exactly back to where you had it. Usually if you make a change that is drastic enough, you probably want to re-run simulation.''  

What I meant by 'bring it back where it was' was simply to keep the waveform window zoomed at the same time span...before pressing 'play' with the new sim, there most likely isn't data there, so a black window is quite normal...but when the sim hits this point, the waveform appears...NCverilog and simvision works this way in GUI mode, very useful. 

 

As for the break, you might have a point about showing the code where it got stopped, but I woudl put an option to not put the code window on top of the wave!

 

Thanks!

Great product! It's come a long way in the last year...

Diego 

 

0 Kudos