WEBVTT - The Humble Origins of ARM Processors

0:00:04.400 --> 0:00:07.800
<v Speaker 1>Welcome to Tech Stuff, a production from I Heart Radio.

0:00:12.160 --> 0:00:14.880
<v Speaker 1>Hey there, and welcome to tech Stuff. I'm your host,

0:00:15.040 --> 0:00:18.200
<v Speaker 1>Jonathan Strickland. I'm an executive producer with I Heart Radio,

0:00:18.239 --> 0:00:21.840
<v Speaker 1>and I love all things tech. And when it comes

0:00:22.000 --> 0:00:27.360
<v Speaker 1>to micro processors, there are a few names that tend

0:00:27.520 --> 0:00:31.639
<v Speaker 1>to pop up. Intel is obviously a big one. A

0:00:31.840 --> 0:00:34.760
<v Speaker 1>M D is another, and those are the two they

0:00:34.800 --> 0:00:38.280
<v Speaker 1>get talked about when you're discussing stuff like dusktop computers,

0:00:38.280 --> 0:00:42.880
<v Speaker 1>you know, PCs. But when it comes to more lightweight devices,

0:00:43.240 --> 0:00:47.640
<v Speaker 1>you know, like mobile devices, there's another name, ARM a

0:00:48.040 --> 0:00:52.519
<v Speaker 1>r M. Recently, news broke that the graphics card company

0:00:52.600 --> 0:00:57.200
<v Speaker 1>in Vidio would be acquiring ARM for a staggering forty

0:00:57.240 --> 0:01:01.320
<v Speaker 1>billion dollars a princely some so I thought it would

0:01:01.360 --> 0:01:04.040
<v Speaker 1>be a good idea to kind of go on a

0:01:04.120 --> 0:01:08.160
<v Speaker 1>full rundown on what ARM is, its history, and what

0:01:08.280 --> 0:01:12.759
<v Speaker 1>this acquisition means for the industry and for people like

0:01:12.840 --> 0:01:15.800
<v Speaker 1>you and me. And this is gonna be a two

0:01:15.880 --> 0:01:18.440
<v Speaker 1>parter because ARM has been around for a while and

0:01:18.480 --> 0:01:21.480
<v Speaker 1>its story is actually really interesting. Plus it gives me

0:01:21.520 --> 0:01:25.080
<v Speaker 1>opportunities to go off on crazy tangents and tell you guys,

0:01:25.080 --> 0:01:29.039
<v Speaker 1>how various stuff works, which you know is kind of

0:01:29.080 --> 0:01:33.720
<v Speaker 1>my jam. As the kids say, you know, fifteen years ago.

0:01:34.560 --> 0:01:38.960
<v Speaker 1>We'll start with some history lessons. Now, typically when I

0:01:39.000 --> 0:01:42.360
<v Speaker 1>cover the history of a company or a technology, I

0:01:42.440 --> 0:01:46.560
<v Speaker 1>run into a few cases where dates maybe a little confusing.

0:01:46.959 --> 0:01:50.120
<v Speaker 1>Sometimes one source will have a specific date for an

0:01:50.120 --> 0:01:54.360
<v Speaker 1>event that conflicts with a date that's found in another source,

0:01:54.400 --> 0:01:57.120
<v Speaker 1>and so at that point I will usually say that

0:01:58.480 --> 0:02:02.320
<v Speaker 1>I'm sorry, I apologize. I can't get too specific. And

0:02:02.360 --> 0:02:06.320
<v Speaker 1>you would think that ARM wouldn't have this issue. The

0:02:06.360 --> 0:02:09.120
<v Speaker 1>company isn't that old. We can measure its age in

0:02:09.160 --> 0:02:13.000
<v Speaker 1>a few decades, but we only go back to the

0:02:13.080 --> 0:02:16.640
<v Speaker 1>nineteen eighties or so to to look at origins really

0:02:16.680 --> 0:02:19.600
<v Speaker 1>the late nineteen seventies, And yet when it comes to

0:02:19.760 --> 0:02:24.200
<v Speaker 1>particulars such as which events really got things started for ARM,

0:02:24.240 --> 0:02:26.920
<v Speaker 1>there's actually a lot of disagreements. So I'm going to

0:02:26.960 --> 0:02:31.200
<v Speaker 1>give you a a version of ARMS history. But you know,

0:02:31.280 --> 0:02:34.960
<v Speaker 1>don't think of this as the definitive version, because some

0:02:35.000 --> 0:02:37.679
<v Speaker 1>people say, no, you shouldn't trace its history to that point.

0:02:37.760 --> 0:02:41.560
<v Speaker 1>That silly go to this other point instead. Here in

0:02:41.600 --> 0:02:45.320
<v Speaker 1>the United States, when we talk about the early days

0:02:45.639 --> 0:02:49.760
<v Speaker 1>of personal computers, the names that typically pop up in

0:02:49.800 --> 0:02:56.480
<v Speaker 1>those discussions are Apple, Texas Instruments, Commodore, maybe Tandy, and

0:02:56.520 --> 0:03:00.560
<v Speaker 1>then IBM would follow not too long behind does. But

0:03:00.960 --> 0:03:04.480
<v Speaker 1>across the pond in the UK there was another computer

0:03:04.600 --> 0:03:08.160
<v Speaker 1>company that was trying to get an early part of

0:03:08.200 --> 0:03:11.799
<v Speaker 1>the personal computer era, and this company was called Acorn

0:03:12.080 --> 0:03:16.200
<v Speaker 1>Computers Limited. The three co founders of the company where

0:03:16.280 --> 0:03:21.000
<v Speaker 1>Chris Curry, Hermann Hauser and Andy Hopper, whom I suppose

0:03:21.120 --> 0:03:23.360
<v Speaker 1>was just not dedicated enough to go all in with

0:03:23.440 --> 0:03:26.920
<v Speaker 1>the illiterate names of the other two founders, way to

0:03:26.960 --> 0:03:31.840
<v Speaker 1>go and y. Chris Curry was born in nineteen forty

0:03:31.919 --> 0:03:35.720
<v Speaker 1>six in Cambridge, England. He studied math and physics in

0:03:35.840 --> 0:03:39.240
<v Speaker 1>school and went on to work for various technology companies,

0:03:39.280 --> 0:03:43.640
<v Speaker 1>including Pie Limited that's a p y e. Not you

0:03:43.680 --> 0:03:46.240
<v Speaker 1>know the kind of pie that I love, The Royal

0:03:46.360 --> 0:03:51.320
<v Speaker 1>Radar Establishment and Sinclair Radionics. While his stints at Pie

0:03:51.360 --> 0:03:54.880
<v Speaker 1>and Royal Radar were fairly short, he stuck around at

0:03:54.880 --> 0:03:59.480
<v Speaker 1>Sinclair for several years. By the late nineteen seventies, Curry

0:03:59.800 --> 0:04:03.840
<v Speaker 1>was interested in developing computers, but he was finding no

0:04:04.080 --> 0:04:08.119
<v Speaker 1>real support at Sinclair. He had been working on some

0:04:08.160 --> 0:04:11.280
<v Speaker 1>stuff he was trying to pitch the idea to Sinclair,

0:04:11.320 --> 0:04:13.920
<v Speaker 1>but he wasn't finding them very receptive. So we're gonna

0:04:14.000 --> 0:04:17.680
<v Speaker 1>leave off for now with with Curry and move on

0:04:17.880 --> 0:04:22.080
<v Speaker 1>and we'll regroup in a second. Swapping over to Hermann Hauser,

0:04:22.200 --> 0:04:26.400
<v Speaker 1>who was born in Austria in nineteen forty eight. He

0:04:26.520 --> 0:04:30.320
<v Speaker 1>came to Cambridge as a teenager to attend school and

0:04:30.440 --> 0:04:34.360
<v Speaker 1>learn English, but he really enjoyed it. He went on

0:04:34.480 --> 0:04:38.479
<v Speaker 1>to pursue advanced studies in places like Vienna University, but

0:04:38.680 --> 0:04:43.040
<v Speaker 1>he came back to England attending King's College in Cambridge

0:04:43.360 --> 0:04:46.320
<v Speaker 1>and getting an advanced degree. They're smart, dude. His work

0:04:46.360 --> 0:04:49.279
<v Speaker 1>in physics led him to become friends with Curry, and

0:04:49.320 --> 0:04:52.760
<v Speaker 1>when Curry was ready to start a company to manufacture

0:04:52.800 --> 0:04:57.560
<v Speaker 1>and market personal computers, Houser was on board. Andy Hopper

0:04:58.080 --> 0:05:01.479
<v Speaker 1>was the youngest of the three co founders, having been

0:05:01.480 --> 0:05:06.080
<v Speaker 1>born in nineteen fifty three in Warsaw, Poland. Hopper studied

0:05:06.200 --> 0:05:10.960
<v Speaker 1>in London and later Swansea University before pursuing postgraduate studies

0:05:11.040 --> 0:05:14.760
<v Speaker 1>at the University of Cambridge. He focused on computer science

0:05:15.160 --> 0:05:19.040
<v Speaker 1>and he was researching networking technologies. He co founded a

0:05:19.080 --> 0:05:23.719
<v Speaker 1>company called Orbis Limited, which focused mostly on Networking Tech,

0:05:23.960 --> 0:05:27.839
<v Speaker 1>and this entity would end up merging with Curry and

0:05:27.920 --> 0:05:32.599
<v Speaker 1>Houser's efforts to bring Acorn Computers Limited to life. Although

0:05:32.640 --> 0:05:36.840
<v Speaker 1>the original name for the actual company was Cambridge Processing

0:05:37.040 --> 0:05:42.320
<v Speaker 1>Unit Limited CPU cute right, but the co founders decided

0:05:42.360 --> 0:05:46.320
<v Speaker 1>to use the name Acorn Computers as the trading name

0:05:46.560 --> 0:05:50.719
<v Speaker 1>for the company, allegedly choosing the name Acorn so that

