SlideShare a Scribd company logo
1 of 5
Download to read offline
IJSRD - International Journal for Scientific Research & Development| Vol. 3, Issue 10, 2015 | ISSN (online): 2321-0613
All rights reserved by www.ijsrd.com 512
A Survey of Functional Verification Techniques
Aartika Bansal1
Nagendra Sah2
Anantharaj T.V.3
1
P.G Student 2
Assistant Professor
1,2
PEC University of Technology, Chandigarh, India 3
ASIC Verification Department SanDisk,
Bangalore, India
Abstract— In this paper, we present a survey of various
techniques used in functional verification of industry
hardware designs. Although the use of formal verification
techniques has been increasing over time, there is still a
need for an immediate practical solution resulting in an
increased interest in hybrid verification techniques. Hybrid
techniques combine formal and informal (traditional
simulation based) techniques to take the advantage of both
the worlds. A typical hybrid technique aims to address the
verification bottleneck by enhancing the state space
coverage.
Key words: Functional verification, simulation, formal
methodology, hybrid techniques
I. INTRODUCTION
Functional verification of a circuit is the process to ensure
that the design implementation conforms to the original
circuit specifications. The traditional and the most common
method of verification has been through simulation. But
recently, there is an increased interest in formal verification
methods such as model checking, equivalence checking,
language containment and theorem proving. Formal
verification is a viable option to improve design quality. As
the size and complexity of System on Chip (SoC) design has
been ever increasing, verification engineers face the
challenge in developing efficient verification strategies and
ensure that the designs are completely bug-free. Early
detection of errors is desired since it saves a lot of time,
effort and manufacturing costs. A general theme being
practiced is to apply multiple verification techniques which
complement one another, resulting in the overall efficiency
of verification tool. Such integration must be carried out
strategically and precisely.
Simulation remains the most-practiced technique
for most of the real life verification issues in industry
practice. Its scalability and easy applicability to almost any
design makes it suitable for most of the verification tasks.
But over time, its effectiveness to find corner case errors is
significantly decreasing. When used as a stand-alone
technique, it can detect simple bugs only. On the contrary,
formal techniques can, in principle, find all the bugs in a
design model but their applicability in practice is limited.
The skilled manual guidance needed for theorem proving
and the state explosion in model checking are the problems
confronted in these techniques. So there is a need of an
immediate practical solution which gives rise to a keen
interest in the integration of formal and informal techniques,
referred to as hybrid methodology.
II. FORMAL VERIFICATION
Formal verification methods comprise the techniques that
logically prove the correctness of a hardware design. No test
vectors are required in formal verification as opposed to the
traditional simulation based methods. There are three
subcategories in these methods:
a) Theorem proving
b) Model checking
c) Equivalence checking
A. Theorem proving methods:
These methods demand the representation of both the
system and its properties in the form of formulas in some
mathematical (formal) logic [1]. The logic defines a set of
axioms and inference rules on the basis of which the tool
finds the proof of a property. Thus, theorem proving is the
process of finding the proofs from the axioms of the system.
Some well-known theorem proving systems are: Boyer-
Moore (first order logic) [2], Higher-order logic (HOL),
PVS [3]. But these systems are hard to use since the
designers need expertise in this area to be capable of using
these systems.
B. Model Checking:
In model checking, a finite state model (FSM) for the
system is built and then the tool checks whether the desired
property holds. The proofs are attempted by exhaustion
which means for a given system, the tool generates all the
possible states the system can be in and then tests each state
individually [1, 2, 4]. K. Fishler et al. have explored the
verification of VHDL designs with COSPAN which is a
model checker [5]. K. McMillan details the Symbolic Model
Checking to solve the problem of state space explosion
faced in model checking. Cadence Design Systems [7] and
Lucent Technologies [8] have developed Formal Check
Model Checker for model checking verification. The major
drawback of model checking is the state space explosion.
These tools can handle a limited size circuit only. Moreover,
model checkers can skip an error if the designer did not
specify a property.
C. Equivalence checking:
This technique is also based on the FSM. This method
checks the equivalence between a reference model and the
design to be verified, both expressed as FSMs. The two are
said to be equivalent if they produce the same output for
every possible input stimulus. Design Verifyer developed by
Chrysalic Symbolic Design [9], Affirma Equivalence
Checker developed by Cadence Design System [10],
Formality developed by Synopsys [11] are some of the
examples of equivalence checkers. This method can be used
to verify the equivalence between gate level description and
the RTL code. But to verify RTL code, we cannot use this
method as there is no reference model for comparison. State
space explosion is a problem in this approach too.
III. INFORMAL VERIFICATION
Since formal verification techniques cannot handle large
designs due to state space explosion, simulation based
A Survey of Functional Verification Techniques
(IJSRD/Vol. 3/Issue 10/2015/106)
All rights reserved by www.ijsrd.com 513
verification remains the major technique to perform
hardware design verification. A traditional methodology for
the VLSI design and verification is shown in figure 1. As
shown, once the circuit specifications are ready and it has
been partitioned into blocks, the next step is to write RTL
code for each block and then combine these blocks into
whole chip.
Fig. 1: Traditional VLSI Design Methodology
The verification engineers then develop the test benches for
the simulation of the device under test (DUT). The actual
circuit response is compared against the expected response
for the pre-determined stimuli. If the match occurs, the test
passes otherwise it fails. It takes a huge amount of time and
resources to write test benches to verify the circuit at RTL
level.
Instead of waiting to complete the RTL description
of the circuit and then start verification process, we must
adopt a concurrent verification methodology as shown in
figure 2. In this methodology, the verification team starts
writing test bench as soon as the system specification is
complete and the designers start writing the RTL code.
Initially they run simulation on the developed
behavioral models of the blocks. Once the RTL code is
ready, the model is replaced by the RTL code. This saves a
lot of time.
The Vera Verification System developed by
Synopsys [12] and the Spec-Man: Spec-based functional
verification by Versity Design [13] are the simulation based
tools that use better test bench construction languages.
Major drawbacks of informal techniques comprise long
simulation runs, a lot of effort and time needed to write the
test bench and difficulty in finding the stimuli for the corner
cases.
Fig. 2: Concurrent Verification Methodology
IV. HYBRID TECHNIQUES
These techniques combine at least two methods which
complement one another‟s strengths and weaknesses
effectively. Bartley et al. showed that with the increasing
complexity and size of the circuit, the most effective way of
functional verification is to combine the strengths of
different techniques [14]. We classify the hybrid functional
verification methods as follows:
a) Combination of formal and informal techniques,
b) Combination of two formal techniques,
c) Combination of two informal techniques,
d) Combination of multiple verification techniques.
A. Combination of formal and informal techniques:
Since the informal techniques are inherently incomplete in
finding all the design errors, the combination of one with
formal technique yields a technique that is incomplete.
1) Control circuit exploration:
The exploration of control circuits can address the problem
of increasing state space coverage. Horowitz et al. detailed
a generalized technique that is viable for a large set of
circuit types [15]. This technique automatically generates
the test vectors that make the microprocessor exercise all
control logic transitions in simulation. It does not target
only certain test cases but delves into many improbable
conditions in corner cases. Hence, it maximizes the
probability of catching bugs through simulation.
Moundanos et al. explored coverage-directed test
generation in which user provided stimuli help to discover
the interesting control space behavior of large designs.
Geist et al. have proposed to construct an abstract model
with key features of the original design [17]. These models
help to alleviate the state explosion problem by the
imposition of a less constrained upper bound.
2) Directed Functional Test Generation:
Typically, verification teams in industries have a set of
conditions to meet before the design is taped out. These
conditions are constrained by a combination of coverage
metrics, corner cases and design complexity. The
verification engineers are to detect the design errors in the
way of reaching these conditions. Pseudo Random Test
A Survey of Functional Verification Techniques
(IJSRD/Vol. 3/Issue 10/2015/106)
All rights reserved by www.ijsrd.com 514
Generation methods are ineffective to cover specific corner
cases. So, only simulation is not enough to meet the needs
of directed verification. Geist et al. presented a study of a
formal verification using coverage models to specify
functional tests [17]. This hybrid technique has, in fact,
resulted in improved functional verification. Ganai et al.
proposed a rarity based metric for state prioritization that
enabled an efficient directed functional search of a large
state space [18].
Symbolic simulation is an effective formal
verification technique but fails for large and complex real
designs. Yuan et al. showed that the combination of formal
verification and simulation to achieve better coverage in
larger circuits can find bugs far more quickly as compared
to using only formal verification [19].
3) Automatic Test Pattern Generation (ATPG) and formal
techniques:
Traditionally, techniques using ATPG localize the bug
search instead of searching the entire state space at once.
Since formal techniques can address the incompleteness of
ATPG, the two can be combined effectively.
Jones and Privitera proposed the technique of automatic
generation of test vectors for functional verification which
gives advantage of random as well as directed testing [20].
They showed that formal specifications can be given as
inputs to a test generator. The main algorithms combine
ATPG and BDDs (Binary Decision Diagrams) to generate
the directed test vectors.
Boppana et al. proposed the usage of sequential
ATPG for model checking [21]. They studied the efficiency
of sequential ATPG for state space exploration. Huan and
Cheng proposed the combination of word-level sequential
ATPG techniques with modular constraint solving
techniques to verify safety properties [22]. They
transformed the problem into a counter example generation
problem. Sequential ATPG loses its effectiveness for large
complex circuits. Vedula et al. solved this problem by using
a well-known technique called program slicing. They
reduced the module under test, hence accelerating
sequential ATPG efficiency in solving the Bounded Model
Checking (BMC) problem.
4) Constraint-based verification:
In a constraint-based random verification methodology, the
user provides constraints that model the appropriate
interaction of the DUT with its environment. Using these
constraints, random stimuli are generated. The generated
stimuli can mimic the actual environment. Yuan et al.
invented such a set of constraint-based verification
techniques [24]. Wu and Huang proposed to implement
constraints with variable ordering so as to put the required
efforts on the cared patterns [25]. However, they found that
it may lead to degradation of pattern generation speed and
distribution. To overcome this challenge, they provided a
technique to preanalyze the solution space by splitting the
ranges of variables. Yehia showed a standard and effective
way to avoid redundant stimuli by constructing a link
between the collected coverage and constrained random
stimuli at runtime [26]. The beauty of the constraint-based
verification lies in the fact that it works at various
abstraction levels of a design viz. module, block and unit
level.
B. Combination of formal techniques:
Researchers face the challenge of effectively combining
theorem proving and model checking. Industrial-scale
efforts encounter limits on model-checking capacity even
today. Some of these limits can be alleviated by using
theorem proving to compose verification results.
1) Trajectory evaluation and theorem proving:
Joyce and Seger proposed the combination of trajectory
evaluation and theorem proving [27]. They used the former
as a decision procedure for the HOL proof system. Later,
Seger et al. showed that combination of STE with
lightweight theorem proving in HOL can be useful in
industrial scale verification[28].
2) Composition of model checker runs:
Camelleri used a theorem prover in combination with a
model checker to verify a cache protocol [29]. He used
separate tools to verify various properties but did not
combine the results mechanically. Jang et al. used a
technique of model checking referred to as computation
tree logic (CTL) to verify different properties of a
microcontroller [30]. Then, he achieved the proof of the
top-level specification through a composition of model
checking runs.
C. Combination of informal techniques:
Kuehlmann et al. detailed an algorithm that uses
probabilistic techniques [31]. The algorithm assigns each
state a probability based on its chance to lead to a target
state. On the basis of assigned probabilities, a set of ranks is
assigned to the design states. This algorithm uses the
ranking system to find a path from the initial states to the
target states and can act as complement to the existing
hybrid techniques for state space research. But it may lead
to dead-end states. Yuan et al. proposed the use of input
biasing to cover corner cases instead of using an explicit
test bench [32]. Researchers have also explored the
learning-based techniques. Fine and Ziv reported the use of
computer learning and Bayesian networks [33]. Shimizu
and Dill describe the coverage-directed informal methods
that collect coverage information and derive the stimuli
through the use of formal descriptions [34]. The description
lists the interface properties of a bus protocol. But the listed
properties are localized in time. Tasiran et al. proposed a
tag coverage metric which considers a code segment to be
covered only when it has executed and the effect has been
recorded [35]. The metric is used to guide a semiformal test
generation algorithm which is based on the analysis of the
circuit modeled as a Markov chain in the steady state.
D. Combination of multiple techniques:
Ho et al. developed the very first successful tool viz.
Ketchum which combined several verification techniques
into a single hybrid technique [36]. The tool used the
capabilities like test pattern generation and non-reachability
analysis in order to get improvement over the traditional
simulation techniques. Ketchum combines simulation with
symbolic simulation, SAT-based BMC, symbolic fixpoint
computation and many more. Non-reachability analysis
helps to focus on coverage issues earlier in the design
cycle. Ho et al. experimentally found that Ketchum
provides a tenfold capacity increase compared to previous
results.
A Survey of Functional Verification Techniques
(IJSRD/Vol. 3/Issue 10/2015/106)
All rights reserved by www.ijsrd.com 515
V. CONCLUSION
In this paper, we have presented a number of verification
techniques for industrial hardware designs. A single
verification technique is not enough to fulfill all the needs
of today‟s industrial design verification environment.
Hence, further improvements are sought in this area. Future
directions may include efforts to increase the tool capacity
and accuracy to develop new verification techniques which
would be better optimized to solve the overall verification
challenges. The hybrid tools may be taken a step further to
include features like circuit pre-analysis, dynamic
interaction between verification methods and manual
guidance to handle real industrial and complex decision
issues.
REFERENCES
[1] E. M. Clarke, J. M. Wing, “Formal Methods: State of
the Art and Future Directions,” ACM Computing
Surveys, Vol. 28, No. 4, pp. 627-643, December 1996.
[2] R.S. Boyer and J.S. Moore, A Computational Logic,
Academic Press, New York, 1979.
[3] S. Owre, J. Rushby, and N. Shankar, “PVS: A
prototype verification system,” in Eleventh
International Conference on Automated Deduction
(CADRE), Vol. 607 of lecture Notes in Artificial
Intelligence, D. Kapur Ed., Springer-Verlag, pp. 748-
752, 1992.
[4] E. Cerny, X. Song, “Formal Verification Methods”: A
short course, University of Montreal, Montreal,
Canada, 1997.
[5] K. Fishler, and R. Kurshan, “Verifying VHDL designs
with COSPAN,” in Formal Hardware Verification:
Method and Systems in Comparison, LNCS 1287, Ed.
Kropf, Springer-Verlag, pp. 206-247, 1997.
[6] K. McMillan, Symbolic Model Checking: An
Approach to the state Explosion Problem, Kluwer
Academic Publishers, 1993.
[7] Cadence Design Systems, Inc., “FormalCheck model
checker,” http://www.cadence.com
[8] Lucent Technologies, Inc. “FormalCheck-Model
checker,” http://www.belllabs.com/org/blda/product.
formal.htm1.
[9] Chrysalis Symbolic Design, Inc., “Design Verifyer,”
http://www.chrysalis.com
[10]Cadence Design Systems, Inc., “Affirma Equivalence
Checker,” http://www.cadence.com
[11]Synopsys, Inc., “Formality,” http://www.synopsys.com
[12]Synopsys, Inc., “The Vera Verification System,”
http://www.synopsys.com
[13]Versity Design, Inc., “Spec-man: spec-based functional
verification” http://www.versity.com
[14]M.G. Bartley, D. Galpin, and T. Blackmore, „„A
Comparison of Three Verification Techniques:
Directed Testing, Pseudo-Random Testing and
Property Checking,‟‟ Proc. 39th Design Automation
Conf. (DAC 02), ACM Press, 2002, pp. 819-823.
[15]M.A. Horowitz et al., „„Architecture Validation for
Processors,‟‟ Proc. 22nd Ann. Int‟l Symp. Computer
Architecture (ISCA 95), IEEE CS Press, 1995, pp.
404-413.
[16]D. Moundanos, J.A. Abraham, and Y.V. Hoskote,
„„Abstraction Techniques for Validation Coverage
Analysis and Test Generation,‟‟ IEEE Trans.
Computers, vol. 47, no. 1, Jan. 1998, pp. 2-14.
[17]D. Geist et al., „„Coverage-Directed Test Generation
Using Symbolic Techniques,‟‟ Proc. 1st Int‟l Conf.
Formal Methods in Computer-Aided Design, LNCS
1166, Springer-Verlag, 1996, pp. 143-158.
[18]M. Ganai et al., „„SIVA: A System for Coverage-
Directed State Space Search,‟‟ J. Electronic Testing:
Theory and Applications, vol. 17, no. 1, Feb. 2001, pp.
11-27.
[19]J. Yuan et al., „„On Combining Formal and Informal
Verification,‟‟ Proc. 9th Int‟l Conf. Computer-Aided
Verification, LNCS 1254, Springer-Verlag, 1997, pp.
376-387.
[20]K.D. Jones and J.P. Privitera, „„The Automatic
Generation of Functional Test Vectors for Rambus
Designs,‟‟ Proc. 33rd Design Automation Conf. (DAC
96), ACM Press, 1996, pp. 415-420.
[21]V. Boppana et al., „„Model Checking Based on
Sequential ATPG,‟‟ Proc. 11th Int‟l Conf. Computer
Aided Verification, LNCS 1633, Springer, 1999, pp.
418-430.
[22]C.-Y. Huan and K.-T. Cheng, „„Using Word-Level
ATPG and Modular Arithmetic Constraint-Solving
Techniques for Assertion Property Checking,‟‟ IEEE
Trans. Computer-Aided Design of Integrated Circuits
and Systems, vol. 20, no. 3, Mar. 2001, pp. 381-391.
[23]V.M. Vedula, W.J. Townsend, and J.A. Abraham,
„„Program Slicing for ATPG-Based Property
Checking,‟‟ Proc. 17th Int‟l Conf. VLSI Design
(VLSID 04), IEEE CS Press, 2004, pp. 591-596.
[24]J. Yuan, C. Pixley, and A. Aziz, Constraint-Based
Verification, Springer, 2006.
[25]Bo-Han Wu, Chung-Yang Huang, “A Robust General
Constrained Random Pattern Generator for Constraints
with Variable Ordering”, IEEE/ACM International
Conference on Computer-Aided Design (ICCAD)
2012, November 5-8, 2012, San Jose, California, USA.
[26]A. Yehia, “Faster Coverage Closure: Runtime
Guidance of Constrained Random Stimuli by Collected
Coverage” IEEE Design and Verification Conference
(DVC) 2013.
[27]J.J. Joyce and C.H. Seger, „„Linking BDD-Based
Symbolic Evaluation to Interactive Theorem Proving,‟‟
Proc. 30th Design Automation Conf. (DAC 93), ACM
Press, 1993, pp. 469-474.
[28]C.-J.H. Seger et al., „„An Industrially Effective
Environment for Formal Hardware Verification,‟‟
IEEE Trans. Computer-Aided Design of Integrated
Circuits and Systems, vol. 24, no. 9, Sept. 2005, pp.
1381-1405.
[29]A. Camilleri, „„A Hybrid Approach to Verifying
Liveness in a Symmetric Multi-Processor,‟‟ Proc. 10th
Int‟l Conf. Theorem Proving in Higher-Order Logics
(TPHOLs 97), LNCS 1275, Springer, 1997, pp. 33-48.
[30]J.-Y. Jang et al., „„Formal Verification of FIRE: A
Case Study,‟‟ Proc. 34th Design Automation Conf.
(DAC 97), ACM Press, 1997, pp. 173-177.
[31]A. Kuehlmann, K.L. McMillan, and R.K. Brayton,
„„Probabilistic State Space Search,‟‟ Proc. Int‟l Conf.
A Survey of Functional Verification Techniques
(IJSRD/Vol. 3/Issue 10/2015/106)
All rights reserved by www.ijsrd.com 516
Computer-Aided Design (ICCAD 99), IEEE CS Press,
1999, pp. 574-579.
[32]J. Yuan et al., „„Modeling Design Constraints and
Biasing in Simulation Using BDDs,‟‟ Proc. Int‟l Conf.
Computer- Aided Design (ICCAD 99), IEEE CS Press,
1999, pp. 584-590.
[33]S. Fine and A. Ziv, „„Coverage Directed Test
Generation for Functional Verification Using Bayesian
Networks,‟‟ Proc. 40th Design Automation Conf.
(DAC 03), ACM Press, 2003, pp. 286-291.
[34]K. Shimizu and D.L. Dill, „„Deriving a Simulation
Input Generator and a Coverage Metric from a Formal
Specification,‟‟ Proc. 39th Design Automation Conf.
(DAC 02), ACM Press, 2002, pp. 801-806.
[35]S. Tasiran et al., „„A Functional Validation Technique:
Biased-Random Simulation Guided by Observability-
Based Coverage,‟‟ Proc. IEEE Int‟l Conf. Computer
Design (ICCD 01), IEEE CS Press, 2001, pp. 82-88.
[36]P.-H. Ho et al., „„Smart Simulation Using
Collaborative Formal and Simulation Engines,‟‟ Proc.
Int‟l Conf. Computer-Aided Design (ICCAD 00),
IEEE CS Press, 2000, pp. 120-126.

