Is SystemVerilog Useful for FPGA Design & Verification?

Similar documents
What, If Anything, In SystemVerilog Will Help Me With FPGA-based Design. Stuart Sutherland, Consultant and Trainer, Sutherland HDL, Inc.

Course Profile SystemVerilog Design

Mentor Graphics Solutions Enable Fast, Efficient Designs for Altera s FPGAs. Fall 2004

Sunburst Design - Comprehensive SystemVerilog Design & Synthesis by Recognized Verilog & SystemVerilog Guru, Cliff Cummings of Sunburst Design, Inc.

Sunburst Design - Advanced SystemVerilog for Design & Verification by Recognized Verilog & SystemVerilog Guru, Cliff Cummings of Sunburst Design, Inc.

Evaluation of the RTL Synthesis Tools for FPGA/PLD Design. M.Matveev. Rice University. August 10, 2001

RTL Coding General Concepts

A Deterministic Flow Combining Virtual Platforms, Emulation, and Hardware Prototypes

Chapter 5: ASICs Vs. PLDs

Advanced FPGA Design Methodologies with Xilinx Vivado

CSE P567 - Winter 2010 Lab 1 Introduction to FGPA CAD Tools

6 Month Certificate Program in VLSI Design & Verification" with Industry Level Projects. Tevatron Technologies Prívate Limited

Introduction to SystemC

Early Models in Silicon with SystemC synthesis

Model-Based Design for Video/Image Processing Applications

SystemVerilog 3.1: It s What The DAVEs In Your Company Asked For

PG Certificate. VLSI Design & Verification (RTL using Verilog, FPGA Design Flow & Verification) (Live Project)

Lecture 2 Hardware Description Language (HDL): VHSIC HDL (VHDL)

Post processing techniques to accelerate assertion development Ajay Sharma

Modular SystemVerilog

FPGA Based Digital Design Using Verilog HDL

FPGA system development What you need to think about. Frédéric Leens, CEO

Course Profile Assertions in UVM

EE 4755 Digital Design Using Hardware Description Languages

Advanced Digital Verification Nathan Nipper. Cadence NCSim Demonstration John Martiney. Harris Corporation, 10/16/2007. assuredcommunications

INDUSTRIAL TRAINING: 6 MONTHS PROGRAM TEVATRON TECHNOLOGIES PVT LTD

Mapping Multi-Million Gate SoCs on FPGAs: Industrial Methodology and Experience

ASIC world. Start Specification Design Verification Layout Validation Finish

Design Process. Design : specify and enter the design intent. Verify: Implement: verify the correctness of design and implementation

EE 4755 Digital Design Using Hardware Description Languages

Chapter 1 Overview of Digital Systems Design

Best Practices for Incremental Compilation Partitions and Floorplan Assignments

ONS Beta website. 7 December 2015

An Evaluation of the Advantages of Moving from a VHDL to a UVM Testbench by Shaela Rahman, Baker Hughes

Programmable Logic Training Courses

Overview of Digital Design with Verilog HDL 1

FPGAs Provide Reconfigurable DSP Solutions

5 th International Symposium 2015 IntSym 2015, SEUSL

UVM for VHDL. Fast-track Verilog for VHDL Users. Cont.

Optimizing Emulator Utilization by Russ Klein, Program Director, Mentor Graphics

Using PLI 2.0 (VPI) with VCS Yes, it really works! (or does it?)

Evolution of Implementation Technologies. ECE 4211/5211 Rapid Prototyping with FPGAs. Gate Array Technology (IBM s) Programmable Logic

Programmable Logic Devices HDL-Based Design Flows CMPE 415

Evolution of UPF: Getting Better All the Time

FPGA chip verification using UVM

Cover TBD. intel Quartus prime Design software

The Need for Speed: Understanding design factors that make multicore parallel simulations efficient

Actel Libero TM Integrated Design Environment v2.3 Structural Schematic Flow Design Tutorial

