cadence virtuoso tutorial 1

35
Analog IC Design Đại Học Bách Khoa TPHCM Lecturer: Cadence Virtuoso Khoa Điện - Điện Tử Ts. Hoàng Trang Tutorial Bộ Môn Điện Tử ------------------------------------------------------------------------------------------------------------------------------------------------ 1 HƯỚ ƯỚ ƯỚ ƯỚNG NG NG NG DẪN SỬ DỤNG NG NG NG CADENCE CADENCE CADENCE CADENCE VIRTUOSO VIRTUOSO VIRTUOSO VIRTUOSO Tài liệu được chia làm hai phần chính: Ph Ph Ph Phần I: I: I: I: Hướng dẫn cách vẽ schematic và mô phỏng bằng Cadence Schematic Composer. Ph Ph Ph Phần II: II: II: II: Hướng dẫn các thực hiện layout. Ph Ph Ph Phần III: III: III: III: Thực hiện một số bài LAB cơ bản. Các công cụ cần thiết dành cho phần hướng dẫn này bao gồm: ( Hướng dẫn trong tài liệu đi kèm) - Thực hiện cài đặt máy ảo Virtual Box - Xuất phần mềm Cadence 6.1.0 trên Ubuntu để sử dụng - Thực hiện cài đặt các CDK của NCSU, cụ thể là NCSU CDK version1.6.0 beta bao gồm các thư viện cụ thể sau: NCSU CDK AMI 1.6u ABN NCSU CDK AMI 0.60u C5N NCSU CDK HP 0.60u AMOS14TB NCSU CDK TSMC 0.40u NCSU CDK TSMC 0.30u NCSU CDK TSMC 0.24u NCSU CDK TSMC 0.20u NCSU CDK TSMC 0.18u - Bên cạnh đó còn có một Free PDK là PDK 45nm của NCSU.

Upload: nucleur13

Post on 29-Dec-2015

340 views

Category:

Documents


27 download

DESCRIPTION

For RFIC student working with CADENCE.

TRANSCRIPT

Page 1: Cadence Virtuoso Tutorial 1

Analog IC Design Đại Học Bách Khoa TPHCM Lecturer:Cadence Virtuoso Khoa Điện - Điện Tử Ts. Hoàng Trang

Tutorial Bộ Môn Điện Tử------------------------------------------------------------------------------------------------------------------------------------------------

1

HHHHƯỚƯỚƯỚƯỚNGNGNGNGDDDDẪẪẪẪNNNN SSSSỬỬỬỬDDDDỤỤỤỤNGNGNGNG CADENCECADENCECADENCECADENCEVIRTUOSOVIRTUOSOVIRTUOSOVIRTUOSO

Tài liệu được chia làm hai phần chính:

PhPhPhPhầầầầnnnn I:I:I:I: Hướng dẫn cách vẽ schematic và mô phỏng bằng Cadence Schematic Composer.

PhPhPhPhầầầầnnnn II:II:II:II: Hướng dẫn các thực hiện layout.

PhPhPhPhầầầầnnnn III:III:III:III: Thực hiện một số bài LAB cơ bản.

Các công cụ cần thiết dành cho phần hướng dẫn này bao gồm: ( Hướng dẫn trong tài liệuđi kèm)

- Thực hiện cài đặt máy ảo Virtual Box

- Xuất phần mềm Cadence 6.1.0 trên Ubuntu để sử dụng

- Thực hiện cài đặt các CDK của NCSU, cụ thể là NCSU CDK version1.6.0 beta baogồm các thư viện cụ thể sau:

� NCSU CDKAMI 1.6u ABN� NCSU CDKAMI 0.60u C5N� NCSU CDK HP 0.60u AMOS14TB� NCSU CDK TSMC 0.40u� NCSU CDK TSMC 0.30u� NCSU CDK TSMC 0.24u� NCSU CDK TSMC 0.20u� NCSU CDK TSMC 0.18u

- Bên cạnh đó còn có một Free PDK là PDK 45nm của NCSU.

Page 2: Cadence Virtuoso Tutorial 1

Analog IC Design Đại Học Bách Khoa TPHCM Lecturer:Cadence Virtuoso Khoa Điện - Điện Tử Ts. Hoàng Trang

Tutorial Bộ Môn Điện Tử------------------------------------------------------------------------------------------------------------------------------------------------

