30/05/2013 VIẾT TESTBENCH & MÔ PHỎNG THIẾT KẾ VỚI MODELSIM BÀI 5: 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... Click vào dòng này
Trang 130/05/2013
VIẾT TESTBENCH & MÔ
PHỎNG THIẾT KẾ VỚI
MODELSIM
BÀI 5:
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
Trang 2TESTBENCH
module tb_example_1;
//input
reg [1:0] sel;
reg [3:0] b;
reg [3:0] c;
//output
wire [3:0] y;
example_1 example_1_tb (//input
sel,b,c,
//output
y);
initial
begin
sel = 2'b00;
b = 4'b0101;
c = 4'b0011;
#500
sel = 2'b01;
end
endmodule
30/05/2013
Khai báo module và đặt tên testbench Gọi ngõ vào của thiết kế với khai báo reg Gọi ngõ ra của thiết kế với khai báo wire để quan sát Gọi module thiết kế
Khởi động các giá trị ngõ vào với “initial”
Thời gian tín hiệu thay đổi tính bằng ns
Trang 3VÍ DỤ: TESTBENCH
module example_1 (//input
sel,b,c,
//output
y);
//input
input [1:0] sel;
input [3:0] b;
input [3:0] c;
//output
output reg [3:0] y;
always @ (*) begin
case (sel)
2'b00: y = b & c;
2'b01: y = b | c;
2'b10: y = b ^ c;
2'b11: y = b ~^ c;
endcase
endmodule
30/05/2013
Trang 4Cửa sổ khởi động ModelSim
30/05/2013
Trang 5Tạo một Project mới (1)
30/05/2013
Trang 6Tạo một Project mới (2)
30/05/2013
Trang 7Tạo một Project mới (3)
30/05/2013
Trang 8Tạo các File trong thiết kế (1)
30/05/2013
Trang 9Tạo các File trong thiết kế (2)
30/05/2013
Code đã viết xong
Trang viết code
Trang 10Tạo thêm file mới (1)
30/05/2013
Trang 11Biên dịch trong ModelSim
30/05/2013
Lỗi được báo bằng màu đỏ Click vào dòng này để biết lỗi gì
Trang 12Sửa lỗi trong ModelSim
30/05/2013
Click vào dòng lỗi để biết lỗi ở đâu
Sửa và biên dịch lại Nếu đúng
hết thì tất cả cảnh báo có màu
xanh lá cây
Trang 13Chạy mô phỏng (1)
30/05/2013
Bước 1: Click Update để đảm bảo thông tin mới được cập nhật
Bước 2: Click đôi chuột vào file testbench để chạy
mô phỏng
Trang 14Chạy mô phỏng (2)
30/05/2013
Cửa sổ liệt kê thành phần (testbench và thiết kế)
Cửa sổ liệt kê tín hiệu
Cửa sổ code
Trang 15Chạy mô phỏng (3)
30/05/2013
Xuất hiện cửa số Wave (Cửa
sổ hiển thị dạng sóng khi mô phỏng
Trang 16Chạy mô phỏng (4)
30/05/2013
Chọn khoảng thời gian 1 lần chạy Bấm nút RUN ngay kế đó để chạy
Trang 1730/05/2013
KẾT THÚC BÀI 5