Introduction to SystemVerilog Assertions (SVA)
|
|
- Teresa Allen
- 6 years ago
- Views:
Transcription
1 1 Verification of Digital Systems, Sring 2018 Introduction to SystemVerilog Assertions (SVA) Harry D. Foster Chief Scientist Verification IC Verification Solutions Division February 2018 Lecture Overview In this lecture, you will... Learn the structure of the SVA language Learn how to construct sequence Learn how to construct roerties Aly SVA on real examles 2 2 Deartment of Electrical and Comuter Engineering, The University of Texas at Austin
2 2 Verification of Digital Systems, Sring 2018 LINEAR FORMALISM Brief Review of LTL and Introduction of Regular Exressions SystemVerilog Assertions SVA is based on linear temoral logic (LTL) built over sublanguages of regular exressions. Most engineers will find SVA sufficient to exress most common assertions required for hardware design. 4 4 Deartment of Electrical and Comuter Engineering, The University of Texas at Austin
3 3 Verification of Digital Systems, Sring 2018 What We can Exress in LTL All Boolean logic roositions - Process 2 is in the critical section X holds in the next state. Process 2 will be in the critical section in the next state X 5 5 What We can Exress in LTL F sometimes (i.e., eventually) holds. eventually rocess 2 will enter the critical section F G always (i.e., globally) holds. rocess 1 and 2 are always mutually exclusive G 6 6 Deartment of Electrical and Comuter Engineering, The University of Texas at Austin
4 4 Verification of Digital Systems, Sring 2018 What We can Exress in LTL [ U q] q holds now or sometime in the future and holds from now until q holds (strong) U q q [ W q] holds from now until q holds (weak) W q 7 7 What We can Exress in LTL Weak oerators X, G, W Used to exress safety roerties, i.e. something bad never haens Strong oerators F, U Used to exress liveness roerties, i.e. something good eventually haens Safety roerties ut no obligation on the future, liveness roerties do! 8 8 Deartment of Electrical and Comuter Engineering, The University of Texas at Austin
5 5 Verification of Digital Systems, Sring 2018 What We can Exress in LTL LTL formulas can be combined using the,,, logic connectors (negation, conjunction, disjunction, imlication) For examle. G ( request F grant ) request grant 9 9 What We can Exress in LTL LTL formulas can be combined using the,,, logic connectors (negation, conjunction, disjunction, imlication) For examle. G ( request F grant ) Temoral oerators can be combined too FG Deartment of Electrical and Comuter Engineering, The University of Texas at Austin
6 6 Verification of Digital Systems, Sring 2018 What We Cannot Exress in LTL Counting examle: is asserted in every even cycle All the following traces satisfy this roerty!,,!,,,,,.,,!,,, No LTL formula can exress this roerty Regular Exressions Regular exressions describe sets of finite words w=a1,a2,,an. a1,a2, are letters in an alhabet. Regular exressions can exress counting modulo n. The * oerator enables counting modulo n. (ab)* - a regular exression describing the set of words: ε - (the emty word) ab abab ababab Deartment of Electrical and Comuter Engineering, The University of Texas at Austin
7 7 Verification of Digital Systems, Sring 2018 Regular Exressions For reactive systems a letter in the alhabet is a Boolean exression The set of comutations satisfying is asserted in every even cycle is described by the SVA regular exression (1`b1 ## )[*] A regular exression by itself is not a roerty Later: building roerties from regular exressions in SVA What Regular Exressions Cannot Exress The behavior, eventually holds forever cannot be exressed by a regular exression It can be exressed in LTL as : F G Deartment of Electrical and Comuter Engineering, The University of Texas at Austin
8 8 Verification of Digital Systems, Sring 2018 Linear Formalisms LTL and regular exressions are linear formalisms Linear formalisms can be used to exress mainly roerties that are intended to hold on all comutations (i.e., executions of a design model). Most roerties required for the secification of digital designs can be exressed using linear formalism What cannot exress in linear formalisms: There exists a comutation in which eventually holds forever LTL imlicitly quantifies universally over aths SVA LANGUAGE STRUCTURE Deartment of Electrical and Comuter Engineering, The University of Texas at Austin
9 9 Verification of Digital Systems, Sring 2018 Assertion Units Checker ackaging Directives (assert, cover) assert, assume, cover Proerties Sequences (Sequential Exressions) Boolean Exressions Secification of behavior; desired or undesired How Boolean events are related over time True or false assert roerty ) disable iff (~rst_n)!(grant0 & grant1)); Assertion Units Directives (assert, cover) Proerties Sequences (Sequential Exressions) Boolean Exressions rst_n!(grant0 & grant1) error Deartment of Electrical and Comuter Engineering, The University of Texas at Austin
10 10 Verification of Digital Systems, Sring 2018 SVA rovides a mechanism to asynchronously disable a roerty during a reset using the SVA disable iff clause assert roerty (@(osedge ) disable iff (~rst_n)!(grant0 & grant1)); Note: rst_n is an active low reset in this examle MAPPING SVA INTO LTL Deartment of Electrical and Comuter Engineering, The University of Texas at Austin
11 11 Verification of Digital Systems, Sring 2018 LTL Oerators in SVA All Boolean logic roositions - Process 2 is in the critical section LTL: X holds in the next state. SVA: nexttime [n] holds in the next state. Process 2 will be in the critical section in the next state nexttime LTL Oerators in SVA LTL: F eventually holds. SVA: eventually eventually holds (weak). eventually rocess 2 will enter the critical section eventually Note: s_eventually is a strong version of this oerator in SVA Deartment of Electrical and Comuter Engineering, The University of Texas at Austin
12 12 Verification of Digital Systems, Sring 2018 LTL Oerators in SVA LTL: G always (i.e., globally) holds. SVA: always always (i.e., globally) holds. rocess 1 and 2 are always mutually exclusive always Note: there is an imlicit always when asserting a roerty: assert roerty(); LTL Oerators in SVA LTL: [ U q] q holds now or sometime in the future and holds from now until q holds (strong) SVA: s_until q s_until q q LTL: [ W q] holds from now until q holds (weak) SVA: until q until q Deartment of Electrical and Comuter Engineering, The University of Texas at Austin
13 13 Verification of Digital Systems, Sring 2018 SVA with LTL Oerator Examle assert roerty disable iff (reset) $rose(req) imlies!done s_until grnt); SEQUENCES Deartment of Electrical and Comuter Engineering, The University of Texas at Austin
14 14 Verification of Digital Systems, Sring 2018 Sequences So far we have examined LTL-based assertions We now we introduce SVA sequences Multile Boolean exressions are evaluated in a linear order of increasing time Assertion Units Directives (assert, cover) Proerties Sequences (Sequential Exressions) Boolean Exressions Sequence Temoral delay ##n with an integer n. start ##1 transfer start transfer Deartment of Electrical and Comuter Engineering, The University of Texas at Austin
15 15 Verification of Digital Systems, Sring 2018 Sequence Temoral delay ##n with an integer n. start ##2 transfer start transfer Sequence Temoral delay ##[m:n] with range [m:n] start ##[0:2] transfer start transfer Deartment of Electrical and Comuter Engineering, The University of Texas at Austin
16 16 Verification of Digital Systems, Sring 2018 Sequence Consecutive reetition [*m] or range [*m:n] - Use $ to reresent infinity start[*2] ##1 transfer start transfer Sequence Consecutive reetition [*m] or range [*m:n] - Use $ to reresent infinity start[*1:2] ##1 transfer start transfer Deartment of Electrical and Comuter Engineering, The University of Texas at Austin
17 17 Verification of Digital Systems, Sring 2018 Sequence Consecutive reetition [*m] or range [*m:n] - Use $ to reresent infinity start[*1:2] ##1 transfer start transfer Sequence Consecutive reetition [*m] or range [*m:n] - Use $ to reresent infinity start[*1:2] ##1 transfer start transfer Note: This also matches the sequence secification!!!! Deartment of Electrical and Comuter Engineering, The University of Texas at Austin
18 18 Verification of Digital Systems, Sring 2018 Sequence Non-consecutive reetition [=m] or [=m:n] start[=2] ##1 transfer start transfer [*] reresents zero to infinity start[=2]!start[*] ##1 start ##1!start[*] ##1 start ##1!start[*] Sequence Goto non-consecutive reetition [->m] or [->m:n] start[->2] ##1 transfer start transfer [*] reresents zero to infinity start[->2]!start[*] ##1 start ##1!start[*] ##1 start Deartment of Electrical and Comuter Engineering, The University of Texas at Austin
19 19 Verification of Digital Systems, Sring 2018 Proerties Assertion Units Directives (assert, cover) Proerties Sequences (Sequential Exressions) Boolean Exressions Proerties Overlaing sequence imlication oerator -> ready ##1 start -> go ##1 done ready start go done assertion roerty ) ready ##1 start -> go ##1 done ); Deartment of Electrical and Comuter Engineering, The University of Texas at Austin
20 20 Verification of Digital Systems, Sring 2018 Proerties Non-overlaing sequence imlication oerator => ready ##1 start => go ##1 done ready start go done NOTE: A => B is the same as A -> ##1 B Fair Arbitration Scheme Examle Asserting that an arbiter is fair To be fair, a ending request for a articular client should never have to wait more than two arbitration cycles Otherwise, the arbiter unfairly issued multile grants to a different client req[0] req[1] Arbiter gnt[0] gnt[1] Deartment of Electrical and Comuter Engineering, The University of Texas at Austin
21 21 Verification of Digital Systems, Sring 2018 Fair Arbitration Scheme Examle a_0_fair: assert roerty ) disable iff (reset) $rose(req[0]) -> not (!gnt[0] throughout (gnt[1])[->2])); req[0] req[0] req[1] Arbiter gnt[0] gnt[1] gnt[0] gnt[1] Fair Arbitration Scheme Examle a_0_fair: assert roerty ) disable iff (reset) req[0] -> not (!gnt[0] throughout (gnt[1])[->2])); req[0] req[0] req[1] Arbiter gnt[0] gnt[1] gnt[0] gnt[1] Deartment of Electrical and Comuter Engineering, The University of Texas at Austin
22 22 Verification of Digital Systems, Sring 2018 Fair Arbitration Scheme Examle a_0_fair: assert roerty ) disable iff (reset) $rose(req[0]) -> not (!gnt[0] throughout (gnt[1])[->2])); req[0] req[0] req[1] Arbiter gnt[0] gnt[1] gnt[0] gnt[1] Fair Arbitration Scheme Examle a_1_fair: assert roerty ) disable iff (reset) $rose(req[1] -> not (!gnt[1] throughout (gnt[0])[->2])); req[0] req[0] req[1] Arbiter gnt[0] gnt[1] gnt[0] gnt[1] Deartment of Electrical and Comuter Engineering, The University of Texas at Austin
23 23 Verification of Digital Systems, Sring 2018 Named sequences and roerties To facilitate reuse, roerties and sequences can be declared and then referenced by name Can be declared with or without arameters sequence s_o_retry; (req ##1 retry); endsequence sequence s_cache_fill(req, done, fill); (req ##1 done [=1] ##1 fill); endsequence Named roerties and sequences sequence s_o_retry; (req ##1 retry); endsequence sequence s_cache_fill(rdy, done, fill); (rdy ##1 done [=1] ##1 fill); endsequence assert roerty ) disable iff (reset) s_o_retry => s_cache_fill (my_rdy,my_done,my_fill)); Deartment of Electrical and Comuter Engineering, The University of Texas at Austin
24 24 Verification of Digital Systems, Sring 2018 Named roerties and sequences roerty _en_mutex(en0, ) disable iff (reset) ~(en0 & en1); endroerty assert roerty (_en_mutex(bus_en0, bus_en1)); Action blocks An SVA action block secifies the actions that are taken uon success or failure of the assertion The action block, if secified, is executed immediately after the evaluation of the assert exression assert roerty ) disable iff (reset)!(grant0 & grant1) ) else begin // action block fail statement $error( Mutex violation with grants. ); end Deartment of Electrical and Comuter Engineering, The University of Texas at Austin
25 25 Verification of Digital Systems, Sring 2018 System functions $rose( exression ) $fell( exression ) $stable( exression ) $ast( exression [, number_of_ticks] ) The need for $rose system function You must be recise when secifying! assertion roerty ) start -> ##2 Transfer); start transfer Deartment of Electrical and Comuter Engineering, The University of Texas at Austin
26 26 Verification of Digital Systems, Sring 2018 Eliminates multile matches You must be recise when secifying! assertion roerty ) $rose(start) -> ##2 Transfer); start transfer $rose(start) is a short cut for the sequence!start ##1 start System functions $onehot (<exression>) - Returns true if only one bit of the exression is high $onehot0 (<exression>) - Returns true if at most one bit of the exression is high $isunknown (<exression>) - Returns true if any bit of the exression is X or Z - This is equivalent to ^<exression> === bx Deartment of Electrical and Comuter Engineering, The University of Texas at Austin
27 27 Verification of Digital Systems, Sring 2018 Introduction to SVA Some assertions require additional modeling code In addition to the assertion constructs FIFO rst_n Controller ut get rst_n data_in A A full emty data_out // Assert that the FIFO controller cannot overflow nor underflow Introduction to SVA // assertion modeling code not art of the design `ifdef ASSERT_ON int cnt = 0; ) if (!rst_n) cnt <= 0; else cnt <= cnt + ut get; // assert no overflow assert roerty (@osedge disable iff (~rst_n)!((cnt + ut get) > `DEPTH)); // assert no underflow assert roerty (@osedge disable iff (!rst_n)!((cnt + ut) < get)); `endif Note: rst_n is an active low reset in this examle Deartment of Electrical and Comuter Engineering, The University of Texas at Austin
28 28 Verification of Digital Systems, Sring 2018 SVA Does and Don ts Never assert a sequence! assert roerty (@osedge ) (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 imlication oerator: assert roerty (@osedge ) (req => grnt ##1 done)); It s ok to cover a sequence It s ok to assert a forbidden sequence using not assert roerty (@osedge ) not (req ##1 done ##1 grant)); BUS-BASED DESIGN EXAMPLE Deartment of Electrical and Comuter Engineering, The University of Texas at Austin
29 29 Verification of Digital Systems, Sring 2018 Bus-Based Design Examle CPU 1 CPU 2 Bridge Dataath Control UART Arbiter Bus A I/F FIFO I/F Bus B Dataath Memory Controller Grahics Controller FIFO Timer Nonielined Bus Interface rst_n sel[0] en I/F addr write I/F rdata Master wdata Slave Deartment of Electrical and Comuter Engineering, The University of Texas at Austin
30 30 Verification of Digital Systems, Sring 2018 Non-Burst Write Transaction addr Addr 1 write sel[0] en wdata Data 1 BUS STATE INACTIVE START ACTIVE INACTIVE Non-Burst Read Transaction addr Addr 1 write sel[0] en rdata Data 1 BUS STATE INACTIVE START ACTIVE INACTIVE Deartment of Electrical and Comuter Engineering, The University of Texas at Austin
31 31 Verification of Digital Systems, Sring 2018 Concetual Bus States INACTIVE sel[0] == 0 en == 0 no transfer setu no transfer START sel[0] == 1 en == 0 transfer setu ACTIVE sel[0] == 1 en == Interface Requirements Proerty Name Bus legal treansitions Descrition _state_reset_inactive Initial state after reset is INACTIVE _valid_inactive_transition ACTIVE state does not follow INACTIVE _valid_start_transition Only ACTIVE state follows START _valid_active_transition ACTIVE state does not follow ACTIVE _no_error_state Bus state must be valid:!(se==0 & en==1) Bus stable signals no transfer INACTIVE sel[0] == 0 en == 0 setu START sel[0] == 1 en == 0 transfer setu ACTIVE sel[0] == 1 en == 1 _sel_stable _addr_stable _write_stable _wdata_stable Slave select signals remain stable from START to ACTIVE Address remains stable from START to ACTIVE Control remains stable from START to ACTIVE Data remains stable from START to ACTIVE Deartment of Electrical and Comuter Engineering, The University of Texas at Austin
32 32 Verification of Digital Systems, Sring 2018 Use Modeling Code to Simlify Coding `ifdef ASSERTION_ON //Ma bus control values to concetual states if (rst_n) begin bus_reset = 1; bus_inactive = 1; bus_start = 0; bus_active = 0; bus_error = 0; end else begin bus_reset = 0; bus_inactive = ~sel & ~en; bus_start = sel & ~en; bus_active = sel & en; bus_error = ~sel & en; end `endif no transfer INACTIVE sel[0] == 0 en == 0 setu START sel[0] == 1 en == 0 transfer ACTIVE sel[0] == 1 en == 1 setu SVA Examles roerty ) disable iff (bus_reset) ( bus_inactive) => ((bus_inactive) (bus_start)); endroerty a_valid_inactive_transition: assert roerty (_valid_inactive_transition); INACTIVE sel[0] == 0 en == 0 setu roerty ) disable iff (bus_reset) (bus_start) => (bus_active); endroerty a_valid_start_transition: assert roerty (_valid_start_transition); no transfer START sel[0] == 1 en == 0 transfer ACTIVE sel[0] == 1 en == 1 setu Deartment of Electrical and Comuter Engineering, The University of Texas at Austin
33 33 Verification of Digital Systems, Sring 2018 Instantiating Assertions within Modules module bus_controller (...);... always ) begin.... end always ) begin.... end Imlicit always assert roerty (_valid_start_transition); endmodule CHECKER PACKAGING Deartment of Electrical and Comuter Engineering, The University of Texas at Austin
34 34 Verification of Digital Systems, Sring 2018 Assertion Units Checker ackaging Directives (assert, cover) assert, assume, cover Proerties Sequences (Sequential Exressions) Boolean Exressions Secification of behavior; desired or undesired How Boolean events are related over time True or false SVA Checker Source: Dmitry Korchemny, SystemVerilog Assertions for Formal Verification, HVC Deartment of Electrical and Comuter Engineering, The University of Texas at Austin
35 35 Verification of Digital Systems, Sring 2018 Binding Checkers Source: Dmitry Korchemny, SystemVerilog Assertions for Formal Verification, HVC SUMMARY Deartment of Electrical and Comuter Engineering, The University of Texas at Austin
36 36 Verification of Digital Systems, Sring 2018 Lecture Reca In this lecture, I discussed... Discussed the structure of the SVA language Discussed how to construct sequence Discussed how to construct roerties Demonstrate SVA on real examles Discussed Checkers and Bind Deartment of Electrical and Comuter Engineering, The University of Texas at Austin
EECS 578 SVA mini-project Assigned: 10/08/15 Due: 10/27/15
EECS578 Prof. Bertacco Fall 2015 EECS 578 SVA mini-project Assigned: 10/08/15 Due: 10/27/15 1. Overview This project focuses on designing a test plan and a set of test programs for a digital reverberation
More informationEECS150 - Digital Design Lecture 10 - Interfacing. Recap and Topics
EECS150 - Digital Design Lecture 10 - Interfacing Oct. 1, 2013 Prof. Ronald Fearing Electrical Engineering and Computer Sciences University of California, Berkeley (slides courtesy of Prof. John Wawrzynek)
More informationGlitches/hazards and how to avoid them. What to do when the state machine doesn t fit!
State Machine Signaling Timing Behavior Glitches/hazards and how to avoid them SM Partitioning What to do when the state machine doesn t fit! State Machine Signaling Introducing Idle States (synchronous
More informationLogic Design. Flip Flops, Registers and Counters
Logic Design Flip Flops, Registers and Counters Introduction Combinational circuits: value of each output depends only on the values of inputs Sequential Circuits: values of outputs depend on inputs and
More informationLecture 2: Digi Logic & Bus
Lecture 2 http://www.du.edu/~etuttle/electron/elect36.htm Flip-Flop (kiikku) Sequential Circuits, Bus Online Ch 20.1-3 [Sta10] Ch 3 [Sta10] Circuits with memory What moves on Bus? Flip-Flop S-R Latch PCI-bus
More informationSynchronous Sequential Logic
Synchronous Sequential Logic Ranga Rodrigo August 2, 2009 1 Behavioral Modeling Behavioral modeling represents digital circuits at a functional and algorithmic level. It is used mostly to describe sequential
More informationMODULE 3. Combinational & Sequential logic
MODULE 3 Combinational & Sequential logic Combinational Logic Introduction Logic circuit may be classified into two categories. Combinational logic circuits 2. Sequential logic circuits A combinational
More informationMC9211 Computer Organization
MC9211 Computer Organization Unit 2 : Combinational and Sequential Circuits Lesson2 : Sequential Circuits (KSB) (MCA) (2009-12/ODD) (2009-10/1 A&B) Coverage Lesson2 Outlines the formal procedures for the
More informationEITF35: Introduction to Structured VLSI Design
EITF35: Introduction to Structured VLSI Design Part 4.2.1: Learn More Liang Liu liang.liu@eit.lth.se 1 Outline Crossing clock domain Reset, synchronous or asynchronous? 2 Why two DFFs? 3 Crossing clock
More informationCAS LX 502 Semantics. Meaning as truth conditions. Recall the trick we can do. How do we arrive at truth conditions?
CAS LX 502 Semantics 2a. Reference, Comositionality, Logic 2.1-2.3 Meaning as truth conditions! We know the meaning of if we know the conditions under which is true.! conditions under which is true = which
More informationChapter 4. Logic Design
Chapter 4 Logic Design 4.1 Introduction. In previous Chapter we studied gates and combinational circuits, which made by gates (AND, OR, NOT etc.). That can be represented by circuit diagram, truth table
More informationChapter. Synchronous Sequential Circuits
Chapter 5 Synchronous Sequential Circuits Logic Circuits- Review Logic Circuits 2 Combinational Circuits Consists of logic gates whose outputs are determined from the current combination of inputs. Performs
More informationOutline. EECS150 - Digital Design Lecture 27 - Asynchronous Sequential Circuits. Cross-coupled NOR gates. Asynchronous State Transition Diagram
EECS150 - Digital Design Lecture 27 - Asynchronous Sequential Circuits Nov 26, 2002 John Wawrzynek Outline SR Latches and other storage elements Synchronizers Figures from Digital Design, John F. Wakerly
More informationCHAPTER 4: Logic Circuits
CHAPTER 4: Logic Circuits II. Sequential Circuits Combinational circuits o The outputs depend only on the current input values o It uses only logic gates, decoders, multiplexers, ALUs Sequential circuits
More informationSequential Circuits. Output depends only and immediately on the inputs Have no memory (dependence on past values of the inputs)
Sequential Circuits Combinational circuits Output depends only and immediately on the inputs Have no memory (dependence on past values of the inputs) Sequential circuits Combination circuits with memory
More informationChapter 5. Introduction
Chapter 5 Synchronous Sequential Logic Chapter 5 Introduction Circuits require memory to store intermediate data Sequential circuits use a periodic signal to determine when to store values. A clock signal
More informationTwo types of state machine as classified by output formation
Two types of state machine as classified by output formation Moore: outputs formed by present state only Mealy: outputs formed by present state and input Also classified by state encoding Binary : 000,
More informationLogic Devices for Interfacing, The 8085 MPU Lecture 4
Logic Devices for Interfacing, The 8085 MPU Lecture 4 1 Logic Devices for Interfacing Tri-State devices Buffer Bidirectional Buffer Decoder Encoder D Flip Flop :Latch and Clocked 2 Tri-state Logic Outputs
More informationCPS311 Lecture: Sequential Circuits
CPS311 Lecture: Sequential Circuits Last revised August 4, 2015 Objectives: 1. To introduce asynchronous and synchronous flip-flops (latches and pulsetriggered, plus asynchronous preset/clear) 2. To introduce
More informationMomentary Changes in Outputs. State Machine Signaling. Oscillatory Behavior. Hazards/Glitches. Types of Hazards. Static Hazards
State Machine Signaling Momentary hanges in Outputs Timing ehavior Glitches/hazards and how to avoid them SM Partitioning What to do when the state machine doesn t fit! State Machine Signaling State Machine
More information4. Formal Equivalence Checking
4. Formal Equivalence Checking 1 4. Formal Equivalence Checking Jacob Abraham Department of Electrical and Computer Engineering The University of Texas at Austin Verification of Digital Systems Spring
More informationCS8803: Advanced Digital Design for Embedded Hardware
CS883: Advanced Digital Design for Embedded Hardware Lecture 4: Latches, Flip-Flops, and Sequential Circuits Instructor: Sung Kyu Lim (limsk@ece.gatech.edu) Website: http://users.ece.gatech.edu/limsk/course/cs883
More informationFSM Cookbook. 1. Introduction. 2. What Functional Information Must be Modeled
FSM Cookbook 1. Introduction Tau models describe the timing and functional information of component interfaces. Timing information specifies the delay in placing values on output signals and the timing
More informationChapter 5: Synchronous Sequential Logic
Chapter 5: Synchronous Sequential Logic NCNU_2016_DD_5_1 Digital systems may contain memory for storing information. Combinational circuits contains no memory elements the outputs depends only on the inputs
More informationINTRODUCTION In this lesson, we will analyze the different kinds of PLC programming focusing, in particular, on the LAD and STL programming method.
INTRODUCTION In this lesson, we will analyze the different kinds of PLC programming focusing, in particular, on the LAD and STL programming method. PLC PROGRAMMING METHOD During the process of programming,
More informationSignal Persistence Checking of Asynchronous System Implementation using SPIN
, March 18-20, 2015, Hong Kong Signal Persistence Checking of Asynchronous System Implementation using SPIN Weerasak Lawsunnee, Arthit Thongtak, Wiwat Vatanawood Abstract Asynchronous system is widely
More informationCSE115: Digital Design Lecture 23: Latches & Flip-Flops
Faculty of Engineering CSE115: Digital Design Lecture 23: Latches & Flip-Flops Sections 7.1-7.2 Suggested Reading A Generic Digital Processor Building Blocks for Digital Architectures INPUT - OUTPUT Interconnect:
More informationEECS150 - Digital Design Lecture 19 - Finite State Machines Revisited
EECS150 - Digital Design Lecture 19 - Finite State Machines Revisited April 2, 2013 John Wawrzynek Spring 2013 EECS150 - Lec19-fsm Page 1 Finite State Machines (FSMs) FSM circuits are a type of sequential
More informationFlip-Flops. Because of this the state of the latch may keep changing in circuits with feedback as long as the clock pulse remains active.
Flip-Flops Objectives The objectives of this lesson are to study: 1. Latches versus Flip-Flops 2. Master-Slave Flip-Flops 3. Timing Analysis of Master-Slave Flip-Flops 4. Different Types of Master-Slave
More informationBlock Diagram. 16/24/32 etc. pixin pixin_sof pixin_val. Supports 300 MHz+ operation on basic FPGA devices 2 Memory Read/Write Arbiter SYSTEM SIGNALS
Key Design Features Block Diagram Synthesizable, technology independent IP Core for FPGA, ASIC or SoC Supplied as human readable VHDL (or Verilog) source code Output supports full flow control permitting
More informationCHAPTER 4: Logic Circuits
CHAPTER 4: Logic Circuits II. Sequential Circuits Combinational circuits o The outputs depend only on the current input values o It uses only logic gates, decoders, multiplexers, ALUs Sequential circuits
More informationDesign for Testability
TDTS 01 Lecture 9 Design for Testability Zebo Peng Embedded Systems Laboratory IDA, Linköping University Lecture 9 The test problems Fault modeling Design for testability techniques Zebo Peng, IDA, LiTH
More informationOn Some Topological Properties of Pessimistic Multigranular Rough Sets
I.J. Intelligent Systems Alications, 2012,, 10-17 ublished Online July 2012 in MES (htt://www.mecs-ress.org/) DOI: 10.515/ijisa.2012.0.02 On Some Toological roerties of essimistic Multigranular Rough Sets
More informationChapter 5 Sequential Circuits
Logic and Computer Design Fundamentals Chapter 5 Sequential Circuits Part 2 Sequential Circuit Design Charles Kime & Thomas Kaminski 28 Pearson Education, Inc. (Hyperlinks are active in View Show mode)
More informationfor Television ---- Formatting AES/EBU Audio and Auxiliary Data into Digital Video Ancillary Data Space
SMPTE STANDARD ANSI/SMPTE 272M-1994 for Television ---- Formatting AES/EBU Audio and Auxiliary Data into Digital Video Ancillary Data Space 1 Scope 1.1 This standard defines the mapping of AES digital
More informationLogic Design Viva Question Bank Compiled By Channveer Patil
Logic Design Viva Question Bank Compiled By Channveer Patil Title of the Practical: Verify the truth table of logic gates AND, OR, NOT, NAND and NOR gates/ Design Basic Gates Using NAND/NOR gates. Q.1
More informationClock Domain Crossing. Presented by Abramov B. 1
Clock Domain Crossing Presented by Abramov B. 1 Register Transfer Logic Logic R E G I S T E R Transfer Logic R E G I S T E R Presented by Abramov B. 2 RTL (cont) An RTL circuit is a digital circuit composed
More informationPrototyping an ASIC with FPGAs. By Rafey Mahmud, FAE at Synplicity.
Prototyping an ASIC with FPGAs By Rafey Mahmud, FAE at Synplicity. With increased capacity of FPGAs and readily available off-the-shelf prototyping boards sporting multiple FPGAs, it has become feasible
More informationCombinational / Sequential Logic
Digital Circuit Design and Language Combinational / Sequential Logic Chang, Ik Joon Kyunghee University Combinational Logic + The outputs are determined by the present inputs + Consist of input/output
More informationDesign and analysis of microcontroller system using AMBA- Lite bus
Design and analysis of microcontroller system using AMBA- Lite bus Wang Hang Suan 1,*, and Asral Bahari Jambek 1 1 School of Microelectronic Engineering, Universiti Malaysia Perlis, Perlis, Malaysia Abstract.
More informationLaboratory 4. Figure 1: Serdes Transceiver
Laboratory 4 The purpose of this laboratory exercise is to design a digital Serdes In the first part of the lab, you will design all the required subblocks for the digital Serdes and simulate them In part
More informationEECS 373 Design of Microprocessor-Based Systems
EECS 373 Design of Microprocessor-Based Systems Matt Smith University of Michigan Serial buses, digital design Material taken from Brehob, Dutta, Le, Ramadas, Tikhonov & Mahal 1 Agenda Serial Buses Introduction
More informationThe word digital implies information in computers is represented by variables that take a limited number of discrete values.
Class Overview Cover hardware operation of digital computers. First, consider the various digital components used in the organization and design. Second, go through the necessary steps to design a basic
More informationSequential Logic Circuits
Sequential Logic Circuits By Dr. M. Hebaishy Digital Logic Design Ch- Rem.!) Types of Logic Circuits Combinational Logic Memoryless Outputs determined by current values of inputs Sequential Logic Has memory
More informationSequential Circuits: Latches & Flip-Flops
Sequential Circuits: Latches & Flip-Flops Overview Storage Elements Latches SR, JK, D, and T Characteristic Tables, Characteristic Equations, Eecution Tables, and State Diagrams Standard Symbols Flip-Flops
More informationLong and Fast Up/Down Counters Pushpinder Kaur CHOUHAN 6 th Jan, 2003
1 Introduction Long and Fast Up/Down Counters Pushpinder Kaur CHOUHAN 6 th Jan, 2003 Circuits for counting both forward and backward events are frequently used in computers and other digital systems. Digital
More informationLecture 11: Synchronous Sequential Logic
Lecture 11: Synchronous Sequential Logic Syed M. Mahmud, Ph.D ECE Department Wayne State University Aby K George, ECE Department, Wayne State University Contents Characteristic equations Analysis of clocked
More informationDigital Design, Kyung Hee Univ. Chapter 5. Synchronous Sequential Logic
Chapter 5. Synchronous Sequential Logic 1 5.1 Introduction Electronic products: ability to send, receive, store, retrieve, and process information in binary format Dependence on past values of inputs Sequential
More informationFast Quadrature Decode TPU Function (FQD)
PROGRAMMING NOTE Order this document by TPUPN02/D Fast Quadrature Decode TPU Function (FQD) by Jeff Wright 1 Functional Overview The fast quadrature decode function is a TPU input function that uses two
More informationSynchronous Sequential Logic. Chapter 5
Synchronous Sequential Logic Chapter 5 5-1 Introduction Combinational circuits contains no memory elements the outputs depends on the inputs Synchronous Sequential Logic 5-2 5-2 Sequential Circuits Sequential
More informationLAB 3 Verilog for Combinatorial Circuits
Goals LAB 3 Verilog for Combinatorial Circuits Learn how to design combinatorial circuits using Verilog. Design a simple circuit that takes a 4-bit binary number and drives the 7-segment display so that
More informationUNIT IV. Sequential circuit
UNIT IV Sequential circuit Introduction In the previous session, we said that the output of a combinational circuit depends solely upon the input. The implication is that combinational circuits have no
More informationD Latch (Transparent Latch)
D Latch (Transparent Latch) -One way to eliminate the undesirable condition of the indeterminate state in the SR latch is to ensure that inputs S and R are never equal to 1 at the same time. This is done
More informationEECS150 - Digital Design Lecture 15 Finite State Machines. Announcements
EECS150 - Digital Design Lecture 15 Finite State Machines October 18, 2011 Elad Alon Electrical Engineering and Computer Sciences University of California, Berkeley http://www-inst.eecs.berkeley.edu/~cs150
More informationContents Circuits... 1
Contents Circuits... 1 Categories of Circuits... 1 Description of the operations of circuits... 2 Classification of Combinational Logic... 2 1. Adder... 3 2. Decoder:... 3 Memory Address Decoder... 5 Encoder...
More information4 of 40. Multi-ASIC reset synchronization Good Multi-Flip-Flop. Synthesis issues with reset nets. 3 of 40. Synchronous Resets? Asynchronous Resets?
Synchronous Resets? Asynchronous Resets? I am so confused! How will I ever know which to use? &OLIIRUG(&XPPLQJV 'RQLOOV 6XQEXUVW'HVLJQ,Q /&'(QJLQHHULQJ OLII#VXQEXUVWGHVLJQRP PLOOV#OGPHQJRP ZZZVXQEXUVWGHVLJQRP
More informationResearch on the optimization of voice quality of network English teaching system
Available online www.ocr.com Journal of Chemical and Pharmaceutical Research, 2014, 6(6):654-660 Research Article ISSN : 0975-7384 CODEN(USA) : JCPRC5 Research on the otimization of voice quality of network
More informationRead-only memory (ROM) Digital logic: ALUs Sequential logic circuits. Don't cares. Bus
Digital logic: ALUs Sequential logic circuits CS207, Fall 2004 October 11, 13, and 15, 2004 1 Read-only memory (ROM) A form of memory Contents fixed when circuit is created n input lines for 2 n addressable
More informationECE 270 Lab Verification / Evaluation Form. Experiment 9
ECE 270 Lab Verification / Evaluation Form Experiment 9 Evaluation: IMPORTANT! You must complete this experiment during your scheduled lab period. All work for this experiment must be demonstrated to and
More informationSynchronous Sequential Logic
Synchronous Sequential Logic -A Sequential Circuit consists of a combinational circuit to which storage elements are connected to form a feedback path. The storage elements are devices capable of storing
More informationSequential Logic. Introduction to Computer Yung-Yu Chuang
Sequential Logic Introduction to Computer Yung-Yu Chuang with slides by Sedgewick & Wayne (introcs.cs.princeton.edu), Nisan & Schocken (www.nand2tetris.org) and Harris & Harris (DDCA) Review of Combinational
More informationEECS 373 Design of Microprocessor-Based Systems
EECS 373 Design of Microprocessor-Based Systems A day of Misc. Topics Mark Brehob University of Michigan Lecture 12: Finish up Analog and Digital converters Finish design rules Quick discussion of MMIO
More information6. Sequential Logic Flip-Flops
ection 6. equential Logic Flip-Flops Page of 5 6. equential Logic Flip-Flops ombinatorial components: their output values are computed entirely from their present input values. equential components: their
More informationLAB 3 Verilog for Combinational Circuits
Goals To Do LAB 3 Verilog for Combinational Circuits Learn how to implement combinational circuits using Verilog. Design and implement a simple circuit that controls the 7-segment display to show a 4-bit
More informationSynthesis of AMBA AHB from Formal Specification: A Case Study
Software Tools for Technology Transfer manuscript No. (will be inserted by the editor) Synthesis of AMBA AHB from Formal Specification: A Case Study Yashdeep Godhal, Krishnendu Chatterjee, Thomas A. Henzinger
More informationAIM: To study and verify the truth table of logic gates
EXPERIMENT: 1- LOGIC GATES AIM: To study and verify the truth table of logic gates LEARNING OBJECTIVE: Identify various Logic gates and their output. COMPONENTS REQUIRED: KL-31001 Digital Logic Lab( Main
More informationCombinational vs Sequential
Combinational vs Sequential inputs X Combinational Circuits outputs Z A combinational circuit: At any time, outputs depends only on inputs Changing inputs changes outputs No regard for previous inputs
More informationDesign and Implementation of Timer, GPIO, and 7-segment Peripherals
Design and Implementation of Timer, GPIO, and 7-segment Peripherals 1 Module Overview Learn about timers, GPIO and 7-segment display; Design and implement an AHB timer, a GPIO peripheral, and a 7-segment
More informationTesting Digital Systems II
Testing Digital Systems II Lecture 2: Design for Testability (I) structor: M. Tahoori Copyright 2010, M. Tahoori TDS II: Lecture 2 1 History During early years, design and test were separate The final
More informationComparing JTAG, SPI, and I2C
Comparing JTAG, SPI, and I2C Application by Russell Hanabusa 1. Introduction This paper discusses three popular serial buses: JTAG, SPI, and I2C. A typical electronic product today will have one or more
More informationLaboratory Exercise 4
Laboratory Exercise 4 Polling and Interrupts The purpose of this exercise is to learn how to send and receive data to/from I/O devices. There are two methods used to indicate whether or not data can be
More informationUNIT III. Combinational Circuit- Block Diagram. Sequential Circuit- Block Diagram
UNIT III INTRODUCTION In combinational logic circuits, the outputs at any instant of time depend only on the input signals present at that time. For a change in input, the output occurs immediately. Combinational
More informationCSE140L: Components and Design Techniques for Digital Systems Lab. FSMs. Tajana Simunic Rosing. Source: Vahid, Katz
CSE140L: Components and Design Techniques for Digital Systems Lab FSMs Tajana Simunic Rosing Source: Vahid, Katz 1 Flip-flops Hardware Description Languages and Sequential Logic representation of clocks
More informationCHAPTER1: Digital Logic Circuits
CS224: Computer Organization S.KHABET CHAPTER1: Digital Logic Circuits 1 Sequential Circuits Introduction Composed of a combinational circuit to which the memory elements are connected to form a feedback
More informationLab #5: Design Example: Keypad Scanner and Encoder - Part 1 (120 pts)
Nate Pihlstrom, npihlstr@uccs.edu Lab #5: Design Example: Keypad Scanner and Encoder - Part 1 (120 pts) Objective The objective of lab assignments 5 through 9 are to systematically design and implement
More informationT1 Deframer. LogiCORE Facts. Features. Applications. General Description. Core Specifics
November 10, 2000 Xilinx Inc. 2100 Logic Drive San Jose, CA 95124 Phone: +1 408-559-7778 Fax: +1 408-559-7114 E-mail: support@xilinx.com URL: www.xilinx.com/ipcenter Features Supports T1-D4 and T1-ESF
More informationVeriLab. An introductory lab for using Verilog in digital design (first draft) VeriLab
VeriLab An introductory lab for using Verilog in digital design (first draft) VeriLab An introductory lab for using Verilog in digital design Verilog is a hardware description language useful for designing
More informationThis is part 4 of our ShanghaiTech Lecture on Asynchronous Computing.
This is part 4 of our ShanghaiTech Lecture on Asynchronous Computing. We will show how we separate -from the ground up -action from state, and how both are equally important to initialize, test, and debug
More informationModule -5 Sequential Logic Design
Module -5 Sequential Logic Design 5.1. Motivation: In digital circuit theory, sequential logic is a type of logic circuit whose output depends not only on the present value of its input signals but on
More informationChapter 5 Synchronous Sequential Logic
EEA051 - Digital Logic 數位邏輯 Chapter 5 Synchronous Sequential Logic 吳俊興國立高雄大學資訊工程學系 December 2005 Chapter 5 Synchronous Sequential Logic 5-1 Sequential Circuits 5-2 Latches 5-3 Flip-Flops 5-4 Analysis of
More informationPart II. Chapter2: Synchronous Sequential Logic
課程名稱 : 數位系統設計導論 P-/77 Part II Chapter2: Synchronous Sequential Logic 教師 : 郭峻因教授 INSTRUCTOR: Prof. Jiun-In Guo E-mail: jiguo@cs.ccu.edu.tw 課程名稱 : 數位系統設計導論 P-2/77 Special thanks to Prof. CHING-LING SU for
More informationFACTORY AUTOMATION AS-INTERFACE MAINTENANCE AND TROUBLESHOOTING GUIDE
FACTORY AUTOMATION AS-INTERFACE MAINTENANCE AND TROUBLESHOOTING GUIDE Table of Contents AS-Interface Basics... 3 Addressing Modules... 4 Handheld Programmer (Reading Inputs and Settings Outputs)... 5 Gateway
More informationCMSC 313 Preview Slides
CMSC 33 Preview Slides These are draft slides. The actual slides presented in lecture may be different due to last minute changes, schedule slippage,... UMBC, CMSC33, Richard Chang CMSC
More information013-RD
Engineering Note Topic: Product Affected: JAZ-PX Lamp Module Jaz Date Issued: 08/27/2010 Description The Jaz PX lamp is a pulsed, short arc xenon lamp for UV-VIS applications such as absorbance, bioreflectance,
More informationThe Comparison of Selected Audio Features and Classification Techniques in the Task of the Musical Instrument Recognition
POSTER 206, PRAGUE MAY 24 The Comarison of Selected Audio Features and Classification Techniques in the Task of the Musical Instrument Recognition Miroslav MALÍK, Richard ORJEŠEK Det. of Telecommunications
More informationST10F273M Errata sheet
Errata sheet 16-bit MCU with 512 KBytes Flash and 36 KBytes RAM memories Introduction This errata sheet describes all the functional and electrical problems known in the ABG silicon version of the ST10F273M.
More informationBUSES IN COMPUTER ARCHITECTURE
BUSES IN COMPUTER ARCHITECTURE The processor, main memory, and I/O devices can be interconnected by means of a common bus whose primary function is to provide a communication path for the transfer of data.
More informationApplication on Control Technology
Application on Control Technology Programming example in Ladder Logic Warranty, liability and support Note The application examples are not binding and do not claim to be complete regarding the circuits
More informationSection 6.8 Synthesis of Sequential Logic Page 1 of 8
Section 6.8 Synthesis of Sequential Logic Page of 8 6.8 Synthesis of Sequential Logic Steps:. Given a description (usually in words), develop the state diagram. 2. Convert the state diagram to a next-state
More informationWWW.STUDENTSFOCUS.COM + Class Subject Code Subject Prepared By Lesson Plan for Time: Lesson. No 1.CONTENT LIST: Introduction to Unit III 2. SKILLS ADDRESSED: Listening I year, 02 sem CS6201 Digital Principles
More informationUnit 11. Latches and Flip-Flops
Unit 11 Latches and Flip-Flops 1 Combinational Circuits A combinational circuit consists of logic gates whose outputs, at any time, are determined by combining the values of the inputs. For n input variables,
More information2.6 Reset Design Strategy
2.6 Reset esign Strategy Many design issues must be considered before choosing a reset strategy for an ASIC design, such as whether to use synchronous or asynchronous resets, will every flipflop receive
More information6.S084 Tutorial Problems L05 Sequential Circuits
Preamble: Sequential Logic Timing 6.S084 Tutorial Problems L05 Sequential Circuits In Lecture 5 we saw that for D flip-flops to work correctly, the flip-flop s input should be stable around the rising
More informationSt. MARTIN S ENGINEERING COLLEGE
St. MARTIN S ENGINEERING COLLEGE Dhulapally, Kompally, Secunderabad-500014. Branch Year&Sem Subject Name : Electronics and Communication Engineering : II B. Tech I Semester : SWITCHING THEORY AND LOGIC
More informationWhere Are We Now? e.g., ADD $S0 $S1 $S2?? Computed by digital circuit. CSCI 402: Computer Architectures. Some basics of Logic Design (Appendix B)
Where Are We Now? Chapter 1: computer systems overview and computer performance Chapter 2: ISA (machine-spoken language), different formats, and various instructions Chapter 3: We will learn how those
More informationComputer Architecture and Organization
A-1 Appendix A - Digital Logic Computer Architecture and Organization Miles Murdocca and Vincent Heuring Appendix A Digital Logic A-2 Appendix A - Digital Logic Chapter Contents A.1 Introduction A.2 Combinational
More informationSEQUENTIAL LOGIC. Satish Chandra Assistant Professor Department of Physics P P N College, Kanpur
SEQUENTIAL LOGIC Satish Chandra Assistant Professor Department of Physics P P N College, Kanpur www.satish0402.weebly.com OSCILLATORS Oscillators is an amplifier which derives its input from output. Oscillators
More informationDigital Logic Design I
Digital Logic Design I Synchronous Sequential Logic Mustafa Kemal Uyguroğlu Sequential Circuits Asynchronous Inputs Combinational Circuit Memory Elements Outputs Synchronous Inputs Combinational Circuit
More informationUltra ATA Implementation Guide
T13/D98109R0 Ultra ATA Implementation Guide To: T13 Technical committee From: Mark Evans Quantum Corporation 500 McCarthy Boulevard Milpitas, CA USA 95035 Phone: 408 894 4019 Fax: 408 952 3620 Email: mark.evans@quantum.com
More informationFingerprint Verification System
Fingerprint Verification System Cheryl Texin Bashira Chowdhury 6.111 Final Project Spring 2006 Abstract This report details the design and implementation of a fingerprint verification system. The system
More information