2

PHPHPHPHẦẦẦẦNNNN IIII

THITHITHITHIẾẾẾẾTTTTKKKKẾẾẾẾ NGUYNGUYNGUYNGUYÊÊÊÊNNNN LLLLÝÝÝÝVVVVÀÀÀÀMMMMÔÔÔÔ PHPHPHPHỎỎỎỎNGNGNGNGCADENCECADENCECADENCECADENCE SCHEMATICSCHEMATICSCHEMATICSCHEMATIC COMPOSERCOMPOSERCOMPOSERCOMPOSER vvvvàààà SPECTRESPECTRESPECTRESPECTRE

BBBBướướướướcccc 0:0:0:0: Khởi tạo

Chú ý: Các trình tự trong bước này có thể chỉ cần làm 1 lần duy nhất cho tất cả các filesau này.

Thực hiện khởi động, tạo một thư mục riêng chứa các file của project

Khởi động trình Termial của Linux gõ lệnh

"mkdir lab"

Vào root\ncsu-cdk-1.6.0.beta\cdssetuproot\ncsu-cdk-1.6.0.beta\cdssetuproot\ncsu-cdk-1.6.0.beta\cdssetuproot\ncsu-cdk-1.6.0.beta\cdssetup chép toàn bộ các file trong thư mục này vào thưmục Lab.

Thay đổi tên các file theo thứ tự cdsinit,cdsinit,cdsinit,cdsinit, simrc,simrc,simrc,simrc, cdsenvcdsenvcdsenvcdsenv bằng .cdsinit,cdsinit,cdsinit,cdsinit, .simrc,.simrc,.simrc,.simrc, .cdsenv.cdsenv.cdsenv.cdsenv

Sau đó vào cds.lib add dòng define thư viện dưới đây vào để có thể sử dụng full các thưviện:

DEFINEDEFINEDEFINEDEFINE analogLibanalogLibanalogLibanalogLib /cadence6/ic610/tools.lnx86/dfII/etc/cdslib/artist/analogLib/cadence6/ic610/tools.lnx86/dfII/etc/cdslib/artist/analogLib/cadence6/ic610/tools.lnx86/dfII/etc/cdslib/artist/analogLib/cadence6/ic610/tools.lnx86/dfII/etc/cdslib/artist/analogLibDEFINEDEFINEDEFINEDEFINE functionalfunctionalfunctionalfunctional /cadence6/ic610/tools.lnx86/dfII/etc/cdslib/artist/functional/cadence6/ic610/tools.lnx86/dfII/etc/cdslib/artist/functional/cadence6/ic610/tools.lnx86/dfII/etc/cdslib/artist/functional/cadence6/ic610/tools.lnx86/dfII/etc/cdslib/artist/functionalDEFINEDEFINEDEFINEDEFINE sbaLibsbaLibsbaLibsbaLib /cadence6/ic610/tools.lnx86/dfII/etc/cdslib/artist/sbaLib/cadence6/ic610/tools.lnx86/dfII/etc/cdslib/artist/sbaLib/cadence6/ic610/tools.lnx86/dfII/etc/cdslib/artist/sbaLib/cadence6/ic610/tools.lnx86/dfII/etc/cdslib/artist/sbaLibDEFINEDEFINEDEFINEDEFINE US_8thsUS_8thsUS_8thsUS_8ths /cadence6/ic610/tools.lnx86/dfII/etc/cdslib/sheets/US_8ths/cadence6/ic610/tools.lnx86/dfII/etc/cdslib/sheets/US_8ths/cadence6/ic610/tools.lnx86/dfII/etc/cdslib/sheets/US_8ths/cadence6/ic610/tools.lnx86/dfII/etc/cdslib/sheets/US_8ths

Sau đó vào .cdsinitcdsinitcdsinitcdsinit thêm dòng lệnh sau vào cuối trang:

envSetVal("asimenv.startup"envSetVal("asimenv.startup"envSetVal("asimenv.startup"envSetVal("asimenv.startup" "simulator""simulator""simulator""simulator" 'string'string'string'string "spectre")"spectre")"spectre")"spectre")

Bây giờ quay lại trình Terminal gõ như sau:

"cd Lab""virtuoso &"

Dấu & thể hiện trình làm việc background và ta có thể tiếp tục sử dụng Terminal làmnhững việc khác.

