The World's First Microprocessor: F-14 Central Air Data Computer

Alexander the ok
17 Jan 202454:43

Summary

TLDRThe MP944 microprocessor was developed in 1970 for the F-14 fighter jet and was far more advanced than the Intel 4004, often considered the first microprocessor. The MP944 utilized parallel processing and pipelining to perform complex calculations for the jet's fly-by-wire system. Though largely forgotten today, analysis of the MP944's innovative architecture suggests home computing could have progressed very differently if knowledge of it had been made public earlier.

Takeaways

  • 😲 The MP944 microprocessor was developed in 1970, before the Intel 4004, and was much more advanced
  • 🤓 The MP944 consisted of 6 ICs - CPU, ROM, RAM, parallel multiplier, parallel divider, and data steering unit
  • 🛫 It was used in the Central Air Data Computer for the F-14 Tomcat fighter jet
  • 💪🏼 The MP944 could perform arithmetic on 20-bit numbers at high speed using parallel processing
  • 🤔 There is debate over whether the MP944 or Intel 4004 was the first true microprocessor
  • 👷‍♂️ The entire 6000+ bit MP944 program was hand-coded in binary in just 3 months
  • 🔬 The MP944 chips were tested using a software simulator and a hardware simulator
  • 😎 The MP944 automated control of the F-14's variable wing geometry during flight
  • ❌ The MP944 project was kept secret by the US military for over 25 years
  • 🪦 Iran maintains the last F-14s still in service, but lacks MP944 chips due to US destruction of stock

Q & A

  • What was the MP944 microprocessor used for?

    -The MP944 was used as the central processing unit for the Central Air Data Computer (CADC) on the US Navy's F-14 Tomcat fighter jet. It provided flight control, instrumentation, and weapons systems functionality.

  • How did the MP944 compare to other microprocessors of the era?

    -The MP944 was far more advanced than other microprocessors of the early 1970s. It had a 20-bit architecture, parallel processing capabilities, and innovative design features that weren't seen in consumer chips until the 1980s.

  • Why was the MP944 kept classified for over 25 years?

    -The MP944 was part of the classified avionics system of the F-14 Tomcat. Revealing its capabilities could have compromised national security. It was only declassified in 1998 after the F-14 was retired from frontline US Navy service.

  • What made programming the MP944 challenging?

    -The MP944 had no compiler, so its roughly 3000 instructions of code had to be written in binary machine code. Also, code had to be simulated before being burned onto physical ROM chips since changes were difficult.

  • How did the MP944 achieve high performance?

    -Through parallel processing units, pipelining, optimized hardware for key operations like multiplication, and innovations like adding numbers as they were transferred between chips.

  • What was innovative about the MP944's architecture?

    -It had separate chips for critical tasks like I/O, steering logic, arithmetic, and control flow. This modular architecture with dedicated hardware units enabled high performance.

  • How were the MP944 chips tested?

    -The team wrote test programs that executed on every transistor to detect failures. They also built a physical simulator from discrete components to functionally validate the chips.

  • Why did the F-14 Tomcat need such an advanced flight computer?

    -The F-14 was designed to be an agile, maneuverable fighter for air combat and ground attack. The MP944 automated complex tasks like sweeping the variable-geometry wings during high-G maneuvers.

  • What happened to the F-14 Tomcats still flying?

    -Some F-14s remain active in the Iranian Air Force, having been sold to Iran before the 1979 revolution. The US destroyed its remaining F-14 fleet in 2006 to prevent spare parts from reaching Iran.

  • Could the MP944 have changed the course of computing history?

    -Possibly, if its design had been made public earlier. The MP944's advanced architecture could have influenced microprocessors for personal computers in the 1970s and 80s.

Outlines

00:00

😀 Fading fads and cutting edge tech of the early 1960s - IBM 1401 and PDP-1

The two popular but extremely expensive and bulky computer options in 1961 were the IBM 1401, weighing over a tonne and costing $3.5 million in 2024 dollars, and the lighter but still large and costly PDP-1 at 730kg and over $1 million in 2024 dollars. The high price was due to the discrete transistor technology requiring extensive manual assembly.

05:04

😎 F-14 Tomcat - most intimidating fighter jet with swing wings needing computer control

The F-14 Tomcat was designed to replace the F-4 as the US Navy's carrier aircraft, with its variable wing geometry giving it a highly distinctive and intimidating appearance. The position of the swing wings was automatically controlled by the Central Air Data Computer (CADC) to ensure optimal configuration for speed and altitude without pilot input.

10:07

😖 Complex supersonic aerodynamics solved in hardware not software

The CADC's microprocessor MP944 differed from the general purpose Apollo Guidance Computer by solving difficult aerodynamic problems via specialized hardware rather than complex software. This included parallel processing units for fast multiplication and division but required programming in binary since there was no compiler.

15:07

😮 MP944 - 6 chips forming a complete and bizarre computer

The MP944 consisted of 6 chips - CPU, RAM, ROM, parallel multiplier, parallel divider, and data steering unit which handled I/O. The limited pins required serial communication, slowing transfers but the parallel units enabled simultaneous operations. Multiple units controlled by individual ROMs formed the complete CADC system.

20:14

😯 Intel 4004 - remarkable yet highly compromised achievements

Despite its historical significance, the Intel 4004 was extremely limited compared to the MP944, with only a 4-bit bus enabling a max count of 16. Instructions had to be serialized across 8 cycles with no pipelining. However, producing the 4004 cheaply still required multiple innovations.

25:15

🤔 Complex definitions - what was the first microprocessor?

There is no consensus on the first microprocessor given ambiguities over required number of chips and functionality. The MP944 appears to predate the 4004 and offered far greater capabilities but relied on 6 chips. The definition focuses on commercial availability rather than purely technical milestones.

30:20

😊 Extreme MilSpec design requirements - impressive innovations

Impressively, the MP944 CADC met military specifications, operating from -55C to 125C. Real-time failure detection was implemented by software checks on every transistor. Serial interfaces between limited pins were used to meet size constraints of a 40 square inch board.

35:21

🤯 Parallel processing enabled 600 calculations per 1/18 second

Parallel processing units for multiplication and division enabled the CADC to perform the required 600 calculations every 1/18th second. The CPU specialized in limit functions, while addition/subtraction occurred in the data steering unit, maximizing parallelism across the architecture.

40:24

😵‍💫 Programming marathon - simulating hardware before manufacturing

The entire CADC program was coded in 3 months in pure binary since no compiler existed. A hardware simulator using discrete components and a Fortran software simulator were used to validate the 6000+ bit program prior to burning the final ROMs.

45:29

🏴‍☠️ F-14s still flying in Iran - MP944 chips may be only remaining examples