0:05:50.800 --> 0:05:55.960
<v Speaker 1>their computers would appear ahead of rival Apple Computers whenever

0:05:56.000 --> 0:05:59.960
<v Speaker 1>it was in an alphabetical listing. One of the earliest

0:06:00.160 --> 0:06:03.880
<v Speaker 1>jobs that the group had was to develop micro controllers

0:06:04.160 --> 0:06:09.400
<v Speaker 1>for fruit machines, and folks, I consider myself an Anglo

0:06:09.480 --> 0:06:12.680
<v Speaker 1>file but when I first read that, I have to

0:06:12.760 --> 0:06:16.200
<v Speaker 1>admit I had no idea what the heck it meant.

0:06:16.480 --> 0:06:19.880
<v Speaker 1>In my imagination, it was some sort of harvesting device

0:06:19.960 --> 0:06:24.680
<v Speaker 1>that depended on micro controllers to do something like pick apples.

0:06:24.760 --> 0:06:27.880
<v Speaker 1>But no, that, of course, is not what a fruit

0:06:27.960 --> 0:06:30.640
<v Speaker 1>machine is. And my guess is there's more than a

0:06:30.640 --> 0:06:33.400
<v Speaker 1>few of you out there giggling at my ignorance right now.

0:06:34.120 --> 0:06:37.960
<v Speaker 1>It's well warranted. So a fruit machine in this context

0:06:38.040 --> 0:06:41.680
<v Speaker 1>is what Brits call a slot machine. I guess they

0:06:41.720 --> 0:06:45.600
<v Speaker 1>do it because of the symbols of fruit that appear

0:06:46.200 --> 0:06:50.120
<v Speaker 1>on the various parts of the slot machine. So the

0:06:50.120 --> 0:06:53.680
<v Speaker 1>first big job that this new company had was designing

0:06:53.720 --> 0:06:57.520
<v Speaker 1>micro controllers for these gambling machines the slot machines to

0:06:57.560 --> 0:06:59.960
<v Speaker 1>make the more difficult to tamper with, as there were

0:07:00.040 --> 0:07:02.839
<v Speaker 1>some clever hackers who are finding ways to rig big

0:07:02.880 --> 0:07:06.760
<v Speaker 1>payouts from the machines. And while the machines are designed

0:07:06.760 --> 0:07:09.640
<v Speaker 1>to take money from you, uh, they don't like the

0:07:09.680 --> 0:07:12.840
<v Speaker 1>design to go the opposite direction. The house is not

0:07:12.960 --> 0:07:16.040
<v Speaker 1>a big fan of that. A few years later, the

0:07:16.200 --> 0:07:20.720
<v Speaker 1>UK launched an initiative to put a computer in every classroom.

0:07:21.200 --> 0:07:25.800
<v Speaker 1>Acorn Computers secured the contract to provide these computers to

0:07:25.880 --> 0:07:30.520
<v Speaker 1>produce them, and it was called the BBC Micro. The

0:07:30.640 --> 0:07:34.320
<v Speaker 1>Micro used a processor called the six five O two.

0:07:34.640 --> 0:07:38.240
<v Speaker 1>This was an eight bit processor from Rockwell h Though

0:07:38.280 --> 0:07:42.560
<v Speaker 1>engineers from Most Technology originally developed the six five O

0:07:42.720 --> 0:07:45.600
<v Speaker 1>two processor, the six five O two was a low

0:07:45.680 --> 0:07:49.640
<v Speaker 1>cost processor that totally changed the processor market. It was

0:07:49.800 --> 0:07:53.760
<v Speaker 1>much less expensive than Intel's d D processor at the time,

0:07:54.160 --> 0:07:56.800
<v Speaker 1>and as such, the six five O two had found

0:07:56.840 --> 0:08:02.080
<v Speaker 1>its way into numerous technologies in the including the Atrey

0:08:02.840 --> 0:08:06.360
<v Speaker 1>video game console and the Apple two Computer Systems, among others.

0:08:06.880 --> 0:08:12.880
<v Speaker 1>The micro contract gave Acorn Computers some momentum. In three

0:08:13.200 --> 0:08:17.160
<v Speaker 1>the company wanted to free itself from dependence upon processors

0:08:17.280 --> 0:08:22.360
<v Speaker 1>from other companies. To computer scientists from Cambridge University, Sophie

0:08:22.360 --> 0:08:26.400
<v Speaker 1>Wilson and Steve Ferber became the head designers for the

0:08:26.600 --> 0:08:31.120
<v Speaker 1>new thirty two bit processor. Ferber focused on the actual

0:08:31.200 --> 0:08:35.040
<v Speaker 1>physical design of the chips architecture, while Wilson was focusing

0:08:35.200 --> 0:08:40.000
<v Speaker 1>on the instruction set. The limited resources forced the pair

0:08:40.120 --> 0:08:43.280
<v Speaker 1>to come up with a simplified approach to processors, and

0:08:43.320 --> 0:08:45.920
<v Speaker 1>they chose to go with a specific approach to processor

0:08:46.000 --> 0:08:51.720
<v Speaker 1>design in a category called reduced instruction set computing or

0:08:52.080 --> 0:08:56.400
<v Speaker 1>risk r I s C. This is in contrast with

0:08:56.559 --> 0:09:01.360
<v Speaker 1>complex instruction set computing or see I s C CISC.

0:09:01.960 --> 0:09:06.000
<v Speaker 1>But what does that actually mean? Well, let's take a

0:09:06.080 --> 0:09:10.240
<v Speaker 1>step back to understand this. A processor's job is to

0:09:10.280 --> 0:09:15.280
<v Speaker 1>perform arithmetic and logic operations on data, and this includes

0:09:15.360 --> 0:09:18.560
<v Speaker 1>basic stuff like you know, adding and subtracting, kind of

0:09:18.600 --> 0:09:22.599
<v Speaker 1>like your basic calculator, and it can also involve transferring

0:09:22.679 --> 0:09:26.960
<v Speaker 1>numbers and comparing different numbers to one another. The data

0:09:27.240 --> 0:09:31.200
<v Speaker 1>comes in as binary or let's be zeros and ones.

0:09:32.000 --> 0:09:35.560
<v Speaker 1>The processor follows instructions given to it by a program.

0:09:35.920 --> 0:09:39.760
<v Speaker 1>So the processor gets its instructions like, you know, add

0:09:39.840 --> 0:09:42.839
<v Speaker 1>the next two numbers together and then send it on,

0:09:43.520 --> 0:09:47.679
<v Speaker 1>and then the processor executes that instruction on the supplied

0:09:47.920 --> 0:09:51.000
<v Speaker 1>zeros and ones that come in. And that's basically what's

0:09:51.000 --> 0:09:54.400
<v Speaker 1>going on with a processor at a very high level.

0:09:55.000 --> 0:09:59.119
<v Speaker 1>In addition, we describe the number of operations a processor

0:09:59.200 --> 0:10:02.720
<v Speaker 1>can complete in a second as its clock speed, which

0:10:02.760 --> 0:10:06.040
<v Speaker 1>we talk about in hurts. A single pulse of the

0:10:06.080 --> 0:10:10.760
<v Speaker 1>processor is a cycle. A one Hurts processor would only

0:10:10.800 --> 0:10:14.240
<v Speaker 1>be able to complete a single operation every second. It

0:10:14.240 --> 0:10:19.720
<v Speaker 1>would be unfathomably slow to us. A decent processor speed

0:10:19.720 --> 0:10:23.520
<v Speaker 1>today is somewhere between two point five and three point

0:10:23.559 --> 0:10:26.920
<v Speaker 1>five giga hurts. That's decent. I'm not talking about top

0:10:26.960 --> 0:10:29.319
<v Speaker 1>of the line, but that would mean two point five

0:10:29.520 --> 0:10:33.760
<v Speaker 1>to three point five billion cycles per second. So the

0:10:33.840 --> 0:10:39.560
<v Speaker 1>processors in modern computers are pulsing billions of times every second,

0:10:39.559 --> 0:10:44.120
<v Speaker 1>and each pulse can power and operation. Now, some instructions

0:10:44.160 --> 0:10:47.840
<v Speaker 1>are pretty simple and they might only require one or

0:10:48.000 --> 0:10:52.720
<v Speaker 1>two cycles to complete that instruction. Other instructions are more

0:10:52.760 --> 0:10:56.400
<v Speaker 1>complicated and might have lots more steps involved, and this

0:10:56.480 --> 0:11:00.559
<v Speaker 1>is where we get to the risk versus CISK approach.

0:11:00.640 --> 0:11:05.480
<v Speaker 1>A risk based processor handles very simple instructions, so it

0:11:05.559 --> 0:11:10.239
<v Speaker 1>handles each individual instruction very quickly, like within a cycle.

0:11:10.880 --> 0:11:15.880
<v Speaker 1>CISC systems can handle much more complicated instructions. The flip

0:11:16.040 --> 0:11:19.320
<v Speaker 1>side of that is that while a risk based processor

0:11:19.440 --> 0:11:23.439
<v Speaker 1>can execute individual instructions very very quickly, you might need

0:11:23.480 --> 0:11:27.440
<v Speaker 1>a lot more instructions to complete your overall task. The

0:11:27.559 --> 0:11:31.400
<v Speaker 1>CISK approach might take longer to execute a single instruction,

0:11:31.679 --> 0:11:35.800
<v Speaker 1>but you need fewer instructions overall to complete your task.

0:11:36.120 --> 0:11:39.880
<v Speaker 1>Now that is a little confusing, So I'll use an analogy.

0:11:40.200 --> 0:11:42.160
<v Speaker 1>If I told the typical person, I need you to

0:11:42.200 --> 0:11:46.000
<v Speaker 1>go outside and check the weather, that's a deceptively complicated

0:11:46.040 --> 0:11:49.400
<v Speaker 1>instruction because there's a lot of other stuff that's nested

0:11:49.559 --> 0:11:52.640
<v Speaker 1>in that request. For example, if I were to try

