You are on page 1of 28

CÁC BÀI THÍ NGHIỆM

Chương 1: Khảo sát đặc tính của MOS


Phần I : Khảo sát đặc tuyến NMOS
I. Khảo sát đặc tuyến I/V
Set up test bench trong schematic editor như hình vẽ sau:

Các bạn tùy chọn con NMOS trong thư viện (VTL, VTH, …). Lưu ý các bạn nên
đặt biến cho các nguồn (Vds, Vgs, Vbs,…) để dễ dàng thực hiên quét biến trong quá trình
khảo sát.
I. Khảo sát đặc tuyến ID/VDS
Cố định giá trị Vgs bằng 1, quét (sweep) biến Vds từ 0 đến 1.5 để khảo sát
đặc tuyến sự thay đổi của ID theo VDS.
II. Khảo sát đặc tuyến ID/VGS
Cố định giá trị Vds bằng 1.5, quét (sweep) biến Vgs từ 0 đến 1.5 để khảo sát
đặc tuyến sự thay đổi của ID theo VDS.

Câu hỏi: từ các đặc tuyến khảo sát ở trên, các bạn hảy đề nghị một cách đo giá trị
điện áp ngưỡng (VTH) của NMOS.
II. Đặc tuyến ID/VDS dưới sự thay đổi của VGS, chiều rộng và chiều dài của kênh
dẫn.
I. Đặc tuyến ID/VDS dưới sự thay đổi của VGS

Lưu ý, các bạn nên đặt biến W (cho width), L (cho length), Vgs, Vds để tiện trong
việc thực hiện quét biến khảo sát.
Tìm hiểu về quét biến song song: trong cửa số ADE L, chọn Tools > Parametric
Analysis
Quét biến Vds từ 0 đến 1.5, Vgs = (0.4 ; 0.667 ; 0.933 ; 1.2 ) V
II. Đặc tuyến ID/VDS dưới sự thay đổi của chiều dài kênh dẫn
Quét biến Vds từ 0 đến 1.5, Length với các giá trị 90n, 180n, 270n 360n

III. Đặc tuyến ID/VDS dưới sự thay đổi của chiều rộng kênh dẫn
Quét biến Vds từ 0 đến 1.5, Width với các giá trị 90n, 180n, 270n 360n
III. Khảo sát hiệu ứng bậc 2
Set up mạch test bench như sau để khảo sát:

1. Body effect
Quét biến Vbs các giá trị 0.1, 0.55, 0.9. Cố định Vds=1, quét Vgs từ 0 đến 1
2. Chanel-length modulation
Quét biến Vbs các giá trị 0.1, 0.55, 0.9. Cố định Vds=1, quét Vgs từ 0 đến 1

Chương 2 : Khảo sát mạch opamp common source.


I. Tải thuần trở
Set up test bench mô phỏng như sau:
1. Khảo sát DC
Quét biến Vin = 0 đến 1.2V, Vsup = 1.2V, R = [10k, 100k] Ohm
Ta đc đăc tuyến Vout theo Vin như sau:
Dưa vào lý thuyết đã học, hãy chọn điểm DC cho độ khuếch đại tốt nhất.

2. Khảo sát Transient.


Từ điểm DC đã chọn, set up mô phỏng AC, thay thế nguồn vin bằng song sine
với điện áp DC (offset) bằng điện áp DC đã chọn ở trên, tần số là 1k và
amplitude là 10mV. Từ các kết quả (như waveform) bên dưới, hãy tính giá trị
của độ khuếch đại.
Vsup = 1.2V RL = [10k, 100k] Ohm
*RL = 10k
*RL = 100k

II. Tải diode connected

1. Khảo sát DC
Quét biến Vin = 0 đến 1.2V, Vsup = 1.2V

2. Khảo sát Transient

III. Tải Active(Vbias=Vdd/2)


1. Khảo sát DC
Vin = 0 -> 1.2 V Vsup = 1.2 V

2. Khảo sát Transient

