VHDL Programming
VHDL Programming
Fifth Semester
TOPIC ANALYSIS
Hours
SL.No Major Topics
Allotted
UNIT-I
1 Introduction to HDL 05
2 Basic Language Elements 06
3 Behavioral Modeling 08
UNIT-II
3 Dataflow Modeling 06
4 Structural Modeling 10
5 Switch-Level Modeling 07
UNIT-III
6 Procedures and Functions 08
7 Mixed-Type Modeling 07
8 Introduction to VERILOG HDL 03
Tests and revision 04
Total 64
1. INTRODUCTION TO HDL
What is HDL, VHDL, Basic terminology-entity declaration, Architecture Body,
Configuration declaration, package declaration, package body. Styles of Modeling
(Descriptions), Simulation
3. BEHAVIORAL MODELING
Structure- Entity Declaration, Architecture Body . Variable assignment statement, sequential
statements-if, signal & variable assignment, case, loop, exit, Next, assertion, report
statements. Exercises
4. DATA-FLOW MODELING
Structure, signal declaration and assignment, concurrent signal assignment, constant
declaration and assignment, assigning a delay time to signal assignment statement,
conditional signal assignment statement, selected signal assignment statement. Data type-
vectors. Exercises
5. STRUCTURAL MODELING
Organisation of the structural description (Text-2), component declaration, Component
Instantiation (text-1)binding, generic statement Exercises (text-2)
6. SWITCH-LEVEL MODELING
Definitions , Switch level description of primitive gates- inverter, two-Input AND, OR,
NAND, NOR gates. Switch level description of simple Combinational logic & sequential
circuits.
8. MIXED-TYPE MODELING
Learn how to use different types of descriptions to write HDL modules, user defined types,
VHDL Packages, implementation of arrays with examples.
1. INTRODUCTION TO HDL
1.1 Introduction to HDL, Structure of HDL Module ,
1.2 Describe the Primary constructs or design units of VHDL- Entity declaration,
Architecture body, Configuration declaration, Package declaration, Package body
1.3 Study different Styles of Modeling (Descriptions)- Behavioral, Structure, Switch-Level,
Data-Flow, Mixed-Type, Mixed-Language
1.4 To know the process of Simulation.
( refer text 1 & 2)
2. BASIC LANGUAGE ELEMENTS
2.1 To study Identifiers and its types
2.2 To know Data objects- declarations- constant, variable, signal, file and other ways to
declare objects.
2.3 To learn different Data types
2.3.1 Scalar types- Bit, Boolean, Integer, Real, character, Physical, User defined,
severity
type
2.3.2 Composite types- Bit-vector, Array, Record
2.3.3 Access Types
2.3.4 File Types
2.3.5 Other Types- Std_Logic, Std_logic_vector, Signed, Unsigned
( refer text 1)
3. BEHAVIORAL MODELING
3.1 To know the Structure of HDL Behavioral Description
3.1.1 Entity Declaration
3.1.2 Architecture Body
a. Identify the basic statements and components of behavioral Description
i. Variable assignment statement
ii. sequential statements- if, else-if, if-else statements , signal & variable
assignment Statement, Case, Loop, exit, next, Assertion, Report
Statements.
b. Simple example programs on above statements
( refer texts 1 & 2)
4. DATA-FLOW MODELING
4.1 To know the Structure of Data-Flow Description (refer text 2)
4.2 Identify the basic statements and components - signal declaration and assignment,
concurrent signal assignment, Concurrent verses Sequential Signal Assignment, constant
declaration and assignment, assigning a delay time to signal assignment statement ,
conditional signal assignment, selected signal assignment . (refer text 1 & 2)
4.3 Data type-vectors ( refer text 2)
4.4 Understand the fundamentals of some digital logic systems- half adder, 2x1 multiplexer,
2-bit comparator, D-latch, ripple carry adder and carry look ahead adder (refer text 2)
5. STRUCTURAL MODELING
5.1 To study the Organization of the structural description (refer text2)
5.2 To understand Component Declaration and Component Instantiation ( refer text 1)
5.3 To understand Binding- Binding between Entity and Architecture, Binding between
Library and Module, Binding between a Library and Component ( refer text 2)
5.4 Understand the fundamentals of digital logic design for digital systems – adders,
multiplexers, decoders, comparators, encoders, latches, flip-flops, and S-RAM memory
cell. ( refer text 2)
5.5 To know what is generic statement and its declaration
6. SWITCH-LEVEL MODELING
6.1 To implement Switch level description of primitive gates
6.1.1 Inverter
6.1.2 Two-Input AND, OR, NAND, NOR gates.
6.2 Switch level description of simple Combinational logic – Y= Not (abc +de), XNOR gate,
2x1 multiplexer
6.3 Switch level description of simple sequential circuit- SR-latch
(refer Text 2)
8. MIXED-TYPE DESCRIPTIONS
8.1 Why Mixed-Type Description?
8.2 To Know VHDL user defined types
8.3 VHDL Packages
8.4 Implementation of arrays
8.4.1 Single-Dimensional Arrays- Finding the Greatest Element of an Array,
8.4.2 Two-Dimensional Arrays- Addition of Two Matrices
8.5 HDL Description of an ALU, 16x8 SRAM
(refer Text 2)
Text Books:
2. Design through Verilog HDL –T R Padmanabhan & B Bala Tripura Sundari, Wiley
India Pvt. Ltd.
3. VHDL Programming by Example, 4th Edition - Douglas L. Perry , Tata McGraw-Hill
4. IEEE Standard VHDL Language reference Manual - IEEE Std 1076, 2000 Edition-
( E-book)
VHDL Programming
(2) Answer any two full questions from each of the remaining sections
SECTION –I
(i) The signal assignment operator <= is implemented to assign a value to a signal in
--------------
(ii) --------------- can have more than one input but only one output
(iii) Access data types in VHDL are similar to ------------ to objects of other types
(iv)The Std_Logic type has ---------values
(v) If two or more subprograms have same name, then the subprogram name is said to be
------
(b) Give the brief comparison between VHDL and Verilog. 5
SECTION-II
(b) Explain the Structural style & Behavioral Styles of Modeling’s in VHDL 10
SECTION-III
SECTION-IV
10(a) If A & B are two unsigned variables, with A= 1100 and B= 1001, find the value of
(b) For the following HDL code, determine the type of description 3
Architecture Q1 of exercise is
begin
process (a,b)
begin
A<= B;
Y<= B AND C;
end process;
end Q1
(c) Write a VHDL program to calculate the factorial of positive number using while loop
6
***********************