0:11:52.679 --> 0:11:54.840
<v Speaker 1>and tell this to a robot, I might have to

0:11:54.880 --> 0:11:58.079
<v Speaker 1>include what direction the robot needs to go in, how

0:11:58.160 --> 0:12:01.720
<v Speaker 1>fast it should move, where of the door is, whether

0:12:01.800 --> 0:12:05.840
<v Speaker 1>that door opens inward or outward, the actual mechanism the

0:12:05.920 --> 0:12:08.920
<v Speaker 1>robot would have to manipulate to open the door, and

0:12:08.960 --> 0:12:12.000
<v Speaker 1>so on. So what appears to be a simple task

0:12:12.400 --> 0:12:16.760
<v Speaker 1>is actually when you break it down into its individual components,

0:12:17.160 --> 0:12:20.800
<v Speaker 1>much more complicated. So a program running on a risk

0:12:20.880 --> 0:12:24.160
<v Speaker 1>based processor has to break down instructions kind of in

0:12:24.200 --> 0:12:28.200
<v Speaker 1>that way in a longer series of simple tasks that

0:12:28.320 --> 0:12:31.960
<v Speaker 1>add up to whatever you're end goal is. But risk

0:12:32.160 --> 0:12:36.400
<v Speaker 1>chips are highly optimized, so for certain applications a risk

0:12:36.480 --> 0:12:40.160
<v Speaker 1>based chip can be ideal. These days, we have a

0:12:40.200 --> 0:12:43.440
<v Speaker 1>lot of risk chips and stuff like mobile devices, for example,

0:12:43.480 --> 0:12:48.040
<v Speaker 1>because these devices are rarely running super complicated software and

0:12:48.080 --> 0:12:53.199
<v Speaker 1>they need that low power, high efficiency output. One related

0:12:53.280 --> 0:12:56.520
<v Speaker 1>thing I'd like to mention, though it doesn't tie directly

0:12:56.600 --> 0:13:00.080
<v Speaker 1>into arms history or anything, is what is called a

0:13:00.160 --> 0:13:04.640
<v Speaker 1>semantic gap. Now, remember when I said that processors taken

0:13:04.760 --> 0:13:08.320
<v Speaker 1>data in the form of zeros and ones. This binary

0:13:08.400 --> 0:13:11.440
<v Speaker 1>code is a type of machine language, or the kind

0:13:11.440 --> 0:13:15.920
<v Speaker 1>of information a machine can actually process. Machines are not

0:13:16.080 --> 0:13:20.720
<v Speaker 1>able to process information in other forms directly. The information

0:13:20.800 --> 0:13:24.720
<v Speaker 1>must ultimately convert into machine language, in this case zeros

0:13:24.720 --> 0:13:29.800
<v Speaker 1>and ones, and information that we can express pretty succinctly

0:13:29.960 --> 0:13:33.400
<v Speaker 1>with language and numerals. Beyond just the ones and zeros,

0:13:33.960 --> 0:13:35.880
<v Speaker 1>that ends up taking up a lot of space. You

0:13:35.920 --> 0:13:37.760
<v Speaker 1>have to use a lot of ones and zeros to

0:13:37.880 --> 0:13:41.360
<v Speaker 1>represent that kind of information. But computers are really good

0:13:41.360 --> 0:13:46.359
<v Speaker 1>at processing machine code. It happens lightning fast. However, programming

0:13:46.400 --> 0:13:51.400
<v Speaker 1>computers in machine code is really really hard. I mean,

0:13:51.440 --> 0:13:54.640
<v Speaker 1>imagine having to type in a string of tens of

0:13:54.760 --> 0:13:58.520
<v Speaker 1>thousands of zeros and ones while you're trying to program

0:13:58.520 --> 0:14:01.120
<v Speaker 1>a machine, and you know that if you make just

0:14:01.280 --> 0:14:04.600
<v Speaker 1>one mistake, you mess up the whole program because the

0:14:04.600 --> 0:14:07.360
<v Speaker 1>whole chain is screwed up after that. Heck, if you

0:14:07.400 --> 0:14:10.080
<v Speaker 1>did make a mistake, it would be really hard for

0:14:10.120 --> 0:14:13.040
<v Speaker 1>you to track down where you made the mistake in

0:14:13.080 --> 0:14:16.240
<v Speaker 1>the programming. You would have to compare two different, very

0:14:16.320 --> 0:14:19.480
<v Speaker 1>long sheets of zeros and ones, and you'd probably lose

0:14:19.520 --> 0:14:22.960
<v Speaker 1>your mind. That's one of the big reasons computer scientists

0:14:23.000 --> 0:14:26.880
<v Speaker 1>have developed various programming languages. The idea is that the

0:14:26.960 --> 0:14:30.640
<v Speaker 1>programming language is something that's easier for human beings to

0:14:30.720 --> 0:14:35.160
<v Speaker 1>work with, but machines can't understand programming languages without the

0:14:35.280 --> 0:14:39.520
<v Speaker 1>use of something called a compiler. The compiler's job is

0:14:39.640 --> 0:14:42.920
<v Speaker 1>essentially that of a translator. It takes the program that's

0:14:42.920 --> 0:14:46.920
<v Speaker 1>been written in whatever programming language and converts the instructions

0:14:46.920 --> 0:14:50.200
<v Speaker 1>into machine code so that the computer can process it.

0:14:50.960 --> 0:14:55.120
<v Speaker 1>The compiler is essentially a middleman between the program and

0:14:55.160 --> 0:14:59.560
<v Speaker 1>the processor. We describe programming languages by calling them stuff

0:14:59.600 --> 0:15:03.480
<v Speaker 1>like level or high level. This refers to how closely

0:15:03.560 --> 0:15:07.400
<v Speaker 1>the language resembles the machine code. So a low level

0:15:07.480 --> 0:15:11.000
<v Speaker 1>programming language is really only a couple of steps away

0:15:11.040 --> 0:15:14.840
<v Speaker 1>from machine code itself. It's much easier for a compiler

0:15:14.880 --> 0:15:17.760
<v Speaker 1>to handle that kind of language, but it's much harder

0:15:17.760 --> 0:15:20.840
<v Speaker 1>to program in. You have to frame your programming closer

0:15:20.880 --> 0:15:25.000
<v Speaker 1>to machine code, but it's still easier than programming instructions

0:15:25.000 --> 0:15:29.160
<v Speaker 1>than just ones and zeros. A high level programming language

0:15:29.840 --> 0:15:33.320
<v Speaker 1>is modeled closer to how we would think in terms

0:15:33.400 --> 0:15:36.640
<v Speaker 1>of a typical language. There are still rules you have

0:15:36.680 --> 0:15:39.680
<v Speaker 1>to follow, and if you're not familiar with that particular

0:15:39.720 --> 0:15:42.360
<v Speaker 1>language and you're looking at an example of it, it's

0:15:42.360 --> 0:15:44.240
<v Speaker 1>not likely going to make a whole lot of sense

0:15:44.280 --> 0:15:46.960
<v Speaker 1>to you. But it's much easier for humans to work

0:15:47.000 --> 0:15:50.440
<v Speaker 1>with these kind of languages. However, it's less efficient for

0:15:50.560 --> 0:15:54.640
<v Speaker 1>compilers to handle that and compile that into machine language.

0:15:55.280 --> 0:15:59.960
<v Speaker 1>We call this adding layers of abstraction. The programming lay.

0:16:00.120 --> 0:16:04.480
<v Speaker 1>WHIGE provides an abstract platform that represents the various tasks

0:16:04.520 --> 0:16:08.000
<v Speaker 1>that the processor will ultimately carry out, and the gap

0:16:08.240 --> 0:16:11.680
<v Speaker 1>between what the programming language says and what the processor

0:16:11.840 --> 0:16:17.200
<v Speaker 1>does is the semantic gap. CISK and risk designs deal

0:16:17.280 --> 0:16:21.280
<v Speaker 1>with this gap in different ways. A CISK design includes

0:16:21.320 --> 0:16:25.040
<v Speaker 1>a lot of addressing modes and lots of different instructions.

0:16:25.080 --> 0:16:28.800
<v Speaker 1>A RISK design has a much more simplified instruction set

0:16:29.200 --> 0:16:32.400
<v Speaker 1>that can meet the requirements of user programs. It's really

0:16:32.440 --> 0:16:36.640
<v Speaker 1>just two different methods to achieve a similar result. Depending

0:16:36.720 --> 0:16:41.320
<v Speaker 1>upon the history you read, Acorn Computer slash Cambridge Processing

0:16:41.400 --> 0:16:47.640
<v Speaker 1>Unit called their risk based design Acorn Risk Machines, or

0:16:47.680 --> 0:16:51.800
<v Speaker 1>they called it Advanced Risk Machines. Most histories say that

0:16:51.880 --> 0:16:55.120
<v Speaker 1>originally it was Acorn Risk Machines and only later changed

0:16:55.160 --> 0:16:59.240
<v Speaker 1>to Advanced Risk Machines. But either way, the initialism for

0:16:59.320 --> 0:17:04.080
<v Speaker 1>this technolog g became a r M or ARM. When

0:17:04.080 --> 0:17:07.040
<v Speaker 1>we come back, i'll talk about how this technology would

0:17:07.080 --> 0:17:11.600
<v Speaker 1>ultimately transcend the company that spawned it, but first let's

0:17:11.640 --> 0:17:23.240
<v Speaker 1>take a quick break. Steve Ferber, Sophie Wilson, and Robert

0:17:23.240 --> 0:17:27.600
<v Speaker 1>Heaton program the initial instruction set for the ARM processor

0:17:27.720 --> 0:17:31.960
<v Speaker 1>in Basic. That's a programming language that originated back in

0:17:32.119 --> 0:17:37.439
<v Speaker 1>nineteen sixty four. Basic stands for Beginners all Purpose Symbolic

0:17:37.560 --> 0:17:41.680
<v Speaker 1>instruction Code. It's a high level programming language that, as

0:17:41.720 --> 0:17:47.080
<v Speaker 1>the name implies, simplifies things for beginner programmers. The Acorn

