System Modeling

RTL simulations are giving way to Transaction Level Modeling for more and more modern SoC projects. For one, RTL simulators have not been able to keep up on simulation speed requirements for growing complexity of the designs. Another factor contributing to the trend is the need for hardware software coverification. At Coverify our approach towards ESL modeling is multipronged:

We have learnt to take advantage of multicore programming to accelerate behavioral simulations

We excel in integrating various simulation tools and flows across the spectrum of varied abstraction levels

For testbenching System Level simulations, we have mastered the art of integrating SystemVerilog with C++ using DPI layer

Software Driven Verification

With the intricate binding between the Hardware and Software, it is becoming increasingly difficult to verify them in isolation. Over the last couple of years, Coverify has pioneered techniques to translate software interactions with hardware into TLM transactions that drive stimulus into a hardware testbench simulation. These techniques can help you validate your device drivers early in the design cycle and also make sure that your hardware design is compatible with software. Software Driven Verification provides you with:

A software development platform, complete with device drivers and application software

The device driver and the application executes in a caged emulation environment such as Qemu

A C++ DPI layer interfaces the software environment with testbench coded in SystemVerilog

A C++ reference model that integrates with the testbench or alternatively as a software model for the development environment

FPGA Prototyping/Emulation

Field Programmable Gate Arrays are considered a primary technology driver for the Internet of Things domain. Given the intricately heterogenous nature of the IoT devices, a comprehensive verification solution for IoT devices has to include in-system testing of the FPGA devices. Embedded FPGA verification enables:

Coverification of sensors and other analog portions of the IoT device.

An efficient verification environment, fast enough to provide a viable software development environment

Scripting and Automation

A definitive verification like the UVM is necessary to accelerate verification productivity and enable reuse. Scripting and automation, on the other hand, are required to gain consistecy and mitigate the risk of human errors. Besides, UVM is not a one size fits all solution, the vagaries and variations of the design require custom tailor made solutions. Coverify can help you with:

PLI based design introspection that can ensure consitency in the RTL design and/or UVM testbench