More Related Content

What's hot

Welcome to International Journal of Engineering Research and Development (IJERD)
Welcome to International Journal of Engineering Research and Development (IJERD)Welcome to International Journal of Engineering Research and Development (IJERD)
Welcome to International Journal of Engineering Research and Development (IJERD)IJERD Editor
 
Testing artifacts test cases
Testing artifacts   test casesTesting artifacts   test cases
Testing artifacts test casesPetro Chernii
 
Software Testing: Test Design and the Project Life Cycle
Software Testing: Test Design and the Project Life CycleSoftware Testing: Test Design and the Project Life Cycle
Software Testing: Test Design and the Project Life CycleDerek Callaway
 
Đề thi mẫu 1(ISTQB)
Đề thi mẫu 1(ISTQB)Đề thi mẫu 1(ISTQB)
Đề thi mẫu 1(ISTQB)Jenny Nguyen
 
Specification-based Verification of Incomplete Programs
Specification-based Verification of Incomplete ProgramsSpecification-based Verification of Incomplete Programs
Specification-based Verification of Incomplete ProgramsIDES Editor
 
Istqb question-paper-dump-6
Istqb question-paper-dump-6Istqb question-paper-dump-6
Istqb question-paper-dump-6TestingGeeks
 
Istqb exam sample_paper_3
Istqb exam sample_paper_3Istqb exam sample_paper_3
Istqb exam sample_paper_3TestingGeeks
 
