Advanced UVM: Architecting A UVM Testbench
Advanced UVM: Architecting A UVM Testbench
SPI
For the Design: IRQ I/F
Test
Test
Test
Test
Test
Test
Test
Environment
Coverage
Test
seq Collector
Seqs
Agent
Bkgrnd
seq Configuration
Seqs Object
Monitor DUT
Env Config Config Sequencer
A Config A Config Driver
Agent2
Test Configuration
Monitor
Seqs Environment Object
Coverage Sequencer
Collector Driver
Score
Agent1
Bkgrnd Configuration
Seqs Monitor
Object
Agent2
Test Configuration
Seqs Object
Monitor DUT
Score
Coverage Sequencer
Collector Driver
Score
Agent1
Bkgrnd Configuration
Seqs Monitor
Object
Sequencer
endclass Driver DUT
endclass
Sequencer
Driver DUT
Configuration
Object Monitor
endclass
Sequencer
Driver DUT
endfunction
Environment
Coverage
Collector
Score
Agent1
endclass Config
A2 Config
DUT
A1 Config
…
Environment
Coverage
Collector
endfunction:build_phase Score
endclass
Agent1
Config
A2 Config
DUT
A1 Config
this);
Environment
Coverage
Collector
endfunction:build_phase Score
endclass
Agent1
Config
A2 Config
DUT
A1 Config
Agent2
Environment
Coverage
Collector
Score
endclass
Agent1
Config
A2 Config
DUT
A1 Config
my_env env;
my_agent1_config a1_cfg;
my_agent2_config a2_cfg;
my_env_cfg cfg; Config
A2 Config
A1 Config
endfunction
Environment
Coverage
Collector
Score
endclass
Agent1
Config
A2 Config
DUT
A1 Config
this); Agent2
endfunction
Environment
Coverage
Collector
Score
endclass
Agent1
Config
A2 Config
DUT
A1 Config
endfunction Coverage
Collector
endclass Score
Agent1
Config
A2 Config
DUT
A1 Config
endtask Agent2
Environment
Coverage
Collector
Score
endclass
Agent1
Config
A2 Config
DUT
A1 Config