Chương 3: Giới thiệu về ADEXL


Khảo sát inverter bằng ADEXL

I. Khảo sát DC
Khảo sát DC mục đích là xác định điển áp DC của mạch ở trạng thái static.
Inverter có công dụng invert một giá trị logic (0 sang 1 hoặc 1 sang 0), ở digital ta
chỉ quan tâm nó có thực hiện đúng chức năng đó hay không (có đúng logic
function hay không). Tuy nhiên khi inverter hoạt động trong trạng thái
“switching”, tức là chuyển trạng thái liên tục (như xung clock, data ngẫu nhiên), ta
cần quan tâm sự cân bằng của inverter để đảm bảo xung clock hay dữ liệu ổn định
Mục đích của khảo sát DC trong mạch inverter là tìm ra giá trị size của
PMOS/NMOS đảm bảo tính cân bằng của mạch
Câu hỏi: tại sao lại phải bảo đảm tính cân bằng? Để cân bằng tại sao không size
của P và N như nhau hay không?
Set up test bench sau để khảo sát DC của một inverter

Set up corner TT với giá trị Vdd = 1V, temp = 25. Set biến C = 2fF, quét Vin = (
0 ➔ 1 ) V tiến hành phân tích DC ta được đặc tuyến IN/OUT như sau:
Điểm cân bằng trip-point là điểm cắt của Vin và Vout, trip-point = Vdd/2 có nghĩa
là mạch inverter đã cân bằng.
Nhiệm vụ của các bạn là tim size của N và P sao cho trip-point gần bằng Vdd/2
nhất có thể. Tìm ra hàm đo trên adexl để đo đạc trip-point một cách tự động, không được
đo đạc bằng con trỏ trên waveform.

3. Khảo sát DC ở nhiệt độ và điện áp nguồn khác nhau.


Tiến hành set up them các corner khác với các giá trị nhiệt độ và điện áp
nguồn như bảng sau:
C0 C1 C2 C3 C4
Vdd 1 1.1 0.9 1.1 0.9
Temp 25 125 125 -40 -40
Tiến hành mô phỏng, ta được các đặc tuyến tại các corner như sau:

Ta có kết quả tương tự như bản dưới đây.

II. Khảo sát TRAN


Sử dụng lại bảng corner ở thí nghiệm DC, setup Vin thành sóng pulse với
các thông số như sau:

Set các biến: f=10k, Td=1n, Trf=1/(10*f), Pw=1/(2*f) - 1/(10*f)


Để khảo sát thực tế inverter, ta tiến hành mô phỏng transient, thời gian stop tùy
thuộc tần số hoạt động các bạn sử dụng (f). Ta sẽ đó các thông số như rise time, fall time,
duty cycle,… hảy tìm cách đo các thông số này trên adexl.
T_rise_avg : thời gian kéo lên tính bằng hàm risetime
T_fall_avg : thời gian kéo lên tính bằng hàm falltime
DT_H : duty cycle mức cao tính bằng hàm delay
DT_L : duty cycle mức thấp tính bằng hàm delay
Td_R2F : thời gian trễ kéo lên của in-out tính bằng hàm delay
Td_F2R : thời gian trễ kéo xuống của in-out tính bằng hàm delay
T_rise : thời gian kéo lên tính bằng hàm delay
T_fall : thời gian kéo xuống tính bằng hàm delay
I_static_0 : dòng điện tĩnh mức thấp
I_static_1 : dòng điện tĩnh mức
I_dynamic : dòng điện trung bình của inverter

Chương 4 : Khảo sát Current Mirror


I. Khảo sát mạch Current mirror
Set up test bench khảo sát current mirror như sau:

Với dòng điện input là 50u, hãy đo dòng qua nhánh mirror, xem giá trị dòng đó có
đúng giá trị cần “mirror” hay không.
• Thay đổi tỉ lệ mirror của current.
Width của M1 = 50n , 100n , 150n , 200n
Quan sát các dòng ngõ ra, dòng này có đúng tỉ lệ mirror hay k?

