VHDL design units are the building blocks of a VHDL program, consisting of five types: entity declaration (defines the external interface with inputs and outputs), architecture body (describes the internal logic and circuit implementation), configuration declaration (selects which architecture to use for an entity), package declaration (declares reusable items like types, constants, and functions), and package body (defines the actual implementation of package items). These units can be compiled independently and stored in libraries for reuse across multiple designs.
Deep Dive
Prerequisite Knowledge
- No data available.
Where to go next
- No data available.
Deep Dive
VHDL Design UnitsAdded:
Hello everyone, welcome to Neso Academy.
Till now we have completed the major parts of a VHDL code. That is library, entity, and architecture.
But, in real designs, there are some additional components that we use whenever required.
So, entity, architecture, and these additional components are the building blocks of a VHDL code.
And they are called as design units.
So, today's lecture is all about design units.
In this lecture, we will cover only one topic, which is design units. And in this topic, we will see what are design units and their types. So, let's start the lecture without any further delay.
Now, design units are the building blocks of a VHDL program.
So, in VHDL program, a digital system is organized into distinct building blocks.
In simple terms, a VHDL code can be broken down into smaller, manageable components known as design units.
And these units can be compiled independently and stored in a library.
Means, these design units can be saved separately and stored in a library.
So, in VHDL, we can write an independent block of code that can be saved inside a library.
For example, we can write a VHDL code for a package declaration and package body.
Then, we can compile them together and stored inside a library.
Now, let's see different types of building blocks, means different types of design units.
There are five types of design units.
Entity declaration, architecture body, configuration declaration, package declaration, and package body.
So, let's see them one by one.
The very first is entity declaration.
Now, we have already covered entity and architecture in detail. And we know what is entity.
Entity tells what the system is. So, overall, entity defines inputs and output ports that describes the interface.
Means entity tells the external view of the system.
Consider entity as a black box, which describes inputs and outputs of a system, where no logic is defined. Means entity doesn't define any internal logic.
So, where we write these internal logics or the internal circuit?
Inside the architecture. So, architecture describes how the design works internally.
If entity is a black box, then architecture tells what's inside that black box.
Means architecture tells the internal structure of a system.
Architecture contains the actual logic.
Means architecture contains the real circuit or real logic definition.
We have already seen an example of AND gate. So, in entity, we describe the inputs and outputs of AND gate. Example, we will define A {comma} B as input signals and Y as output signal.
And inside the architecture, we will write the real logic circuit or the real logic definition of AND gate.
So, overall, entity tells what the system is and architecture tells how the system is created.
Now, let's see the third design unit, which is configuration declaration.
So, configuration declaration selects which architecture to use for an entity.
In the previous lectures, we have seen that one entity can have multiple architectures. So, configuration is used to select which architecture will be used for an entity.
Overall, configuration connects an entity with its architecture.
Now, one entity can have multiple architectures and each architecture describes the system in different ways.
And configuration is used to select one of these different ways.
So, overall, if an entity has multiple architectures, configuration is used to select one of the architecture.
So, I hope you understand configuration declaration. Now, let's see the fourth design unit, which is package declaration.
Package declaration declares reusable items like types, constants, functions, etc. Now, package declaration is used to store common or reusable items that can be used in multiple designs. Means, package declaration is used to store reusable items like data types, constants, functions, procedures, etc. And why do we need this package declaration?
To avoid rewriting of the code again and again.
To make the designs reusable.
So overall, package declaration specifies what is available to use. Now this is very important point.
Package declaration only declare what is available to reuse and not the actual logic of the items.
Now where we define the actual logic?
Inside package body.
So package body defines the actual implementation of functions, procedures, etc. Now what is function and procedure?
Function is a reusable block of code that take one or more input parameters, performs a calculation, and return one actual value.
While procedure is a reusable block of code that perform multiple operations such as updating signals or variables and can give multiple outputs.
So package body defines the actual implementation of the items declared inside the package.
Next point.
Package body works together with the package declaration.
Now package declaration alone is not enough. We need a proper actual logic.
So package body works together with the package declaration.
Overall, package declaration tells what is available to use and package body tells how it actually works.
But remember, packages are mainly used for reusability and not for defining hardware directly.
In simple words, to understand this, package declaration is similar to entity where both defines what is available to use and package body is similar to architecture where both defines how the system actually works.
So, I hope you understand the different types of design units properly.
Which means we are done with this topic, design units.
So, a VHDL design is made up of multiple design units, each having a specific role and together they describe the hardware.
In upcoming lectures, we will see the syntax of each of these design units in details, which means we are done with this lecture. I will see you in the next one. Thank you.
>> [music]
Related Videos
Agentforce NOW AMA: Build with React and Salesforce Multi-Framework
SalesforceDevs
490 views•2026-05-28
How agent o11y differs from traditional o11y — Phil Hetzel, Braintrust
aiDotEngineer
450 views•2026-05-28
Re: 🗣️📍theprophedu📍2026 GST 103 CLASS (E-EXAM REVISION)
theprophedu
636 views•2026-06-04
WEB TECHNOLOGIES UNIT-2 | Degree 4th sem BCOM Computers web technologies unit-2 full explanation💯✅
LearnwithSahera
1K views•2026-05-29
More tests are always better? How to use AI to identify tests that bring little value
Alliance4Qualification
335 views•2026-05-29
Search Algorithms Explained in 60 Seconds! 🤖💨
samarthtuliofficial
218 views•2026-06-01
People of Game of Thrones using JavaScript DOM
AltCampus
296 views•2026-05-30
Introduction to Problem Solving Part - 1 | Lecture 1 | Intermediate DSA
ascensionix
107 views•2026-05-29