Due to ongoing Iranian operation, destroyed US F-14 stocks may mean Ray Holt's personal MP944 chip collection are the only surviving samples. The classified nature of the project means its historical significance was unknown when wiped.

Mindmap

Keywords

💡Microprocessor

A microprocessor is an integrated circuit that contains the logic and control elements of a computer's central processing unit. The video discusses the origin of the microprocessor and debates which devices should properly be considered the first microprocessors, with the MP944 and Intel 4004 being prime contenders. The small, affordable microprocessors developed in the 1970s were a pivotal development that enabled the rise of personal computing.

💡MP944

The MP944 was a microprocessor designed by Ray Holt in the late 1960s for use in the F-14 fighter jet. It consisted of 6 chips and was remarkably advanced for the time, using concepts like parallel processing and pipelining. The video argues it may have been the first true microprocessor, though its status is debated since it was not sold commercially.

💡Intel 4004

The Intel 4004 was a 4-bit microprocessor released commercially in 1971. It is widely considered the first commercial microprocessor, though the video argues the MP944 actually predated it in development. The 4004 had significant limitations compared to the MP944 but was mass produced and sold affordably, making it pivotal to the rise of personal computing.

💡CADC

The Central Air Data Computer (CADC) used the MP944 as its microprocessor. It was built into the F-14 to control the jet's wing surfaces, provide flight data to the pilot, and interface with the weapons system.

💡Parallel processing

The MP944 utilized parallel processing, running some operations like multiplication on separate dedicated chips simultaneously. This increased the computer's speed enormously compared to sequential processing.

💡Pipelining

Pipelining is an efficiency technique where the output of one operation is used as input to the next before the first is fully complete. The MP944 was the first microprocessor to employ pipelining for faster performance.

💡MilSpec

MilSpec refers to US military specifications that defense electronics must meet. The CADC's ability to operate from -55C to 125C demonstrates it met stringent environmental MilSpecs.

💡Swing wings

The F-14 had variable-geometry swing wings that swept forward for low speed flight and back for high speed flight. The CADC automatically positioned the wings based on flight conditions.

💡Fly-by-wire

Fly-by-wire means flight control surfaces are actuated by electronic signals rather than direct mechanical linkages. The CADC provided partial fly-by-wire capability for the F-14's wings, flaps, and glove vanes.

💡Classified

The MP944 and CADC were classified military projects in the late 1960s. The video argues that personal computing history may have progressed differently if these innovations were made public earlier.

Highlights

The MP944 microprocessor was completed in June 1970, over a year before the Intel 4004 was released in November 1971.

The MP944 consisted of 6 ICs - CPU, RAM, ROM, parallel multiplier, parallel divider, and steering logic unit.

The MP944 had a 20-bit architecture and could natively handle integers between -524,288 to 524,288.

The MP944 CPUs specialized ALU was optimized to perform limit functions frequently required for flight calculations.

The MP944 used pipelining and parallelization techniques to maximize performance from its 375 kHz clock speed.

The MP944's parallel multiplier and divider were some of the most complex chips of their time.

The MP944's entire 60000 bit program was written in binary in just 3 months.

The MP944 was much more application-specific compared to more general-purpose consumer microprocessors.

The Intel 4004 was designed primarily for calculators with its simple 4-bit architecture.

The 4004 required instructions to be serialized across 8 clock cycles due to its 4-bit data bus.

The 4004 had only 640 bytes of RAM available compared to the MP944's dedicated RAM chips.

The MP944 was significantly more complex and faster than the 4004.

The F-14 Tomcat was the first aircraft to utilize a microprocessor-based flight computer.

The MP944 enabled advanced functions like automated wing positioning and integrated weapons systems.

Iran operates the last remaining F-14 Tomcats, having kept them operational for over 40 years.

Transcripts

play00:00

It's late 1961: let's go shopping for a cheap,  small computer. The popular choice is this:  

play00:08

this badly green screened IBM 1401. Complete with  a punch card reader and printer, it weighs about a  

play00:13

tonne and costs about $3.5 million in 2024 money. If that's a little too much, you could always try  

play00:20

out one of these: a PDP-1. At 730kg and  a touch over $1 million 2024 dollars.  

play00:29

There are other options available, but none weight  less than a grand piano. And all cost more than a  

play00:34

mansion. That is because every digital computer  currently in production comprises of individual,  

play00:40

or discrete, transistors. These must be  installed individually into circuit boards,  

play00:45

which are connected into logic units, to form  a processor. Collectivley, these draw a lot of  

play00:50

power, create a lot of heat, require a lot of  room and require a lot of time to assemble.  

play00:57

Now let's skip forward just 10 years to late 1971.  You, a member of the public, can order one of  

play01:04

these for just $450 in 2024 money. This is a fully  functional processor on a chip: a microprocessor.  

play01:13

It is several orders of magnitude smaller and  cheaper than the mainframes of the early 1960's:  

play01:18

quite an astonishing change in just a decade. As far as almost everyone on Earth is concerned,  

play01:24

this is the first chip-scale  processor ever developed.  

play01:27

Now let's skip forward another 27 years to 1998. A  paper from 1970 is quietly declassified. It turns  

play01:35

out there was another microprocessor in existance  more than a year before the 4004 was released:  

play01:41

it was called the MP944. In fact, it was  significantly more advanced than the 4004:  

play01:48

boasting some features that weren't seen in  consumer microprocessors until the 1980s.  

play01:54

Why was this pivotal piece of computing history  kept secret for more than 25 years? Because the  

play02:01

MP944 was the Air Data Computer for the US Navy's  flagship fighter jet: the F-14 Tomcat.  

play02:52

OK, and back to the present day. Every video I ve made in the past has  

play02:57

been about something I d known about for years.  This one is a bit different. It was suggested  

play03:03

by a viewer. I ve covered similar topics but I  d barely heard of the MP944 until a few months  

play03:09

ago .and reading up on it has been fascinating.  It was created by a team of about 25 Engineers  

play03:17

at Garrett AirResearch over the course of 2  years. The designers of the chips themselves  

play03:22

were Steve Geller Ray Holt .someone whos name  will crop up repeatedly in this video.  

play03:31

Before we go into the details just a quick  couple of points:As with all my videos, this  

play03:37

is arranged into chapters, so feel free to skip  ahead if a particular section isn't of interest:  

play03:42

I do tend to go quite in depth on the technical  details.We all make mistakes. Unfortunately,  

play03:59

youtube doesn't me to make minor corrections once  a video is published. So, if I get anything wrong,  

play04:05

let me know in the comments. However, I will  add any known corrections to a pinned comment:  

play04:11

I ask that you check this first before posting. For clarity: MP944 refers to the collection of  

play04:19

