Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 17 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
17
Dung lượng
694,49 KB
Nội dung
Bước 1: Khởi động ModelSim có giao diện sau Bước 2: Vào File/New/Project… Project Location: chọn thư mục lưu project (Chú ý rằng việc tạo một thư mục mới cũng phải dùng ModelSim. Nếu bạn tạo thư mục mới thông thường từ WINDOWN thì sau này sẽ không chạy mô phỏng được - xem hình sau) Project Name: Gõ tên project (phải trùng với tên file top mà bạn tính mô phỏng) Default Library Name: các bác cứ để nguyên Ở đây tại hạ làm một encoder_16_4. Nhấn OK Bước 3: Sau khi Nhấn OK - có khung sau: Create new file: Tạo file mới. Add Existing file: Thêm file có sẵn (ví dụ: bạn đã viết file verilog sẵn và để đâu đó, bạn chỉ cần copy file đó vào thư mục mà bạn tạo project, bấn vào đây để thêm file đó vào) Ở đây tại hạ tạo file mới File name: Tên file Add file as type: Chọn loại file cần tạo Folder: Cứ để Top Level Nhấn OK. Trong cửa sổ WorkSpace xuất hiện file cần tạo với trạng thái “?” (nghĩa là chưa được tổng hợp, kiểm tra). Nếu cần tạo thêm file khác thì làm lại bước 3. Xong ta Close để sang bước 4. Bước 4: Viết RTL code - Nhấp đôi chuột vào tên file trong cửa sổ Workspace sẽ hiện ra cửa sổ edit để viết RTL code. Bước 5: Compile thiết kế - Nhấp chuột phải vào tên file vừa viết code xong. Chọn Compile Selected: Chỉ kiểm tra file chọn. Compile All: Kiểm tra tất cả các file trong cửa sổ workspace. Bước 6: Sửa lỗi (nếu có). Nếu có lỗi, ModelSim sẽ hiện dòng chữ đỏ thông báo. Nhấp đôi chuột vào nó để tìm vị trí lỗi và sửa. Sửa và Compile lại cho đến khi có dòng thông báo successful màu xanh Sau khi tạo xong một project, viết RTL code và compile. Khâu tiếp theo là chúng ta mô phỏng kiểm tra. Ví dụ được thực hiện ở đây là encoder_16_4, ngõ ra sẽ chỉ vị trí của ngõ vào được tích cực và nếu có hơn hai ngõ vào bằng 1 thì ngõ ra bằng 0. Bảng giá trị của encoder_16_4: Trước hết đây là RTL code của encoder_16_4: module encoder_16_4( enable, // tin hieu cho phep binary_out, // 4 bit ngo ra encoder_in // 16-bit ngo vao ); //ngo vao input enable; input [15:0] encoder_in; //ngo ra output [3:0] binary_out; //kieu ngo ra reg [3:0] binary_out; //chuong trinh chinh always @ (enable or encoder_in) begin binary_out = 0; if (enable) begin case (encoder_in) 16'h0002 : binary_out = 4'd1; 16'h0004 : binary_out = 4'd2; 16'h0008 : binary_out = 4'd3; 16'h0010 : binary_out = 4'd4; 16'h0020 : binary_out = 4'd5; 16'h0040 : binary_out = 4'd6; 16'h0080 : binary_out = 4'd7; 16'h0100 : binary_out = 4'd8; 16'h0200 : binary_out = 4'd9; 16'h0400 : binary_out = 4'd10; 16'h0800 : binary_out = 4'd11; 16'h1000 : binary_out = 4'd12; 16'h2000 : binary_out = 4'd13; 16'h4000 : binary_out = 4'd14; 16'h8000 : binary_out = 4'd15; endcase end end endmodule Để mô phỏng kiểm tra ta thực hiện như sau: Bước 1: Tạo testbench Nhấp chuột phải vào vùng trống của cửa sổ Workspace. Chọn Add to project/New file… Cửa sổ Create Project File xuất hiện Điền tên file (tb_encoder_16_4) và chọn loại file cần tạo (verilog). Nhấn OK. Cửa sổ edit xuất hiện và chúng ta gõ file testbench vào Đây là nội dung file testbench (viết cơ bản theo hướngdẫn ở topic “Help me – viết testbench”) module tb_encoder_16_4; //ngo vao gan gia tri test reg enable; reg [15:0] encoder_in; //ngo ra quan sat wire [3:0] binary_out; //goi module test encoder_16_4 encoder( enable, // tin hieu cho phep binary_out, // 4 bit ngo ra encoder_in // 16-bit ngo vao ); //phan gan gia tri test initial begin enable = 1'b0; encoder_in = 16'h0001; #500 enable = 1'b1; #200 encoder_in = 16'h0002; #200 encoder_in = 16'h0004; #200 encoder_in = 16'h0008; #200 encoder_in = 16'h0010; #200 [...]... gian bằng khoảng thời gian chúng ta đã thiết lập Bước 7: Xem kết quả Ta thấy kết quả mô phỏng đúng ý đồ thiết kế Thế là chúng ta hoàn thành phần viết RTL code và compile thiết kế trong ModelSim Bài sau tại hạ sẽ hướng dẫn một món mô phỏng đơn giản, dễ làm – dễ xơi . Bước 1: Khởi động ModelSim có giao diện sau Bước 2: Vào File/New/Project… Project Location: chọn thư mục lưu project (Chú ý rằng việc tạo một thư mục mới cũng phải dùng ModelSim. Nếu bạn tạo. Thế là chúng ta hoàn thành phần viết RTL code và compile thiết kế trong ModelSim. Bài sau tại hạ sẽ hướng dẫn một món mô phỏng đơn giản, dễ làm – dễ xơi. . xuất hiện và chúng ta gõ file testbench vào Đây là nội dung file testbench (viết cơ bản theo hướng dẫn ở topic “Help me – viết testbench”) module tb_encoder_16_4; //ngo vao gan gia tri test