Hardware Description Languages (HDLs) Verilog

Similar documents
EE 8351 Digital Logic Circuits Ms.J.Jayaudhaya, ASP/EEE

FPGA Design Challenge :Techkriti 14 Digital Design using Verilog Part 1

Verilog Tutorial (Structure, Test)

IT T35 Digital system desigm y - ii /s - iii

structure syntax different levels of abstraction

Here is a list of lecture objectives. They are provided for you to reflect on what you are supposed to learn, rather than an introduction to this

Verilog for Combinational Circuits

Verilog Fundamentals. Shubham Singh. Junior Undergrad. Electrical Engineering

Nikhil Gupta. FPGA Challenge Takneek 2012

Register Transfer Level in Verilog: Part I

EECS 3201: Digital Logic Design Lecture 4. Ihab Amer, PhD, SMIEEE, P.Eng.

Combinational Logic II


CENG 241 Digital Design 1

HIERARCHICAL DESIGN. RTL Hardware Design by P. Chu. Chapter 13 1

Outline HIERARCHICAL DESIGN. 1. Introduction. Benefits of hierarchical design

EECS150 - Digital Design Lecture 8 - Hardware Description Languages

ECE 2300 Digital Logic & Computer Organization. More Sequential Logic Verilog

Digital Logic Design Lab

HW1 Modeling Concepts

Synthesis of Combinational and Sequential Circuits with Verilog

Speaker: Shao-Wei Feng Adviser: Prof. An-Yeu Wu Date: 2010/09/28

Schematic design. Gate level design. 0 EDA (Electronic Design Assistance) 0 Classical design. 0 Computer based language

HDL for Combinational Circuits. ENEL211 Digital Technology

Building Combinatorial Circuit Using Behavioral Modeling Lab

Verilog. Verilog for Synthesis

MODELING LANGUAGES AND ABSTRACT MODELS. Giovanni De Micheli Stanford University. Chapter 3 in book, please read it.

Hardware description language (HDL)

Digital Design with FPGAs. By Neeraj Kulkarni

NH 67, Karur Trichy Highways, Puliyur C.F, Karur District DEPARTMENT OF INFORMATION TECHNOLOGY CS 2202 DIGITAL PRINCIPLES AND SYSTEM DESIGN

Module 2.1 Gate-Level/Structural Modeling. UNIT 2: Modeling in Verilog

Workshop on Digital Circuit Design in FPGA

register:a group of binary cells suitable for holding binary information flip-flops + gates

Hardware description languages

St.MARTIN S ENGINEERING COLLEGE Dhulapally, Secunderabad

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

Introduction to Verilog

EPC6055 Digital Integrated Circuits EXAM 1 Fall Semester 2013

Date Performed: Marks Obtained: /10. Group Members (ID):. Experiment # 11. Introduction to Verilog II Sequential Circuits

ECE UMass, Amherst. Verilog tutorial

Introduction to Verilog. Garrison W. Greenwood, Ph.D, P.E.

Chap 6 Introduction to HDL (d)

Introduction to Verilog HDL

MLR Institute of Technology

Verilog. What is Verilog? VHDL vs. Verilog. Hardware description language: Two major languages. Many EDA tools support HDL-based design

The Verilog Language COMS W Prof. Stephen A. Edwards Fall 2002 Columbia University Department of Computer Science

Verilog Module 1 Introduction and Combinational Logic

Tutorial on Verilog HDL

CSE140L: Components and Design Techniques for Digital Systems Lab. Verilog HDL. Instructor: Mohsen Imani UC San Diego. Source: Eric Crabill, Xilinx

EECS150 - Digital Design Lecture 5 - Verilog Logic Synthesis

INSTITUTE OF AERONAUTICAL ENGINEERING Dundigal, Hyderabad ELECTRONICS AND COMMUNICATIONS ENGINEERING

EE 4755 Digital Design Using Hardware Description Languages

Department of Technical Education DIPLOMA COURSE IN ELECTRONICS AND COMMUNICATION ENGINEERING. Fifth Semester. Subject: VHDL Programming

FPGA Design Challenge Techkriti Digital Logic Design using Verilog Part 2 By Neeraj Kulkarni

PINE TRAINING ACADEMY

Keywords: HDL, Hardware Language, Digital Design, Logic Design, RTL, Register Transfer, VHDL, Verilog, VLSI, Electronic CAD.

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

Verilog Design Entry, Synthesis, and Behavioral Simulation

Combinational Logic Design with Verilog. ECE 152A Winter 2012

Design Using Verilog

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

ACS College of Engineering. Department of Biomedical Engineering. Logic Design Lab pre lab questions ( ) Cycle-1

VHDL. Chapter 1 Introduction to VHDL. Course Objectives Affected. Outline

ECE 4514 Digital Design II. Spring Lecture 3: Verilog Bread and Butter

Chap 3. Modeling structure & basic concept of Verilog HDL

Lab 1: Introduction to Verilog HDL and the Xilinx ISE

14:332:231 DIGITAL LOGIC DESIGN. Hardware Description Languages

EEL 4783: HDL in Digital System Design

Combinational Logic Circuits

EE 231 Fall Lab 1: Introduction to Verilog HDL and Altera IDE

ECE 4514 Digital Design II. Spring Lecture 2: Hierarchical Design

CHAPTER 3 METHODOLOGY. 3.1 Analysis of the Conventional High Speed 8-bits x 8-bits Wallace Tree Multiplier

Control and Datapath 8

Digital Systems Laboratory

