Hi! I'm having an annoying issue with some states in ADE-L. For some reason, some old expression definitions are being held somehow somewhere (even if they don't exist at all in the outputs list), and when I save any waveform files (.grf) these definitions are included on them, causing lots of warning to appear each time I load these .grf files.
For instance I get the following warnings on the CIW when loading a .grf file:
*WARNING* Symbol(s) named " 'S01__vRESdiff' " used in the definition of dependent expression
Name: 'S01__vRESdiff__sampled__at_100pc_Tamp'
Expression: 'sample(S01__vRESdiff VAR("MEAS__TRAN__Tstart__at_100pc_Tamp") VAR("MEAS__TRAN__Tstop__at_100pc_Tamp") "linear" VAR("MEAS__TRAN__Tsample"))'
have not been defined as expressions. This may result in evaluation errors or ambiguous values for the dependent expression.
Either add these symbol(s) as expression(s) in the Outputs or remove them from the definition of the dependent expression.
*WARNING* Symbol(s) named " 'TRAN___Iavg__PIPELINE__vddA', 'TRAN___Iavg__PIPELINE__vddCMP', 'TRAN___Iavg__PIPELINE__vddD', 'TRAN___Iavg__PIPELINE__vddSW' " used in the definition of dependent expression
Name: 'TRAN___Iavg__PIPELINE__total'
Expression: '(TRAN___Iavg__PIPELINE__vddA + TRAN___Iavg__PIPELINE__vddCMP + TRAN___Iavg__PIPELINE__vddD + TRAN___Iavg__PIPELINE__vddSW)'
have not been defined as expressions. This may result in evaluation errors or ambiguous values for the dependent expression.
Either add these symbol(s) as expression(s) in the Outputs or remove them from the definition of the dependent expression.
and so on. On the header of the .grf file I do find the following definitions, which I don't understand where they come from!:
<?xml version="1.0" encoding="UTF-8" ?>
<!--StateFileType saveLoadState-->
[...]
</IndexedProp>
<IndexedProp Name="dependentExprsList">
<SimpleProp Name="E0" Value='dB20(mag(dft(vtime('tran "/SDSC1/Qout") 20*VAR("Ts") VAR("Ts")*(20+VAR("fft_order")) VAR("fft_order") "Rectangular" 1 "default" )))' Type="stringValue" />
<SimpleProp Name="E1" Value='dB20(mag(dft(vtime('tran "/SDSC1/Qout") 20*VAR("Ts") VAR("Ts")*(20+VAR("fft_order")) VAR("fft_order") "Rectangular" 1 "default" )))' Type="stringValue" />
<SimpleProp Name="E2" Value='getData("/DUT/PIPELINE/BACKEND_PIPELINE/STAGE05/subADC/H__subADC/PHIquantizeN_local" ?result 'tran)' Type="stringValue" />
<SimpleProp Name="E3" Value='getData("/DUT/PIPELINE/BACKEND_PIPELINE/STAGE05/subADC/H__subADC/PHIsampleE_local" ?result 'tran)' Type="stringValue" />
<SimpleProp Name="TRAN__CMFBamp__S1__MN__region" Value='getData("DUT.RESGEN.CMFBamp.S1__MN:region" ?result "tran")' Type="stringValue" />
<SimpleProp Name="TRAN__CMFBamp__S2__MN__region" Value='getData("DUT.RESGEN.CMFBamp.S2__MN__L:region" ?result "tran")' Type="stringValue" />
<SimpleProp Name="S1__sADC__H__vCshared_p" Value='(VT("/S01__subADC__H__vSHAREDp") - VT("/S01__subADC__H__vINp_COMP"))' Type="stringValue" />
<SimpleProp Name="S01__vRESdiff__sampled__at_100pc_Tamp" Value='sample(S01__vRESdiff VAR("MEAS__TRAN__Tstart__at_100pc_Tamp") VAR("MEAS__TRAN__Tstop__at_100pc_Tamp") "linear" VAR("MEAS__TRAN__Tsample"))' Type="stringValue" />
<SimpleProp Name="E4" Value='getData("/PIPELINE/S01__vREFcm_sample" ?result 'tran)' Type="stringValue" />
<SimpleProp Name="TRAN___Iavg__PIPELINE__total" Value="(TRAN___Iavg__PIPELINE__vddA + TRAN___Iavg__PIPELINE__vddCMP + TRAN___Iavg__PIPELINE__vddD + TRAN___Iavg__PIPELINE__vddSW)" Type="stringValue" />
<SimpleProp Name="TRAN__Iavg__S01__CMFBAMP__S1" Value='average(IT("/S01/CORE/MDAC/RINGAMPcmfb/AMP/S1__MP/S"))' Type="stringValue" />
</IndexedProp>
[...]
None of the above expressions exist anymore in my ADE state. If I delete manually everything between <IndexedProp> ... </IndexedProp> and reload the .grf, I still get warnings for expressions which don't exist neither in the ADE-L outputs list nor in the .grf file:
*WARNING* Symbol(s) named " 'S01__vRESdiff' " used in the definition of dependent expression
Name: 'S01__vRESdiff__sampled__at_100pc_Tamp'
Expression: 'sample(S01__vRESdiff VAR("MEAS__TRAN__Tstart__at_100pc_Tamp") VAR("MEAS__TRAN__Tstop__at_100pc_Tamp") "linear" VAR("MEAS__TRAN__Tsample"))'
have not been defined as expressions. This may result in evaluation errors or ambiguous values for the dependent expression.
Either add these symbol(s) as expression(s) in the Outputs or remove them from the definition of the dependent expression.
*WARNING* Symbol(s) named " 'TRAN___Iavg__PIPELINE__vddA', 'TRAN___Iavg__PIPELINE__vddCMP', 'TRAN___Iavg__PIPELINE__vddD', 'TRAN___Iavg__PIPELINE__vddSW' " used in the definition of dependent expression
Name: 'TRAN___Iavg__PIPELINE__total'
Expression: '(TRAN___Iavg__PIPELINE__vddA + TRAN___Iavg__PIPELINE__vddCMP + TRAN___Iavg__PIPELINE__vddD + TRAN___Iavg__PIPELINE__vddSW)'
have not been defined as expressions. This may result in evaluation errors or ambiguous values for the dependent expression.
Either add these symbol(s) as expression(s) in the Outputs or remove them from the definition of the dependent expression.
So my question is: where are these definitions coming from and how can I get rid of them once and for all?
Thanks in advance for any help!
Cheers,
Jorge.
P.S. I've tried searching (on the command line) for files containing the problematic expression names under the cell's hierarchy and couldn't find anything. I suspect these definitions are being held in some sort of cache somewhere!