Nitin, Forgot to say, that the problem I see with your algorithm is that the points it picks up depends on the direction it progresses. It seems to me that if you start on the left end of a curve, for example, and your error limit is small, it may pick up a bunch of points at the beginning of the curve and run out of the count limit. My algorithm, on the other hand looks for the largest deviation, picks up that point that is the farthest away from the original data. This ensures that we get the entire curve all the time, with more or less precision. Arpad =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D -----Original Message----- From: Muranyi, Arpad=20 Sent: Tuesday, November 25, 2003 11:06 AM To: si-list@xxxxxxxxxxxxx Subject: RE: [SI-LIST] Re: Algorithm to interpolate ramp data in IBIS Nitin, Thanks for the info on HSPICE's interpolation options, I wasn't aware of it. Regarding the algorithm discussion, I didn't mention, but my algorithm also has an accuracy setting, and the way I run it is that the user can either limit the points by the error limit, or the count, whichever happens first. This is no overhead, because I am already calculating the error (deviation between the original and new curves), so the information is there. So if I set 0 for the error, it will always stop at the count, if I set a non zero error limit and a high count limit, say 1000 (as it is possible in IBIS 4.0), then it will stop at the desired accuracy level or at the count limit. If the original data is shorter than the count limit, and the error limit is set to 0, it will pick up all points. Another thing you need to consider, this has to be done simultaneously on the typ., min., and max. curves, since in IBIS these three columns are all to the right of the x-axis which is common to all. The 100 or 1000 point limitation in IBIS is supposed to be applied to the x-axis length, not the y-axis length. Theoretically, if the y values are completely misaligned, you could=20 end up having 100 points in each y column so that the total number of x-axis points becomes 300 (or so). Arpad =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D -----Original Message----- From: si-list-bounce@xxxxxxxxxxxxx [mailto:si-list-bounce@xxxxxxxxxxxxx]On Behalf Of BHAGWATH,NITIN (HP-Roseville,ex1) Sent: Tuesday, November 25, 2003 10:12 AM To: si-list@xxxxxxxxxxxxx Subject: [SI-LIST] Re: Algorithm to interpolate ramp data in IBIS Hi Arpad, Thanks for the suggestion. I'm using hspice for simulating the IBIS = model, and on reading the documentation, I found that hspice gives an option = for either using linear interpolation or quadratic bi-spilne interpolation. = I'm going with the easier linear interpolation. FYI, the script I'm = developing does the following: 1) Takes in an argument of precision desired 2) Take start point as first point, end point as second point 3) Keep incrementing end point by one, and check ALL points between the start and end points to see if any point is off the line extended by start and finish point by more than the desired precision. 4) If so, the point just preceding the end point is entered into the table (Because it must have passed the precision test), and is made the new start point. 5) (continue till end of points) It seems to be working for me. I do like your algorithm better however because it takes in the number of points needed as a paramter (100 in = this case) rather than accuracy. Right now, I need to try several different accuracies before I get less than or equal a 100 points, which can take = a while. Regards, -Nitin Bhagwath ------------------------------------------------------------------ To unsubscribe from si-list: si-list-request@xxxxxxxxxxxxx with 'unsubscribe' in the Subject field or to administer your membership from a web page, go to: //www.freelists.org/webpage/si-list For help: si-list-request@xxxxxxxxxxxxx with 'help' in the Subject field List technical documents are available at: http://www.si-list.org List archives are viewable at: //www.freelists.org/archives/si-list or at our remote archives: http://groups.yahoo.com/group/si-list/messages Old (prior to June 6, 2001) list archives are viewable at: http://www.qsl.net/wb6tpu