Lance, There is nothing wrong with the changing times (and technologies), but the spec has to be adjusted accordingly before you can start making models in a different way. You and those who agree with your thinking cannot just make models the way you feel like it, because there are tool vendors out there who faithfully implemented what the spec says currently, and if your models start deviating from what the spec says than the tools following the spec will start giving incorrect results to their users. Can you imagine all those people who expect that selecting "fast" will give them the smallest C_comp, and selecting "slow" will give them the largest C_comp in their favorite tool (to which I referred in my previous mail without mentioning its name) would all of the sudden get a "fast" simulation with the largest C_comp value and vice versa because YOU decided that your model should be written that way? Please do not propagate incorrect modeling techniques! The spec is a spec, you must follow the rules spelled out in it! If you don't like its rules, write a BIRD and make changes to the spec before you start making models according your own rules... Arpad ===================================================================== -----Original Message----- From: si-list-bounce@xxxxxxxxxxxxx [mailto:si-list-bounce@xxxxxxxxxxxxx] On Behalf Of Lance Wang Sent: Thursday, May 27, 2010 8:47 PM To: si-list@xxxxxxxxxxxxx Subject: [SI-LIST] Re: IBIS min, typ and max. values Arpad, Yes, we all appreciate you and other IBIS legend for the IBIS invention. But things are changing, such as IBIS has to have AMI in the IV/VT spec. :) Anyway, for the peace, let's wish there is no such case in the real life. BTW, Jon and Mike, I do like multiple corners ideas too. :) Best regards, Lance Wang 978-764-2298 IO Methodology Inc. -----Original Message----- From: Muranyi, Arpad [mailto:Arpad_Muranyi@xxxxxxxxxx] Sent: Thursday, May 27, 2010 6:30 PM To: Lance Wang; si-list@xxxxxxxxxxxxx Subject: RE: [SI-LIST] Re: IBIS min, typ and max. values Lance, When these portions of the IBIS specification was written, both Don Telian and myself were working at Intel corporation. We had the opportunity to consult with experts in this field. We found out from them that the majority of the die capacitance comes from the area of the metal layers on the chip. The area of the metal is a factor of etching parameters. On the other hand, the drive strength is determined by other manufacturing parameters, such as the composition of the silicon, etc... plus the supply voltage and temperature. Just because on one day you get a certain capacitance using a specific temperature and voltage setting it doesn't mean that the next day you will get the same capacitance from a different die under the same temperature and voltage setting, even if the I-V curve are the same because the etching of the metal on the die may be different. This is why we wrote in the spec that "C_comp is considered an independent variable." Arpad ===================================================================== -----Original Message----- From: si-list-bounce@xxxxxxxxxxxxx [mailto:si-list-bounce@xxxxxxxxxxxxx] On Behalf Of Lance Wang Sent: Thursday, May 27, 2010 5:02 PM To: si-list@xxxxxxxxxxxxx Subject: [SI-LIST] Re: IBIS min, typ and max. values I don't think this is a good practice. Here are my reasons: (assuming C-comp is an effective parameter for simulations in this model) 1. As I mentioned in the previous email, models are representing real devices in the simulations. This model in the simulations will not represent correctly for one of important parameters. Using typ as an example, value B might never be in typ corner. I don't know how simulator should guess to have accurate simulation results. 2. You will not get any corner correlation work correctly. I don't see any confident user will receive from this model for the designs. 3. Also, in this case, Fast/Slow simulations could be just a play. It might never be that good or bad in the real designs. BTW, no matter what you do, your typ simulations are always incorrect by using wrong c_comp value. Regards, Lance Wang 978-764-2298 IO Methodology Inc. -----Original Message----- From: si-list-bounce@xxxxxxxxxxxxx [mailto:si-list-bounce@xxxxxxxxxxxxx] On Behalf Of Muranyi, Arpad Sent: Thursday, May 27, 2010 2:11 PM To: si-list@xxxxxxxxxxxxx Subject: [SI-LIST] Re: IBIS min, typ and max. values Answers to your question: 1) Given that A > B > C you should put them in the model this way: typ = B min = C max = A regardless of how the I-V curves turned out. 2) Simulators should allow the user to have a say in what happens. Ideally the user will check all possible combinations, meaning they will try both min and max C_comp with the min and max I-V curves. 3) This is probably up to the simulator vendor's implementation. A certain vendor whose IBIS implementation I happen to be familiar with will pick all min values when you tell it to do a "min" simulation, all max values for a "max" simulation and it will pick min C_comp with max I-V curves for "fast" simulation and max C_comp with min I-V curves for "slow" simulations. The user can have a choice between these combinations. 4) I do not know why this is only a warning in IBISCHK. Maybe there are cases when this convention doesn't apply and we didn't want to invalidate those cases. Arpad ======================================================================== -----Original Message----- From: Lance Wang [mailto:lwang@xxxxxxxxxx] Sent: Thursday, May 27, 2010 12:44 PM To: Muranyi, Arpad; si-list@xxxxxxxxxxxxx Subject: RE: [SI-LIST] Re: IBIS min, typ and max. values Arpad, I guess that you disagree with me about put smaller C_comp value in the Max column. If not or not only that, please clarify. Thanks. Here is a made-up example and few questions for you: I have buffer spice netlists with TT, FF, SS corner libraries. When I extract c_comp values from them, I got A, B and C. And A > B > C. I put TT iv/vt data in typ column, SS iv/vt data in max column and FF in min according to the reference voltage and temperature settings. Questions: 1. what should I do with A, B and C in C-comp typ/min/max? 2. in your prediction, if I simulate it for slow and fast, which c-comp values simulator will pick? 3. if I simulate for Min and Max (not fast and slow), which c-comp values simulator will pick? 4. if it is crucial, why does IBISCHK only give Warning messages not Errors? Thanks in advance. BTW, I think modeling work is about how to represent a real device in an accurate and reasonable way. Not about design the buffer self. Hope we are on the same page. Best regards, Lance Wang 978-764-2298 IO Methodology Inc. -----Original Message----- From: si-list-bounce@xxxxxxxxxxxxx [mailto:si-list-bounce@xxxxxxxxxxxxx] On Behalf Of Muranyi, Arpad Sent: Thursday, May 27, 2010 12:42 PM To: si-list@xxxxxxxxxxxxx Subject: [SI-LIST] Re: IBIS min, typ and max. values Lance, Sorry, but I must disagree with you... There are at least two reasons the IBIS specification says that the small value of C_comp should be in the min place and the big value in the max place. One is that C-Comp doesn't always track with other effects. For example, you can get a weak I-V curve by reducing the supply voltage, but that will not change the value of the die capacitance. And there are other process related effects which may not track either. The other is that it is very easy to get mixed up in the terminology. People often associate worst case with slow, and best case with fast. But think of an example where the buffer switches very fast, has very small capacitance. In this case the transition will most likely have some ringing, especially in reflective environments. If the ringing after the edge is large enough, it may enter the "forbidden zone" where the receiver may switch. For this reason the timing of the system will have to wait for the ringing to settle, and from an SI perspective the fast buffer may actually become the worst case. Increasing the die capacitance may help in slowing down the buffer and/or reducing the ringing. This could result in much better SI timings, even though the buffer is "slower". These were the primary reasons for writing the IBIS specification the way it is. It is really the simulator tool's and its user's responsibility to pick the correct combinations of the min and max values from the IBIS model. To cover all possible scenarios you may need to do more combinations to find out what could cause systems to fail. Arpad ==================================================================== -----Original Message----- From: si-list-bounce@xxxxxxxxxxxxx [mailto:si-list-bounce@xxxxxxxxxxxxx] On Behalf Of Lance Wang Sent: Thursday, May 27, 2010 10:17 AM To: si-list@xxxxxxxxxxxxx Subject: [SI-LIST] Re: IBIS min, typ and max. values We might need to think differently for this. For simulators, how do they know which corner in IBIS is slow or fast or nominal? They just use Max, Min and Typ corners. Easy! Do they know if you put the corners in the wrong places? Definitely not. What IBIS spec suggested is to put slow in Max and fast in Min to have simulators pick the correct one for you since they might have default setting as min=fast and max=slow. Some simulation software even allow you changing the relationships as you needed. For an example, Cadence PCB SI. For the buffer-self, when you have 3 spice netlists for each corners, the C_comp value is set since it is an extracted value as the same as its IV/VT data. Your c_comp needs to be with the other extracted data in the same corner for sure to have correct simulation results. I have seen some buffers' min c_comp values larger than max c_comp values. And min is faster. In this case, I would suggest you just have them as is. IBIS golden parser might give you warning messages. But it should not give Errors. Hope this clears a bit. Best regards, Lance Wang 978-764-2298 IO Methodology Inc. www.iometh.com -----Original Message----- From: si-list-bounce@xxxxxxxxxxxxx [mailto:si-list-bounce@xxxxxxxxxxxxx] On Behalf Of Muranyi, Arpad Sent: Thursday, May 27, 2010 9:50 AM To: Sudhanshu SINGH; si-list@xxxxxxxxxxxxx Subject: [SI-LIST] Re: IBIS min, typ and max. values Follow the suggestion in the spec, put the big values in the max location and the small values in the min location... The simulator will pick and choose for you. For example, if you read the HSPICE manual, you will find a table in there which explains what values it will pick from the IBIS file for typ min max fast slow simulation settings in the B-element... Arpad ========================================================== -----Original Message----- From: Sudhanshu SINGH [mailto:sudhanshu.singh@xxxxxx] Sent: Thursday, May 27, 2010 8:10 AM To: si-list@xxxxxxxxxxxxx; Muranyi, Arpad Subject: RE: [SI-LIST] Re: IBIS min, typ and max. values Hello All, In my case I have seen that spice Vs IBIS correlation is better if the c_comp values are put in typ/min/max tables exactly as they are extracted. Even if the magnitude wise order is not strictly followed as in the IBIS spec. What is then the best approach to put c_comp values in IBIS tables? Thanks in advance, Best Regards, Sudhanshu -----Original Message----- From: si-list-bounce@xxxxxxxxxxxxx [mailto:si-list-bounce@xxxxxxxxxxxxx] On Behalf Of Muranyi, Arpad Sent: Thursday, May 27, 2010 5:00 AM To: si-list@xxxxxxxxxxxxx Subject: [SI-LIST] Re: IBIS min, typ and max. values Hermann, I am not sure where you got the idea from that the IBIS spec says "one can place the largest value in the min Column in order to have the worst slow case covered". If you look in Section 9 of the specification, you will find the following: | The "min" and "max" columns for all remaining keywords and subparameters | will contain the smallest and largest magnitude values. This applies to the | [Model] subparameter C_comp as well even if the correlation to the voltage, | temperature, and process variations are known because information about such | correlation is not available in all cases. Thanks, Arpad ============================================================== -----Original Message----- From: si-list-bounce@xxxxxxxxxxxxx [mailto:si-list-bounce@xxxxxxxxxxxxx] On Behalf Of Hermann Ruckerbauer Sent: Wednesday, May 26, 2010 10:29 AM To: si-list@xxxxxxxxxxxxx Subject: [SI-LIST] Re: IBIS min, typ and max. values Hello Sudhanshu, that's interesting. In this case the spec and the IBIS cookbook mention it differently ... The cookbook mentiones to use the same order (smallest value in the min column) and let the tool decide, while the Spec mentiones, that one can place the largest value in the min Column in order to have the worst slow case covered ... Any feedback from the tool vendors how they implemented this selection ? Thanks and Regards Hermann EKH - EyeKnowHow Hermann Ruckerbauer www.EyeKnowHow.de Hermann.Ruckerbauer@xxxxxxxxxxxxx Veilchenstrasse 1 94554 Moos Tel.: +49 (0)9938 / 902 083 Mobile: +49 (0)176 / 787 787 77 Fax: +49 (0)3212 / 121 9008 schrieb Sudhanshu SINGH: > Hello All, > > Reagrding c_comp as put previously in this mail, I have a query that, > why c_comp values extracted in typ, min or max conditions are not put > respectively in same typ, min or max columns in IBIS. > > > As Section 5.1.3.1 of cookbook ver4 says: > > Note that when constructing the IBIS file the numerically largest value of > C_comp is listed as the "max" value while the numerically smallest value of > C_comp is listed as the "min" value. C_comp min and max values do not > necessarily correlate with the min and max conditions under which the I-V > and switching data was gathered. The actual association of C_comp corner > values with simulation corners is performed at the tool level. > > > Thanks and Regards, > Sudhanshu > > -----Original Message----- > From: si-list-bounce@xxxxxxxxxxxxx [mailto:si-list-bounce@xxxxxxxxxxxxx] On > Behalf Of Hermann Ruckerbauer > Sent: Wednesday, May 26, 2010 2:23 PM > To: Lynne D. Green > Cc: si-list@xxxxxxxxxxxxx > Subject: [SI-LIST] Re: IBIS min, typ and max. values > > Thanks to all who replied (that fast). > I just love the List and everybody sharing his knowhnow there !!!! > > BTW: Happy Birthday!!!! > > Hermann > > EKH - EyeKnowHow > Hermann Ruckerbauer > www.EyeKnowHow.de > Hermann.Ruckerbauer@xxxxxxxxxxxxx > Veilchenstrasse 1 > 94554 Moos > Tel.: +49 (0)9938 / 902 083 > Mobile: +49 (0)176 / 787 787 77 > Fax: +49 (0)3212 / 121 9008 > > > schrieb Lynne D. Green: > >> Hello, Hermann, >> >> Note that the "SPICE" temperature is JUNCTION temperature, not >> ambient. IBIS [Temperature] is also junction temperature. The junction >> is hotter than ambient. >> >> Since the TYP temperature is only 25C, it is likely that ambient was >> used instead of junction when creating the model. Generally, >> increasing TYP and HOT temperatures by 25C is used to account for self >> heating when simulating to create I/O models for IBIS. COLD >> temperature is not adjusted. >> >> Note the Max [Temperature] is higher in bipolar I/O and lower in CMOS >> I/O. >> >> Hope this helps. >> >> Lynne Green >> Chair, IBIS Model Committee >> >> >> >> Hermann Ruckerbauer wrote: >> >>> Hello *, >>> >>> I hope somebody can help me with interpreting some things in an IBIS >>> file >>> I'm just working with an IBIS file where the min, typ, max values are >>> arranged in the following way: >>> >>> typ >>> min max >>> >>> C_comp 0.284pF 0.409pF >>> 0.264pF >>> [Voltage Range] 1.200V 1.100V >>> 1.300V >>> [Temperature Range] 25 125 125 >>> >>> The C_comp min is the largest value and the Temperature is in there >>> twice with 125C. >>> The same order is used for RAC and CAC for a terminator (largest value >>> in the min column) >>> >>> >>> e. g. in a Micron IBIS file is even some comment on having 0C as max. >>> temperature : >>> >>> | Junction Temperature (Ambient temp is 25C typ, 85C min, 0C max) >>> | typ >>> min max >>> [Temperature Range] 40.0 100.0 0.0 >>> >>> Regarding C_comp the Micron model lists it in the different order: >>> | typ >>> min >>> max >>> C_comp 2.466pF 2.316pF >>> 2.616pF >>> >>> In the IBIS spec I found the comment that C_comp is independent of >>> fabrication process and therefore to generate worst case it can make >>> sense to use the largest C_comp for slow process ==> in the min column. >>> Basically this makes sense to me, but does it then make sense to use the >>> smalles C_comp value in the min column ? >>> >>> So my questions would be: >>> Is there any common usage of the min column regarding parameters like >>> C_Comp, RAC, CAC (and maybe ohters) ? >>> Usually I would expect low temperature for fast devices, so having 0C in >>> the max column make sense, but does it make sense to have 125C in min >>> and max column ? >>> >>> Any feedback is highly appreciated! >>> >>> Thanks and regards >>> >>> Hermann >>> >>> EKH - EyeKnowHow >>> Hermann Ruckerbauer >>> www.EyeKnowHow.de >>> Hermann.Ruckerbauer@xxxxxxxxxxxxx >>> Veilchenstrasse 1 >>> 94554 Moos >>> Tel.: +49 (0)9938 / 902 083 >>> Mobile: +49 (0)176 / 787 787 77 >>> Fax: +49 (0)3212 / 121 9008 >>> >>> >>> ------------------------------------------------------------------ >>> 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.net >>> >>> List archives are viewable at: >>> //www.freelists.org/archives/si-list >>> >>> Old (prior to June 6, 2001) list archives are viewable at: >>> http://www.qsl.net/wb6tpu >>> >>> >> >> >> No virus found in this incoming message. >> Checked by AVG - www.avg.com >> Version: 9.0.819 / Virus Database: 271.1.1/2895 - Release Date: 05/25/10 >> > 08:26:00 > >> >> > > ------------------------------------------------------------------ > 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.net > > List archives are viewable at: > //www.freelists.org/archives/si-list > > Old (prior to June 6, 2001) list archives are viewable at: > http://www.qsl.net/wb6tpu > > > > ------------------------------------------------------------------ > 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.net > > List archives are viewable at: > //www.freelists.org/archives/si-list > > Old (prior to June 6, 2001) list archives are viewable at: > http://www.qsl.net/wb6tpu > > > > > > No virus found in this incoming message. > Checked by AVG - www.avg.com > Version: 9.0.819 / Virus Database: 271.1.1/2896 - Release Date: 05/25/10 20:26:00 > > ------------------------------------------------------------------ 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.net List archives are viewable at: //www.freelists.org/archives/si-list Old (prior to June 6, 2001) list archives are viewable at: http://www.qsl.net/wb6tpu ------------------------------------------------------------------ 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.net List archives are viewable at: //www.freelists.org/archives/si-list Old (prior to June 6, 2001) list archives are viewable at: http://www.qsl.net/wb6tpu ------------------------------------------------------------------ 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.net List archives are viewable at: //www.freelists.org/archives/si-list Old (prior to June 6, 2001) list archives are viewable at: http://www.qsl.net/wb6tpu ------------------------------------------------------------------ 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.net List archives are viewable at: //www.freelists.org/archives/si-list Old (prior to June 6, 2001) list archives are viewable at: http://www.qsl.net/wb6tpu ------------------------------------------------------------------ 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.net List archives are viewable at: //www.freelists.org/archives/si-list Old (prior to June 6, 2001) list archives are viewable at: http://www.qsl.net/wb6tpu ------------------------------------------------------------------ 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.net List archives are viewable at: //www.freelists.org/archives/si-list Old (prior to June 6, 2001) list archives are viewable at: http://www.qsl.net/wb6tpu ------------------------------------------------------------------ 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.net List archives are viewable at: //www.freelists.org/archives/si-list Old (prior to June 6, 2001) list archives are viewable at: http://www.qsl.net/wb6tpu ------------------------------------------------------------------ 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.net List archives are viewable at: //www.freelists.org/archives/si-list Old (prior to June 6, 2001) list archives are viewable at: http://www.qsl.net/wb6tpu ------------------------------------------------------------------ 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.net List archives are viewable at: //www.freelists.org/archives/si-list Old (prior to June 6, 2001) list archives are viewable at: http://www.qsl.net/wb6tpu