Multiple-clock Domain FPGA Designs: Challenges & Solutions

Size: px
Start display at page:

Download "Multiple-clock Domain FPGA Designs: Challenges & Solutions"

Transcription

1 Multiple-clock Domain FPGA Designs: Challenges & Solutions Reuven Dobkin, CTO

2 vsync Circuits EDA & IP Company Mission: Develop and provide our customers with Integration and Verification solutions for Multiple Clock Domain Designs 2

3 Outline Multiple-Clock Domain (MCD) Designs A few anecdotes Tips & Tricks 3 MCD Challenges A note on Vincent (on whom?) 3

4 Multiple Clock Domains? A space example Rad-Hard 64-core DSP-CPU (Ramon Chips Ltd.) DDR3 CDC Sign-off: by vsync CDC Platform Fully Functional after fabrication SpaceFibre SpaceFibre ADC / DAC ADC / DAC SpaceFibre SpaceFibre SpaceWire H NVM, GPIO 4 REF: R. Ginosar, et al., RC64: High Performance Rad-Hard Manycore, ESA DSP Day

5 REF: R. Ginosar, Fourteen Ways to Fool Your Synchronizer, ASYNC 2003 R. Dobkin and R.Ginosar, Fast Universal Synchronizers, PATMOS, Sep D. Verbitsky, R. Dobkin, S. Beer and R. Ginosar, StarSync: An Extendable Standardcell Mesochronous Synchronizer, Integration the VLSI Journal, 2014 R. Dobkin, R. Ginosar and C. Sotiriou, High Rate Data Synchronization in GALS SoCs, IEEE Trans. on VLSI, 14(10): , Oct R. Dobkin and R.Ginosar, Two phase synchronization with sub-cycle latency, INTEGRATION, the VLSI journal, Recall: How to? Make it wrong Avoiding Synchronization One Flop Synchronizer Sneaky Path Greedy Path Flakey Protocol Async Clear DFT Leak Power optimization Leak Pulse Synchronizer Slow-to-Fast Synchronizer Parallel Synchronizer Reconvergence path Conservative Synchronizer Glitching control path Make it correct Universal synchronizer Handshake event driven synchronizer FIFO gray-code based synchronizer Mesochronous synchronizer Periodic Synchronizer Predictive synchronizer Adaptive Synchronizer Local-delay latching synchronizer Asynchronous reset synchronizer Glitch-free gator Glitch-free clock switch Quasi-static synchronizer 6

6 A few notes on FIFO design (1) Eliminate glitching into Sync: Gray Encoder output must be sampled WR_PNT MEMORY RAM or FFs RD_PNT Registered output Registered output WR_PORT WR_PNT _NXT Binary2GrayEnc WR_PNT_CODED Binary2GrayEnc RD_PORT RD_PNT_CODED N-Flop Sync WR_PNT_SYNC Binary2GrayDec Binary2GrayDec RD_PNT_SYNC N-Flop Sync RD_PNT 7

7 A few notes on FIFO design (2) RAM write could be tricky : Check out the RAM specification for write latency MEMORY WR_PNT RD_PNT Registered output RAM Registered output WR_PORT WR_PNT _NXT Binary2GrayEnc WR_PNT_CODED Additional register (only for RAM-configuration) RD_PNT_CODED Binary2GrayEnc RD_PORT N-Flop Sync WR_PNT_SYNC Binary2GrayDec WR_ Binary2GrayDec RD_PNT_SYNC N-Flop Sync RD_PNT 8

8 A few notes on FIFO design (3) Register Read side data output + enable (who knows how it is used further ) MEMORY CDC! Registered output Control EN Registered output WR_PNT FFs WR_ Domain RD_PNT Registered output Not Empty Logic WR_PORT WR_PNT _NXT Binary2GrayEnc WR_PNT_CODED Additional register (only for RAM-configuration) RD_PNT_CODED Binary2GrayEnc RD_PORT N-Flop Sync WR_PNT_SYNC Binary2GrayDec WR_ Binary2GrayDec RD_PNT_SYNC N-Flop Sync RD_PNT 9

9 Asynchronous Reset CDC Reset must meet setup/hold constrains RSTI 1 RST D Q F0 RST D Q F1 Asynchronous Reset Synchronizers RSTO_N (active low) RSTI D Q F0 D Q F1 RSTO Fast clocks Reset distribution network T T T R SU T R Reset Generator / Synchronizer RSTO RST D Q F2 Large designs 10 REF: R. Dobkin, Asynchronous Reset Synchronization and Distribution, embedded.com, 2017

10 An elegant solution: The Clock-Gated Async Reset Synchronizer RSTI RSTI Reset Synchhronizer RSTO RST_ Reset FSM RST SET D Q F1 RST D Q F2 RST G CE EN ICG I O A multi-cycle path _G RST G_LEAF RST D Q F3 RSTI Reset Tree Latency Reset Sync Reset Tree Latency No violation RST_ RST G RST_=1 RST_ST RST_=0 RST G=1 CE=0 COUNTER=0 RST G_LEAF _G COUNTER < MAX COUNT_ST COUNTER = MAX RST G=0 CE=0 CE STATE RST_ST COUNT_ST FINISH_ST FINISH_ST RST G=0 CE=1 11

11 Another Good Approach: Power Up Initialization in FPGA FPGA allows programming memory default state on power up Benefits: A significant reduction of FPGA global resources utilization Elimination of the related timing issues of the asynchronous reset removal Not applicable when: Reset is functional during application run Reset value depends on an external value Technically done by replacing asynchronous resets with signal defaults: VHDL: signal my_signal : std_logic := 0 ; Verilog: reg my_flop = 1 b0; NOT applicable for ASIC! 12