Istqb question-paper-dump-11
Istqb question-paper-dump-11Istqb question-paper-dump-11
Istqb question-paper-dump-11TestingGeeks
 
Istqb exam sample_paper_1
Istqb exam sample_paper_1Istqb exam sample_paper_1
Istqb exam sample_paper_1TestingGeeks
 

What's hot (15)

Welcome to International Journal of Engineering Research and Development (IJERD)
Welcome to International Journal of Engineering Research and Development (IJERD)Welcome to International Journal of Engineering Research and Development (IJERD)
Welcome to International Journal of Engineering Research and Development (IJERD)
 
Testing artifacts test cases
Testing artifacts   test casesTesting artifacts   test cases
Testing artifacts test cases
 
MTV15
MTV15MTV15
MTV15
 
Software Testing: Test Design and the Project Life Cycle
Software Testing: Test Design and the Project Life CycleSoftware Testing: Test Design and the Project Life Cycle
Software Testing: Test Design and the Project Life Cycle
 
SE Quiz
SE QuizSE Quiz
SE Quiz
 
S440999102
S440999102S440999102
S440999102
 
Đề thi mẫu 1(ISTQB)
Đề thi mẫu 1(ISTQB)Đề thi mẫu 1(ISTQB)
Đề thi mẫu 1(ISTQB)
 
Cast 14 2 sample exam
Cast 14 2 sample examCast 14 2 sample exam
Cast 14 2 sample exam
 
Specification-based Verification of Incomplete Programs
Specification-based Verification of Incomplete ProgramsSpecification-based Verification of Incomplete Programs
Specification-based Verification of Incomplete Programs
 
Manual testing
Manual testingManual testing
Manual testing
 
Istqb question-paper-dump-6
Istqb question-paper-dump-6Istqb question-paper-dump-6
Istqb question-paper-dump-6
 
50120140502017
5012014050201750120140502017
50120140502017
 
Istqb exam sample_paper_3
Istqb exam sample_paper_3Istqb exam sample_paper_3
Istqb exam sample_paper_3
 
Istqb question-paper-dump-11
Istqb question-paper-dump-11Istqb question-paper-dump-11
Istqb question-paper-dump-11
 
Istqb exam sample_paper_1
Istqb exam sample_paper_1Istqb exam sample_paper_1
Istqb exam sample_paper_1
 

Viewers also liked

Desafío cs sociales 1
Desafío cs sociales 1Desafío cs sociales 1
Desafío cs sociales 1graasuncion
 
Theorem-proving Verification of Multi-clock Synchronous Circuits on Multimoda...
Theorem-proving Verification of Multi-clock Synchronous Circuits on Multimoda...Theorem-proving Verification of Multi-clock Synchronous Circuits on Multimoda...
Theorem-proving Verification of Multi-clock Synchronous Circuits on Multimoda...Shunji Nishimura
 
09 - Program verification
09 - Program verification09 - Program verification
09 - Program verificationTudor Girba
 
Program verification
Program verificationProgram verification
Program verificationhyunglak kim
 
Automated theorem proving for special functions: the next phase
Automated theorem proving for special functions: the next phaseAutomated theorem proving for special functions: the next phase
Automated theorem proving for special functions: the next phaseLawrence Paulson
 
20130928 automated theorem_proving_harrison
20130928 automated theorem_proving_harrison20130928 automated theorem_proving_harrison
20130928 automated theorem_proving_harrisonComputer Science Club
 
Program Verification / Automated Theorem Proving
Program Verification / Automated Theorem ProvingProgram Verification / Automated Theorem Proving
Program Verification / Automated Theorem Provinglokeshwer2
 
Basics of Functional Verification - Arrow Devices
Basics of Functional Verification - Arrow DevicesBasics of Functional Verification - Arrow Devices
Basics of Functional Verification - Arrow DevicesArrow Devices
 
Functional verification techniques EW16 session
Functional verification techniques  EW16 sessionFunctional verification techniques  EW16 session
Functional verification techniques EW16 sessionSameh El-Ashry
 
Formal Verification Techniques
Formal Verification TechniquesFormal Verification Techniques
Formal Verification TechniquesDVClub
 

Viewers also liked (11)

Desafío cs sociales 1
Desafío cs sociales 1Desafío cs sociales 1
Desafío cs sociales 1
 
Theorem-proving Verification of Multi-clock Synchronous Circuits on Multimoda...
Theorem-proving Verification of Multi-clock Synchronous Circuits on Multimoda...Theorem-proving Verification of Multi-clock Synchronous Circuits on Multimoda...
Theorem-proving Verification of Multi-clock Synchronous Circuits on Multimoda...
 
09 - Program verification
09 - Program verification09 - Program verification
09 - Program verification
 
Program verification
Program verificationProgram verification
Program verification
 
Automated theorem proving for special functions: the next phase
Automated theorem proving for special functions: the next phaseAutomated theorem proving for special functions: the next phase
Automated theorem proving for special functions: the next phase
 
20130928 automated theorem_proving_harrison
20130928 automated theorem_proving_harrison20130928 automated theorem_proving_harrison
20130928 automated theorem_proving_harrison
 
Program Verification / Automated Theorem Proving
Program Verification / Automated Theorem ProvingProgram Verification / Automated Theorem Proving
Program Verification / Automated Theorem Proving
 
Basics of Functional Verification - Arrow Devices
Basics of Functional Verification - Arrow DevicesBasics of Functional Verification - Arrow Devices
Basics of Functional Verification - Arrow Devices
 
Functional verification techniques EW16 session
Functional verification techniques  EW16 sessionFunctional verification techniques  EW16 session
Functional verification techniques EW16 session
 
Formal Verification Techniques
Formal Verification TechniquesFormal Verification Techniques
Formal Verification Techniques
 
Formal verification
Formal verificationFormal verification
Formal verification
 

Similar to A Survey of functional verification techniques

Advanced Verification Methodology for Complex System on Chip Verification
Advanced Verification Methodology for Complex System on Chip VerificationAdvanced Verification Methodology for Complex System on Chip Verification
Advanced Verification Methodology for Complex System on Chip VerificationVLSICS Design
 
