facebook

We provide verification services ensuring your design is bug-free within the given time constraints

UVM Based Verification

  • UVM based Core/SoC verification environment
  • UVM based random test generator
  • Coverage enhancement using UVM
  • User-controlled error injection using UVM

Formal Verification

  • Architectural, Protocol Implementation, and Formal assertion-based verification
  • Black-Box Verification
  • White-Box Sanity Checking
  • Coverage Analysis
  • Complex State-space reduction by tweaking parameters, constants, black-boxing and formal cut-points

Testing-Planning

  • Design and implementation of verification plans based on microarchitectural specification documents
  • Generation of random and directed stimulus to cover cases of verification plans
  • Adding assertions and functional coverage in the design
  • Deciding between checkers according to the test plan and microarchitecture
  • Debugging and coverage closure estimates

Coverage Closure

  • Formal Verification on VC Formal (Synopsys formal verification platform) and Jasper Gold (Cadence formal verification platform)
  • Core coverage closure (functional and code coverage) through simulation and unreachability analysis
  • RTL and verification bug fixes through debugging of simulation and generation failures
  • DUT verification and coverage analysis using random and directed test cases
  • Coding assertions and cover properties in Scala for DUT functional verification

Development of VIP

  • Design verification in UVM/SystemVerilog
  • Configurable and reusable VIP development
  • Verification of internal and external IPs such as UART (Universal Asynchronous Receiver/Transmitter), WDT (Watchdog Timer), DMAC (Direct Memory Access Controller), and SPI (Serial Peripheral Interface)
  • Designing Generic DPI Interface infrastructure for different protocols
  • Implementation of logic providing queuing and synchronization between sequences and the Verilog (VCS or Verilator) simulation
  • Developing set of base classes for use in driving sequence item and sequence classes appropriate to the particularities of specific buses

Triaging

  • Running regressions and debug/fix failures.
  • Writing directed tests in C and assembly.
  • Automation and Infrastructure development in Python
    and Linux (bash)

Methodology Flows & Debug/Tracen

  • X-Propagation Verification
  • EDA tools makefile flows including Synopsys, Cadence and Open-Source tools
  • UVM testbenches for Core Verification
  • Random test generator development
  • C++ testbench development
Loading...