12 Multiple Clock Design Challenges Setup: Clock & Reset requirements... Complexity: design and verification Integration: (Black-box) Third-party IPs 13

13 Getting Requirements Clocks setup Who is Who? Clock relationships Clock sources Async, meso, periodic, etc. Intra Black-box clock manipulations Clock switching (e.g. SpaceWire) Reset setup Who is Who? Reset sequences Power up run G.I.G.O. 14

14 Clock Scheme Impacts Synchronization solution choice CDC verification setup Static Dynamic Reliability verification (MTBF) E.g. correlated / uncorrelated clocks Constraints generation for CDC Sync types Quasi-static CDC Class Df Df Synchronizer Synchronous 0 0 None Mesochronous f c 0 Phase compensation Multi-synchronous drifts 0 Plesiochronous Varies f d <e Adaptive phase compensation Adaptive phase compensation Periodic f d >e Predictive Asynchronous Two-Flop REF: S. Beer, R. Ginosar, R. Dobkin and Y. Weizman, MTBF Estimation in Coherent Clock Domains, ASYNC 19, REF: U.S. Patent ,

15 Clock & Reset Requirements Solutions Challenges Clocks setup Who is Who? Clock relationships Clock sources Async, meso, periodic, etc. Intra Black-box clock manipulations Clock switching Reset setup Who is Who? Reset sequences Power up run Solutions (EDA) Auto Clock and Reset setup Clock & Reset trees auto recognition Vendor-IP recognition (e.g. PLLs) SDC Call for user intervention when needed Multi-modal analysis support Clock-gating / switching 16

16 Multiple Clock Design Challenges Setup: Clock & Reset requirements... Complexity: design and verification Integration: (Black-box) Third-party IPs 17

17 Complexity Key issues Large designs Long runtimes Many clocks Multiple clock relations, large results set Many CDCs A need to design multiple synchronizers Multiple Quasi-Static CDCs Many third-party IPs False alarms, undiscovered CDC issues Many operation modes Long runtimes, enormously large results set 18

18 Complexity Solutions Large designs Parallel exploration, hierarchical analysis Many clocks Automatic-clock recognition, SDC analysis Many CDCs Pre-verified synchronizers (incl. Quasi-Static) Verification support (m/s modeling + coverage) Many third-party IPs Modeling and auto-recognition of the IPs* Many operation modes Shared user data-base for the multiple modes M1 M3 M1 M2 M3 M4 M1 M3 M2 M4 M2 M4 M1 M2 M3 M4 BB Model RESET CLOCK RST0 RST D Q RST1 RST D Q Q0 Q1 19 *REF: U.S. Patent , 2014

19 Multiple Clock Design Challenges Setup: Clock & Reset requirements... Complexity: design and verification Integration: (Black-box) Third-party IPs 20

20 (Black-box) Third-party IPs Key issues Third-party IP modules Open-source Encrypted May have internal synchronization schemes May have internal synchronization bugs May cause CDC bugs, when incorrectly connected Single / Multi-instance connections 21

21 Third-party IP integration Open-code IPs: Hard to dig in someone else s code Thus, it is usually worthwhile to abstract out up to Gray/Silver BB* CDC report shall be jointly reviewed with the vendor Vendor IPs with internal synchronizers: Ask IP vendor to extract all CDCs to a separate, open code hierarchy Analyze/review this open-code with CDC verification tools Static & Dynamic Communicate with IP vendor on possible issues and waivers IP Core (encrypted) IP Synchronizers IP Core (encrypted) IP RAM Blocks (open code) IP RAM Blocks (open code) IP-TOP IP-TOP IP Synchronizers (open code) 22 *REF: U.S. Patent , 2014

22 Dealing with BOTH design and verification vsync Vincent CDC platform LINT RTL Analysis Synchronizer Generator MTBF Computation Dynamic CDC Verification CDC Static Analysis and auto-fix Automatic Constraints Generation 23 23

23 vsync Vincent Platform: A Complete Solution for CDC Thank you!

Sequential Circuit Design: Principle

Sequential Circuit Design: Principle Sequential Circuit Design: Principle Chapter 8 1 Outline 1. Overview on sequential circuits 2. Synchronous circuits 3. Danger of synthesizing async circuit 4. Inference of basic memory elements 5. Simple

More information

Sequential Circuit Design: Principle

Sequential Circuit Design: Principle Sequential Circuit Design: Principle Chapter 8 1 Outline 1. Overview on sequential circuits 2. Synchronous circuits 3. Danger of synthesizing asynchronous circuit 4. Inference of basic memory elements

More information

FPGA for Software Engineers

FPGA for Software Engineers FPGA for Software Engineers Course Description This course closes the gap between hardware and software engineers by providing the software engineer all the necessary FPGA concepts and terms. The course

More information

Challenges in Verification of Clock Domain Crossings

Challenges in Verification of Clock Domain Crossings Challenges in Verification of Clock Domain Crossings Vishnu C. Vimjam and Al Joseph Real Intent Inc., Sunnyvale, CA, USA Notice of Copyright This material is protected under the copyright laws of the U.S.

More information

Advanced FPGA Design. Jan Pospíšil, CERN BE-BI-BP ISOTDAQ 2018, Vienna

