podstawy mikroelektroniki (laboratorium)

Transkrypt

podstawy mikroelektroniki (laboratorium)
Politechnika Warszawska
Wydział Elektroniki i Technik Informacyjnych
Instrukcja do przedmiotu
PODSTAWY MIKROELEKTRONIKI
(LABORATORIUM)
Ćwiczenia 8 – 9: zagadnienia projektowania
analogowych układów CMOS
Prof. dr hab. Wiesław Kuźmicz
Prof. dr hab. Andrzej Pfitzner
Instytut Mikroelektroniki i Optoelektroniki
Warszawa, luty 2014 r.
Spis treści
1 Wprowadzenie. Cel ćwiczeń
3
2 Rozrzuty produkcyjne w analogowych układach CMOS
4
2.1 Pochodzenie i wielkość rozrzutów
4
2.2 Symulacja statystyczna
4
3 Badany układ
5
4 Przebieg ćwiczeń
10
5 Uwagi końcowe
18
2
1 Wprowadzenie. Cel ćwiczeń
Projektowanie analogowych układów scalonych dość znacznie różni się od projektowania układów
cyfrowych. Projektowanie układów cyfrtowych często polega na składaniu układów z gotowych,
zawczasu zaprojektowanych “klocków” – komórek standardowych. Pomagają w tym systemy
automatyzujące projektowanie układów cyfrowych. Przy ich pomocy można w sposób automatyczny
lub prawie automatyczny uzyskać projekt układu wychodząc z jego opisu fukcjonalnego w językach
takich, jak Verilog lub VHDL. W przeciwieństwie do tego projektowanie układów analogowych nie
poddaje się, jak dotąd, automatyzacji. Gdy potrzebny jest nowy układ analogowy, okazuje się
zazwyczaj, że trzeba go zaprojektować od początku, czyli zaprojektować schemat układu, wykonać
jego symulacje (i ewentualnie zrobić poprawki w projekcie), zaprojektować topografię układu
(“layout”) – najczęsciej w stylu “full custom” oraz wykonać wszystkie końcowe weryfikacje i
symulacje. Występują tu liczne problemy, na które nie napotyka projektant układów cyfrowych.
Problemy te biorą się w dużej mierze stąd, że – w przeciwieństwie do typowych bramek
cyfrowych CMOS – działanie i parametry układów analogowych silnie zależą od parametrów
elementów. W szczególności, przy projektowaniu układów analogowych
-
bardzo duże znaczenie mają modele elementów używane w symulacji,
-
projekt topografii musi być bardzo przemyślany,
-
istotne są rozrzuty produkcyjne,
-
istotne mogą być efekty temperaturowe,
-
istotne mogą być parametry małosygnałowe, takie jak wzmocnienie, szerokość pasma, szumy
itp.
W ćwiczeniach 8 i 9 niektóre z tych zagadnień będą zilustrowane na przykładzie bardzo prostego
wzmacniacza operacyjnego CMOS. Najpierw zbadany zostanie wzmacniacz o danym schemacie i
topografii – jego charakterystyka przejściowa DC, wzmocnienie i pasmo przenoszenia oraz rozrzut
produkcyjny charakterystyk. Następnie zadaniem będzie takie przeprojektowanie wzmacniacza, aby
ten rozrzut został zmniejszony i zmieścił się w zadanym przedziale. Aby to było możliwe, zostanie
przeprowadzona charakteryzacja statystyczna procesu produkcyjnego układu. Po przeprojektowaniu
układ będzie ponownie przebadany, aby stwierdzić, czy cel został osiągnięty. W ćwiczeniach użyte
będą następujące programy: edytor topografii UNCLE, ekstraktor EXCESS, symulator układów
elektronicznych IMiOSpice, symulator procesów technologicznych SYPRUS wraz z programem
pomocniczym StatIC oraz program RunSpice, który posłuży do symulacji charakterystyk badanego
układu w obecności rozrzutów produkcyjnych.
3
2 Rozrzuty produkcyjne w analogowych układach CMOS
2.1 Pochodzenie i wielkość rozrzutów
W naszych ćwiczeniach uprościmy nieco zagadnienie i będziemy brać pod uwagę tylko
tranzystory MOS. Takie uproszczenie jest zresztą całkowicie dopuszczalne dla większości układów, w
których nie występują inne elementy oprócz tranzystorów. Rozrzut produkcyjny parametrów
tranzystorów omówimy na przykładzie napięcia progowego VT, które jest jednym z najważniejszych
parametrów. Rozrzut napięcia progowego wywołany jest przede wszystkim statystycznym rozrzutem
koncentracji domieszek w obszarze kanału tranzystora, a także rozrzutem grubości tlenku
bramkowego, rozrzutem koncentracji stałego ładunku dodatniego w tlenku bramkowym i kilkoma
innymi mniej istotnymi czynnikami. Układy scalone konstruuje się tak, aby były mało wrażliwe na
rozrzut globalny, toteż interesować nas będzie przede wszystkim rozrzut lokalny, który ujawnia się w
postaci różnicy parametrów pary identycznie zaprojektowanych i wykonanych w tym samym układzie
tranzystorów. Ten rozrzut jest tym mniejszy, im większa jest powierzchnia kanału tranzystora. Rozrzut
lokalny napięcia progowego można w przybliżeniu zapisać wzorem:
ΔVT = AVT
gdzie
1
WL
(1)
ΔVT jest wartością średnią rozrzutu lokalnego, AVT stałą charakteryzującą dany proces
produkcyjny, a W i L są wymiarami kanału tranzystora. W przypadku często spotykanej w układach
analogowych pary tranzystorów stanowiącej wzmacniacz różnicowy
ΔVT jest zbliżona do wartości
średniej wejściowego napięcia niezrównoważenia (w rzeczywistości jest ono nieco większe, bo
wpływają nań także inne rozrzuty).
Jeżeli mamy zaprojektować wzmacniacz różnicowy o wejściowym napięciu niezrównoważenia nie
przekraczającym pewnej zadanej wartości, to wzór (1) wyznacza w przybliżeniu minimalną
powierzchnię kanałów WL pary tranzystorów w tym wzmacniaczu.
Stałą
AVT wyznaczyć można doświadczalnie. Odpowiednie dane dla tranzystorów n-kanałowych
i p-kanałowych podają producenci układów. W ćwiczeniu posłużymy się jednak metodą symulacji
statystycznej procesu produkcyjnego, dającą bardzo realistyczne, bliskie rzeczywistości wyniki.
2.2 Symulacja statystyczna
Uwzględnienie rozrzutów produkcyjnych w projektowaniu układów scalonych umożliwia
symulacja statystyczna metodą Monte Carlo. Polega ona na wielokrotnym powtarzaniu symulacji
układu ze zmieniającymi się parametrami elementów. Zmiany te w najprostszym przypadku
wprowadzane są przez generatory liczb losowych, dla których parametry (wartość średnia i odchylenie
standardowe) określane są na podstawie obserwowanych doświadczalnie rozrzutów. Taka symulacja
statystyczna jest możliwa w wielu profesjonalnych symulatorach układów elektronicznych. Jej dużą
wadą jest to, że rozrzuty parametrów każdego elementu są symulowane niezależnie, a więc bardzo
trudno uwzględnić fakt, że parametry elementów w układzie są ze sobą silnie skorelowane (małe
rozrzuty lokalne).
4
W ćwiczeniach używany będzie zestaw programów umożliwiający statystyczną symulację procesu
produkcji układów. W skład tego zestawu wchodzi symulator SYPRUS, który umożliwia symulację
procesów produkcyjnych układów CMOS. Ma on możliwość symulacji statystycznej Monte Carlo, w
której symulowane są zarówno lokalne, jak i globalne zaburzenia parametrów operacji
technologicznych (takie jak temperatury, czasy, dawki i energie implantowanych jonów itp.). Po
wykonaniu symulacji procesu produkcyjnego, czyli określeniu rozkładów koncentracji domieszek,
grubości warstw itp., następuje określanie parametrów elektrycznych elementów, których produkcja
jest symulowana. Symulator SYPRUS może działać jako niezależny program, i w tym trybie
umożliwia zdefiniowanie pewnej liczby tranzystorów MOS, a następnie wykonanie symulacji ich
wytwarzania. Może on także działać w zestawie z ekstraktorem EXCESS i specjalną wersją symulatora
IMiOSpice (o nazwie RunSpice). W tym trybie można wykonać symulację statystyczną produkcji
całego układu. Przebiega ona w następujący sposób. Punktem wyjścia jest topografia układu. Można ją
zaprojektować w dowolny sposób, na przykład edytorem UNCLE. Topografia poddawana jest
ekstrakcji programem EXCESS w trybie statystycznym. W tym trybie EXCESS powtarza proces
ekstrakcji schematu wielokrotnie, symulując globalne i lokalne rozrzuty kształtów i wymiarów w
maskach. Wynikiem tego procesu ekstrakcji jest plik (o nazwie z rozszerzeniem “.syp”), w którym
znajduje się nie jeden, lecz wiele wyekstrahowanych opisów układu (w formacie zbliżonym do formatu
programu SPICE). Każdy opis odpowiada symulacji produkcji jednego egzemplarza układu, a wymiary
tranzystorów w tym opisie są losowo zaburzone zaburzeniami globalnymi i lokalnymi. Ten plik jest
plikiem wejściowym dla programu SYPRUS. Symulator SYPRUS czyta ten plik i powtarza dla
każdego tranzystora w każdym kolejnym symulowanym układzie symulację procesu produkcji, a
następnie oblicza parametry modelu tego tranzystora i dopisuje je. Dla każdego symulowanego układu
tworzony jest odrębny plik wejściowy w formacie programu SPICE. Plików tych jest tyle, ile
egzemplarzy układu było poddanych ekstrakcji programem EXCESS. Do końcowej symulacji służy
program RunSpice, który czyta kolejne pliki i dla każdego z nich wykonuje symulację specjalną wersją
programu Spice. Wszystkie wyniki kolejnych symulacji są zbierane w jednym pliku. Końcowym
rezultatem jest graficzny obraz wyników symulacji wszystkich egzemplarzy układu, co pozwala ocenić
rozrzuty produkcyjne.
3 Badany układ
Przedmiotem badań będzie prosty wzmacniacz operacyjny o schemacie pokazanym na rys. 1.
Składa się on z wejściowego wzmacniacza różnicowego z tranzystorami M1N i M2N, dla którego
dynamicznym obciążeniem są tranzystory M1P i M2P. Stopień wejściowy jest zasilany prądem ze
źródła prądowego, jakie tworzą tranzystory M4N i M5N. Tranzystor M3N służy jako nieliniowa
rezystancja określająca wartość prądu płynącego przez tranzystor M5N. Stopień wyjściowy tworzy
tranzystor M3P, dla którego dynamicznym obciążeniem o dużej rezystancji różniczkowej jest
tranzystor M6N. Tranzystor M6N wraz z M5N tworzą źródło prądowe określające prąd płynący w
stopniu wyjściowym. Wymiary tranzystorów zostały dobrane w taki sposób, że przy napięciu zasilania
5 V, gdy na oba wejścia podane jest jednakowe napięcie równe 2,5 V, to na wyjściu panuje także
napięcie 2,5 V. Oznacza to, że w przypadku zasilania wzmacniacza z dwóch źródeł +2,5 V i –2,5V
5
względem umownej “masy” i podaniu na oba wejścia identycznych napięć względem umownej “masy”
na wyjściu panuje napięcie równe zeru (patrz rys. 2).
Rys. 1. Wzmacniacz operacyjny CMOS
Rys. 2. Typowy sposób użycia układu z dwoma źródłami zasilania. Jeśli oba napięcia wejściowe są
dokładnie jednakowe, napięcie wyjściowe powinno być równe zeru.
6
Wzmacniacz zaprojektowano w technologii ECPD1.0 (plik technologiczny ECPD10_0.25)
Topografia układu, która stanowi punkt wyjścia do dalszych prac, jest pokazana na rys. 3.
Rozmieszczenie tranzystorów jest podobne, jak na rysunku schematu ideowego (rys. 1). Warto zwrócić
uwagę na kilka szczegółów topografii typowych dla projektów układów analogowych:
•
wejściowa para tranzystorów tworzących wzmacniacz różnicowy jest zaprojektowana
dokładnie symetrycznie włącznie z najbliższym otoczeniem,
•
prąd płynie przez oba tranzystory pary różnicowej w tym samym kierunku,
•
nad tranzystorami pary różnicowej nie są poprowadzone żadne połączenia,
•
zarówno polaryzacja wyspy, jak i uziemienie podłoża są wykonane przez liczne gęsto
rozmieszczone kontakty.
Pierwsze trzy punkty mają na celu zapewnienie jak najlepszej identyczności charakterystyk
tranzystorów pary różnicowej. Ostatni służy ochronie przed przenikaniem zakłóceń i przed
sprzężeniami pasożytniczymi przez obszary podłoża i wyspy.
Rys. 3. Topografia wzmacniacza operacyjnego badanego w ćwiczeniu
Rys. 4 przedstawia nominalną stałoprądową charakterystykę przejściową wzmacniacza (napięcie
wyjściowe w funkcji napięcia na wejściu IN+ nie odwracającym fazy, przy stałej wartości napięcia 2,5
V na wejściu IN-). Charakterystyka ta została otrzymana przy użyciu symulatora IMiOSpice.
7
V
V(5)
5.0
4.5
4.0
3.5
3.0
2.5
2.0
1.5
1.0
0.5
0.0
2.440
2.460
2.480
sweep
2.500
2.520
2.540
2.560
V
Rys. 4. Nominalna stałoprądowa charakterystyka przejściowa wzmacniacza operacyjnego
W symulacji użyty został model tranzystorów BSIM3v3, ponieważ proste modele (“level 1”,
“level 2”) nie mają wystarczająco dobrej dokładności do symulacji układów analogowych. Pełny tekst
pliku wejściowego do programu IMiOSpice jest następujący:
* WYNIK EKSTRAKCJI OTRZYMANY PRZY UZYCIU PROGRAMU EXCESS:
*amplifier.cir
*Node numbers:
*
0 (ov) *
3
*
4
*
5
*
6
-
- Labels:
GND
(assigned to Met1)
INmin
(assigned to Met1)
INplu
(assigned to Met1)
OUT
(assigned to Met1)
VDD
(assigned to Met1)
*Circuit netlist:
M1Nchan
M2Nchan
M3Nchan
M4Nchan
M5Nchan
M6Nchan
M1Pchan
M2Pchan
M3Pchan
9 3 10 0
9 4 8 0
7 6 6 0
0 7 9 0
0 7 7 0
0 7 5 0
10 10 6 6
8 10 6 6
5 8 6 6
Nchan W=2.5E-06 L=1E-06
Nchan W=2.5E-06 L=1E-06
Nchan W=1.25E-06 L=5E-06
Nchan W=2.5E-06 L=3.5E-06
Nchan W=2E-06 L=1E-06
Nchan W=4.5E-06 L=1E-06
Pchan W=1.25E-06 L=1.25E-06
Pchan W=1.25E-06 L=1.25E-06
Pchan W=7.5E-06 L=1E-06
* MODELE BSIM3v3 DOPISANE EDYTOREM TEKSTU:
* BSIM3v3 MODEL FOR NMOS DEVICE
.MODEL Nchan NMOS LEVEL=8
+ MOBMOD=1 CAPMOD=2
8
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
VTH0=0.7023 K1=0.2909 K2=0.01884 K3=0
K3B=0 DVT0=13.5 DVT1=1 DVT2=0
DVT0W=0 DVT1W=0 DVT2W=0
NCH=5.955e+16 VOFF=-0.08 KETA=-0.025 VBM=5
PSCBE1=2.7e+08 PSCBE2=9e-06 DSUB=0.5 NFACTOR=0.2
ETA0=0.3694 ETAB=-0.2115 U0=705.5
UA=3e-09 UB=6.5e-19 UC=5e-11
EM=4.1e+07 PCLM=1.3 B0=0 B1=0
PDIBLC1=0.1 PDIBLC2=0.001 PDIBLCB=0
A0=1 A1=0 A2=1 DROUT=0.5
PVAG=0 VSAT=1.2e+05 AGS=0.24 DELTA=0.01
DLC=0 DWC=0 DWB=0 DWG=0
W0=0 LL=0 LW=0 LWL=0
LLN=1 LWN=1 WL=0 WW=0
WWL=0 WLN=1 WWN=1
CGDO=2.871e-10 CGSO=2.871e-10 CGBO=0
CKAPPA=0.6 CGDL=0 CGSL=0
ELM=5 XPART=1 CF=0
CDSC=0.00024 CDSCB=0 CDSCD=0 CIT=0
RDSW=0 WR=1 PRWB=0 PRWG=0 RSH=0
AT=3.3e+04 UTE=-1.8 KT1=-0.3 KT2=0.022
KT1L=0 UA1=0 UB1=0 UC1=0
PRT=0 CLC=1e-15 CLE=0.6
NOIA=1e+20 NOIB=5e+04 NOIC=-1.4e-12
AF=1.4 KF=2e-27 EF=1
ALPHA0=0 BETA0=30 JS=5.595e-06
TOX=1.988e-08 NLX=0 XJ=2.97e-07
CJ=0.0002157 CJSW=1.007e-10 MJ=0.5 MJSW=0.33
PB=0.7132 PBSW=0.5 LINT=0 WINT=4e-07
TNOM=26.85
* BSIM3v3 MODEL FOR PMOS DEVICE
.MODEL Pchan PMOS LEVEL=8
+ MOBMOD=1 CAPMOD=2
+ VTH0=-1.476 K1=0.5703 K2=0.02758 K3=0
+ K3B=0 DVT0=0.5238 DVT1=1 DVT2=0
+ DVT0W=0 DVT1W=0 DVT2W=0
+ NCH=7.578e+15 VOFF=-0.08 KETA=0.0058 VBM=5
+ PSCBE1=4e+08 PSCBE2=1e-06 DSUB=0.5 NFACTOR=0.2
+ ETA0=0.02013 ETAB=-0.01237 U0=284.7
+ UA=1.5e-09 UB=2e-18 UC=5e-11
+ EM=4.1e+07 PCLM=1.3 B0=0 B1=0
+ PDIBLC1=0.015 PDIBLC2=0.0013 PDIBLCB=0.4
+ A0=1.3 A1=0 A2=1 DROUT=0.5
+ PVAG=0 VSAT=9.8e+04 AGS=0.095 DELTA=0.01
+ DLC=0 DWC=0 DWB=0 DWG=0
+ W0=0 LL=0 LW=0 LWL=0
+ LLN=1 LWN=1 WL=0 WW=0
+ WWL=0 WLN=1 WWN=1
+ CGDO=2.118e-10 CGSO=2.118e-10 CGBO=0
+ CKAPPA=0.6 CGDL=0 CGSL=0
+ ELM=5 XPART=1 CF=0
+ CDSC=0.00024 CDSCB=0 CDSCD=0 CIT=0.0008
+ RDSW=0 WR=1 PRWB=0 PRWG=0 RSH=0
+ AT=3.3e+04 UTE=-1.75 KT1=-0.44 KT2=0.022
+ KT1L=0 UA1=0 UB1=0 UC1=0
+ PRT=0 CLC=1e-15 CLE=0.6
+ NOIA=1e+20 NOIB=5e+04 NOIC=-1.4e-12
+ AF=1.4 KF=3e-27 EF=1
+ ALPHA0=0 BETA0=30 JS=2.268e-07
+ TOX=1.988e-08 NLX=0 XJ=1.449e-07
+ CJ=0.0007283 CJSW=1.658e-10 MJ=0.5 MJSW=0.33
+ PB=0.8095 PBSW=0.5 LINT=0 WINT=4e-07
+ TNOM=26.85
* ZASILANIE VDD I NAPIECIA WEJSCIOWE
VDD 6 0 5V
VINMIN 3 0 DC 2.5V
VINPLU 4 0 DC 2.5V
9
* ANALIZA DO WYKONANIA
.DC VINPLU 2.45 2.55 0.0002
* WIERSZE STERUJACE
.CONTROL
RUN
PLOT V(5)
.ENDC
.END
4 Przebieg ćwiczeń
Prace przewidziane w ćwiczeniach wykonujemy w następującej kolejności:
(a) Pełna charakteryzacja wzmacniacza z rys. 3.
Należy wykonać analizę DC i AC układu nominalnego w celu określenia wybranych
parametrów wzmacniacza. W tym celu wykonujemy kopię pliku “amplifier.cir” i dodajemy bądź
zmieniamy w nim kilka linii określających warunki polaryzacji i wiersze sterujące.
W przypadku analizy DC należy wykorzystać odpowiedni fragment pliku wejściowego do
SPICE, zamieszczonego powyżej (na końcu rozdz. 3 tej instrukcji). Na podstawie charakterystyki
przejściowej
wyznaczyć
maksymalną
wartość
niskoczęstotliwościowego
wzmocnienia
wzmacniacza oraz oszacować zakres praktycznie stałej jego wartości (liniowego odcinka
charakterystyki).
Następnie należy wykonać analizę AC w celu określenia górnej częstotliwości granicznej i
wartości
wzmocnienia
niskoczęstotliwościowego
(porównać
wynik
ze
wzmocnieniem
wyznaczonym na podstawie analizy DC). W tym przypadku w kopii pliku “amplifier.cir”
zmieniamy kilka linii tak, aby dodać na wejściu INplus źródło sygnału zmiennego o małej
amplitudzie, i wykonać analizę AC w zakresie częstotliwości od 1 kHz do 100 MHz.
Oto przykładowy fragment pliku wejściowego do SPICE:
* ZASILANIE VDD I NAPIECIA WEJSCIOWE
VDD 6 0 5V
VINMIN 3 0 DC 2.5V
VINPLU 20 0 DC 2.5V
* NAPIECIE ZMIENNE WLACZONE W SZEREG ZE ZRODLEM VINPLU
* AMPLITUDA 0.001 V
VINAC 20 4 AC 0.001 0
* ANALIZA DO WYKONANIA
* ANALIZA AC, DEKADOWA (10 PUNKTOW NA DEKADE) OD 1000 Hz do 100 MHz
.AC DEC 10 1000 100MEG
* WIERSZE STERUJACE
.CONTROL
RUN
PLOT V(5)
.ENDC
10
Otrzymane wykresy należy umieścić w sprawozdaniu opatrując je jednoznacznymi opisami.
Następnie należy wykonać charakteryzację statystyczną. W tym celu wykonujemy następujące
czynności:
-
otwieramy plik “amplifier.pmk” edytorem UNCLE
-
zapisujemy topografię w formacie CIF, otrzymujemy plik “amplifier.pmk.cif”
-
otwieramy plik “amplifier.pmk.cif” edytorem EXCESS (przedtem należy wczytać plik
technologiczny “ECPD10L8.exc”)
-
w menu “ECPD10L8.exc” wybieramy pozycję “nominal” (WAŻNE!) - ekstrahowane będą
tylko tranzystory, bez elementów pasożytniczych)
-
w menu “Run” wybieramy “Statistical extraction”
-
w oknie dialogowym, które się otworzy, wybieramy opcję “Random”, 1 płytkę, 100 układów
na płytce (patrz rys. 5).
-
Rys. 5. Ustawienie warunków ekstrakcji statystycznej
a następnie czekamy na zakończenie ekstrakcji statystycznej, która będzie trwać kilka minut.
-
po zakończeniu uruchamiamy program SYPRUS i otwieramy nim plik “ECPD10Proc”
(zawiera on opis procesu ECPD10) (wraz z plikiem tym otwiera się kilka innych plików
pomocniczych).
11
-
WAŻNE! – WYNIKI SYMULACJI ZAPISYWANE SĄ DO KATALOGU, Z KTÓREGO
OTWARTO PLIK OPISU PROCESU I ZAPIS TEN JEST MOŻLIWY TYLKO DO
WŁASNEGO
KATALOGU
UŻYTKOWNIKA.
Z
TEGO
POWODU
NALEŻY
SKOPIOWAĆ DO WŁASNEGO KATALOGU WSZYSTKIE PLIKI KATALOGU SYPRUS
Z
WYJĄTKIEM
PROGRAMU
WYKONAWCZEGO
(Syprus).
NICZEGO
NIE
EDYTUJEMY W TYCH PLIKACH!
-
sprawdzamy ustawienie trybu symulacji w preferencjach dla programu SYPRUS, powinny
być ustawione jak na rys. 6.
Rys. 6. Ustawienie warunków symulacji statystycznej w programie SYPRUS
-
otwieramy plik pomocniczy zawierający linie komend dla programu SPICE (będą one
dopisywane automatycznie do każdego pliku wejściowego dla SPICE tworzonego przez
12
program SYPRUS) – menu “File” poz. “Open SPICE Command File”; przygotowany jest do
tego plik “amplifier.scm”, ale TRZEBA W NIM WCZEŚNIEJ SPRAWDZIĆ, CZY
NUMERY WĘZŁÓW ZGADZAJĄ SIĘ Z NUMERAMI W PLIKU WYTWORZONYM
PRZEZ EXCESS!!!
-
otwieramy pliki: plik zawierający wyniki ekstrakcji statystycznej: menu “File” poz. “Open
EXCESS File”
-
uruchamiamy symulację (menu “Process” poz. “Simulate”); przed rozpoczęciem symulacji
pojawi się pytanie, czy w modelu BSIM3 należy użyć LEVEL=8, należy potwierdzić
-
następnie czekamy na zakończenie symulacji, trwa ona do kilku minut; pliki wyjściowe będą
miały kolejne numery “amplifier001.cir”, “amplifier002.cir” itd.
-
uruchamiamy program RunSpice i wybieramy pliki do symulacji (menu “File” poz. “Open”);
należy spośród 100 plików wytworzonych przez program SYPRUS wybrać plik o najniższym
numerze (tzn. “amplifier001.cir”).
-
przed rozpoczęciem symulacji pojawi się okno dialogowe wyboru wartości minimalnych i
maksymalnych na osiach wykresu, który będzie utworzony; należy wybrać wartości jak niżej:
Rys. 7. Wybór wartości na osiach dla wykresu zawierającego wyniki wymulacji statystycznej
-
następnie czekamy na zakończenie symulacji – program RunSpice wczytuje i symuluje
kolejno po 10 plików aż do ich wyczerpania.
-
po zakończeniu symulacji otrzymamy wyniki w postaci pliku graficznego w formacie GIF, w
tym samym katalogu, w którym znajdowały się pliki do SPICE (np. “amplifier.gif”). Plik
wynikowy należy obejrzeć dowolnym programem (np. Preview, NeoOffice), i zamieścić w
sprawozdaniu. Na podstawie tego rysunku określić maksymalny rozrzut charakterystyk dla
przyjętej próbki losowej.
Przykład pliku wynikowego pokazany jest na rys. 8. Jest to wynik symulacji innej wersji
wzmacniacza, niż pokazana na rys. 3.
13
Rys. 8. Przykładowy wynik symulacji statystycznej charakterystyk przejściowych wzmacniacza
operacyjnego
(b) Charakteryzacja statystyczna technologii
Aby móc przeprojektować wzmacniacz w celu zmniejszenia rozrzutu, należy najpierw ustalić
jak zależy rozrzut lokalny parametrów tranzystorów od ich wymiarów. Użyjemy do tego ponownie
programu SYPRUS. Postępujemy następująco:
-
uruchamiamy ponownie symulator SYPRUS, otwieramy plik “ECPD10Proc”
-
definiujemy 4 pary tranzystorów n-kanałowych silnie różniących się powierzchnią bramki,
natomiast mających te same proporcje W/L, co para tranzystorów M1N – M2N (menu
“Devices”, poz. “NMOS devices”)
-
określamy tryb symulacji w preferencjach: “Simple Monte Carlo simulation”, próbka równa
100, pliki wyjściowe: “Results of statistical simulation”, parametry wyjściowe: “Selection” patrz rys. 9
-
wybieramy zestaw parametrów do zapisu w pliku wyjściowym: tylko napięcia progowe patrz rys. 10
-
uruchamiamy symulację i czekamy na jej zakończenie (będzie trwać do kilku minut)1
-
aby obejrzeć wyniki, uruchamiamy pomocniczy program StatIC i otwieramy plik wynikowy
“ECPD10Proc.st”
-
oglądamy histogramy rozrzutu napięcia progowego (menu “Results” poz. “Mismatch”) – patrz
rys. 11.
1
Uwaga: jeśli w czasie symulacji pojawią się komunikaty o błędach, to oznacza, że wygenerowane
zostało bardzo duże zaburzenie procesu, dla którego symulacja nie może być prawidłowo kontynuowana.
Zaburzenia są generowane losowo, więc takiej sytuacji nie można wykluczyć. W takim przypadku należy
symulację przerwać i rozpocząć jeszcze raz (nie zamykając programu). Istnieje bardzo duża szansa, że w
powtórnej symulacji tak duże zaburzenie nie powtórzy się.
14
-
notujemy wyniki (odchylenie standardowe w funkcji powierzchni bramki tranzystora) i
wykonujemy wykres rozrzutu w funkcji
1
(np. korzystając z arkusza kalkulacyjnego
WL
pakietu NeoOffice)
-
wyniki zamieszczamy w sprawozdaniu.
€
Rys. 9. Tryb symulacji przy charakteryzacji statystycznej procesu
15
Rys. 10. Wybór parametrów wyjściowych
Rys. 11. Wyniki symulacji – obraz w programie StatIC dla jednej pary tranzystorów
16
0.02
R
o
z
r
z
u
t
Pow. br. ^-1/2
0.018
0.016
0.014
0.012
0.01
l
o 0.008
k
. 0.006
( 0.004
V
) 0.002
0
0
0.04
0.08
0.12
(Pow. bramki)^-1/2 (1/um)
0.16
0.2
Rys. 12. Przykład wyników symulacji rozrzutu po opracowaniu
(c) Przeprojektowanie wzmacniacza i ponowna charakteryzacja
Po obejrzeniu wyników symulacji rozrzutu w funkcji powierzchni bramki należy poprosić
prowadzącego zajęcia, aby określił cel przeprojektowania w postaci maksymalnego rozrzutu
charakterystyk wzmacniacza. Na tej podstawie wybieramy nowe wymiary W i L tranzystorów pary
różnicowej we wzmacniaczu i wykonujemy ostatnią część ćwiczeń:
-
wykonujemy
duplikat
pliku
“amplifier.pmk”
i
nadajemy
mu
nową
nazwę
(np.
“moj_wzmacniacz”) – nie edytujemy pierwotnej wersji wzmacniacza, aby w razie potrzeby
móc do niej wrócić!
-
otwieramy ten nowy plik edytorem UNCLE i przeprojektowujemy topografię tak, aby
tranzystory pary wejściowej miały nowe, większe wymiary kanału (uwaga: należy zachować
proporcje W/L!). Można również powiększyć inne tranzystory, zachowując proporcję W/L.
-
nową topografię poddajemy charakteryzacji jak w w punkcie (a): powinniśmy uzyskać
wykresy: nominalnej charakterystyki przejściowej, wyników symulacji AC i wyników
symulacji statystycznej (EXCESS->SYPRUS->RunSpice) oraz wyznaczyć odpowiednie
parametry wzmacniacza. UWAGA-WAŻNE: po przeprojektowaniu topografii mogą ulec
zmianie numery, jakie nadaje EXCESS węzłom elektrycznym, dlatego przed wszelkimi
symulacjami należy sprawdzić, czy w wierszach zawierających opisy źródeł napięć oraz
komendy dla SPICE nie trzeba zmienić numerów węzłów!
-
wszystkie wyniki zamieszczamy w sprawozdaniu.
Na koniec należy przedyskutować z prowadzącym zajęcia uzyskane wyniki:
-
czy cel (zmniejszenie rozrzutu) został osiągnięty?
-
jak zmieniły się charakterystyki wzmacniacza w wyniku przeprojektowania?
-
jak zmieniła się jego powierzchnia?
17
5 Uwagi końcowe
Zadania do wykonania są pracochłonne i wymagają użycia wielu programów, których obsługa nie
jest oczywista. Aby nie tracić czasu, należy prosić prowadzącego zajęcia o pomoc w każdym
przypadku problemu z programem – gdy nie wiadomo co zrobić, gdy program działa w sposób inny od
oczekiwanego lub nie daje spodziewanych wyników.
Prowadzący zajęcia poda wymagania dotyczące treści i formy sprawozdania. Może również
zdecydować o modyfikacji niektórych fragmentów ćwiczeń.
18