Module 3.1_Verification Guidelines (1)
Module 3.1_Verification Guidelines (1)
VERIFICATION GUIDELINES
Purpose of Verification:
The primary objective of verification is to
ensure that the design functions as intended
• Generate stimulus
• Apply stimulus to the DUT
• Capture the response
• Check for correctness
• Measure progress against the overall
verification goals
Some steps are accomplished automatically by the
testbench, while others are manually determined by
you.
3.1.3: DIRECTED TESTING
Functional coverage
// Constraints
constraint address_range { address >= 8'h10 && address <= 8'hF0; }
constraint data_even { data % 2 == 0; }
// Constructor
function new();
endfunction
endclass
module packet_testbench;
// Signals to connect to the packet_processor design
logic [7:0] address;
logic [7:0] data;
logic valid;
// Instantiate the packet_processor (Design Under Test - DUT)
packet_processor uut (
.address(address), // Connects the address to the DUT
.data(data), // Connects the data to the DUT
.valid(valid) // Receives the valid output from the DUT
);