Verilog Course Syllabus
Studying Logic Design (with
VERILOG), towards effective synthesis.
· Understand the structure of a VERILOG
program.
· Implement a state machine and its
associated test programs.
· Be-aware of hazards and risks by the
migration of from High Level Design and synthesis.
·
At
least one year of experience in high level language programming.
·
Knowledge
of digital design.
The course is composed of:
· The theory.
· Workshops in which the process of
analyzing given designs and understanding their semantics, is performed.
· Practical exercising using Verilog tools.
This document describes:
· The lectures, workshops and the
exercises to be given course.
· Hours allocation.
·
Course
objectives.
·
Motivation
for using Verilog.
·
Verilog environment.
·
Behavioral
model.
·
Structural
model.
·
Declaration
of
·
Logical
interface definition.
·
Timing
definition and checking.
·
Module
Implementation
Presenting of
·
One
bit full adder.
·
RS
Flip-Flop (including timing checks).
·
Writing
the
·
Writing
the
·
Structural
Design
1. Explicit structural design.
1.1
1.2 Primitive Terminal connections.
2. Implicit structural design.
3. Combinational logic implemented by Implicit and
Explicit structural design.
·
Behavioral
Design
·
RTL
Data-Flow Description.
·
Algorithm-Based
description
Presenting Structural models of:
·
One
bit full adder.
·
RS
Flip-Flop (including timing checks).
Give an Explicit Structural design.
·
What
is the function behind the Verilog description?
·
Write
the Implicit structural design.
·
Write
the RTL Dataflow Description.
·
Sketch
a test program for this description.
1. Signals.
1.1 Model of signal assignment statements:
·
Transport
delay – Net delay.
·
Inertial
delay –Gate propagation Delay.
1.2 Transaction of signals.
2. Variables.
2.1 Nets (wires): One directional, Bi-Directional.
2.2 Registers.
3. Synthesis semantics of Variables.
·
Transport
and Inertial delay.
·
Order
of signal assignment.
·
Simulation
and Synthesis semantics of registers wires and signals.
Write a test program for the RS flip-flop.
·
Write
the behavioral description of the same program.
·
Write
a test program for it.
·
Run
the two architectures concurrently.
·
Overview
of Sequential and Parallel statements.
·
Sequential
Statements:
·
Assignment
statements
·
Conditional
statements: ?,
IF…ELSE, CASE.
·
·
DISABLE.
·
Synthesis
semantics of conditional and While/Loop statements.
·
Parallel
statements: FORK, JOIN.
·
Race
in FORK, JOIN statements.
·
Task.
·
Functions.
1.
Timing
Checks
·
Setup
and Hold.
·
Signal
Period.
·
Minimum
Pulse Width.
2.
Given
several high level architectures which perform one of the following
functions. Only two give the same
results after being synthesized. Analyze these architectures and their
performance (timing versus space).
Resolve a bit.
·
Serial
operation.
·
Parallel
operation.
·
Finding
the minimum of two numbers.
·
Pipeline
operation of finding the minimum of two numbers.
Write
a test program which runs concurrently high-level and low-level architectures.
Write
and run a test program for Resolving a bit.
Compare high level simulation results.
Combinational networks.
·
Explicit
FSM.
·
Implicit
FSM
·
Melay machine.
·
·
FSM
coding styles.
·
Write
the sorter machine as a state machine.
·
Synthesize
it.
·
Write
and run a test program for the high and low level architectures.
·
Write
a multiplier.
·
Synthesis
it.
·
Write
and run a test program for the high and low level architectures.
|
Course Subjects |
Lecture |
Workshop |
Exercising in class |
Total Hours |
|
Introduction
to Verilog |
2 |
|
|
2 |
|
Hardware
Modeling with Verilog |
2 |
2 |
2 |
6 |
|
Structural
and Behavioral Design |
3 |
3 |
0 |
6 |
|
Objects
in Verilog |
2 |
6 |
0 |
8 |
|
Behavioral
description |
2 |
5 |
2 |
9 |
|
Various
machine representations in Verilog |
2 |
5 |
4 |
11 |
|
Total |
13 |
21 |
8 |
42 |
[Chang97] K.C. Chang, Digital Design and
Modeling with VERILOG and Synthesis,
IEE
Computer Society Press, ISBN 0-816-7716-3.
[Navami] Zainalabedin Navami VERILOG Analysis and modeling of Digital Systems.
McGraw-Hill series in electrical and computer
engineering, ISBN 0-07-046472-3.
[DoPer90] Douglas L. Perry, VERILOG second edition. McGraw-Hill
series on
Computer Engineering, ISBN 0-07-049434-7,
McGraw-Hill, 1990.
[LRM88] IEEE Standard VERILOG Language Reference Manual- std 1076-1987.
[Ams88] James. R Amstrong.
Chip level Modeling with VERILOG.
Cliffs, NJ: Prentice Hall, 1988.
[Coh89] David Cohelho. A First course in VERILOG.
1989.
[LipSc89] Roger Lipsett, Carl Schaefer,
Description and Design.
[Carison91] Steve Carison, Introduction to HDL-Based DESIGN Using VERILOG.
Synopsys
Inc, 1991.