Cover TBD. intel Quartus prime Design software

Design Once with Design Compiler FPGA

CMPE 415 Programmable Logic Devices Introduction

Synplify Pro for Microsemi Edition Release Notes

AccelDSP tutorial 2 (Matlab.m to HDL for Xilinx) Ronak Gandhi Syracuse University Fall

FPGA-Based Rapid Prototyping of Digital Signal Processing Systems

Evolution of CAD Tools & Verilog HDL Definition

Accelerating FPGA/ASIC Design and Verification

Design Creation & Synthesis Division Avoid FPGA Project Delays by Adopting Advanced Design Methodologies

Unifying Design and Verification

Employing Multi-FPGA Debug Techniques

01 1 Electronic Design Automation (EDA) the correctness, testability, and compliance of a design is checked by software

What, If Anything, In SystemVerilog Will Help Me With FPGA-based Designs?

EECS 4340: Computer Hardware Design Unit 4: Validation

World Class Verilog & SystemVerilog Training

Hardware Implementation and Verification by Model-Based Design Workflow - Communication Models to FPGA-based Radio

DAVIS SYSTEMS

FlexRIO. FPGAs Bringing Custom Functionality to Instruments. Ravichandran Raghavan Technical Marketing Engineer. ni.com

Honors & Scholars eportfolio Overview and Assessment Dr. Lindsey Chamberlain Dr. Leo Hoar

Introduction to Verilog. Mitch Trope EECS 240 Spring 2004

Hardware Emulation: Three Decades of Evolution Part II

Hardware describing languages, high level tools and Synthesis

My Second FPGA for Altera DE2-115 Board

Vulnerability Management Trends In APAC

VERILOG 1: AN OVERVIEW

Synplify Pro for Actel Edition Release Notes

Lecture 5: Aldec Active-HDL Simulator

2013, Healthcare Intelligence Network

SystemVerilog Design: User Experience Defines Multi-Tool, Multi-Vendor Language Working Set Experience from Four Years of SVD Adoption

Lecture 1: Introduction Course arrangements Recap of basic digital design concepts EDA tool demonstration

Lab #1: Introduction to Design Methodology with FPGAs part 1 (80 pts)

Choosing an Intellectual Property Core

FPGA briefing Part II FPGA development DMW: FPGA development DMW:

2. Learn how to use Bus Functional Models (BFM) and write test cases for verifying your design.

What is Standard APEX? TOOLBOX FLAT DESIGN CARTOON PEOPLE

Chapter 2: Hardware Design Flow Using Verilog in Quartus II

DESIGN STRATEGIES & TOOLS UTILIZED

Quartus II Prime Foundation

AHB-Lite Multilayer Interconnect IP. AHB-Lite Multilayer Interconnect IP User Guide Roa Logic, All rights reserved

SOPC LAB1. I. Introduction. II. Lab contents. 4-bit count up counter. Advanced VLSI Due Wednesday, 01/08/2003

Boost FPGA Prototype Productivity by 10x

Modeling a 4G LTE System in MATLAB

8. Best Practices for Incremental Compilation Partitions and Floorplan Assignments

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

Course Information

Overview of Digital Design Methodologies

Complex Signal Processing Verification under DO-254 Constraints by François Cerisier, AEDVICES Consulting

DESIGNING RESPONSIVE DASHBOARDS. Best Practices for Building Responsive Analytic Applications

Reconfigurable Computing. Design and Implementation. Chapter 4.1

Codesign Framework. Parts of this lecture are borrowed from lectures of Johan Lilius of TUCS and ASV/LL of UC Berkeley available in their web.

A New Electronic System Level Methodology for Complex Chip Designs

Understanding Managed Services

Transcription:

Is Useful for FPGA Design & Verification? ( Burn and Learn versus Learn and Burn ) Stuart Sutherland Wizard Sutherland HDL, Inc. Training engineers to be HDL wizards www.sutherland-hdl.com

