Menu
CoddyTech

Sử dụng câu lệnh case

Thuộc phần Kiến thức nền tảng trong hành trình Verilog của Coddy. Bài học 66 trên 90.

challenge icon

Thử thách

Tạo một bộ chọn kênh 4 sang 1 bằng câu lệnh case thay vì if-else.

Bảng chân trị

selout
00out = in0
01out = in1
10out = in2
11out = in3

Cần làm:

  1. Tạo một module có tên mux4to1_case
  2. Thêm các đầu vào in0, in1, in2, in3 (mỗi đầu vào 1 bit)
  3. Thêm đầu vào sel (2 bit)
  4. Thêm đầu ra out (1 bit, kiểu reg)
  5. Thêm một khối always @(*)
  6. Bên trong, thêm câu lệnh case (sel)
  7. Thêm các trường hợp 2'b00, 2'b01, 2'b10, 2'b11
  8. Thêm trường hợp default
  9. Kết thúc bằng endcase và endmodule

Tự làm thử

// TODO: Tạo module tên mux4to1_case

// TODO: Thêm các đầu vào: in0, in1, in2, in3 (mỗi đầu vào 1 bit)

// TODO: Thêm đầu vào sel (2 bit)

// TODO: Thêm đầu ra out (kiểu reg)

// TODO: Thêm khối lệnh always @(*)

// TODO: Thêm case (sel)

// TODO: Thêm case 2'b00: out = in0;

// TODO: Thêm case 2'b01: out = in1;

// TODO: Thêm case 2'b10: out = in2;

// TODO: Thêm case 2'b11: out = in3;

// TODO: Thêm default: out = in0;

// TODO: Thêm endcase

// TODO: Thêm endmodule

Tất cả bài học trong Kiến thức nền tảng

Tự luyện tập: Trình biên dịch Verilog online