Tải bản đầy đủ (.doc) (24 trang)

HƯỚNG DẪN THIẾT KẾ MẠCH SỐ TRÊN CADENCE BIG PROJECT

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.76 MB, 24 trang )

BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP.HCM
KHOA ĐIỆN – ĐIỆN TỬ
BỘ MÔN ĐIỆN TỬ VIỄN THÔNG

BÁO CÁO
THỰC TẬP HDL
ĐỀ TÀI
MẠCH DỒN KÊNH 4 SANG 1
TỪ GIẢI MÃ 2 SANG 4
GVHD: HUỲNH HOÀNG HÀ
SVTH: TRẦN NAM HẢI
MSSV: 11119116
TP.HỒ CHÍ MINH, 12 – 12– 2014
PHẦN 1: THIẾT KẾ CÁC KHỐI SYMACHETIC
TRÊN CADENCE
A. THIẾT KẾ CÁC CỖNG LOGIC
1. THIẾT KẾ CỖNG AND
- Khởi động Red Hat Enterprise Linux bằng máy ảo
- Log in vào user : root Pass: root.
- Sau khi vào thì giao diện màn hình như trên. Click chuột phải, chọn New
Terminal
- Nhập dòng lệnh cd cadence/tools.lnx86/dfII/bin/ ( mặc định trong quá trình cài
đặt Cadence, chương trình để ở thư mục Root’s home )
- Tiếp đến nhập ./icfb & để khởi động chương trình
- Hoặc có thể truy cập theo đường dẫn cd cadence/tools.lnx86/dfII/bin/ , sau đó tìm
đến file icfb.exe để khởi động Cadence
- Giao diện chương trình lúc vừa khởi động
- Tắt tất cả các bảng báo lỗi và chỉ để lại cửa sổ icfb để dễ dàng thao tác :
- Để bắt đầu, chọn File > New > Library Manager
- Ở mục Name, ta nhập tên thư viện mới muốn tạo theo đề bài sẽ là NOT. Tiếp


đến chọn OK
- Xuất hiện cửa sổ Technology File for New Library như hình dưới
- Chọn Don’t need a techfile
- Click chuột trái vào thư viện vừa tạo, tiếp tục chọn File -> New -> Cell
View…
- Xuất hiện cửa sổ Create New File
• Library Name: chọn tên thư viện đã tạo trước đó.
• Cell Name, minh sẽ nhập là NOT
• Tool: chọn Composer-Schematic.
• Nhấn OK.
Màn hình làm việc của chúng ta đây:
- Nếu phía trên thanh trạng thái, không phải tên Virtuoso Schematic Editing
… thì có nghĩa các bạn chọn sai ở mục tool, phải làm lại nhé
- Tiến hành lấy linh kiện nào, có thể chọn Add ở thanh công cụ hoặc bấm
phím I từ bàn phím
- Xuất hiện cửa sổ Add Instance
- Click vào Browse, chọn thư viện ISL_LIB, ở mục Cell, tìm đến dòng nfet,
có thể tìm nhanh ở khung trống ngay phía dưới, ở mục View,chọn symbol
- Kế tiếp ta kéo thả 1 con vào màn hình đen, tương tự cho pfet
Sau khi lấy 2 con NMOS và PMOS ta được kết quả như sau:
- Tiếp theo, tiến hành lấy nguồn xung, nguồn áp và GND ở thư viện
analogLib
+ Nguồn Xung
Library: analogLib > Cell: Vpluse > View: sysmbol
+ Nguồn áp
Library: analogLib > Cell: Vdc > View: sysmbol
+ GND: Library: analogLib > Cell: gnd > View: sysmbol
- Lấy Pin ngõ ra, có 3 cách chọn:
 Vào Add → Pin.
 Nhấp vào hình ngõ ra đầu nhọn màu xám tại thanh công cụ nằm bên trái

chương trình.
 Ấn phím “P” trên bàn phím.
