03-14-2010 01:44 AM
I'm using Multisim 10.1 to assemble logical gates from transistors for an undergrad Elec. Engineering class. Part of the spec is that the gates must drive a 1 or 8 pF capacitor to the output voltage within 1nsec. (I beleive the circuit I've made available is the 8pF version).
The circuits work fine when I test them for logical functionality with an input frequency measured in seconds, but when I try to measure the timing of the output with a Ghz input, the transient analysis invariably fails with a 'time step too small" error.
I've looked through NI's site, found all sorts of possible fixes (adjusting relative and absolute error values, etc...), but no luck.
an example of the project in question can be found at: http://dl.dropbox.com/u/4286123/callforhelp.zip
I'd appreciate any advice anyone can give me to help get the circuit able to run a higher-frequency transient analysis.
thanks!
Brian Lojeck
EE student, CSULB
Solved! Go to Solution.
03-15-2010 05:25 AM
03-15-2010 09:37 AM
Hi Brian,
I took a look at your circuit and it seemed that your cmos_andx8_timing_test_circuit.ms10 file is generating convergence errors. I made the following two changes to your transient simulation settings and the circuit simulated fine:
Generally, you would like to set the TMAX parameter to be significantly less than the smallest feature in your signal. In your case, the smallest feature is the rise time in V1 (1ps). If possible, try to simulate with slower rise/fall times and slew rates. It is a lot easier for Multisim to converge on solutions for semiconductors if these parameters were larger. I suppose you don't have the luxury here, but if you were to just test the behaviour of your circuit, this would be advisable.
Hope that helped.
03-15-2010 09:47 AM
@Muks: I have seen it, but thank you.
@ yyao: how strange, that the fix for a "timestep too small" error is to make the timestep even smaller. I hope you see why that solution didn't occur to me. ;-(
Many thanks, all, it works great now.
03-15-2010 10:20 AM
Ah, I see your misunderstanding. If you don't specify a maximum timestep (TMAX), Multisim will automatically choose a TMAX based on the length of your transient simulation (TSTOP). In the event that Multisim can't solve for the next time step, it will choose a smaller timestep. It will keep trying smaller timesteps until it reaches some fraction of TMAX before giving up. This explains the Timestep too small message that you are getting; the timestep that Multisim has tried is too small to seem reasonable and Multisim informs you of the reason why it is giving up. If you have a long simulation with lots of high speed signals, the default TMAX would be too large and that is what is happening. By reducing the TMAX parameter, you are informing Multisim to expect high speed signals and to take smaller timesteps. If Multisim takes a sufficiently small timestep, it is more likely to converge on the solution (which is what happened). The only draw back is that this takes a lot more time, but such is the nature of high speed simulations.
I hope that makes sense now.
05-28-2013 04:45 AM
Hello,
I have same issue with time step. Please can you help me how to fix it in my circuit?
Thank you
05-28-2013 09:35 AM
please post the multisim circuit file. Thanks
05-28-2013 10:42 AM
here is it.
05-28-2013 11:06 AM
Your setting under Simulate>>Mixed-mode simulations Settings is set to "Use ideal pin models". Digital components will use ideal voltages to drive outputs which are connected to analog components. You have several digital component outputs in parallel which causes short circuits (even though voltage values are the same).
You might want to change the setting to "Use real pin models", which will cause the outputs of the digital component to exhibit I/V behavior similar to that found on those chips - something that you are probably looking for since it looks like you are trying to increase drive strength.
05-28-2013 01:28 PM
Superb! Works very well.
Thank you very much.
Best regards
Ondrej