chips. These chips were integrated  together to form a computer known as  

play04:23

the Central Air Data computer, or CADC.  So, the mp944 was the microprocessor,  

play04:31

the cadc was the computer. Let's take a step back and discuss the F-14. I've  

play04:44

stirred up controversy in the past by saying this.  'Most supersonic aircraft are inherantly unstable.  

play04:51

That's the reason most of them look really ugly'. 14 year old me would be EXTREMELY angry if he  

play04:57

heard me saying that. So let me clarify what I  meant there. If you are like 98% of my audience,  

play05:03

you are a man. Go and find the nearest woman or  child and ask them what is the best looking of  

play05:09

these aircraft. They'll usually pick the one that  isn't big scary and pointy. Years ago I helped out  

play05:17

at an airshow, I was showing visitors around the  RAF trainer aircraft: one of these. We were parked  

play05:37

right next to a Tornado fighter....and we assumed  no one would care about our tiny little propellor  

play05:43

plane. We were wrong: we were totally inundated  with kids who wanted to sit in the actual plane,  

play05:49

not the weird looking jet. So that;s what I mean when I say  

play05:54

'ugly'. Fighter aircraft are most certainly  not designed to look good. But a side effect  

play06:00

is they tend to look pretty intimidating. And the most intimidating looking fighter ever  

play06:06

built has to be the F-14. Designed to replace  the F-4 as the US Navy's main carrier aircraft,  

play06:13

it served until 2006 for the US military.  In fact....some are still in service with  

play06:19

the Iranian air force today but that's  something we'll come back to later.  

play06:24

Now, I can;t really talk about this jet without  mentioning one of the reasons it is famous. It  

play06:31

was in top gun. You know, the film about  volleyball. And I'm going to stir up more  

play06:36

controversy here.....I don;t understand why that  film was so popular. Is it one of those bad films  

play06:41

that people pretend to like to be funny and I m  not getting the joke? I don t know, I'll leave  

play06:42

it there and not mention top gun again.... One of the reasons it is so distinctive is also  

play06:49

the reason it needed a flight computer: variable  wing geometry...also known as swing wings.  

play06:57

Every time I try and discuss supersonic  aerodynimics I get something wrong so  

play07:01

we're going to keep this really simple. When  flying at low speed, for example on approach  

play07:07

to landing, we want as much lift as possible to  maintain stable flight. This is when the F-14  

play07:13

would swing the wings forward into what I like  to call the 'T-pose'. However, that creates a  

play07:19

high aspect ratio, which creates drag. So, if we  want to go fast, we go from a 'T-pose' into what  

play07:26

I call the 'Naruto Run' configuration. Jokes aside, improvements in aerodynamic  

play07:33

computation and design in recent decades have  rendered variable wing geometry obsolete. But  

play07:39

these were all the rage in the 1960s and 70s. With the computer enabled, the wing position  

play07:45

was set automatically with no pilot  input. This ensured the aircraft was  

play07:50

in the appropriate configuration for the  given speed and altitude. Furthermore,  

play07:55

it reduced task loading on the pilot and reduced  the chance of the configuration being changed  

play07:59

during the wrong phase of flight. In a previous  video, I heavily criticised Virgin Galactic for  

play08:06

not using a flight computer to actuate the  rotating wing on spaceshiptwo. In fact, that  

play08:11

was the cause of a fatal accident in 2014. It's  nice to know the F-14 was able to autonomously  

play08:18

change it's wing geometry via a computer more  than 40 years before spaceshiptwo first flew.  

play08:26

Earlier similar aircraft such as the F-111  were notoriously difficult to control during  

play08:31

the transition from one wing configuration to  another. It's not difficult to imagine why:  

play08:45

swinging the wings completely altered the  flight characteristics of the aircraft in a  

play08:48

few seconds. And this may be carried out whilst  flyting at transonic speeds....where flight  

play08:54

characteristics are already unpredictable. I always imagined the F-14 would require straight  

play08:59

and level flight and a lot of care to transition  from one configuration to the other. And I was  

play09:04

completely wrong. There are videos of it sweeping  the wings back and forward while inverted,  

play09:09

mid maneuver, in steep banks. Think of an attitude  and there is probably a video of an F-14 activley  

play09:15

sweeping its wings back whilst in that attitude  somewhere. As most of these videos are from  

play09:21

airshows, the pilot manually overrode the computer  to select the wing position. But the movement  

play09:27

itself was still controlled by the computer  to ensure stable flight was maintained.  

play09:34

When the wings were swept back, this posed  another problem I've discussed previously  

play09:38

on this channel. Those large lifting surfaces  moving backwards moved the centre of pressure  

play09:44

backwards. Normally this is a good thing:  we want the centre of pressure to remain  

play09:50

behind the Centre of gravity to maintain stable  flight. But in this case, it was too far back:  

play09:59

reducing maneuverability....not something you  want for an aircraft designed for dogfighting.  

play10:06

So, small surfaces could be extended from the  front of the wings. These were known as glove  

play10:13

vanes. Again, it wouldn;t be desirable to  extend these at a fixed rate as they would  

play10:19

radically alter the aircrafts handling in  a matter of seconds. So, the computer also  

play10:23

controlled the extension and retraction of  the glove vanes. Later in the F-14s life,  

play10:29

these tended to be disabled altogether due to  their mechanical complexity....but the computer  

play10:34

was always able to control them if needed. The final mechanical output controlled by the CADC  

play10:42

was the maneuvering flaps. The primary control  surfaces for rolling were the tailerons and  

play10:47

spoliers, though the latter could only be employed  at low speed. However, by partially extending the  

play10:53

flaps, the F-14 was able to enter a tighter roll  than would be otherwise possible. If the flaps  

play11:00

were set to maneuvering mode, the CADC actuated  them automatically to meet the pilots inputs.  

play11:07

So, physically, the CADC was required to actuate  some of the F-14s secondary control surfaces:  

play11:13

namely the variable wings, glove vanes  and maneuvering flaps. Not quite a full  

play11:19

fly-by-wire aircraft....but the CADC did act as  a fly-by-wire computer for these surfaces.  

play11:26

But it wasn t called the Central Partial Fly by  wire computer , so what about the Data in CADC?  

play11:34

Anyone who has flown a light aircraft will be  familiar with the mechanical instruments which  

play11:38

are able to convert air pressure and temperature  to readings such as airspeed and altitude. At  

play11:44

high airspeeds and altitudes however, this is  surprisingly difficult. Due to factors such  

play11:49

as the compressibility of air and changing  mach limit with temperature, the formulae to  

play11:54

determine speed and altitude become non linear.  So, a simple mechanical indicator is no longer  

play12:00

sufficient. Supersonic aircraft of the 1960s such  as the F-4 used complex mechanical computers to  

