wayground logo

Free Printable Worksheets

Font size

S
M
L
XL
Worksheets

Verilog Code Errors Quiz

Total questions: 14

Worksheet time: 11mins

Name
Class
Date
1.

Sửa lỗi trong đoạn mã sau?

always_ff @(posedge clk) begin

a = b + 1;

b = a + 2;

end

4 lines
2.

Có lỗi logic nào trong đoạn mã sau?

always_comb begin a = b + 1; b = c + 2; c = a + 3; end

a)

Không có lỗi.

b)

Vòng lặp tín hiệu không mong muốn.

c)

Giá trị của a không xác định.

d)

Trạng thái không ổn định.

3.

Có lỗi gì trong đoạn mã sau? logic async_signal, sync_signal;

4 lines
4.

Có lỗi gì trong đoạn mã sau? Đoạn mã: logic a, b; always_ff @(posedge clk) begin

a)

Không có lỗi.

b)

Thiếu điều kiện reset.

c)

Sử dụng kiểu dữ liệu logic không chính xác.

d)

Sử dụng gán chặn trong logic tuần tự.

5.

Có lỗi gì xảy ra trong đoạn mã sau khi mô phỏng? Đoạn mã: a <= b + 1; b <= a + 2; end

a)

Không có lỗi.

b)

Các giá trị của a và b không được xác định.

c)

Các biến trung gian không được sử dụng để loại bỏ sự phụ thuộc vòng lặp.

d)

Không có reset được sử dụng.

6.

Mã lỗi nào gây ra trong quá trình mô phỏng với đoạn mã sau? Đoạn mã: logic [3:0] data; always_comb begin data = data + 1; // Vòng lặp phản hồi phụ thuộc vào chính nó end

a)

Không có lỗi.

b)

Vòng lặp tín hiệu không mong muốn.

c)

Giá trị của data không xác định.

d)

Điều kiện đua.

7.

Mã lỗi nào có trong đoạn mã sau? Đoạn mã: always_comb begin if (enable) a = b; else b = a; end

a)

Không có lỗi.

b)

Sử dụng phép gán chặn không đúng trong một khối kết hợp.

8.

Có lỗi gì trong đoạn mã sau? always_ff @(posedge clk) begin if (reset) count = 0; // Gán chặn else count = count + 1; end

a)

Không sử dụng gán không chặn.

b)

Không có lỗi.

c)

Reset không được đồng bộ hóa.

d)

Giá trị của count không được khởi tạo.

9.

Có lỗi gì trong đoạn mã sau? logic [3:0] count; always_ff @(posedge clk or negedge reset) begin if (!reset) count <= 0; else count = count + 1; // Gán chặn end

a)

Không có lỗi.

b)

Không sử dụng gán không chặn trong logic tuần tự.

c)

Reset không được đồng bộ hóa.

d)

Giá trị của count không xác định.

10.

Mã sau đây sẽ gây ra lỗi gì? logic x, y; always_ff @(posedge clk) begin x <= y; y <= x; end

a)

Không có lỗi.

b)

Giá trị của x và y không xác định.

c)

Điều kiện đua giữa x và y.

d)

Không có biến trung gian nào được sử dụng.

11.

Có lỗi gì trong đoạn mã sau? counter <= 4'b0000; counter <= counter + 1; // Không có điều kiện else

a)

Không có lỗi.

b)

Giá trị của counter sẽ bị ghi đè một cách bất ngờ.

c)

Không sử dụng reset đồng bộ.

d)

Lỗi vòng lặp không mong muốn.

12.

Có lỗi gì trong mã thiết kế tổ hợp? logic a, b, c; always_comb begin if (a) b = 1; end

a)

Tín hiệu b không được gán giá trị mặc định.

b)

Không có reset cho a.

c)

Không có lỗi.

d)

Gây ra vòng lặp tín hiệu.

13.

Có lỗi gì xảy ra trong đoạn mã sau? logic a, b; always_ff @(posedge clk) begin a <= b; end always_ff @(posedge clk) begin b <= a; end

a)

Không có lỗi.

b)

Gây ra vòng lặp tín hiệu.

c)

Không sử dụng reset.

d)

Tín hiệu a không được gán giá trị mặc định.

14.

Có lỗi gì trong đoạn mã sau? logic clk, reset, count; always_ff @(posedge clk or posedge reset) begin if (reset) count = 0; // Gán chặn else count = count + 1; end

a)

Không sử dụng gán không chặn trong logic tuần tự.

b)

Reset không đồng bộ.

c)

Không có lỗi.

d)

Giá trị của count không xác định.