FPGA Design Challenge :Techkriti 14 Digital Design using Verilog Part 2

Introduction. Why Use HDL? Simulation output. Explanation

(ii) Simplify and implement the following SOP function using NOR gates:

Contents. Appendix D Verilog Summary Page 1 of 16

Lab 3: Standard Combinational Components

Introduction to VHDL #3

University of Hawaii EE 361L. Getting Started with Spartan 3E Digilent Basys2 Board. Lab 4.1

Register Transfer Level Design. Topics. Register Transfer Level Notation. Chapter 8 Steve Oldridge Dr. Sidney Fels. A Circuit is described as:

101-1 Under-Graduate Project Digital IC Design Flow

Verilog HDL:Digital Design and Modeling. Chapter 3. Keywords

Introduction to Verilog HDL. Verilog 1

ECE 574: Modeling and Synthesis of Digital Systems using Verilog and VHDL. Fall 2017 Final Exam (6.00 to 8.30pm) Verilog SOLUTIONS

Combinational Logic. Prof. Wangrok Oh. Dept. of Information Communications Eng. Chungnam National University. Prof. Wangrok Oh(CNU) 1 / 93

CPEN 230L: Introduction to Digital Logic Laboratory Lab #6: Verilog and ModelSim

Chapter 5: Tasks, Functions, and UDPs

Don t expect to be able to write and debug your code during the lab session.

VERILOG HDL. 1 ENGN3213: Digital Systems and Microprocessors L#5-6

Unit 5. Hardware description languages

P-1/26. Samir Palnitkar. Prentice-Hall, Inc. INSTRUCTOR : CHING-LUNG SU.

Tutorial on VHDL and Verilog Applications

EN2911X: Reconfigurable Computing Lecture 05: Verilog (2)

Programmable Logic Devices Verilog VII CMPE 415

Computer Aided Design Basic Syntax Gate Level Modeling Behavioral Modeling. Verilog

Outline. CPE/EE 422/522 Advanced Logic Design L05. Review: General Model of Moore Sequential Machine. Review: Mealy Sequential Networks.

EECS150 - Digital Design Lecture 10 Logic Synthesis

CAD for VLSI Design - I. Lecture 21 V. Kamakoti and Shankar Balachandran

Transcription:

Hardware Description Languages (HDLs) Verilog Material from Mano & Ciletti book By Kurtulus KULLU Ankara University

What are HDLs? A Hardware Description Language resembles a programming language specifically oriented to describe hardware HDL model can be simulated to check and verify a circuit s functionality Also, automatic tools can optimally synthesize the logic described by an HDL model 2 HDLs (Verilog and VHDL) are approved as standards by IEEE and widely used.

Verilog

Verilog A module is the fundamental descriptive unit in Verilog Name and list of ports

Verilog Internal connections Primitive gate instantiations: Keyword name(output and inputs)

Delays in Verilog

Test Bench

Verilog Simulation Results

Boolean Expressions keyword assign symbols &,, and! for AND, OR, and NOT The previous example circuit could be defined with the statement assign D = (A && B) (!C);

Modeling with Expressions Description below specifies a circuit with the following two Boolean expressions E = A + BC + B D F = B C + BC D

User-defined Primitives and Truth Tables Users can create their own primitives (with keyword primitive) There can only be one output which is written first A truth table can be given between table and endtable

Instantiating User-Defined Primitives

HDL Models Logic of a module can be described in different ways Gate-level modeling Gates and how they are connected together Dataflow modeling Operators that act on binary operands and produce a binary result Behavioral modeling Circuits at a functional and algorithmic level (mostly used for sequential circuits)

Gate-Level Description of a 2-to-4-Line Decoder

Gate-Level Description of a 2-to-4-Line Decoder Defines a vector with 4 bits (0 to 3)

Bottom-up Hierarchical Description of a 4-bit Adder (1/2)

Bottom-up Hierarchical Description of a 4-bit Adder (2/2)

Dataflow Modeling Uses operators that act on binary operands to produce a binary result

Dataflow Model of 4-bit Adder

Behavioral Modeling Represent circuits at an algorithmic level Mostly used to describe sequential circuits Behavioral descriptions use keyword always

Behavioral Modeling Represent circuits at an algorithmic level Mostly used to describe sequential circuits Behavioral descriptions use keyword always Execute the below statements if one of the following values change Could only say if (select)

Writing Test Benchs initial begin D 3 b000; repeat (7) #10 D D 3 b001; end Repeat specifies a looping statement A stimulus module has the following form: module test_module_name; // Declare local reg and wire identifiers. // Instantiate the design module under test. // Specify a stopwatch, using $finish to terminate the simulation. // Generate stimulus, using initial and always statements. // Display the output response (text or graphics (or both)). endmodule

Writing Test Benchs System tasks are system functions that begin with the symbol $ Some of the system tasks that are useful for display are $display display a one-time value of variables or strings with an end-of-line return, $write same as $display, but without going to next line, $monitor display variables whenever a value changes during a simulation run, $time display the simulation time, $finish terminate the simulation.

Behavioral Modeling of Sequential Circuits Two possible ways to produce clock signal initial begin clock = 1'b0; repeat (30) #10 clock = ~clock; end initial begin clock = 1'b0; end initial 300 $ finish; always #10 clock = ~clock;

Behavioral Modeling of Sequential Circuits

Summary We only looked at a summary of HDLs There are many other capabilities State diagram-based models Structural description of sequential circuits Registers Counters The primary aim is to make circuit design and testing (simulating) easy and automatic synthesis possible