play12:07

provide flight data to the pilot. The CADC,  however, was the first microprocessor based  

play12:13

flight computer to achieve this. Specifically,  it provided altitude, temperature and airspeed  

play12:20

to the pilot .and probably some other  metrics that I can t find references to.  

play12:26

And this leads us onto the final function of the  CADC. It provided necessary data to the weapons  

play12:32

system. The F-14 had a particularly  advanced weapons system for the time,  

play12:38

able to track and target multiple airborne  targets simultaneously. Six simultaneously  

play12:44

to be specific. Prior to firing air-to-air  missiles, the state vector of the missile was  

play12:49

passed to the weapons system. A crucial metric was  the angle of attack of the aircraft, as this would  

play12:56

determine the initial attitude corrections  necessary for the missile after firing.  

play13:01

The needs of the weapons system also give  an insight into the requirement for a 20  

play13:05

bit data length. The required resolution for  the altimeter was just 1ft. Smart bombs did  

play13:13

not yet exist, so to line up for a bombing run,  the speed and altitude of the aircraft were used  

play13:17

to predict the ballistic trajectory of a bomb,  providing the pilot with an optimised time to  

play13:23

release. In fact, the aircraft was flown  on altitude hold during a bombing run.  

play13:29

With a service ceiling around 50000ft (which  is already a 16 bit number), high altitude runs  

play13:36

could foreseeably take place in rarefied air where  the difference in pressure between altitudes was  

play13:41

minimal: hence the need for 20 bit precision. And with that, let's learn about  

play13:51

microprocessors. The term 'microprocessor'  

play13:53

was barely used during the early 1970s. It  was largely retroactivley applied to all the  

play13:58

devices we'll discuss. Ironically, it isn't  a common term today either what was called a  

play14:05

'microprocessor' in the past is now referred  to as a CPU. More specialised hardware such  

play14:11

as GPUs, microcontrollers and FPGAs would also  fall under the definition of microprocessor.  

play14:17

So, what IS a microprocesssor? There is no official definition as  

play14:22

such. So let's just go with Wikipedia. That states  'A microprocessor is a computer processor where  

play14:30

the data processing logic and control is included  on a single integrated circuit (IC), or a small  

play14:37

number of Ics'. And with that we immediately  run into an ambiguity. 'A small number of Ics'.  

play14:46

What exactly is defined as 'a small number'?  Does something that can only input operate  

play14:52

on and output 1 bit count as a microprocessor? Do  the logic elements all have to be on one chip?  

play15:00

The Intel 4004 is most commonly cited as the first  Microprocessor, it was part of a 4-chip collection  

play15:07

referred to as the MCS-4. We will be exploring  the 4004 in more depth later. However, the Intel  

play15:15

4004's claim is far from solid. In fact, Intel  themselves refer to it as the first 'commercially  

play15:23

available' microprocessor. Let's compare it  with the MP944. And, I'll warn you, we are going  

play15:31

to be seriously splitting some hairs here. Ok so which came first? There is no contest here.  

play15:50

The MP944 chipset was completed in June 1970. The  first 4004 was produced in January 1971, with the  

play15:58

first sales to the public in November 1971. Now let's look at capability.....briefly. We'll  

play16:06

do a whole chapter on capability later. The MP944  could perform logic and arithmetic operations  

play16:13

on 20 bit numbers. The first bit was used to  denote a negative or a positive number. This  

play16:19

means the processor could nativley handle integers  between negative and positive 524288. It is always  

play16:28

possible to handle numbers outside of this range,  but that requires significantly more compute time  

play16:34

as we have to deal with overflow arithmetic  and store/process the intermediate results.  

play16:39

The 4004.....it could handle just 4 bits. Meaning  it could nativley handle numbers between 0 and  

play16:46

15. It's really not much. Now, this was enough  to build a calculator (we assign a 4 bit value  

play16:55

to every integer in a number)....but even  that required significantly more code than  

play16:59

an 8 bit or higher processor. You couldn't ,  for example, build a practical desktop computer  

play17:05

with a 4 bit processor. This is the first of many  controversial statements during this video....but  

play17:12

I reckon there's even a debate to be had as to  whether a 4 bit system is complex enough to even  

play17:17

be called a microprocessor (for the record,  I think it still counts but it s not really  

play17:22

the same thing as something like a 6502). Ok, now the big one....the number of Ics. The  

play17:35

biggest common strike against the MP944's claim  to first microprocessor is the fact it consists  

play17:48

of 6 distinct Ics. Of course....there is  a LOT of nuance to this. Two of these are  

play17:55

