Sadık
Sadık

Reputation: 4419

execute tcl commands as soon as signal has some value in ncsim

As a modelsim user I am used to write something like the following lines in my do-file.

when -label supersignal {supersignal == '1'} {
   stop ;
   puts "blah"
   do_something
}

run -all

That runs the simulation in modelsim and as soon as my VHDL-Signal supersignal has the value '1' the block starting with stop; will be executed.

Is there a similar tcl command for (cadence) ncsim? I am looking for a command I can use within my dofile when calling ncsim -input dofile.do. When I don't want to only stop the simulation, but also execute any tcl command.

Upvotes: 1

Views: 2111

Answers (1)

Sadık
Sadık

Reputation: 4419

In ncsim you can use

stop -create -object supersignal -silent -execute {
  puts "blah"
  do_something
}

That will not check for supersignal to be '1', but will trigger when there is any change to supersignal. So if you want to check for the value explicitly you can create a condion first (see the condition option of stop or the condition command to create new conditions)

Upvotes: 1

Related Questions