0% found this document useful (0 votes)
138 views

Sde Code

This document describes the design of a 45nm n-channel MOSFET transistor. It defines parameters such as doping concentrations, layer thicknesses, and contact settings. Meshing strategies are specified to generate a mesh file for the transistor design.

Uploaded by

Uma Mahesh
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
138 views

Sde Code

This document describes the design of a 45nm n-channel MOSFET transistor. It defines parameters such as doping concentrations, layer thicknesses, and contact settings. Meshing strategies are specified to generate a mesh file for the transistor design.

Uploaded by

Uma Mahesh
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 6

;********************************************************

;* 3D transistor Project
;* Created by: Umamaheswara Rao Tida
;* Version: 08/23/2014
;* Comments: 45nm- N-channel MOSFET Design
;********************************************************

(if (string=? "@Type@" "nMOS")


(begin
(define DopSub "BoronActiveConcentration")
(define DopSD "ArsenicActiveConcentration")
(define SubDop 1.0e15 ) ; [1/cm3]
)
(begin
(define DopSub "ArsenicActiveConcentration")
(define DopSD "BoronActiveConcentration")
(define SubDop 1.0e15 ) ; [1/cm3]
)
)

;---------------------------------------------------------------------; Setting parameters


; - Length for each part

(define tsvD @TSVDiameter@)


(define linD @LinerDiameter@)

(define tsvSD @DopedLength@)

(define subH 60)

(define fillet-radius 0.03)


(define metalT 0.3)
(define metalH (+ subH metalT))

;---------------------------------------------------------------------; Overlap resolution: New replaces Old


(sdegeo:set-default-boolean "ABA")

;----------------------------------------------------------------------

; Creating substrate region

(sdegeo:create-cuboid (position -10 -10 0) (position 10 10 subH) "Silicon"


"R.Substrate")
(sdegeo:create-cylinder (position 0 0 0) (position 0 0 subH) tsvSD "Silicon"
"R.SubstratePDoped" )
(sdegeo:create-cuboid (position 5.45 0 60) (position 5.63 0.18 50) "Silicon"
"R.source1" )
(sdegeo:create-cuboid (position 5.4496 -0.09 60) (position 5.6296 -0.27 50)
"Silicon" "R.drain1")
(sdegeo:create-cylinder (position 0 0 0) (position 0 0 subH) linD "SiO2" "R.Liner" )
(sdegeo:create-cylinder (position 0 0 0) (position 0 0 subH) tsvD "Copper" "TSV" )

(sdegeo:create-cylinder (position 0 0 subH) (position 0 0 metalH) tsvD "Copper"


"gateContact" )
(sdegeo:create-cuboid (position 5.54 0 subH) (position 5.63 0.09 metalH) "Copper"
"sourceContact" )
(sdegeo:create-cuboid (position 5.5396 -0.27 subH) (position 5.6296 -0.18 metalH)
"Copper" "drainContact" )

;---------------------------------------------------------------------; Contact declarations

(sdegeo:define-contact-set "source" 4 (color:rgb 1 0 0 ) "##" )


(sdegeo:define-contact-set "drain" 4 (color:rgb 1 0 0 ) "==" )
(sdegeo:define-contact-set "gate" 4 (color:rgb 1 0 0 ) "::" )

;---------------------------------------------------------------------; Contact settings


; for the Drain, find the edge at the middle point between Xmax and Xsp

(sdegeo:set-current-contact-set "gate")
(sdegeo:define-3d-contact (list (car (find-face-id (position 5 6.12323399573677e-16
60.15))) (car (find-face-id (position 0 0 60))) (car (find-face-id (position 0 0 60)))
(car (find-face-id (position 0 0 60.3)))) "gate")

(sdegeo:set-current-contact-set "source")
(sdegeo:define-3d-contact (list (car (find-face-id (position 5.585 0.045 60.3))) (car
(find-face-id (position 5.585 0.045 60))) (car (find-face-id (position 5.585 0.045 60)))

(car (find-face-id (position 5.585 0 60.15))) (car (find-face-id (position 5.54 0.045
60.15))) (car (find-face-id (position 5.585 0.09 60.15))) (car (find-face-id (position
5.63 0.045 60.15)))) "source")

(sdegeo:set-current-contact-set "drain")
(sdegeo:define-3d-contact (list (car (find-face-id (position 5.5846 -0.225 60.3))) (car
(find-face-id (position 5.5846 -0.225 60))) (car (find-face-id
(position 5.5846 -0.225 60))) (car (find-face-id (position 5.5846 -0.27 60.15))) (car
(find-face-id (position 5.5396 -0.225 60.15))) (car (find-face-id (position 5.5846 -0.18
60.15)))
(car (find-face-id (position 5.6296 -0.225 60.15)))) "drain")

;---------------------------------------------------------------------; Separating lumps


(sde:separate-lumps)

; Saving BND file


(sdeio:save-tdr-bnd (get-body-list) "n@node@_half_bnd.tdr")

(sdedr:define-constant-profile "Elec_Cond" "ElectricalConductivity" 10)


(sdedr:define-constant-profile-region "EC" "Elec_Cond" "R.Substrate")

(sdedr:define-constant-profile "ndope" DopSD SubDop)


(sdedr:define-constant-profile-region "const.substrate" "ndope" "R.Substrate")

(sdedr:define-constant-profile "pdope" DopSub SubDop)


(sdedr:define-constant-profile-region "Dopingsubstrate" "pdope"
"R.SubstratePDoped")

(sdedr:define-constant-profile "Source_ndope" DopSD SubDop)


(sdedr:define-constant-profile-region "Source.dope" "Source_ndope" "R.source1")

(sdedr:define-constant-profile "Drain_ndope" DopSD SubDop)


(sdedr:define-constant-profile-region "Drain.dope" "Drain_ndope" "R.drain1")

;---------------------------------------------------------------------; Meshing Strategy:


(sdedr:define-refeval-window "RefEvalWin.global" "Cuboid" (position -10 -10 0)
(position 10 10 metalH))
(sdedr:define-refinement-size "RefDef.Global" 0.5 0.5 0.5 0.001 0.001 0.001 )
(sdedr:define-refinement-placement "place.Global" "RefDef.Global"
"RefEvalWin.global" )

;---------------------------------------------------------------------; Save CMD file


(sdedr:write-cmd-file "n@node@_half_msh.cmd")

;----------------------------------------------------------------------

; Build Mesh
(system:command "snmesh n@node@_half_msh")

;---------------------------------------------------------------------; Reflect device


;(system:command "tdx -mtt -x -ren drain=source n@node@_half_msh
n@node@_msh")

You might also like