Assertion-Based Verification
|
|
- Agnes Davidson
- 6 years ago
- Views:
Transcription
1 Assertion-Based Verification Introduction to SVA Harry Foster Chief Scientist Verification
2 Session Overview After completing this session you will... Learn the structure of the SVA language Lean how to construct sequence Lean how to construct properties
3 Specifying Design Intent Assertions allow us to specify design intent in a way that lends itself to automation reset_n req0 req1 Arbiter grant0 grant1 // Assert that the grants for our simple arbiter are mutually exclusive
4 Identifying the Error Condition For our arbiter example, we can write a Boolean expression for the error condition, as follows: reset_n req0 req1 Arbiter grant0 grant1 (grant0 & grant1) // error condition
5 Checking the Error Condition before Assertions Doesn t lend itself to automation. module arbiter (, rst_n, req0, req1, grant0, grant1);... or negedge rst_n) begin if (rst_n!= 1 b0) if (grant0 & grant1) $display ( ERROR: Grants not mutex );... endmodule Error Condition Boolean Expression
6 IEEE 1800 SystemVerilog Mutex Example grant0 and grant1 must be mutually exclusive grant0 grant1 error assert property ) disable iff (rst_n)!(grant0 & grant1));
7 Assertion Units Directives (assert, cover) Properties Sequences (Sequential Expressions) Boolean Expressions Checker packaging assert, assume, cover Specification of behavior; desired or undesired How Boolean events are related over time True or false
8 assert property ) disable iff (~rst_n)!(grant0 & grant1)); Assertion Units Directives (assert, cover) Properties Sequences (Sequential Expressions) Boolean Expressions rst_n!(grant0 & grant1) error
9 assert property ) disable iff (~rst_n)!(grant0 & grant1)); Assertion Units Directives (assert, cover) Properties Sequences (Sequential Expressions) Boolean Expressions rst_n!(grant0 & grant1) error
10 assert property ) disable iff (~rst_n)!(grant0 & grant1)); Assertion Units Directives (assert, cover) Properties Sequences (Sequential Expressions) Boolean Expressions rst_n!(grant0 & grant1) error
11 SVA provides a mechanism to asynchronously disable a property during a reset using the SVA disable iff clause assert property (@(posedge ) disable iff (~rst_n)!(grant0 & grant1));
12 Sequences So far we have examined simple assertions A Boolean expression must hold at every clock We now we introduce SVA sequences Multiple Boolean expressions are evaluated in a linear order of increasing time Assertion Units Directives (assert, cover) Properties Sequences (Sequential Expressions) Boolean Expressions
13 Sequence Temporal delay ## with integer start ##1 transfer start transfer
14 Sequence Temporal delay ## with integer start ##2 transfer start transfer
15 Sequence Temporal delay ## with range [m:n] start ##[0:2] transfer start transfer
16 Sequence Temporal delay ## with range [m:n] start ##[0:2] transfer start transfer
17 Sequence Temporal delay ## with range [m:n] start ##[0:2] transfer start transfer
18 Sequence Consecutive repetition [*m] or range [*m:n] Use $ to represent infinity start[*2] ##1 transfer start transfer
19 Sequence Consecutive repetition [*m] or range [*m:n] Use $ to represent infinity start[*1:2] ##1 transfer start transfer
20 Sequence Consecutive repetition [*m] or range [*m:n] Use $ to represent infinity start[*1:2] ##1 transfer start transfer
21 Sequence Consecutive repetition [*m] or range [*m:n] Use $ to represent infinity start[*1:2] ##1 transfer start transfer Note: This also matches the sequence specification!!!!
22 Sequence Non-consecutive repetition [=m] or [=m:n] start[=2] ##1 transfer start transfer [*0:$] represents zero to infinity start[=2]!start[*0:$] ##1 start ##1!start[*0:$] ##1 start ##1!start[*0:$]
23 Sequence Goto non-consecutive repetition [->m] or [->m:n] start[->2] ##1 transfer start transfer [*0:$] represents zero to infinity start[->2]!start[*0:$] ##1 start ##1!start[*0:$] ##1 start
24 Properties Assertion Units Directives (assert, cover) Properties Sequences (Sequential Expressions) Boolean Expressions
25 Properties Overlapping sequence implication operator -> ready ##1 start -> go ##1 done ready start go done assertion property ) ready ##1 start -> go ##1 done );
26 Properties Non-overlapping sequence implication operator => ready ##1 start => go ##1 done ready start go done NOTE: A => B is the same as A -> ##1 B
27 Fair Arbitration Scheme Example Asserting that an arbiter is fair To be fair, a pending request for a particular client should never have to wait more than two arbitration cycles Otherwise, the arbiter unfairly issued multiple grants to a different client req[0] req[1] Arbiter gnt[0] gnt[1]
28 Fair Arbitration Scheme Example a_0_fair: assert property ) disable iff (reset_n) not ( $rose(req[0]) ##1 (!gnt[0] throughout (gnt[1])[->2]))); req[0] req[1] Arbiter gnt[0] gnt[1] req[0] gnt[0] gnt[1]
29 Named properties and sequences To facilitate reuse, properties and sequences can be declared and then referenced by name Can be declared with or without parameters sequence s_op_retry; (req ##1 retry); endsequence sequence s_cache_fill(req, done, fill); (req ##1 done [=1] ##1 fill); endsequence
30 Named properties and sequences sequence s_op_retry; (req ##1 retry); endsequence sequence s_cache_fill(rdy, done, fill); (rdy ##1 done [=1] ##1 fill); endsequence assert property ) disable iff (!reset_n) s_op_retry => s_cache_fill (my_rdy,my_done,my_fill));
31 Named properties and sequences property p_en_mutex(en0, ) disable iff (~reset_n) ~(en0 & en1); endproperty assert property (p_en_mutex(en[0], en[1]));
32 Action blocks An SVA action block specifies the actions that are taken upon success or failure of the assertion The action block, if specified, is executed immediately after the evaluation of the assert expression assert property ) disable iff (reset)!(grant0 & grant1) ) else begin // action block fail statement $error( Mutex violation with grants. ); end
33 System functions $onehot (<expression>) - Returns true if only one bit of the expression is high $onehot0 (<expression>) - Returns true if at most one bit of the expression is high $isunknown (<expression>) - Returns true if any bit of the expression is X or Z - This is equivalent to ^<expression> === bx
34 System functions $rose( expression ) $fell( expression ) $stable( expression ) $past( expression [, number_of_ticks] )
35 The need for $rose system function You must be precise when specifying! assertion property ) start -> ##2 Transfer); start transfer
36 Eliminates multiple matches You must be precise when specifying! assertion property ) $rose(start) -> ##2 Transfer); start transfer $rose(start) is a short cut for the sequence!start ##1 start
37 Introduction to SVA Some assertions require additional modeling code In addition to the assertion constructs rst_n Controller put get rst_n data_in FIFO data_out full empty // Assert that the FIFO controller cannot overflow nor underflow
38 Introduction to SVA // assertion modeling code not part of the design `ifdef ASSERT_ON int cnt = 0; ) if (!rst_n) cnt <= 0; else cnt <= cnt + put get; // assert no overflow assert property (@posedge disable iff (!rst_n)!((cnt + put get) > `DEPTH)); // assert no underflow assert property (@posedge disable iff (!rst_n)!((cnt + put) < get)); `endif
39 SVA Does and Don ts Never assert a sequence! assert property (@posedge ) (req ##1 grnt ##1 done)); This says every clock we see req, followed by gnt, followed by done The correct way to do this is with an implication operator: assert property (@posedge ) (req => grnt ##1 done)); It s ok to cover a sequence It s ok to assert a forbidden sequence using not assert property (@posedge ) not (req ##1 grnt ##1 done));
40 Session Recap In this session we discussed... The structure of the SVA language How to construct sequences How to construct properties
41 Training and Consulting Resources Mentor Graphics Training Scalable Verification Courses - A wide range of instructor led classes - Located in public training centers in major cities or onsite at your workplace - Web-based events with live instructors are also available. Mentor Graphics Consulting Questa Verification Methodology JumpStart Knowledge-Sourcing Model - Infuse knowledge into your organization while addressing your immediate product development challenges
42 Other Resources Assertion-Based Design Harry Foster, Adam Krolnik, David Lacey Springer, 2004 Creating Assertion-Based IP Harry Foster, Adam Krolnik Springer, 2008
43 Assertion-Based Verification Introduction to SVA Harry Foster Chief Scientist Verification
Assertion-Based Verification
Assertion-Based Verification ABV and Formal Property Checking Harry Foster Chief Scientist Verification info@verificationacademy.com www.verificationacademy.com Session Overview After completing this session
More informationSystemVerilog Assertions
by, Getting Started With SystemVerilog Assertions presented by Stuart Sutherland of Sutherland H D L training Engineers to be SystemVerilog Wizards! 3 About the Presenter... Stuart Sutherland, a SystemVerilog
More informationDebugging Inconclusive Assertions and a Case Study
Debugging Inconclusive Assertions and a Case Study by Jin Hou Mentor, A Siemens Business INTRODUCTION Formal assertion-based verification uses formal technologies to analyze if a design satisfies a given
More information166 SystemVerilog Assertions Handbook, 4th Edition
166 SystemVerilog Assertions Handbook, 4th Edition example, suppose that a cache controller performs behavior A when there is a cache hit (e.g., fetch data from the cache), or performs behavior B when
More informationFocussing Assertion Based Verification Effort for Best Results
Focussing Assertion Based Verification Effort for Best Results Mark Litterick (Verification Consultant) mark.litterick@verilab.com 2 Introduction Project background Overview of ABV including methodology
More informationStuart Sutherland, Sutherland HDL, Inc.
SystemVerilog Design: User Experience Defines Multi-Tool, Multi-Vendor Language Working Set Ways Design Engineers Can Benefit from the Use of SystemVerilog Assertions Stuart Sutherland, Sutherland HDL,
More informationSystem Verilog Assertions Language and Methodology. Comprehensive 1 Day Training Class. DefineView Consulting
System Verilog Assertions Language and Methodology Comprehensive 1 Day Training Class DefineView Consulting http://www.defineview.com 2006-2008 Training :: Abstract Abstract System Verilog Assertions (SVA)
More informationOpenVera Assertions. March Synopsys, Inc.
OpenVera Assertions March 2003 2003 Synopsys, Inc. Introduction The amount of time and manpower that is invested in finding and removing bugs is growing faster than the investment in creating the design.
More informationSpeed up Emulation Debugging using Whitebox Assertions
Speed up Emulation Debugging using Whitebox Assertions Ricky Wang ricky@atrenta.com This presentation may contain forward-looking statements regarding product development. Information or statements contained
More informationFORMAL SPECIFICATION, SYSTEM VERILOG ASSERTIONS & COVERAGE. By Calderón-Rico, Rodrigo & Tapia Sanchez, Israel G.
FORMAL SPECIFICATION, SYSTEM VERILOG ASSERTIONS & COVERAGE By Calderón-Rico, Rodrigo & Tapia Sanchez, Israel G. OBJECTIVE Learn how to define objects by specifying their properties which are formally
More informationAssertion Checker Synthesis for FPGA Emulation
Assertion Checker Synthesis for FPGA Emulation Chengjie Zang, Qixin Wei and Shinji Kimura Graduate School of Information, Production and Systems, Waseda University, 2-7 Hibikino, Kitakyushu, 808-0135,
More information218 SystemVerilog Assertions Handbook, 4th Edition
218 SystemVerilog Assertions Handbook, 4th Edition Synchronous FIFO to be used as an IP. FIFO management (e.g., push, pop, error handling) is external to the FIFO. SystemVerilog Assertions in the Design
More informationCSE 502: Computer Architecture
CSE 502: Computer Architecture SystemVerilog More Resources Cannot cover everything in one day You will likely need to look up reference material: SystemVerilog for VHDL Users: http://www.systemverilog.org/techpapers/date04_systemverilog.pdf
More informationPragmatic Simulation-Based Verification of Clock Domain Crossing Signals and Jitter using SystemVerilog Assertions
Pragmatic Simulation-Based Verification of Clock Domain Crossing Signals and Jitter using SystemVerilog Assertions Mark Litterick (Verification Consultant) mark.litterick@verilab.com 2 Introduction Clock
More informationFSM and Efficient Synthesizable FSM Design using Verilog
FSM and Efficient Synthesizable FSM Design using Verilog Introduction There are many ways to code FSMs including many very poor ways to code FSMs. This lecture offers guidelines for doing efficient coding,
More information7.3.3 Same Inputs in Antecedent and Consequent
Formal Verification Using Assertions 249 There are some special scenarios in which the user may want to intentionally toggle the reset signal during a session. This may be needed to check conditions such
More informationSugar 2.0 An Introduction
Sugar 2.0 An Introduction Cindy Eisner 1 Dana Fisman 1,2 1 IBM Haifa Research Laboratory 2 Weizmann Institute of Science, Rehovot, Israel {eisner,danaf}@il.ibm.com 1 Introduction Sugar is a language for
More informationPragmatic Simulation-Based Verification of Clock Domain Crossing Signals and Jitter using SystemVerilog Assertions
Pragmatic Simulation-Based Verification of Clock Domain Crossing Signals and Jitter using SystemVerilog Assertions Mark Litterick, Verilab, Munich, Germany. (mark.litterick@verilab.com) Abstract Recent
More informationSystemVerilog Assertions Are For Design Engineers Too!
SystemVerilog Assertions Are For Design Engineers Too! Don Mills LCDM Engineering mills@lcdm-eng.com Stuart Sutherland Sutherland HDL, Inc. stuart@sutherland-hdl.com ABSTRACT SystemVerilog Assertions (SVA)
More informationSVA in a UVM Class-based Environment by Ben Cohen, author, consultant, and trainer
SVA in a UVM Class-based Environment by Ben Cohen, author, consultant, and trainer INTRODUCTION Verification can be defined as the check that the design meets the requirements. How can this be achieved?
More informationEECS 270 Verilog Reference: Sequential Logic
1 Introduction EECS 270 Verilog Reference: Sequential Logic In the first few EECS 270 labs, your designs were based solely on combinational logic, which is logic that deps only on its current inputs. However,
More informationProperty Mining using Dynamic Dependency Graphs. Jan Malburg, Tino Flenker, and Görschwin Fey
DLR.de Chart 1 Mining using Dynamic Dependency Graphs> ASP-DAC'17 Mining using Dynamic Dependency Graphs Jan Malburg, Tino Flenker, and Görschwin Fey DLR.de Chart 2 Mining using Dynamic Dependency Graphs>
More informationAssertions: Too good to be reserved for verification only.
Assertions: Too good to be reserved for verification only. Written by Brian Bailey Abstract There has been a lot of talk in the industry about the usefulness of assertions as part of a complete verification
More informationQuick Introduction to SystemVerilog: Sequental Logic
! Quick Introduction to SystemVerilog: Sequental Logic Lecture L3 8-545 Advanced Digital Design ECE Department Many elements Don Thomas, 24, used with permission with credit to G. Larson Today Quick synopsis
More informationUniversal Verification Methodology (UVM) Module 5
Universal Verification Methodology (UVM) Module 5 Venky Kottapalli Prof. Michael Quinn Spring 2017 Agenda Assertions CPU Monitor System Bus Monitor (UVC) Scoreboard: Cache Reference Model Virtual Sequencer
More informationSVA Advanced Topics: SVAUnit and Assertions for Formal
SVA Advanced Topics: SVAUnit and Assertions for Formal SystemVerilog Assertions Verification with SVAUnit Andra Radu Ionuț Ciocîrlan 2/29/2016 Andra Radu - AMIQ Consulting Ionuț Ciocîrlan - AMIQ Consulting
More informationLaboratory Exercise 3 Davide Rossi DEI University of Bologna AA
Laboratory Exercise 3 Davide Rossi DEI University of Bologna AA 2017-2018 Objectives Summary of finite state machines (Mealy, Moore) Description of FSMs in System Verilog Design of control blocks based
More informationOPEN VERIFICATION LIBRARY
A PPENDIX A OPEN VERIFICATION LIBRARY The Accellera Open Verification Library [Accellera OVL 2003] provides designers, integrators, and verification engineers with a single, vendor-independent assertion
More informationIP Core Design. Lecture 11 Introduction to PSL
IP Core Design Lecture 11 Juinn-Dar Huang, Ph.D. Assistant Professor jdhuang@mail.nctu.edu.tw November 2004 1 Content Overview Fundamentals Boolean Layer Temporal Layer SERE Temporal Layer FL Property
More information7.3 Case Study - FV of a traffic light controller
Formal Verification Using Assertions 247 7.3 Case Study - FV of a traffic light controller 7.3.1 Model This design represents a simple traffic light controller for a North-South and East-West intersection.
More informationVCS SystemVerilog Assertions Training Exercises
VCS SystemVerilog Assertions Training Exercises LAB : SVA / VCS Overall Inline Tool Flow using checkers Goal Get Familiar with Inlined SVA Flow Location SVA/lab_ Design Traffic Light Controller Allocated
More informationEECS 4340: Computer Hardware Design Unit 4: Validation
EECS 4340: Unit 4: Validation Prof. Simha Sethumadhavan Reference Book: System Verilog for Verification Agenda Last Unit Design abstractions Basic primitives This Unit Validation Forthcoming Design Tips
More informationSystemVerilog Assertions in the Design Process 213
SystemVerilog Assertions in the Design Process 213 6.6 RTL Design Assertions, generated during the architectural planning phases, greatly facilitate the writing of the RTL implementation because they help
More informationContents 1 Introduction 2 Functional Verification: Challenges and Solutions 3 SystemVerilog Paradigm 4 UVM (Universal Verification Methodology)
1 Introduction............................................... 1 1.1 Functional Design Verification: Current State of Affair......... 2 1.2 Where Are the Bugs?.................................... 3 2 Functional
More informationChap 4 Connecting the Testbench and. Design. Interfaces Clocking blocks Program blocks The end of simulation Top level scope Assertions
Chap 4 Connecting the Testbench and Interfaces Clocking blocks Program blocks The end of simulation Top level scope Assertions Design 1 4 Connecting the Testbench and Design Testbench wraps around the
More informationSystemVerilog HDL - a programming language
SystemVerilog HDL - a programming language module hdl1; integer A, B, C; initial begin A = 3; B = 10; $display( A, B, C ); C = A+B; $display( A, B, C ); for ( A = 3 ; A > 0 ; A = A-1 ) begin C = C*B; $display(
More informationWhat, If Anything, In SystemVerilog Will Help Me With FPGA-based Design. Stuart Sutherland, Consultant and Trainer, Sutherland HDL, Inc.
What, If Anything, In SystemVerilog Will Help Me With FPGA-based Design Stuart Sutherland, Consultant and Trainer, Sutherland HDL, Inc. About the Presenter... Stuart Sutherland, SystemVerilog wizard Independent
More informationSystemC AssertionLibrary
SystemC AssertionLibrary SystemC Users Group 22 August 2005 Jacob Smit, Michael Velten, Volkan Esen Thomas Steininger, Wolfgang Ecker, Michael Mrva Infineon Technologies Motivation SystemC gains more and
More informationSynthesis of Synchronous Assertions with Guarded Atomic Actions
Synthesis of Synchronous Assertions with Guarded Atomic Actions Michael Pellauer, Mieszko Lis, Donald Baltus, Rishiyur Nikhil Massachusetts Institute of Technology Bluespec, Inc. pellauer@csail.mit.edu,
More informationLast Lecture: Divide by 3 FSM
Last Lecture: Divide by 3 FSM Output should be 1 every 3 clock cycles S2 S0 S1 The double circle indicates the reset state Slide derived from slides by Harris & Harris from their book 1 Finite State Machines
More informationAsynchronous Behaviors Meet Their Match with SystemVerilog Assertions
Asynchronous Behaviors Meet Their Match with SystemVerilog Assertions Doug Smith Doulos 16165 Monterey Road, Suite 109 Morgan Hill, CA USA +1-888-GO DOULOS doug.smith@doulos.com ABSTRACT Most digital designs
More informationProperty-based design with HORUS / SYNTHORUS
Property-based design with HORUS / SYNTHORUS Dominique Borrione, Negin Javaheri, Katell Morin-Allory, Yann Oddos, Alexandre Porcher Radboud University, Nijmegen 1 March 27, 2013 Functional specifications
More informationHardware Design Verification: Simulation and Formal Method-Based Approaches William K Lam Prentice Hall Modern Semiconductor Design Series
Design Verification An Introduction Main References Hardware Design Verification: Simulation and Formal Method-Based Approaches William K Lam Prentice Hall Modern Semiconductor Design Series A Roadmap
More informationON THE EFFECTIVENESS OF ASSERTION-BASED VERIFICATION
ON THE EFFECTIVENESS OF ASSERTION-BASED VERIFICATION IN AN INDUSTRIAL CONTEXT L.Pierre, F.Pancher, R.Suescun, J.Quévremont TIMA Laboratory, Grenoble, France Dolphin Integration, Meylan, France Thales Communications
More informationAPPLIED FORMAL VERIFICATION
APPLIED FORMAL VERIFICATION This page intentionally left blank APPLIED FORMAL VERIFICATION DOUGLAS L. PERRY Virtutech, Inc. HARRY D. FOSTER Jasper Design Automation, Inc. McGraw-Hill New York Chicago San
More informationLast Lecture. Talked about combinational logic always statements. e.g., module ex2(input logic a, b, c, output logic f); logic t; // internal signal
Last Lecture Talked about combinational logic always statements. e.g., module ex2(input logic a, b, c, output logic f); logic t; // internal signal always_comb t = a & b; f = t c; should use = (called
More informationRecommended Design Techniques for ECE241 Project Franjo Plavec Department of Electrical and Computer Engineering University of Toronto
Recommed Design Techniques for ECE241 Project Franjo Plavec Department of Electrical and Computer Engineering University of Toronto DISCLAIMER: The information contained in this document does NOT contain
More informationECEN 468 Advanced Logic Design
ECEN 468 Advanced Logic Design Lecture 28: Synthesis of Language Constructs Synthesis of Nets v An explicitly declared net may be eliminated in synthesis v Primary input and output (ports) are always retained
More informationUsing SystemVerilog Assertions for Functional Coverage
Using SystemVerilog Assertions for Functional Coverage Mark Litterick (Verification Consultant) mark.litterick@verilab.com 2 Outline Demonstrate capability of SVA for implementing a complex functional
More informationUniversity of Toronto Faculty of Applied Science and Engineering Edward S. Rogers Sr. Department of Electrical and Computer Engineering
University of Toronto Faculty of Applied Science and Engineering Edward S. Rogers Sr. Department of Electrical and Computer Engineering Final Examination ECE 241F - Digital Systems Examiners: S. Brown,
More informationSystemVerilog Assertion Linting: Closing Potentially Critical Verification Holes
SystemVerilog Assertion Linting: Closing Potentially Critical Verification Holes Laurence S. Bisht, Dmitry Korchemny, Erik Seligman Intel Corporation {laurence.s.bisht, dmitry.korchemny, erik.seligman}@intel.com
More informationSystemVerilog Data Types
SystemVerilog Data Types This tutorial describes the new data types that Systemverilog introduces. Most of these are synthesisable, and should make RTL descriptions easier to write and understand. Integer
More informationSVA Alternative for Complex Assertions
SVA Alternative for Complex Assertions by Ben Cohen, VHDL Cohen Publishing Assertion-based verification has been an integral part of modern-day design verification. Concurrent SVA is a powerful assertion
More informationTestbenches for Sequential Circuits... also, Components
! Testbenches for Sequential Circuits... also, Components Lecture L04 18-545 Advanced Digital Design ECE Department Many elements Don Thomas, 2014, used with permission with credit to G. Larson State Transition
More informationThere are two places where Boolean boolean expressions occur in concurrent properties assertions:
Motivation It is often the case that all the concurrent assertions that are placed in a design unit share the same clock and disable iff condition. While it is possible to define a default clocking for
More informationVerilog Coding Guideline
Verilog Coding Guideline Digital Circuit Lab TA: Po-Chen Wu Outline Introduction to Verilog HDL Verilog Syntax Combinational and Sequential Logics Module Hierarchy Write Your Design Finite State Machine
More informationAutomated Debugging of SystemVerilog Assertions
Automated Debugging of SystemVerilog Assertions Brian Keng 1, Sean Safarpour 2, Andreas Veneris 1,3 Abstract In the last decade, functional verification has become a major bottleneck in the design flow.
More informationFeaturing: SystemVerilog Assertions: WISHBONE Case Study. ...see page 5. verification
Featuring: SystemVerilog Assertions: WISHBONE Case Study...see page 5 I encourage you to take a moment to help us make Verification Horizons more informative and enjoyable for you. In the meantime, we
More informationVerilog for Synthesis Ing. Pullini Antonio
Verilog for Synthesis Ing. Pullini Antonio antonio.pullini@epfl.ch Outline Introduction to Verilog HDL Describing combinational logic Inference of basic combinational blocks Describing sequential circuits
More informationThe Application of Formal Technology on Fixed-Point Arithmetic SystemC Designs
The Application of Formal Technology on Fixed-Point Arithmetic SystemC Designs Sven Beyer, OneSpin Solutions, Munich, Germany, sven.beyer@onespin-solutions.com Dominik Straßer, OneSpin Solutions, Munich,
More informationTestbench and Simulation
Testbench and Simulation Graphics: Alexandra Nolte, Gesine Marwedel, 2003 Focus of this Class Understand the simulator Event Based Simulation Testbenches and verification Approaches and metodologies Examples:
More informationSequential Circuits as Modules with Interfaces. Arvind Computer Science & Artificial Intelligence Lab M.I.T.
Sequential Circuits as Modules with Interfaces Arvind Computer Science & Artificial Intelligence Lab M.I.T. L07-1 Shortcomings of the current hardware design practice Complex hardware is viewed as a bunch
More informationSynchronous Design. Synchronous design means that all registers are clocked by the same signal. Synchronous design is always desirable in
Synchronous Design Synchronous design means that all registers are clocked by the same signal. Synchronous design is always desirable in digital circuits. Not all events are synchronous. 6 Latch Instability
More informationArtifacts of Custom Checkers in Questa Power Aware Dynamic Simulation
Artifacts of Custom Checkers in Questa Power Aware Dynamic Simulation by Progyna Khondkar, Mentor Graphics INTRODUCTION The Questa Power Aware (PA) dynamic simulator (PA-SIM) provides a wide range of automated
More informationDesignCon AMBA Compliance Checking Using Static Functional Verification
DesignCon 2005 AMBA Compliance Checking Using Static Functional Verification Adrian J. Isles, Averant, Inc. aisles@averant.com Jeremy Sonander, Saros Technology UK jeremy@saros.co.uk Mike Turpin, ARM UK
More informationTechniques for Digital Systems Lab. Verilog HDL. Tajana Simunic Rosing. Source: Eric Crabill, Xilinx
CSE140L: Components and Design Techniques for Digital Systems Lab Verilog HDL Tajana Simunic Rosing Source: Eric Crabill, Xilinx 1 More complex behavioral model module life (n0, n1, n2, n3, n4, n5, n6,
More informationEECS150 - Digital Design Lecture 20 - Finite State Machines Revisited
EECS150 - Digital Design Lecture 20 - Finite State Machines Revisited April 2, 2009 John Wawrzynek Spring 2009 EECS150 - Lec20-fsm Page 1 Finite State Machines (FSMs) FSM circuits are a type of sequential
More informationCSE140L: Components and Design Techniques for Digital Systems Lab
CSE140L: Components and Design Techniques for Digital Systems Lab Tajana Simunic Rosing Source: Vahid, Katz, Culler 1 Announcements & Outline Lab 4 due; demo signup times listed on the cse140l site Check
More informationVME64M VME64 MASTER CONTROLLER. Version 1.1
Datasheet VME64M VME64 MASTER CONTROLLER Version 1.1 INICORE INC. 5600 Mowry School Road Suite 180 Newark, CA 94560 t: 510 445 1529 f: 510 656 0995 e: info@inicore.com www.inicore.com C O P Y R I G H T
More informationThe University of Alabama in Huntsville ECE Department CPE Midterm Exam February 26, 2003
The University of Alabama in Huntsville ECE Department CPE 526 01 Midterm Exam February 26, 2003 1. (20 points) Describe the following logic expression (A B D) + (A B C) + (B C ) with a structural VHDL
More informationLeveraging Formal Verification Throughout the Entire Design Cycle
Leveraging Formal Verification Throughout the Entire Design Cycle Verification Futures Page 1 2012, Jasper Design Automation Objectives for This Presentation Highlight several areas where formal verification
More informationSynthesis of Combinational and Sequential Circuits with Verilog
Synthesis of Combinational and Sequential Circuits with Verilog What is Verilog? Hardware description language: Are used to describe digital system in text form Used for modeling, simulation, design Two
More informationJasperGold. Agenda. High-Level Formal Verification
JasperGold High-Level Formal Verification Vigyan Singhal Harry D. Foster 1 Agenda Jasper introduction Model checking Block-level verification - High-level requirements - Formal testplan - Coverage Formal
More informationCSE140L: Components and Design
CSE140L: Components and Design Techniques for Digital Systems Lab Tajana Simunic Rosing Source: Vahid, Katz, Culler 1 Grade distribution: 70% Labs 35% Lab 4 30% Lab 3 20% Lab 2 15% Lab 1 30% Final exam
More informationAcceleration of SAT-based Iterative Property Checking
Acceleration of SAT-based Iterative Property Checking Daniel Große Rolf Drechsler Institute of Computer Science University of Bremen 28359 Bremen, Germany {grosse, drechsle}@informatik.uni-bremen.de Abstract
More informationCprE 583 Reconfigurable Computing
Recap Moore FSM Example CprE / ComS 583 Reconfigurable Computing Moore FSM that recognizes sequence 10 0 1 0 1 S0 / 0 S1 / 0 1 S2 / 1 Prof. Joseph Zambreno Department of Electrical and Computer Engineering
More informationSequential Logic Design
Sequential Logic Design Design of Digital Circuits 2017 Srdjan Capkun Onur Mutlu (Guest starring: Frank K. Gürkaynak and Aanjhan Ranganathan) http://www.syssec.ethz.ch/education/digitaltechnik_17 Adapted
More informationECE 545 Lecture 12. Datapath vs. Controller. Structure of a Typical Digital System Data Inputs. Required reading. Design of Controllers
ECE 545 Lecture 12 Design of Controllers Finite State Machines and Algorithmic State Machine (ASM) Charts Required reading P. Chu, using VHDL Chapter 1, Finite State Machine: Principle & Practice Chapter
More informationTool demonstration: Spin
Tool demonstration: Spin 1 Spin Spin is a model checker which implements the LTL model-checking procedure described previously (and much more besides). Developed by Gerard Holzmann of Bell Labs Has won
More informationSubject: Scheduling Region Questions and Problems of new SystemVerilog commands
Subject: Scheduling Region Questions and Problems of new SystemVerilog commands I have read and re-read sections 14-17 of the SystemVerilog 3.1 Standard multiple times and am still confused about exactly
More informationDesign and Simulation of Router Using WWF Arbiter and Crossbar
Design and Simulation of Router Using WWF Arbiter and Crossbar M.Saravana Kumar, K.Rajasekar Electronics and Communication Engineering PSG College of Technology, Coimbatore, India Abstract - Packet scheduling
More informationIntroduction to Verilog HDL. Verilog 1
Introduction to HDL Hardware Description Language (HDL) High-Level Programming Language Special constructs to model microelectronic circuits Describe the operation of a circuit at various levels of abstraction
More informationLecture 25: Busses. A Typical Computer Organization
S 09 L25-1 18-447 Lecture 25: Busses James C. Hoe Dept of ECE, CMU April 27, 2009 Announcements: Project 4 due this week (no late check off) HW 4 due today Handouts: Practice Final Solutions A Typical
More informationComprehensive Statistical Analysis of Min & Max of over 100 parameters at user specific addresses
PMC PCI-X v1108 Analyzer & Exerciser 66 MHz, 64 Bit Analyzer/Exerciser Comprehensive Statistical Analysis of Min & Max of over 100 parameters at user specific addresses 533 MBytes/Sec real-time continuous
More informationVerilog for High Performance
Verilog for High Performance Course Description This course provides all necessary theoretical and practical know-how to write synthesizable HDL code through Verilog standard language. The course goes
More informationECE 2300 Digital Logic & Computer Organization. More Sequential Logic Verilog
ECE 2300 Digital Logic & Computer Organization Spring 2018 More Sequential Logic Verilog Lecture 7: 1 Announcements HW3 will be posted tonight Prelim 1 Thursday March 1, in class Coverage: Lectures 1~7
More informationSynchronous Design. Latch Instability. RS Latch. RS Latch Timing. Signal Arrival Times. Simultaneous Switching
Synchronous Design Synchronous design means that all registers are clocked by the same signal. Synchronous design is always desirable in digital circuits. Not all events are synchronous. Latch Instability
More informationNetwork Protocol Design and Evaluation
Network Protocol Design and Evaluation 05 - Validation, Part I Stefan Rührup Summer 2009 Overview In the last lectures: Specification of protocols and data/message formats In this chapter: Building a validation
More informationVERIFICATION OF AHB PROTOCOL USING SYSTEM VERILOG ASSERTIONS
VERIFICATION OF AHB PROTOCOL USING SYSTEM VERILOG ASSERTIONS Nikhil B. Gaikwad 1, Vijay N. Patil 2 1 P.G. Student, Electronics & Telecommunication Department, Pimpri Chinchwad College of Engineering, Pune,
More informationSystemVerilog Assertions for Clock-Domain-Crossing Data Paths. Don Mills Microchip Technology Inc.
SystemVerilog Assertions for Clock-Domain-Crossing Data Paths Don Mills Microchip Technology Inc. Outline Brief Review of CDC Concepts and Issues Basics of SystemVerilog Assertions Modeling Techniques
More informationDesign Creation & Synthesis Division Avoid FPGA Project Delays by Adopting Advanced Design Methodologies
Design Creation & Synthesis Division Avoid FPGA Project Delays by Adopting Advanced Design Methodologies Alex Vals, Technical Marketing Engineer Mentor Graphics Corporation June 2008 Introduction Over
More informationTiming and Verification
Timing and Verification Design of Digital Circuits 2017 Srdjan Capkun Onur Mutlu (Guest starring: Frank K. Gürkaynak and Aanjhan Ranganathan) http://www.syssec.ethz.ch/education/digitaltechnik_17 Adapted
More informationModeling Synchronous Logic Circuits. Debdeep Mukhopadhyay IIT Madras
Modeling Synchronous Logic Circuits Debdeep Mukhopadhyay IIT Madras Basic Sequential Circuits A combinational circuit produces output solely depending on the current input. But a sequential circuit remembers
More informationSmall Router Design Using. Bluespec SystemVerilog
Small Router Design Using Bluespec SystemVerilog Daian Sova M. Filip Master AAC SBT Router Design 1 1. SBT Router Block Description The SBT Router is a simple router which has one input port (8 bits wide)
More informationUnifying Design and Verification
Unifying Design and Verification SystemVerilog Overview Agenda SystemVerilog Introduction Synopsys SystemVerilog Solution SystemVerilog Features and Successful Stories 2006 Synopsys, Inc. (2) Agenda SystemVerilog
More informationFormal Verification of Synchronizers in Multi-Clock Domain SoCs. Tsachy Kapschitz and Ran Ginosar Technion, Israel
Formal Verification of Synchronizers in Multi-Clock Domain SoCs Tsachy Kapschitz and Ran Ginosar Technion, Israel Outline The problem Structural verification 1CD control functional verification MCD control
More informationTest Scenarios and Coverage
Test Scenarios and Coverage Testing & Verification Dept. of Computer Science & Engg,, IIT Kharagpur Pallab Dasgupta Professor, Dept. of Computer Science & Engg., Professor-in in-charge, AVLSI Design Lab,
More informationLogic Circuits II ECE 2411 Thursday 4:45pm-7:20pm. Lecture 3
Logic Circuits II ECE 2411 Thursday 4:45pm-7:20pm Lecture 3 Lecture 3 Topics Covered: Chapter 4 Discuss Sequential logic Verilog Coding Introduce Sequential coding Further review of Combinational Verilog
More informationAssertions & Design-by-Contract using JML Erik Poll University of Nijmegen
Assertions & Design-by-Contract using JML Erik Poll University of Nijmegen Erik Poll - JML p.1/39 Overview Assertions Design-by-Contract for Java using JML Contracts and Inheritance Tools for JML Demo
More informationOptimizing the PCI Interface Configuration for the RC32336
Optimizing the PCI Interface Configuration for the RC32336 Application Note AN-436 Revision History June 10, 2003: Initial publication. By Rakesh Bhatia Background The RC32336 device is a member of the
More information