International Journal of Engineering Research and Development
International Journal of Engineering Research and DevelopmentInternational Journal of Engineering Research and Development
International Journal of Engineering Research and DevelopmentIJERD Editor
 
Verification and validation of knowledge bases using test cases generated by ...
Verification and validation of knowledge bases using test cases generated by ...Verification and validation of knowledge bases using test cases generated by ...
Verification and validation of knowledge bases using test cases generated by ...Waqas Tariq
 
Transaction Based Verification Methodology - 2000
Transaction Based Verification Methodology - 2000Transaction Based Verification Methodology - 2000
Transaction Based Verification Methodology - 2000Steve Cox
 
30 February 2005 QUEUE rants [email protected] DARNEDTestin.docx
30  February 2005  QUEUE rants [email protected] DARNEDTestin.docx30  February 2005  QUEUE rants [email protected] DARNEDTestin.docx
30 February 2005 QUEUE rants [email protected] DARNEDTestin.docxtamicawaysmith
 
6 article azojete vol 9 51 67
6 article azojete vol 9 51 676 article azojete vol 9 51 67
6 article azojete vol 9 51 67Oyeniyi Samuel
 
Importance of Testing in SDLC
Importance of Testing in SDLCImportance of Testing in SDLC
Importance of Testing in SDLCIJEACS
 
International Journal of Engineering Research and Development (IJERD)
International Journal of Engineering Research and Development (IJERD)International Journal of Engineering Research and Development (IJERD)
International Journal of Engineering Research and Development (IJERD)IJERD Editor
 
UVM ARCHITECTURE FOR VERIFICATION
UVM ARCHITECTURE FOR VERIFICATIONUVM ARCHITECTURE FOR VERIFICATION
UVM ARCHITECTURE FOR VERIFICATIONIAEME Publication
 
Formal Verification Of An Intellectual Property In a Field Programmable Gate ...
Formal Verification Of An Intellectual Property In a Field Programmable Gate ...Formal Verification Of An Intellectual Property In a Field Programmable Gate ...
Formal Verification Of An Intellectual Property In a Field Programmable Gate ...IRJET Journal
 
Automated Formal Verification of SystemC/C++ High-Level Synthesis Models
Automated Formal Verification of SystemC/C++ High-Level Synthesis ModelsAutomated Formal Verification of SystemC/C++ High-Level Synthesis Models
Automated Formal Verification of SystemC/C++ High-Level Synthesis ModelsSergio Marchese
 
OS VERIFICATION- A SURVEY AS A SOURCE OF FUTURE CHALLENGES
OS VERIFICATION- A SURVEY AS A SOURCE OF FUTURE CHALLENGESOS VERIFICATION- A SURVEY AS A SOURCE OF FUTURE CHALLENGES
OS VERIFICATION- A SURVEY AS A SOURCE OF FUTURE CHALLENGESIJCSES Journal
 
ISTQB Advanced Study Guide - 7
ISTQB Advanced Study Guide - 7ISTQB Advanced Study Guide - 7
ISTQB Advanced Study Guide - 7Yogindernath Gupta
 
Validation and Verification of SYSML Activity Diagrams Using HOARE Logic
Validation and Verification of SYSML Activity Diagrams Using HOARE Logic Validation and Verification of SYSML Activity Diagrams Using HOARE Logic
Validation and Verification of SYSML Activity Diagrams Using HOARE Logic ijseajournal
 
Making Model-Driven Verification Practical and Scalable: Experiences and Less...
Making Model-Driven Verification Practical and Scalable: Experiences and Less...Making Model-Driven Verification Practical and Scalable: Experiences and Less...
Making Model-Driven Verification Practical and Scalable: Experiences and Less...Lionel Briand
 
Test Case Optimization and Redundancy Reduction Using GA and Neural Networks
Test Case Optimization and Redundancy Reduction Using GA and Neural Networks Test Case Optimization and Redundancy Reduction Using GA and Neural Networks
Test Case Optimization and Redundancy Reduction Using GA and Neural Networks IJECEIAES
 
verification of autonomous robotic system
verification of autonomous robotic systemverification of autonomous robotic system
verification of autonomous robotic systemASJAYASURYA
 
Combinatorial testing ppt
Combinatorial testing pptCombinatorial testing ppt
Combinatorial testing pptKedar Kumar
 
A Novel Approach to Derive the Average-Case Behavior of Distributed Embedded ...
A Novel Approach to Derive the Average-Case Behavior of Distributed Embedded ...A Novel Approach to Derive the Average-Case Behavior of Distributed Embedded ...
A Novel Approach to Derive the Average-Case Behavior of Distributed Embedded ...ijccmsjournal
 

Similar to A Survey of functional verification techniques (20)

Advanced Verification Methodology for Complex System on Chip Verification
Advanced Verification Methodology for Complex System on Chip VerificationAdvanced Verification Methodology for Complex System on Chip Verification
Advanced Verification Methodology for Complex System on Chip Verification
 
International Journal of Engineering Research and Development
International Journal of Engineering Research and DevelopmentInternational Journal of Engineering Research and Development
International Journal of Engineering Research and Development
 
Verification and validation of knowledge bases using test cases generated by ...
Verification and validation of knowledge bases using test cases generated by ...Verification and validation of knowledge bases using test cases generated by ...
Verification and validation of knowledge bases using test cases generated by ...
 
Transaction Based Verification Methodology - 2000
Transaction Based Verification Methodology - 2000Transaction Based Verification Methodology - 2000
Transaction Based Verification Methodology - 2000
 
30 February 2005 QUEUE rants [email protected] DARNEDTestin.docx
30  February 2005  QUEUE rants [email protected] DARNEDTestin.docx30  February 2005  QUEUE rants [email protected] DARNEDTestin.docx
30 February 2005 QUEUE rants [email protected] DARNEDTestin.docx
 
6 article azojete vol 9 51 67
6 article azojete vol 9 51 676 article azojete vol 9 51 67
6 article azojete vol 9 51 67
 
Importance of Testing in SDLC
Importance of Testing in SDLCImportance of Testing in SDLC
Importance of Testing in SDLC
 
International Journal of Engineering Research and Development (IJERD)
International Journal of Engineering Research and Development (IJERD)International Journal of Engineering Research and Development (IJERD)
International Journal of Engineering Research and Development (IJERD)
 
UVM ARCHITECTURE FOR VERIFICATION
UVM ARCHITECTURE FOR VERIFICATIONUVM ARCHITECTURE FOR VERIFICATION
UVM ARCHITECTURE FOR VERIFICATION
 
Formal Verification Of An Intellectual Property In a Field Programmable Gate ...
Formal Verification Of An Intellectual Property In a Field Programmable Gate ...Formal Verification Of An Intellectual Property In a Field Programmable Gate ...
Formal Verification Of An Intellectual Property In a Field Programmable Gate ...
 
Automated Formal Verification of SystemC/C++ High-Level Synthesis Models
Automated Formal Verification of SystemC/C++ High-Level Synthesis ModelsAutomated Formal Verification of SystemC/C++ High-Level Synthesis Models
Automated Formal Verification of SystemC/C++ High-Level Synthesis Models
 
OS VERIFICATION- A SURVEY AS A SOURCE OF FUTURE CHALLENGES
OS VERIFICATION- A SURVEY AS A SOURCE OF FUTURE CHALLENGESOS VERIFICATION- A SURVEY AS A SOURCE OF FUTURE CHALLENGES
OS VERIFICATION- A SURVEY AS A SOURCE OF FUTURE CHALLENGES
 
ISTQB Advanced Study Guide - 7
ISTQB Advanced Study Guide - 7ISTQB Advanced Study Guide - 7
ISTQB Advanced Study Guide - 7
 
Validation and Verification of SYSML Activity Diagrams Using HOARE Logic
Validation and Verification of SYSML Activity Diagrams Using HOARE Logic Validation and Verification of SYSML Activity Diagrams Using HOARE Logic
Validation and Verification of SYSML Activity Diagrams Using HOARE Logic
 
Making Model-Driven Verification Practical and Scalable: Experiences and Less...
Making Model-Driven Verification Practical and Scalable: Experiences and Less...Making Model-Driven Verification Practical and Scalable: Experiences and Less...
Making Model-Driven Verification Practical and Scalable: Experiences and Less...
 
Test Case Optimization and Redundancy Reduction Using GA and Neural Networks
Test Case Optimization and Redundancy Reduction Using GA and Neural Networks Test Case Optimization and Redundancy Reduction Using GA and Neural Networks
Test Case Optimization and Redundancy Reduction Using GA and Neural Networks
 
verification of autonomous robotic system
verification of autonomous robotic systemverification of autonomous robotic system
verification of autonomous robotic system
 
Combinatorial testing ppt
Combinatorial testing pptCombinatorial testing ppt
Combinatorial testing ppt
 
4213ijsea01 (1)
4213ijsea01 (1)4213ijsea01 (1)
4213ijsea01 (1)
 
A Novel Approach to Derive the Average-Case Behavior of Distributed Embedded ...
A Novel Approach to Derive the Average-Case Behavior of Distributed Embedded ...A Novel Approach to Derive the Average-Case Behavior of Distributed Embedded ...
A Novel Approach to Derive the Average-Case Behavior of Distributed Embedded ...
 

More from IJSRD

#IJSRD #Research Paper Publication
#IJSRD #Research Paper Publication#IJSRD #Research Paper Publication
#IJSRD #Research Paper PublicationIJSRD
 
