Digital System Design Verilog ® HDL Maziar Goudarzi.

Slides:



Advertisements
Similar presentations
Digital System Design Subject Name : Digital System Design Course Code : IT-314.
Advertisements

ENEL111 Digital Electronics
Simulation executable (simv)
Verilog Overview. University of Jordan Computer Engineering Department CPE 439: Computer Design Lab.
CSE 201 Computer Logic Design * * * * * * * Verilog Modeling
1 Lecture 1: Verilog HDL Introduction. 2 What is Verilog HDL? Verilog Hardware Description Language(HDL)? –A high-level computer language can model, represent.
Verilog-HDL Reference: Verilog HDL: a guide to digital design and synthesis, Palnitkar, Samir Some of slides in this lecture are supported by Prof. An-Yeu.
1 Hardware description languages: introduction intellectual property (IP) introduction to VHDL and Verilog entities and architectural bodies behavioral,
ECE 353 Computer Systems Lab I Verilog Hardware Description Language.
Silicon Programming--Intro. to HDLs1 Hardware description languages: introduction intellectual property (IP) introduction to VHDL and Verilog entities.
ELEN468 Lecture 11 ELEN468 Advanced Logic Design Lecture 1Introduction.
Prof. John Nestor ECE Department Lafayette College Easton, Pennsylvania ECE VLSI System Design Lecture 4 - Advanced Verilog.
Digital System Design Verilog ® HDL Modules and Ports Maziar Goudarzi.
Digital System Design Course Introduction Maziar Goudarzi.
ELEN468 Lecture 11 ELEN468 Advanced Logic Design Lecture 1Introduction.
University of Jordan Computer Engineering Department CPE 439: Computer Design Lab.
Spring 2002EECS150 - Lec0-intro Page 1 EECS150 - Digital Design Lecture 8 - Hardware Description Languages February 14, 2002 John Wawrzynek.
O VERVIEW OF DIGITAL SYSTEMS Hardware Description Language 1.
Digital System Design EEE344 Lecture 2 Introduction to Verilog HDL Prepared by: Engr. Qazi Zia, Assistant Professor EED, COMSATS Attock1.
Hardware Description Language(HDL). Verilog simulator was first used beginning in 1985 and was extended substantially through The implementation.
Chap. 2 Hierarchical Modeling Concepts. 2 Hierarchical Modeling Concepts Design Methodologies 4-bit Ripple Carry Counter Modules Instances Components.
(1) Introduction © Sudhakar Yalamanchili, Georgia Institute of Technology, 2006.
GOOD MORNING.
CSET 4650 Field Programmable Logic Devices
VHDL Structured Logic Design School of Electrical Engineering University of Belgrade Department of Computer Engineering Ivan Dugic Veljko.
Verilog Digital System Design Z. Navabi, McGraw-Hill, 2005
1 VERILOG Fundamentals Workshop סמסטר א ' תשע " ה מרצה : משה דורון הפקולטה להנדסה Workshop Objectives: Gain basic understanding of the essential concepts.
Chap. 1 Overview of Digital Design with Verilog. 2 Overview of Digital Design with Verilog HDL Evolution of computer aided digital circuit design Emergence.
1 Digital System Design Subject Name : Digital System Design Course Code : IT- 308 Instructor : Amit Prakash Singh Home page :
Hardware Design Environment Instructors: Fu-Chiung Cheng ( 鄭福炯 ) Associate Professor Computer Science & Engineering Tatung University.
CSE 494: Electronic Design Automation Lecture 2 VLSI Design, Physical Design Automation, Design Styles.
COE 405 Design and Modeling of Digital Systems
1 An Update on Verilog Ξ – Computer Architecture Lab 28/06/2005 Kypros Constantinides.
Digital System 數位系統 Verilog HDL Ping-Liang Lai (賴秉樑)  
Digital System Design Introduction to Verilog ® HDL Maziar Goudarzi.
CPEN Digital System Design
CH71 Chapter 7 Hardware Description Language (HDL) By Taweesak Reungpeerakul.
Fall 2004EE 3563 Digital Systems Design EE 3563 VHSIC Hardware Description Language  Required Reading: –These Slides –VHDL Tutorial  Very High Speed.
Introduction to VLSI Design – Lec01. Chapter 1 Introduction to VLSI Design Lecture # 11 High Desecration Language- Based Design.
Slide 1 2. Verilog Elements. Slide 2 Why (V)HDL? (VHDL, Verilog etc.), Karen Parnell, Nick Mehta, “Programmable Logic Design Quick Start Handbook”, Xilinx.
1 Hardware Description Languages: a Comparison of AHPL and VHDL By Tamas Kasza AHPL&VHDL Digital System Design 1 (ECE 5571) Spring 2003 A presentation.
Modern VLSI Design 4e: Chapter 8 Copyright  2008 Wayne Wolf Topics Modeling with hardware description languages (HDLs).
Modern VLSI Design 3e: Chapter 8 Copyright  1998, 2002 Prentice Hall PTR Topics n Modeling with hardware description languages (HDLs).
IMPLEMENTATION OF MIPS 64 WITH VERILOG HARDWARE DESIGN LANGUAGE BY PRAMOD MENON CET520 S’03.
M.Mohajjel. Digital Systems Advantages Ease of design Reproducibility of results Noise immunity Ease of Integration Disadvantages The real world is analog.
Digital System Design Verilog ® HDL Design at Structural Level Maziar Goudarzi.
ELEE 4303 Digital II Introduction to Verilog. ELEE 4303 Digital II Learning Objectives Get familiar with background of HDLs Basic concepts of Verilog.
CSCI-365 Computer Organization Lecture Note: Some slides and/or pictures in the following are adapted from: Computer Organization and Design, Patterson.
Introduction to ASIC flow and Verilog HDL
FPGA-Based System Design Copyright  2004 Prentice Hall PTR Topics n Modeling with hardware description languages (HDLs).
Chapter1: Introduction Digital System Designs and Practices Using Verilog HDL and 2008~2010, John Wiley 1-1 Chapter 1: Introduction Prof. Ming-Bo.
Verilog Intro: Part 1. Hardware Description Languages A Hardware Description Language (HDL) is a language used to describe a digital system, for example,
1 University of Jordan Computer Engineering Department CPE 439: Computer Design Lab.
Verilog-HDL Reference: Verilog HDL: a guide to digital design and synthesis, Palnitkar, Samir Some of slides in this lecture are supported by Prof. An-Yeu.
1 Lecture 1: Verilog HDL Introduction. 2 What is Verilog HDL? Verilog Hardware Description Language(HDL)? –A high-level computer language can model, represent.
EECE 320 L8: Combinational Logic design Principles 1Chehab, AUB, 2003 EECE 320 Digital Systems Design Lecture 8: Combinational Logic Design Principles.
1 A hardware description language is a computer language that is used to describe hardware. Two HDLs are widely used Verilog HDL VHDL (Very High Speed.
EMT 351/4 DIGITAL IC DESIGN Week # 1 EDA & HDL.
Structural Description
Digital System Design An Introduction to Verilog® HDL
Verilog-HDL Reference: Verilog HDL: a guide to digital design and synthesis, Palnitkar, Samir Some of slides in this lecture are supported by Prof. An-Yeu.
Hardware Description Languages
Introduction to Verilog® HDL
Lecture 1.3 Hardware Description Languages (HDLs)
HIGH LEVEL SYNTHESIS.
Verilog-HDL Reference: Verilog HDL: a guide to digital design and synthesis, Palnitkar, Samir Some of slides in this lecture are supported by Prof. An-Yeu.
CS 153 Logic Design Lab Professor Ian G. Harris
Introduction to Verilog® HDL
Digital Designs – What does it take
Introduction to Digital IC Design
Presentation transcript:

Digital System Design Verilog ® HDL Maziar Goudarzi

2005Verilog HDL2 Today program History of Verilog ® HDL Overview of Digital Design with Verilog ® HDL Hello World! Hierarchical Modeling Concepts

2005Verilog HDL3 History of Verilog ® HDL Beginning: 1983  “Gateway Design Automation” company  Simulation environment Comprising various levels of abstraction Switch (transistors), gate, register-transfer, and higher levels

2005Verilog HDL4 History of Verilog ® HDL (cont’d) Three factors to success of Verilog  Programming Language Interface (PLI) Extend and customize simulation environment  Close attention to the needs of ASIC foundries “Gateway Design Automation” partnership with Motorola, National, and UTMC in  Verilog-based synthesis technology “Gateway Design Automation” licensed Verilog to Synopsys Synopsys introduced synthesis from Verilog in 1987

2005Verilog HDL5 History of Verilog ® HDL (cont’d) VHDL  VHSIC (Very High Speed Integrated Circuit) Hardware Description Language  Developed under contract from DARPA  IEEE standard  Public domain  Other EDA vendors adapted VHDL  “Gateway” put Verilog in public domain

2005Verilog HDL6 History of Verilog ® HDL (cont’d) Today  Market divided between Verilog & VHDL VHDL mostly in Europe Verilog dominant in US  VHDL More general language Not all constructs are synthesizable  Verilog: Not as general as VHDL Most constructs are synthesizable

Verilog ® HDL Overview of Digital Design Using Verilog

2005Verilog HDL8 Overview of Digital Design Using Verilog Evolution of Computer-Aided Digital Design Emergence of HDLs Typical Design Flow Importance of HDLs Popularity of Verilog HDL Trends in HDLs

2005Verilog HDL9 Evolution of Computer-Aided Digital Design SSI: Small scale integration  A few gates on a chip MSI: Medium scale integration  Hundreds of gates on a chip LSI: Large scale integration  Thousands of gates on a chip  CAD: Computer-Aided Design CAD vs. CAE  Logic and circuit simulators  Prototyping on bread board  Layout by hand (on paper or a computer terminal)

2005Verilog HDL10 Evolution of Computer-Aided Digital Design (cont’d) VLSI: Very Large Scale Integration  Hundred thousands of gates  Not feasible anymore: Bread boarding Manual layout design  Simulator programs  Automatic place-and-route  Bottom-Up design Design small building blocks Combine them to develop bigger ones  More and more emphasis on logic simulation

2005Verilog HDL11 Emergence of HDLs The need to a standardized language for hardware description  Verilog ® and VHDL Simulators emerged  Usage: functional verification  Path to implementation: manual translation into gates Logic synthesis technology  Late 1980s  Dramatic change in digital design Design at Register-Transfer Level (RTL) using an HDL

2005Verilog HDL12 Typical Design Flow (in 1996) 1.Design specification 2.Behavioral description 3.RTL description 4.Functional verification and testing 5.Logic synthesis 6.Gate-level netlist 7.Logical verification and testing 8.Floor planning, automatic place & route 9.Physical layout 10.Layout verification 11.Implementation

2005Verilog HDL13 Typical Design Flow (cont’d) Most design activity  In 1996: Manually optimizing the RTL design CAD tools take care of generating lower-level details Reducing design time to months from years  Today Still RTL is used in many cases But, synthesis from behavioral-level also possible Digital design now resembles high-level computer programming

2005Verilog HDL14 Typical Design Flow (cont’d) NOTE:  CAD tools help, but the designer still has the main role GIGO (Garbage-In Garbage-Out) concept To obtain an optimized design, the designer needs to know about the synthesis technology Compare to software programming and compilation

2005Verilog HDL15 Importance of HDLs Retargeting to a new fabrication technology Functional verification earlier in the design cycle Textual concise representation of the design  Similar to computer programs  Easier to understand

2005Verilog HDL16 Popularity of Verilog HDL Verilog HDL  General-purpose  Easy to learn, easy to use  Similar in syntax to C  Allows different levels of abstraction and mixing them  Supported by most popular logic synthesis tools  Post-logic-synthesis simulation libraries by all fabrication vendors  PLI to customize Verilog simulators to designers’ needs

2005Verilog HDL17 Trends in HDLs Design at behavioral level Formal verification techniques Very high speed and time critical circuits  e.g. microprocessors  Mixed gate-level and RTL designs Hardware-Software Co-design  System-level languages: SystemC, SpecC, …

Verilog ® HDL Hello World!

2005Verilog HDL19 Basics of Digital Design Using HDLs Circuit Under Design (CUD) 8 4 Generating inputs to CUD Checking outputs of CUD Test bench Stimulus block

2005Verilog HDL20 ModelSim ® Simulation Environment You’ll see in the laboratory

2005Verilog HDL21 Verilog Basic Building Block Module module not_gate(in, out); // module name+ports // comments: declaring port type input in; output out; // Defining circuit functionality assign out = ~in; endmodule

2005Verilog HDL22 useless Verilog Example module useless; initial $display(“Hello World!”); endmodule Note the message-display statement  Compare to printf() in C

Verilog ® HDL Hierarchical Modeling Concepts

2005Verilog HDL24 Design Methodologies

2005Verilog HDL25 4-bit Ripple Carry Counter

2005Verilog HDL26 T-flipflop and the Hierarchy

2005Verilog HDL27 Modules module ( ); endmodule Example: module T_ff(q, clock, reset); endmodule

2005Verilog HDL28 Modules (cont’d) Verilog supported levels of abstraction  Behavioral (algorithmic) level Describe the algorithm used Very similar to C programming  Dataflow level Describe how data flows between registers and is processed  Gate level Interconnect logic gates  Switch level Interconnect transistors (MOS transistors) Register-Transfer Level (RTL)  Generally known as a combination of behavioral+dataflow that is synthesizable by EDA tools

2005Verilog HDL29 Instances module ripple_carry_counter(q, clk, reset); output [3:0] q; input clk, reset; //4 instances of the module TFF are created. TFF tff0(q[0],clk, reset); TFF tff1(q[1],q[0], reset); TFF tff2(q[2],q[1], reset); TFF tff3(q[3],q[2], reset); endmodule

2005Verilog HDL30 Instances (cont’d) module TFF(q, clk, reset); output q; input clk, reset; wire d; DFF dff0(q, d, clk, reset); not n1(d, q); // not is a Verilog provided primitive. endmodule // module DFF with asynchronous reset module DFF(q, d, clk, reset); output q; input d, clk, reset; reg q; reset or negedge clk) if (reset) q = 1'b0; else q = d; endmodule

2005Verilog HDL31 Instances (cont’d) Illegal instantiation example:  Nested module definition not allowed  Note the difference between module definition and module instantiation // Define the top level module called ripple carry // counter. It is illegal to define the module T_FF inside // this module. module ripple_carry_counter(q, clk, reset); output [3:0] q; input clk, reset; module T_FF(q, clock, reset);// ILLEGAL MODULE NESTING : : endmodule // END OF ILLEGAL MODULE NESTING endmodule

2005Verilog HDL32 Simulation- Test Bench Styles

2005Verilog HDL33 Example Design block was shown before  ripple_carry_counter, T_FF, and D_FF modules Stimulus block

2005Verilog HDL34 Example (cont’d) module stimulus; reg clk; reg reset; wire[3:0] q; // instantiate the design block ripple_carry_counter r1(q, clk, reset); // Control the clk signal that drives the design block. initial clk = 1'b0; always #5 clk = ~clk; // Control the reset signal that drives the design block initial begin reset = 1'b1; #15 reset = 1'b0; #180 reset = 1'b1; #10 reset = 1'b0; #20 $stop; end initial // Monitor the outputs $monitor($time, " Output q = %d", q); endmodule

2005Verilog HDL35 What we learned today History of Verilog HDL Principles of digital design using HDLs Our first Verilog design example

2005Verilog HDL36 Other Notes Course web-page  Exercise 1  Install and use ModelSim in the lab. to simulate ripple_carry_counter example  Chapter 2 exercises