Continue to Site

Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

Mode/s!m Force, noforce problems.

Status
Not open for further replies.

jelydonut

Full Member level 4
Joined
Dec 27, 2002
Messages
239
Helped
3
Reputation
6
Reaction score
0
Trophy points
1,296
Activity points
1,730
noforce command

Im trying to force a signal onto a inout for say 100ns, then release it for a output at 200ns then force another signal on to it at 300ns.

What is the best way to accomplish this?

jelydonut
 

force noforce

It is very easy to write a testbench in Verilog/VHDL to do this job.
 

i understand that..

i just am not sure how to unforce at 200ns after doing say a ..
force data 1010101011110000 100

jelydonut
 

Try to set it to 'Z' :) it should work.

Like

SIG_IO <= '1' after 100ns, 'Z' after 200ns, '0' after 300ns;

Regards

Max
 

when you force a signal
#edit -- > force

you will find under Kind three kinds of the signal to be forced
freeze - drive - deposite

use deposite as it means that the signal will take the value you give to it till another source drive it at this time it will take the value drived by the other source. which will help you in your case
 

Actually i figured it out.. force w/ -cancel..

Now im working on my tcl scripting..

jelydonut
 

can you please send me your solution in details as it is new for me as I always use deposite to solave this situation (force -deposite ...)
 

I think i deleted the .do that I had which used it.. but its rather simple..
If you do a say "force /top/data 16#FF 100" you can then remove that force by doing "force /top/data -cancel 200". So say you write a tcl script for a bidirectional bus. You could make a loop to force data onto it when RD_n = 0 else you could -cancel that force so data can be outputted via the core. But then ya hafta mess with $now to keep track of timing.. unless you did.. force /top/data -cancel [$now] or something like that.. just guessing.. haven't tried it.

jelydonut
 

If i understand your problem correctly, a 'noforce' command will also do.
A 'noforce' command is used to remove the effect of any active 'force' commands on the selected HDL items.
 

Oh cool.. ok..

didn't realize there was one.. just always used -cancel..

jelydonut
 

Status
Not open for further replies.

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top