Advanced FPGA Design. Jan Pospíšil, CERN BE-BI-BP ISOTDAQ 2018, Vienna Advanced FPGA Design Jan Pospíšil, CERN BE-BI-BP j.pospisil@cern.ch ISOTDAQ 2018, Vienna Acknowledgement Manoel Barros Marin (CERN) lecturer of ISOTDAQ-17 Markus Joos (CERN) & other organisers of ISOTDAQ-18

More information

EECS150 - Digital Design Lecture 17 Memory 2

EECS150 - Digital Design Lecture 17 Memory 2 EECS150 - Digital Design Lecture 17 Memory 2 October 22, 2002 John Wawrzynek Fall 2002 EECS150 Lec17-mem2 Page 1 SDRAM Recap General Characteristics Optimized for high density and therefore low cost/bit

More information

Pragmatic 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 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 information

Accelerating CDC Verification Closure on Gate-Level Designs

Accelerating CDC Verification Closure on Gate-Level Designs Accelerating CDC Verification Closure on Gate-Level Designs Anwesha Choudhury, Ashish Hari anwesha_choudhary@mentor.com, ashish_hari@mentor.com Design Verification Technologies Mentor Graphics Abstract:

More information

Verilog for High Performance

Verilog 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 information

Beyond Soft IP Quality to Predictable Soft IP Reuse TSMC 2013 Open Innovation Platform Presented at Ecosystem Forum, 2013

Beyond Soft IP Quality to Predictable Soft IP Reuse TSMC 2013 Open Innovation Platform Presented at Ecosystem Forum, 2013 Beyond Soft IP Quality to Predictable Soft IP Reuse TSMC 2013 Open Innovation Platform Presented at Ecosystem Forum, 2013 Agenda Soft IP Quality Establishing a Baseline With TSMC Soft IP Quality What We

More information

Data path verification on cross-domain with formal scoreboard

Data path verification on cross-domain with formal scoreboard Data path verification on cross-domain with formal scoreboard Liu Jun, Intel Mobile Communications, Munich, Germany (jun.b.liut@intel.com) Abstract In today s complex System on Chip (SOC) designs, multiple

More information

VHDL for Logic Synthesis

VHDL for Logic Synthesis VHDL for Logic Synthesis Overview Design Flow for Hardware Design VHDL coding for synthesis General guidelines for hardware designers This lecture includes the content from: Nitin Yogi, Modelling for Synthesis

More information

Digital Control for Space Power Management Devices

Digital Control for Space Power Management Devices Template reference : 100182079N-EN Digital Control for Space Power Management Devices Work conducted under ESA Contract nr.21826/08/nl/lvh DIGITAL POWER CONTROL Management of power devices via digital

More information

Design Guidelines for Optimal Results in High-Density FPGAs

Design Guidelines for Optimal Results in High-Density FPGAs White Paper Introduction Design Guidelines for Optimal Results in High-Density FPGAs Today s FPGA applications are approaching the complexity and performance requirements of ASICs. In some cases, FPGAs

More information

MASSACHUSETTS INSTITUTE OF TECHNOLOGY Department of Electrical Engineering and Computer Sciences

MASSACHUSETTS INSTITUTE OF TECHNOLOGY Department of Electrical Engineering and Computer Sciences MASSACHUSETTS INSTITUTE OF TECHNOLOGY Department of Electrical Engineering and Computer Sciences Introductory Digital Systems Lab (6.111) uiz - Spring 2004 Prof. Anantha Chandrakasan Student Name: Problem

More information

EECS150 - Digital Design Lecture 5 - Verilog Logic Synthesis

EECS150 - Digital Design Lecture 5 - Verilog Logic Synthesis EECS150 - Digital Design Lecture 5 - Verilog Logic Synthesis Jan 31, 2012 John Wawrzynek Spring 2012 EECS150 - Lec05-verilog_synth Page 1 Outline Quick review of essentials of state elements Finite State

More information

VHX - Xilinx - FPGA Programming in VHDL

VHX - Xilinx - FPGA Programming in VHDL Training Xilinx - FPGA Programming in VHDL: This course explains how to design with VHDL on Xilinx FPGAs using ISE Design Suite - Programming: Logique Programmable VHX - Xilinx - FPGA Programming in VHDL

More information

TSEA44 - Design for FPGAs

TSEA44 - Design for FPGAs 2015-11-24 Now for something else... Adapting designs to FPGAs Why? Clock frequency Area Power Target FPGA architecture: Xilinx FPGAs with 4 input LUTs (such as Virtex-II) Determining the maximum frequency

More information

Bulletproofing FSM Verification Automated Approach to Detect Corner Case Issues in an FSM Design

Bulletproofing FSM Verification Automated Approach to Detect Corner Case Issues in an FSM Design Bulletproofing FSM Verification Automated Approach to Detect Corner Case Issues in an FSM Design Lisa Piper Technical Marketing Real Intent Inc., Sunnyvale, CA Comprehensive verification of Finite State

More information

MCMASTER UNIVERSITY EMBEDDED SYSTEMS

MCMASTER UNIVERSITY EMBEDDED SYSTEMS MCMASTER UNIVERSITY EMBEDDED SYSTEMS Computer Engineering 4DS4 Lecture Revision of Digital Systems Amin Vali January 26 Course material belongs to DrNNicolici Field programmable gate arrays (FPGAs) x x

More information

Hardware Design Environments. Dr. Mahdi Abbasi Computer Engineering Department Bu-Ali Sina University

