1. Trang chủ
  2. » Giáo Dục - Đào Tạo

BÀI tập lớn THIẾT kế VI MẠCH THIẾT kế bộ đếm lên và đếm XUỐNG

13 33 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 13
Dung lượng 2,12 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

TRƯỜNG ĐẠI HỌC BÁCH KHOA TPHCMKHOA ĐIỆN – ĐIỆN TỬ BÀI TẬP LỚN THIẾT KẾ VI MẠCH THIẾT KẾ BỘ ĐẾM LÊN VÀ ĐẾM XUỐNG GVHD: Trần Hoàng Quân SINH VIÊN THỰC HIỆN: Hà Huy Đức Thành phố Hồ

Trang 1

TRƯỜNG ĐẠI HỌC BÁCH KHOA TPHCM

KHOA ĐIỆN – ĐIỆN TỬ

BÀI TẬP LỚN THIẾT KẾ VI MẠCH

THIẾT KẾ BỘ ĐẾM LÊN VÀ ĐẾM XUỐNG

GVHD: Trần Hoàng Quân

SINH VIÊN THỰC HIỆN: Hà Huy Đức

Thành phố Hồ Chí Minh, năm 2022

Trang 3

I. Tổng quan lí thuyết

1.Thiết kế cấp độ Specification

- Sơ đồ thiết kế:

Hình 1: Sơ đồ thiết kế mạch counter

- Cách thức hoạt động của bộ trên:

+ Đưa cnt_in vào bộ counter ( Mình tự ghi giá trị đếm bắt đầu là 25)

+ Khi có xung clk cạnh lên, bộ đếm sẽ kiểm tra giá trị tín hiệu load,

+ Load= 1 thì cnt_in = cnt_in ( ban đầu)

Mode =1 cnt_out = cnt_in +1;

Mode =0 cnt_out = cnt_in – 1;

+ Load =0 thì cnt_in = cnt_out (trước đó)

Mode =1 cnt_out = cnt_in + 1;

Mode =0 thì cnt_out = cnt_in – 1;

- Ý tưởng thiết kế:

+ Ban đầu đọc file hướng dẫn thì chúng em có hình dung được cơ chế hoạt động của

mạch đếm lên và đếm xuống Theo bàn luận của cả nhóm thì thiết kế thành 1 khối lớn

trong đó vừa có đếm lên, đếm xuống vừa nhận tín hiệu load và lệnh mode cho khối

counter

II. Thực hiện thiết kế

1. Mạch thiết kế cấp cổng dùng Verilog

Dựa vào sơ đồ khối thiết kế trên, chúng em đã tạo bộ counter tên boxuli.v – dùng

ngôn ngữ Verilog để lập trình

Trang 4

Hình 2: Dùng verilog thiết kế module

Giải thích từng đoạn lệnh:

Hình 3: Phần lệnh khai báo

- Khai báo về counter

- Khai báo mode, c_in[15:0], load, cnt_out[15:0],clk,rst

Tạo thêm 1 biến temp để giữ giá trị

TIEU LUAN MOI download : skknchat@gmail.com

Trang 5

Hình 4: Phần lệnh thực hiện

2. Kiểm định RTL

a File testbench.v

Hình 5: File code testbench

- Ý nghĩa các lệnh code:

+ Khai báo các

- Màn hình sau khi chạy terminal của makefile

Cập nhật nhận 1 xung cạnh lên để

thực hiện câu lênh Gán giá trị cnt_in ban đầu vào temp - kiếm tra giá trị load:

+ nếu load =1 lưu cnt_in vào tạm, cnt_out=

cnt_in +1 nếu mode=1;

+ Nếu load =0:

mode =1 tăng biến tạm và lưu biến tạm vào cnt_out

Ngược lại nếu mode =0 giảm biến tạm và lưu biến tạm vào cnt_out

Trang 6

Hình 6: Màn hình terminal sau khi chạy Makefile

+ Trên màn hình terminal sau khi chạy Makefile ta thấy được: cntout tại các giá trị mình xuất,

quan sát đc ngõ ra khi mình thay đổi load Thời gian CPU thực hiện, bao gồm cả biên lịch,

elab, link và mô phỏng

- Mô phỏng DVE

Hình 7: Dạng sóng và các câu lệnh thực hiện ở DVE

- Giải thích: I từ 0 tới 100 chúng ta cho chạy câu lệnh mode=1 và load =0 thì câu lệnh

cntout = cnt out (trước đó) + 1 nhưng đến khi câu lệnh tới i=10 thì câu lệnh đổi thành

mode 1 và load =1 lúc đó cntout=cntin+1 Tới câu lệnh i= 15 thì câu lệnh đổi thành

mode =0 và load =1 lúc đó cntout = cntin -1 Tới i=20 câu lệnh là mode =0 và load =0

thì cntout = cntout( trước đó) -1

TIEU LUAN MOI download : skknchat@gmail.com

Trang 7

3. Synthesis tổng hợp

Hình 8: Nội dung file dc_command.src

- File Verilog sau khi synthesis thành công

Thêm thư viện

Các file RTL cần phân tích

và file RTL cần synthesis Thiết kế ràng buộc

Chạy synthesis và lưu các file report + RTL đã synthesis( file lab_synth.netlist.v

Trang 10

Hình 9: File verilog đã synthesis

- File report.timing

TIEU LUAN MOI download : skknchat@gmail.com

Trang 11

Hình 10: File report.timing

- Giải thích: file này kiểm tra setup time dùng Path Type (max), hold time dùng Incr

(min) để kiểm tra các giá trị Slack (MET) = data require time – data arrival time có

nghĩa là các điều kiện đều thỏa mãn

4.Kiểm định netlist

- Kiểm tra matching: thì điều kiện matching đã thành công

Trang 12

Hình 11: Kiểm tra Matching trong formality

- Kiểm tra verify: đã thành công

Hình 12: Kiểm tra verify

III. Kêt luận

1.Nhận xét

Trong quá trình làm bài thì khó khăn của chúng em là viết file boxuli.v làm sao để tối

ưu các câu lệnh nhất và những khó khăn khi tiếp xúc với một phần mềm mới

TIEU LUAN MOI download : skknchat@gmail.com

Trang 13

2.Kết luận

Sau khi làm mô phỏng và thực hiện thấy các chương trình mô phỏng đều chạy ổn và

chạy đúng với ý tưởng ban đầu của mình đề ra

Ngày đăng: 11/06/2022, 22:29

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w