0:17:47.119 --> 0:17:50.600
<v Speaker 1>team weren't beginners, but they wanted to keep instructions as

0:17:50.680 --> 0:17:54.760
<v Speaker 1>simple as possible to optimize the processors. Their first effort

0:17:54.840 --> 0:18:00.520
<v Speaker 1>yielded the ARM one processor That endeavor took two years

0:18:00.680 --> 0:18:05.119
<v Speaker 1>of development, with the ARM one debuting in nine only

0:18:05.240 --> 0:18:13.119
<v Speaker 1>debuting internally v l s I Technology, another company fabricating company,

0:18:13.160 --> 0:18:17.840
<v Speaker 1>they actually produced the chip the working chips. The chip

0:18:17.920 --> 0:18:21.480
<v Speaker 1>had fewer than twenty five thousand transistors on it and

0:18:21.560 --> 0:18:26.480
<v Speaker 1>used a process with a resolution of three microns or micrometers.

0:18:26.520 --> 0:18:31.639
<v Speaker 1>That's one millionth of a meter for comparisons sake, Today's

0:18:31.760 --> 0:18:35.959
<v Speaker 1>Intel processors have more than a billion transistors and they

0:18:36.040 --> 0:18:38.520
<v Speaker 1>use a fabrication process with a resolution of just a

0:18:38.560 --> 0:18:42.680
<v Speaker 1>few nanometers, and a nanometer is one billionth of a meter,

0:18:42.840 --> 0:18:46.880
<v Speaker 1>so we've definitely come a long way since the early eighties.

0:18:47.440 --> 0:18:50.080
<v Speaker 1>The team learned a great deal through their experience of

0:18:50.119 --> 0:18:53.920
<v Speaker 1>developing the ARM one, and rather than immediately go into production,

0:18:54.080 --> 0:18:57.120
<v Speaker 1>the design team began to work on refining their product,

0:18:57.440 --> 0:19:01.120
<v Speaker 1>creating the next generation of processors based on the architecture.

0:19:01.400 --> 0:19:05.040
<v Speaker 1>They wanted to improve certain processes, and they added instructions

0:19:05.040 --> 0:19:10.200
<v Speaker 1>for stuff like multiply and multiply and accumulate. They built

0:19:10.200 --> 0:19:13.560
<v Speaker 1>in capabilities that would allow the processor to perform real

0:19:13.720 --> 0:19:18.240
<v Speaker 1>time digital signal processing, a necessity if they wanted the

0:19:18.240 --> 0:19:21.720
<v Speaker 1>processor to be able to handle processes meant to you know,

0:19:21.800 --> 0:19:25.280
<v Speaker 1>generate sounds for example, which the company considered an important

0:19:25.359 --> 0:19:29.439
<v Speaker 1>part of a computer's capabilities. They increased the number of

0:19:29.440 --> 0:19:33.040
<v Speaker 1>transistors on the microprocessor from twenty five thousand from ARM

0:19:33.080 --> 0:19:37.440
<v Speaker 1>one to thirty thousand for ARM two. The team also

0:19:37.520 --> 0:19:42.400
<v Speaker 1>developed a coprocessor, which, as that name implies, is a

0:19:42.440 --> 0:19:46.800
<v Speaker 1>processor that can work in concert with the primary processor.

0:19:47.200 --> 0:19:52.640
<v Speaker 1>Coprocessors typically handle specific tasks. They're meant to kick in

0:19:52.680 --> 0:19:57.720
<v Speaker 1>when something specific happens, and it offloads those tasks from

0:19:57.840 --> 0:20:01.120
<v Speaker 1>the responsibility of the primary process sessor. So this would

0:20:01.119 --> 0:20:04.080
<v Speaker 1>be kind of like having two people dividing up work

0:20:04.119 --> 0:20:08.160
<v Speaker 1>among them, and one person handles a subset of chores

0:20:08.560 --> 0:20:10.359
<v Speaker 1>and the other person has to do all the rest

0:20:10.359 --> 0:20:13.119
<v Speaker 1>of the chores. Now, in this case, the coprocessor was

0:20:13.160 --> 0:20:18.280
<v Speaker 1>powering a floating point accelerator. Ah, but that leads us

0:20:18.280 --> 0:20:23.399
<v Speaker 1>to ask what is a floating point? Well, I'm sad

0:20:23.480 --> 0:20:25.600
<v Speaker 1>to be the one to have to tell you this.

0:20:25.840 --> 0:20:31.280
<v Speaker 1>Please set yourself down and and prepare yourself. Computers have

0:20:31.440 --> 0:20:36.400
<v Speaker 1>a limited capacity. Computing memory is not infinite, and so

0:20:36.520 --> 0:20:39.760
<v Speaker 1>we have to start making some concessions when we're working

0:20:40.040 --> 0:20:43.680
<v Speaker 1>with numbers. Now, as you may be aware, some numbers

0:20:44.040 --> 0:20:49.239
<v Speaker 1>can be really really big or really really small, and

0:20:49.280 --> 0:20:53.120
<v Speaker 1>they might have a super long, perhaps even infinite number

0:20:53.359 --> 0:20:58.160
<v Speaker 1>of numbers behind a decimal point. Computers can't cope with that.

0:20:58.680 --> 0:21:02.000
<v Speaker 1>They have limitation on what they can handle. So we

0:21:02.080 --> 0:21:05.640
<v Speaker 1>have to make some concessions, and floating points are one

0:21:05.640 --> 0:21:08.480
<v Speaker 1>of the ways we make concessions. Now, at some point

0:21:08.800 --> 0:21:12.280
<v Speaker 1>we have to cut off numbers, and when and where

0:21:12.320 --> 0:21:15.119
<v Speaker 1>we cut off numbers depends upon what we're doing. So,

0:21:15.200 --> 0:21:18.760
<v Speaker 1>for example, if we are making a tool like a rake,

0:21:19.760 --> 0:21:22.840
<v Speaker 1>you know, just an old lawn rake, and you want

0:21:22.920 --> 0:21:25.120
<v Speaker 1>the handle for this rake to be five ft long,

0:21:25.640 --> 0:21:28.920
<v Speaker 1>you probably don't actually care if the handle comes out

0:21:28.960 --> 0:21:32.919
<v Speaker 1>to be four ft eleven inches and some change, or

0:21:33.280 --> 0:21:36.200
<v Speaker 1>five foot and a fraction of an inch that level

0:21:36.200 --> 0:21:39.639
<v Speaker 1>of precision isn't really important to you. It needs to

0:21:39.640 --> 0:21:43.280
<v Speaker 1>be five ft ish, but if it's not exactly at

0:21:43.280 --> 0:21:46.400
<v Speaker 1>five ft it's not a deal breaker. But let's say

0:21:46.400 --> 0:21:50.200
<v Speaker 1>you're building a transistor for a processor. Well, in that case,

0:21:50.240 --> 0:21:55.600
<v Speaker 1>you're working in a very very very small frame of reference,

0:21:55.920 --> 0:21:58.120
<v Speaker 1>and so the difference of a fraction of a meter

0:21:58.280 --> 0:22:02.560
<v Speaker 1>represents a gargantu one difference. On the flip side, you're

0:22:02.600 --> 0:22:05.679
<v Speaker 1>not likely to ever have to worry about distances of

0:22:05.880 --> 0:22:08.879
<v Speaker 1>a centimeter. That would be way too big. So you

0:22:09.040 --> 0:22:12.280
<v Speaker 1>just have to have a way to maintain accuracy relative

0:22:12.320 --> 0:22:15.280
<v Speaker 1>to what you're doing. You have a different, you know,

0:22:15.600 --> 0:22:19.800
<v Speaker 1>context for your work. This gets a bit more complicated

0:22:19.800 --> 0:22:22.239
<v Speaker 1>when you need to work with both really big and

0:22:22.440 --> 0:22:25.960
<v Speaker 1>really small numbers at the same time. For example, let's

0:22:25.960 --> 0:22:29.480
<v Speaker 1>say you're a scientist and you're working with Newton's gravitational constant.

0:22:29.920 --> 0:22:32.600
<v Speaker 1>That is a very small number that starts with a decimal.

0:22:33.040 --> 0:22:36.159
<v Speaker 1>Then you have ten zeros before you get to the

0:22:36.160 --> 0:22:39.280
<v Speaker 1>first non zero number, which is a six. By the way,

0:22:39.480 --> 0:22:41.760
<v Speaker 1>you might also be working with the speed of light.

0:22:42.680 --> 0:22:46.720
<v Speaker 1>That's a very big number, but the computer memory can't

0:22:46.760 --> 0:22:50.320
<v Speaker 1>really handle number sizes that include that wide a spectrum

0:22:50.320 --> 0:22:54.000
<v Speaker 1>of numbers, and that's why floating points are used, and

0:22:54.040 --> 0:22:58.080
<v Speaker 1>they're sort of like using numbers and scientific notation. You've

0:22:58.080 --> 0:23:02.679
<v Speaker 1>got a significant with contains the digit of the number

0:23:02.760 --> 0:23:05.479
<v Speaker 1>or the digits of whatever number you're talking about, and

0:23:05.480 --> 0:23:08.560
<v Speaker 1>you've got an exponent which tells you where the decimal

0:23:08.600 --> 0:23:11.760
<v Speaker 1>point needs to be in relation to the first digit

0:23:11.880 --> 0:23:15.280
<v Speaker 1>in the significant. So if I have a significant of

0:23:15.520 --> 0:23:19.320
<v Speaker 1>one point seven and I have an exponent of six,

0:23:19.920 --> 0:23:22.040
<v Speaker 1>it would be the same as if I wrote that

0:23:22.160 --> 0:23:25.280
<v Speaker 1>number in the scientific notation as one point seven times

0:23:25.280 --> 0:23:27.920
<v Speaker 1>ten to the sixth power, which is the same thing

0:23:27.960 --> 0:23:31.720
<v Speaker 1>as one million, seven hundred thousand. These are all just