Hardware Design Environments. Dr. Mahdi Abbasi Computer Engineering Department Bu-Ali Sina University Hardware Design Environments Dr. Mahdi Abbasi Computer Engineering Department Bu-Ali Sina University Outline Welcome to COE 405 Digital System Design Design Domains and Levels of Abstractions Synthesis

More information

Novel Architecture for Designing Asynchronous First in First out (FIFO)

Novel Architecture for Designing Asynchronous First in First out (FIFO) I J C T A, 10(8), 2017, pp. 343-349 International Science Press ISSN: 0974-5572 Novel Architecture for Designing Asynchronous First in First out (FIFO) Avinash Yadlapati* and Hari Kishore Kakarla* ABSTRACT

More information

Formal 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 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 information

outline Reliable State Machines MER Mission example

outline Reliable State Machines MER Mission example outline Reliable State Machines Dr. Gary R Burke California Institute of Technology Jet Propulsion Laboratory Background JPL MER example JPL FPGA/ASIC Process Procedure Guidelines State machines Traditional

More information

Implementing Tile-based Chip Multiprocessors with GALS Clocking Styles

Implementing Tile-based Chip Multiprocessors with GALS Clocking Styles Implementing Tile-based Chip Multiprocessors with GALS Clocking Styles Zhiyi Yu, Bevan Baas VLSI Computation Lab, ECE Department University of California, Davis, USA Outline Introduction Timing issues

More information

Contents 1 Introduction 2 Functional Verification: Challenges and Solutions 3 SystemVerilog Paradigm 4 UVM (Universal Verification Methodology)

Contents 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 information

2. BLOCK DIAGRAM Figure 1 shows the block diagram of an Asynchronous FIFO and the signals associated with it.

2. BLOCK DIAGRAM Figure 1 shows the block diagram of an Asynchronous FIFO and the signals associated with it. Volume 115 No. 8 2017, 631-636 ISSN: 1311-8080 (printed version); ISSN: 1314-3395 (on-line version) url: http://www.ijpam.eu ijpam.eu DESIGNING ASYNCHRONOUS FIFO FOR LOW POWER DFT IMPLEMENTATION 1 Avinash

More information

ACCELERATING DO-254 VERIFICATION

ACCELERATING DO-254 VERIFICATION ACCELERATING DO-254 VERIFICATION ACCELERATING DO-254 VERIFICATION INTRODUCTION Automated electronic control systems or avionics allow lighter, more efficient aircraft to operate more effectively in the

More information

EECS150 - Digital Design Lecture 20 - Finite State Machines Revisited

EECS150 - 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 information

EITF35: Introduction to Structured VLSI Design

EITF35: Introduction to Structured VLSI Design EITF35: Introduction to Structured VLSI Design Part 2.2.2: VHDL-3 Liang Liu liang.liu@eit.lth.se 1 Outline Inference of Basic Storage Element Some Design Examples DFF with enable Counter Coding Style:

More information

VHDL for Synthesis. Course Description. Course Duration. Goals

VHDL for Synthesis. Course Description. Course Duration. Goals VHDL for Synthesis Course Description This course provides all necessary theoretical and practical know how to write an efficient synthesizable HDL code through VHDL standard language. The course goes

More information

Clock Domain Crossing Fault Model and Coverage Metric for Validation of SoC Design

