280 likes | 288 Views
Learn about computer architecture, how computers are designed, why they are designed that way, and the impact of different designs on performance. Gain valuable knowledge for using computers efficiently and writing software. Explore the evolution of computing and the embedded approach to computer architecture.
E N D
EKT303/4 CHAPTER1: Introduction to Computer Architecture
Computer Architecture • Just like an architect designs buildings, a computer architect designs computers. • So computer architecture is the study of • howcomputers are designed, • whythey are designed that way and • whatare the effect of different designs on their performance. • It isn't just computer architects who need this knowledge: it is anybody who really needs a computer to do work for them, or needs to write software for that computer
Computer Architecture Of course, any of us can use a computer or computer related devices but …. to use them very efficiently, or for high performance computation we need to really understand what is happening inside.
Computer Architecture – An Embedded Approach • Embedded systems are computers (usually very small) that are fitted inside a system to act as its 'brains': often, users of that system might not realise there is a computer inside... • Some examples: ● A 'smart' electronic toaster or rice cooker ● A microwave oven ● iPod/Tablets ● Your car (probably contains 40 or more embedded computers)
Computer Architecture – An Embedded Approach • Embedded systems need to be small, low power and efficient. • Although there are many Computer Architecture techniques from the old days that we can learn from and use, we need new techniques and a very different emphasis to build effective embedded systems. • But first, let us review that history...
The Evolution of Computing • 1834, Cambridge, UK Charles Babbage built the Difference Engine, and then the Analytical Difference Engine. • This was a fully programmable digital computer, but was mechanical rather than electronic. This was an incredibly ambitious, advanced design • 1940, Germany Konrad Zuse used a similar mechanical approach, but controlled by electrical relays.
The Evolution of Computing The Difference Engine, as drawn in Harper's new monthly magazine. Vol. 30, Issue 175, p.34, 1864.
The Evolution of Computing • 1943, Bletchley Park, UK Tommy Flowers, working with Alan Turing, built Colossusas a codebreaking machine. • There were 10 separate machines built, all were electronic and programmable. However these remained a secret until the year 2000. • 1944, USA ENIAChad a similar design to Colossus, and although it was only operational after Colossus, ENAIC wasn't secret so was incorrectly hailed for many years as the world's first electronic computer.
The Evolution of Computing A Colossus computer in use during WWII, courtesy of the Bletchley Park Trust http://www.bletchleypark.org.uk
The Evolution of Computing 1948, Manchester. The SSEM (Baby) was the first stored program computer (i.e. an architecture like a modern machine). 1953, Manchester. The transistor computer was (as the name suggests) the worlds first transistor computer. Manchester was also the home of the worlds first commercial computer, in 1951. By the mid 1950s, the focus of computer development was shifting from the UK to the USA: 1951, USA MIT (Massachusetts Institute of Technology) built the worlds first real-time computer 1964, USA IBM enters the picture with the revolutionary System/360..
The Evolution of Computing IBM System/360 photograph, courtesy of Ben Franske, Wikipedia.
The Evolution of Computing • 1971, California, USA. Intel releases the Intel 4004 mass market single chip CPU. Consider some of its descendants: 8008, 8080, 8085, 8086, 8088, 80186, 80286, 80386, 80486, Pentium, Pentium II, Pentium III , Pentium IV, Celeron, Core, Atom... • 1977, Massachusetts, USA - Digital Equipment Corporation release the VAX11/780; a pioneering computer for one of the greatest American computing companies of all time. • By the late 1970s, computers were becoming small and cheap enough that small companies could own one! • Then came home computers...
The Evolution of Computing A Colossus computer in use during WWII, courtesy of the Bletchley Park Trust http://www.bletchleypark.org.uk
The Evolution of Computing • The PC world was dominated by Intel CPU machines, such as: - IBM PC, - Compaq portable • The home computer world used Zilog or Rockwell CPUs such as: - ZX Spectrum (used the Zilog Z80 processor) - Apple Lisa (used the Rockwell 6502)
The Evolution of Computing • Meanwhile in 1978 Acorn Computers is formed in Cambridge, UK. • Their first machines use Rockwell 6502 processors: Acorn Systems 1, 2 & 3, Atom, BBC Micro, Electron • Acorn, as a company, had a rollercoaster financial ride throughout its existence from being the most successful startup company ever, to ceasing trading in November 2000. However as a technical innovator of computers, they were unsurpassed. • But 1987, Acorn had given the world the ARM.
The Evolution of Computing Although designed to power Acorn's own computers1 (the Archimedes, A400 series, A4, A3000, A4000, A5000, RiscPC, A7000 etc...), the ARM eventually came to be used everywhere. The first nonAcorn and nonUK user of ARM processors was probably Apple. The rest is history...! 1990 2001: ~ 1 billion ARMs sold 2001 2006: ~ 6 billion sold In 2010 : ~ 10 billion sold alone
The Evolution of Computing • So today, what is a computer? • It's an iPad, an iPhone, your netbook, desktop PC. • But also the server farms operated by companies such as Google, Facebook, Amazon.com and others. • Huge clusters of computers, all operating together to solve computing problems.
The Evolution of Computing • 1st Generation • Based on vacuum tubes • Short MTBF – only few minutes • Used based 10-arithmetic • Programming by switch or cable/hardwired • No programming language above basic machine code • Many were stored program. Introduction of von Neumann architecture • ENIAC, Collossus
The Evolution of Computing • 2nd Generation • Transistor based, still large and heavy • Much better reliability • Used binary logic • Punched card or tape used for program entry • Support for early high-level language • Often bus-based system • PDP-1 by DEC
The Evolution of Computing • 3rd Generation • Utilised IC • Good reliability • Microprograms • Multi-programming, multi-tasking and time sharing • High level languages, attempts at UI design • Use of virtual memory and OS • IBM System/360
The Evolution of Computing • 4th Generation • Used VLSI • High reliable and fast • Possible to integrate the entire CPU on a single chip • DOS and CP/M OS and beyond • Today’s computer
The Evolution of Computing • 5th Generation • Natural interaction between humans and computers • Very high-level programming languages – may be even programming in English • May appear intelligent to the user • Apple Imac, iPAD
The Evolution of Computing YearFloating point operations per second, FLOPS 1941 1 1945 100 1949 1,000 (1 KiloFLOPS, kFLOPS) 1951 10,000 1961 100,000 1964 1,000,000 (1 MegaFLOPS, MFLOPS) 1968 10,000,000 1975 100,000,000 1987 1,000,000,000 (1 GigaFLOPS, GFLOPS) 1992 10,000,000,000 1993 100,000,000,000 1997 1,000,000,000,000 (1 TeraFLOPS, TFLOPS) 2000 10,000,000,000,000 2007 478,000,000,000,000 (478 TFLOPS) 2009 1,100,000,000,000,000 (1.1 PetaFLOPS)
The Future of Computing • Everyone reading this will use a computer; • Your mobile phone... • Your netbook... • Your desktop computer... • But also, embeddedin almost every consumer electronic device, home product, vehicle, medical equipment, GPS, audio system, camera, digital watch. • Many of you will program a computer, or add a peripheral. • But how many of you will design your own computer?
The Future of Computing To design your own “computer”: Up to 1900 You needed to be wealthy 1900 1940 Also have a lot of space to work in, and time to do it! 1940 1940 Working for the military? 1940 1980 Employed by large computer company in UK/USA. 1980 today In the electronics industry, using off-the-shelf CPU device. 1990 today Start with a single chip micro (PIC, LPC, MSP series, etc.) 1990 future You can design your own CPU and implement it on a programmable logic device such as an FPGA For the first time in computing history, individuals can now easily and quickly design new computers, implement and test them with free tools, and inexpensive hardware, and use them in their own designs.
The Future of Computing You may not build the world’s fastest supercomputer but hopefully you will be designing or programming some amazing embedded systems in future…