Báo cáo thiết kế mạch đếm sản phẩm Thiết kế và tổng hợp hệ thống số Viện điện tử viễn thông Đại học Bách Khoa Hà Nội
Trang 1BÁO CÁO BÀI TẬP LỚN : THIẾT KẾ TỔNG HỢP HỆ THỐNG SỐ
Đề tài : Thiết kế mạch đếm sản phẩm
GV hướng dẫn : TS.Nguyễn Hoàng Dũng
Nhóm SV thực hiện: 1.Bùi Xuân Quyết 20092165 dt09-k54
2.Nguyễn Thanh Tuấn 20093008 dt09-k54
3.Nguyễn Danh Dũng 20090532 dt09-k54
I.Yêu cầu thiết kế mạch.
Thiết kế mạch đếm hiển thị trên 2 led 7 thanh trên Kit DE1 sử dụng ngôn ngữ mô tả phần cứng Verilog
-Mạch có các nút bấm:
• “up” : nhấn “up” sản phẩm tăng 1 đơn vị
• “down”: nhấn “down” sản phẩm giảm 1 đơn vị
• ”reset”: nhấn “reset” sản phẩm trở về 0
Các yêu cầu khác:
-Mạch về “0” nhấn “down” sẽ giữ nguyên trạng thái
-Mạch về “99” nhấn “up” sẽ giữ nguyên trạng thái
-Khi thực hiện thành công trên Kit DE1 chuyển đầu vào nút “up” bằng hệ thống thu-phát hồng ngoại
II.Sơ đồ khối.
Mạch được thực hiện trên Kit DE1 nên sơ đồ khối chỉ thể hiện các khối thiết kế bằng Verilog
Sơ đồ khối:
Trang 2Chức năng các khối được thiết kế:
-Khối “chia tần” : Chia tần số từ 50MHz xuống tần số thấp khoảng 20Hz
-Khối “led đơn vị” : đếm hàng đơn vị của mạch, cung cấp tín hiệu enable up(enable down) cho led chục
-Khối “led chục” : đếm hàng chục của mạch đếm
-Khối giải mã : giải mã tín hiệu sang led 7 thanh để hiển thị trên Kit DE1
III.Sơ đồ trạng thái.
Sơ đồ trạng thái khối led đơn vị
Trong đó:
Tín hiệu đầu vào:
• u-tín hiệu “up”
• d-tín hiệu “down”
• z-tín hiệu báo led chục ở trạng thái 0
• f-tín hiệu báo led chục ở trạng thái 9
Trang 3Tín hiệu đầu ra:
• y-đầu ra được mã hóa để hiển thị led đơn vị
• e_d-đầu ra cho phép led chục nhảy trạng thái “down”
• e_u-đầu ra cho phép led chục nhảy trạng thái “up”
Sơ đồ trạng thái led chục
Trong đó :
Tín hiệu vào:
• u-tín hiệu “up”
• e_u: tín hiệu cho phép up
Trang 4• d-tín hiệu “down”
• e_d-tín hiệu cho phép down
Tín hiệu đầu ra:
• y-đầu ra được mã hóa để hiển thị led chục
• z-đầu ra báo led chục ở trạng thái 0
• f-đầu ra báo led chục ở trạng thái 9
IV.Chức năng nguyên lí.
-Khối chia tần:
Chia tần số lấy từ Kit DE1 50MHz xuống tần số 20Hz-đây là tần số xung đồng bộ
“clk”
+,Thực hiện chia từ 50MHz xuống 2KHz bằng biến đếm tới 24999
+,Chia tần 2KHz xuống 20Hz bằng biến đếm tới 49
Tần số đầu ra khối chia tần được sử dụng cho khối led đơn vị và khối led chục
-Khối “led đơn vị”:
Đếm hàng đơn vị
+,tăng 1khi có tín hiệu up ở trạng thái thấp và xung sườn lên clk
+,giảm 1 khi có tín hiệu down ở trạng thái thấp và xung sườn lên của clk
+,khi ở trạng thái 0 ,có tín hiệu down ở trạng thái thấp,nếu có tín hiệu báo led chục ở trạng thái 0 thì led đơn vị sẽ không nhảy trạng thái
+, khi ở trạng thái 9 ,có tín hiệu up ở trạng thái thấp,nếu có tín hiệu báo led chục ở trạng thái 9 thì led đơn vị sẽ không nhảy trạng thái
-Khối “led chục”:
Đếm led chục:
Trang 5+,tăng 1khi có tín hiệu up ở trạng thái thấp ,tín hiệu cho phép up ở trạng thái cao và xung sườn lên clk
+,giảm 1 khi có tín hiệu down ở trạng thái thấp ,tín hiệu cho phép down ở trạng thái cao và xung sườn lên của clk
+,khi ở trạng thái 0,trạng thái sẽ không nhảy khi gặp tín hiệu down
+,khi ở trạng thái 9,trạng thái sẽ không nhảy khi gặp tín hiệu up
-Khối giải mã:
Giải mã tín hiệu đầu ra y từ led đơn vị và led chục hiển thị trên led 7 thanh
V.Kiểm tra và mô phỏng.
Thực hiện test mạch và mô phỏng bằng Modelsim
Code file test cung cấp dữ liệu để chạy mạch : Trong mô phỏng kiểm tra khối chia tần chỉ chia 8 , tần số xung clk được lấy là 500MHz để kết quả hiển thị dễ quan sát Bảng gán chân KIT DE1 với đầu vào “up” là nút ấn:
CLOCK_50 Input PIN_L1 2 B2_N1 PIN_L1
HEX0[6] Output PIN_E2 2 B2_N1 PIN_E2
HEX0[5] Output PIN_F1 2 B2_N1 PIN_F1
HEX0[4] Output PIN_F2 2 B2_N1 PIN_F2
HEX0[3] Output PIN_H1 2 B2_N1 PIN_H1
HEX0[2] Output PIN_H2 2 B2_N1 PIN_H2
HEX0[1] Output PIN_J1 2 B2_N1 PIN_J1
HEX0[0] Output PIN_J2 2 B2_N1 PIN_J2
HEX1[6] Output PIN_D1 2 B2_N0 PIN_D1
HEX1[5] Output PIN_D2 2 B2_N0 PIN_D2
HEX1[4] Output PIN_G3 2 B2_N0 PIN_G3
HEX1[3] Output PIN_H4 2 B2_N0 PIN_H4
HEX1[2] Output PIN_H5 2 B2_N0 PIN_H5
HEX1[1] Output PIN_H6 2 B2_N0 PIN_H6
HEX1[0] Output PIN_E1 2 B2_N1 PIN_E1
down Input PIN_T22 6 B6_N0 PIN_T22
rst Input PIN_R22 6 B6_N0 PIN_R22
Hình ảnh quá trình mô phỏng
Trang 7Gán chân KIT DE1 với đầu vào “up” được lấy từ khối hồng ngoại bên ngoài thông qua chân GPIO : thay đầu vào “up” PIN_R21 bằng PIN_J22
VI.Kết quả và đánh giá.
1.Kết quả.
-Mạch được hoàn thiện và kiểm tra thành công trên KIT DE1 với đầu vào “up” là nút bấm
-Phần khối hồng ngoại đang được tiến hành thực hiện và kiểm tra trên KIT DE1 : tại thời điểm viết báo cáo chưa kiểm tra thành công
2.Đánh giá.
-Ưu điểm : mạch thực hiện được yêu cầu đề bài yêu cầu
-Nhược điểm : phần code thực hiện mạch dài cần tối thiểu code để đạt hiệu quả cao hơn
Trang 8MỤC LỤC
I.Yêu cầu thiết kế mạch………1
II.Sơ đồ khối……….1
III.Sơ đồ trạng thái……… 2
IV.Chức năng nguyên lí……… 4
V.Kiểm tra và mô phỏng……… 5
VI.Kết quả và đánh giá……….7