返回 Skill 列表
extension
分类: 开发与工程无需 API Key

uvm-methodology

在FPGA验证方面拥有深厚的通用验证方法学(IEEE 1800.2)专业知识

person作者: jakexiaohubgithub

UVM Methodology Skill

Overview

Expert skill for Universal Verification Methodology (UVM) development following IEEE 1800.2 standards for comprehensive FPGA verification.

Capabilities

  • Generate UVM agent architecture (driver, monitor, sequencer)
  • Create UVM environments and scoreboards
  • Implement uvm_sequence and virtual sequences
  • Configure UVM factory and config_db
  • Implement functional coverage with covergroups
  • Design UVM register models (RAL)
  • Apply UVM phasing and objections correctly
  • Debug UVM testbenches effectively

Target Processes

  • uvm-testbench.js
  • constrained-random-verification.js
  • testbench-development.js

Usage Guidelines

Agent Architecture

  • Driver: Converts sequence items to pin-level activity
  • Monitor: Observes DUT interface and creates transactions
  • Sequencer: Routes sequence items to driver
  • Agent: Contains driver, monitor, sequencer; configurable active/passive

Environment Structure

  • Top-level environment contains agents and scoreboard
  • Scoreboard performs reference model comparison
  • Config objects distribute configuration
  • Virtual sequencer coordinates multiple agents

Sequence Development

  • Extend from uvm_sequence#(item_type)
  • Use start_item() / finish_item() paradigm
  • Create layered sequences for complex scenarios
  • Use virtual sequences for multi-agent coordination

Coverage Strategy

  • Embed covergroups in monitors
  • Sample on transaction completion
  • Cross functional coverage points
  • Track coverage closure progress

Best Practices

  • Use factory for all component creation
  • Configure via config_db, not constructors
  • Raise/drop objections properly
  • Use UVM reporting macros consistently

Dependencies

  • UVM 1.2 or UVM IEEE 1800.2 library
  • SystemVerilog expertise
  • Verification methodology knowledge