0% found this document useful (0 votes)
57 views

Verilog HDL: BY Kavya A P Asst Professor Dept. of ECE VVCE, Mysuru

This document provides an overview and syllabus for a course on Verilog HDL. It discusses the evolution of digital design and hardware description languages. The key topics covered include the history of integrated circuits, the emergence of HDLs like Verilog and VHDL, design methodologies, modules and instances in Verilog, and components of simulation like stimulus blocks. The document also lists course outcomes related to understanding Verilog syntax and modeling digital systems at different levels of abstraction.

Uploaded by

xyz
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
57 views

Verilog HDL: BY Kavya A P Asst Professor Dept. of ECE VVCE, Mysuru

This document provides an overview and syllabus for a course on Verilog HDL. It discusses the evolution of digital design and hardware description languages. The key topics covered include the history of integrated circuits, the emergence of HDLs like Verilog and VHDL, design methodologies, modules and instances in Verilog, and components of simulation like stimulus blocks. The document also lists course outcomes related to understanding Verilog syntax and modeling digital systems at different levels of abstraction.

Uploaded by

xyz
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 35

Verilog HDL

17EC53

BY
KAVYA A P
Asst Professor
Dept. of ECE
VVCE, Mysuru
Syllabus
Syllabus
Course Outcomes

 Understand the overview of HDL and its modeling


concepts.
 Explain syntax, lexical conventions, data types,
modules and ports of Verilog HDL.
 Design the model of digital system using gate level
and dataflow description.
 Design and verify the digital system using behavioral
description.
 Describe the basic concepts such as design synthesis,
entities, architectures and data types in VHDL.
MODULE 1
Evolution of Computer-Aided Digital
Design

 Digital Circuit design has evolved rapidly.


 Initially Vacuum tubes were used.
 Transistors were invented.
 IC’s were invented.
Evolution of Computer-Aided Digital
Design
Scale of integration
 Small scale integration (SSI)
 Medium scale integration (MSI)
 Large scale integration (LSI)
 Very large scale integration (VLSI)
 Ultra large scale integration (ULSI)
 Giant scale Integration (GSI)
Evolution of Computer-Aided Digital
Design
 Circuits tested on breadboard and layout on paper.

 Process should be automated.

 Electronic Design Automation(EDA) techniques required.

 automatic placement and routing and simulation.

 Hardware description language


 Used to describe structure and behaviour of digital electronic
circuits
 Two types
 VHDL (VHSIC HDL)
 VHSIC Very High Speed Integrated Circuits
 Verilog
Emergence of HDLs
 Computer programs – Fortan, Pascal, C, C++, C#, python
etc
 To describe digital circuits standard language is required
 Hardware Description Languages came into existence.
 Verilog HDL
 VHDL
 Initially only verification. Manually translate into schematic.
 Digital circuits could be described at RTL level.
 Later logical synthesis came into picture.
 Verilog HDL – IEEE standard (IEEE 1364 -2001)
Typical Design Flow
Importance of HDLs
Advantages
1. Designs can be described at a very abstract level.
 RTL description can be written without choosing a
specification fabrication technology.

 Logic synthesis tools can automatically convert the design to


any fabrication technology.

 If new technology emerges. No need to redesign the circuit.


Put RTL description to logic synthesis tool.
 New gate level netlist can be generated.

 Optimize area and timing using logic synthesis tools


Importance of HDLs

Advantages
2. Functional verification can be easily done.

 Modify RTL until it meets the desired functionality.


functional verification ca be done early.

 Bugs can be eliminated. Cuts down design cycle time


significantly

3. Analogous to computer programming, textual descriptions


and comments can be used.
Popularity of Verilog HDL (why
Verilog HDL?)

 Easy to learn and easy to use.

 Similar in syntax to C programming.

 Allows different levels of abstraction to be mixed in same model.

 Most popular logic synthesis tools support Verilog HDL

 All fabrication vendors provide Verilog HDL libraries.

 Programming Language Interface (PLI) is a powerful feature


that allows the user to write custom code to interact with the
internal data structures of Verilog.
Hierarchical Modeling Concepts

Design Methodologies

 Top down design


 Bottom up design
Design Methodologies

Top Down Design Methodology

 Define the top level block and identify the sub- blocks
necessary to build the top-level block.

 Further subdivide the sub-blocks until come to leaf cells.

 Leaf cells are the cells which are the cells that cannot
further be divided.
Top Down Design Methodology
Top-level
block

Sub-block1 Sub-block2 Sub-block3 Sub-block4

Leaf Leaf Leaf Leaf Leaf Leaf Leaf Leaf


Cell Cell Cell Cell Cell Cell Cell Cell
Design Methodologies

Bottom-Up design methodology

 Identify the building blocks that are available to us.

 Build bigger cells, using these building blocks.

 These cells are then used for higher-level blocks until we


build the top-level block in the design.
Bottom-Up design methodology
Top-level
block

Sub-block1 Sub-block2 Sub-block3 Sub-block4

Leaf Leaf Leaf Leaf Leaf Leaf Leaf Leaf


Cell Cell Cell Cell Cell Cell Cell Cell
Modules
 Basic building block

 It hides the internal implementation.

 Provides functionality to higher level block through its port


interface(inputs and outputs)

 Can modify module internal without affecting the rest of


the design.

 Keywords
 module
 endmodule
Module- example
Module

 Should have module_name – identifier for the


module.

 Module_terminal_list – describes the input and


output terminals of the module.

 Internals of each module can be defined at four


levels of abstraction depending on the need of the
design.
Module

 Levels of abstraction
 Behavioral or algorithmic level
 similar to C programming
 Implement according to desired design algorithm without concern
for hardware implementation.
 Dataflow level
 How data flows between hardware registers and how it is
processed.
 Gate level
 Implemented in terms of logic gates and interconnections between
these gates.
 Switch level
 Implemented in terms of switches, storage nodes and
interconnection between them.
Instances

 When module is invoked – unique object is created from


the template.

 Each object has - name, variables, parameters and I/O


Interface.

 Process of creating objects from module template –


instantiation.

 Objects called as instances.


Example
Illegal Module Nesting
Components of Simulation
 Once a design block is completed it must be tested –
simulating and checking results.

 Such block – stimulus block.(test bench)

 Good practice to keep stimulus and design block separate.

 Stimulus block also written in Verilog.

 Two styles of stimulus application are possible


 Stimulus block instantiates the design block.
 Instantiate both the stimulus and design blocks in a top level
dummy module.
Stimulus block instantiates the
design block.
Instantiate both the stimulus and
design blocks in a top level dummy
module.
Example -4 Bit Ripple Carry Counter
Design Block
Design Block
Stimulus Block
Stimulus and output waveforms
Stimulus block
Stimulus block
Stimulus block

You might also like