Search Results

Filters
Reset All

Filters

Topic

Show More

Show Less

Content Type

Show More

Show Less

Audience

Resource Type

Show More

Show Less

Tags

Show More

Show Less

2183 Results

  • C Based Stimulus

    Using c to generate stimulus via the UVM register package.

  • Predictors

    A Predictor is a verification component that represents a "golden" reference model of all or part of the DUT functionality.

  • SystemVerilog Guidelines

    The SystemVerilog coding guidelines and rules in this article are based on Siemens EDA's experience and are designed to steer users away from coding practices that result in SystemVerilog that is either hard to understand or debug.

  • Generating Stimulus with UVM Sequences

    The uvm_sequence_base class extends the uvm_sequence_item class by adding a body task method.

  • Sequences

    Sequences are used to encapsulate stimulus, Sequencer/Driver hookup, pipelined protocols, test generation, performance analysis and much more.

  • Unidirectional Protocols

    For a driver, composed of a BFM-proxy pair in the dual domain testbench, the driver proxy controls the flow of sequence_items by using get_next_item() to obtain the next sequence_item to be processed, and making the item_done() call only once it has finished processing the item.

  • Sequence-Driver Use Models

    Sequence-Driver Use Models can be applied to both pipelined and non-pipelined models in hardware verification.

  • Driver Sequence API

    The uvm_driver is an extension of the uvm_component class that adds an uvm_seq_item_pull_port which is used to communicate with a sequence via a sequencer.

  • Using Questa for Pre-silicon Validation of IEEE 1149.1-2013 based Silicon Instruments

    IEEE 1149.1-2013 is not your father's JTAG. The new release in June of 2013 represents a major leap forward in standardizing how FPGAs, SoCs and 3D-SICs can be debugged and tested. The standard defines register level descriptions of on-chip IP with operational descriptions via the new 1149.1 Procedural Description Language. 1, 2, 3

  • Bidirectional Protocols

    For a driver, composed of a BFM-proxy pair in the dual domain testbench, one of the most common sequence-driver use cases is where the sequencer sends request sequence_items to the driver proxy, which then executes the request phase of the pin-level protocol through the driver BFM.

  • Analysis

    Components in a UVM testbench that observe and analyze behavior of the DUT.

  • Analysis Port

    One of the unique aspects of the analysis section of a testbench is that usually there are many independent calculations and evaluations all operating on the same piece of data.

  • Dealing With UVM and OVM Sequences

    UVM/OVM methodologies are the first choice in the semiconductor industry today for creating verification environments. Because UVM/OVM are TLM-based (Transaction Level Modeling), sequence and sequence items play vital roles and must be created in the most efficient way possible in order to reduce rework and simulation time, and to make the verification environment user friendly. This article covers how to write generic and reusable sequences so that it's easy to add a new test case or sequence.

  • Analysis Connections

    An analysis component such as a Monitor sends transactions to another analysis component through a TLM connection which is a chain of objects where each calls the write(t) function in the next.

  • Configuring Registers

    During verification a programmable hardware device needs to be configured to operate in different modes. The register model can be used to automate or to semi-automate this process.

  • Built-in Register Sequences

    The UVM package contains a library of automatic test sequences which are based on the register model. These sequences can be used to do basic tests on registers and memory regions within a DUT.

  • Stories of an AMS Verification Dude: Putting Stuff Together

    I don't know how this came about, but the other day I got hired to do something called AMS Verification. It seems that there is this chip design that combines digital and analog stuff, and I was asked to make sure that all of it works when it's put together and that it does what it was meant to do when they got going in the first place.

  • Metric Analyzers

    Metric Analyzers watch and record non-functional behavior such as latency, power utilization, and other performance-related measurements.

  • Objections

    The UVM_objection class provides a means for sharing a counter between participating components and sequences.

  • Separate Top-Level Modules

    Co-emulation is done by running two distinct synchronized model evaluations - one on a hardware emulator, and one on a software simulator.

  • Split Transactors

    Driver and monitor transactors contain a mixture of transaction-level code to communicate with the testbench, and clock-driven HDL signal accessing code to communicate with the DUT through a virtual interface.

  • Back Pointers

    In the original single top bidirectional driver example, all driver activity is initiated from the testbench domain.

  • Defining an API

    As the timed portion of the traditional UVM transactor must be moved over to the HDL domain.

  • Emulation-Ready Testbench Examples

    This article steps through the process of converting a comprehensive traditional single top UVM example testbench to an equivalent one with a dual domain partitioned structure that is ready for co-emulation with Veloce.

  • Sequence Priority

    The UVM sequence use model allows multiple sequences to access a driver concurrently.