All, Please find below my analysis of the LRM in this specific case. BE CAREFULL: Just relevant steps according to your example are listed in the text below. ********************* 12.6.4 The simulation cycle The execution of a model consists of an initialization phase followed by the repetitive execution of process statements in the description of that model. Each such repetition is said to be a simulation cycle. In each cycle, the values of all signals and quantities in the description are computed. If as a result of this computation an event occurs on a given signal, process statements that are sensitive to that signal will resume and will be executed as part of the simulation cycle. At the beginning of initialization, the current time, Tc, is assumed to be 0.0. The initialization phase consists of the following steps: 1) The driving value and the effective value of each explicitly declared signal are computed, and the current value of the signal is set to the effective value. This value is assumed to have been the value of the signal for an infinite length of time prior to the start of simulation. p_value = 2.0 @ t=0- 2)The value of each implicit quantity of the form S'Ramp(tr, tf)is set to the initial value of its prefix, S. p_value'ramp=2 @ t=0- 4) Each nonpostponed process in the model is executed until it suspends. Proposed transaction p_value = 10.0 @ delta 8) The time of the next simulation cycle (which in this case is the first simulation cycle), Tn, is set to 0.0. A simulation cycle consists of the following steps: a) The analog solver is executed. val = c) Each active explicit signal in the model is updated. p_value = 10.0 @ delta g)Tn is determined by setting it to the earliest of: — The value of type universal_time corresponding to TIME’HIGH, If Tn = Tc, then the next simulation cycle (if any) will be a delta cycle. h) If Tn = 0.0, the remainder of this step is skipped. Otherwise, the driver of the DOMAIN signal is assigned — TIME_DOMAIN after 0 ns. Then, Tn is reset to 0.0. The next simulation cycle will be a delta cycle. p_value = 10.0 @ T=0.0 ********** After this analisys it seems that the good solution is a constant value of 10.0 for val from 0ns. Do you agree ? Regards Yannick HERVE Deepika Devarajan a écrit : > All, > > I have a question regarding the interpretation of the 1076.1 LRM for a mixed-signal model. Consider the following model: > ENTITY ramp_test IS > END ENTITY ramp_test; > ARCHITECTURE behav OF ramp_test IS > SIGNAL pulse_signal : REAL := 2.0; > QUANTITY val : REAL; > BEGIN > pulse_signal <= 10.0; > val == pulse_signal'ramp(1.0,1.0); > END ARCHITECTURE behav; > What should val be at time = 0? Should (a) val rise from 2.0 to 10.0 over the first second or (b) the initialization cycle force val to be 10.0 from t=0? > > While (a) seems to be more intuitive, (b) seems to be consistent with the simulation cycle (refer Sections 12.6.4 and 12.6.6 and pp. 211-212). > > Any comments/feedback is appreciated. > Thanks, > -Deepika > -- Yannick HERVE (Il est très zen, hervé) Perso : GSM : 06 75 23 00 19 Tèl : 03 88 74 38 97 Travail : Tél : 03 902 44422 Secr : 03 902 44339 Fax : 03 902 44359 -- Yannick HERVE (Il est très zen, hervé) Perso : GSM : 06 75 23 00 19 Tèl : 03 88 74 38 97 Travail : Tél : 03 902 44422 Secr : 03 902 44339 Fax : 03 902 44359Received on Mon May 30 02:01:42 2005
This archive was generated by hypermail 2.1.8 : Mon May 30 2005 - 02:03:13 PDT