Перейти к содержанию
    

Расчет ps, pd в моделях МОП-транзисторов

Добрый день. Возник вопрос следующего характера: как правильно рассчитывать передаваемые на моделирование периметры стока и истока МОП-транзистора ps, pd (низковольтный классический КМОП , nmos со стандартной полосковой геометрией). Казалось бы это две ширины транзистора плюс два размера области под контакт.

 

НО: в некоторых PDK и в правилах LVS, и в расчете этих параметров для моделирования суммируются лишь ОДНА ширина + два размера под контакт (в частности xfab). Плюс к этому в документации spectre (файл spectremod.pdf) для приведенной формулы учета периметра стоковой области также показан вариант с только тремя сторонами прямоугольника.

 

Соответсвенно некоторые (но не все из тех, что я видел) фабрики используют именно вариант с тремя сторонами. Другие же учитывают 4 стороны. Возможно, тут все очевидно, но я не понимаю. Хотелось бы разобраться. В частности, область применения как одного, так и другого варианта расчетов.

 

Заранее спасибо.

Изменено пользователем TiNat

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Если топология транзистора не простейшая линейная, а многозатворная (много фингеров (finger) ), то в среднем на один затвор такого транзистора приходится именно такие значения площади и периметра стоков и истоков.

1-s2.0-S002627141100429X-gr1.jpg

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

В случае многозатворного транзистора периметр и площадь стоков делятся пополам. Половина передается в нетлист для "левого затвора", половина для "правого". В классическом случае, когда периметр затвора определяли как (2*Wfing + 2*D) каждому затвору периметром пошло бы значение (Wfing + D). В том случае, о котором у меня задан вопрос, каждой половинке многосекционного транзистора пойдет значение (D), т.е. формальный суммарный периметр станет (2*D), т.е. на (2*Wfing )мкм меньше, чем в классическом случае.

Это я расписал для многозатворного транзистора, пример которого Вы удачно привели. Но изначальный вопрос в принципе касался одиночного транзистора.

Изменено пользователем TiNat

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Очевидно, что для одиночного транзистора такой метод расчета неправилен. Ошибка в дизайн ките. Правильный дизайн кит корректно считает площади и периметры и для одночного и для многозатворного транзистора.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Ошибкой PDK это вряд ли может быть. Такая развитая фабрика,как xfab вряд ли может сделать такую "детскую" ошибку. У них этот подход используется в правилах LVS, в организации схемотехнического символа элемента и в SPICE-моделях. Плюс, как я уже писал выше - этот вариант не "придуман" с головы, а описан в документации. Например, опять-таки, в описании симулятора spectre. Там расчет по трем сторонам идет, если в явном виде указана длина стоковой области (ls).

 

Может кто-то с таким сталкивался и разобрался?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

... Такая развитая фабрика,как xfab вряд ли может сделать такую "детскую" ошибку...
Подскажите плз, о какой XFAB-овской технологии речь, какой транзистор и какая версия дизайн кита. Интересно взглянуть...

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Я говорил про XFAB xh035, причем любого года (2007, 2009, 2012). За это время в подходе ничего не менялось. А именно: в символе элемента по умолчанию для расчета периметров стока\истока используются лишь 3 стороны диффузионной области. Далее при моделировании четвертая сторона(ширина транзистора) добавляется в сабсокете spice-модели. Но добавляется не всегда, при некоторых условиях моделирование будет идти с учетом только трех сторон. В этом по сути и заключался вопрос: когда правильно брать 3 стороны, а когда четыре.

И еще, что интересно, не зная этой их "фишки", не открывая spice-параметры, а просто руками задав периметр в символе, получится так, что в модели к тому, что я задал добавится ширина. Соответственно XFAB подразумевает, что я должен вписывать только 3 стороны (вроде как для них это само собой разумеющееся, как бы "по умолчанию"). По крайней мере я так понял.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Посмотрел кит 2011 года (v.4.3.1). Действительно, по умолчанию формулы для периметров и площадей стоков/истоков такие как вы написали, причем независимо как нарисован транзистор - одиночный затвор или многозатворная конструкция, как на рисунке выше. Ошибки расчета периметров и площадей будут. Если есть желание поправить ситуацию, то кит дает возможность в свойствах транзистора написать свою формулу в зависимости от ширины канала или просто значение.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Все-таки возможно Вы не совсем правильно поняли вопрос. Ссылка на XFAB была просто "к слову".

 

Ошибки расчета периметров и площадей будут

 