Page 3: Cadence Virtuoso Tutorial 1

Analog IC Design Đại Học Bách Khoa TPHCM Lecturer:Cadence Virtuoso Khoa Điện - Điện Tử Ts. Hoàng Trang

Tutorial Bộ Môn Điện Tử------------------------------------------------------------------------------------------------------------------------------------------------

3

BBBBướướướướcccc 1:1:1:1: Thực hiện tạo THƯ VIỆN

Cửa sổ hiện ra như sau:

Trong cửa sổ Library Manager vào File > New > Library...Nhập tên thư viện muốn tạo Lab0

Page 4: Cadence Virtuoso Tutorial 1

Analog IC Design Đại Học Bách Khoa TPHCM Lecturer:Cadence Virtuoso Khoa Điện - Điện Tử Ts. Hoàng Trang

Tutorial Bộ Môn Điện Tử------------------------------------------------------------------------------------------------------------------------------------------------

4

Chọn Attach to existing tech library và chọn thư viện cần sử dụng: Ví dụ chọn TSMC0.24u ứng với Proccess TSMC 0.3d. Và click OK

Lúc này trong cửa sổ Library của Library Manager hiện ra Lab0 như sau:

Page 5: Cadence Virtuoso Tutorial 1

Analog IC Design Đại Học Bách Khoa TPHCM Lecturer:Cadence Virtuoso Khoa Điện - Điện Tử Ts. Hoàng Trang

Tutorial Bộ Môn Điện Tử------------------------------------------------------------------------------------------------------------------------------------------------

5

BBBBướướướướcccc 2:2:2:2: Thực hiện tạo CELL

Chọn Lab0 vào File > New > Cell View. Thực hiện nhập tện CELL vào vị trí Cell và chọncác kết quả như sau: Sau đó chọn Ok

Màn hình của Virtuoso Schematic hiện ra như sau:

Page 6: Cadence Virtuoso Tutorial 1

Analog IC Design Đại Học Bách Khoa TPHCM Lecturer:Cadence Virtuoso Khoa Điện - Điện Tử Ts. Hoàng Trang

Tutorial Bộ Môn Điện Tử------------------------------------------------------------------------------------------------------------------------------------------------

6

BBBBướướướướcccc 3:3:3:3: Thiết kế mạch nguyên lý:

Bấm phím "i" hoặc chọn ứng dụng instance trên thanh công cụ cửa sở components hiệnra:

Chọn vào vị trí library và chọn NCSU_Analog_Part trong cửa sổ hiện ra một list các thưviện component bao gồm:

Current_Source Nguồn dòng lý tưởngDiodes Các diode trong thực hiện mạchH_spice_Only Bao gồm các phần tử của H_spiceMicrowave_Parts Bao gồm các linh kiện MicrowaveN_transistor Các phần từ CMOS NP_transistor Các phần tử CMOS P

Parasitic_Devices Các phần tử ký sinh như: cuộn cảm, tụđiện, điện trở và cả diode leakage

R_L_C Các phần tử điện trở, tụ điện và cuộn dây

Spectre_only Các phần tử dùng trong mô phỏng spectrebao gồm Ports, Switches, S/Z Domain

Supply_Nets Chứa các nét chính VDD, VSS, GND...Voltage_Source Nguồn áp lý tưởng

Ta sẽ thực hiện vẽ một mạch cổng inverter để khảo sát các tính chất của mạch này.

Page 7: Cadence Virtuoso Tutorial 1

Analog IC Design Đại Học Bách Khoa TPHCM Lecturer:Cadence Virtuoso Khoa Điện - Điện Tử Ts. Hoàng Trang

Tutorial Bộ Môn Điện Tử------------------------------------------------------------------------------------------------------------------------------------------------

7

Chọn P_Transistors > pmos4 cửa sổ Add Instance hiện ra ta sẽ thay đổi các thông số bêntrong cửa sổ này.

Thực hiện thay đổi system thành user và thay đổi tsmc25dP thành tsmc25PKhi thay đổi W và L các thông số khác của CMOS cũng sẽ tự tính toán và thay đổi phùhợp. Ta thực hiện tương tự cho cả NMOS.

Page 8: Cadence Virtuoso Tutorial 1

Analog IC Design Đại Học Bách Khoa TPHCM Lecturer:Cadence Virtuoso Khoa Điện - Điện Tử Ts. Hoàng Trang

