HDL Introduction
HDL Introduction
INTRODUCTION
Course: Embedded systems (CS60087)
Prepared By: Vidya Govindan (TA)
2016 CS60087
Building Digital Systems
Problem statement
Behavioral
Description
Boolean Logic and
State
Hardware
Implementation
2016 CS60087
Building Digital Systems with HDLs
Problem statement
Behavioral
Description
HDL Description
Hardware
Implementation
2016 CS60087
Motivation for HDLs
A specification is an engineering contract that lists all the goals for a project:
Goals include area, power, throughput latency, functionality, test coverage, costs(NREs costs) etc.
Helps you figure out when youre done and how to make engineering tradeoffs. Later on goals
help remind everyone (especially management) what was agreed to at the outset!
Top down design: partition the project into modules with well defined interfaces so that each
module can be worked on by a separate team.
for eg. well defined ISA
A behavioral model serves as an executable functional specification that documents the exact behavior
of all the individual modules and their interfaces. Since one can run tests , this model can be refined
and finally verified through simulation.
We need a way to talk about what hardware should do without actually designing the hardware itself,
i.e., we need to separate behavior from implementation. We need a
2016 CS60087
Advantages of using HDLs
Designs can be described at various levels of abstractions
Addresses the current digital system complexity and makes design of larger systems easier.
Describe what you need the hardware to do, tools then design the hardware for you.
Functional Simulation Early in the Design Flow
Allow modeling and simulating the functional behavior and timing of digital hardware.
Simplified & faster design process.
Automatic Conversion of HDL Code to Gates
Synthesis tools take an HDL description and generate a technology-specific netlist.
Lessen the time spent debugging the design
Design errors still possible, but in fewer places generally easier to find and fix.
Early Testing of Various Design Implementations
Due to fast synthesis, there is a scope for trying different implementations.
Design Reuse
Dont manually change all transistors for rule change.
Technology independence, standardization, portability, ease of maintenance.
2016 CS60087
A Tale of Two HDLs
VHDL Verilog
Initially created for ASIC synthesis Initially an interpreted language for gate-level
simulation.
ADA-like verbose syntax, strongly and richly C-like concise syntax, weakly and limited typed
typed language language.
Strong support for package management No special extensions for large designs.
and large designs.
Design is composed of entities each of Design is composed of modules.
which can have multiple architectures. A
configuration chooses what architecture is
used for a given instance of an entity.
Behavioral, structural, logic-level modeling Behavioral, structural, logic-level modeling
Synthesizable subsets Synthesizable subsets
Harder to learn and use, lacks language Easy to learn and use, fast simulation.
defined simulation commands.
2016 CS60087
Synthesis of HDLs
So, we have an executable functional specification that
documents exact behavior of all the modules and their interfaces
can be tested & refined until it does what we want.
An HDL description is the first step in a mostly automated process to build an
implementation directly from the behavioral model.
2016 CS60087
HDL Implementation Cycle
2016 CS60087
References
Slide source
Comparision of HDLs
2016 CS60087