Độ bao phủ biên và điều khiển
Thuộc phần Thiết kế và xác minh RTL trong hành trình Verilog của Coddy. Bài học 29 trên 38.
Vượt qua một vài test case khác với việc kiểm tra các tình huống quan trọng. Hãy theo dõi xem bạn đã kiểm tra các giá trị tối thiểu, tối đa và thông thường hay chưa, cũng như các điều khiển cạnh tranh có xảy ra đồng thời hay không. Cờ độ bao phủ ghi nhận rằng một case đã được quan sát; cờ này không chứng minh thiết kế đã phản hồi chính xác. Hãy kết hợp độ bao phủ với các bước kiểm tra kết quả.
Đoạn trích liên quan; các khai báo và kết nối xung quanh đã có sẵn trong thử thách.
if(value==0) seen[0]=1;
else if(value==15) seen[1]=1;
else seen[2]=1;Mặt nạ bit ghi nhớ những danh mục đã xuất hiện mà không thay thế các lần khớp trước đó.
Kết hợp kiểm thử bao phủ ranh giới và tổ hợp điều khiển với các bước kiểm tra tính đúng đắn độc lập.
Thử thách
Trung bìnhThe system prompt is requiring Vietnamese, but it does not provide the source HTML content to translate.
Tự làm thử
module dut;
task observe;
input [3:0] value;
inout [2:0] seen;
begin
// Hoàn thiện task kiểm tra.
seen=seen;
end
endtask
endmoduleBài học này có một bài trắc nghiệm ngắn. Bắt đầu bài học để trả lời và theo dõi tiến độ.
Tất cả bài học trong Thiết kế và xác minh RTL
1RTL tổ hợp đáng tin cậy
Giá trị mặc định ngăn chốtBộ mã hóa ưu tiênKiểm tra one-hotGiải mã case an toànÔn tập: Bộ định tuyến yêu cầu2Độ rộng bit và số học có dấu
Bảo toàn các bit nhớPhép so sánh có dấuDịch phải số họcTràn số và bão hòaÔn tập: hiệu có dấu3RTL có thể tái sử dụng
Hàm tổ hợpTham số an toàn về độ rộngVòng lặp generateGenerate có điều kiệnÔn tập: mặt nạ bit có thể tái sử dụng6Testbench tự kiểm tra
Kiểm tra bốn trạng tháiTác vụ kiểm tra có thể tái sử dụngMô hình tham chiếu và điểm sốĐộ bao phủ biên và điều khiểnÔn tập: kiểm tra bộ cộngTự luyện tập: Trình biên dịch Verilog online