0:23:31.800 --> 0:23:34.800
<v Speaker 1>different ways to represent the same value. So one point

0:23:34.840 --> 0:23:38.160
<v Speaker 1>seven significant with an exponent of six is one million,

0:23:38.240 --> 0:23:41.960
<v Speaker 1>seven hundred thousand. Likewise, if I had a significant of

0:23:42.000 --> 0:23:46.280
<v Speaker 1>one point seven and an exponent of negative six, this

0:23:46.280 --> 0:23:48.520
<v Speaker 1>would be the same as one point seven times ten

0:23:48.640 --> 0:23:54.160
<v Speaker 1>to the negative sixth power or point zero zero zero

0:23:54.359 --> 0:23:59.440
<v Speaker 1>zero zero one seven. By using floating points, we can

0:23:59.480 --> 0:24:04.159
<v Speaker 1>simplify how we represent numbers without damaging the value of

0:24:04.200 --> 0:24:07.240
<v Speaker 1>those numbers. And let's get around the limitations of computer

0:24:07.320 --> 0:24:10.600
<v Speaker 1>memory and how many bits a processor can handle at

0:24:10.600 --> 0:24:15.120
<v Speaker 1>a single time. We call the operations that processors perform

0:24:15.240 --> 0:24:19.199
<v Speaker 1>on these types of numbers floating point operations, and we

0:24:19.280 --> 0:24:23.040
<v Speaker 1>measure it in flops, which stands for floating point operations

0:24:23.080 --> 0:24:27.280
<v Speaker 1>per second. A giga flop would be a billion floating

0:24:27.359 --> 0:24:33.679
<v Speaker 1>point operations per second. The Japanese super computer Fugaku can

0:24:33.760 --> 0:24:38.200
<v Speaker 1>reach more than four hundred fifteen peda flops. A pedal

0:24:38.240 --> 0:24:44.119
<v Speaker 1>flop is a thousand million million floating point operations per second,

0:24:44.520 --> 0:24:47.440
<v Speaker 1>So a pedal flop would be a one followed by

0:24:47.600 --> 0:24:55.000
<v Speaker 1>fifteen zeros yauza. So the ARM to architecture included a

0:24:55.000 --> 0:24:59.920
<v Speaker 1>coprocessor for floating point acceleration, not a full floating point process,

0:25:00.240 --> 0:25:04.720
<v Speaker 1>but to accelerate floating point operation calculations, as well as

0:25:04.720 --> 0:25:09.480
<v Speaker 1>the possibility of adding other coprocessors with the basic ARM architecture.

0:25:09.520 --> 0:25:12.200
<v Speaker 1>It was kind of a sort of a modular design.

0:25:12.720 --> 0:25:16.040
<v Speaker 1>This generation was called, fittingly enough, ARMED two, and the

0:25:16.119 --> 0:25:19.880
<v Speaker 1>first product to market that featured the ARM two wasn't

0:25:19.960 --> 0:25:23.800
<v Speaker 1>a fully fledged computer, but rather the ARM development system,

0:25:23.840 --> 0:25:27.880
<v Speaker 1>which included the ARM processor, four megabytes of RAM, three

0:25:27.920 --> 0:25:31.240
<v Speaker 1>support chips, and some development tools. So essentially this was

0:25:31.280 --> 0:25:34.320
<v Speaker 1>a product meant for programmers. It wasn't like it was

0:25:34.400 --> 0:25:38.800
<v Speaker 1>meant for your average end consumer. Meanwhile, at the company

0:25:38.840 --> 0:25:43.200
<v Speaker 1>at large, things were not going so super well. Acorn

0:25:43.240 --> 0:25:46.520
<v Speaker 1>Computers was in a bit of a financial crisis and

0:25:46.680 --> 0:25:50.760
<v Speaker 1>an Italian company known for computer systems and office equipment

0:25:50.760 --> 0:25:54.719
<v Speaker 1>in Europe called Olivetti ing s c. And I know

0:25:54.840 --> 0:25:58.280
<v Speaker 1>I've butchered it, but Olivetti is what's best known as

0:25:58.680 --> 0:26:02.480
<v Speaker 1>it swept in and it acquired the English computer company.

0:26:02.840 --> 0:26:07.480
<v Speaker 1>At the time, Olivetti was reportedly unaware that within Acorn

0:26:07.560 --> 0:26:10.840
<v Speaker 1>Computers there were engineers who are working on new processors

0:26:10.880 --> 0:26:14.879
<v Speaker 1>because the original Acorn computers we're using processors made from

0:26:14.920 --> 0:26:18.480
<v Speaker 1>other companies, so the acquisition would slow things down a

0:26:18.480 --> 0:26:20.480
<v Speaker 1>little bit. That's one of the reasons why there was

0:26:20.520 --> 0:26:24.000
<v Speaker 1>a delay between the development of the original ARM one

0:26:24.119 --> 0:26:28.720
<v Speaker 1>processor and an actual Acorn computer system running on an

0:26:28.840 --> 0:26:32.080
<v Speaker 1>ARMED two processor. However, the day did eventually come around,

0:26:32.320 --> 0:26:35.639
<v Speaker 1>and that day arrived in n seven, and that is

0:26:35.720 --> 0:26:40.040
<v Speaker 1>when Acorn Computers launched the Archimedes. It was a home

0:26:40.080 --> 0:26:43.840
<v Speaker 1>computer running on an ARM two processor with a clock

0:26:43.920 --> 0:26:46.480
<v Speaker 1>speed of eight mega hurts, meaning it would send out

0:26:46.560 --> 0:26:50.560
<v Speaker 1>eight million pulses per second. I wish I could say

0:26:50.600 --> 0:26:55.040
<v Speaker 1>that the Archimedes revolutionized computing right away, but that just

0:26:55.200 --> 0:26:59.040
<v Speaker 1>wouldn't be true. The delays meant that Acorn Computers was

0:26:59.240 --> 0:27:04.040
<v Speaker 1>way behind the chief competitor, which in seven was IBM,

0:27:04.240 --> 0:27:08.359
<v Speaker 1>or rather computers running on IBM's design a k a

0:27:08.840 --> 0:27:13.360
<v Speaker 1>IBM compatibles. While Acorn Computers was working on developing its

0:27:13.440 --> 0:27:17.560
<v Speaker 1>ARM processor technology and then afterward as it sorted itself

0:27:17.600 --> 0:27:22.200
<v Speaker 1>out post acquisition from Olivetti, the computing world was consolidating

0:27:22.240 --> 0:27:26.560
<v Speaker 1>behind the IBM compatible approach. Apple's market share was already

0:27:26.840 --> 0:27:30.080
<v Speaker 1>heading forward decline. At this point. The company had released

0:27:30.080 --> 0:27:34.240
<v Speaker 1>the Macintosh computer. In four Steve Jobs had been ousted

0:27:34.359 --> 0:27:37.520
<v Speaker 1>or had left in a huff. Reports differ on this.

0:27:38.000 --> 0:27:41.439
<v Speaker 1>IBM had taken aim at dominating the office computer space

0:27:41.760 --> 0:27:45.719
<v Speaker 1>and then expanded beyond to home computing. But IBM had

0:27:45.720 --> 0:27:49.040
<v Speaker 1>also made some decisions that allowed some other manufacturers to

0:27:49.080 --> 0:27:53.359
<v Speaker 1>build machines with essentially the same components as IBM's personal

0:27:53.359 --> 0:27:58.560
<v Speaker 1>computers and licensed essentially the same operating system, allowing any

0:27:58.640 --> 0:28:01.720
<v Speaker 1>company the chance to build their version of an IBM

0:28:01.720 --> 0:28:05.320
<v Speaker 1>PC but offer it for a much more competitive price.

0:28:05.720 --> 0:28:09.840
<v Speaker 1>IBM had effectively set its own course to ultimately withdraw

0:28:10.000 --> 0:28:13.520
<v Speaker 1>from the home PC market further down the line, though

0:28:13.600 --> 0:28:17.480
<v Speaker 1>that would take several more years. The point, however, is

0:28:17.560 --> 0:28:21.280
<v Speaker 1>that the IBM design was firmly entrenched in the market.

0:28:21.520 --> 0:28:25.359
<v Speaker 1>There were tons of options for machines, and more importantly,

0:28:25.600 --> 0:28:29.199
<v Speaker 1>there was an enormous amount of software available that had

0:28:29.240 --> 0:28:33.520
<v Speaker 1>been developed specifically for the IBM design of computers. The

0:28:33.560 --> 0:28:37.240
<v Speaker 1>our Comedies, a computer with a totally different processor and

0:28:37.280 --> 0:28:41.480
<v Speaker 1>a different operating system was just getting started in this market,

0:28:41.560 --> 0:28:45.000
<v Speaker 1>and there was no enormous library of software to support that.

0:28:45.080 --> 0:28:48.720
<v Speaker 1>System sales as a result were slow. I mean, what

0:28:48.800 --> 0:28:51.720
<v Speaker 1>good is a computer if there's no software to run

0:28:51.880 --> 0:28:56.440
<v Speaker 1>on the computer. You could program your own software, but

0:28:56.520 --> 0:28:59.040
<v Speaker 1>that sort of approach tends to appeal to, you know,

0:28:59.120 --> 0:29:02.840
<v Speaker 1>a super narrow sliver of the overall computer market. So

0:29:02.880 --> 0:29:05.200
<v Speaker 1>it would take a few years for programmers to develop

0:29:05.240 --> 0:29:08.880
<v Speaker 1>software for the ARM architecture and for the Archimedes platform

0:29:09.040 --> 0:29:12.240
<v Speaker 1>to a point where it could stand as a worthy

0:29:12.240 --> 0:29:15.520
<v Speaker 1>alternative to the IBM PC. And I want to be

0:29:15.560 --> 0:29:18.680
<v Speaker 1>clear here, I'm not saying the Archimedes was a bad computer.

0:29:18.840 --> 0:29:21.880
<v Speaker 1>It wasn't. It was just that it was starting at