Maintaining Data Confidentiality in Association Rule Mining in Distributed En...
Maintaining Data Confidentiality in Association Rule Mining in Distributed En...Maintaining Data Confidentiality in Association Rule Mining in Distributed En...
Maintaining Data Confidentiality in Association Rule Mining in Distributed En...IJSRD
 
Performance and Emission characteristics of a Single Cylinder Four Stroke Die...
Performance and Emission characteristics of a Single Cylinder Four Stroke Die...Performance and Emission characteristics of a Single Cylinder Four Stroke Die...
Performance and Emission characteristics of a Single Cylinder Four Stroke Die...IJSRD
 
Preclusion of High and Low Pressure In Boiler by Using LABVIEW
Preclusion of High and Low Pressure In Boiler by Using LABVIEWPreclusion of High and Low Pressure In Boiler by Using LABVIEW
Preclusion of High and Low Pressure In Boiler by Using LABVIEWIJSRD
 
Prevention and Detection of Man in the Middle Attack on AODV Protocol
Prevention and Detection of Man in the Middle Attack on AODV ProtocolPrevention and Detection of Man in the Middle Attack on AODV Protocol
Prevention and Detection of Man in the Middle Attack on AODV ProtocolIJSRD
 
Comparative Analysis of PAPR Reduction Techniques in OFDM Using Precoding Tec...
Comparative Analysis of PAPR Reduction Techniques in OFDM Using Precoding Tec...Comparative Analysis of PAPR Reduction Techniques in OFDM Using Precoding Tec...
Comparative Analysis of PAPR Reduction Techniques in OFDM Using Precoding Tec...IJSRD
 
Evaluation the Effect of Machining Parameters on MRR of Mild Steel
Evaluation the Effect of Machining Parameters on MRR of Mild SteelEvaluation the Effect of Machining Parameters on MRR of Mild Steel
Evaluation the Effect of Machining Parameters on MRR of Mild SteelIJSRD
 
Filter unwanted messages from walls and blocking nonlegitimate user in osn
Filter unwanted messages from walls and blocking nonlegitimate user in osnFilter unwanted messages from walls and blocking nonlegitimate user in osn
Filter unwanted messages from walls and blocking nonlegitimate user in osnIJSRD
 
Keystroke Dynamics Authentication with Project Management System
Keystroke Dynamics Authentication with Project Management SystemKeystroke Dynamics Authentication with Project Management System
Keystroke Dynamics Authentication with Project Management SystemIJSRD
 
Diagnosing lungs cancer Using Neural Networks
Diagnosing lungs cancer Using Neural NetworksDiagnosing lungs cancer Using Neural Networks
Diagnosing lungs cancer Using Neural NetworksIJSRD
 
A Survey on Sentiment Analysis and Opinion Mining
A Survey on Sentiment Analysis and Opinion MiningA Survey on Sentiment Analysis and Opinion Mining
A Survey on Sentiment Analysis and Opinion MiningIJSRD
 
A Defect Prediction Model for Software Product based on ANFIS
A Defect Prediction Model for Software Product based on ANFISA Defect Prediction Model for Software Product based on ANFIS
A Defect Prediction Model for Software Product based on ANFISIJSRD
 
Experimental Investigation of Granulated Blast Furnace Slag ond Quarry Dust a...
Experimental Investigation of Granulated Blast Furnace Slag ond Quarry Dust a...Experimental Investigation of Granulated Blast Furnace Slag ond Quarry Dust a...
Experimental Investigation of Granulated Blast Furnace Slag ond Quarry Dust a...IJSRD
 
Product Quality Analysis based on online Reviews
Product Quality Analysis based on online ReviewsProduct Quality Analysis based on online Reviews
Product Quality Analysis based on online ReviewsIJSRD
 
Solving Fuzzy Matrix Games Defuzzificated by Trapezoidal Parabolic Fuzzy Numbers
Solving Fuzzy Matrix Games Defuzzificated by Trapezoidal Parabolic Fuzzy NumbersSolving Fuzzy Matrix Games Defuzzificated by Trapezoidal Parabolic Fuzzy Numbers
Solving Fuzzy Matrix Games Defuzzificated by Trapezoidal Parabolic Fuzzy NumbersIJSRD
 
Study of Clustering of Data Base in Education Sector Using Data Mining
Study of Clustering of Data Base in Education Sector Using Data MiningStudy of Clustering of Data Base in Education Sector Using Data Mining
Study of Clustering of Data Base in Education Sector Using Data MiningIJSRD
 
Fault Tolerance in Big Data Processing Using Heartbeat Messages and Data Repl...
Fault Tolerance in Big Data Processing Using Heartbeat Messages and Data Repl...Fault Tolerance in Big Data Processing Using Heartbeat Messages and Data Repl...
Fault Tolerance in Big Data Processing Using Heartbeat Messages and Data Repl...IJSRD
 
Investigation of Effect of Process Parameters on Maximum Temperature during F...
Investigation of Effect of Process Parameters on Maximum Temperature during F...Investigation of Effect of Process Parameters on Maximum Temperature during F...
Investigation of Effect of Process Parameters on Maximum Temperature during F...IJSRD
 
Review Paper on Computer Aided Design & Analysis of Rotor Shaft of a Rotavator
Review Paper on Computer Aided Design & Analysis of Rotor Shaft of a RotavatorReview Paper on Computer Aided Design & Analysis of Rotor Shaft of a Rotavator
Review Paper on Computer Aided Design & Analysis of Rotor Shaft of a RotavatorIJSRD
 
A Survey on Data Mining Techniques for Crime Hotspots Prediction
A Survey on Data Mining Techniques for Crime Hotspots PredictionA Survey on Data Mining Techniques for Crime Hotspots Prediction
A Survey on Data Mining Techniques for Crime Hotspots PredictionIJSRD
 

More from IJSRD (20)

#IJSRD #Research Paper Publication
#IJSRD #Research Paper Publication#IJSRD #Research Paper Publication
#IJSRD #Research Paper Publication
 
Maintaining Data Confidentiality in Association Rule Mining in Distributed En...
Maintaining Data Confidentiality in Association Rule Mining in Distributed En...Maintaining Data Confidentiality in Association Rule Mining in Distributed En...
Maintaining Data Confidentiality in Association Rule Mining in Distributed En...
 
Performance and Emission characteristics of a Single Cylinder Four Stroke Die...
Performance and Emission characteristics of a Single Cylinder Four Stroke Die...Performance and Emission characteristics of a Single Cylinder Four Stroke Die...
Performance and Emission characteristics of a Single Cylinder Four Stroke Die...
 
Preclusion of High and Low Pressure In Boiler by Using LABVIEW
Preclusion of High and Low Pressure In Boiler by Using LABVIEWPreclusion of High and Low Pressure In Boiler by Using LABVIEW
Preclusion of High and Low Pressure In Boiler by Using LABVIEW
 
Prevention and Detection of Man in the Middle Attack on AODV Protocol
Prevention and Detection of Man in the Middle Attack on AODV ProtocolPrevention and Detection of Man in the Middle Attack on AODV Protocol
Prevention and Detection of Man in the Middle Attack on AODV Protocol
 
Comparative Analysis of PAPR Reduction Techniques in OFDM Using Precoding Tec...
Comparative Analysis of PAPR Reduction Techniques in OFDM Using Precoding Tec...Comparative Analysis of PAPR Reduction Techniques in OFDM Using Precoding Tec...
Comparative Analysis of PAPR Reduction Techniques in OFDM Using Precoding Tec...
 
Evaluation the Effect of Machining Parameters on MRR of Mild Steel
Evaluation the Effect of Machining Parameters on MRR of Mild SteelEvaluation the Effect of Machining Parameters on MRR of Mild Steel
Evaluation the Effect of Machining Parameters on MRR of Mild Steel
 
Filter unwanted messages from walls and blocking nonlegitimate user in osn
Filter unwanted messages from walls and blocking nonlegitimate user in osnFilter unwanted messages from walls and blocking nonlegitimate user in osn
Filter unwanted messages from walls and blocking nonlegitimate user in osn
 
Keystroke Dynamics Authentication with Project Management System
Keystroke Dynamics Authentication with Project Management SystemKeystroke Dynamics Authentication with Project Management System
Keystroke Dynamics Authentication with Project Management System
 
Diagnosing lungs cancer Using Neural Networks
Diagnosing lungs cancer Using Neural NetworksDiagnosing lungs cancer Using Neural Networks
Diagnosing lungs cancer Using Neural Networks
 
A Survey on Sentiment Analysis and Opinion Mining
A Survey on Sentiment Analysis and Opinion MiningA Survey on Sentiment Analysis and Opinion Mining
A Survey on Sentiment Analysis and Opinion Mining
 
A Defect Prediction Model for Software Product based on ANFIS
A Defect Prediction Model for Software Product based on ANFISA Defect Prediction Model for Software Product based on ANFIS
A Defect Prediction Model for Software Product based on ANFIS
 
Experimental Investigation of Granulated Blast Furnace Slag ond Quarry Dust a...
Experimental Investigation of Granulated Blast Furnace Slag ond Quarry Dust a...Experimental Investigation of Granulated Blast Furnace Slag ond Quarry Dust a...
Experimental Investigation of Granulated Blast Furnace Slag ond Quarry Dust a...
 
Product Quality Analysis based on online Reviews
Product Quality Analysis based on online ReviewsProduct Quality Analysis based on online Reviews
Product Quality Analysis based on online Reviews
 
