As of July 1, 2021, Google will discontinue the RSS-to-email subscriptions service.
Hence, the email alerts will be impacted while we explore other options. Please stay tuned for further communication from us.
I have a circuit that involves monitoring the voltage across a 66k ohm resistor with a Schmitt trigger. I got the circuit working just fine in Spectre and then layed it out - however I needed to tweak the 66k resistor from the original series of 6 segments to a series of 4 segments to get LVS to pass. I subsequently resimmed the schematic with the reconfigured 4-segment 66k resistor and the sim failed :-/. I thought maybe I was on some crazy cliff edge so I started tweaking the resistor value but it wasn't until I had changed the 4 segment total resistance to about 64k before I got to the same place as the 6 segment 66k resistor! I'm guessing the schematic is calculating the resistance differently to the simulator, however the process I'm using is what I would have thought was a fully ironed out, highly mature, 20 year old TSMC 0.18um CMOS process. I'm not fully sure how to debug this. I've attached some screenshots that I hope can be of assistance.
In addition to the attached pictures, I noticed that if I enter an illegal value (I used xxx) into the total resistance field of the Property Editor in the schematic that a formula appears for the total length and segment length. Those formulas are:
Total length:(1e-06-40.6n)*(xxx*1/6-2*0.17m/(1e-06-(-0.14u)))/335.0+0*6Segment length(1e-06-40.6n)*(xxx*1/6-2*0.17m/(1e-06-(-0.14u)))/335.0+0
It's not really clear to me what the actual problem is here. Using "xxx" is not an "illegal value" - it just means that the PDK has support for variable names in those fields, and when it does so, it changes to use an equation rather than showing a fixed derived value computed in the callbacks.
I'm going to remove the middle screenshot because that's TSMC IP - you should not be sharing their model in a public place.
Perhaps you can clarify what the issue is here, but I wouldn't expect the resistance to match exactly what is shown in the edit properties form - the model has voltage dependency, whereas the static properties obviously can't take that into account and are probably computing it based on some nominal bias.
Sorry about being vague about the actual problem at hand, and also for showing the resistor model details when I shouldn't have! At the highest level, my issue is that I can make a 66k resistor in my schematic out of either 4 or 6 series segments and that in doing so it appears the simulator sees about a 2k ohm difference in the total value passed to it (which is a massive difference). It's the same kind of poly resistor so I certainly don't expect the two versions to behave so differently at the same temperature or voltage for the same simulation. It's reasonable to say that I should better believe the simulation result from the 4 segment resistor I ended up laying out, but I'm just blown away by the huge difference in effective final value from the two versions. I thought it might have something to do with contact resistances (the width supports 2 contacts at each end), but even those numbers don't add up to produce such a big effective difference. I was hoping for some clues to this so I could learn something moving forward. I've submitted many designed circuits to layout and blindly accepted minor topology changes to resistors and capacitors that all ended up with the same value, and now I'm worried about doing so moving forward. I should also add that the resistor width stayed the same during the re-segmentation - had that changed I would have definitely been tweaked.
Also, I'm aware the resistors can take on variable names for their value - I only added the "xxx" as the value because it exposed the underlying formula on the off-chance it might be useful.
It's probably a question for TSMC anyway, as it's their technology, their models and their PDK...
Maybe somebody with experience of this particular process node/option may be able to answer based on their experience (I'd have to get access to it to take a look, so that's not something I can do for a forum question unless I happened to have easy access to the technology variant already).
Understood - appreciate your inputs anyway.