1
00:00:00,000 --> 00:00:03,800
Modern CPUs are awesome. You can play games, create content,

2
00:00:03,800 --> 00:00:06,960
and even watch tech explainer videos with handsome hosts,

3
00:00:06,960 --> 00:00:10,120
I guess it was supposed to be someone else, on the same machine.

4
00:00:10,120 --> 00:00:14,720
But as great as this versatility is, there are times when you'd really rather have a chip

5
00:00:14,720 --> 00:00:18,880
that can do just one thing, but do it really, really well.

6
00:00:18,880 --> 00:00:23,800
Now there are lots of electronics that contain chips called A6 or FPGAs

7
00:00:23,800 --> 00:00:28,920
instead of regular CPUs. And we're gonna explain what these are one at a time,

8
00:00:28,960 --> 00:00:32,960
starting with A6. Not to be confused with the shoe company,

9
00:00:32,960 --> 00:00:36,840
A6 stands for Application Specific Integrated Circuit

10
00:00:36,840 --> 00:00:42,720
and it does exactly what it sounds like, processes data for one application.

11
00:00:42,720 --> 00:00:50,360
This is because A6 are built very differently from your typical x86 or ARM or RISC-5 general processor.

12
00:00:51,000 --> 00:00:56,800
A regular processor can apply many different kinds of calculations depending on what a program needs,

13
00:00:56,800 --> 00:01:01,280
but A6 are hardwired to perform only the calculations

14
00:01:01,280 --> 00:01:05,260
or to run only the algorithms that are needed for a specific task.

15
00:01:05,260 --> 00:01:10,120
This hardwiring can happen in a couple of ways. Some A6 are manufactured in what's called

16
00:01:10,120 --> 00:01:14,120
a semi-custom manner, where the fab has what's essentially

17
00:01:14,120 --> 00:01:18,040
a blank template of logic gates, which are then permanently connected

18
00:01:18,040 --> 00:01:23,520
according to the design the client needs. Meanwhile, other A6 are full custom designs

19
00:01:23,520 --> 00:01:28,320
where the entire chip and every transistor is pretty much designed from scratch.

20
00:01:28,320 --> 00:01:34,360
Unsurprisingly, because A6 are so specialized, they take a lot of time and money to develop.

21
00:01:34,360 --> 00:01:40,040
But because A6 are usually for small, highly integrated devices that ship lots of units,

22
00:01:40,040 --> 00:01:43,360
the cost of an individual A6 tends to be quite low.

23
00:01:43,360 --> 00:01:50,640
For example, the chips inside USB chargers or network switches or even electronic toys are often A6,

24
00:01:50,640 --> 00:01:56,080
but all of these are often low-cost products. Network switches are particularly interesting applications

25
00:01:56,240 --> 00:02:00,800
since a simple $15 unmanaged switch can handle network traffic better

26
00:02:00,800 --> 00:02:04,200
than a desktop CPU that costs 10 times as much.

27
00:02:04,200 --> 00:02:07,640
But of course, there's a good chance you've heard of ASIC-based crypto miners

28
00:02:07,640 --> 00:02:12,240
designed to run cryptographic hashes much more efficiently than a graphics card can.

29
00:02:12,240 --> 00:02:15,680
And those are quite expensive due to both demand

30
00:02:15,680 --> 00:02:20,280
and the fact that they aren't as mass-produced as other ASIC-based devices.

31
00:02:20,280 --> 00:02:23,520
And of course, there's the fact that they make you money.

32
00:02:23,520 --> 00:02:28,880
Let's switch gears right now and talk about FPGAs or field programmable gate arrays.

33
00:02:28,880 --> 00:02:32,520
How are those different? You can think of these as sitting somewhere

34
00:02:32,520 --> 00:02:39,260
between an ASIC and a CPU. Their logic can be customized for specific applications,

35
00:02:39,260 --> 00:02:42,680
but unlike ASICs, they can actually be electrically

36
00:02:42,680 --> 00:02:46,080
reprogrammed after they've been manufactured.

37
00:02:46,080 --> 00:02:50,160
You can think of the structure of an FPGA as being kind of like Lego blocks.

38
00:02:50,160 --> 00:02:54,040
Once you put them together, they'll stay that way, but you can always take them apart

39
00:02:54,040 --> 00:02:57,680
and put them back together and make something completely different.

40
00:02:57,680 --> 00:03:01,960
Now, although FPGAs aren't quite as powerful as purpose-built ASICs,

41
00:03:01,960 --> 00:03:06,600
their versatility has made them increasingly popular for machine learning applications

42
00:03:06,600 --> 00:03:12,120
as they can be optimized for different AI models in neural networks, yet still outperform

43
00:03:12,120 --> 00:03:15,240
traditional CPUs and even GPUs.

44
00:03:15,240 --> 00:03:18,480
But perhaps even more interesting is that you can reconstruct

45
00:03:18,480 --> 00:03:22,120
other kinds of processors inside an FPGA,

46
00:03:22,160 --> 00:03:26,360
including the ones from, say, for example, retro game consoles.

47
00:03:26,360 --> 00:03:32,000
There have been some really cool projects that use an FPGA to recreate the retro gaming experience

48
00:03:32,000 --> 00:03:37,440
as faithfully as possible, such as the NT Mini and the Mega SG from Analog.

49
00:03:37,440 --> 00:03:40,960
The FPGAs inside those consoles contain circuitry

50
00:03:40,960 --> 00:03:44,160
that very closely mimics the original NES

51
00:03:44,160 --> 00:03:48,480
and Sega Genesis processors, respectively, meaning that it's a much smoother

52
00:03:48,480 --> 00:03:54,680
and more accurate experience than software emulation, like what gets used by those classic plug-and-play consoles

53
00:03:54,680 --> 00:04:00,000
that have gained popularity recently. Another really awesome FPGA project is the MR,

54
00:04:00,000 --> 00:04:06,520
another gaming device that actually allows you to choose between different old-school consoles and arcade games

55
00:04:06,520 --> 00:04:11,080
than reprogram the FPGA on the fly according to what you want to play.

56
00:04:11,080 --> 00:04:14,200
It's kind of like a transformer, but on the inside,

57
00:04:14,200 --> 00:04:17,520
like that time I washed down a Mentos with a bottle of Pepsi.

58
00:04:18,200 --> 00:04:21,640
Oh, subscribe. That's the end.