Solving Fuzzy Matrix Games Defuzzificated by Trapezoidal Parabolic Fuzzy Numbers
Solving Fuzzy Matrix Games Defuzzificated by Trapezoidal Parabolic Fuzzy NumbersSolving Fuzzy Matrix Games Defuzzificated by Trapezoidal Parabolic Fuzzy Numbers
Solving Fuzzy Matrix Games Defuzzificated by Trapezoidal Parabolic Fuzzy Numbers
 
Study of Clustering of Data Base in Education Sector Using Data Mining
Study of Clustering of Data Base in Education Sector Using Data MiningStudy of Clustering of Data Base in Education Sector Using Data Mining
Study of Clustering of Data Base in Education Sector Using Data Mining
 
Fault Tolerance in Big Data Processing Using Heartbeat Messages and Data Repl...
Fault Tolerance in Big Data Processing Using Heartbeat Messages and Data Repl...Fault Tolerance in Big Data Processing Using Heartbeat Messages and Data Repl...
Fault Tolerance in Big Data Processing Using Heartbeat Messages and Data Repl...
 
Investigation of Effect of Process Parameters on Maximum Temperature during F...
Investigation of Effect of Process Parameters on Maximum Temperature during F...Investigation of Effect of Process Parameters on Maximum Temperature during F...
Investigation of Effect of Process Parameters on Maximum Temperature during F...
 
Review Paper on Computer Aided Design & Analysis of Rotor Shaft of a Rotavator
Review Paper on Computer Aided Design & Analysis of Rotor Shaft of a RotavatorReview Paper on Computer Aided Design & Analysis of Rotor Shaft of a Rotavator
Review Paper on Computer Aided Design & Analysis of Rotor Shaft of a Rotavator
 
A Survey on Data Mining Techniques for Crime Hotspots Prediction
A Survey on Data Mining Techniques for Crime Hotspots PredictionA Survey on Data Mining Techniques for Crime Hotspots Prediction
A Survey on Data Mining Techniques for Crime Hotspots Prediction
 

Recently uploaded

MENTAL STATUS EXAMINATION format.docx
MENTAL     STATUS EXAMINATION format.docxMENTAL     STATUS EXAMINATION format.docx
MENTAL STATUS EXAMINATION format.docxPoojaSen20
 
Mastering the Unannounced Regulatory Inspection
Mastering the Unannounced Regulatory InspectionMastering the Unannounced Regulatory Inspection
Mastering the Unannounced Regulatory InspectionSafetyChain Software
 
Crayon Activity Handout For the Crayon A
Crayon Activity Handout For the Crayon ACrayon Activity Handout For the Crayon A
Crayon Activity Handout For the Crayon AUnboundStockton
 
Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)eniolaolutunde
 
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdfssuser54595a
 
Solving Puzzles Benefits Everyone (English).pptx
Solving Puzzles Benefits Everyone (English).pptxSolving Puzzles Benefits Everyone (English).pptx
Solving Puzzles Benefits Everyone (English).pptxOH TEIK BIN
 
CARE OF CHILD IN INCUBATOR..........pptx
CARE OF CHILD IN INCUBATOR..........pptxCARE OF CHILD IN INCUBATOR..........pptx
CARE OF CHILD IN INCUBATOR..........pptxGaneshChakor2
 
Sanyam Choudhary Chemistry practical.pdf
Sanyam Choudhary Chemistry practical.pdfSanyam Choudhary Chemistry practical.pdf
Sanyam Choudhary Chemistry practical.pdfsanyamsingh5019
 
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17Incoming and Outgoing Shipments in 1 STEP Using Odoo 17
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17Celine George
 
Paris 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activityParis 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activityGeoBlogs
 
_Math 4-Q4 Week 5.pptx Steps in Collecting Data
_Math 4-Q4 Week 5.pptx Steps in Collecting Data_Math 4-Q4 Week 5.pptx Steps in Collecting Data
_Math 4-Q4 Week 5.pptx Steps in Collecting DataJhengPantaleon
 
Grant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy ConsultingGrant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy ConsultingTechSoup
 
Call Girls in Dwarka Mor Delhi Contact Us 9654467111
Call Girls in Dwarka Mor Delhi Contact Us 9654467111Call Girls in Dwarka Mor Delhi Contact Us 9654467111
Call Girls in Dwarka Mor Delhi Contact Us 9654467111Sapana Sha
 
Micromeritics - Fundamental and Derived Properties of Powders
Micromeritics - Fundamental and Derived Properties of PowdersMicromeritics - Fundamental and Derived Properties of Powders
Micromeritics - Fundamental and Derived Properties of PowdersChitralekhaTherkar
 
The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13Steve Thomason
 
Concept of Vouching. B.Com(Hons) /B.Compdf
Concept of Vouching. B.Com(Hons) /B.CompdfConcept of Vouching. B.Com(Hons) /B.Compdf
Concept of Vouching. B.Com(Hons) /B.CompdfUmakantAnnand
 
The basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptxThe basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptxheathfieldcps1
 

Recently uploaded (20)

MENTAL STATUS EXAMINATION format.docx
MENTAL     STATUS EXAMINATION format.docxMENTAL     STATUS EXAMINATION format.docx
MENTAL STATUS EXAMINATION format.docx
 
Mastering the Unannounced Regulatory Inspection
Mastering the Unannounced Regulatory InspectionMastering the Unannounced Regulatory Inspection
Mastering the Unannounced Regulatory Inspection
 
Crayon Activity Handout For the Crayon A
Crayon Activity Handout For the Crayon ACrayon Activity Handout For the Crayon A
Crayon Activity Handout For the Crayon A
 
Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)
 
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
 
Solving Puzzles Benefits Everyone (English).pptx
Solving Puzzles Benefits Everyone (English).pptxSolving Puzzles Benefits Everyone (English).pptx
Solving Puzzles Benefits Everyone (English).pptx
 
CARE OF CHILD IN INCUBATOR..........pptx
CARE OF CHILD IN INCUBATOR..........pptxCARE OF CHILD IN INCUBATOR..........pptx
CARE OF CHILD IN INCUBATOR..........pptx
 
Sanyam Choudhary Chemistry practical.pdf
Sanyam Choudhary Chemistry practical.pdfSanyam Choudhary Chemistry practical.pdf
Sanyam Choudhary Chemistry practical.pdf
 
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17Incoming and Outgoing Shipments in 1 STEP Using Odoo 17
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17
 
Paris 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activityParis 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activity
 
Código Creativo y Arte de Software | Unidad 1
Código Creativo y Arte de Software | Unidad 1Código Creativo y Arte de Software | Unidad 1
Código Creativo y Arte de Software | Unidad 1
 
_Math 4-Q4 Week 5.pptx Steps in Collecting Data
_Math 4-Q4 Week 5.pptx Steps in Collecting Data_Math 4-Q4 Week 5.pptx Steps in Collecting Data
_Math 4-Q4 Week 5.pptx Steps in Collecting Data
 
Grant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy ConsultingGrant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy Consulting
 
Call Girls in Dwarka Mor Delhi Contact Us 9654467111
Call Girls in Dwarka Mor Delhi Contact Us 9654467111Call Girls in Dwarka Mor Delhi Contact Us 9654467111
Call Girls in Dwarka Mor Delhi Contact Us 9654467111
 
Model Call Girl in Bikash Puri Delhi reach out to us at 🔝9953056974🔝
Model Call Girl in Bikash Puri  Delhi reach out to us at 🔝9953056974🔝Model Call Girl in Bikash Puri  Delhi reach out to us at 🔝9953056974🔝
Model Call Girl in Bikash Puri Delhi reach out to us at 🔝9953056974🔝
 
Micromeritics - Fundamental and Derived Properties of Powders
Micromeritics - Fundamental and Derived Properties of PowdersMicromeritics - Fundamental and Derived Properties of Powders
Micromeritics - Fundamental and Derived Properties of Powders
 
The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13
 
Model Call Girl in Tilak Nagar Delhi reach out to us at 🔝9953056974🔝
Model Call Girl in Tilak Nagar Delhi reach out to us at 🔝9953056974🔝Model Call Girl in Tilak Nagar Delhi reach out to us at 🔝9953056974🔝
Model Call Girl in Tilak Nagar Delhi reach out to us at 🔝9953056974🔝
 
Concept of Vouching. B.Com(Hons) /B.Compdf
Concept of Vouching. B.Com(Hons) /B.CompdfConcept of Vouching. B.Com(Hons) /B.Compdf
Concept of Vouching. B.Com(Hons) /B.Compdf
 
The basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptxThe basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptx
 

