Magic Mailing List |
|
From: R. Timothy Edwards (tim AT stravinsky DOT jhuapl.edu) Date: Wed May 14 2003 - 11:36:04 EDT
Dear Anand, > Has anyone else out there using 7.1 noticed this over-estimation > of the PS/PD numbers for the NMOS device ? I tracked this error down to a single inequality. There's an "if" statement added somewhere between 6.5.1 and 7.1 which is supposed to check against an "unset" resistance class value (-1). However, it was written "s > 0" instead of "s >= 0", so it misses resistance class zero, which happens to be ndiffusion. Consequently, it records ndiffusion as being in a different resistance class than itself (!), so all tile edges get counted, not just tile edges between ndiff and other non-electrically-connected types. Strange that this should have gone unnoticed for so long. I've been looking at transistor areas and perimeters and didn't bother to check node areas and perimeters. . . The fix is to change if( s > 0 ) { to if( s >= 0 ) { which is file ExtTech.c, and is line 1587 in magic-7.2.38, and line 1050 in magic-7.1. I will update both distributions to correct the error. Thank you for pointing out this (rather bad) error. Regards, Tim
|
|