Не будут. Внимательно почитайте мои предыдущие посты и внимательно посмотрите spice-модели.

 

Вопрос остается открытым.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Ошибки расчета периметров и площадей будут
Не будут. Внимательно почитайте...
В случае четного количества затворов количества стоков и истоков будут разными, поэтому будут также разными их площади и периметры. В (ваших) формулах это не предусмотрено.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

В случае четного количества затворов количества стоков и истоков будут разными, поэтому будут также разными их площади и периметры.

С этим я согласен. Сразу не так Вас понял. Делаю сам что-то типа PDK. Равное и неравное количество истоков я учел. И периметр я рассчитывал по 4 сторонам. Потом посмотрел XFAB и всю транзисторную библиотеку переделал по причине: "на XFAB умные люди работают". Теперь задумался, в чем фишка расчета периметра у XFAB. Задал вопрос на форуме. До сих пор ответа не нашел, а снова переделывать транзисторы не хочется.

Изменено пользователем TiNat

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

... Делаю сам что-то типа PDK. Равное и неравное количество истоков я учел. И периметр я рассчитывал по 4 сторонам. Потом посмотрел XFAB и всю транзисторную библиотеку переделал по причине: "на XFAB умные люди работают"...
Если ваши формулы считают правильно, но в XFAB-овском ките они не такие как у вас, то это значит что "умные люди на XFAB-е" ошиблись имхо. Надеюсь что версия до переделки у вас сохранилась и ее можно быстро восстановить.

 

PS. Вообще-то вклад емкостей p-n-переходов стоков/истоков в, например, задержки цифровых элементов составляет 20...30%. Причем, для типового лэйаута транзистора (одиночного или многосекционного), емкость периметра намного меньше емкости дна стока/истока. Поэтому ошибка XFAB-а в расчете периметра очень мало влияет на точность моделирования задержек. Ошибка в расчете площади влияет заметнее, но при проектировании стараются не заставлять работать цифровые элементы в режимах с предельным быстродействием, поэтому на заметную разницу предельного быстродействия модели и изготовленных кристаллов обычно не обращают внимания.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Посмотрел кит 2011 года (v.4.3.1). Действительно, по умолчанию формулы для периметров и площадей стоков/истоков такие как вы написали, причем независимо как нарисован транзистор - одиночный затвор или многозатворная конструкция, как на рисунке выше. Ошибки расчета периметров и площадей будут. Если есть желание поправить ситуацию, то кит дает возможность в свойствах транзистора написать свою формулу в зависимости от ширины канала или просто значение.

Скорее всего я разобрался почему XFAB периметр считает по трем сторонам, и это, на мой взгляд, правильно. В Spectre для модели bsim3v3 помимо параметра cjsw (удельной емкости боковой части стокового/истокового p-n перехода) есть парметр cjswg (удельная емкость боковой части стокового/истокового p-n перехода в сторону канала транзистора). По умолчанию cjsw=cjswg (когда нет возможности определить cjswg), в этом случае периметр стоковых/истоковых областей можно считать по четрыем сторонам.

Spectre считает емкость перехода по следующей формуле: cd = ad x cjbs + pd x cjbssw – Weff x cjbssw + Weff x cjbsswg, где cjbs функция от cj, mj и pb; cjbssw функция от cjsw, mjsw и pbsw; cjbsswg функция от cjswg, mjswg и pbswg. Слудует обратить внимание на Weff - эффективная ширина канала. Теперь представим, что в нашей топологии имеются транзисторы, у которых затвор имеет перегибы. В этом случае при экстракции необходимо учитывать изгибы (колени) затвора и пересчитывать их в эквивалентное значение ширины канала. Тогда Weff для данного транзистора не будет равно длине грани, где затвор соприкасается с областью стока (истока). Поэтому правильно будет считать периметр по трем сторонам, а в файле модели (в subckt) к рассчитанному периметру добавлять рассчитанное значение Weff. В этом случае будет учтена ошибка (резность длины грани, где затвор соприкасается с областью стока (истока),и Weff). Если транзисторы в design kit запрещено рисовать с перегнутыми затворами, то в этом случае pd и ps можно считать по четырем сторонам.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Полное название параметров ps, pd - "Source diffusion periphery", "Drain diffusion periphery". Думаю, это периметр областей истока (стока) по сторонам диффузионной области, куда не входит сторона, примыкающая к затвору. Поэтому считают только одну ширину.

Вообще на практике увеличение ps, pd на одну ширину почти не влияет на результаты моделирования.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...