0:29:21.920 --> 0:29:24.680
<v Speaker 1>a point where it was at a huge disadvantage to

0:29:24.760 --> 0:29:29.000
<v Speaker 1>the IBM PC, which had an enormous head start. Meanwhile,

0:29:29.360 --> 0:29:31.640
<v Speaker 1>the R and D team with an Acorn was hard

0:29:31.680 --> 0:29:34.600
<v Speaker 1>at work at the next generation of ARM architecture, which

0:29:34.600 --> 0:29:38.160
<v Speaker 1>would be the ARM three, and man, it is so

0:29:38.280 --> 0:29:41.320
<v Speaker 1>much easier to follow this naming convention compared to some

0:29:41.400 --> 0:29:45.120
<v Speaker 1>other technologies, but don't get used to it, because before

0:29:45.200 --> 0:29:48.280
<v Speaker 1>long things are going to get confusing again. So the

0:29:48.480 --> 0:29:51.960
<v Speaker 1>ARM three saw further improvements in design, with an on

0:29:52.200 --> 0:29:56.560
<v Speaker 1>chip data and instruction CASH and a four kilobyte capacity

0:29:56.720 --> 0:30:00.240
<v Speaker 1>of that CASH Ohana a bide is eight bits. A

0:30:00.320 --> 0:30:05.000
<v Speaker 1>kilo bite is one thousand bites, or really because the

0:30:05.000 --> 0:30:08.120
<v Speaker 1>power of two properties, it's more properly one thousand, twenty

0:30:08.200 --> 0:30:11.400
<v Speaker 1>four bites. Will get more into that later. Essentially, this

0:30:11.480 --> 0:30:15.240
<v Speaker 1>meant that more instructions could load into the pipeline for

0:30:15.280 --> 0:30:20.000
<v Speaker 1>the processors simultaneously, which sped things up considerably. In addition,

0:30:20.040 --> 0:30:22.400
<v Speaker 1>the team was able to get a much faster clock speed.

0:30:22.680 --> 0:30:24.960
<v Speaker 1>The previous generation ran at eight Mega hurts, but the

0:30:25.080 --> 0:30:28.480
<v Speaker 1>ARM three hit twenty five Mega hurts. The first Acorn

0:30:28.480 --> 0:30:32.400
<v Speaker 1>computers running on ARM three technology would launch in nineteen nine.

0:30:33.160 --> 0:30:35.440
<v Speaker 1>The team also worked to build a version of ARMED

0:30:35.440 --> 0:30:38.560
<v Speaker 1>two tech that had a lower power requirement than the

0:30:38.720 --> 0:30:42.240
<v Speaker 1>standard armed to processors, and this became known as armed

0:30:42.240 --> 0:30:46.480
<v Speaker 1>to a S Little A Big S. This design was

0:30:46.520 --> 0:30:48.560
<v Speaker 1>aimed at filling a market need for companies that were

0:30:48.560 --> 0:30:53.040
<v Speaker 1>building lower cost portable and handheld devices like communication hand

0:30:53.120 --> 0:30:56.000
<v Speaker 1>sets or portable computers, and the team got as far

0:30:56.040 --> 0:30:59.360
<v Speaker 1>as developing working prototypes of the chip, but never got

0:30:59.400 --> 0:31:02.440
<v Speaker 1>to bring it to market. One thing that was working

0:31:02.480 --> 0:31:07.160
<v Speaker 1>really well, however, was the general dedication to risk based architecture.

0:31:07.440 --> 0:31:10.960
<v Speaker 1>The chips required less power than CISC based systems, and

0:31:11.000 --> 0:31:14.200
<v Speaker 1>with the right software they were incredibly powerful and efficient,

0:31:14.560 --> 0:31:17.640
<v Speaker 1>and they cost much less than the more complicated CISC

0:31:17.800 --> 0:31:20.880
<v Speaker 1>bay systems did. As a result, more companies were getting

0:31:20.920 --> 0:31:25.040
<v Speaker 1>interested in developing risk based technologies. The ARM family of

0:31:25.080 --> 0:31:28.360
<v Speaker 1>processors was a clear candidate for that model, but not

0:31:28.480 --> 0:31:30.880
<v Speaker 1>everyone was keen on the idea of relying on a

0:31:30.920 --> 0:31:36.000
<v Speaker 1>technology that belonged to a specific computer manufacturer, that being Acorn.

0:31:36.440 --> 0:31:40.320
<v Speaker 1>There was, however, a solution to this problem, and I'll

0:31:40.360 --> 0:31:44.080
<v Speaker 1>explain what it was after we return from this quick break.

0:31:51.800 --> 0:31:55.280
<v Speaker 1>Behind closed doors, a series of meetings had been pushing

0:31:55.280 --> 0:31:58.880
<v Speaker 1>the idea of breaking the ARM technology division out of

0:31:58.880 --> 0:32:04.240
<v Speaker 1>Acorn and into its own entity, its own company. Acorn

0:32:04.280 --> 0:32:07.240
<v Speaker 1>itself was part of these discussions, and the idea would

0:32:07.280 --> 0:32:09.640
<v Speaker 1>be that the ARM branch would spin off into a

0:32:09.640 --> 0:32:14.320
<v Speaker 1>new company, and that company would then develop new ARM technologies,

0:32:14.840 --> 0:32:17.959
<v Speaker 1>acting as a business to business enterprise. It would actually

0:32:18.480 --> 0:32:22.160
<v Speaker 1>fabricate the technologies as well. It would be an original

0:32:22.200 --> 0:32:25.160
<v Speaker 1>equipment manufacturer or o e M. That's a type of

0:32:25.200 --> 0:32:28.840
<v Speaker 1>company that makes products that are used as components in

0:32:28.920 --> 0:32:32.800
<v Speaker 1>products made by other companies under their own branding. The

0:32:33.040 --> 0:32:35.360
<v Speaker 1>two other companies that were part of this discussion in

0:32:35.400 --> 0:32:39.120
<v Speaker 1>addition to Acorn were v L s I Technology that

0:32:39.200 --> 0:32:42.600
<v Speaker 1>was the company that had fabricated the original ARM one processor,

0:32:43.120 --> 0:32:49.840
<v Speaker 1>and drumroll please, Apple Computers. Presumably, Apple was keen on

0:32:49.920 --> 0:32:53.280
<v Speaker 1>making use of ARM based processors, but didn't want to

0:32:53.280 --> 0:32:55.880
<v Speaker 1>put out computers that could be said to have Acorn

0:32:55.920 --> 0:33:01.800
<v Speaker 1>computing technology inside them, spending off armwood sidestep that awkward fact. However,

0:33:01.840 --> 0:33:05.320
<v Speaker 1>there is another explanation that isn't quite so, you know, petty,

0:33:05.400 --> 0:33:07.800
<v Speaker 1>and this is that Apple had taken a keen interest

0:33:07.880 --> 0:33:10.920
<v Speaker 1>in the ARM three processors in an effort to develop

0:33:10.960 --> 0:33:13.920
<v Speaker 1>computers that could go up against the IBM compatible four

0:33:14.080 --> 0:33:17.880
<v Speaker 1>D six generation, but the ARM three lacked an integrated

0:33:17.960 --> 0:33:22.479
<v Speaker 1>memory management unit or mm U, and as such, Apple

0:33:22.520 --> 0:33:26.240
<v Speaker 1>felt that the ARM processor design wasn't quite where Apple

0:33:26.360 --> 0:33:30.600
<v Speaker 1>needed it to be. However, developing a new ARM processor

0:33:30.800 --> 0:33:34.720
<v Speaker 1>with an integrated MMU was going to be expensive and

0:33:34.800 --> 0:33:38.320
<v Speaker 1>Acorn Computers just didn't have the resources to do it itself,

0:33:38.680 --> 0:33:42.720
<v Speaker 1>so it really necessitated a move to an independent spinoff

0:33:42.880 --> 0:33:46.200
<v Speaker 1>that had more support behind it. So Acorn Computers would

0:33:46.200 --> 0:33:49.280
<v Speaker 1>supply the design and engineering behind the development of the

0:33:49.360 --> 0:33:52.760
<v Speaker 1>ARM architecture, primarily in the form of a workforce of

0:33:52.840 --> 0:33:58.160
<v Speaker 1>twelve engineers v l S. I would supply the fabrication

0:33:58.200 --> 0:34:01.760
<v Speaker 1>facilities to make physical chick and Apple would supply the

0:34:01.920 --> 0:34:06.400
<v Speaker 1>cold hard cash needed to fund the whole thing. That's

0:34:06.480 --> 0:34:09.200
<v Speaker 1>oversimplifying things a little bit, but generally that's how the

0:34:09.280 --> 0:34:14.560
<v Speaker 1>arrangement worked. The new company was Advanced Risk Machines Limited

0:34:14.680 --> 0:34:18.160
<v Speaker 1>a k a. ARM Limited. The main goal for the

0:34:18.160 --> 0:34:22.480
<v Speaker 1>new company was to advance ARM microprocessors. This new company

0:34:22.480 --> 0:34:28.120
<v Speaker 1>had its fancy schmancy headquarters in a barn in Cambridge, England.

0:34:28.680 --> 0:34:31.080
<v Speaker 1>Typically with tech companies, I talk about starting out in

0:34:31.080 --> 0:34:34.239
<v Speaker 1>a garage. But with ARM it was a barn. And

0:34:34.320 --> 0:34:37.680
<v Speaker 1>so while our story started in the late nineteen seventies

0:34:37.719 --> 0:34:42.160
<v Speaker 1>with Acorn Computers, some ARM histories really point to nineteen

0:34:42.239 --> 0:34:45.480
<v Speaker 1>nine as the beginning of ARM. I think that ends

0:34:45.520 --> 0:34:48.480
<v Speaker 1>up skipping some important early work. However, that's just my

0:34:48.520 --> 0:34:53.040
<v Speaker 1>own personal opinion. Hermann Hauser of Acorn Computers slash Cambridge

