Hi Mike, It is not about passing the IR from init to getwave, it is about getting the waveform convoluted with modified-IR in getwave. This saves unnecessary convolution of IR in getwave and leaves this process to EDA tool that does the appropriate sampling and math. This also brings consistency. Hope I made myself clear. Rgds From: Mike Steinberger [mailto:msteinb@xxxxxxxxxx] Sent: Thursday, June 14, 2012 07:32 PM To: ibis-macro@xxxxxxxxxxxxx <ibis-macro@xxxxxxxxxxxxx> Subject: [ibis-macro] Re: AMI-init should pass modified IR to getwave.... Kukal- You can always store the impulse responses you want inside the memory pointed to by the model's memory handle. That is, inside the header file: typedef struct { ... double *internal_impulse_response, ... } MyModel; Inside AMI_Init(): MyModel *self; self = (MyModel*)malloc( sizeof(MyModel) ); memory_handle = (void*)self; self->internal_impulse_response = (double*)malloc( row_size*sizeof(double) ); //Set the value of self->internal_impulse_response however you want. Inside AMI_GetWave(): MyModel *self = (MyModel*)memory_handle; //Use self->internal_impulse_response however you like I'm pretty sure there are other model developers who have been using this technique successfully now for several years. Good luck. Mike Steinberger On 06/14/2012 01:04 AM, Taranjit Kukal wrote: Hi All, When I was implementing AMI model, I found a situation where it was important that Rx ami_init needed to pass modified-IR to getwave function. Reason was that Chip-RDL-routing was available as Impulse-Responses. Removal for “Use_Init_Output” to make Statistical-flow independent of Transient-flow, is going to break the original intent where init and getwave were supposed to work in conjunction with each other handling linear and non-linear filtering portions respectively (as shown below) [cid:part1.05090509.00000704@sisoft.com] I would go back to Arpad’s suggestion (year 2010) for having two Impulse-responses coming out of ami_init - One that goes to EDA tool for statistical flow - One that gets passed to getwave to allow splitting of modeling-effort across init and getwave and make things easy for linear filters. BIRD120 was brought up that deprecates use of “use_init_output” with a view to keep statistical and time-domain simulations independent. But as I think more, we need to allow both capabilities. It absolutely does not make sense to implement simple linear filters within getwave when we can convolute the filter-IR with channel-IR. We should take all steps to make modeling easy and ensure enough flexibility. This way, we cover both the scenarios – those who want to leverage init as complement to getwave and those who want to keep statistical-flow purely independent. Since this does not bring any disadvantage, I strongly feel that we all re-consider outputting two modified-IRs out of init function – one for statistical-flow and another one to complement getwave filtering. Rgds ..kukal