Tutorial Bộ Môn Điện Tử------------------------------------------------------------------------------------------------------------------------------------------------

8

Chọn tạo GND trong thư viện Supply_net

Để thực hiện vẽ WIRE chọn phím "w" sau đó thực hiện vẽ. Quả nối ta được mạch:

Page 9: Cadence Virtuoso Tutorial 1

Analog IC Design Đại Học Bách Khoa TPHCM Lecturer:Cadence Virtuoso Khoa Điện - Điện Tử Ts. Hoàng Trang

Tutorial Bộ Môn Điện Tử------------------------------------------------------------------------------------------------------------------------------------------------

9

Thực hiện xây dựng các pin cho đầu vào, đầu ra, VDD và GND như sau:

Trong đó để tiện cho việc thiết kế symbol sau này ta xác lập:VDD ------- inputIN ---------- inputOUT-------- output

GND---------input/output

Chú ý: Ta bắt buộc phải tạo các PIN thì mới có thể mô phỏng được các kết quả dướidạng áp khi xây dựng testbench cho mạch.

Page 10: Cadence Virtuoso Tutorial 1

Analog IC Design Đại Học Bách Khoa TPHCM Lecturer:Cadence Virtuoso Khoa Điện - Điện Tử Ts. Hoàng Trang

Tutorial Bộ Môn Điện Tử------------------------------------------------------------------------------------------------------------------------------------------------

10

BBBBướướướướcccc 4:4:4:4: Xây dựng testbench mô phỏng:

Nhấn phím "i" hay vào lại Add Instance chọn các giá trị VDD = 2.5V nguồn Vin = 0Sau này ta sẽ thay đổi biến Vin để tìm mô phỏng đáp ứng DC. So sánh sự thay đổi củangõ vào so với ngõ ra.

Trong cửa sổ component chọn Voltage_Sources > Vdc và add chúng vào môi trườngschematic

Thực hiện copy các net GND bằng cách chọn vào Net GND và nhấn phím "c"

Sau khi thực hiện xong ta có testbench như sau:

Thực hiện nhấn vào nút Check & Save hoặc nút F8 nếu màn hình chính hiện ra như sau:

Như vậy, ta đã có thể mô phỏng. Vì làm việc trong môi trường Virtuoso yêu cầu độ chínhxác cao nên bắt buộc khi duyệt phải là no errors

Page 11: Cadence Virtuoso Tutorial 1

Analog IC Design Đại Học Bách Khoa TPHCM Lecturer:Cadence Virtuoso Khoa Điện - Điện Tử Ts. Hoàng Trang

Tutorial Bộ Môn Điện Tử------------------------------------------------------------------------------------------------------------------------------------------------

11

BBBBướướướướcccc 5:5:5:5:Mô phỏng:

Sau khi check&save ta vào Launch > ADE L để thực hiện mô phỏng bằng Spectre. Mànhình Spectre có dạng như sau:

Ta thấy rằng bên trong tools này có rất nhiều công cụ. Bước đầu tiên ta sẽ thực hiện Addfile Technology cho mỗi Process. Process sử dụng trong bài hướng dẫn này là tsmc 0.24utương tứng với nó là file tech tsmc25n và tsmc25p.

Thực hiện vào Setup > Model Libraries ...

Page 12: Cadence Virtuoso Tutorial 1

Analog IC Design Đại Học Bách Khoa TPHCM Lecturer:Cadence Virtuoso Khoa Điện - Điện Tử Ts. Hoàng Trang

Tutorial Bộ Môn Điện Tử------------------------------------------------------------------------------------------------------------------------------------------------

12

Click vào dòng <Click here to add model file> và dẫn đường link của thư việc model nhưsau:

Root/ncsu-cdk-1.6.0.beta/models/spectre/standaloneRoot/ncsu-cdk-1.6.0.beta/models/spectre/standaloneRoot/ncsu-cdk-1.6.0.beta/models/spectre/standaloneRoot/ncsu-cdk-1.6.0.beta/models/spectre/standalone thực hiện chọn 2 file

tsmc25N.mtsmc25N.mtsmc25N.mtsmc25N.m vvvvàààà tsmc25P.mtsmc25P.mtsmc25P.mtsmc25P.m