Clock Domain Crossing Fault Model and Coverage Metric for Validation of SoC Design Clock omain Crossing Fault Model and Coverage Metric for Validation of SoC esign Yi Feng, Zheng Zhou, ong Tong, Xu Cheng ept. of Computer Science, Peking University Beijing, P.R.China {fengyi, zhouzheng,

More information

Techniques for Digital Systems Lab. Verilog HDL. Tajana Simunic Rosing. Source: Eric Crabill, Xilinx

Techniques 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 information

FPGA. Logic Block. Plessey FPGA: basic building block here is 2-input NAND gate which is connected to each other to implement desired function.

FPGA. Logic Block. Plessey FPGA: basic building block here is 2-input NAND gate which is connected to each other to implement desired function. FPGA Logic block of an FPGA can be configured in such a way that it can provide functionality as simple as that of transistor or as complex as that of a microprocessor. It can used to implement different

More information

Verification of Clock Domain Crossing Jitter and Metastability Tolerance using Emulation

Verification of Clock Domain Crossing Jitter and Metastability Tolerance using Emulation Verification of Clock Domain Crossing Jitter and Metastability Tolerance using Emulation Ashish Hari ashish_hari@mentor.com Suresh Krishnamurthy k_suresh@mentor.com Amit Jain amit_jain@mentor.com Yogesh

More information

Graphics: Alexandra Nolte, Gesine Marwedel, Universität Dortmund. RTL Synthesis

Graphics: Alexandra Nolte, Gesine Marwedel, Universität Dortmund. RTL Synthesis Graphics: Alexandra Nolte, Gesine Marwedel, 2003 Universität Dortmund RTL Synthesis Purpose of HDLs Purpose of Hardware Description Languages: Capture design in Register Transfer Language form i.e. All

More information

Exp#8: Designing a Programmable Sequence Detector

Exp#8: Designing a Programmable Sequence Detector Exp#8: Designing a Programmable Sequence Detector Objectives Learning how to partition a system into data-path and control unit. Integrating Schematics and Verilog code together Overview In this lab you

More information

ECE 4514 Digital Design II. Spring Lecture 15: FSM-based Control

ECE 4514 Digital Design II. Spring Lecture 15: FSM-based Control ECE 4514 Digital Design II Lecture 15: FSM-based Control A Design Lecture Overview Finite State Machines Verilog Mapping: one, two, three always blocks State Encoding User-defined or tool-defined State

More information

The CPU Bus : Structure 0

The CPU Bus : Structure 0 The CPU Bus : Structure 0 The following can be applied to both the internal CPU buses and the external system buses. This distinction becomes blurred when we discuss Systems on a single Chip (SoC). The

More information

OUTLINE Introduction Power Components Dynamic Power Optimization Conclusions

OUTLINE Introduction Power Components Dynamic Power Optimization Conclusions OUTLINE Introduction Power Components Dynamic Power Optimization Conclusions 04/15/14 1 Introduction: Low Power Technology Process Hardware Architecture Software Multi VTH Low-power circuits Parallelism

More information

EE178 Lecture Verilog FSM Examples. Eric Crabill SJSU / Xilinx Fall 2007

EE178 Lecture Verilog FSM Examples. Eric Crabill SJSU / Xilinx Fall 2007 EE178 Lecture Verilog FSM Examples Eric Crabill SJSU / Xilinx Fall 2007 In Real-time Object-oriented Modeling, Bran Selic and Garth Gullekson view a state machine as: A set of input events A set of output

More information

CS 250 VLSI Design Lecture 11 Design Verification

CS 250 VLSI Design Lecture 11 Design Verification CS 250 VLSI Design Lecture 11 Design Verification 2012-9-27 John Wawrzynek Jonathan Bachrach Krste Asanović John Lazzaro TA: Rimas Avizienis www-inst.eecs.berkeley.edu/~cs250/ IBM Power 4 174 Million Transistors

More information

Modeling Sequential Circuits in Verilog

Modeling Sequential Circuits in Verilog Modeling Sequential Circuits in Verilog COE 202 Digital Logic Design Dr. Muhamed Mudawar King Fahd University of Petroleum and Minerals Presentation Outline Modeling Latches and Flip-Flops Blocking versus

More information

SpaceFibre Flight Software Workshop 2015

SpaceFibre Flight Software Workshop 2015 SpaceFibre Flight Software Workshop 2015 Steve Parkes, University of Dundee Albert Ferrer Florit, Alberto Gonzalez Villafranca, STAR-Dundee Ltd. David McLaren, Chris McClements, University of Dundee Contents

More information

In the previous lecture, we examined how to analyse a FSM using state table, state diagram and waveforms. In this lecture we will learn how to design

In the previous lecture, we examined how to analyse a FSM using state table, state diagram and waveforms. In this lecture we will learn how to design 1 In the previous lecture, we examined how to analyse a FSM using state table, state diagram and waveforms. In this lecture we will learn how to design a fininte state machine in order to produce the desired

More information

In the previous lecture, we examined how to analyse a FSM using state table, state diagram and waveforms. In this lecture we will learn how to design

In the previous lecture, we examined how to analyse a FSM using state table, state diagram and waveforms. In this lecture we will learn how to design In the previous lecture, we examined how to analyse a FSM using state table, state diagram and waveforms. In this lecture we will learn how to design a fininte state machine in order to produce the desired

More information

ALTERA FPGA Design Using Verilog

ALTERA FPGA Design Using Verilog ALTERA FPGA Design Using Verilog Course Description This course provides all necessary theoretical and practical know-how to design ALTERA FPGA/CPLD using Verilog standard language. The course intention

More information

ECE 545 Lecture 12. Datapath vs. Controller. Structure of a Typical Digital System Data Inputs. Required reading. Design of Controllers

ECE 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 information

SEE Tolerant Self-Calibrating Simple Fractional-N PLL

SEE Tolerant Self-Calibrating Simple Fractional-N PLL SEE Tolerant Self-Calibrating Simple Fractional-N PLL Robert L. Shuler, Avionic Systems Division, NASA Johnson Space Center, Houston, TX 77058 Li Chen, Department of Electrical Engineering, University

More information

Homework deadline extended to next friday

Homework deadline extended to next friday Norm Midterm Grading Finished Stats on course homepage Pickup after this lab lec. Regrade requests within 1wk of posted solution Homework deadline extended to next friday Description Design Conception

More information

UDP1G-IP reference design manual

UDP1G-IP reference design manual UDP1G-IP reference design manual Rev1.1 14-Aug-18 1 Introduction Comparing to TCP, UDP provides a procedure to send messages with a minimum of protocol mechanism, but the data cannot guarantee to arrive

More information

Synchronization In Digital Systems

Synchronization In Digital Systems 2011 International Conference on Information and Network Technology IPCSIT vol.4 (2011) (2011) IACSIT Press, Singapore Synchronization In Digital Systems Ranjani.M. Narasimhamurthy Lecturer, Dr. Ambedkar

More information

UDP10G-IP reference design manual

UDP10G-IP reference design manual UDP10G-IP reference design manual Rev1.2 22-Mar-18 1 Introduction Comparing to TCP, UDP provides a procedure to send messages with a minimum of protocol mechanism, but the data cannot guarantee to arrive

More information

Leveraging Formal Verification Throughout the Entire Design Cycle

Leveraging 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 information

RIZALAFANDE CHE ISMAIL TKT. 3, BLOK A, PPK MIKRO-e KOMPLEKS PENGAJIAN KUKUM. SYNTHESIS OF COMBINATIONAL LOGIC (Chapter 8)

RIZALAFANDE CHE ISMAIL TKT. 3, BLOK A, PPK MIKRO-e KOMPLEKS PENGAJIAN KUKUM. SYNTHESIS OF COMBINATIONAL LOGIC (Chapter 8) RIZALAFANDE CHE ISMAIL TKT. 3, BLOK A, PPK MIKRO-e KOMPLEKS PENGAJIAN KUKUM SYNTHESIS OF COMBINATIONAL LOGIC (Chapter 8) HDL-BASED SYNTHESIS Modern ASIC design use HDL together with synthesis tool to create

More information

FishTail: The Formal Generation, Verification and Management of Golden Timing Constraints

FishTail: The Formal Generation, Verification and Management of Golden Timing Constraints FishTail: The Formal Generation, Verification and Management of Golden Timing Constraints Chip design is not getting any easier. With increased gate counts, higher clock speeds, smaller chip sizes and

More information

Hermes-GLP: A GALS Network on Chip Router with Power Control Techniques

Hermes-GLP: A GALS Network on Chip Router with Power Control Techniques IEEE Computer Society Annual Symposium on VLSI Hermes-GLP: A GALS Network on Chip Router with Power Control Techniques Julian Pontes 1, Matheus Moreira 2, Rafael Soares 3, Ney Calazans 4 Faculty of Informatics,

More information

8. Best Practices for Incremental Compilation Partitions and Floorplan Assignments

8. Best Practices for Incremental Compilation Partitions and Floorplan Assignments 8. Best Practices for Incremental Compilation Partitions and Floorplan Assignments QII51017-9.0.0 Introduction The Quartus II incremental compilation feature allows you to partition a design, compile partitions

More information

Lecture 3. Behavioral Modeling Sequential Circuits. Registers Counters Finite State Machines

Lecture 3. Behavioral Modeling Sequential Circuits. Registers Counters Finite State Machines Lecture 3 Behavioral Modeling Sequential Circuits Registers Counters Finite State Machines Behavioral Modeling Behavioral Modeling Behavioral descriptions use the keyword always, followed by optional event

More information

Verilog Sequential Logic. Verilog for Synthesis Rev C (module 3 and 4)

Verilog Sequential Logic. Verilog for Synthesis Rev C (module 3 and 4) Verilog Sequential Logic Verilog for Synthesis Rev C (module 3 and 4) Jim Duckworth, WPI 1 Sequential Logic Module 3 Latches and Flip-Flops Implemented by using signals in always statements with edge-triggered

More information

IDEA! Avnet SpeedWay Design Workshop

IDEA! Avnet SpeedWay Design Workshop The essence of FPGA technology IDEA! 2 ISE Tool Flow Overview Design Entry Synthesis Constraints Synthesis Simulation Implementation Constraints Floor-Planning Translate Map Place & Route Timing Analysis

More information

Next-generation Power Aware CDC Verification What have we learned?

Next-generation Power Aware CDC Verification What have we learned? Next-generation Power Aware CDC Verification What have we learned? Kurt Takara, Mentor Graphics, kurt_takara@mentor.com Chris Kwok, Mentor Graphics, chris_kwok@mentor.com Naman Jain, Mentor Graphics, naman_jain@mentor.com

More information

C A R L E T O N U N I V E R S I T Y. FINAL EXAMINATION April Duration: 3 Hours No. of Students: 108

C A R L E T O N U N I V E R S I T Y. FINAL EXAMINATION April Duration: 3 Hours No. of Students: 108 C A R L E T O N U N I V E R S I T Y FINAL EXAMINATION April 2011 Duration: 3 Hours No. of Students: 108 Department Name & Course Number: ELEC 3500 Digital Electronics Course Instructor(s): Ralph Mason

More information

World Class Verilog & SystemVerilog Training

World Class Verilog & SystemVerilog Training World Class Verilog & SystemVerilog Training Sunburst Design - Expert Verilog-2001 FSM, Multi-Clock Design & Verification Techniques by Recognized Verilog & SystemVerilog Guru, Cliff Cummings of Sunburst

More information

Best Practices for Incremental Compilation Partitions and Floorplan Assignments

Best Practices for Incremental Compilation Partitions and Floorplan Assignments Best Practices for Incremental Compilation Partitions and Floorplan Assignments December 2007, ver. 1.0 Application Note 470 Introduction The Quartus II incremental compilation feature allows you to partition

More information

Introduction to Design Vision. Instructor: Prof. Shantanu Dutt. TA: Soumya Banerjee

Introduction to Design Vision. Instructor: Prof. Shantanu Dutt. TA: Soumya Banerjee Introduction to Design Vision Instructor: Prof. Shantanu Dutt TA: Soumya Banerjee We use Synopsys Design Vision for synthesizing the VHDL descriptions. If you are aware in the show schematic option in

More information

TIMA Lab. Research Reports

TIMA Lab. Research Reports ISSN 1292-862 TIMA Lab. Research Reports TIMA Laboratory, 46 avenue Félix Viallet, 38000 Grenoble France Session 1.2 - Hop Topics for SoC Design Asynchronous System Design Prof. Marc RENAUDIN TIMA, Grenoble,

More information

Full-Speed USB 1.1 Function Controller

Full-Speed USB 1.1 Function Controller 2000-September-7 Introduction Dünner Kirchweg 77 32257 Bünde Germany www.trenz-electronic.de The lack of flexibility in reconfiguring the PC has been acknowledged as the Achilles heel to its further deployment.

More information

Digital VLSI Design with Verilog

Digital VLSI Design with Verilog John Williams Digital VLSI Design with Verilog A Textbook from Silicon Valley Technical Institute Foreword by Don Thomas Sprin ger Contents Introduction xix 1 Course Description xix 2 Using this Book xx

More information

VHDL simulation and synthesis

VHDL simulation and synthesis VHDL simulation and synthesis How we treat VHDL in this course You will not become an expert in VHDL after taking this course The goal is that you should learn how VHDL can be used for simulation and synthesis

More information

EITF35: Introduction to Structured VLSI Design

EITF35: Introduction to Structured VLSI Design EITF35: Introduction to Structured VLSI Design Part 2.2.2: VHDL-3 Liang Liu liang.liu@eit.lth.se 1 Outline Inference of Basic Storage Element Some Design Examples DFF with enable Counter Coding Style:

More information

Digital Integrated Circuits

Digital Integrated Circuits Digital Integrated Circuits Lecture 4 Jaeyong Chung System-on-Chips (SoC) Laboratory Incheon National University BCD TO EXCESS-3 CODE CONVERTER 0100 0101 +0011 +0011 0111 1000 LSB received first Chung

More information

SoC Verification Methodology. Prof. Chien-Nan Liu TEL: ext:

SoC Verification Methodology. Prof. Chien-Nan Liu TEL: ext: SoC Verification Methodology Prof. Chien-Nan Liu TEL: 03-4227151 ext:4534 Email: jimmy@ee.ncu.edu.tw 1 Outline l Verification Overview l Verification Strategies l Tools for Verification l SoC Verification

More information

ECE 545 Lecture 12. FPGA Resources. George Mason University

ECE 545 Lecture 12. FPGA Resources. George Mason University ECE 545 Lecture 2 FPGA Resources George Mason University Recommended reading 7 Series FPGAs Configurable Logic Block: User Guide Overview Functional Details 2 What is an FPGA? Configurable Logic Blocks

More information

Nanosistemų programavimo kalbos 5 paskaita. Sekvencinių schemų projektavimas

Nanosistemų programavimo kalbos 5 paskaita. Sekvencinių schemų projektavimas Nanosistemų programavimo kalbos 5 paskaita Sekvencinių schemų projektavimas Terminai Combinational circuit kombinacinė schema (be atminties elementų) Sequential circuit nuosekli (trigerinė, sekvencinė)

More information

Lecture #1: Introduction

Lecture #1: Introduction Lecture #1: Introduction Kunle Olukotun Stanford EE183 January 8, 20023 What is EE183? EE183 is continuation of EE121 Digital Logic Design is a a minute to learn, a lifetime to master Programmable logic

More information

Modeling Synchronous Logic Circuits. Debdeep Mukhopadhyay IIT Madras

Modeling 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 information

Synthesis Options FPGA and ASIC Technology Comparison - 1

Synthesis Options FPGA and ASIC Technology Comparison - 1 Synthesis Options Comparison - 1 2009 Xilinx, Inc. All Rights Reserved Welcome If you are new to FPGA design, this module will help you synthesize your design properly These synthesis techniques promote

More information

Minimizing Clock Domain Crossing in Network on Chip Interconnect

Minimizing Clock Domain Crossing in Network on Chip Interconnect Minimizing Clock Domain Crossing in Network on Chip Interconnect Parag Kulkarni 1, Puneet Gupta 2, Rudy Beraha 3 1 Synopsys 2 UCLA 3 Qualcomm Corp. R&D Outline Motivation The Router Coloring Problem Approaches

More information

EECS150 - Digital Design Lecture 10 Logic Synthesis

EECS150 - Digital Design Lecture 10 Logic Synthesis EECS150 - Digital Design Lecture 10 Logic Synthesis February 13, 2003 John Wawrzynek Spring 2003 EECS150 Lec8-synthesis Page 1 Logic Synthesis Verilog and VHDL started out as simulation languages, but

More information

Digital Blocks Semiconductor IP

Digital Blocks Semiconductor IP Digital Blocks Semiconductor IP TFT Controller General Description The Digital Blocks TFT Controller IP Core interfaces a microprocessor and frame buffer memory via the AMBA 2.0 to a TFT panel. In an FPGA,

More information

Luleå University of Technology Kurskod SMD098 Datum Skrivtid

Luleå University of Technology Kurskod SMD098 Datum Skrivtid Luleå University of Technology Kurskod SMD098 Datum 2001-12-17 Skrivtid 14.00 18.00 Tentamen i Beräkningstrukturer Antal uppgifter: 6 Max poäng: 35 Lärare: Jonas Thor Telefon: 2549 Tillåtna hjälpmedel:

More information

Pragmatic 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 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 information

RTL Coding General Concepts

RTL Coding General Concepts RTL Coding General Concepts Typical Digital System 2 Components of a Digital System Printed circuit board (PCB) Embedded d software microprocessor microcontroller digital signal processor (DSP) ASIC Programmable

More information

FSM Components. FSM Description. HDL Coding Methods. Chapter 7: HDL Coding Techniques

FSM Components. FSM Description. HDL Coding Methods. Chapter 7: HDL Coding Techniques FSM Components XST features: Specific inference capabilities for synchronous Finite State Machine (FSM) components. Built-in FSM encoding strategies to accommodate your optimization goals. You may also

More information

System On Chip: Design & Modelling (SOC/DAM) 1 R: Verilog RTL Design with examples.

System On Chip: Design & Modelling (SOC/DAM) 1 R: Verilog RTL Design with examples. System On Chip: Design & Modelling (SOC/DAM) Exercises Here is the first set of exercises. These are intended to cover subject groups 1-4 of the SOC/DAM syllabus (R, SC, SD, ESL). These questions are styled

More information

With design complexity increasing significantly

With design complexity increasing significantly With design complexity increasing significantly over the years, the verification of asynchronous designs has become one of the biggest challenges in modern systems-on-a-chip (SoCs). Functional simulation,

More information

A Pragmatic Approach to Metastability-Aware Simulation

A Pragmatic Approach to Metastability-Aware Simulation A Pragmatic Approach to Metastability-Aware Simulation Joseph Bulone, Kalray, Montbonnot Saint Martin, France (joseph.bulone@kalray.eu) Roger Sabbagh, Mentor Graphics Corporation, Ottawa, Canada (roger_sabbagh@mentor.com)

More information

Method We follow- How to Get Entry Pass in SEMICODUCTOR Industries for 3rd year engineering. Winter/Summer Training

Method We follow- How to Get Entry Pass in SEMICODUCTOR Industries for 3rd year engineering. Winter/Summer Training Method We follow- How to Get Entry Pass in SEMICODUCTOR Industries for 3rd year engineering Winter/Summer Training Level 2 continues. 3 rd Year 4 th Year FIG-3 Level 1 (Basic & Mandatory) & Level 1.1 and

More information

Digital System Design with SystemVerilog

Digital System Design with SystemVerilog Digital System Design with SystemVerilog Mark Zwolinski AAddison-Wesley Upper Saddle River, NJ Boston Indianapolis San Francisco New York Toronto Montreal London Munich Paris Madrid Capetown Sydney Tokyo

More information

DIGITAL DESIGN TECHNOLOGY & TECHNIQUES

DIGITAL DESIGN TECHNOLOGY & TECHNIQUES DIGITAL DESIGN TECHNOLOGY & TECHNIQUES CAD for ASIC Design 1 INTEGRATED CIRCUITS (IC) An integrated circuit (IC) consists complex electronic circuitries and their interconnections. William Shockley et

More information

UG0649 User Guide. Display Controller. February 2018

UG0649 User Guide. Display Controller. February 2018 UG0649 User Guide Display Controller February 2018 Contents 1 Revision History... 1 1.1 Revision 5.0... 1 1.2 Revision 4.0... 1 1.3 Revision 3.0... 1 1.4 Revision 2.0... 1 1.5 Revision 1.0... 1 2 Introduction...

More information

CHAPTER - 2 : DESIGN OF ARITHMETIC CIRCUITS

CHAPTER - 2 : DESIGN OF ARITHMETIC CIRCUITS Contents i SYLLABUS osmania university UNIT - I CHAPTER - 1 : BASIC VERILOG HDL Introduction to HDLs, Overview of Digital Design With Verilog HDL, Basic Concepts, Data Types, System Tasks and Compiler

More information

HDL Coding Style Xilinx, Inc. All Rights Reserved

HDL Coding Style Xilinx, Inc. All Rights Reserved HDL Coding Style Objective After completing this module, you will be able to: Select a proper coding style to create efficient FPGA designs Specify Xilinx resources that need to be instantiated for various

More information

Graduate Institute of Electronics Engineering, NTU. Lecturer: Chihhao Chao Date:

Graduate Institute of Electronics Engineering, NTU. Lecturer: Chihhao Chao Date: Design of Datapath Controllers and Sequential Logic Lecturer: Date: 2009.03.18 ACCESS IC LAB Sequential Circuit Model & Timing Parameters ACCESS IC LAB Combinational Logic Review Combinational logic circuits

More information

DESIGN AND IMPLEMENTATION OF 8 BIT AND 16 BIT ALU USING VERILOG LANGUAGE

DESIGN AND IMPLEMENTATION OF 8 BIT AND 16 BIT ALU USING VERILOG LANGUAGE DESIGN AND IMPLEMENTATION OF 8 BIT AND 16 BIT USING VERILOG LANGUAGE MANIT KANTAWALA Dept. of Electronic & Communication Global Institute of Technology, Jaipur Rajasthan, India Abstract: In this Paper

More information

High Performance Interconnect and NoC Router Design

High Performance Interconnect and NoC Router Design High Performance Interconnect and NoC Router Design Brinda M M.E Student, Dept. of ECE (VLSI Design) K.Ramakrishnan College of Technology Samayapuram, Trichy 621 112 brinda18th@gmail.com Devipoonguzhali

More information

Evolution of CAD Tools & Verilog HDL Definition

Evolution of CAD Tools & Verilog HDL Definition Evolution of CAD Tools & Verilog HDL Definition K.Sivasankaran Assistant Professor (Senior) VLSI Division School of Electronics Engineering VIT University Outline Evolution of CAD Different CAD Tools for

More information

1 ST SUMMER SCHOOL: VHDL BOOTCAMP PISA, JULY 2013

1 ST SUMMER SCHOOL: VHDL BOOTCAMP PISA, JULY 2013 MARIE CURIE IAPP: FAST TRACKER FOR HADRON COLLIDER EXPERIMENTS 1 ST SUMMER SCHOOL: VHDL BOOTCAMP PISA, JULY 2013 Introduction to VHDL Calliope-Louisa Sotiropoulou PhD Candidate/Researcher Aristotle University

More information

Advanced Synthesis Techniques

Advanced Synthesis Techniques Advanced Synthesis Techniques Reminder From Last Year Use UltraFast Design Methodology for Vivado www.xilinx.com/ultrafast Recommendations for Rapid Closure HDL: use HDL Language Templates & DRC Constraints:

More information