0:34:53.080 --> 0:34:57.000
<v Speaker 1>Processing Unit reached out to Robin Saxby to serve as

0:34:57.080 --> 0:35:00.239
<v Speaker 1>the CEO of this new company. Saxby had come from

0:35:00.239 --> 0:35:03.839
<v Speaker 1>Motorola and it worked closely with Acorn Computers back when

0:35:03.920 --> 0:35:07.560
<v Speaker 1>the PCs the company made we're running on Motorola based chips.

0:35:08.040 --> 0:35:11.880
<v Speaker 1>The first processor this new company developed was called wait

0:35:11.960 --> 0:35:16.759
<v Speaker 1>for it, ARMS six. Wait I'm sorry, wait, hang on,

0:35:16.840 --> 0:35:20.879
<v Speaker 1>that can't be right. Six? Hang up? Wasn't the last

0:35:20.920 --> 0:35:24.839
<v Speaker 1>full processor the ARM three? What the heck happened to four?

0:35:24.840 --> 0:35:28.600
<v Speaker 1>And five? Why did we jump to six? What is

0:35:28.640 --> 0:35:31.439
<v Speaker 1>it with tech companies and the desire to leap over

0:35:31.680 --> 0:35:35.520
<v Speaker 1>entire numbers when releasing new versions of products? You know,

0:35:35.600 --> 0:35:39.080
<v Speaker 1>I I wish I had answers for these questions, but

0:35:39.360 --> 0:35:42.920
<v Speaker 1>my research didn't pull up anything definitive. Now that's not

0:35:43.000 --> 0:35:46.240
<v Speaker 1>to say there aren't answers out there. It's entirely possible

0:35:46.280 --> 0:35:49.000
<v Speaker 1>that there is, and I just missed it. But based

0:35:49.000 --> 0:35:52.040
<v Speaker 1>on what I could find, there was never any announcement

0:35:52.239 --> 0:35:56.719
<v Speaker 1>for ARMED four or ARM five as planned commercial products,

0:35:57.200 --> 0:36:00.399
<v Speaker 1>nor any record of an ARMED four or ARE five

0:36:00.440 --> 0:36:03.680
<v Speaker 1>processor being produced, either as a potential product or even

0:36:03.719 --> 0:36:07.520
<v Speaker 1>as just an internal prototype. Based on the information I

0:36:07.560 --> 0:36:12.280
<v Speaker 1>can find, the fourth generation ARM processor was in fact

0:36:12.760 --> 0:36:15.759
<v Speaker 1>the ARMS six, and the new company skipped four and

0:36:15.880 --> 0:36:19.560
<v Speaker 1>five for reasons that are beyond my ken. As it were,

0:36:20.320 --> 0:36:23.560
<v Speaker 1>one thing that definitely shaped the development of the ARM

0:36:23.640 --> 0:36:27.160
<v Speaker 1>six was an intended use for the tech within an

0:36:27.200 --> 0:36:33.080
<v Speaker 1>ambitious Apple product, the Apple Newton. Now a lot has

0:36:33.120 --> 0:36:36.879
<v Speaker 1>been said of the Newton, much of it unkind and

0:36:37.160 --> 0:36:41.520
<v Speaker 1>for arguably justifiable reasons. The Newton was meant to be

0:36:41.719 --> 0:36:46.279
<v Speaker 1>a defining example of personal digital assistance or p d

0:36:46.440 --> 0:36:48.840
<v Speaker 1>a s. In fact, the story goes that the Apple

0:36:48.920 --> 0:36:53.480
<v Speaker 1>CEO of the time, John Scully, coined the phrase personal

0:36:53.560 --> 0:36:58.400
<v Speaker 1>digital assistant to refer specifically to the Newton. It was

0:36:58.680 --> 0:37:02.279
<v Speaker 1>in many ways a incursor to the iPhone, which would

0:37:02.320 --> 0:37:06.440
<v Speaker 1>debut twenty years after the company had first started working

0:37:06.520 --> 0:37:09.800
<v Speaker 1>on the Newton. So you could say that the Newton

0:37:09.960 --> 0:37:12.960
<v Speaker 1>came out twenty years too early, and I think I

0:37:12.960 --> 0:37:14.960
<v Speaker 1>think a lot of people would agree with you. The

0:37:14.960 --> 0:37:18.759
<v Speaker 1>Newton had a tablet style form factor and it used

0:37:18.760 --> 0:37:22.880
<v Speaker 1>a touch screen input with a stylus. Apple was pushing

0:37:22.920 --> 0:37:26.480
<v Speaker 1>really hard for a device that could actually interpret handwriting.

0:37:26.920 --> 0:37:29.839
<v Speaker 1>So theoretically you would be able to write on the

0:37:29.840 --> 0:37:34.000
<v Speaker 1>tablet in normal handwriting and the Newton would interpret each

0:37:34.080 --> 0:37:37.640
<v Speaker 1>letter and capture it in text on screen. And that

0:37:37.760 --> 0:37:40.720
<v Speaker 1>was a super cool and innovative idea. And Apple really

0:37:40.719 --> 0:37:44.200
<v Speaker 1>needed a processor that could power operations without requiring too

0:37:44.239 --> 0:37:48.239
<v Speaker 1>much juice, because a handheld computing device isn't really that

0:37:48.360 --> 0:37:50.640
<v Speaker 1>useful if it can only operate for an hour or

0:37:50.680 --> 0:37:53.400
<v Speaker 1>so before it needs a recharge. Would that in mind?

0:37:53.760 --> 0:37:57.000
<v Speaker 1>The ARM six micro architecture began to take shape with

0:37:57.160 --> 0:37:59.959
<v Speaker 1>lots of decisions in the development guided by the knee

0:38:00.000 --> 0:38:03.160
<v Speaker 1>eads of the Newton. The name of the family of

0:38:03.239 --> 0:38:08.040
<v Speaker 1>ARM six microprocessors, because there were a few chips that

0:38:08.160 --> 0:38:12.439
<v Speaker 1>fell under this designation, was the ARMS six macro cell.

0:38:12.920 --> 0:38:15.960
<v Speaker 1>And I'll give a few of the changes that happened

0:38:16.000 --> 0:38:19.319
<v Speaker 1>between the ARM three generation and the ARM six. For

0:38:19.440 --> 0:38:23.000
<v Speaker 1>one thing, the process had become more precise. The ARM

0:38:23.040 --> 0:38:27.640
<v Speaker 1>three micro architecture used a one point five micron process,

0:38:27.680 --> 0:38:31.640
<v Speaker 1>whereas the ARM six shrank that down to point eight microns.

0:38:31.680 --> 0:38:33.759
<v Speaker 1>So what does that mean, Well, it means that the

0:38:33.800 --> 0:38:37.960
<v Speaker 1>individual components on the chip could be made much smaller,

0:38:38.320 --> 0:38:41.560
<v Speaker 1>which also means you could fit more components onto a

0:38:41.640 --> 0:38:45.720
<v Speaker 1>microprocessor without having to increase the size of the actual

0:38:45.760 --> 0:38:49.279
<v Speaker 1>processor chip. This falls in line with an observation that

0:38:49.360 --> 0:38:52.920
<v Speaker 1>Gordon Moore had made decades earlier, where he observed that

0:38:53.000 --> 0:38:57.840
<v Speaker 1>market influences incentivized companies to develop new ways to cram

0:38:58.000 --> 0:39:02.600
<v Speaker 1>smaller and smaller components onto a square inch of silicon wafer.

0:39:02.920 --> 0:39:06.000
<v Speaker 1>The effect of this is that the number of transistors

0:39:06.000 --> 0:39:09.839
<v Speaker 1>you could find on microprocessors would effectively double every two

0:39:09.920 --> 0:39:13.600
<v Speaker 1>years or so. Now these days we tend to reinterpret

0:39:13.719 --> 0:39:17.360
<v Speaker 1>this to say that a computer's processing power doubles every

0:39:17.440 --> 0:39:20.719
<v Speaker 1>two years or so due to Moore's law, and it's

0:39:20.719 --> 0:39:23.719
<v Speaker 1>really more of an observation, but that's a matter for

0:39:23.760 --> 0:39:26.400
<v Speaker 1>another episode. The point I really want to make is

0:39:26.440 --> 0:39:29.759
<v Speaker 1>that moving from a one point five micron process to

0:39:29.880 --> 0:39:33.560
<v Speaker 1>a point eight micron process is pretty much in line

0:39:33.600 --> 0:39:36.560
<v Speaker 1>with that observation, as the point eight micron components were

0:39:36.600 --> 0:39:40.480
<v Speaker 1>just a little over half the size of the one

0:39:40.520 --> 0:39:46.040
<v Speaker 1>point five micron version found in ARMED three microprocessors. In addition,

0:39:46.239 --> 0:39:49.719
<v Speaker 1>the ARMS six increased the address space from twenty six

0:39:49.719 --> 0:39:53.160
<v Speaker 1>bits to thirty two bits. Address space means the amount

0:39:53.200 --> 0:39:57.040
<v Speaker 1>of memory that's set aside for a particular computational component,

0:39:57.520 --> 0:40:00.960
<v Speaker 1>like a file or a connected device. Essentially, a computers

0:40:01.000 --> 0:40:05.480
<v Speaker 1>processor uses memory addresses in order to access information stored

0:40:05.520 --> 0:40:08.759
<v Speaker 1>within the computer's actual memory. It's how a processor can

0:40:08.800 --> 0:40:13.040
<v Speaker 1>pull relevant information for whatever process it needs to perform.

0:40:13.120 --> 0:40:16.080
<v Speaker 1>The term twenty six bit or thirty two bit tells

0:40:16.120 --> 0:40:20.359
<v Speaker 1>us how much memory the system can address. Now, remember

0:40:20.400 --> 0:40:23.759
<v Speaker 1>that a bit is a unit of binary information, either

0:40:23.840 --> 0:40:26.600
<v Speaker 1>a zero or a one. So each bit can have

