DVClub Advanced Scoreboarding Techniques-Francois
DVClub Advanced Scoreboarding Techniques-Francois
DVClub Advanced Scoreboarding Techniques-Francois
Franois Cerisier
Test and Verification Solutions
Abstract
Abstract
This presentation describes scoreboarding techniques using UVM. It reviews the
scoreboard principles and UVM features for scoreboarding and extends to more
advanced techniques to verify full transaction contents, data, attributes and
responses for data flow designs, bridges and interconnects.
The presentation will go through the analysis_port requirements, search in lists,
queues and pools and using the UVM factory to architect a generic scoreboard
for complex multi protocol interconnects.
Biography
Franois Cerisier has an Engineering Diploma in Digital Signal Processing from
PolytechSophia, University of Nice-Sophia-Antipolis and over 13 years of
experience in verification of IPs, CPUs and System-On-Chips and in
hardware/software co-verification. Franois gained verification methodology
expertise from industrial projects of major semiconductor companies (including
Infineon, Broadcom, ST-Microelectronics, ST-Ericsson, NXP) and EDA start-ups.
He is now leading Test and Verification Solutions subsidiary in France to provide
verification services and consulting.
DVClub Sept 9th 2013 - Advanced Scoreboard Techniques using UVM Franois Cerisier page 2
Agenda
Introduction
Scoreboard Principles
Case 1: Bridge / Data flow design
Case 2: More complex data flow design
Case 3: Memory controllers
Scoreboard Tutorials
DVClub Sept 9th 2013 - Advanced Scoreboard Techniques using UVM Franois Cerisier page 4
Functional Coverage
Know what has been automatically covered
Checks
Know that the design complies to a protocol
assertions
Know that the design does what it should do
transaction checks
scoreboards
DVClub Sept 9th 2013 - Advanced Scoreboard Techniques using UVM Franois Cerisier page 5
Scoreboard Roles
transaction ordering
FIFO
OOO
Precedence relationship
DVClub Sept 9th 2013 - Advanced Scoreboard Techniques using UVM Franois Cerisier page 6
DUT
DVClub Sept 9th 2013 - Advanced Scoreboard Techniques using UVM Franois Cerisier page 7
Bus A VIP
Master Agent
sequences
Bus B VIP
Slave Agent
sequencer
driver
monitor
assertions
DUT
vif
vif
driver
monitor
assertions
DVClub Sept 9th 2013 - Advanced Scoreboard Techniques using UVM Franois Cerisier page 8
Bus A VIP
Master Agent
sequences
Bus B VIP
Slave Agent
sequencer
driver
DUT
vif
vif
driver
monitor
monitor
assertions
assertions
trans
Transaction
Predictor
Match ?
Ref
trans
Storage
Compare /
Search
Scoreboard
Response Scoreboard
DVClub Sept 9th 2013 - Advanced Scoreboard Techniques using UVM Franois Cerisier page 9
Bus A VIP
Master Agent
sequences
Bus B VIP
Slave Agent
sequencer
driver
DUT
vif
vif
driver
monitor
monitor
assertions
assertions
trans
TLM
Reference
Model
Match ?
Ref
trans
Storage
Compare /
Search
Request Scoreboard
Response Scoreboard
DVClub Sept 9th 2013 - Advanced Scoreboard Techniques using UVM Franois Cerisier page 10
Bus A VIP
Master Agent
sequencer
vif
driver
DUT
monitor
Read
trans
assertions
Write
trans
Match ?
Ref
trans
Transaction
Predictor
Storage
Compare /
Search
Scoreboard
DVClub Sept 9th 2013 - Advanced Scoreboard Techniques using UVM Franois Cerisier page 11
DVClub Sept 9th 2013 - Advanced Scoreboard Techniques using UVM Franois Cerisier page 12
DVClub Sept 9th 2013 - Advanced Scoreboard Techniques using UVM Franois Cerisier page 13
FIFO queues
OOO dynamic arrays, queues
Memory associative array (indexed by address)
Others:
Associative array of queues
Data type:
Memory scalar, bytes, integers,
Data path:
Scalar
Transaction Item Class
DVClub Sept 9th 2013 - Advanced Scoreboard Techniques using UVM Franois Cerisier page 14
Storage of transactions
DVClub Sept 9th 2013 - Advanced Scoreboard Techniques using UVM Franois Cerisier page 15
Transaction Match
DVClub Sept 9th 2013 - Advanced Scoreboard Techniques using UVM Franois Cerisier page 16
Re-Use concern:
Encapsulation: implemented as a separated class
uvm_analysis_port / imp to connect
UVM Factory to extend, replace existing objects
DVClub Sept 9th 2013 - Advanced Scoreboard Techniques using UVM Franois Cerisier page 17
DVClub Sept 9th 2013 - Advanced Scoreboard Techniques using UVM Franois Cerisier page 18
DVClub Sept 9th 2013 - Advanced Scoreboard Techniques using UVM Franois Cerisier page 19
Improving reuse
UVM Factory
Same architecture
Different implementation, different behavior
DUT scoreboard
FIFO read
scoreboard
OOO read
scoreboard
FIFO write
scoreboard
DVClub Sept 9th 2013 - Advanced Scoreboard Techniques using UVM Franois Cerisier page 20
Coherency Domain
AHB
Monitor
VIP to Scbd
adapters
AHB adapter
UVM
Agent
AXI
Monitor
UVM
Agent
OCP
Monitor
OCP adapter
Master I/F 3
UVM
Agent
AXI / ACE-Lite
Monitor
AXI adapter
Master I/F 2
AXI adapter
Master I/F 1
UVM
Agent
AXI
Monitor
ACE
Monitor
ACE adapter
AXI
Monitor
AXI adapter
Master I/F 0
ACE
Monitor
ACE adapter
UVM
Agent
AXI adapter
APB
VIP to Scbd
adapters
Slave 4
Slave
VIP Monitors
Slave I/F 4
AHB adapter
APB
Monitor
UVM
Agent
Slave I/F 3
AHB adapter
AHB
Monitor
UVM
Agent
Route M2 to S2
Slave I/F 2
AHB adapter
AXI
Monitor
UVM
Agent
Route M1 to S1
Slave I/F 1
AHB adapter
OCP
Monitor
UVM
Agent
Route M0 to S0
Slave I/F 0
AHB adapter
AXI
Monitor
UVM
Agent
Master I/F 4
ACE Scoreboard
Master
VIP Monitors
UVM
Agent
NoC
AHB
Master 5
DVClub Sept 9 2013 - Advanced Scoreboard Techniques using UVM Franois Cerisier page 21
Conclusion
DVClub Sept 9th 2013 - Advanced Scoreboard Techniques using UVM Franois Cerisier page 22
Thank you
Questions?
DVClub Sept 9th 2013 - Advanced Scoreboard Techniques using UVM Franois Cerisier page 23