0
1
00:00:01,960 --> 00:00:08,370
As the HLS design flow is a new topic, its learning requires a step-by-step approach with several examples. 
1

2
00:00:08,830 --> 00:00:11,420
The structure of this course is based on this assumption.
2

3
00:00:12,090 --> 00:00:18,190
This course is the first step towards using HLS to design logic circuits and computing algorithms 
3

4
00:00:18,370 --> 00:00:20,310
for FPGA-based platforms. 
4

5
00:00:21,230 --> 00:00:26,650
In this course, I will take the HLS approach to explain the fundamental concepts in digital design.
5

6
00:00:28,070 --> 00:00:33,620
I assume that you are not familiar with FPGA. However, it would be a bonus if you know FPGA 
6

7
00:00:33,740 --> 00:00:35,060
and the HDL design flow. 
7

8
00:00:36,580 --> 00:00:42,640
This course looks at FPGA from a high-level perspective without going into the low-level hardware details. 
8

9
00:00:43,270 --> 00:00:50,170
This course would give you the foundation of using HLS for digital design in Xilinx-based FPGAs to enhance 
9

10
00:00:50,170 --> 00:00:53,790
your productivity compared to the traditional HDL design flow. 
10

11
00:00:55,790 --> 00:00:58,170
You don’t need to have prior knowledge about FPGA. 
11

12
00:00:58,400 --> 00:01:04,100
Moreover, the course is designed such that you also don’t need to read other books or documents to 
12

13
00:01:04,100 --> 00:01:04,370
use 
13

14
00:01:04,390 --> 00:01:04,880
HLS
14

15
00:01:06,470 --> 00:01:12,200
However, referring to Xilinx documents, especially “Vivado Design Suite User Guide: High-Level 
15

16
00:01:12,200 --> 00:01:15,230
Synthesis-UG902” is recommended.
16

17
00:01:16,660 --> 00:01:21,670
For more examples and discussions about the HLS-based design approaches, you can refer to the 
17

18
00:01:21,670 --> 00:01:25,960
highlevel-synthesis.com web-log-site or the course Github site. 
18

19
00:01:28,800 --> 00:01:34,350
If you have any questions or issues regarding the concepts and codes presented in this course please 
19

20
00:01:34,350 --> 00:01:36,150
refer to the Q&A section.
20

21
00:01:37,180 --> 00:01:44,620
In this course, you’ll learn, What FPGA is,  How to use HLS design flow to implement different types 
21

22
00:01:44,620 --> 00:01:48,910
of combinational logic circuits, and how to work with state-of-the-art
22

23
00:01:48,910 --> 00:01:52,180
HLS software tools to implement algorithms on hardware.
23

24
00:01:53,320 --> 00:01:55,670
This is a practical course. Throughout the course, 
24

25
00:01:55,720 --> 00:02:01,690
I will explain the concepts of FPGA structure, software tools, HLS techniques, and coding styles 
25

26
00:02:01,810 --> 00:02:03,410
to implement several examples.
26

27
00:02:04,360 --> 00:02:06,340
This course comprises of four parts. 
27

28
00:02:06,580 --> 00:02:08,830
The first part is called prologue
28

29
00:02:09,100 --> 00:02:13,300
that introduces the course and its structure throughout two lectures. 
29

30
00:02:13,930 --> 00:02:16,000
The current video is the second lecture.
30

31
00:02:18,490 --> 00:02:23,530
The second part is called “introduction and setup” which gives a big picture of the FPGA technology and 
31

32
00:02:23,530 --> 00:02:30,310
its design flow and how to install related software tools and set up the target FPGA board. It consists 
32

33
00:02:30,310 --> 00:02:34,810
of two sections and 15 lectures, from lecture 3 to 17. 
33

34
00:02:36,050 --> 00:02:41,630
If you are already familiar with Xilinx FPGAs and the Xilinx Vivado and Vivado-HLS toolsets, then 
34

35
00:02:41,780 --> 00:02:42,890
you can skip this part. 
35

36
00:02:43,830 --> 00:02:50,580
The third part explains how to develop combinational circuits using C/C++ language in HLS. This part 
36

37
00:02:50,580 --> 00:02:53,400
consists of 9 sections and 88 lectures.
37

38
00:02:54,160 --> 00:02:59,880
Finally, the last part puts all explained techniques together to implement two exciting projects. 
38

39
00:03:00,820 --> 00:03:03,430
. It consists of two sections and six lectures.
39

40
00:03:04,410 --> 00:03:06,940
The first project implements a Home Alarm System. 
40

41
00:03:07,080 --> 00:03:11,330
It consists of two groups of sensors and detects any security breach in the system 
41

42
00:03:12,340 --> 00:03:18,880
and reports that properly. The second project implements a simple calculator which can perform 8
42

43
00:03:18,880 --> 00:03:23,460
operations and display the results on the seven-segments available of the Basys3 board.
43

44
00:03:24,660 --> 00:03:31,010
Each lecture describes a single idea which is presented through a couple of slides. 
44

45
00:03:31,170 --> 00:03:37,360
The first slide tells the topic and the motivation, then it follows by a few slides explaining the main ideas and concepts. 
45

46
00:03:37,680 --> 00:03:42,170
After that, a slide gives the motivation of the next lecture by posing a question. 
46

47
00:03:43,020 --> 00:03:47,940
This slide also creates a conceptual link between two consecutive lectures. 
47

48
00:03:48,330 --> 00:03:52,530
Then I summarise the lecture contributions through a few takeaway messages. 
48

49
00:03:53,500 --> 00:03:58,830
The last slide in each lecture contains a quiz that helps you to concentrate on the main idea.  
49

50
00:04:00,020 --> 00:04:06,530
In this course, I have considered the Xilinx Basys 3 FPGA board as our target platform. Basys 3 
50

51
00:04:06,560 --> 00:04:13,070
is an entry-level development platform based on the latest Artix-7 Xilinx FPGA designed exclusively 
51

52
00:04:13,250 --> 00:04:14,960
for Vivado Design Suite.
52

53
00:04:16,000 --> 00:04:22,290
However, the concepts and techniques explained along this course are valid for all other Xilinx FPGAs.
53

54
00:04:23,320 --> 00:04:28,420
What is the necessary information that we should know to start designing with HLS for FPGA? 
54

55
00:04:29,080 --> 00:04:33,370
This question will be answered in the following part, which consists of two sections. 
55

56
00:04:36,400 --> 00:04:41,890
The takeaway messages are, This course explains the fundamental of digital design using the Xilinx 
56

57
00:04:41,920 --> 00:04:42,910
HLS toolset
57

58
00:04:43,850 --> 00:04:47,300
You don’t need to have an in-depth hardware knowledge to follow this course
58

59
00:04:48,410 --> 00:04:51,340
Familiarity with C/C++ language is necessary
59

60
00:04:52,760 --> 00:04:58,310
As this lecture quiz, download the “Vivado Design Suite User Guide: High-Level Synthesis-UG902” 
60

61
00:04:58,490 --> 00:05:01,880
document and have a look at its Table of Contents. 
