Hardware Description Language (HDL) Introduction to HDL :

Share Embed Donate


Short Description

Download Hardware Description Language (HDL) Introduction to HDL :...

Description

Hardware Description Language (HDL) Introduction to HDL :



In electronics a HDL is a language from a class of  of  computer language for formal formal description description of electronic e ellectronic ectronic circuit.



It can describe circuit operation, its design and tests to verify its operation at any level



VHDL and VERILOG are popular HDL’s

Hardware Description Language (HDL) ►

The automatic translation of design description into a set set of  logic equation is performed by HDL



HDL are used to describe the architecture and behavior of  discrete electronic system



HDL are programming language that have been designed and optimized for digital circuit design and modeling. modeling.

Advantages of Hardware Description Language (HDL) HDL’s has several advantages over ov er traditional design methodology ,they are: ►

We can verify design functionality early in the design written as an HDL description.



Design simulation at this higher level before before implementation at gate level, allow you to test architecture and design decision.



Reduced non-recurring engineering costs.



Design reused is enabled.



Increase flexibility to design changes.



Better and easier design auditing and verification. vverification. erification.

Introduction to VHDL ►

Very High Speed Integrated Circuit (VHSIC) HDL H DL (VHDL) was HDL developed by US army in 1982.



VHDL is a programming language for describing the behavior of digital systems.



VHDL has many features appropriate for describing the behavior of electronic components ranging from simple logic gates to complete microprocessors and custom chips.



VHDL allows the behavior of complex electronics electronics circuits circuits to to be be captured into a design system for automatic circuit synthesis or for system simulation.



One of the most important applications of VHDL is to capture the performance specification for circuit.

Features of VHDL VHDL has powerful constructs. ► In VHDL, design may be decomposed hierarchically. ► Each design element has a well defined interface useful for connecting it to other elements. ► Each design element has a precise behavioral specification useful for simulating it. ► VHDL handles asynchronous as well as synchronous sequential circuits. ► In VHDL, timing and clocking can be modeled. ► In VHDL, design is target independent. ► VHDL supports design library. ►  The language is not case sensitive. ►

(May

Library

2007) ►

► ► ►





Library is basically a subdirectory in the host host environment for compiled entities, architectures, packages and configurations. When you write VHDL description, you write them into design file One or more design units make up a design file A design unit may be an entity declaration, an architecture body, a configuration declaration, a package declaration or a a package body declaration. A design library is an implementation dependent storage facility for previously analyzed design units. Library units fall into two categories: 1. primary unit a) entity declaration b) configuration declaration c) package declaration 2. Secondary Units a) Architecture body b) Package body

Library Clause A library clause defines logical names for design libraries libraries in in the host environment ► A set of utility packages can be put inside the library. ►  The present working directory is identified by the t he keyword ‘WORK ’ the ► A package name STANDARD containing some basic definitions is automatically automatica automaticallly ly included in every program. ► In many situations we need to to see multivalued logic to represent don’t care values and tristate buses. In such a cases, it is recommended that one should use a package called std_logic_1164 from the IEEE library. ► For using a library for a design unit, we need to type type the “library” and “use” statement before that design unit. ►  The keyword ALL causes all definitions in the t he std_logic_1164 the packages to be used ►  The syntax for library clause is ►

library LIBRARY_NAME; use LIBRARY_N LIBRARY_NAME.PACKAGE AME.PACKAGE LIBRARY_NA ME.PACKAGE NAME

Library Clause ►

 The syntax for library clause is

library LIBRARY_NAME; use LIBRARY_NAME.PACKAGE NAME

Example: library IEEE; use IEEE.STD_LOGIC_1164.ALL;

The work Library



work is the default name of the current library.

► The

work library is where, in a simulation system, all of your design units( entities, architectures, packages and configuration) will be placed after they are analyzed, unless you have specified an alternative library.



Unlike simulation environments, the VHDL synthesizer only considers design units that are a re currently being compiled to be in the work library.

USE Clause  The use clause makes visible item specified as suffixes in selected names listed in the clause. ► If a designer wants to have h ave ha ve all declarations in a package visible, then the item clause should be substituted by the reserved word all. ►  The syntax of use clause is: ►

use library_name.package_name.item; use library_name.package_name; use library_name.package_name.all;

USE Clause ►

Example 1.

library IEEE; use IEEE.STD_LOGIC_1164.ALL; ►

Example 2.

library IEEE; use IEEE.STD_LOGIC_1164.STD_ULOGIC; use IEEE.STD_LOGIC_1164.RISING_EDGE;

In the first example all the declarations specified in st_logic_1164(which st_logic_1164 (which belongs to the library IEEE) have been made visible. ►  The second tthe he RISING_EDGE second example example makes makes visible visible the RISING_EDGE function which is declare in same package. The function function uses uses the type STD_ULOGIC, therefore therefore declaration declaration of this type is is also made visible ►

Packages A package is a collection of declarations that more than th an one than one design can use. ►  You can collect constant, data types, component declarations, and subprograms into a VHDL package that can then be used by more than one design or entity. ►

Package structure: Packages have two parts, the declaration and the body. ►



Package Declaration: Holds public information, including constant, type and subprogram declarations. Package body : holds private information, including local types and subprogram implementations.

Package declarations: Package declaration defines the interface to a package. ► Package declarations collect information that is needed by one or more entities in a design. ►  This information includes data type declaration, signal declarations, subprogram declarations and components declarations. ► Signal declared in packages cannot be shared across entities. ►  The syntax of package declaration is: ►

package package_name is { use clause ( to include other package) type declaration subtype declaration constant declaration signal declaration subprogram declaration component declaration } end [package_name]

Package body: A package body is the bodies of subprograms and and the the values values of constant declared in the package. ► A package body includes, implementation of subprograms declared in the package declaration and internal support su pport support programs ►  The syntax of package body is ►

package body package_name is { use clause subprogram declaration subtype declaration type declaration constant declaration} end [package_name]

Structure of VHDL program: ►

Every VHDL program consists of at least one entity/architecture pair



Combination of an entity and its corresponding architecture is referred as a design entity.



In large design, you will typically write many entities/architecture pairs and connect them together to form a complete circuit.



An entity declaration describes the circuit as it appears from the “outside”- from the perspective of its input and output interfaces



 The second part of the minimal VHDL design description is the architecture declaration



 The architecture describes the actual function of the entity to which it bound

View more...

Comments

Copyright ©2017 KUPDF Inc.
SUPPORT KUPDF