II. Mạch ứng dụng Current mirror


• Thay đổi Multiplier của M3
M của M3 = 1 , 2 , 3 , 4 , 5
BÀI TẬP LỚN
I. Mạch flash ADC:
1. Sơ đồ nguyên lý:

TIQ comparator: TIQ (Threshold Inverting Quantization) technique uses two


cascading inverters as a comparator. Fig represents schematic of TIQ comparator; the
first inverter generates switching voltage internally and second inverter acts as gain
booster. As we vary size of CMOS, the cascading inverters generates different
switching voltages internally which acts as reference voltages. This happens when
width of transistors is changed by keeping length constant. For given analog input, the
TIQ comparator compares with its switching voltage, which works same as a voltage
comparator. i.e. for a analog input greater the comparator switching voltage generates
logic one and for analog input less than switching voltage, the TIQ generates logic
zero. These comparators are arranged in parallel.
Encoder: the next stage to the comparator is Encoder. The outputs obtained by
comparator stage are in the form of Thermometer code and are encoded to Binary
form by Thermometer-to-Binary.
2. Nguyên lý hoạt động:
Mỗi bộ so sánh gồm 2 inverter, inverter thông thường đóng vai trò như bộ đảo
ngược logic. Mỗi inverter sẻ chuyển mạch khi input thay đổi tới một giá trị nào đó
(gọi là trip point). Với inverter thông thường, trip point lý tưởng sẻ là VDD/2. Tuy
nhiên ta có thể thay đổi trip point bằng cách điều chỉnh tỉ lệ kích thước của NMOS và
PMOS. Bằng nguyên lý này, ta có thể tạo ra các inverter có điểm chuyển mạch khác
nhau và ứng dụng nó như một bộ so sánh.
Ví dụ ta có một tín hiệu analog với dảy giá trị từ 0.3 lên 0.7 V. Ta sẻ thiết kế các
inverter mà điểm chuyển mạch của chúng sẻ thay đổi trong dảy giá trị trên. Nếu chọn
số inverter là 7, ta có thể thiết kể điểm chuyển mạch lần lượt là 0.35, 0.4, 0.45 0.5 0.6.
Khi đó nếu 0 có inverter nào chuyển mạch thì input sẻ từ 0.2 đến 0.3, nếu có duy nhất
inverter thứ nhất chuyển mạch thì input sẻ từ 0.3 đến 0.4, … nếu cả 4 inverter đều
chuyển mạch thì input sẻ từ 0.6 tới 0.7. Bằng nguyên lý đó ta có thể “convert giá trị
analog bất kì sang tín hiệu dạng digital”, tất nhiên là chỉ trong một khoảng nhất định.
Bộ thứ hai trong flash ADC là encoder, là mạch logic tổ hợp chuyển đổi các ngõ
ra của các bộ so sánh TIQ thành mã nhị phân. Ngõ ra của các TIQ kết hợp lại với
nhau sẻ tạo thành một mã gọi là “thermometer”. Vì số lượng bit biểu diễn lớn, và mã
thermometer cũng khó trong xử lý nên ta cần encoder để chuyển đổi sang mã nhị
phân thông thường. Ngõ ra encoder tùy thuộc mã thermometer ngõ vào,
Analog input Ngõ ra TIQ Ngõ ra encoder
(thermometer code)
0.3 => 0.35 0000000 000
0.35 => 0.4 0000001 001
0.4 => 0.45 0000011 010
0.45 => 0.5 0000111 011
0.5 => 0.55 0001111 100
0.55 => 0.6 0011111 101
0.6 => 0.65 0111111 110
0.65 => 0.7 1111111 111

3. Yêu cầu thiết kế:


Analog input: các bạn tự chọn min và max của ngõ vào cho bộ ADC của mình (yêu
cầu là max – min >= 0.3V)
Ngõ ra ADC: tối thiểu 3 bit
Trình bày quy trình thiết kế các TIQ comparator (chọn size NMOS:PMOS như thế
nào, đo đạc trip point, …)
Trình bày bộ encoder.
Mô phỏng hoạt động top của ADC (cho ngõ vào là sóng sine, sóng dạng tam giác (tìm
hiểu nguồn vpwl trong analog lib))
II. Mạch LDO
1. Sơ đồ nguyên lý và nguyên lý hoạt động:
“As the name suggest, LDOs are linear regulators which require much less
voltage difference between its input and output to properly regulate the input
voltage. In figure 2.4 we can see a classic topology of an LDO regulator. It
consist of pass element, an error amplifier and a resistor feedback network. The
feedback network comprises of resistive voltage divider, which delivers scaled
output voltage which is equal to the reference voltage when the output is at its
nominal voltage. The error amplifier is constantly comparing the reference
voltage and the voltage being feed from the voltage divider. This difference is
amplified and the output of the error amplifier drives the pass element to keep the
output voltage level at desired value.”
LDO đóng vai trò như một mạch nguồn hay mạch ổn áp, cung cấp nguồn áp cho
một hệ thống. Đầu vào của nó là một điện áp (thường là một điện áp nguồn-VIN),
một điện áp tham khảo (VREF), ngõ ra là một điện áp với giá trị xác định
(VOUT). Tuy thuộc vào sự chênh lệch giữa điện áp nguồn và điện áp ngõ ra, ta se
có “low drop out” hay không.

Công dụng của LDO là tạo một điện áp với giá trị xác định và ổn định bất chấp sự
thay đổi của điện áp nguồn, nhiệt độ, nhiễu,… chịu được dòng tải thay đổi trong
một khoảng giá trị nhất định.
Thành phần cơ bản một LDO gồm một “Error ampilifier – EA”, đóng vai trò như
một bộ so sánh, một opamp phát hiện “Error” giữa điện áp ngõ ra và điện áp tham
khảo, từ đó tạo ra tín hiệu để điều chỉnh. Tín hiệu đó được đưa vào một “power
transistor” để lái điện áp ngõ ra về giá trị mong muốn. Đây là mạch sử dụng
opamp, các bạn cần quan tâm đến điểm hoạt động DC của các con MOS trong
mạch (đảm bảo chúng ở vùng saturation), quan tâm đến phân tích AC (gain, pha),
và các thông số khác tùy yêu cầu của thiết kế.
2. Yêu cầu thiết kế:
Thông số thiết kế
LDO: VIN(VDD) = 1.2
VOUT = 0.8
VREF = 0.6
CLOAD = ?
Yêu cầu đo đạc
DC: operation point (OP) của MOS (vgs, vth, vds, vdsat, vgs - vth, vds -
vdsat,…), VOUT.
AC: phase, gain. (tìm hiểu về CLOAD, chọn CLOAD sao cho phase margin > 45
độ)
III. Mạch tạo dòng
1. Sơ đồ nguyên lý và nguyên lý hoạt động:
Về sơ đồ nguyên lý, mạch tạo current tương tự như mạch LDO, điểm khác biệt là
mạch đóng vai trò cung cấp dòng (current). Sử dụng một “Error Amplifier” để so
sánh và điều chỉnh, giữ cho điện áp ở điểm FB (xem trên sơ đồ tham khảo bên dưới)
ổn định.
Dòng gốc lúc này sẻ được tính theo công thức VFB/R (VFB ~ VOUT ở LDO). Sau
đó dùng “current mirror” để copy dòng này và cung cấp cho các mạch khác.
2. Yêu cầu thiết kế
VIN(VDD) = 1.2
IFB = VFB/R (các bạn tùy chọn trong khoảng 50u – 200u)
Output current: tạo 3 nhánh “current mirror” với tỉ lệ so với nhánh gốc lần lược là
1:1, 1:2, 1:4
VREF = 0.8
CLOAD = ?
Thông số đo đạc:
DC: OP, IFB (nhánh gốc) và IOUT (các nhánh ngõ ra)
AC: phase gain. Chọn tụ CLOAD sao cho phase margin > 60 độ.
PHỤ LỤC
HƯỚNG DẪN SETUP VÀ SỬ DỤNG ADEXL
IV. Set up DC test bench cho inverter
Xây dựng test bench cho một inverter như hình bên dưới