Ở trong thư mục Models này có tồn tại khá nhiều thư việc Technology, đồng thời ta cũngcó thể add thêm các thư việc bằng các tự soạn thảo theo mẫu có sẵn hoặc sử dụng trangwww.mosis.com để download các file dưới dạng text .txt và sau đó biên soạn lại thànhdạng file .m dùng công cụ gedit của linux.

Khi đó ta có như sau:

Page 13: Cadence Virtuoso Tutorial 1

Analog IC Design Đại Học Bách Khoa TPHCM Lecturer:Cadence Virtuoso Khoa Điện - Điện Tử Ts. Hoàng Trang

Tutorial Bộ Môn Điện Tử------------------------------------------------------------------------------------------------------------------------------------------------

13

Nếu vì một lý do nào đó ta muốn quan sát các file này để biết được những thông số dùngtrong tính toán thì ta chọn vào nút edit ta sẽ có kết quả của file technology như sau:

Sau đó click OK để quay trở lại màn hình làm việc chính của SPECTRE.

Tiếp theo ta chọn Session > Save State để lưu lại các trạng thái đã mô phỏng trong mộtthư mục riêng nhằm sau này thu thập dữ liệu.

Cửa sổ của thư mục hiện ra, ta thực hiện chọn Cellview, ta có thể đặt tên cho trạng tháimo phỏng trong ô trống state ví dụ: "DC_state_1"

Sau đó chọn nút Ok trước khi chuyển sang tác vụ khác. Cũng từ lúc này trong màn hìnhLibrary Manager sẽ xuất hiện 1 file mang tên DC_state_1 trong cửa sổ View.

Trong mục What to Save có rất nhiều mục cho chúng ta lựa chọn các tác vụ lưu lại dữliệu trong quá trình mô phỏng.

Thông thường đối với sinh viên chúng ta thì các tác vụ Analyses, Variable, Outputs ,Model Setup, Simulation Files, Conditions Setup và Results Display Setup là tương đốiđầy đủ dữ liệu lưu lại.

Tuy nhiên, ta vẫn có thể chọn hết bằng cách chọn sellect all nếu muốn đầy đủ.

Page 14: Cadence Virtuoso Tutorial 1

Analog IC Design Đại Học Bách Khoa TPHCM Lecturer:Cadence Virtuoso Khoa Điện - Điện Tử Ts. Hoàng Trang

Tutorial Bộ Môn Điện Tử------------------------------------------------------------------------------------------------------------------------------------------------

14

Sau khi đã thực hiện xong ta thực hiện Vào Analyses > Choose ...

Màn hình Choosing Analyses hiện ra, cũng tương tự như bên các trình Spice cũng có cácchức năng phân tích Transient, DC, AC, Noise ngoài ra Cadence còn hỗ trợ rất nhiềuchức năng khác. Trong bài hướng dẫn này, ta thực hiện mô phỏng đáp ứng DC nên tachọn dc vì mô phỏng thông số nên chọn Component Parameter

Page 15: Cadence Virtuoso Tutorial 1

Analog IC Design Đại Học Bách Khoa TPHCM Lecturer:Cadence Virtuoso Khoa Điện - Điện Tử Ts. Hoàng Trang

Tutorial Bộ Môn Điện Tử------------------------------------------------------------------------------------------------------------------------------------------------

15

Tiếp theo ta chọn Select Component tức là ta sẽ chọn trực tiếp trên schematic giá trịcomponent này. Ta chọn Vin. Bảng chọn thông số hiện ra ta thực hiện chọn dc vì ra đangmô phỏng đáp ứng dc.Sau đó chọn OkĐồng thời Chọn các giá trị bắt đầu và kết thúc cho phần tử này để mô phỏng.

Page 16: Cadence Virtuoso Tutorial 1

Analog IC Design Đại Học Bách Khoa TPHCM Lecturer:Cadence Virtuoso Khoa Điện - Điện Tử Ts. Hoàng Trang

Tutorial Bộ Môn Điện Tử------------------------------------------------------------------------------------------------------------------------------------------------

16

Vì mục tiêu của chúng ta là mô phỏng tín hiệu đầu ra theo sự thay đổi của ngõ vào, cụ thểở đây là bộ inverter nên ta đặt tín hiệu dạng Ramp vào đầu vào của tín hiệu. Sau đó, thựchiện mô phỏng và quan sát đáp ứng ngõ ra của bộ inverter này.

Page 17: Cadence Virtuoso Tutorial 1

