We think you have liked this presentation. If you wish to download it, please recommend it to your friends in any social system. Share buttons are a little bit lower. Thank you!
Presentation is loading. Please wait.
Published byAntonio Montgomery
Modified over 2 years ago
Non-synthesizability in Verilog Presented by Pradip Mukhopadhyay ISL-MOD3(E)PR3
©Interra Systems 2 Sub-module Description Schedule: –Presentation (PR1-PR4): 4 sessions –Lab: 5 sessions Objective: –Make the SpecToLayout trainees aware about the non- synthesizable aspects of Verilog Aim: –Enable SpecToLayout trainees to write proper and efficient Verilog codes, eliminating those elements that hinder synthesis
©Interra Systems 3 Contents Introduction Non-synthesizable Constructs Non-synthesizable Behavior Modeling Potential RTL-Gate Simulation Mismatch Summary Reference
©Interra Systems 4 Introduction Todays session covers: Non-synthesizable constructs and modeling styles in Verilog Styles causing simulation-synthesis mismatch
©Interra Systems 5 Non-synthesizable Constructs Initial block –Used only in test benches Events –Make more sense for syncing test bench components Datatypes –Real, Time, and RealTime are not supported for synthesis Force & Release –Force and release of data types are not supported Assign and deassign –Assign and deassign of reg data types are not supported –Assign on wire data type is supported
©Interra Systems 6 Fork join Preferable to use non-blocking assignments instead Primitives Only gate level primitives are supported Table Limited support for UDPs Delays Used for simulation purpose System task/function Limited usability in synthesis (e.g. $signed) Generally simulation specific Non-synthesizable Constructs (Contd.)
©Interra Systems 7 Non-synthesizable Behavioral Modeling Mixing of edge & level in the always sensitivity list Containing loops, where the number of iterations are not 'deterministic' during the processing of the loop Having multiple clocks in same always 'else' path of a synchronous assignment Consisting of storage specification within a subprogram – function/task Mixing of blocking and non-blocking assignments on the same variable Containing part select where both bounds are 'unknown'
©Interra Systems 8 Any improper asynchronous style of modeling other than (edge s1 or edge s2 or..... edge sn) if (s1) else if (s2) else if (sn -1) else sync block Non-synthesizable Behavioral Modeling (Contd.)
©Interra Systems 9 Potential RTL-Gate Sim Mismatch Incomplete sensitivity list Delay specifications in assignments or anywhere applicable Run time out of range Array[0:15] Array[i]; where 'i' is integer (32 bit) Read before write of wire/reg Multiply driven nets (simulation output leads to 'unknown')
©Interra Systems 10 Summary Today we have covered: Non-synthesizable construct Non-synthesizable styles Places for potential simulation-synthesis mismatch
©Interra Systems 11 Reference Verilog LRM from Interra Library /software/Documents/verilog/verilog.pdf
©Interra Systems 12 Thank You
©Interra Systems 13 Copyright © 2006 Interra Systems India Pvt. Ltd. Presentation ID: ISL-MOD3(E)PR3 Author: Pradip Mukhopadhyay Reviewers: Pradip Mukhopadhyay, Reena Misra, and Partha Pratim Das Version: 1.0 Release date:
Slide: 1 interra confidential Synthesis in EDA Flow by: Saikat Bandyopadhyay © Interra Systems India Pvt Ltd.
technische universität dortmund fakultät für informatik informatik 12 Communicating finite state machines Peter Marwedel TU Dortmund Informatik
MT311 (Oct 2007) Java Application Development Control Structures, Subprograms and Its Implementation Tutorial 7.
Deiva Preetha/Sornalakshmi Asst Prof SRM University, Kattankulathur School of Computing, Department of IT 1.
HDL Programming Fundamentals UNIT 8: Synthesis Basics 10.1 Highlights of SYNTHESIS Facts Synthesis is mapping between the simulation (software) domain.
© 2005 Altera Corporation © 2006 Altera Corporation Simulation with Mentor Graphics ModelSim.
DT266/2 Information Systems COBOL Revision. Chapters 1 & 2 Hutty & Spence Divisions of a Cobol Program Identification Division Program-ID. Environment.
UCM Path Traversal Daniel Amyot SG17, Geneva, March 5 th, 2002 UCM Scenarios and Path Traversal.
Doxygen – An Overview Kausik Datta Interra Systems India Pvt. Ltd.
SG 4: FIT1001 Computer Systems S Important Notice for Lecturers This file is provided as an example only Lecturers are expected to modify / enhance.
Copyright © 2009 Elsevier Chapter 3:: Names, Scopes, and Bindings Programming Language Pragmatics Michael L. Scott.
3 Copyright © 2005, Oracle. All rights reserved. Basic Java Syntax and Coding Conventions.
Sub and Function Procedures. Objectives Explain the difference between a Sub procedure and a Function procedure Create a Sub procedure Create a procedure.
1 Homework Reading –Tokheim, Section 13-5 (Three State Buffers only) Machine Projects –Continue on MP5 Labs –Continue labs with your assigned section.
HDL Programming Fundamentals 6.1 Highlights of Procedures, Tasks, and Functions Facts Procedures, Tasks, and Functions are HDL tools to optimize the style.
Sub: : Fundamental of Programming(FOP) Chap: 1 : Introduction to Programming: Algorithms and Flowcharts Presented By Tejas Modi Asst. Professor,
Chapter 9: Strings Problem Solving & Program Design in C Sixth Edition By Jeri R. Hanly & Elliot B. Koffman 1-1.
CSE-105 – Structured Programming CSE, BUET Introduction CSE 105 Structured Programming Language (C)
Copyright 1999, 2003 G.v. Bochmann CN-FM ch.2 1 Course Notes on Formal Methods for the Development of Distributed Real-Time Applications Gregor v. Bochmann.
Slide: 1 Interra Induction Training Programming in C++ Kolkata, July 11, 2006 Camp 06 Maturing Minds.
2 Welcome To Defect Management Training Objective: The objective of this course is to learn about standards that emphasize a best practice approach for.
1 Basic Java Constructs and Data Types – Nuts and Bolts Looking into Specific Differences and Enhancements in Java compared to C.
CAM 5.0 July 2006 CAM – The Power Forward of Storage Management Sun Microsystems, Inc.
P.Rajasekar & C.M.T.Karthigeyan Asst.Professor SRM University, Kattankulathur 1.
Manage an IT Project. Aim This presentation is prepared to support and give a general overview of the ‘How to Manage and IT Project’ Guide and should.
1 Test documentation and Test case design Iana Mourza QA Lead/Release Lead VMware, Inc
Chapter 3 Gate-Level Minimization. 3.1 Introduction The purposes of this chapter –To understand the underlying mathematical description and solution of.
Simulation Based on Law & Kelton, Simulation Modeling & Analysis, McGraw-Hill.
Copyright © 2003 Pearson Education, Inc. Slide 1.
Niagara AX 3.5 Features October 2009 Scott Muench James Johnson Marc Petock © 2009 Tridium, Inc,
© 2016 SlidePlayer.com Inc. All rights reserved.