2of 20 About the Presenter... Stuart Sutherland design and verification consultant Founder and President of Sutherland HDL, Inc. Specializes in providing Verilog/ training Involved in hardware design & verification since 1982 Has been using Verilog since 1988 Bachelors in Computer Science with Electronic Engineering minor Master s in Education with emphasis in e-learning Involved in IEEE Verilog and standards since 1993 Editor of IEEE 1364 Verilog and IEEE 1800 Language Reference Manuals (LRMs) Author of multiple books on Verilog and You can follow up with the author at stuart@sutherland-hdl.com

Presenting to FPGA Designers 3of 20 In 2004 I gave a paper on to FPGA designers Nobody cared, nobody listened, no one asked questions This relief is over the door of one of the entrances to the Yale Law School building Has anything changed after 5 years? 3 months ago, I attended an FPGA conference Synopsys had several presentations about Almost nobody cared, listened, or asked questions

FPGA Design and Verification Then and Now 4of 20 FPGA tools have changed since 2004, but Are FPGA designers still using obsolete languages? THEN (2004 AD) NOW (2009 AD) Awk, grep, sed Awk, grep, sed Adapted from a cartoon strip, circa 1987

5of 20 Asking the Right Question Do FPGA designers use advanced ASIC methodologies? Which chart is correct? Verify in Lab burn-and-learn Verify in Simulation learn-and-burn Verify in Lab burn-and-learn Verify in Simulation learn-and-burn This paper does not answer this question!!! The real question is "Is useful for FPGA design and Verification"

6of 20 What are the Obstacles? The purpose of this paper is to understand the obstacles Are features useful for FPGA design/verification? Are there deficiencies with tools that limit its usefulness? Are there deficiencies in the language that limit its usefulness? What needs to change to enable using???

7of 20 Finding the Answers To determine what FPGA designers think about : A survey was sent to companies involved in designing FPGAs More than 35 companies from over 11 countries responded One-on-one interviews were conducted with several engineers Note: The engineers involved already use VHDL or Verilog Responses are from engineers who understand using HDLs for FPGA design and verification

8of 20 Which HDL Is Used? Participants were asked which HDL they use to design and verify FPGAs: For Synthesis For Verification Verilog (45%) (24%) Other (5%) Verilog (42%) (35%) Other (5%) VHDL (26%) VHDL (18%) What this data shows There are companies using to create FPGAs! What this data does not show What types of FPGAs are being created using (e.g. end products versus ASIC prototyping)

HDL versus FPGA Usage 9of 20 cross coverage was used to determine which HDLs were most often used for which types of FPGA (Not really the correlation of data was done by hand) For Synthesis Deliverable Product ASIC Prototyping VHDL Verilog VHDL Verilog VHDL Verilog VHDL Verilog Synthesis Verification Synthesis Verification This data indicates that: is used more to verify FPGAs than for synthesis is used more for prototyping than for end products

Features of Being Used for FPGAs 10 of 20 Respondents who do use were asked what constructs they use: Synthesis enumerated types structures unique case priority case always_ff always_comb packages interfaces Verification program blocks clocking blocks Object Oriented testbenches assertions constrained random tests coverage This data indicates that: Engineers who are using are taking advantage of all aspects of the language

Reasons Is Not Being Used 11 of 20 Respondents who do not use were asked, "Why not?" Synthesis Verification Did not consider using (43%) Synthesis tool did not support (41%) not useful (16%) Did not consider using (58%) Simulator did not support (25%) not useful (17%) The additional comments made by engineers explain the obstacles for why was not used

Survey and Interview Comments 12 of 20 Several hundred comments provide the answers as to what obstacles might be preventing the usage of The comments were analyzed to identify specific themes Five themes appeared frequently Presented on the next few slides, in order of least frequently to most frequently occurring theme

