Walter, Thanks for the explanation. So if I may say it with my own words, aside from using absolute paths, the simulator can make any existing directory the working directory, and then just pass a path relative to that as the DLL_Path parameter to tell the DLL what its location is. The DLL should then be able to find any of its supporting files which are below that directory. The DLL would either look for those files with hard coded relative paths, or using other Model_Specific AMI parameters which contain paths relative to DLL_Path (the DLL's location). But there should be no AMI parameters in the .ami file which contain relative paths based on assumptions about what the current working directory is, such as the location of the top level netlist, or the location of the AMI DLL, or what have you. Correct? Thanks, Arpad ============================================================== From: Walter Katz [mailto:wkatz@xxxxxxxxxx] Sent: Tuesday, September 18, 2012 3:22 PM To: Muranyi, Arpad; 'IBIS-ATM' Subject: RE: [ibis-macro] Comments on BIRD 121 (Data Management) Arpad, The current working directory is set by the EDA tool when running the AMI simulation, and can be changed by the simulator dynamically. The current working directory is often the location of the "Simulation Deck" but does not have to be. The EDA tool also knows the location of the DLL, but there is no OS call that the DLL can invoke to determine its location. So if the EDA tool knows what the current working directory is when the DLL is called, then the DLL_Path can be a relative path to the current working directory when the DLL is called. If the EDA tool does not know this then it should set the DLL_Path to be the absolute path name. Walter From: ibis-macro-bounce@xxxxxxxxxxxxx<mailto:ibis-macro-bounce@xxxxxxxxxxxxx> [mailto:ibis-macro-bounce@xxxxxxxxxxxxx]<mailto:[mailto:ibis-macro-bounce@xxxxxxxxxxxxx]> On Behalf Of Muranyi, Arpad Sent: Tuesday, September 18, 2012 12:36 AM To: IBIS-ATM Subject: [ibis-macro] Comments on BIRD 121 (Data Management) Walter, I would like to resume the discussion on BIRD 121 in the ATM teleconference, and if no one else makes a motion to un-table it, I will make that motion. Hopefully we will get a second motion and no opposition to continue the discussions on it. I would like to ask a question on "DLL_Path", under which I see this sentence: "The value of DLL_Path passed to the DLL can either be an absolute path, or a path relative to the current working directory of the simulation." I wonder if we should define what "current working directory of a simulation" means. Is it the directory where the simulation project's top level netlist (or the EDA tool's schematic drawing file) is located in, or is this the directory where the AMI DLL is located in when it is executed, or is it a directory that the EDA tool can set to any arbitrary directory that exists on the machine? Does the AMI DLL have a reliable way to find out what the current working directory is on any of the operating systems AMI models might be written for if this parameter contains a relative path to that location? Thanks, Arpad ===================================================================