30/05/2013 FPGA Class 1
NGÔN NGỮ LẬP TRÌNH PHẦN
CỨNG VERILOG HDL (PHẦN 1)
BÀI 3:
hoangquang.dientu@gmail.com
Nhận hướng dẫn thiết kế số sử dụng ngôn ngữ Verilog-HDL trên FPGA
Ni dung chính
Quy tắc đặt tên
Cấu trúc một thiết kế
Khai báo module
Các loại toán tử
Hàm assign
Cấu trúc always
Phép gán blocking và non-blocking
posedge và negedge
Bài tập ví dụ
30/05/2013 FPGA Class 2
Quy tc đặt tên (1)
Quy tắc đặt tên áp dụng cho tên file module, tên tín hiệu, tên
các thông số do người thiết kế tạo ra.
Tên project trùng tên file với module chính (top module).
Top module module kết nối tất cả các module con (sub-module).
Tên file trùng tên module: <tên module>.v
Tên chỉ gồm tự chữ cái (phân biệt chữ hoa chữ thường),
số dấu gạch dưới phải bắt đầu với một tự chữ.
Không dùng các tên như VDD, VCC, VSS, GND, VREF kể cả
chữ hoa chữ thường.
Không trùng các từ khóa của ngôn ngữ lập trình.
Không kết thúc tên với dấu gạch dưới, không sử dụng
nhiều dấu gạch ới liên tiếp.
30/05/2013 FPGA Class 3
Quy tc đặt tên (2)
Không đặt tên trùng nhau.
Với tín hiệu clock nên : clock, clk hoặc ck
Với tín hiệu reset nên : reset, rst hoặc
reset_n, rst_n.
Tên càng gợi nhớ và càng ngắn càng tốt.
Tên các tín hiệu, các port, thanh ghi nên đặt
chữ in thường.
Tên các tham số (parameter, define) nên đặt
chữ in hoa.
30/05/2013 FPGA Class 4
Ni dung chính
Quy tắc đặt tên
Cấu trúc một thiết kế
Khai báo module
Các loại toán tử
Hàm assign
Cấu trúc always
Phép gán blocking và non-blocking
posedge và negedge
Bài tập ví dụ
30/05/2013 FPGA Class 5