0:40:26.760 --> 0:40:31.760
<v Speaker 1>one of two states or two values zero one, two states,

0:40:32.320 --> 0:40:34.720
<v Speaker 1>and you can have twenty six bits with the twenty

0:40:34.760 --> 0:40:38.840
<v Speaker 1>six bit system with that older are in three address space,

0:40:38.880 --> 0:40:41.320
<v Speaker 1>and that meant that you had a maximum of two

0:40:41.520 --> 0:40:46.960
<v Speaker 1>to the twenty six power number of address spaces. So

0:40:47.000 --> 0:40:49.120
<v Speaker 1>that meant you can have a maximum of two to

0:40:49.200 --> 0:40:52.920
<v Speaker 1>the twenty six power number of address spaces. That translates

0:40:52.960 --> 0:40:56.600
<v Speaker 1>to more than sixty seven million values. However, a thirty

0:40:56.640 --> 0:40:59.200
<v Speaker 1>two bit address space knocks this up to two to

0:40:59.320 --> 0:41:02.360
<v Speaker 1>the thirties second power values, and that goes up to

0:41:02.440 --> 0:41:06.520
<v Speaker 1>nearly four point three billion values. So you see how

0:41:06.880 --> 0:41:10.480
<v Speaker 1>a relatively small increase in bit size can have a

0:41:10.600 --> 0:41:15.839
<v Speaker 1>much bigger effect. It's not doubling or quadrupling, it's much

0:41:15.880 --> 0:41:19.040
<v Speaker 1>bigger than that. This meant that the ARM six could

0:41:19.080 --> 0:41:23.000
<v Speaker 1>map up to four Gibby bytes of memory. Gibby bytes.

0:41:23.040 --> 0:41:25.680
<v Speaker 1>I said that correctly. This is a peculiar measurement, right,

0:41:26.000 --> 0:41:29.000
<v Speaker 1>because I'm sure you've heard of gigabytes, but this is

0:41:29.200 --> 0:41:34.120
<v Speaker 1>gibby bytes. Gibby g I b I means too to

0:41:34.239 --> 0:41:38.360
<v Speaker 1>the power of thirties, So a gimba byte means one billion,

0:41:38.560 --> 0:41:43.360
<v Speaker 1>seventy three million, seven one eight hundred four bytes. You

0:41:43.400 --> 0:41:46.160
<v Speaker 1>can see how saying one give byte is more efficient.

0:41:46.680 --> 0:41:49.839
<v Speaker 1>Isn't that helpful? Anyway? The ARM six micro architecture can

0:41:49.880 --> 0:41:53.040
<v Speaker 1>map up to four of those bad boys in memory.

0:41:53.280 --> 0:41:56.080
<v Speaker 1>A gimme byte, in case you're curious, is equal to

0:41:56.120 --> 0:41:59.640
<v Speaker 1>about one point oh seven four gigabytes. The whole story

0:41:59.640 --> 0:42:04.040
<v Speaker 1>behind the various binary prefixes, because there's also kidby, maybe

0:42:04.040 --> 0:42:07.040
<v Speaker 1>and tabby and more. All that is really interesting, but

0:42:07.080 --> 0:42:10.400
<v Speaker 1>I'll save that for some other episode. The ARM six

0:42:10.680 --> 0:42:14.360
<v Speaker 1>was backwards compatible with the old ARM three architecture. It

0:42:14.440 --> 0:42:17.200
<v Speaker 1>had a twenty six bit mode of operation that it

0:42:17.239 --> 0:42:19.719
<v Speaker 1>could switch to instead of its thirty two bit. This

0:42:19.800 --> 0:42:22.920
<v Speaker 1>helped avoid making the older software that had been designed

0:42:22.920 --> 0:42:26.440
<v Speaker 1>for ARM three systems from going totally obsolete with the

0:42:26.480 --> 0:42:29.880
<v Speaker 1>release of the new micro architecture. It had the integrated

0:42:30.000 --> 0:42:34.160
<v Speaker 1>memory management unit that Apple wanted. It also had some

0:42:34.280 --> 0:42:37.239
<v Speaker 1>new processor instructions, but I'm not going to go too

0:42:37.280 --> 0:42:39.479
<v Speaker 1>far into the details, as I feel like it would

0:42:39.520 --> 0:42:42.560
<v Speaker 1>largely be lost and we've got a lot more to

0:42:42.600 --> 0:42:46.239
<v Speaker 1>say about ARM coming up anyway. The first Newton model

0:42:46.320 --> 0:42:52.280
<v Speaker 1>launched in with an ARM six ten risk microprocessor, and unfortunately,

0:42:52.560 --> 0:42:56.040
<v Speaker 1>it would ultimately be something of a clunker. The chief

0:42:56.040 --> 0:42:58.319
<v Speaker 1>problem with the Newton was not the fall of the

0:42:58.400 --> 0:43:03.400
<v Speaker 1>ARM processor. It was that the most anticipated feature, the

0:43:03.520 --> 0:43:08.760
<v Speaker 1>handwriting recognition capability, just wasn't very good. There were lots

0:43:08.760 --> 0:43:12.320
<v Speaker 1>of reviews that criticized the implementation of this feature, documenting

0:43:12.360 --> 0:43:15.600
<v Speaker 1>times when the system performed poorly and just got stuff wrong.

0:43:16.200 --> 0:43:20.080
<v Speaker 1>Fans of the cartoon sitcom The Simpsons might remember an

0:43:20.080 --> 0:43:24.000
<v Speaker 1>episode where they made fun of this. The school bully,

0:43:24.160 --> 0:43:27.280
<v Speaker 1>Nelson had one of his cronies take down the note

0:43:27.480 --> 0:43:31.759
<v Speaker 1>beat up Martin on his Newton, but the device interpreted

0:43:31.800 --> 0:43:34.799
<v Speaker 1>it as eat up Martha. So Nelson then grabs the

0:43:34.800 --> 0:43:39.360
<v Speaker 1>Newton and throws it at Martin, thus fulfilling the prophecy. Anyway,

0:43:39.480 --> 0:43:43.680
<v Speaker 1>the Newton had a troubled launch, which is putting it mildly,

0:43:44.000 --> 0:43:47.640
<v Speaker 1>and it would transition into a troubled life cycle. The

0:43:47.680 --> 0:43:50.960
<v Speaker 1>device failed to get a really good hold in the marketplace,

0:43:51.040 --> 0:43:54.359
<v Speaker 1>even as new versions of the hardware were released, and

0:43:54.440 --> 0:43:57.839
<v Speaker 1>upon his return to Apple, Steve Jobs would discontinue the

0:43:57.840 --> 0:44:03.440
<v Speaker 1>Newton in n eight. Meanwhile, over at ARM, CEO Robin

0:44:03.520 --> 0:44:06.600
<v Speaker 1>Saxby had a brilliant idea. He saw that depending on

0:44:06.760 --> 0:44:10.400
<v Speaker 1>being a single source of fabrication for the ARM microprocessors

0:44:11.040 --> 0:44:15.000
<v Speaker 1>is way too limiting. ARM needed more customers and would

0:44:15.000 --> 0:44:18.600
<v Speaker 1>also need to meet the production needs of those customers.

0:44:18.960 --> 0:44:22.040
<v Speaker 1>But being a small operation, this was a tough problem

0:44:22.080 --> 0:44:25.920
<v Speaker 1>to be in you couldn't easily scale up. The solution

0:44:26.040 --> 0:44:29.840
<v Speaker 1>was an interesting one. Saxby led the company toward moving

0:44:29.840 --> 0:44:34.400
<v Speaker 1>to a more intellectual property approach to micro architecture. So

0:44:34.600 --> 0:44:40.000
<v Speaker 1>rather than produce the chips themselves. ARM Limited would license

0:44:40.160 --> 0:44:44.759
<v Speaker 1>the design and instruction sets of these chips out to

0:44:44.960 --> 0:44:49.360
<v Speaker 1>other fabricators. They would become what is called a fabless

0:44:49.560 --> 0:44:53.359
<v Speaker 1>chip designer. They didn't produce the hardware themselves. The other

0:44:53.440 --> 0:44:58.120
<v Speaker 1>chip manufacturers could produce their own ARM microprocessors built on

0:44:58.200 --> 0:45:02.359
<v Speaker 1>the license designs coming from ARM itself. This move would

0:45:02.400 --> 0:45:06.160
<v Speaker 1>prove to be a game changer for the company. We're

0:45:06.160 --> 0:45:09.360
<v Speaker 1>gonna leave off there for this episode. In our next episode,

0:45:09.360 --> 0:45:12.160
<v Speaker 1>I'll pick up from that point forward, and we'll talk

0:45:12.200 --> 0:45:17.200
<v Speaker 1>about how ARM evolved over the years and cemented itself

0:45:17.239 --> 0:45:21.640
<v Speaker 1>as a huge player in the microprocessor space, as well

0:45:21.680 --> 0:45:25.080
<v Speaker 1>as talk about the acquisition by in video, at least

0:45:25.080 --> 0:45:28.120
<v Speaker 1>the proposed acquisition at the time of this recording, and

0:45:28.200 --> 0:45:31.640
<v Speaker 1>what that means. If you guys have suggestions for future

0:45:31.719 --> 0:45:34.080
<v Speaker 1>topics that I should cover on tech Stuff, reach out

0:45:34.080 --> 0:45:36.760
<v Speaker 1>to me. You can do so on Twitter. The handle

0:45:36.920 --> 0:45:40.040
<v Speaker 1>is text stuff H s W and I'll talk to

0:45:40.040 --> 0:45:48.640
<v Speaker 1>you again really soon. Text Stuff is an I Heart

0:45:48.719 --> 0:45:52.479
<v Speaker 1>Radio production. For more podcasts from my Heart Radio, visit

0:45:52.520 --> 0:45:55.560
<v Speaker 1>the I Heart Radio app, Apple Podcasts, or wherever you

0:45:55.640 --> 0:46:00.239
<v Speaker 1>listen to your favorite shows. Zero