Verification of AHB Protocol For AHB-Wishbone Bridge Using SystemVerilog
Verification of AHB Protocol For AHB-Wishbone Bridge Using SystemVerilog
Volume: 3 Issue: 5
ISSN: 2321-8169
2803 - 2806
_______________________________________________________________________________________________
Samir Shroff
P.G Student
Department of Electronics Engineering
Ahmedabad, Gujarat, India
e-mail: [email protected]
Director
Department of Electronics Engineering
Ahmedabad, Gujarat, India
e-mail:[email protected]
AbstractVerification is the process to demonstrate the functional correctness of design and checks that a product or system meets a set of
design specifications. This paper implements is a novel approach to enable data transfer between two different bus architectures, AHB and
WISHBONE which have different functionalities and characteristics. The coding for this module is designed in the SystemVerilog HDL and
simulated in Questa Sim 10.0b. The Communication is done with AHB as Master and WISHBONE as Slave, hence, achieve error free data
transfer between the two different bus architectures. The DUT has been verified for all possible test cases.
Keywords-AHB;WISHBONE; Verification; SystemverilogEnviornment; Testbench; DUT
__________________________________________________*****_________________________________________________
Functional coverage
I.
INTRODUCTION (HEADING 1)
Assertion
With the increasing complexity of digital systems driven by
Constrained-random stimulus generation
ever increasing demand for faster devices with more features,
Higher-level structures
standard and compatible design. Verification of a design is the
Multithreading and interprocess communication
most critical phase in the chip design cycle. The progress of
Verification components
VLSI technology enables the integration of more than several
Tight integration with event-simulator for control of
million transistors in a single chip to make a SoC (System-onthe design.
Chip). This has made verification the most critical bottleneck
The SystemVerilog code generated has the following
in the chip design flow. Roughly 70 to 80 percent of the design
components. The hierarchy of the code is as shown in Fig 1.
cycle is spent in functional verification.
Different verification languages are there in the VLSI
industry like VHDL, Verilog, systemverilog. Systemverilog is
a special hardware verification language is mostly used in
functional verification. Systemverilog is the industrys first
unified Hardware Description and Verification Language
(HDVL). It became an official IEEE standard in 2005 under
the development of Accellera[1]. The Systemverilog's aim is
to be a single language that is sufficiently expressive to model
digital systems at various levels of abstraction from untimed
functional models all the way through to netlist level. To
support the diverse needs of verification and modelling, it also
provides general-purpose object-oriented (OO) programming
capabilities.
One goal of verification tool designers is in reducing the
Fig.1. Hierarchy of Developed SystemVerilog Environment[3]
complexity of the test bench environment. In this paper, the
development of the verification environment of Advance
The main purpose of a test bench is to check the
High-performance Bus (AHB) using SystemVerilog.
correctness
of the design under test (DUT). For this following
Generator, driver, checker. Monitor, scoreboard is
steps have to be followed
implemented with the proposed integrated verification
Generate stimulus.
environment.
Apply stimulus to the DUT.
II. SYESTEMVERILOG FUNCTIONAL VERIFICATION
Capture the response.
ENVIORNMENT
Check for correctness.
As an extension to Verilog HDL, SystemVerilog has
Measure coverage.
characteristics of both hardware description languages and
hardware verification language. The key features of
SystemVerilog from the verification point are as follows.
2803
IJRITCC | May 2015, Available @ http://www.ijritcc.org
_______________________________________________________________________________________
ISSN: 2321-8169
2803 - 2806
_______________________________________________________________________________________________
The architecture of verification environment developed
for AHB protocol is shown in the fig 2. The different modules
of environment are explained.
TABLE I
SystemVerilog Verification Environment components
Components
Description
Top
Test
Environment
Agent
Generator
and Squencer
Driver
Monitor
Scoreboard
Interface
III.
TESTCASE SENARIO
_______________________________________________________________________________________
ISSN: 2321-8169
2803 - 2806
_______________________________________________________________________________________________
(DUT). Test cases are identified from the design specification.
The verification engineer must design the architecture of the
verification environment at the outset to achieve the ability to
support constrained random test cases in an efficient manner.
In designing our goal is to develop a robust and easy to use
mechanism that facilitates the development of test cases with
minimal impact to the test bench code.
By
wishbone
slave
Read with
wait state
By AHB
master
WISHBONE : adr_o ,
dat_i , ack_i
Hrdata ,
Hready
Read after
write
Write after
read
adr_o,
ack_i ,
Hrdata ,
Htrans ,
stb_o
adr_o ,
dat_o ,
dat_i ,
Hwrite ,
Hrdata ,
we_o
adr_o ,
dat_o ,
Hwrite ,
Hrdata ,
we_o
IV.
Cycle
operation
1
2
Reset
Read
Write
Write with
wait state
by
wishbone
slave
Write with
wait state
by AHB
master
Hresetn , Hclk
AHB:Hwrite,Hready,Haddr,
Hrdata
WISHBONE: adr_o, dat_i,
ack_i
AHB:Hwrite,Hready,Haddr,
Hrdata
WISHBONE: adr_o, dat_i,
ack_i
AHB : Hwrite , Hready ,
Haddr , Hwdata
WISHBONE : adr_o ,
dat_o , ack_i
Read with
wait state
SIMULATION RESULT
Signal
required for
verification
adr_o,
ack_i ,
Hrdata
adr_o,
ack_i ,
Hwdata
adr_o ,
dat_o ,
ack_i ,
Hready
adr_o ,
dat_o ,
ack_i ,
Htrans ,
stb_o
adr_o,
ack_i ,
2805
_______________________________________________________________________________________
ISSN: 2321-8169
2803 - 2806
_______________________________________________________________________________________________
programs made have been compiled and simulated and the
outputs observed are shown. The environment can be reused
easily for different design. By using this verification
environment the DUT has been verified for its functionality.
REFERENCES
[1]
[2]
[3]
V.
COCLUSION
[5]
2806
IJRITCC | May 2015, Available @ http://www.ijritcc.org
_______________________________________________________________________________________