I am trying to sweep a variable(Amplitude Code Word) and depending on its value I want to change the no of multipliers of the devices in my switch bank dynamically. So I have variables called M_on1,Mon2 and M_off1 and M_off2. So my conditional statement will be something like :--
if( (ACW<512) then ACW else 256) for M_on1 and similarly if( (ACW<512) then (512-ACW) else 256) for M_off1
I found out that we cant use conditional statements in ADE L so I am trying to use this expression to assign my Global variables in ADE XL. And ACW is an independent variable that I sweep using 1:100:1024.
The problem is when I start the simulation I do see the output variables being displayed under the "Results" tab for each parameter but they remain in the Pending state forever. When I try to access the LOG from the Run Summary window I get this error "*WARNING* Job log file not found; it is likely that the job has not started. File: ..... /cadence_work_gf_v12_st11/logs0/Job29.log.
Just to check if my setup is correct, I do a single point sweep and then I can see the simulation running in my log screen and get some sort of output.
I have also got rid of the Timeouts from the Job Setup option.
This is what I am trying to do. Should I sweep from the Analyses window where I set my simulation? But then only a single point sweep in run(Checked from the "Run Summary" window).
Please let me know if I doing something wrong with my simulation setup and/or if there is a way to do this in a different way.
Appreciate any help.
I suggest that you try using the ternary operator (see for example https://community.cadence.com/cadence_technology_forums/f/38/t/33846 and https://community.cadence.com/cadence_technology_forums/f/38/t/36652).
For global variables, the if() expression should work. The ternary expression that Frank suggestion will also work (it gets transformed into an if()) from IC617 ISR1 onwards only.
However, even if this was incorrect, I wouldn't expect it to affect the job starting (the job log).
To check that, you can either run a simple sweep or a single run (and turn of the Optimise single job run checkbox on the Setup->Job Options; with that turned on single simulations do not start the background "ICRP" job). If that's not working, then it's some kind of job startup problem. The simplest thing there would be if you can contact support.cadence.com so that we can check the setup with you.
The ternary operator will also work in ADE L, so perhaps using ADE XL is not even necessary in this case.
Thanks a lot that worked. Thank God, I have been struggling with this issue for quite some time now.