the ROM and the RAM, so we can discard those as  being part of the actual microprocessor (or can  

play18:01

we?...we'll come back to that). The next two  Ics are essentially specialised coprocessors:  

play18:08

the parallel divide unit and the parallel  multiply unit. These do exactly one thing:  

play18:14

they take two numbers and either multiply or  divide them. Now....perhaps we require the  

play18:21

presence of these two chips for the system as a  whole to work? No. We don't. This often overlooked  

play18:28

sentance from Holt's 1971 paper clarified 'each  unit was designed to operate as a seperate entity  

play18:36

and could be used without the need of any of  the other units'. This is really interesting:  

play18:43

in theory any chip from the system as a whole  is able to operate by itself....so how many do  

play18:50

we need to form a full-blown microprocessor? The final 2 chips are the steering logic unit  

play18:56

and the CPU. Now in theory you could feed in a  sequence of pulses into the appropriate pins of  

play19:02

the CPU to provide it with data and instructions.  And you;d receive outputs. But in reality, we need  

play19:10

something manage our various inputs and fed them  into the CPU.....and that is the SLU. For now,  

play19:18

we can think of this as an I/O interface  between the outside world and the CPU.  

play19:24

It's not really part of the CPU.....it just  translates inputs to a form the CPU can use.  

play19:31

So the CPU can in theory operate by itself  (or at the very least with an IO chip?). Is  

play19:37

that an unambiguous case of a  microprocessor on a single IC?  

play19:43

Unfortunately no. The CPU can perform  various logic functions....but it  

play19:49

can't add or subtract. Wait, really? The MP944 did addition and subtraction  

play19:57

on the SLU chips. This actually provided a  major benefit as we'll see later. But that  

play20:04

means a minimum of 2 Ics were required. Well...not quite. The CPU COULD perform a  

play20:13

variety of logic functions, and it could  perform conditional branching. I'm almost  

play20:20

certain that made it Turing complete....so  while it couldn;t add numbers directly,  

play20:26

it could do so indirectly. Making it a viable, yet  highly impractical single chip microprocessor.  

play20:35

EXCEPT. The CPU missed something else. It didn;t  contain a program counter. This is a register  

play20:45

found in all standard CPUs which keeps track  of our current memory location (also knows as  

play20:51

our current place in the program). The program  counter for the MP944 was in...the ROM!? So,  

play21:01

while it would probably be theoretically possible  to use the CPU chip by itself to perform logic and  

play21:06

arithmetic. To actually run a program and  do something useful, we'd need a ROM chip,  

play21:12

an SLU chip and a CPU chip. OK, so for the absolute purists  

play21:19

who insist a microprocessor must consist of a  single IC, the MP944 loses to the 4004 right?  

play21:29

Nope....turns out the 4004 couldn;t  operate as a single chip either!  

play21:34

As with the MP944's CPU, the 4004 needed a  seperate I/O chip to function. In order to get  

play21:42

the logic functionality onto a single silicon die,  the 4004 required extensive simplification. One of  

play21:50

the simplified elements was the data decoding:  it was not possible to hookup the necessary 12  

play21:56

address pins and 8 instruction pins. So, a shift  register chip was necessary in order to transfer  

play22:02

data in and out of the CPU... similar but less  advanced than the SLU used in the MP944.  

play22:11

That got complicated quickly. So I'd better  throw a final spanner in the works. There  

play22:16

is another entirely seperate contender. The four phase CPU is almost impossible to find  

play22:23

meaningful information on but several hundred were  sold in the early 1970s. In terms of complexity,  

play22:30

it sat somewhere between the 4004 and the MP944.  Unlike the former 2, the logic functions of the  

play22:37

CPU itself were split between 3 chips. HOWEVER,  it was claimed one of these could function in  

play22:45

isolation as a dedicated 8 bit CPU. There is  much controversy here, including a court case,  

play22:55

and allegations of deception. If we drop the strict requirement  

play23:02

that a microprocessor must be on a single  chip and include the MP944, it feels like  

play23:08

we need to include the 4 phase as well....even  though it is 'more' split up than the MP944.  

play23:17

However, it;s probably easier to disqualify it  from the title of 'first' based on date. The  

play23:23

four phase system was unambiguously completed in  October 1970, when the first sales were made. The  

play23:31

first unambiguous date for the MP944 was June 1970  when it was accepted by the Navy. Of course there  

play23:39

is plenty ambiguity regarding earlier iterations  of both designs. The 4 phase system looks  

play23:46

fascinating but there is so little info available  on it, it d require an entirely separate video.  

play23:55

So what was the first microprocessor? I don't  think it matters. The definition is arbitrary,  

play24:02

ambiguous and outdated. Personally, if you  forced me to take a side, I would refer to  

play24:09

the MP944 as a microprocessor.....and probably  the first one at that.... You may disagree and  

play24:16

that's fine. But the one thing we can  probably all agree on is that the MP944  

play24:23

was incredibly advanced for it's time. Let's find  out exactly how advanced it was.  

play24:35

Carrying out any technical contract for  the US Military carries a blessing in the  

play24:39

form of practically unlimited potential  for funding. It also carries the curse  

play24:44

of stringent requirements. And there were  many requirements for the CADC project.  

play24:49

The first was the requirement to operate  at MilSpec temperatures. -55C to 125C  

play24:58

specifically. Now, that s not entirely outside  the realms of possibility for consumer based  

play25:03

hardware today. But imagine building the world s  first microprocessor, only to integrate it into  

play25:09

a computer that was capable of running  in a sauna. It s pretty impressive!  

play25:15

Another requirement which had the potential to  shelve the whole project was failure analysis.  

play25:21

Every engineer learns about time-based failure  prediction. Components tend to fail after a mean  

play25:26

amount of time in use (otherwise known as the  mean time between failure). And depending on  

play25:32

how they are used, we can get a good idea on  how failures are distributed around this mean.  

play25:38

If one component fails, we can often predict how  long it will be before associated parts fail.  

play25:43

It is not difficult to imagine the Military  putting a huge focus on these failure metrics.  

play25:49

Weapons systems cost a LOT of money in both  capital and maintenance. And they perform life  

play25:56

(and death) critical functions. So, I can only  imagine the mounting horror felt by the US Navy  

play26:02

s representative late into the design project  when the CADC team sat him down and explained  

play26:08

failure metrics didn t exist for the computer.  It was a brand new system with no operational  

play26:14

history and nothing analogous to compare it to. Fortunately, an excellent workaround was devised.  

play26:21

Rather than predicting failure based on past  data, with something like a microprocessor,  

play26:27

it is possible to diagnose failure in realtime.  After all, a microprocessor and it s associated  

play26:33

memory is really just a collection of transistors.  So, by writing programs that execute instructions  

play26:40

that use every transistor at some point and then  comparing the output with the expected output,  

play26:47

a single transistor failure could be  detected. Through some clever coding,  

play26:52

Ray was able to devise self-diagnostic programs  that tested every transistor on 4 of the 6 chips  

play27:00

(including the ROM and RAM by the way).  The parallel multiplier and divider chips  

play27:05

were checked for 98% of failure cases, with the  remaining 2% being non critical for flight. These  

play27:13

self diagnostic checks were carried out as part  of the main program loop. If a failure occurred,  

play27:23

a second completely redundant computer  was automatically activated and the pilot  

play27:28

notified by a light in the cockpit. To perform all of the above, the CADC was  

play27:38

required to perform about 600 calculations every  1/18th of a second. And when I say calculations,  

play27:45

I don t mean integer operations, I mean full  calculations. The most common calculation was  

play27:51

a 6th order polynomial: like this. However, to obtain a solution, the formula was  

play27:57

rearranged into this form. That required a lot of  multiplications, and multiplication takes a while  

play28:04

on a conventional CPU. The MP944 had a clock  speed of 375kHZ, so this would give an average  

play28:12

of only 35 instructions per calculation (if we  assume one instruction per clock cycle which,  

play28:20

as we ll see, is a very weak assumption). With  such a low clock speed, it would be flat out  

play28:25

impossible for a conventional CPU of the day to  perform so many calculations so quickly. So now,  

play28:32

we ll take a dive into the architecture of  the MP944 which completely set it apart from  

play28:38

anything else that existed at the time. We've already seen the 6 different Ics that make  

play28:49

up the MP944. Let's walk through what each  did in detail and how they were integrated  

play28:55

to form a working computer. Ray's paper actually  discusses a number of potential configurations,  

play29:02

but we'll look at the one configuration  they were used in: for the F-14s CADC.  

play29:09

In essence, the job of the CADC was to take  digital inputs from a number of sensors and  

play29:15

turn those into useable outputs. Of course, to  process these inputs, a series of instructions  

play29:21

were required: in other words a program. The  MP944 microprocessor was a modified Harvard  

play29:28

architecture, with the program and variables  residing in seperate memory. The program was  

play29:34

in the ROM, which was the first of the 6 Ics.  In the CADC, multiple ROM chips were used to  

play29:42

store the entire program. Overall control  was provided by the system executive ROM,  

play29:48

with lesser ROM units supplying instructions  to individual compute units. As mentioned,  

play29:55

the program counter was housed in the ROM. This  is unusual but was a deliberate choice to reduce  

play30:01

the number of traces on the board since non  of the compute units needed to communicate the  

play30:06

program location to the ROM. Therefore this made  best used of the available space. I imagine this  

play30:14

would have also made the system more difficult  to program but as we ll come back to, that wasn t  

play30:19

really a problem since it needed to be programmed  once and once only for its intended purpose.  

play30:26

Outputs consisted of both direct digital signals,  and values written to the second of the ICS:  

play30:32

the RAM. As with any conventional computer,  the RAM contents could be read as variables  

play30:38

for subsequent program instructions, or they  could be output as and when necessary.  

play30:45

So how did the computer get from ROM instructions  and digital inputs to stored results in RAM,  

play30:50

and digital outputs? I'm going to work  backwards. As we'd expect, there was a CPU:  

play30:58

in this case it was known as the 'Special logic  function' or SLF....though I'm just going to refer  

play31:04

to it as the CPU for ease of understanding. Now, I can;t show the exact architecture  

play31:10

for the CPU as it has never been publically  disclosed. But here is what we know about it.  

play31:17

Like any CPU, it consisted of a number of  registers and an arithmetic logic unit,  

play31:23

or ALU. Values were stored in the registers  and basic arithmetic was performed on these  

play31:30

values using the ALU, to give an output.  And, as with most early CPU,s the ALU was  

play31:37

capable of basic logical operations. However, this chip differed from a  

play31:43

conventional CPU in several aspects: First of all, it was specialised for  

play31:49

one operation: the limit function. This is a  basic operation: shown on screen here it simply  

play31:57

clamps a given input between upper and lower  bounding values. This function was requires  

play32:03

so frequently in the flight calculations, that  the IC was optimised to perform it. One register  

play32:11

was designated for each of the bounding values,  with a third being used for the input. When the  

play32:18

limit operation was performed, the correct  register was chosen as the output. I'm not  

play32:24

exactly sure how other logical operations were  performed: I imagine the two inputs were stored  

play32:30

in two of the registers, with the third used as an  accumulator which is a special register to which  

play32:36

the ALU can write and read from directly. The second unconventional design choice was  

play32:42

the number of pins. Typically, values are passed  in and out of a CPU in parallel. In this context,  

play32:50

that means one pin per input and output bit.  Remember, the MP944 had a 20 bit architecture,  

play32:58

so when I discuss 'values', I am referring to  20 bit numbers. That would require 20 pins for  

play33:05

the input and 20 for the output. Of course, some  additional pins would also be needed for power,  

play33:11

clock, synchronisation, reset and testing.  This wasn;t really feasible however. One of  

play33:19

the design constraints from the Navy was for  the system to fit on a 40 square inch pcb:  

play33:25

that's just 15x15 cm. Bear in mind, the Apollo  guidance computer first flew just 4 years before  

play33:33

the CADC was complete and was considered  an absolute miracle of miniaturisation:  

play33:40

it weighed 30kg and was 60x30x15cm. So, the CADC team designed the entire  

play33:49

system to operate serially. Inputs and outputs  formed a sequence, broadcast via single pins. The  

play33:57

lower pin count, however, came with the penalty of  longer transfer times between compute and memory,  

play34:03

as each 20 bit word now required 20 clock cycles  to move from one place to another. It is also  

play34:11

a complete headache to understand...and  must have been a nightmare to program.  

play34:16

To generate the serial inputs for the SLU,  a dedicated I/O chip was necessary. This  

play34:22

was the Data Steering Unit. Recall the I/O  chip necessary to use the intel 4004....this  

play34:30

was SO much more than that. It accepted inputs  from either digital sensors, or from the RAM or  

play34:37

ROM and 'steered' these inputs to where they  were needed. If i understand correctly, each  

play34:44

SLU accepted up to 13 serial inputs, and could  provide serial data to 3 outputs. Through the  

play34:52

use of appropriate commands, the necessary inputs  could be sent to the CPU. However, as mentioned,  

play34:59

this chip also had the capability to add and  subtract. Data wasn't just steered from input to  

play35:06

output: two inputs could be added or subtracted as  they were being shifted. Performing the operation  

play35:14

during the data transfer allows for fast addition:  in fact due to some clever design, the SLU could  

play35:21

actually add 3 numbers in the time it took to  transfer them from input to output. You can  

play35:25

see here how data was serially shifted through the  unit and steered to the required output. Though,  

play35:32

bear in mind I'm showing only 8 bit numbers and  5 inputs: in reality 20 bit numbers were steered  

play35:39

from 13 inputs. In the case of the CADC, each Data  Steering Unit only made use of a single output but  

play35:48

other configurations were possible....including  using the output from one Steering unit as an  

play35:53

input to another Steering unit. A quick side note: if you can add,  

play35:57

you can also subtract. It is done by converting  the binary representation of a number to its 2 s  

play36:03

compliment. The MP944 generally operated  on 2s complements but we re not going to  

play36:10

go into any further detail on that here. So what we have here is a complete module.  

play36:17

Able to read instructions and data, steer  necessary data to a CPU, and use that CPU  

play36:23

to perform calculations, outputting the results  to RAM or directly. But we're not done yet.  

play36:31

What really set the MP944 apart from other  early microprocessors were the parallel units:  

play36:37

today we'd refer to these as coprocessors. There  were two: the Parallel Multiplier Unit and the  

play36:44

Parallel Divider Unit. Let's focus on  the Parallel Multiplier as I think that  

play36:49

one is easier to understand. Functions such as the sixth-order  

play36:53

polynomial I mentioned earlier require a LOT  of multiplication, and fast. Early CPUs were  

play37:01

pretty terrible at multiplication....because they  couldn;t do it. Well, not directly anyway.  

play37:09

When it comes to multiplication, the only  useful arithmetic instructions available in  

play37:13

most CPUs from the 1970s were addition and bit  shifting. One way of multiplying x by y was to  

play37:21

add x to itself y times. Of course, for a 20 bit  number, this would take practically forever.  

play37:28

The more conventional approach was to use  long multiplication....just as we teach  

play37:33

to elementary school children. Here, we take x,  multiply it by each bit of y and add the partial  

play37:41

products. But hold on, I just said we can;t  multiply. Turns out we don;t need to. Since  

play37:48

we are dealing with binary only, the partial  products can be defined conditionally. Every  

play37:54

partial product is either x or zero, because  we only ever multiply it by 1 or zero.  

play38:02

However, this still takes a long  time...especially for a pair of 20 bit numbers.  

play38:07

So the next approach is to use a specialised  algorithm for multiplication. In this case  

play38:12

Booth's algorithm. I was going to explain  how this works but that'd take me a while,  

play38:18

so I've linked an excellent video instead.  I'm showing an implementation on screen now  

play38:24

for a couple of 4 bit numbers. Now, it is  possible to implement Booths algorithm on  

play38:30

a simple CPU. However, without specialised  hardware it still takes ages to implement.  

play38:36

So, let's make a more specialised ALU that  can perform Booths algorithm in hardware:  

play38:43

it takes x and y and automatically executes  the algorithm, sending the result to a third  

play38:49

register. In fact, if we're smart, we could  send x and y to this second special ALU....and  

play38:56

while we're waiting for the result, we could  perform some other simpler operations on our  

play39:00

first ALU. And we could do addition in the  SLU at the same time......we don;t need to  

play39:07

let a lengthy multiplication operation lock up  our entire process if we run it in parallel.  

play39:12

And that is the fundemental concept that  allowed the designers of the CADC to claw  

play39:17

back time lost to serially moving  data: parallelisation. In reality,  

play39:24

this second ALU and its associated registers  were housed in a seperate dedicated chip:  

play39:30

the Parallel multiplier. In fact, parallelisation  wasn;t the only time saving innovation here. That  

play39:37

time taken to shift the result out of the output  register? The next input could be shifted in at  

play39:42

the same time. This approach of overlapping one  operation with the next is known as pipelining,  

play39:50

and the MP944 was the first microprocessor  to do that too. All the chips I ve discussed  

play39:57

so far were capable of simultaneously  shifting data in and out in this manner.  

play40:03

And as I alluded to, there was also a parallel  divider unit: basically the same as the parallel  

play40:09

multiplier. I must stress, both of these parallel  units were particularly complex for the time just  

play40:17

on their own. Incorporating them into a fully  working system was really quite spectacular.  

play40:24

And with that, we have the full architecture.  Multiple duplicates of some of the chips  

play40:29

were used in the implementation for the CADC,  forming distinct compute units, each controlled  

play40:36

by their own ROM and SL and outputting to  dedicated RAM. According to the 1971 paper,  

play40:44

this was the configuration used by the CADC.  In total there were 1 of each of the CPU,  

play40:52

PDU and PLU chips; 3 Steering units,  3 RAM chips and 19 ROM chips.  

play41:05

In my video about the Apollo Guidance Computer  Flyby wire system....to which I have already  

play41:10

made several refrences, we discussed at length how  complex softweare engineering was used to tackle  

play41:16

many of the problems. The Apollo Guidance Computer  itself was a reasonably general purpose machine.  

play41:24

In many ways, the MP944 was the  opposite. Difficult problems tended  

play41:28

to be solved in hardware rather than software. Any computer executes its code as machine code:  

play41:36

strings of digital inputs represented  by binary words. In the case of the AGC,  

play41:43

a compiler was written which allowed programs  to be written in assembly language which is  

play41:47

more human readable....this was then converted  to binary by the compiler for execution. In fact,  

play41:55

the AGC team also created a higher level language  for more complex subroutines. And they were able  

play42:02

to simulate more specialised hardware using  what were essentially virtual machines.  

play42:08

The special purpose ALUs, parallel processors and  other hardware in the MP944 performed these more  

play42:14

specialised tasks without the need for either  highlyt complex subroutines...or simulating  

play42:20

more complex hardware in code. The tradeoff was  there was no compiler. Due to time constraints,  

play42:28

all coding was performed in just 3 months.  This isn;t necessarily as bad as it sounds:  

play42:35

remember the CADC in which the MP944 was used  was application specific: it was designed to do  

play42:42

one thing and one thing only. On the other hand....the team  

play42:47

decided they didn;t have the time to write a  compiler....the entire program was written,  

play42:52

not in assembly....but in binary. The final  program was over 60000 bits in length, or about  

play43:00

3000 instructions. As was the case with the AGC,  it was not possible to continuously develop and  

play43:09

test code snippets on the actual hardware:  the ROMs to which the code would be written  

play43:14

required at least several weeks to manufacture.  So, it was all or nothing: the entire codebase  

play43:20

was to be burned to the ROM and run in one go. Coding up the ROMS had the additional complexity  

play43:27

of there not being a single monolithic program.  Looking at the system architecture, each data  

play43:34

steering unit to compute unit combination  required its own set of instructions. So, an  

play43:39

overall program control rom, or program executive  was necessary to orchestrate all of the individual  

play43:46

modules (and when I say module , I am referring  to both software and hardware). So, individual ROM  

play43:54

chips required their own standalone code. Of course, coding this all in one go is  

play44:01

infeasible: no one can write 3000 instructions  correctly without a single mistake. So a means  

play44:07

of simulating the hardware to test out code  before final manufacture was required.  

play44:13

Ray s brother, Bill, was actually pulled into the  project to solve this. He created a simulator for  

play44:19

the MP944 in Fortran. I ve not been able to  figure out exactly what this simulator looked  

play44:25

like but I presume it ran on an IBM mainframe,  or something similar. Crucially, it emulated  

play44:32

every transistor in the MP944 chips, and so  allowed Ray and the team to test subroutines  

play44:39

without having to create dedicated ROM chips. The second solution was the creation of a physical  

play44:45

simulator. Using discrete components, a mock up of  the MP944 was built to function test the hardware  

play44:53

itself. Of course due to the larger scale,  it would have run much slower than the chips,  

play44:59

but it was sufficient to prove functionality  before the actual chips were manufactured.  

play45:05

Programming took 3 months, with the code being  delivered to the manufacturers on punched paper  

play45:08

tape. Floppy drives didn t exist yet so this  was the only practical means of doing so. When  

play45:15

the manufactured ROM chips were received a few  weeks later, they worked almost flawlessly. A  

play45:21

single bit (out of a total of more than 60000) was  incorrect requiring re-manufacture but honestly,  

play45:29

that s about as good a result as anyone can ask  for. The corrected ROMS were delivered a few  

play45:34

weeks later, and the completed project handed over  to the Navy for evaluation in June 1970.  

play45:47

We ve spoke extensively about what the  MP944 chipset could do. Unfortunately,  

play45:53

I can t get my hands on an F-14. So instead let  s take a look at the Intel 4004 for comparison:  

play46:01

we'll see it was severly lacking in functionality  alongside the MP944. That said, I want to make  

play46:08

clear that the 4004 was still a remarkable  achievement for the time: mass producing and  

play46:14

selling it at an affordable price required a  number of technological breakthroughs. It also  

play46:19

required some significant compromises. I have one here. In order to use it,  

play46:25

I ve built a retroshield, which is an open  source board available here . It allows an  

play46:31

Arduino to simulate the RAM, ROM and IO chip.  So, in theory, I can write a program in 4004  

play46:38

assembly and upload it to the Arduino to be run  on the 4004. Unfortunately, the documentation  

play46:46

and code for the 4004 retroshield is a bit  lacking or incomplete .so I ll just show it  

play46:50

running here. If anyone wants a more detailed  video on the 4004 in the future let me know in  

play46:59

the comments but it ll take me a while. The first major compromise was, of course,  

play47:05

the 4 bit data and address bus. As I ve already  mentioned, the 4004 could only count to 16. This  

play47:13

does mean it was able to handle a single  digit per instruction which leads us onto  

play47:18

it s primary use case. A calculator. The 4004  was specifically designed to be the CPU for the  

play47:26

Busicom 141-PF calculator. It s really not very  exciting is it? In fact, the retroshield repo  

play47:35

includes code to emulate the calculator but  it doesn t seem to work for me. The 4004 did  

play47:41

see a few other uses, including most notably in  pinball machines .but it was too simple a CPU to  

play47:48

see anything requiring anything beyond this. That 4 bit bus simplified the chip design but  

play47:55

complicated programming. 4004 instructions were  at minimum 8 bits in length. And the chip could  

play48:02

address 12 bits of memory. So, how do we get  these instructions and addressed in and out of  

play48:08

4 bit busses? The answer is to serialise them.  Unlike most microprocessors, where instructions  

play48:16

are fed in in a single clock cycle, the 4004  required them to be broken up. Here s how:  

play48:23

The 4004 requires 2 independent clock signals,  with a max clock speed of 740 kHz. They must  

play48:31

be provided in the pattern shown here. The  chip will response with a sync pulse every  

play48:37

8 cycles .as shown. This pulse denotes the  start of a full execution cycle. The required  

play48:45

memory address to read from or write to must  be split into 3 4 bit words and provided during  

play48:51

the first 3 clock cycles. Then the instruction  to execute must be provided during the next 2.  

play49:00

The final 3 cycles of the execution cycle are  used to actually execute the instruction.  

play49:05

Of course, the shift register chip would  handle much of the splitting up and  

play49:09

passing of instructions to the CPU. Although the clock speed was 740KHz,  

play49:15

the need for 8 cycles to actually execute  anything limited the CPU to 92600 instructions  

play49:21

per second as there was no capability  for pipelining or parallel processing.  

play49:28

We should of course note that the  MP944 also accepted and output data  

play49:32

in serial but we ve already discussed  the extensive design decisions that were  

play49:38

made to negate the time penalty from doing so. A real plus for the 4004 is the registers. It has  

play49:46

16 internal 4 bit registers. Honestly, that s  probably enough to do useful things without the  

play49:52

need for a RAM chip at all. If I put my mind to  it, I could probably get this running tic tac toe  

play49:58

without any ram .but that s for another time. But, where registers are abundant, a stack  

play50:05

is not. There is technically a stack in the  4004, but it is just 3 addresses deep. So you  

play50:12

couldn;t really use this chip for any recursive  operations or nested branching commands.  

play50:18

I also noted whilst playing around with the 4004,  it doesn t really feel like a microprocessor. It  

play50:26

is more akin to programming a microcontroller  (and yes, I did verbally mix up the 2 in my  

play50:32

previous video). This is due to the modified  Harvard architecture. You have to write your  

play50:39

program entirely. Save it to ROM and then execute  it. You can t run code from RAM (in fact there are  

play50:47

only 640 bytes of RAM available). Again, this  limitation, if you want to call it that, was  

play50:55

also present on the MP944 because the MP944 was  designed to do one thing and one thing only.  

play51:03

Which brings me onto my final point about what is  and what isn t a microprocessor. The 4004 and the  

play51:10

MP944 were made to perform specific tasks. Off the  shelf, the 4004 is probably more versatile due to  

play51:21

the presence of a compiler and a more general  purpose arithmetic logic unit. But the MP944  

play51:29

can perform much more complex operations, much  faster and provide results to many more outputs.  

play51:37

Most consumer microprocessors are NOT application  specific and can be manipulated to perform a wide  

play51:43

range of tasks. So it would be fair to say  the MP944 and 4004 are both microprocessors,  

play51:52

or neither is. Either way, the MP944  was significantly more complex.  

play52:06

The only F-14s remaining in service today are  with the Iranian air force. How they got there  

play52:12

is a story for another day. The Iranians  have managed to keep them flying through  

play52:16

a combination of ingenuity, determination and, I  presume pure spite. In fact, some escorted Putin's  

play52:23

entourage into the country just weeks before  i released this video. To prevent spare parts  

play52:29

illegally reaching them, the US destroyed it's  remaing F-14 stock following their retirement in  

play52:34

2006. Ray has a complete set of MP944 chips in his  personal collection. As far as I can figure out,  

play52:42

these may well be the only remaining  examples in existance outside of Iran.  

play52:47

Though this feels like a crime against historical  preservation, I suppose no-one involved in their  

play52:52

destruction would have had a clue they were  wiping out something of such significance.  

play52:57

Through my adult life, I have been through  a belief arc that many viewers can probably  

play53:01

relate to. I used to believe all military spending  was abhorrant and should instead be directed to  

play53:06

science, medicine, space exploration etc. Then  I grew up and accepted we are simply not there  

play53:12

yet. In recent years, I have come to realise  that many of the benefits I tout for funding  

play53:16

the sciences are also delivered by the military: a  huge proportion of militarty spending IS directed  

play53:22

at science medicine and space exploration! The  internet, GPS, encryption technology....the  

play53:28

list of everyday benefits that originated as  military backed research is almost endless. So,  

play53:34

do we spend too much on defence? I don't know. The MP944 is not a good example of all of the  

play53:43

above. It didn't change the world, and was  a metaphorical dead branch on humanity's  

play53:49

technological tree. It makes perfect sense  that the project was classified. However,  

play53:55

looking back more than 50 years later, it  seems almost tragic that home computing  

play53:59

could have taken quite a different course  had the architecture been made public.  

play54:04

When I made a video about the invention of  Digital Fly By Wire, I believed there may  

play54:09

have been only one computer on earth at  the time capable of performing the job:  

play54:13

The Apollo Guidance computer. After producing this  video, I now know there were two........I wonder  

play54:21

whether there were any more. Thanks for watching.

Rate This

5.0 / 5 (0 votes)

Benötigen Sie eine Zusammenfassung auf Deutsch?