Professional Documents
Culture Documents
• Các bạn tùy chọn NMOS device trong thư viện (VTG, 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
(sweep) trong quá trình khảo sát.
1.1. Khảo sát đặc tuyến ID/VDS
• Cố định các giá trị 𝐿 = 50𝑛𝑚, 𝑊 = 90𝑛𝑚, vgs = 1𝑉, vsb = 0V, biến vds sweep từ
0𝑉 đến 1.5V để khảo sát đặc tuyến sự thay đổi của ID theo VDS.
1
Thí nghiệm Thiết kế vi mạch tương tự và hỗn hợp
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.
2. Đặc tuyến ID/VDS với sự thay đổi của VGS, chiều rộng và chiều dài của kênh dẫn
▪ Với nội dung khảo sát này, các bạn nên đặt biến W, L cho NMOS để dễ dàng trong
việc thực hiện quét biến.
▪ Tìm hiểu về quét biến song song: Trong cửa sổ ADE-L, chọn Tools > Parametric
Analysis
2.1. Đặc tuyến ID/VDS dưới sự thay đổi của VGS
• Cố định các giá trị khảo sát 𝐿 = 50𝑛𝑚, 𝑊 = 90𝑛𝑚, biến vgs sweep từ 0.4𝑉 đến
1.2𝑉 với step = 0.2V và vds sweep từ 0V đến 1.5V
2
Thí nghiệm Thiết kế vi mạch tương tự và hỗn hợp
2.2. Đặc tuyến ID/VDS dưới sự thay đổi của chiều dài kênh dẫn
• Cố định các giá trị khảo sát 𝑊 = 90𝑛𝑚, vgs = 0.8V, 𝐿 sweep từ 50nm đến 250nm
với step = 50nm và biến vds sweep từ 0V đến 1.5V.
2.3. Đặc tuyến ID/VDS dưới sự thay đổi của chiều rộng kênh dẫn
• Cố định các giá trị khảo sát 𝐿 = 50𝑛𝑚, vgs = 0.8𝑉, 𝑊 sweep từ 90nm đến 450𝑛𝑚
với step = 90nm và biến vds sweep từ 0𝑉 đến 1.5V
3
Thí nghiệm Thiết kế vi mạch tương tự và hỗn hợp
4
Thí nghiệm Thiết kế vi mạch tương tự và hỗn hợp
• Dựa vào lý thuyết đã học, hãy chọn điểm phân cực DC cho mạch để có độ khuếch
đại tốt nhất ứng với mỗi giá trị RD.
1.2. Khảo sát AC
• Từ phân tích DC, ta cấp điện áp phân cực đã chọn, đưa tín hiệu ac có biên độ 1V.
• Tiến hành đo đáp ứng tần số từ 1Hz đến 10GHz.
• Xác định các giá trị độ lợi, độ dữ trự pha, băng thông của mạch. Nhận xét.
1.3. Khảo sát transient
• Thay thế nguồn vdc bằng vsin với điện áp DC (offset) bằng điện áp DC đã chọn,
tần số là 1MHz và amplitude là 10mV.
5
Thí nghiệm Thiết kế vi mạch tương tự và hỗn hợp
• Từ dạng sóng ngõ ra tính toán độ lợi của mạch và nhận xét.
2. Tải diode connected
6
Thí nghiệm Thiết kế vi mạch tương tự và hỗn hợp
• Xác định các giá trị độ lợi, độ dữ trự pha, băng thông của mạch. Nhận xét.
2.3. Khảo sát transient
• Thay thế nguồn vdc bằng vsin với điện áp DC (offset) bằng điện áp DC đã chọn,
tần số là 1MHz và amplitude là 10mV.
• Từ dạng sóng ngõ ra tính toán độ lợi của mạch và nhận xét.
7
Thí nghiệm Thiết kế vi mạch tương tự và hỗn hợp
8
Thí nghiệm Thiết kế vi mạch tương tự và hỗn hợp
9
Thí nghiệm Thiết kế vi mạch tương tự và hỗn hợp
Câu hỏi: Tại sao lại phải bảo đảm tính cân bằng của inverter? Để cân bằng tại sao không
chọn kích thước của PMOS và NMOS giống nhau nhau?
• Các bạn setup testbench như sau để khảo sát DC của một inverter
• Setup corner TTNN với giá trị vdd = 1V, temp = 25, C = 10fF, quét biến vin từ 0V
đến 1V. Sau đó, 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 hai đường đặc tuyến IN và OUT, giá trị
điện áp vtrip-point = vdd/2 có nghĩa là mạch inverter đã cân bằng.
• Nhiệm vụ của các bạn là tìm kích thước của NMOS và PMOS sao cho giá trị
điện áp trip-point gần bằng vdd/2 nhất có thể.
• Tìm ra hàm đo trên ADE-XL để đo đạc trip-point một cách tự động, không được
đo đạc bằng con trỏ trên waveform (Xem phần sử dụng Calculator để viết được
hàm đo – phần phụ lục)
10
Thí nghiệm Thiết kế vi mạch tương tự và hỗn hợp
• Ta có kết quả tương tự như bảng dưới đây. Hãy nhận xét giá trị điện áp trip-point
của inverter với sự thay đổi của điện áp và nhiệt độ.
11
Thí nghiệm Thiết kế vi mạch tương tự và hỗn hợp
• Để 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 F [Hz] các bạn sử dụng. Các bạn hãy lựa chọn các giá trị
thích hợp để tiến hành mô phỏng.
• Với dạng sóng IN, OUT thu được từ kết quả mô phỏng, ta tiến hành đo 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
ADE-XL.
• Gợi ý một số hàm đo đạc. Sử dụng Tools > Calculator để cấu hình một số thông
số cho các hàm đo đạc.
12
Thí nghiệm Thiết kế vi mạch tương tự và hỗn hợp
13
Thí nghiệm Thiết kế vi mạch tương tự và hỗn hợp
• Với dòng điện input là 50uA, hãy đo dòng qua nhánh mirror, xem giá trị dòng đó
có đúng giá trị cần “mirror” hay không? Nhận xét và giải thích đặc tuyến thu
được.
14
Thí nghiệm Thiết kế vi mạch tương tự và hỗn hợp
• Thay đổi tỉ lệ mirror của current bằng cách sweep biến k từ 1 đến 5. Quan sát các
dòng ngõ ra, dòng này có đúng tỉ lệ mirror hay không?
• Các bạn thực hiện xây dựng testbench cho mạch như hình vẽ trên, bài thí nghiệm
này sẽ khảo sát một mạch khuếch đại vi sai (differential opamp) với tải dioded-
connected.
• Dưới đây là bảng thông số yêu cầu khi thiết kế mạch opamp
Giá trị
Process 45nm
VDD 1.2V
15
Thí nghiệm Thiết kế vi mạch tương tự và hỗn hợp
VSS 0V
Reference current (IREF) 50uA
Copied bias current (ISS) 100uA±3%
Capacitor load 20fF
Gain > 1.5*
Input common mode voltage 0.8V
Ouput common mode voltage 0.6V
• Điện áp VDD cấp cho mạch giá trị 1.2V, điện áp phân cực cho hai thiết bị vi sai
(differential devices) là 0.8V (𝑣𝑖𝑛𝑐𝑚 = 0.8𝑉 ), nguồn dòng phân cực cho mạch là
50uA (𝐼𝑅𝐸𝐹 = 50𝑢𝐴)
• Để thực hiện được bài thí nghiệm này, các bạn cũng cần thiết kế theo quy trình khảo
sát DC, khảo sát AC và khảo sát transient như bài thí nghiệm số 2.
• Để thực hiện tốt bài thí nghiệm các bạn cần nắm rõ lý thuyết về mạch khuếch đại,
cách sử dụng ADE-XL và viết các hàm đo sử dụng Calculator.
2.1. Khảo sát DC
• Khảo sát DC yêu cầu các bạn phải chỉnh các kích thước của NMOS và PMOS thỏa
mãn các điều kiện sau:
▪ Tất cả các NMOS và PMOS đều được phân cực trong miền bão hòa.
▪ Tỉ lệ dòng sao chép của mạch current mirror có độ chính xác nhỏ hơn 3%,
nghĩa là dòng ISS phải nằm trong khoảng (97uA, 103uA) với dòng chuẩn
IREF được giữ cố định 50uA.
▪ Điện áp DC ngõ ra (output common mode voltage) được phân cực xấp xỉ
0.6V
• Các bạn sử dụng ADE-XL và sử dụng các lệnh đo (dùng Calculator) để đo các
điện áp phân cực của mạch (DCOP) dựa trên một số ví dụ về lệnh đo dưới đây
16
Thí nghiệm Thiết kế vi mạch tương tự và hỗn hợp
• Hình trên là ví dụ về cách viết để đo đạc các điểm phân cực của mạch (DC
Operating Point của NMOS M1A_NDIO) và đo dòng điện, điện áp khi phân tích
DC. Các bạn viết các hàm đo tương tự cho các device NMOS/PMOS (đổi lại tên
của device mà các bạn muốn khảo sát) và các node còn lại.
• Thông thường, để một con NMOS hoạt động ở chế độ bão hòa cần thỏa mãn hai
điều kiện sau 𝒗𝒐𝒅 = 𝒗𝒈𝒔 − 𝒗𝒕𝒉 > 𝟎 và 𝒗𝒔𝒂𝒕 = 𝒗𝒅𝒔 − 𝒗𝒐𝒅 > 𝟎. Tuy nhiên để
đảm bảo cho các NMOS/PMOS được bão hòa sâu, thông thường sẽ cố gắng phân
cực sao cho 𝒗𝒐𝒅 ≥ 𝟑𝟎𝒎𝑽 (optional) và 𝒗𝒔𝒂𝒕 ≥ 𝟑𝟎𝒎𝑽 (optional). Tương tự,
các bạn tự đề xuất biểu thức và xác định 𝑣𝑜𝑑, 𝑣𝑠𝑎𝑡 cho PMOS.
17
Thí nghiệm Thiết kế vi mạch tương tự và hỗn hợp
• Các bạn cần kiểm tra lại tất cả các giá trị điện áp trên mỗi node, dòng điện trên các
nhánh và vùng phân cực của MOS đã hoạt động đúng như mong muốn chưa.
• Kết quả trên là một ví dụ về kết quả sau khi thay đổi W, L của các NMOS/PMOS
để phân cực đúng cho các device hoạt động trong miền bão hòa.
2.2. Khảo sát AC
• Thực hiện testbench như hình vẽ, để khảo sát ac ta thực hiện cấp hai tín hiệu vi sai
vào VINN/VINP với biên độ 500mV và lệch pha 180deg.
• Thực hiện đo độ lợi (gain), độ dự trữ pha (phase margin) và băng thông 3dB của
mạch (viết các hàm đo phù hợp)
𝑉𝑂𝑈𝑇𝑃 − 𝑉𝑂𝑈𝑇𝑁
|𝐻 (𝜔 )| =
𝑉𝐼𝑁𝑃 − 𝑉𝐼𝑁𝑁
• Tiến hành đo đáp ứng tần số từ 1Hz đến 10GHz. Nếu độ lợi không đạt 1.5, các bạn
phải dựa vào công thức sau đó thay đổi kích thước các NMOS/PMOS thích hợp để
tăng độ lợi. Tuy nhiên, chúng ta phải thực hiện lại khảo sát DC để đảm bảo hoạt
động của mạch đúng khi thay đổi kích thước MOS (để tăng độ lợi). Thực hiện liên
tục cho đến khi thỏa mãn yêu cầu về phân tích DC và phân tích AC.
18
Thí nghiệm Thiết kế vi mạch tương tự và hỗn hợp
PHỤ LỤC
HƯỚNG DẪN SET UP VÀ SỬ DỤNG ADEXL
1. Set up DC test bench cho inverter
• Xây dựng test bench cho một inverter như hình bên dưới
19
Thí nghiệm Thiết kế vi mạch tương tự và hỗn hợp
• Cửa sổ Test Editor xuất hiện như bên dưới. Bạn vào Variables → Chọn “Copy
from Cellview”
• Vào tab “Analyses” hoặc biểu tượng “AC DC Trans” để chọn phân tích
20
Thí nghiệm Thiết kế vi mạch tương tự và hỗn hợp
• Vào tab Outputs → To Be Saved → Select On Schematic. Click chọn các tín hiệu
quan trọng cần “Save” lại.
21
Thí nghiệm Thiết kế vi mạch tương tự và hỗn hợp
22
Thí nghiệm Thiết kế vi mạch tương tự và hỗn hợp
• Tại Temperature, nhập vào 25 (ứng với 25oC). 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 và PMOS.
23
Thí nghiệm Thiết kế vi mạch tương tự và hỗn hợp
• Để quét được biến song song trong việc thay đổi Width, Length của NMOS /
PMOS như sau (tương tự Tools > Parametric Analysis ở ADE-L):
▪ Để khảo sát các biến trong một list các giá trị, ví dụ thay đổi giá trị L với
các giá trị 50nm, 100nm, 150nm, 200nm, 250nm, 300nm ta thực hiện như
sau:
24
Thí nghiệm Thiết kế vi mạch tương tự và hỗn hợp
▪ Để khảo sát biến trong một khoảng với bước nhảy (step) cho trước, ta thực
hiện khai báo start : step : stop. Ví dụ thay đổi L với các giá trị từ 50nm
đến 300nm, bước nhảy 50nm như sau:
25
Thí nghiệm Thiết kế vi mạch tương tự và hỗn hợp
• Ta chọn copy cell nhằm mục đích lưu giữ các setup ở ADE-XL, không 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”
26
Thí nghiệm Thiết kế vi mạch tương tự và hỗn hợp
• 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 kỳ là 1/100M=10ns, ta sẽ chọn 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:
27
Thí nghiệm Thiết kế vi mạch tương tự và hỗn hợp
28
Thí nghiệm Thiết kế vi mạch tương tự và hỗn hợp
• Mục đích của việc sử dụng Calculator là để đo các giá trị một cách tự động,
không cần sử dụng cursor trên waveform để đo và tính toán. Ví dụ như hình bên dưới
là sóng khảo sát mạch inverter:
• Ví dụ ta muốn đo risetime của sóng ngõ ra từ 10% đến 90% biên độ tín hiệu, ta có
thể sử dụng cursor để đo đạc như hình vẽ bên dưới. Tuy nhiên sẽ rất khó để trỏ
đúng vị trí 100mV và 900mV trên đồ thị và việc này cũng sẽ rất mất thời gian.
Thay vào đó, trong Calculator có hàm riseTime, ta có thể dùng hàm này để đo
risetime của sóng v(/OUT) này
• Để dùng Calculator, các bạn nhấm đúp chuột vào riseTime trong cửa sổ
▪ Ở ô Signal các bạn nhập VT(“/OUT”) nghĩa là dạng sóng tín hiệu OUT
(hoặc “VOUT” giống phần 2 tùy các bạn label trên schematic) khi phân
tích transient. VT nghĩa là voltage ở khảo sát transient, VDC là voltage ở
khảo sát DC, VF nghĩa là voltage khảo sát AC. Tương tự đối với dòng điện
sẽ có IT, IDC, IF.
29
Thí nghiệm Thiết kế vi mạch tương tự và hỗn hợp
▪ Initial value là điện áp mức thấp (ở khảo sát này là 0V), Final value là điện
áp mức cao (ở khảo sát này là 1V).
▪ Percent Low và Percent High là phần trăm điện áp để đo risetime (ở ví dụ
này là từ 10% đến 90%).
▪ Sau đo các bạn nhấn Apply sẽ thu được kết quả riseTime(VT("/OUT") 0 nil 1
nil 10 90 nil "time" ). Các bạn có thể nhấn chạy trực tiếp hoặc copy hàm đo
này và add vào output để xem kết quả mỗi khi chạy.
• Để thêm hàm đo vào output, các bạn quay lại Tab Outputs Setup > Nhấn chuột
phải, chọn Add Expression, sau đó copy hàm vừa tạo ở Calculator được vào
30
Thí nghiệm Thiết kế vi mạch tương tự và hỗn hợp
• Sau khi nhấn chạy lại thì các bạn sẽ thu được kết quả như sau
▪ Như vậy kết quả risetime hàm đo trả được là 1.668us, chính xác hơn giá trị 1.68us
ta tính bằng cursor khi không trỏ đúng giá trị điện áp.
• Một lưu ý khác khi khảo sát với các corner khác thì giá trị vdd bị thay đổi (từ 1.0V
thành 0.9V hoặc 1.1V) thì ta phải define giá trị mức cao thay vì 1.0V thì ta phải sử
dụng biến vdd lồng vào hàm như sau: riseTime(VT("/OUT") 0 nil VAR("vdd") nil 10
90 nil "time")
• Vậy chúng ta đã đi qua một ví dụ đơn giản về cách sử dụng Calculator để đo
risetime của một dạng sóng. Ngoài ra còn rất nhiều hàm khác như fallTime,
DutyCycle, freq, cross, flip, dB20, dB10, average, delay, abs, real, imag, value,
xmax, xmin, ymax, ymin…* Các bạn xem ý nghĩa và cách sử dụng các hàm đo
này. Các phép toán +-*/ đơn giản trên hai giá trị vừa mới tìm được cũng có thể
thực hiện bằng hàm đo.
• Ngoài ra, còn một phần nữa là viết các hàm đo để xác định điện áp phân cực của
các MOS device của mạch khi phân tích DC (DC Operating Point) sẽ được trình
bày ở bài Thí nghiệm số 4.
* Các bạn đọc thêm về giải thích hoạt động các hàm trong Calculator tại đây
31