Analog IC Design Đại Học Bách Khoa TPHCM Lecturer:Cadence Virtuoso Khoa Điện - Điện Tử Ts. Hoàng Trang

Tutorial Bộ Môn Điện Tử------------------------------------------------------------------------------------------------------------------------------------------------

17

Chọn Ok bảng Virtuoso Analyses xuất hiện dạng phân tích như sau:

Tiếp theo ta xác lập đầu ra của tín hiệu:

Chọn Outputs > To Be Plotted > Select On Schematic

Sau đó chọn ngõ ra và ngõ vào như sau

Sau khi chọn xong ta sẽ có được vị trí cần mô phỏng thể hiện ngay trên schematic

Page 18: Cadence Virtuoso Tutorial 1

Analog IC Design Đại Học Bách Khoa TPHCM Lecturer:Cadence Virtuoso Khoa Điện - Điện Tử Ts. Hoàng Trang

Tutorial Bộ Môn Điện Tử------------------------------------------------------------------------------------------------------------------------------------------------

18

Đồng thời trong màn hình phân tích của spectre cũng hiển thị như sau:

Ta chọn vào nút Tick Save để lưu lại kết quả đồng thời chọn nút run để chạy mô phỏng.

Page 19: Cadence Virtuoso Tutorial 1

Analog IC Design Đại Học Bách Khoa TPHCM Lecturer:Cadence Virtuoso Khoa Điện - Điện Tử Ts. Hoàng Trang

Tutorial Bộ Môn Điện Tử------------------------------------------------------------------------------------------------------------------------------------------------

19

File thông báo kết quả mô phỏng xuất hiện như sau:

Kết quả mô phỏng cho như hình dưới đây

Page 20: Cadence Virtuoso Tutorial 1

Analog IC Design Đại Học Bách Khoa TPHCM Lecturer:Cadence Virtuoso Khoa Điện - Điện Tử Ts. Hoàng Trang

Tutorial Bộ Môn Điện Tử------------------------------------------------------------------------------------------------------------------------------------------------

20

Thể hiện sự thay đổi của ngõ ra so với ngõ vào.

Bây giờ ta muốn xem dòng chạy qua các CMOSP tức Ids ta thực hiện chọn dòng ngay tạichân của CMOS ta có kết quả như sau:

Page 21: Cadence Virtuoso Tutorial 1

Analog IC Design Đại Học Bách Khoa TPHCM Lecturer:Cadence Virtuoso Khoa Điện - Điện Tử Ts. Hoàng Trang

Tutorial Bộ Môn Điện Tử------------------------------------------------------------------------------------------------------------------------------------------------

21

Thực hiện mô phỏng ta có kết quả như sau:

Bên trong Cadence còn có một công cụ rất mạnh nữa, giả sử ta muốn xác định đạo hàmcủa dòng điện trên và muốn xem xét sự thay đổi của nó theo Vdc ( Ở đây chỉ dừng lại ởviệc sử dụng tools chứ không hề liên quan đến tính đúng đắn của lý thuyết) ta thực hiệnnhư sau:

Trong cửa sổ đồ thị mô phỏng chọn Tools > Calculator ...

Page 22: Cadence Virtuoso Tutorial 1

Analog IC Design Đại Học Bách Khoa TPHCM Lecturer:Cadence Virtuoso Khoa Điện - Điện Tử Ts. Hoàng Trang

Tutorial Bộ Môn Điện Tử------------------------------------------------------------------------------------------------------------------------------------------------

22

Ta thực hiện chọn tap dc và idc.Sau đó quay lại cửa sổ schematic và click chuột vào vị trí của dòng ids mà ta đã chọn lúcban đầu. Kết quả hiện ra như sau:

Bên trong máy tính này có rất nhiều các công cụ để thực hiện tính toán. Mục đích của talà thực hiện tính đạo hàm nên ta chọn hàm deriv

Sau đó chọn nút Plot ta có kết quả

Page 23: Cadence Virtuoso Tutorial 1

Analog IC Design Đại Học Bách Khoa TPHCM Lecturer:Cadence Virtuoso Khoa Điện - Điện Tử Ts. Hoàng Trang

Tutorial Bộ Môn Điện Tử------------------------------------------------------------------------------------------------------------------------------------------------

23

