You are on page 1of 12

1

SYSTEM VERILOG
TESTBENCH
SYSTEM VERILOG ENVIRONMENT 2

 Verification environment is used for functional correctness of the Design Under Test by
generating and driving a predefined(protocol oriented)input sequences ,capturing the
design O/P and comparing wrt. Expected O/P
 Verification environment is formed by grouping several components performing specific
task/operation
 In verification environment, separate classes are written to perform specific operation like
stimulus generation, driving and monitoring etc and their naming is done according to their
operation.
ENVIRONMENT COMPONENTS
3
WITH DESCRIPTION
STEPS TO DEVELOPE VERIFICATION 4

ENVIRONMENT

 Creation of verification Plan


 Test-bench Architecture
 Component Development
Verification Plan 5
 Prepare road-map for how to achieve the Goal(Document).
 Test plan includes
 Introduction
 Assumption
 List of Test-cases
 Features to be tested
 Approaches
 Resources
 Entry & Exit area
 Helps in understanding how the Verification process should be done
 Test plan also contains description of each component and their respective role in verification
environment
TESTBENCH ARCHITECTURE 6

PACKAGE
ENVIRONMENT

GENERATOR

REFERENC SCOREBOARD
E MODEL

WRITE WRITE READ READ BFM


BFM MONITOR MONITOR

DUV
INTERFACE

MAILBOX
INTERFACE 7

 Static component
 Encapsulates communication between hardware blocks
 Bundle of Signals
 Reduce amount of code
 Promote reuse
 Synthesizable construct
 Can include always, initial, task, function, assertion and coverage too
8
EXAMPLE OF INTERFACE
9
MODPORT 10

 Permits customization of an interface for different blocks or modules


 Provides direction for individual module ports
 Specifies which signals in the interface are accessible to module
Clocking Block(CB) 11

 Provides race-free operation


 Ensures “TB will drive the signals at the right time (clock edge)
 Setup and Hold time can be modelled

 Interface can have multiple clocking blocks


 Only one clock per CB
 It’s meant only for testbench
 Default clocking block
 Input skew-TB samples DUT output before the clock edge->1 clock cycle delay
 Output skew-TB drives DUT inputs at the clock edge-> No delay
12

You might also like