﻿1
00:00:12,950 --> 00:00:18,670
Walk over to the VHDL did type introduction and this lecture I'm going to introduce the different datatypes

2
00:00:18,700 --> 00:00:21,970
associated with the HGL.

3
00:00:22,270 --> 00:00:30,910
First we have data classes which are used to describe the data types based on data class will limit

4
00:00:30,910 --> 00:00:35,390
you or allow you to do certain things with that specific data type.

5
00:00:35,410 --> 00:00:41,950
So the day classes are we have constants signals variables and files.

6
00:00:41,950 --> 00:00:47,650
So with constants at a high level they are a value that can never change.

7
00:00:47,710 --> 00:00:54,700
A signal is a value that is constantly changing inside of your design and a variable is something we

8
00:00:54,700 --> 00:01:01,930
use to help you construct your designs and files our views and test benches to help you simulate and

9
00:01:01,930 --> 00:01:04,160
verify your design is working properly.

10
00:01:05,450 --> 00:01:10,630
The data types we have here are a number of data types we'll be using in the HDL.

11
00:01:10,640 --> 00:01:19,580
We have a standard logic standard logic vector and unsigned signed integer and a boolean data type.

12
00:01:19,940 --> 00:01:23,800
Each data type is associate with that data class except for files.

13
00:01:23,990 --> 00:01:26,140
Those we're using for simulations only.

14
00:01:26,270 --> 00:01:31,240
So for example we had the constants and the signals.

15
00:01:31,370 --> 00:01:36,530
So I could have a constant That's a standard logic and I could have a signal that the standard logic.

16
00:01:36,590 --> 00:01:42,170
And based upon the different types if it's a constant state in logic it can never change or it's a signal

17
00:01:42,170 --> 00:01:43,040
standard logic.

18
00:01:43,040 --> 00:01:44,720
Now that value can change.

19
00:01:44,720 --> 00:01:51,200
So based upon the data types and the data class that you're using it will dictate what you can and can

20
00:01:51,230 --> 00:01:57,050
do with that specific signal or constant or whatever you are you're working with the kind of help you

21
00:01:57,050 --> 00:01:58,380
create your designs.

22
00:01:59,660 --> 00:02:02,840
So why do we use data types inside of an FPGA.

23
00:02:02,840 --> 00:02:04,780
Everything is a one or zero.

24
00:02:04,820 --> 00:02:06,410
Just like a computer.

25
00:02:06,830 --> 00:02:12,020
Well the reason wreathing data types is this allows us to group these ones and zeros in a way that's

26
00:02:12,020 --> 00:02:14,050
easy for us to understand.

27
00:02:14,210 --> 00:02:19,340
If we see a group of one and zeros inherently to the human eye it just doesn't really make a lot of

28
00:02:19,340 --> 00:02:19,760
sense.

29
00:02:19,760 --> 00:02:22,110
It's hard to understand what's going on.

30
00:02:22,130 --> 00:02:29,930
But if we can see a number like say ninety nine 100 101 102 to us it's easy to tell it OK.

31
00:02:29,950 --> 00:02:31,440
That number is counting.

32
00:02:31,460 --> 00:02:33,110
And so that's the reason we use data types.

33
00:02:33,110 --> 00:02:39,110
It helps us group these ones and zeroes so we can make our design happen in a way that's understandable

34
00:02:39,110 --> 00:02:46,910
to us humans that the computer or your FPGA can then interpret and execute these commands enough talking

35
00:02:46,910 --> 00:02:47,780
about the data types.

36
00:02:47,780 --> 00:02:49,520
Let's actually learn the specifics.