Trên hình vẽ đường màu đỏ thể hiện đạo hàm của dòng ids mà ta đã chọn ban đầu.Với công cụ máy tính này ta có thể tính toán và mô phỏng rất tiện lợi đặc biệt là các môhình CMOS như vẽ đặc tuyến. Vẽ trở kháng đặc tính. Hỗ dẫn .....

Bây giờ ta muốn quan sát các kết quả Model của các transistor làm việc ta thực hiện chọnnhư sau:

Trong cửa sổ mô phỏng spectre ta chọn Analyses > Choose ...Chọn dấu tích vào Save DC Operating Point

Page 24: Cadence Virtuoso Tutorial 1

Analog IC Design Đại Học Bách Khoa TPHCM Lecturer:Cadence Virtuoso Khoa Điện - Điện Tử Ts. Hoàng Trang

Tutorial Bộ Môn Điện Tử------------------------------------------------------------------------------------------------------------------------------------------------

24

Chọn Run và chạy mô phỏng

Sau đó trong trình Spectre ta vào:Results > Print > DC Operating Points Sau đó chọn Vào mộ link kiện bất kì, giả sử là

CMOSN ta có kết quả như sau:

Ta có thể thấy được các thông số vận hành của CMOSN trong mạch này. Bên cạnh đónếu ta chọn vào các linh kiện khác ta cũng sẽ có được những thông số tương ứng.

Page 25: Cadence Virtuoso Tutorial 1

Analog IC Design Đại Học Bách Khoa TPHCM Lecturer:Cadence Virtuoso Khoa Điện - Điện Tử Ts. Hoàng Trang

Tutorial Bộ Môn Điện Tử------------------------------------------------------------------------------------------------------------------------------------------------

25

Results > Print> Model Parameter Sau đó chọn Vào mộ link kiện bất kì, giả sử làCMOSN ta có các thông số trong mô hình Trasistor ban đầu đểđểđểđể sosososo ssssáááánhnhnhnh vvvvớớớớiiii kkkkếếếếtttt ququququảảảảtrtrtrtrướướướướcccc.

Bây giờ ta muốn xem sự thay đổi của đám ứng tín hiệu khi ta thay đổi một thông số nàođó bên trong schematic. Ta giả sử ta gọi thông số đó là X. Trong Cadence sẽ coi đó là mộtbiến mô phỏng để ta thực hiện cho biến đó thay đổi khiến đáp ứng mô hình của chúng tathay đổi theo.

Trong bài thí nghiệm này ta có thể giả sử biến W thay đổi ta đặt như sau

WCMOSP = W1

WCMOSN =W2

Quay lại Schematic ta chọn vào các linh kiện CMOSN và CMOSP nhấn phím Q để thayđổi thông số.

Ta thay đổi như sau:

Page 26: Cadence Virtuoso Tutorial 1

Analog IC Design Đại Học Bách Khoa TPHCM Lecturer:Cadence Virtuoso Khoa Điện - Điện Tử Ts. Hoàng Trang

Tutorial Bộ Môn Điện Tử------------------------------------------------------------------------------------------------------------------------------------------------

26

Chọn Check & Save để có thể thực hiện mô phỏng thành công.

Quay lại trình SPECTRE ta thực hiện như sau:

Vào Variables > Edit

Thực hiện nhập tên các biến và gán giá trị ban đầu cho chúng giả sử:

W1 = 2u ; Click AddW2 = 0.5u ; Click Add Ta có kết quả như sau:

Lúc này trong cửa sổ Spectre sẽ xuất hiện hai giá trị biến trên trong mục Design Variables

Page 27: Cadence Virtuoso Tutorial 1

Analog IC Design Đại Học Bách Khoa TPHCM Lecturer:Cadence Virtuoso Khoa Điện - Điện Tử Ts. Hoàng Trang

Tutorial Bộ Môn Điện Tử------------------------------------------------------------------------------------------------------------------------------------------------

27

Ta thực hiện mô phỏng đáp ứng DC bằng các quay lại vào Analyses và thiết lập lại cácthông số kết quả cho như sau:

Bây giờ ta sẽ thực hiện phân tích theo biến đã cho:

Vào Tools > Parametric Analyses

Thực hiện nhập tên biến là các giá trị biến mà ta đã đặt ban đầu, theo đó, ta có thể xácđịnh được giá trị biến chạy như thế nào:

