kT/C: câu trả lời mặc định cho 'vì sao cap sampling to' — và vì sao nó thường sai
kT/C là thứ ai cũng nhắc khi bị hỏi vì sao Cs lớn. Bài này tính ngược ra con số thật: ở 10-bit, kT/C chỉ đòi 16 fF. Vậy 5 pF ở con SAR ADC hai bài trước từ đâu ra — và thứ gì mới thực sự ồn trong đó?
Không spam. Chỉ bài kỹ thuật AMS đáng đọc — gửi qua email khi có bài mới.
Trong một buổi review, ai đó chỉ vào con sampling cap 5 pF và hỏi “sao để to thế?”. Chín trên mười lần, câu trả lời bật ra ngay không cần nghĩ: “kT/C noise”. Cả phòng gật gù, qua slide tiếp theo.
Câu đó tiện ở chỗ nó có sẵn công thức — nói xong là khỏi phải tính. Nhưng để ý mà xem, gần như chẳng ai ngồi ra con số thật. Người ta viện kT/C, chứ ít khi tính nó. Và mỗi lần mình chịu khó bấm máy, kT/C hoá ra hiếm khi là thứ đang ép cái cap to lên.
Mình nói chắc vậy vì mình từng dính đúng cái bẫy đó — ngay trên blog này. Bài op-amp khai thẳng pF “cứng”, chẳng dẫn từ đâu. Bài kickback thì mình gán luôn 5 pF đó cho kT/C, rồi lấy nó chống cả một kết luận. Hai bài, một con số, mà chưa bài nào mở máy tính ra.
Giờ thì bấm máy lên: ở 10-bit, kT/C chỉ đòi cỡ 16 fF — nhỏ hơn 5 pF hơn ba trăm lần. Vậy 5 pF thật ra từ đâu chui ra, và thứ gì mới đang thực sự ồn trong con ADC đó?
Mục lục
- kT/C từ đâu ra — và vì sao R biến mất
- Hai quy tắc phải nhớ: noise bandwidth và cách cộng noise
- Tính ngược: 10-bit thì kT/C đòi bao nhiêu?
- Vậy 5 pF từ đâu ra?
- kT/C bắt đầu cắn từ bit thứ mấy
- Thủ phạm thật: con buffer của chính bạn
- Corner: nhiệt độ đẩy kT/C đi đâu
- Bài học
1. kT/C từ đâu ra — và vì sao R biến mất
Mạch sample cơ bản chỉ có hai thứ: một switch (điện trở khi đóng) và một tụ .
Điện trở nào cũng phát thermal noise, mật độ phổ:
Noise này đi qua đúng cái RC lowpass mà tín hiệu đi qua, băng thông . Tích phân toàn dải, đổi biến :
Cái tích phân arctan đó ra đúng . Nên đại lượng vừa xuất hiện — — chính là noise bandwidth : băng thông của một filter brick-wall lý tưởng cho ra cùng lượng noise với cái RC thật. (Mục 2 nói kỹ hơn, vì đây là chỗ rất hay bị làm sai.)
Giờ thay vào và nhìn chuyện gì xảy ra:
triệt tiêu. Đây là điểm phản trực giác đắt nhất của cả chủ đề.
(Để ý vế trái là — đơn vị V². Nên = joule/farad cũng ra V², khớp thứ nguyên. Muốn con số rms thì căn lên: .)
Thấy nó khử nhau
Nói “chúng khử nhau” thì dễ, nhìn thấy mới tin. Giữ nguyên pF, đổi mỗi ba bậc độ lớn:
| Mật độ | rms mật độ | ||
|---|---|---|---|
| 50 Ω | 0.91 nV/√Hz | 1000 MHz | 28.8 µV |
| 500 Ω | 2.88 nV/√Hz | 100 MHz | 28.8 µV |
| 5 kΩ | 9.10 nV/√Hz | 10 MHz | 28.8 µV |
Switch to gấp 10 lần thì mật độ noise tụt lần, nhưng băng thông phình đúng 10 lần — nhân lại ra y hệt. Ba thiết kế khác nhau hoàn toàn về switch, cùng một con noise.
Panel phải là chỗ đáng nhìn nhất: ba đường leo lên theo ba nhịp hoàn toàn khác nhau, nhưng cùng bão hoà tại 28.8 µV. Switch 5 kΩ gom gần hết noise trước 100 MHz; switch 50 Ω còn tiếp tục gom tới tận 10 GHz — và về đích ở đúng cùng một chỗ.
không ảnh hưởng tới noise được lấy mẫu. Bạn không thể chữa kT/C bằng cách vặn switch — chỉ có mới đổi được nó.
Hệ quả thực tế: khi ai đó bảo “tăng W của switch cho đỡ noise”, đó là câu sai. Tăng W giúp settling (τ nhỏ đi) và giúp linearity, không giúp noise sampling. Ngược lại nó còn làm charge injection và kickback tệ đi.
Còn cái tên “kT/C”: để ý nó không có , không có băng thông, không có gì thuộc về thiết kế của bạn ngoài một con tụ. Đó là lý do nó dễ bị viện dẫn — công thức quá gọn để phải nghi ngờ.
2. Hai quy tắc phải nhớ
Trước khi vào số, hai thứ mà bài toán noise nào cũng cần và rất hay bị làm sai. Cái thứ nhất vừa xuất hiện ở mục 1, giờ nói cho hết.
Noise bandwidth ≠ băng thông −3 dB
Vì sao rộng hơn: bộ lọc bậc một không cắt dựng đứng ở — nó thoải xuống 20 dB/dec, và cái đuôi đó vẫn lọt noise qua. Tích phân toàn bộ phần đuôi ấy cộng thêm đúng 57% công suất.
Chỗ bẫy là 57% đó là công suất, không phải điện áp. Nếu bạn tiện tay lấy thay cho , con số rms bạn ra bị thiếu lần — tức thấp hơn thực tế 20%. Đủ để một noise budget “vừa đủ pass” trên giấy hoá ra fail trên silicon.
Hệ số này chỉ lớn với bậc một. Filter càng dốc thì càng giống brick-wall: bậc hai Butterworth là 1.11, bậc ba 1.05.
Noise cộng theo công suất, không cộng theo biên độ
Hai nguồn noise không tương quan (thermal của switch và thermal của op-amp chẳng hạn):
Điều này có một hệ quả mà mình thấy nhiều người bỏ lỡ: nguồn nhỏ gần như không tính. Một nguồn bằng 1/3 nguồn kia chỉ làm tổng tăng 5%. Một nguồn bằng 1/5 chỉ làm tăng 2%.
Đừng tối ưu nguồn noise nhỏ. Nếu , bạn có bóp nó về 0 cũng gần như không thấy gì trên tổng. Tìm nguồn to nhất trước — đây chính là chỗ mà phần sau của bài sẽ dùng để lật lại chuyện kT/C.
(Còn noise tương quan — cùng một nguồn đi hai đường rồi gặp lại — thì cộng theo biên độ . Trường hợp này hiếm hơn nhưng khi gặp thì đắt: hai nguồn bằng nhau cho tổng gấp đôi thay vì gấp 1.41.)
3. Tính ngược: 10-bit thì kT/C đòi bao nhiêu?
Giờ mới là phần chính. Thay vì hỏi “kT/C ở 5 pF là bao nhiêu”, hỏi ngược: muốn kT/C không làm hỏng 10-bit thì tối thiểu bao nhiêu?
Mốc so sánh tự nhiên là quantization noise — thứ noise mà bản thân việc lượng tử hoá sinh ra, không liên quan gì đến mạch. Khi ADC làm tròn một giá trị analog về mức gần nhất, sai số rơi đâu đó trong khoảng và gần như phân bố đều. Phương sai của một phân bố đều rộng là — từ đó ra cái mà ai cũng thấy nhưng ít người nhớ nó ở đâu ra:
Con ADC này đã tự mang sẵn 507 µV noise mà không cần ai giúp. Đó là sàn — mọi noise khác chỉ có nghĩa khi so với nó. Thêm một nguồn noise nhỏ hơn 507 µV nhiều lần thì về bản chất là không thêm gì cả.
Đặt điều kiện rất rộng rãi: cho phép kT/C bằng hẳn (tức chấp nhận mất 3 dB SNR, một mức không ai chịu trong thực tế):
16 femto-farad — không phải 5 pico.
Kể cả siết chặt hơn nhiều — bắt kT/C phải nhỏ hơn ba lần (chỉ ăn 0.5 dB SNR) — thì cũng chỉ cần fF. Vẫn kém 5 pF hơn ba mươi lần.
Và đây là kT/C thật sự ở 5 pF:
| Tính theo LSB | So với | ||
|---|---|---|---|
| 100 fF | 204 µV | 0.116 LSB | 0.40× |
| 500 fF | 91 µV | 0.052 LSB | 0.18× |
| 1 pF | 64 µV | 0.037 LSB | 0.13× |
| 5 pF | 28.8 µV | 0.016 LSB | 0.057× |
| 10 pF | 20.4 µV | 0.012 LSB | 0.040× |
Ở 5 pF, kT/C là 1/17 của quantization noise. Theo đúng quy tắc “đừng tối ưu nguồn nhỏ” ở mục 2, nó đóng góp vào tổng noise đúng 0.16% — về mặt thực tế là không có mặt.
Ở 10-bit, kT/C không hề ràng buộc . Câu “chọn 5 pF vì kT/C” sai, mà sai xa: cái tụ đang to hơn 311 lần so với mức kT/C thật sự cần (5 pF so với 16.1 fF). Chẳng ai để dư gấp ba trăm lần chỉ vì một con noise — chắc chắn có thứ khác đang ép nó to lên.
4. Vậy 5 pF từ đâu ra?
Nếu không phải kT/C thì cái gì đẩy lên 5 pF? Với SAR ADC, câu trả lời nằm ở chỗ không phải một cái tụ — nó là cả cái CDAC.
SAR 10-bit dùng charge-redistribution DAC gồm mảng tụ nhị phân: cộng một tụ dummy . Tổng cộng đúng 1024 đơn vị. Cái mảng đó chính là sampling cap.
Nên không phải do bạn chọn tự do. Nó là:
và câu hỏi thật sự là nhỏ nhất bằng bao nhiêu. Hai thứ chặn dưới:
- Matching. Sai số của quyết định DNL/INL của ADC. Với tụ MIM/MOM, — tụ nhỏ thì mismatch lớn. Muốn 10-bit không có missing code, phải đủ to.
- Kích thước chế tạo tối thiểu. Dưới vài fF thì fringing và ký sinh của dây nối lấn át chính cái tụ, và giá trị thực không còn dự đoán được.
Cả hai đẩy về khoảng vài fF. Và bây giờ:
Chia ngược, 4.88 fF rơi đúng vào vùng sàn của mà matching () và kích thước chế tạo tối thiểu vừa đặt ở trên. Chuỗi nhân quả vì thế đi một chiều: spec DNL sàn = 5 pF — cả ba mắt xích đều là ràng buộc tuyến tính của DAC, không mắt nào là noise. đã bị chốt xong ngay ở bước matching, trước khi kT/C kịp lên tiếng; và vì 5 pF lớn gấp ~300 lần cái 16 fF mà kT/C đòi, yêu cầu noise được thoả một cách thụ động — như hệ quả phụ của quyết định matching, không phải nguyên nhân sinh ra .
Hình vẽ theo diện tích tỉ lệ với điện dung chứ không theo thang log — vì thang log sẽ giấu mất chính cái tỉ số đang cần thấy. Ô vuông lớn là mảng nhị phân 512C/256C/128C… lấp kín; ô xanh nhỏ xíu bên cạnh là toàn bộ những gì kT/C đòi hỏi.
Điều này siết chặt luận điểm của bài kickback. Bài đó tính LSB ở = 5 pF — dưới ngưỡng 0.5 LSB, mà ngưỡng đó ứng với pF. Con ADC pass kickback đơn giản vì 5 pF > 3.4 pF.
Điểm mấu chốt: cái biên “5 so với 3.4 pF” đó không sinh ra từ bất kỳ đại lượng nào của khâu comparator — không phải , không phải trở kháng nguồn, cũng không phải kT/C. Nó bị ghim bởi DNL của CDAC: phải đủ nhỏ để mảng tụ không mất mã (mục ngay dưới định lượng), một ràng buộc tuyến tính của DAC — trực giao với cả noise lẫn đường tín hiệu vào comparator. Nói cách khác, kickback pass nhờ một con số được định đoạt bởi bài toán matching của DAC, hoàn toàn tình cờ.
Đó là chỗ luận điểm mạnh lên: biên kickback là hệ quả phụ của một ràng buộc khác hệ. Ngày nào có người đổi coding CDAC hoặc thu nhỏ mảng tụ để tiết kiệm diện tích, tụt xuống dưới 3.4 pF — và kickback vượt ngưỡng mà không một dòng nào trong netlist comparator thay đổi, nên sim comparator không hề thấy. Bài kickback cảnh báo đúng chuyện đó; giờ nó có tên thủ phạm: matching CDAC.
Còn nếu CDAC không phải binary?
Con “5 pF = 1024 × 4.88 fF” là của riêng binary CDAC, và nó dựa vào matching nhiều hơn vẻ ngoài. DNL tệ nhất của binary rơi vào bước chuyển MSB: — với 10-bit là hệ số . Bắt của nó dưới 0.5 LSB (không mất mã, thiết kế cho yield ) thì — và chính cái đó đẩy lên 5 fF. (Bước từ 0.52% ra 5 fF chỉ là đại số: , với và mật độ tụ tra thẳng từ PDK — số đo sẵn trên silicon, không phải một lần chạy simulator. Bài mismatch cắm số cụ thể ra 5 fF. Sim chỉ vào sau, ở bước Monte Carlo xác nhận ký sinh và gradient không phá con first-cut này — mismatch là trục thống kê, không phải một PVT corner.)
Đổi sang thermometer thì mỗi bước chỉ bật thêm đúng một unit cap giống hệt — DNL mỗi bước còn , mất luôn hệ số . Matching lỏng ra 32 lần, hết bị ghim ở 5 fF và tụt xuống sàn kích thước tối thiểu (~1 fF), kéo từ 5 pF về cỡ 1 pF. ADC thật hay segmented — thermometer cho vài bit cao (giết cái DNL khổng lồ ở MSB, bảo đảm monotonic), binary cho bit thấp cho rẻ — nên nằm đâu đó giữa 1 và 5 pF.
Điểm cần giữ: đổi coding chỉ dời chỗ ràng buộc bên trong CDAC — từ matching sang kích thước tối thiểu — chứ không kéo kT/C vào cuộc. Có một sàn cứng đúng cho mọi coding: LSB phải là một tụ thật, mà full-scale LSB, nên luôn; ở 10-bit cái sàn đó (~1 pF) vẫn nằm trên mức kT/C đòi (16 fF). Câu “kT/C không phải thứ ép ” đứng vững dù bạn code kiểu gì — chỉ có ứng viên thay thế nó là đổi. (Nó cũng là bà con với split-cap ở mục 5: cả hai gỡ khỏi cái giá của binary — split-cap cắt số lượng tụ, thermometer lỏng matching — và cùng đẩy về phía sàn min-cap.)
5. kT/C bắt đầu cắn từ bit thứ mấy
Đến đây dễ kết luận nhầm rằng kT/C là chuyện vớ vẩn. Không phải — nó chỉ chưa tới lượt. Lấy đúng ở mục 3, giờ viết ra theo :
Không phải công thức mới — vẫn là con 16 fF ở mục 3, chỉ tổng quát cho mọi . Vì co theo mà đi theo , nên yêu cầu của kT/C phình theo : mỗi thêm 1 bit là nhân 4.
Còn CDAC nhị phân thì chỉ tăng theo . Hai hàm mũ khác cơ số, nên sớm muộn kT/C cũng phải vượt lên — chỉ là ở bit thứ mấy. Và câu trả lời hoá ra treo vào một chi tiết kiến trúc mà mình suýt bỏ qua.
Với mảng nhị phân thuần thì… không bao giờ tới lượt
Giải với fF được . Nghe thì có vẻ “có điểm giao”, nhưng nhìn con số kèm theo: ở đó nF.
Không ai chế tạo cái đó. Một nF sampling cap thì driver phải lái hàng nF ở tốc độ MHz, diện tích chiếm nửa chip, và acquisition time thành vô vọng. Nói cách khác: nếu cứ khăng khăng dùng mảng nhị phân thuần, CDAC sẽ luôn là thứ ràng buộc — nhưng thiết kế đã chết vì lý do khác từ lâu trước đó.
Cần kiến trúc gỡ khỏi
Đó là lý do high-res không xài mảng thuần. Các kiến trúc CDAC — thermometer/segmentation (mục 4), hay split-cap chèn tụ cầu cho nhóm LSB “trông nhỏ đi” — đều cắt liên hệ , cho phình chậm hơn nhiều (split-cap: cỡ , nên 14-bit chỉ ~1.3 pF thay vì 82 pF). Cách mỗi kiến trúc làm là bài toán của DAC; điều bài noise này cần chỉ là hệ quả — một khi thoát , cái sàn còn lại lộ ra chính là kT/C:
| kT/C đòi | Nhị phân thuần | Split-cap | Ai ràng buộc? | ||
|---|---|---|---|---|---|
| 8 | 2030 µV | 1 fF | 1.28 pF | 160 fF | CDAC (dư 160×) |
| 10 | 507 µV | 16 fF | 5.12 pF | 320 fF | CDAC (dư 20×) |
| 12 | 127 µV | 258 fF | 20.5 pF | 640 fF | CDAC (dư 2.5×) |
| 14 | 31.7 µV | 4.12 pF | 82 pF | 1.28 pF | kT/C (thiếu 3.2×) |
| 16 | 7.9 µV | 65.9 pF | 328 pF | 2.56 pF | kT/C (thiếu 26×) |
Hình trên là cả mục này gói trong một khung. Đường đỏ (kT/C) dốc gấp đôi mọi đường khác vì nó đi theo ; đường xám đứt (nhị phân thuần) luôn nằm trên nó trong suốt dải dùng được; chỉ có đường xanh (split-cap) là bị nó cắt — tại N ≈ 12.9.
Đọc cột cuối theo chiều dọc là thấy điểm lật: giữa 12 và 14 bit. Dưới đó, cái mảng tụ tự nó đã to hơn nhu cầu noise vài chục lần — kT/C được cho không. Trên đó, split-cap đã bóp mảng xuống 1.28 pF nhưng noise lại đòi 4.12 pF, nên designer buộc phải phóng lên trên mức tối thiểu chỉ để thoả kT/C. Lúc này và chỉ lúc này, câu ” chọn theo kT/C” mới là câu đúng.
kT/C là bài toán của high-resolution. Làm 10-bit mà viện dẫn kT/C để biện minh cho thì gần như chắc chắn đang lặp lại một câu học thuộc. Làm 16-bit thì nó là ràng buộc số một — và là lý do ADC độ phân giải cao ăn công suất khủng khiếp: 66 pF không chỉ là diện tích, nó là tải mà driver phải lái xong trong một chu kỳ sampling.
(Bảng lấy fF cố định cho mọi chỉ để so sánh — thực tế matching đẩy lên khi tăng, nên các con số chỉ ở mức cỡ độ lớn.)
6. Thủ phạm thật: con buffer của chính bạn
Nếu kT/C ở 5 pF chỉ có 28.8 µV, vậy noise thật sự lọt vào con ADC này đến từ đâu?
Câu trả lời hơi đau: từ chính con op-amp buffer mà mình đã thiết kế ở bài trước.
Bài đó đã tính input-referred noise ở mục 9: thermal floor 20.7 nV/√Hz, 1/f corner 1.8 MHz.
Hai chú ý trước khi thay số. Thứ nhất, đó là noise quy về đầu vào, còn thứ đi vào là noise ở đầu ra — nhưng con này nối unity-gain nên gain bằng 1, hai cái bằng nhau, dùng thẳng được. Thứ hai, noise của nó bị chặn bởi băng thông closed-loop của chính nó (GBW 10 MHz), chứ không phải bởi RC của switch ( MHz) — cái nào hẹp hơn thì cái đó quyết định. Lấy noise bandwidth theo quy tắc mục 2:
Phần thermal — nhân mật độ với căn băng thông:
Phần flicker — tích phân từ lên cho ra hàm log:
( = 1 Hz là quy ước. Vì nó nằm trong log nên rất ít nhạy: đổi lên 100 Hz thì flicker chỉ tụt từ 113 xuống 96 µV.)
Cộng lại theo quy tắc bình phương:
Giờ xếp cả ba nguồn cạnh nhau, cùng một con ADC:
| Nguồn | rms | Theo LSB | So với kT/C |
|---|---|---|---|
| Quantization | 507 µV | 0.29 LSB | 17.6× |
| Buffer op-amp | 140 µV | 0.080 LSB | 4.9× |
| kT/C @ 5 pF | 28.8 µV | 0.016 LSB | 1× |
| Tổng | 527 µV | 0.30 LSB |
Con buffer ồn gấp 4.9 lần kT/C — tức gấp 24 lần về công suất noise.
Và trong con buffer đó, flicker (113 µV) lại lớn hơn thermal (82 µV) — đúng như bài op-amp đã cảnh báo với 1/f corner 1.8 MHz. Nên thứ tự ưu tiên nếu phải cải thiện noise của con ADC này là:
- Tăng và của op-amp → cắt flicker (113 µV, nguồn to nhất sau quantization) — rẻ, chỉ tốn diện tích.
- Tăng → cắt thermal (82 µV), nhưng phải tốn thêm dòng.
- Giảm băng thông nếu spec settling cho phép → cắt cả hai, vì cả hai đều nhân với — nhưng settling thường không cho phép.
- Rồi mới tới — và nó vô ích hoàn toàn: tăng lên 20 pF thì tổng noise chỉ nhúc nhích 0.1%, đổi lại giết settling và tăng công suất driver.
Tổng cộng, SNR thực tế 61.64 dB so với 61.96 dB lý tưởng — mất 0.32 dB, ENOB 9.95 bit. Thiết kế đạt, nhưng nó đạt nhờ đúng những thứ mà không bài nào trong hai bài trước nêu tên.
Bài học ngược đời: trong một chuỗi sample-and-hold, noise của mạch đệm phía trước thường lấn át kT/C của chính khâu sampling. Nhưng kT/C mới là cái có tên gọi dễ nhớ và một công thức đẹp, nên nó được nhắc còn cái kia thì không.
7. Corner: nhiệt độ đẩy kT/C đi đâu
kT/C tỉ lệ với tuyệt đối, nên nó là một trong những đại lượng hiếm hoi trong analog gần như không trôi:
| Nhiệt độ | @ 5 pF | Trôi so với 27°C |
|---|---|---|
| −40°C | 25.4 µV | −12% |
| 27°C | 28.8 µV | — |
| 125°C | 33.2 µV | +15% |
Toàn dải công nghiệp chỉ ±15%, vì nhiệt độ vào dưới dấu căn (). So với gain của op-amp — thứ có thể tụt 2× giữa các corner — thì kT/C là hằng số.
Điều đáng chú ý hơn: kT/C không phụ thuộc process corner chút nào. Không có , không có , không có trong công thức. SS hay FF thì vẫn thế. Cái trôi theo corner là giá trị thực tế (±10–15% tuỳ dung sai tụ) và noise của buffer (qua ) — chứ không phải bản thân kT/C.
8. Bài học
không nằm trong kT/C. Làm switch to ra giúp settling và linearity, không giúp noise sampling. Chỉ mới đổi được nó — và đó là lý do kT/C là một ràng buộc đắt: cách duy nhất để chữa cũng là cách tốn nhất.
Đừng viện dẫn kT/C — hãy tính nó. Một phép chia mất ba mươi giây và cho biết ngay bạn có đang bị nó ràng buộc hay không. Ở 10-bit/1.8 V, con số đó là 16 fF; nếu của bạn đang là pico chứ không phải femto, thì thứ ép nó lớn là cái khác.
Với SAR ADC, cái ép thường là CDAC. , và bị chặn dưới bởi matching và kích thước tối thiểu. Kiểm tra nhanh: chia cho — nếu ra một con số vài fF, bạn vừa tìm thấy lý do thật.
Điểm lật nằm giữa 12 và 14 bit — nhưng chỉ khi kiến trúc cho phép. Chừng nào còn dính vào thì CDAC luôn thắng, và thiết kế chết vì diện tích trước khi kịp lo noise. Phải có một kiến trúc (split-cap, thermometer/segmentation) gỡ khỏi thì kT/C mới lộ ra làm sàn. Bài toán noise ở đây là hệ quả của một quyết định kiến trúc, không phải một ràng buộc có sẵn.
Tìm nguồn noise to nhất trước khi tối ưu bất cứ thứ gì. Ở con ADC này thứ tự là quantization (507 µV) → buffer (140 µV) → kT/C (28.8 µV). Ba tuần bỏ ra để giảm kT/C sẽ cho đúng 0% cải thiện, trong khi kéo dài của cặp M3/M4 vài trăm nano là ăn ngay vào 113 µV flicker.
Tổng kết
- Ở 10-bit/1.8 V, kT/C chỉ đòi 16 fF. Con số 5 pF ở hai bài trước đến từ CDAC (1024 × 4.88 fF), không phải từ noise.
- kT/C không phụ thuộc , không phụ thuộc process corner, và chỉ trôi ±15% toàn dải nhiệt độ.
- Thứ thật sự ồn trong chuỗi sample-and-hold này là noise của op-amp buffer (140 µV, gấp 4.9× kT/C), mà trong đó flicker lại lớn hơn thermal.
- Bài kickback giờ cũng quy đúng công: = 5 pF đến từ CDAC, không phải kT/C. Kết luận của bài đó chắc hơn, vì hoá ra còn ít liên quan tới comparator hơn nữa.
Tham khảo
-
Razavi, B., Design of Analog CMOS Integrated Circuits, 2nd ed., Chương 7 (Noise) — dẫn xuất kT/C và noise bandwidth của RC bậc một; Chương 7 cũng là chỗ trình bày cách cộng noise tương quan/không tương quan cho đúng.
-
Razavi, B., Principles of Data Conversion System Design, Chương 6 — quan hệ giữa resolution, sampling rate và noise budget của ADC; nguồn cho lập luận làm mốc so sánh.
-
Baker, R. J., CMOS Circuit Design, Layout, and Simulation, 4th ed. — phần switched-capacitor và charge-redistribution DAC: vì sao với SAR, và unit cap bị chặn dưới thế nào. Website đi kèm: cmosedu.com.
-
Bài two-stage Miller op-amp — nguồn của mọi con số op-amp dùng ở mục 6: thermal floor 20.7 nV/√Hz, 1/f corner 1.8 MHz, GBW 10 MHz.
-
Bài kickback — cùng con SAR ADC, cùng = 5 pF; hai bài cùng chốt: bị ghim bởi matching CDAC (), không phải kT/C.
-
Bài Vth mismatch & offset — cắm số cụ thể cho ràng buộc matching CDAC ( fF) mà bài này chỉ dừng ở “vài fF”; và giải thích vì sao DNL của CDAC là ràng buộc thật (không calib được như offset).