- Tiến hành nhập tên tại Pin Names → Chọn output tại Direction → Đặt Pin vào
thiết kế
+Nếu gặp lỗi Invalid net expression thì ở mục Attach Net Expression chọn No
-Chọn thông số cho các linh kiện, có 3 cách:
+Ấn chuột giữa chọn Properties.
+Chọn Edit → Properties → Objects.
+Ấn phím “Q” trên bàn phím.
-Chỉnh thông số cho Vpulse :
- Chỉnh thông số cho Vdc :
Chỉnh thông số cho nfet
Chỉnh thông số cho pfet:
-Sau khi chỉnh các thông số thì ta tiến hành nối dây :
Chọn Add → Wire.
Ấn Phím “W” trên bàn phím.
Sau khi nối dây xong, Check and Save mạch lại bằng cách ấn vào kí hiệu dấu 
nằm trên cùng thanh công cụ phía bên trái.
Lưu ý: nếu không có lỗi sẽ không xuất hiện thông báo, nếu lỗi sẽ hiện thông báo và
sửa lại theo hướng dẫn.
-Tiếp theo, ta tiến hành mô phỏng dạng sóng ngõ ra.
Vào Tools → Analog Environment
Lưu ý: quá trình này tốn thời gian chờ tùy theo cấu hình máy.
Cửa sổ Virtuoso Analog Design Environment
- Chọn Session → Options…, tại Wareform Tool chọn AWD → Nhấp OK
- Chọn Models Library cho mạch : Setup > Model Libraries, Click vào
Browse để dẫn tới thư mục /root/ISL_model, chọn 45nm.scs > Add > OK
- Phân tích mạch nhất thời trong khoảng thời gian xác định:
 Chọn Analyses → Choose
 Trong ô Stop time là 8n → Accuracy Defaults chọn moderate → Enabled →

OK
-Chạy thử và kiểm tra lỗi: chọn Simulation → Netlist and Run.
Nếu có lỗi thì >> tìm lỗi và fix, không có lỗi thì xem dạng sóng
- Để xem dạng sóng, ta thực hiện:
 Chọn Results → Direct Plot → Transient Signal
 Sau đó, sẽ trờ về màn hình mạch thiết kế → Nhấp chuột trái vào đường dây
ngõ vào và ngõ ra.
 Nhấn phím “ESC” trên bàn phím chúng ta sẽ có bảng dạng sóng ngõ vào
(xanh lá cây) và ra (xanh da trời)
 Để tách các dạng sóng ra cho dễ quan sát, ấn vào hình có dạng chuyển đổi
trên thanh công cụ bên trái (Switch Axis Mode)
Nhận xét: Kết quả mô phỏng đúng với các thông số cài đặt cho linh kiện ban đầu
và kiến thức đã học.
2. THIẾT KẾ CỖNG NOT
- Sychematic của cỗng NOT
- Thiết kế khối của cỗng NOT
4. THIẾT KẾ CỖNG OR 4 NGÕ VÀO
5. THIẾT KẾ MẠCH GIẢI MÃ 2 SANG 4
B. MẠCH SAU KHI THIẾT KẾ HOÀN THIỆN
1. SƠ ĐỒ THIẾT KẾ THEO LÝ THUYẾT
2. THIẾT KẾ HOÀN THIỆN TRÊN CADENCE
Dạng sóng ngõ ra của mạch
C. KHỐI KIỂM TRA BẰNG NGÔN NGỮ VERILOG
1. CODE
module kiemtra(a,b,i0,i1,i2,2i3,i4,out,mass);
Input a,b,i0,i1,i2,i3,i4,mass;
output out;
electrical a,b,i0,i1,i2,i3,i4,mass;
real t;
parameter real period = 5n;

analog begin
t0=V(i0,mass);
t1=V(i1,mass);
t2=V(i2,mass);
t3=V(i3,mass);
t4=V(i4,mass);
t5=V(a,mass);
t6=V(b,mass);
@(timer(4n,period))
begin
if(t5<0.5)&&(t6<0.5)&&(t0<0.5)&&(t4<0.5) t=1;
else if(t5<0.5)&&(t6<0.5)&&(t0>0.5)&&( t4>0.5) t=1;
else if(t5<0.5)&&(t6>0.5)&&(t1<0.5)&&( t4<0.5) t=1;
else if(t5<0.5)&&(t6>0.5)&&(t1>0.5)&&( t4>0.5) t=1;
else if(t5>0.5)&&(t6<0.5)&&(t2<0.5)&&( t4<0.5) t=1;
else if(t5>0.5)&&(t6<0.5)&&(t2>0.5)&&( t4>0.5) t=1;
else if(t5>0.5)&&(t6>0.5)&&(t3<0.5)&&( t4<0.5) t=1;
else if(t5>0.5)&&(t6>0.5)&&(t3>0.5)&&( t4>0.5) t=1;
else t=0;
end
V(out,mass)<+t;
end
endmodule
2. SƠ ĐỒ KẾT NỐI KIỂM TRA
KẾT QUẢ DẠNG SÓNG KIỂM TRA

×