A Survey of functional verification techniques

  • 1. IJSRD - International Journal for Scientific Research & Development| Vol. 3, Issue 10, 2015 | ISSN (online): 2321-0613 All rights reserved by www.ijsrd.com 512 A Survey of Functional Verification Techniques Aartika Bansal1 Nagendra Sah2 Anantharaj T.V.3 1 P.G Student 2 Assistant Professor 1,2 PEC University of Technology, Chandigarh, India 3 ASIC Verification Department SanDisk, Bangalore, India Abstract— In this paper, we present a survey of various techniques used in functional verification of industry hardware designs. Although the use of formal verification techniques has been increasing over time, there is still a need for an immediate practical solution resulting in an increased interest in hybrid verification techniques. Hybrid techniques combine formal and informal (traditional simulation based) techniques to take the advantage of both the worlds. A typical hybrid technique aims to address the verification bottleneck by enhancing the state space coverage. Key words: Functional verification, simulation, formal methodology, hybrid techniques I. INTRODUCTION Functional verification of a circuit is the process to ensure that the design implementation conforms to the original circuit specifications. The traditional and the most common method of verification has been through simulation. But recently, there is an increased interest in formal verification methods such as model checking, equivalence checking, language containment and theorem proving. Formal verification is a viable option to improve design quality. As the size and complexity of System on Chip (SoC) design has been ever increasing, verification engineers face the challenge in developing efficient verification strategies and ensure that the designs are completely bug-free. Early detection of errors is desired since it saves a lot of time, effort and manufacturing costs. A general theme being practiced is to apply multiple verification techniques which complement one another, resulting in the overall efficiency of verification tool. Such integration must be carried out strategically and precisely. Simulation remains the most-practiced technique for most of the real life verification issues in industry practice. Its scalability and easy applicability to almost any design makes it suitable for most of the verification tasks. But over time, its effectiveness to find corner case errors is significantly decreasing. When used as a stand-alone technique, it can detect simple bugs only. On the contrary, formal techniques can, in principle, find all the bugs in a design model but their applicability in practice is limited. The skilled manual guidance needed for theorem proving and the state explosion in model checking are the problems confronted in these techniques. So there is a need of an immediate practical solution which gives rise to a keen interest in the integration of formal and informal techniques, referred to as hybrid methodology. II. FORMAL VERIFICATION Formal verification methods comprise the techniques that logically prove the correctness of a hardware design. No test vectors are required in formal verification as opposed to the traditional simulation based methods. There are three subcategories in these methods: a) Theorem proving b) Model checking c) Equivalence checking A. Theorem proving methods: These methods demand the representation of both the system and its properties in the form of formulas in some mathematical (formal) logic [1]. The logic defines a set of axioms and inference rules on the basis of which the tool finds the proof of a property. Thus, theorem proving is the process of finding the proofs from the axioms of the system. Some well-known theorem proving systems are: Boyer- Moore (first order logic) [2], Higher-order logic (HOL), PVS [3]. But these systems are hard to use since the designers need expertise in this area to be capable of using these systems. B. Model Checking: In model checking, a finite state model (FSM) for the system is built and then the tool checks whether the desired property holds. The proofs are attempted by exhaustion which means for a given system, the tool generates all the possible states the system can be in and then tests each state individually [1, 2, 4]. K. Fishler et al. have explored the verification of VHDL designs with COSPAN which is a model checker [5]. K. McMillan details the Symbolic Model Checking to solve the problem of state space explosion faced in model checking. Cadence Design Systems [7] and Lucent Technologies [8] have developed Formal Check Model Checker for model checking verification. The major drawback of model checking is the state space explosion. These tools can handle a limited size circuit only. Moreover, model checkers can skip an error if the designer did not specify a property. C. Equivalence checking: This technique is also based on the FSM. This method checks the equivalence between a reference model and the design to be verified, both expressed as FSMs. The two are said to be equivalent if they produce the same output for every possible input stimulus. Design Verifyer developed by Chrysalic Symbolic Design [9], Affirma Equivalence Checker developed by Cadence Design System [10], Formality developed by Synopsys [11] are some of the examples of equivalence checkers. This method can be used to verify the equivalence between gate level description and the RTL code. But to verify RTL code, we cannot use this method as there is no reference model for comparison. State space explosion is a problem in this approach too. III. INFORMAL VERIFICATION Since formal verification techniques cannot handle large designs due to state space explosion, simulation based
  • 2. A Survey of Functional Verification Techniques (IJSRD/Vol. 3/Issue 10/2015/106) All rights reserved by www.ijsrd.com 513 verification remains the major technique to perform hardware design verification. A traditional methodology for the VLSI design and verification is shown in figure 1. As shown, once the circuit specifications are ready and it has been partitioned into blocks, the next step is to write RTL code for each block and then combine these blocks into whole chip. Fig. 1: Traditional VLSI Design Methodology The verification engineers then develop the test benches for the simulation of the device under test (DUT). The actual circuit response is compared against the expected response for the pre-determined stimuli. If the match occurs, the test passes otherwise it fails. It takes a huge amount of time and resources to write test benches to verify the circuit at RTL level. Instead of waiting to complete the RTL description of the circuit and then start verification process, we must adopt a concurrent verification methodology as shown in figure 2. In this methodology, the verification team starts writing test bench as soon as the system specification is complete and the designers start writing the RTL code. Initially they run simulation on the developed behavioral models of the blocks. Once the RTL code is ready, the model is replaced by the RTL code. This saves a lot of time. The Vera Verification System developed by Synopsys [12] and the Spec-Man: Spec-based functional verification by Versity Design [13] are the simulation based tools that use better test bench construction languages. Major drawbacks of informal techniques comprise long simulation runs, a lot of effort and time needed to write the test bench and difficulty in finding the stimuli for the corner cases. Fig. 2: Concurrent Verification Methodology IV. HYBRID TECHNIQUES These techniques combine at least two methods which complement one another‟s strengths and weaknesses effectively. Bartley et al. showed that with the increasing complexity and size of the circuit, the most effective way of functional verification is to combine the strengths of different techniques [14]. We classify the hybrid functional verification methods as follows: a) Combination of formal and informal techniques, b) Combination of two formal techniques, c) Combination of two informal techniques, d) Combination of multiple verification techniques. A. Combination of formal and informal techniques: Since the informal techniques are inherently incomplete in finding all the design errors, the combination of one with formal technique yields a technique that is incomplete. 1) Control circuit exploration: The exploration of control circuits can address the problem of increasing state space coverage. Horowitz et al. detailed a generalized technique that is viable for a large set of circuit types [15]. This technique automatically generates the test vectors that make the microprocessor exercise all control logic transitions in simulation. It does not target only certain test cases but delves into many improbable conditions in corner cases. Hence, it maximizes the probability of catching bugs through simulation. Moundanos et al. explored coverage-directed test generation in which user provided stimuli help to discover the interesting control space behavior of large designs. Geist et al. have proposed to construct an abstract model with key features of the original design [17]. These models help to alleviate the state explosion problem by the imposition of a less constrained upper bound. 2) Directed Functional Test Generation: Typically, verification teams in industries have a set of conditions to meet before the design is taped out. These conditions are constrained by a combination of coverage metrics, corner cases and design complexity. The verification engineers are to detect the design errors in the way of reaching these conditions. Pseudo Random Test
  • 3. A Survey of Functional Verification Techniques (IJSRD/Vol. 3/Issue 10/2015/106) All rights reserved by www.ijsrd.com 514 Generation methods are ineffective to cover specific corner cases. So, only simulation is not enough to meet the needs of directed verification. Geist et al. presented a study of a formal verification using coverage models to specify functional tests [17]. This hybrid technique has, in fact, resulted in improved functional verification. Ganai et al. proposed a rarity based metric for state prioritization that enabled an efficient directed functional search of a large state space [18]. Symbolic simulation is an effective formal verification technique but fails for large and complex real designs. Yuan et al. showed that the combination of formal verification and simulation to achieve better coverage in larger circuits can find bugs far more quickly as compared to using only formal verification [19]. 3) Automatic Test Pattern Generation (ATPG) and formal techniques: Traditionally, techniques using ATPG localize the bug search instead of searching the entire state space at once. Since formal techniques can address the incompleteness of ATPG, the two can be combined effectively. Jones and Privitera proposed the technique of automatic generation of test vectors for functional verification which gives advantage of random as well as directed testing [20]. They showed that formal specifications can be given as inputs to a test generator. The main algorithms combine ATPG and BDDs (Binary Decision Diagrams) to generate the directed test vectors. Boppana et al. proposed the usage of sequential ATPG for model checking [21]. They studied the efficiency of sequential ATPG for state space exploration. Huan and Cheng proposed the combination of word-level sequential ATPG techniques with modular constraint solving techniques to verify safety properties [22]. They transformed the problem into a counter example generation problem. Sequential ATPG loses its effectiveness for large complex circuits. Vedula et al. solved this problem by using a well-known technique called program slicing. They reduced the module under test, hence accelerating sequential ATPG efficiency in solving the Bounded Model Checking (BMC) problem. 4) Constraint-based verification: In a constraint-based random verification methodology, the user provides constraints that model the appropriate interaction of the DUT with its environment. Using these constraints, random stimuli are generated. The generated stimuli can mimic the actual environment. Yuan et al. invented such a set of constraint-based verification techniques [24]. Wu and Huang proposed to implement constraints with variable ordering so as to put the required efforts on the cared patterns [25]. However, they found that it may lead to degradation of pattern generation speed and distribution. To overcome this challenge, they provided a technique to preanalyze the solution space by splitting the ranges of variables. Yehia showed a standard and effective way to avoid redundant stimuli by constructing a link between the collected coverage and constrained random stimuli at runtime [26]. The beauty of the constraint-based verification lies in the fact that it works at various abstraction levels of a design viz. module, block and unit level. B. Combination of formal techniques: Researchers face the challenge of effectively combining theorem proving and model checking. Industrial-scale efforts encounter limits on model-checking capacity even today. Some of these limits can be alleviated by using theorem proving to compose verification results. 1) Trajectory evaluation and theorem proving: Joyce and Seger proposed the combination of trajectory evaluation and theorem proving [27]. They used the former as a decision procedure for the HOL proof system. Later, Seger et al. showed that combination of STE with lightweight theorem proving in HOL can be useful in industrial scale verification[28]. 2) Composition of model checker runs: Camelleri used a theorem prover in combination with a model checker to verify a cache protocol [29]. He used separate tools to verify various properties but did not combine the results mechanically. Jang et al. used a technique of model checking referred to as computation tree logic (CTL) to verify different properties of a microcontroller [30]. Then, he achieved the proof of the top-level specification through a composition of model checking runs. C. Combination of informal techniques: Kuehlmann et al. detailed an algorithm that uses probabilistic techniques [31]. The algorithm assigns each state a probability based on its chance to lead to a target state. On the basis of assigned probabilities, a set of ranks is assigned to the design states. This algorithm uses the ranking system to find a path from the initial states to the target states and can act as complement to the existing hybrid techniques for state space research. But it may lead to dead-end states. Yuan et al. proposed the use of input biasing to cover corner cases instead of using an explicit test bench [32]. Researchers have also explored the learning-based techniques. Fine and Ziv reported the use of computer learning and Bayesian networks [33]. Shimizu and Dill describe the coverage-directed informal methods that collect coverage information and derive the stimuli through the use of formal descriptions [34]. The description lists the interface properties of a bus protocol. But the listed properties are localized in time. Tasiran et al. proposed a tag coverage metric which considers a code segment to be covered only when it has executed and the effect has been recorded [35]. The metric is used to guide a semiformal test generation algorithm which is based on the analysis of the circuit modeled as a Markov chain in the steady state. D. Combination of multiple techniques: Ho et al. developed the very first successful tool viz. Ketchum which combined several verification techniques into a single hybrid technique [36]. The tool used the capabilities like test pattern generation and non-reachability analysis in order to get improvement over the traditional simulation techniques. Ketchum combines simulation with symbolic simulation, SAT-based BMC, symbolic fixpoint computation and many more. Non-reachability analysis helps to focus on coverage issues earlier in the design cycle. Ho et al. experimentally found that Ketchum provides a tenfold capacity increase compared to previous results.
  • 4. A Survey of Functional Verification Techniques (IJSRD/Vol. 3/Issue 10/2015/106) All rights reserved by www.ijsrd.com 515 V. CONCLUSION In this paper, we have presented a number of verification techniques for industrial hardware designs. A single verification technique is not enough to fulfill all the needs of today‟s industrial design verification environment. Hence, further improvements are sought in this area. Future directions may include efforts to increase the tool capacity and accuracy to develop new verification techniques which would be better optimized to solve the overall verification challenges. The hybrid tools may be taken a step further to include features like circuit pre-analysis, dynamic interaction between verification methods and manual guidance to handle real industrial and complex decision issues. REFERENCES [1] E. M. Clarke, J. M. Wing, “Formal Methods: State of the Art and Future Directions,” ACM Computing Surveys, Vol. 28, No. 4, pp. 627-643, December 1996. [2] R.S. Boyer and J.S. Moore, A Computational Logic, Academic Press, New York, 1979. [3] S. Owre, J. Rushby, and N. Shankar, “PVS: A prototype verification system,” in Eleventh International Conference on Automated Deduction (CADRE), Vol. 607 of lecture Notes in Artificial Intelligence, D. Kapur Ed., Springer-Verlag, pp. 748- 752, 1992. [4] E. Cerny, X. Song, “Formal Verification Methods”: A short course, University of Montreal, Montreal, Canada, 1997. [5] K. Fishler, and R. Kurshan, “Verifying VHDL designs with COSPAN,” in Formal Hardware Verification: Method and Systems in Comparison, LNCS 1287, Ed. Kropf, Springer-Verlag, pp. 206-247, 1997. [6] K. McMillan, Symbolic Model Checking: An Approach to the state Explosion Problem, Kluwer Academic Publishers, 1993. [7] Cadence Design Systems, Inc., “FormalCheck model checker,” http://www.cadence.com [8] Lucent Technologies, Inc. “FormalCheck-Model checker,” http://www.belllabs.com/org/blda/product. formal.htm1. [9] Chrysalis Symbolic Design, Inc., “Design Verifyer,” http://www.chrysalis.com [10]Cadence Design Systems, Inc., “Affirma Equivalence Checker,” http://www.cadence.com [11]Synopsys, Inc., “Formality,” http://www.synopsys.com [12]Synopsys, Inc., “The Vera Verification System,” http://www.synopsys.com [13]Versity Design, Inc., “Spec-man: spec-based functional verification” http://www.versity.com [14]M.G. Bartley, D. Galpin, and T. Blackmore, „„A Comparison of Three Verification Techniques: Directed Testing, Pseudo-Random Testing and Property Checking,‟‟ Proc. 39th Design Automation Conf. (DAC 02), ACM Press, 2002, pp. 819-823. [15]M.A. Horowitz et al., „„Architecture Validation for Processors,‟‟ Proc. 22nd Ann. Int‟l Symp. Computer Architecture (ISCA 95), IEEE CS Press, 1995, pp. 404-413. [16]D. Moundanos, J.A. Abraham, and Y.V. Hoskote, „„Abstraction Techniques for Validation Coverage Analysis and Test Generation,‟‟ IEEE Trans. Computers, vol. 47, no. 1, Jan. 1998, pp. 2-14. [17]D. Geist et al., „„Coverage-Directed Test Generation Using Symbolic Techniques,‟‟ Proc. 1st Int‟l Conf. Formal Methods in Computer-Aided Design, LNCS 1166, Springer-Verlag, 1996, pp. 143-158. [18]M. Ganai et al., „„SIVA: A System for Coverage- Directed State Space Search,‟‟ J. Electronic Testing: Theory and Applications, vol. 17, no. 1, Feb. 2001, pp. 11-27. [19]J. Yuan et al., „„On Combining Formal and Informal Verification,‟‟ Proc. 9th Int‟l Conf. Computer-Aided Verification, LNCS 1254, Springer-Verlag, 1997, pp. 376-387. [20]K.D. Jones and J.P. Privitera, „„The Automatic Generation of Functional Test Vectors for Rambus Designs,‟‟ Proc. 33rd Design Automation Conf. (DAC 96), ACM Press, 1996, pp. 415-420. [21]V. Boppana et al., „„Model Checking Based on Sequential ATPG,‟‟ Proc. 11th Int‟l Conf. Computer Aided Verification, LNCS 1633, Springer, 1999, pp. 418-430. [22]C.-Y. Huan and K.-T. Cheng, „„Using Word-Level ATPG and Modular Arithmetic Constraint-Solving Techniques for Assertion Property Checking,‟‟ IEEE Trans. Computer-Aided Design of Integrated Circuits and Systems, vol. 20, no. 3, Mar. 2001, pp. 381-391. [23]V.M. Vedula, W.J. Townsend, and J.A. Abraham, „„Program Slicing for ATPG-Based Property Checking,‟‟ Proc. 17th Int‟l Conf. VLSI Design (VLSID 04), IEEE CS Press, 2004, pp. 591-596. [24]J. Yuan, C. Pixley, and A. Aziz, Constraint-Based Verification, Springer, 2006. [25]Bo-Han Wu, Chung-Yang Huang, “A Robust General Constrained Random Pattern Generator for Constraints with Variable Ordering”, IEEE/ACM International Conference on Computer-Aided Design (ICCAD) 2012, November 5-8, 2012, San Jose, California, USA. [26]A. Yehia, “Faster Coverage Closure: Runtime Guidance of Constrained Random Stimuli by Collected Coverage” IEEE Design and Verification Conference (DVC) 2013. [27]J.J. Joyce and C.H. Seger, „„Linking BDD-Based Symbolic Evaluation to Interactive Theorem Proving,‟‟ Proc. 30th Design Automation Conf. (DAC 93), ACM Press, 1993, pp. 469-474. [28]C.-J.H. Seger et al., „„An Industrially Effective Environment for Formal Hardware Verification,‟‟ IEEE Trans. Computer-Aided Design of Integrated Circuits and Systems, vol. 24, no. 9, Sept. 2005, pp. 1381-1405. [29]A. Camilleri, „„A Hybrid Approach to Verifying Liveness in a Symmetric Multi-Processor,‟‟ Proc. 10th Int‟l Conf. Theorem Proving in Higher-Order Logics (TPHOLs 97), LNCS 1275, Springer, 1997, pp. 33-48. [30]J.-Y. Jang et al., „„Formal Verification of FIRE: A Case Study,‟‟ Proc. 34th Design Automation Conf. (DAC 97), ACM Press, 1997, pp. 173-177. [31]A. Kuehlmann, K.L. McMillan, and R.K. Brayton, „„Probabilistic State Space Search,‟‟ Proc. Int‟l Conf.
  • 5. A Survey of Functional Verification Techniques (IJSRD/Vol. 3/Issue 10/2015/106) All rights reserved by www.ijsrd.com 516 Computer-Aided Design (ICCAD 99), IEEE CS Press, 1999, pp. 574-579. [32]J. Yuan et al., „„Modeling Design Constraints and Biasing in Simulation Using BDDs,‟‟ Proc. Int‟l Conf. Computer- Aided Design (ICCAD 99), IEEE CS Press, 1999, pp. 584-590. [33]S. Fine and A. Ziv, „„Coverage Directed Test Generation for Functional Verification Using Bayesian Networks,‟‟ Proc. 40th Design Automation Conf. (DAC 03), ACM Press, 2003, pp. 286-291. [34]K. Shimizu and D.L. Dill, „„Deriving a Simulation Input Generator and a Coverage Metric from a Formal Specification,‟‟ Proc. 39th Design Automation Conf. (DAC 02), ACM Press, 2002, pp. 801-806. [35]S. Tasiran et al., „„A Functional Validation Technique: Biased-Random Simulation Guided by Observability- Based Coverage,‟‟ Proc. IEEE Int‟l Conf. Computer Design (ICCD 01), IEEE CS Press, 2001, pp. 82-88. [36]P.-H. Ho et al., „„Smart Simulation Using Collaborative Formal and Simulation Engines,‟‟ Proc. Int‟l Conf. Computer-Aided Design (ICCAD 00), IEEE CS Press, 2000, pp. 120-126.