﻿1
00:00:01,360 --> 00:00:06,090
Welcome the lab to Rio in this lab we created a shift register.

2
00:00:06,190 --> 00:00:10,860
And so in this video I'm going to show you the complete solution on the basis to form.

3
00:00:10,960 --> 00:00:16,090
Now that one wasn't that hard was it a lot to do this is a little bit more difficult.

4
00:00:16,190 --> 00:00:20,320
And that didn't give you a complete solution and so you're going to have to come up with some of this

5
00:00:20,320 --> 00:00:20,970
on your own.

6
00:00:21,100 --> 00:00:25,330
However if you're if you are stuck Don't worry it isn't a safe situation.

7
00:00:25,330 --> 00:00:29,630
When I first started learning VHDL I had many many struggles.

8
00:00:29,770 --> 00:00:35,950
I don't you mean the same but as I was so feel Feel free to email me and let you know any problems you

9
00:00:35,950 --> 00:00:38,110
have I'm more than happy to help.

10
00:00:38,240 --> 00:00:44,860
Here is the lab to the shift register running on the bases to board from the U.S. a file I gave you.

11
00:00:44,890 --> 00:00:53,320
You've got your outputs A B C and D which are indicated by the rightmost Ltd's on the front of your

12
00:00:53,320 --> 00:01:01,030
board and then your data in is this first time switch right here and then your clock is this button

13
00:01:01,120 --> 00:01:02,080
right here.

14
00:01:02,440 --> 00:01:06,440
And the reset button on the far right over here.

15
00:01:06,520 --> 00:01:08,490
Now where is the shift register works.

16
00:01:08,570 --> 00:01:11,050
Is my data in pen.

17
00:01:11,170 --> 00:01:16,200
Any time I actually get a clock signal which is indicated by I'm pushing this button right here a piece

18
00:01:16,210 --> 00:01:18,670
of data is going to be represented on the shift register.

19
00:01:18,670 --> 00:01:21,820
So for example here right now my data is zero.

20
00:01:22,000 --> 00:01:27,280
So if I hit my clock you won't see anything on the shift register which is indicated on the ladies.

21
00:01:27,280 --> 00:01:33,730
Now if I give myself a data in one and I hit that button you'll see I've got the one on the list the

22
00:01:33,730 --> 00:01:38,520
lights up to indicate a bit of one in that shifted his position.

23
00:01:38,530 --> 00:01:41,010
Now I knew this fact and was zero and hit the clock.

24
00:01:41,050 --> 00:01:46,490
It's going to shift this bit to the right which you see there it shifts over there.

25
00:01:46,700 --> 00:01:50,140
And if I hit the clock again it'll shift once more.

26
00:01:50,140 --> 00:01:56,970
Now if I turn my data in bet given a logical high turn that on a clock and see I've got another bet

27
00:01:56,980 --> 00:02:00,620
that shows up on the shift register right there.

28
00:02:00,730 --> 00:02:06,370
And so I can just do this I can go through all toggle down turn them on if I can do.

29
00:02:06,640 --> 00:02:11,130
And this is how like when you see a circuit that does like a twinkling thing you'll see we're basically

30
00:02:11,140 --> 00:02:16,120
just doing this and real fast succession where you got every other bet.

31
00:02:16,140 --> 00:02:19,070
Lights it up type of deal.

32
00:02:19,120 --> 00:02:22,020
And then also over here you got the reset button.

33
00:02:22,030 --> 00:02:29,620
Now I know from the VHDL code you couldn't load on here the reset all it resets on clock cycles so if

34
00:02:29,620 --> 00:02:32,190
I hit the reset right now nothing's going to happen.

35
00:02:32,530 --> 00:02:38,850
But what I have to do is have to reset down the clock button and it resets the entire shift register.

36
00:02:39,130 --> 00:02:43,170
So for example I go through here fill the whole shift register up.

37
00:02:43,180 --> 00:02:45,340
Now if I hit the reset nothing happens.

38
00:02:45,550 --> 00:02:48,260
That's because it needs to happen on a clock edge.

39
00:02:48,280 --> 00:02:52,230
So if I hold the reset down and hit a clock then there you go.

40
00:02:52,230 --> 00:02:53,770
Clears the shift register.

41
00:02:53,770 --> 00:03:01,150
And the reason it put the clock on this button is because this board is running inherently at 50 megahertz

42
00:03:01,570 --> 00:03:06,650
and if 50 megahertz if I run out here you ask yourself of that switch all those oldies turn on just

43
00:03:06,700 --> 00:03:07,250
like that.

44
00:03:07,270 --> 00:03:10,460
You you can't you wouldn't be able to tell what was going on.

45
00:03:10,480 --> 00:03:16,120
So that's the reason the clock right here so you can actually physically see and what's actually going

46
00:03:16,120 --> 00:03:17,060
on inside of the board.