Page 28: Cadence Virtuoso Tutorial 1

Analog IC Design Đại Học Bách Khoa TPHCM Lecturer:Cadence Virtuoso Khoa Điện - Điện Tử Ts. Hoàng Trang

Tutorial Bộ Môn Điện Tử------------------------------------------------------------------------------------------------------------------------------------------------

28

Chọn select vào một hay cả hai ta thực hiện vào Analysis > Start - Selected

Ta có kết quả mô phỏng như sau:

Page 29: Cadence Virtuoso Tutorial 1

Analog IC Design Đại Học Bách Khoa TPHCM Lecturer:Cadence Virtuoso Khoa Điện - Điện Tử Ts. Hoàng Trang

Tutorial Bộ Môn Điện Tử------------------------------------------------------------------------------------------------------------------------------------------------

29

Thực hiện Mô Phỏ Transient Thực hiện đặt tín hiệu đầu vào dạng xung ta có:

Page 30: Cadence Virtuoso Tutorial 1

Analog IC Design Đại Học Bách Khoa TPHCM Lecturer:Cadence Virtuoso Khoa Điện - Điện Tử Ts. Hoàng Trang

Tutorial Bộ Môn Điện Tử------------------------------------------------------------------------------------------------------------------------------------------------

30

Ta có kết quả như sau:

Ta sẽ thấy được hoạt động theo thời gian thực tế của bộ Inverter.

Page 31: Cadence Virtuoso Tutorial 1

Analog IC Design Đại Học Bách Khoa TPHCM Lecturer:Cadence Virtuoso Khoa Điện - Điện Tử Ts. Hoàng Trang

Tutorial Bộ Môn Điện Tử------------------------------------------------------------------------------------------------------------------------------------------------

31

BBBBướướướướcccc 6:6:6:6:Vẽ Symbol

Sau khi đã mô phỏng xong, ta thực hiện bỏ đi các testbench mô phỏng để từ đó vẽ tiếpsymbol.

Trong cửa sổ Schematic ta vào Create > Cellview > From Cellview ...

Chọn View Name là Symbol sau đó click OK

Kiểm tra lại các chân ra và vào xem đã đúng chưa sau đó click OK. Việc xác định Inputhay Output rất quan trọng bởi vì chúng quyết định đến các pad gán vào trong quá trìnhthực hiện layout sau này.

Page 32: Cadence Virtuoso Tutorial 1

Analog IC Design Đại Học Bách Khoa TPHCM Lecturer:Cadence Virtuoso Khoa Điện - Điện Tử Ts. Hoàng Trang

Tutorial Bộ Môn Điện Tử------------------------------------------------------------------------------------------------------------------------------------------------

32

Màn hình Virtuoso Symbol Hiện ra như sau:

Ta thực hiện vẽ lại như sau dựa vào các công cụ vẽ hình cơ bản.

Chỉnh sửa lại tên:

Page 33: Cadence Virtuoso Tutorial 1

Analog IC Design Đại Học Bách Khoa TPHCM Lecturer:Cadence Virtuoso Khoa Điện - Điện Tử Ts. Hoàng Trang

Tutorial Bộ Môn Điện Tử------------------------------------------------------------------------------------------------------------------------------------------------

33

Kết quả cho như sau:

Chọn Check & Save

Bây giờ ta tắt các cửa sổ đi và tạo 1 cellview mới: Đặt tên là Lab0_test

Ta vào trong schematic và chọn Instance như sau:

Page 34: Cadence Virtuoso Tutorial 1

Analog IC Design Đại Học Bách Khoa TPHCM Lecturer:Cadence Virtuoso Khoa Điện - Điện Tử Ts. Hoàng Trang

Tutorial Bộ Môn Điện Tử------------------------------------------------------------------------------------------------------------------------------------------------

34

Ta có Symbol của chúng ta vừa tạo và xây dựng testbench cho mạch như sau:

Page 35: Cadence Virtuoso Tutorial 1

Analog IC Design Đại Học Bách Khoa TPHCM Lecturer:Cadence Virtuoso Khoa Điện - Điện Tử Ts. Hoàng Trang

Tutorial Bộ Môn Điện Tử------------------------------------------------------------------------------------------------------------------------------------------------

35

Thực hiện mô phỏng và kiểm tra ta có kết quả như sau:

Chọn Run và chạy mô phỏng ta có kết quả.