Synthesis Support 13 of 20 Nearly every engineer who had tried using for synthesis commented that: Synthesis compilers from FPGA vendors (e.g. Xilinx, Altera, Actel) did not support at all From an engineer designing FPGAs for consumer products: [We need] better support in [our] vendor s synthesis tool ([FPGA vendor name omitted] is noteworthy in not supporting it at all in their synthesis tool). Synthesis compilers from EDA vendors (e.g. Synopsys, Synplicity) had very limited support for From an engineers using FPGAs to prototype ASICs (paraphrased from interview): In order to emulate the ASIC in FPGAs, we have to make substantial changes to the RTL code to manually re-write constructs as Verilog. Are these statements valid? That question is addressed later in this presentation

14 of 20 Other Common Themes Many of the comments from participants indicated a lack of awareness of capabilities Seems like it [] is just as useful as Verilog since it is a superset of Verilog...We can get by without learning something new. SV inherits too much of the low level nature of Verilog and does not allow as high-level design as VHDL. Cost came up a number of times Support [for ] would have to come through the simulation tools we now own. And don t bump up my maintenance costs to cover that capability. Learning was a concern We considered, but did not have adequate training and did not want a disruption.

Fact or Fiction? FPGAs Don t Need 15 of 20 Some survey respondents indicated that is too complex for FPGA design and verification Some of our Verilog users have been reluctant to move away from Verilog 95. Is this a valid concern? FPGAs can be as complex as ASICs can be adopted in phases Can benefit from many features without learning OO programming or other advanced features Recommendations: Synopsys needs to improve the marketing of for FPGA design and verification

Fact or Fiction? FPGA Synthesis Doesn t Support 16 of 20 Almost every survey and interview respondent said that synthesis is the biggest obstacle to using Yet almost all vendors claim to support synthesis Who is right? Two reasons engineers perceive synthesis is an obstacle are: 1. A older version of the synthesis compiler was evaluated Our last assessment [of synthesis] was done 2-1/2 years ago. We have not re-assessed since that time. 2. ASIC and FPGA synthesis tools support different SV subsets The [RTL code] must be done differently for each synthesis compiler because the support for is quite different for each compiler. Recommendation for Synopsys: DC & Synplify-Pro need to support the same SV constructs!!!

Fact or Fiction? Tools Cost Too Much 17 of 20 Some FPGA designers stated that they need low-cost tools [ needs] support from a free open source simulator. [simulator name omitted], which presently only supports Verilog 95. I use I can't see many teams taking up [ for verification].a simulation seat is easily more expensive than all other FPGA design software combined. Is this a valid concern? Historically, FPGA tools have cost less than ASIC tools Advanced verification tools are expensive to create & maintain Recommendations: Project managers needs to recognize that The more complex the FPGA, the more expensive the tools EDA/FPGA vendors can reduce cost with "lite" versions of tools

Fact or Fiction? Is Too Difficult to Learn 18 of 20 Several comments indicated that the cost or time required to learn is an obstacle to adopting We considered, but did not have adequate training and did not want a disruption. Is this a valid concern? Mastering every aspect of requires a lot of learning Do not need to be an expert OO programmer to gain huge benefits from Recommendations: Engineers can learn incrementally E.g.: First learn synthesis constructs or assertions As needs increase, learn more advanced language features

19 of 20 Conclusions is useful for FPGA design and verification Many FPGA engineers are already using ASIC prototyping is where is most often used There are valid barriers that have slowed the adoption of SV Synthesis/simulation support was an obstacle, but not any more Lack of awareness about is the real obstacle! The paper conclusions are based on grounded data Survey and interviews were used to determine the facts 66 engineers at more than 35 companies in 11+ countries Quantitative and qualitative data collection and analysis The paper includes all comments received The paper includes all comments received Both positive and negative comments only names are removed

20 of 20 Thank You! FPGA tools have changed since 2004, AND You're no longer using obsolete languages, right? THEN (2004 AD) NOW (2009 AD) Awk, grep, sed unique, assert, inherits, constraint