Vào tab “Launch”, chọn ADE XL => chọn “Create New View”

Cửa sổ ADE XL xuất hiện như bên dưới:


Vào “Tests”, “Click to add test”

Cửa sổ Test Editor xuất hiện như bên dưới. Bạn vào Variables => Copy from Cellview
Vào tab “Analyses” or biểu tượng “AC DC” để chọn phân tích

Vào tab “Outputs” => To Be Saved” => Select On Schematic. Click chọn các tín
hiệu qua trọng cần “save” lại.

Sau các bước trên, ta được kết quả như sau:


Nhấn X để thoát “Test Editor” (tự động lưu)
Ở mục corners chọn “Click to add corner”. Cửa sổ “Corners Setup” xuất hiện như
sau:

Tại Temperature, nhập vào 25C. Tại Design Variables, “Click to add”, chọn biến
VDD và set giá trị 1V.
Tại Test/Custom Models, “Click to add”, dẫn vào thư mục chứa các model MOS.
Chọn tất cả và nhấn “Open”

Nhấn >> để thêm corner, ta được kết quả như sau, chọn save

Ở đây, tên corner được đặt là TTNN. Trong đó TT là đại diện cho NMOS và
PMOS. T ở đây là Typical, ngoài ra ta còn có Fast/Slow với chữ viết tắt là F/S. Thông
thường ta sẻ có 5 đại diện phổ biến là TT, FF, SS, FS, SF cho tổ hợp NMOS+PMOS.
N thứ nhất là điện áp “voltage”, N là “nominal”, ngoài ra ta còn có “High (H)”
and “Low(L)”. N thứ hai là nhiệt độ, N là “nominal”, ngoài ra ta còn có “High (H)” and
“Low(L)”.
Ngoài corner kể trên, các bạn hảy tạo thêm 4 corners nửa là TTHH, TTHL, TTLH
và TTLL ứng với “High voltage” là 1.1V, “Low voltage” là 0.9V, “High temp” là 135 và
“Low temp” là -40
Vào Run và chọn “Netlists and Run”, chọn VIN và VOUT, nhấp chuột phải chọn
Plot, ta có kêt quả như sau:
V. Setup test bench transient
Chọn copy cell ở cửa sổ Library Manager. Lưu ý chọn vào “Update Instances” và
chọn “Of New Copies Only””

Ta chọn copy cell nhằm mục đích lưu giữ các set up ở ADEXL, k cần phải setup lại.
Vào schematic và điều chỉnh nguồn cho VIN như sau. Chọn nguồn vpulse để mô
phỏng dạng xung clock. Đặt các biến như sau để dể dàng điểu chỉnh tần số của tín hiệu.
Chọn Launch => ADEXL, nhưng lần này chọn “Open existing cellviews”

Nhấp đúp vào “play_tb_inverter…” trong “Tests”. Thực hiện các thay đổi như
copy lại biến từ schematic, thay đổi analysis thành “Transient”. “Stop time” nên chọn tùy
thuộc vào tần số tín hiệu các bạn định mô phỏng. Ví dụ tần số các bạn chọn mô phỏng là
100M, khi đó chu ky là 1/100M=10ns, ta sẻ chọn sau “Stop time” sau cho mạch có thể
mô phỏng đc từ 10 chu kỳ trở lên, ví dụ ở đây là 100ns.
Trf là thời gian rise/fall của tín hiệu, nên chọn ~10% đến 30% một chu kỳ.
Sau các bước trên ta đc thay đổi như bên dưới:
Mô phỏng và “plot” ta được kết quả như sau:

You might also like