All, I strongly suggest that we have a new parameter leaf "Dependency_Usage" that determines what the inputs and outputs of the AMI_Resolve function. The following describes the "Dependency_Usage" leaf. 1. A new optional leaf for all parameters "Dependency_Usage", which can have the values "In" or "Out". If "In" then the parameter is an independent parameter. If "Out" then the parameter is a dependent parameter. a. Usage and Dependency_Usage are independent, except Usage Out cannot also have Dependency_Usage. b. Any parameter (Reserved or Model Specific) parameter can have Dependency_Usage "In" (except if Usage Out) . c. Any parameter (Reserved or Model Specific) parameter can have Dependency_Usage "Out" (except if Usage Out) . In addition, the following parameters cannot have Dependency_Usage "Out". i. The following Reserved Parameters 1. DLL configuration Info parameters a. GetWave_Exists b. Init_Returns_Impulse c. Max_number_of_agressors d. AMI_Version e. Supporting_Files f. ResolveDependentParam_Exists 2. Parameters filled in by EDA tool a. DLL_Path b. DLL_id Walter -----Original Message----- From: ibis-macro-bounce@xxxxxxxxxxxxx [mailto:ibis-macro-bounce@xxxxxxxxxxxxx] On Behalf Of fangyi_rao@xxxxxxxxxxx Sent: Tuesday, June 25, 2013 1:34 PM To: ibis-macro@xxxxxxxxxxxxx Subject: [ibis-macro] revision of AMI_Resolve BIRD155 Hi, All; Please find the updated BIRD155 for resolving AMI parameter dependency in the attachment. Major modifications include 1. Introduce usage type Dep. Parameters to be updated by the AMI_Resolve function will have type Dep so that a parameter won't be updated twice by AMI_Resolve and AMI_Init. The latter updates Out or InOut parameters. 2. Introduce a second API, AMI_Resolve_Close, to free memory allocated in AMI_Resolve. This was suggested by Walter to allow user to call AMI_Resolve outside of the AMI flow (w/o subsequent calls to Init/GetWave/Close). Your input is appreciated. Thanks, Fangyi