[ibis-macro] Re: Comments on issues rasied in this weeks IBIS-ATM Agenda

  • From: ckumar <ckumar@xxxxxxxxxxx>
  • To: <vladimir_dmitriev-zdorov@xxxxxxxxxx>
  • Date: Tue, 31 May 2011 15:16:44 -0700

I concur with vladimir. ie. the memory address should not concern the eda
tool as the eda will only read it.
One problem may be, say the model allocates msg during init and it
destroys that memory before the ami close is called. Depending on when the
eda tool chooses to read the message there can be a potential for memory
violation

On Tue, 31 May 2011 20:32:37 +0000, "Dmitriev-Zdorov, Vladimir"
<vladimir_dmitriev-zdorov@xxxxxxxxxx> wrote:
> Walter,
> 
> Regarding the following:
> 
> 
> Row 61:  Are the **AMI_parameters_out arguments of AMI_Init and
> AMI_GetWave the same or different memory locations?
> 
> - if it is the same, this is inconsistent with **msg
> 
> - if not the same, **msg should only be available to AMI_Init...
> 
> WMK> **AMI_parameters_out arguments of AMI_Init and AMI_GetWave may or
may
> not have the same or different memory locations. This up to the
discretion
> of the EDA Tool.
> 
> It looks as in both cases the memory is allocated and filled inside the
> DLL. Hence it is the DLL who decides about the returned memory. But,
this
> should not create problems for EDA tool because it updates its own
variable
> pointer accordingly.
> 
> Vladimir
> 
> 
> From: ibis-macro-bounce@xxxxxxxxxxxxx
> [mailto:ibis-macro-bounce@xxxxxxxxxxxxx] On Behalf Of Walter Katz
> Sent: Tuesday, May 31, 2011 1:22 PM
> To: IBIS-ATM
> Subject: [ibis-macro] Comments on issues rasied in this weeks IBIS-ATM
> Agenda
> 
> 
> All,
> 
> 
> 
> Please review the comments/answers given below. Please respond in this
> e-mail thread with any points you might disagree with.
> 
> 
> 
> Walter
> 
> 
> 
> 
> 
> 
> 
> Remaining Task List items:
> 
> ==========================
> 
> 
> 
> Row 37: Usage Out for reserved (jitter) parameters
> 
>         - which function (Init or GetWave) can return these?
> 
> WMK> Both can return them, but the DAT Tool shall only use the ones
> returned by Init.
> 
> 
> 
> Row 53:  Labels BIRD draft from Walter?
> 
>         (postponed)
> 
> WMK> We need to move forward on this.
> 
> 
> 
> 
> 
> Row 56:  Should (Usage Out) parameters have Default or a Value at all?
> 
> WMK> I think it should be optional.
> 
> 
> 
> Row 57:  Existing Reserved_Parameters of (Usage Out) need definition for
> which function returns them (Init or GetWave)
> 
>          (postponed)
> 
> WMK> Both can return them, but the DAT Tool shall only use the ones
> returned by Init.
> 
> 
> 
> Row 58:  Model_Specific parameters should not be (Usage Out) or (Usage
> InOut)
> 
>          (postponed)
> 
> WMK> Totally object to this. We should remove this row.
> 
> 
> 
> 
> 
> Row 61:  Are the **AMI_parameters_out arguments of AMI_Init and
> AMI_GetWave the same or different memory locations?
> 
> - if it is the same, this is inconsistent with **msg
> 
> - if not the same, **msg should only be available to AMI_Init...
> 
> WMK> **AMI_parameters_out arguments of AMI_Init and AMI_GetWave may or
may
> not have the same or different memory locations. This up to the
discretion
> of the EDA Tool.
> 
> WMK> **msg should only be available by AMI_Init.
> 
> 
> 
> Row 62:  Clarify the **msg argument
> 
> - who allocates/deallocates its memory (DLL)?
> 
> - IF it is the DLL, it is allocated in AMI_Init.
> 
>   Will this be available to AMI_GetWave too?
> 
> WMK> Allocated in AMI_Init. Since it is in the address space of the DLL
it
> can be available to AMI_GetWave, but the EDA tool needs to ignore any
> changes that AMI_GetWave did to this memory.
> 
> 
> 
> Row 63:  Should AMI_Close always be required?
> 
> - should the spec say that all memory deallocations
> 
>   are done in AMI_Close?
> 
> WMK> AMI_GetWave can do de-allocations also.
> 
> - is that possible? (What if AMI_Init or GetWave
> 
>   allocates memory that is not visible to AMI_close)?
> 
> WMK> This would be a poorly written DLL. AMI_GetWave and AMI_Init should
> either de-allocate the memory they have allocated or save the allocated
> memory list for AMI_Close.
> 
> - Currently AMI_Close is not required with AMI_Init,
> 
>   therefore when AMI_Close is not present AMI_Init
> 
>   has to do memory deallocations also...
> 
> WMK> I think the spec says AMI_Close is called at the end, it does not
> distinguish between whether AMI_GetWave is called or not.
> 
> - goal is to make the model maker's life easier,
> 
>   and this is kind of confusing...
> 
> WMK> What wording should we add to make this intent clearer?
> 
> 
> 
> 
> 
> 
> 
> 
> Walter Katz
> wkatz@xxxxxxxxxx<mailto:wkatz@xxxxxxxxxx>
> Phone 303.449-2308
> Mobile 720.333-1107
---------------------------------------------------------------------
IBIS Macro website  :  http://www.eda.org/pub/ibis/macromodel_wip/
IBIS Macro reflector:  //www.freelists.org/list/ibis-macro
To unsubscribe send an email:
  To: ibis-macro-request@xxxxxxxxxxxxx
  Subject: unsubscribe

Other related posts: