Beruflich Dokumente
Kultur Dokumente
Abstract— The Usage of Field Programmable Gate Arrays generated using HVL & verified automatically during run-
(FPGA) and Application Specific Integrated Circuits (ASICs) time. Functional simulation is considered complete when the
with complex functionalities such as Digital Signal Processing goal of 100% functional coverage is achieved.
(DSP) is increasing in onboard space applications. Verification of In this SV based test bench, control signals output of the
these complex designs within limited schedule and resources is designs are validated using assertions and data processing
challenging. In order to ensure reliable functioning of these
functionalities of the designs are validated with predictor or
designs in all possible run time conditions, functional verification
is required to be carried out thoroughly. Development of an checker. These checkers are generally hand-coded using
automated self-checking verification environment or test higher level of abstraction by the verification engineer.
benches, including generation of bit-accurate golden reference Development of checker for complex functionalities such
values, is complex and time consuming task even with the use of as DSP is complex. This becomes even more challenging for
state-of-the-art Hardware Verification Languages (HVLs) and an onboard design implementing multiple DSP IP cores
methodology such as System-Verilog (SV) and Universal having functionalities such as sine–cosine lookup table, fixed
Verification Methodology (UVM) respectively. to floating point conversion & vice versa, FFT, FIR filter, etc.
This paper discusses a method for functional verification of DSP algorithms are available as standard functions in
DSP based VLSI design using SV and Matlab. The architecture
MATLAB. If these functions can be used in the test bench as
of verification environment and technique for coupling of Matlab
with SV based verification environment and generation of bit- golden reference models/checker, the test bench can be
accurate golden references, in real time is also discussed in detail, simplified and overall efficiency of the verification can be
along with two case studies. significantly improved. This paper discusses the verification
environment development using SV and methodology to
Keywords— DSP, VLSI, UVM, predictor, coverage driven couple Matlab with SV.
verification, DPI
II. PREDICTOR IN VERIFICATION ENVIRONMENT
I. INTRODUCTION
Verification of a VLSI design consists of two major steps.
To meet ever increasing functional requirements, digital 1. Stimulus generation
VLSI designs are getting complex. Design teams are packing 2. Analysis of the design response
more & more logic gates onto a single chip to achieve desired In stimulus generation step, the design is configured in a
functionality and performance within the specified footprint. particular mode and stimulus is applied. In analysis part, the
Functional verification of such designs with tradition approach actual verification is performed. A sample test bench
of using directed test benches does not provide sufficient architecture performing both these operations automatically is
confidence within given time schedule. Test benches written illustrated in Figure 1.
in SV gives advantages in terms enabling constrained random The test bench (verification environment) developed in SV
stimulus generation, self-checking and assertion based using UVM is composed of reusable verification environment
verification along with defining functional coverage matrix. called verification components. Each component is
Random testing improves productivity over manual testing, in encapsulated, ready-to-use, and configurable which can be
terms of number of test vectors produced and generates test used for verification of any interface protocol, design sub-
cases not explicitly thought by verification engineer. Binding module or a full system. The verification components along
assertions to a design during simulation phase identifies with device under test (DUT) is used to verify implementation
design flaws in real-time and reduces debugging time of the protocol or design architecture.
significantly over non-assertion based design. Simulated
design’s output is compared with golden reference values