Computer Architecture
Computer Architecture
Systems
The CPU
THE CPU
WHAT IS THE PURPOSE OF THE CPU?
•THEPURPOSE OF THE CENTRAL PROCESSING UNIT (CPU) IS
TO FETCH, DECODE AND EXECUTE INSTRUCTIONS
•THECPU IS THE BRAIN OF THE COMPUTER AND ITS JOB IS TO TAKE AN INPUT,
PROCESS DATA AND PRODUCE AN OUTPUT
The fetch execute cycle
WHAT IS THE FETCH-EXECUTE CYCLE?
•THEFETCH-EXECUTE CYCLE IS THE CYCLE THAT THE CENTRAL
PROCESSING UNIT (CPU) RUNS THROUGH BILLIONS OF TIMES PER
SECOND TO MAKE A COMPUTER WORK
•THE
CPU IS ‘THE BRAIN’ OF A COMPUTER AND IS MADE UP OF
COMPONENTS AND REGISTERS
•ACOMPUTER TAKES AN INPUT, PROCESSES THE INPUT AND THEN
DELIVERS AN OUTPUT FOR THE USER
• Input: Clicking a button on the gamepad
• Process: The CPU inside the console follows a set of instructions to
carry out the task
• Output: The player moving on screen
The fetch execute cycle
WHAT IS THE FETCH-EXECUTE CYCLE?
The fetch execute cycle
THE FETCH-EXECUTE CYCLE STAGES
FETCH STAGE
• DURING THE FETCH STAGE OF THE CYCLE, THE NEXT INSTRUCTION
OR DATA MUST BE FETCHED FROM THE COMPUTER'S MEMORY (RAM)
• THE INSTRUCTION OR DATA IS BROUGHT BACK TO THE CPU
DECODE STAGE
• DURING THE DECODE STAGE OF THE CYCLE, THE CPU NEEDS TO
WORK OUT WHAT IS REQUIRED FROM THE INSTRUCTION
• THIS COULD BE A RANGE OF TASKS DEPENDING ON WHAT THE
INSTRUCTION OR DATA INCLUDED
EXECUTE STAGE
• DURING THE EXECUTE STAGE OF THE CYCLE, THE CPU WILL CARRY
OUT THE INSTRUCTION THAT WAS FETCHED
• SOME EXAMPLES THAT WOULD TAKE PLACE AT THIS STAGE ARE
• Performing a calculation
• Storing a result or data back in main memory (RAM)
• Going to main memory to fetch data from a different location
The fetch execute cycle
THE FETCH-EXECUTE CYCLE
THE IMPORTANT THINGS TO REMEMBER ARE:
•AN INSTRUCTION OR DATA IS FETCHED FROM MEMORY
•THE INSTRUCTION IS DECODED
•THE INSTRUCTION IS EXECUTED
•THE CYCLE REPEATS BILLIONS OF TIMES PER SECOND
Hardware and software
• COMPUTER SYSTEMS CONSIST OF HARDWARE AND SOFTWARE.
HARDWARE IS THE PHYSICAL COMPONENTS OF THE COMPUTER, SUCH
AS THE CENTRAL PROCESSING UNIT (CPU), HARD DISK, MONITOR,
KEYBOARD AND MOUSE.
Mouse Screen
Keyboard Speakers
Camera Printer
Microphone LEDs
Hardware and software
THE SOFTWARE IN A COMPUTER SYSTEM ENABLES THE HARDWARE TO FUNCTION AND THE
USER TO PERFORM TASKS.
SOFTWARE WITHIN A COMPUTER SYSTEM IS DIVIDED INTO TWO MAIN TYPES, SYSTEM
SOFTWARE AND APPLICATION SOFTWARE.
SYSTEM SOFTWARE
SYSTEM SOFTWARE IS ANY SOFTWARE THAT ASSISTS WITH THE RUNNING OR MANAGEMENT
OF THE COMPUTER SYSTEM. THIS CAN INCLUDE OPERATING SYSTEMS, SECURITY
SOFTWARE AND FILE MANAGEMENT SOFTWARE.
APPLICATION SOFTWARE
APPLICATION SOFTWARE IS ANY SOFTWARE ADDED TO THE SYSTEM THAT ENABLES THE
USER TO PERFORM A TASK. FOR EXAMPLE, A WORD PROCESSOR ALLOWS THE USER TO
TYPE A DOCUMENT AND A BROWSER ALLOWS THE USER TO VIEW WEB PAGES.
Operating System
AN OPERATING SYSTEM IS A COLLECTION (OR SUITE) OF PROGRAMS THAT MANAGES AND CONTROLS
THE COMPUTER. OPERATING SYSTEMS HAVE MANY FUNCTIONS:
MANAGING PROCESSES
MANAGING APPLICATIONS
MANAGING SECURITY
MICROSOFT WINDOWS
APPLE OS X
LINUX
Operating System
USER INTERFACES
A GRAPHICAL USER INTERFACE IS FAMILIAR TO MOST USERS OF PCS AND LAPTOPS. GUIS
FEATURE A DESKTOP WHERE EVERYTHING IS DISPLAYED. APPLICATIONS RUN IN WINDOWS,
AND ALL OBJECTS (APPS, HARDWARE AND FILES) ARE REPRESENTED BY ICONS.
APPLICATION FEATURES ARE ACCESSIBLE THROUGH THE USE OF MENUS. USERS INTERACT
WITH THE INTERFACE BY USING A MOUSE AND ON-SCREEN POINTER.
Operating System
USER INTERFACES
GUIS ARE POWERFUL AND EASY TO USE, BUT REQUIRE A LOT OF PROCESSING POWER.
MOBILE UIS ARE SIMILAR IN MANY WAYS TO GUIS, EXCEPT THAT THEY RESPOND TO TOUCH.
FINGERS ARE USED TO OPEN PROGRAMS AND INTERACT WITH THEM. GESTURES SUCH AS
SWIPING ARE USED TO SCROLL WITHIN DOCUMENTS. PINCHING AND STRETCHING ARE USED
TO RE-SIZE IMAGES.
COMMAND LINE INTERFACES ARE TEXT-BASED. USERS CONTROL THE COMPUTER BY TYPING
IN COMMANDS.
CLIS REQUIRE LITTLE PROCESSING POWER AND ARE EXTREMELY POWERFUL, BUT ARE
DIFFICULT TO USE. ORIGINALLY MOST INTERFACES WERE CLIS, AND THEY STILL EXIST
WITHIN MODERN OPERATING SYSTEMS, FOR EXAMPLE THE COMMAND PROMPT APP IN
WINDOWS, AND TERMINAL IN OS X.
Operating System
PROCESSOR MANAGEMENT
THE COMPUTER HAS ENOUGH MEMORY TO HOLD MORE THAN ONE PROGRAM IN PRIMARY
MEMORY AT THE SAME TIME
Operating System
MEMORY MANAGEMENT
ONE METHOD OF MEMORY MANAGEMENT IS KNOWN AS PAGING. MEMORY IS BROKEN UP INTO FIXED-
SIZE BLOCKS, KNOWN AS PAGES.
DIFFERENT OPERATING SYSTEMS ALLOCATE THEIR OWN SIZE TO PAGES. FOR EXAMPLE, MEMORY
PAGES IN MODERN OPERATING SYSTEMS ARE TYPICALLY 4 KILOBYTES (KB) IN SIZE.
WHEN A PROGRAM IS RUN, IT IS LOADED INTO MEMORY. THE OPERATING SYSTEM DETERMINES HOW
MUCH MEMORY THE PROGRAM REQUIRES, AND ALLOCATES ENOUGH PAGES TO HOLD IT AND ITS
DOCUMENTS. WHEN THE PROGRAM IS CLOSED, THE ALLOCATED PAGES ARE FREED UP FOR USE BY
OTHER PROGRAMS.
THE PAGES A PROGRAM OCCUPIES MAY OR MAY NOT BE CONTIGUOUS, BUT THIS DOES NOT MATTER.
THE OPERATING SYSTEM KNOWS WHAT EACH PAGE OCCUPIES AND FETCHES THE DATA HELD IN THEM
WHEN NEEDED.
CONSIDER THIS EXAMPLE. PROGRAM A REQUIRES TWO PAGES. IT IS ALLOCATED PAGES 0 AND 1.
PROGRAM B REQUIRES THREE PAGES. IT IS ALLOCATED PAGES 2, 3 AND 4.
Operating System
INPUT/OUTPUT DEVICES MANAGEMENT
INPUT AND OUTPUT DEVICES, WHICH ARE ALSO KNOWN AS PERIPHERALS, ARE HARDWARE
DEVICES CONNECTED TO A COMPUTER, SUCH AS A SCREEN, PRINTER, KEYBOARD OR
CAMERA.
ANY DEVICE CAN BE USED WITH THE OPERATING SYSTEM, AS LONG AS A DRIVER IS
AVAILABLE FOR IT
THE APPLICATIONS MANAGER ALLOCATES MEMORY SPACE AND DETERMINES TIME NEEDED
BY A PROCESSOR FOR AN APPLICATION TO RUN.
Operating System
SECURITY MANAGEMENT
AUDITING (KEEPING A LOG) OF FILES A USER CREATES, ACCESSES, EDITS AND DELETES
Operating System
UTILITY PROGRAMS
ENCRYPTION SOFTWARE
DEFRAGMENTATION SOFTWARE
BACKUP SOFTWARE
ENCRYPTION SOFTWARE
THE SOFTWARE CAN ENCRYPT SPECIFIED FILES, OR THE WHOLE OF THE HARD DISK ON
WHICH THE FILES ARE STORED.
Operating System
BACKUP SOFTWARE
TO PREVENT DATA LOSS, REGULAR COPIES OF THE DATA SHOULD BE MADE. A COPY OF DATA IS
KNOWN AS A BACKUP. BACKUPS CAN CONTAIN A COPY OF ALL FILES ON A COMPUTER, OR JUST
ONES SPECIFIED BY A USER.
NETWORK MANAGERS MAKE REGULAR BACKUPS OF ALL FILES ON A NETWORK USING BACKUP
SOFTWARE. THE SOFTWARE AUTOMATICALLY MAKES A BACKUP AT A SCHEDULED TIME OF DAY,
USUALLY DURING THE EVENING WHEN THE NETWORK IS QUIET. BACKUPS ARE USUALLY MADE TO
A HIGH CAPACITY SECONDARY STORAGE DEVICE, OR TO THE CLOUD.
IF DATA LOSS OCCURS, DATA CAN BE RETRIEVED FROM THE BACKUP. THE SOFTWARE ALLOWS
ALL BACKED-UP FILES TO BE RETRIEVED OR JUST SPECIFIED FILES.
FULL BACKUP
INCREMENTAL BACKUP
Operating System
BACKUP SOFTWARE
FULL BACKUP
INCREMENTAL BACKUP
A FULL BACKUP INVOLVES MAKING A COPY OF EVERY FILE ON THE COMPUTER OR NETWORK.
THEY CAN REQUIRE A LOT OF STORAGE SPACE AND CAN BE TIME CONSUMING TO MAKE.
INCREMENTAL BACKUPS TAKE A COPY OF ANY NEW FILES CREATED SINCE THE LAST BACKUP,
OR OF ANY FILES THAT HAVE BEEN EDITED, SUCH AS USER DOCUMENTS.
MOST NETWORK MANAGERS MAKE AN INITIAL FULL BACKUP AND THEN SWITCH TO DAILY
INCREMENTAL BACKUPS. THIS WAY ALL DATA IS BACKED UP AND DAILY BACKUPS ARE SMALL
AND LESS TIME-CONSUMING.
The purpose of the CPU
ALL PROGRAMS AND DATA PROCESSING ARE RUN IN THE CPU AND ALL HARDWARE
COMPONENTS ARE, TO SOME EXTENT, CONTROLLED BY IT.
THE CPU IS COMMONLY REFERRED TO AS THE BRAIN OF THE COMPUTER AND THIS IS
A FAIR COMPARISON.
The purpose of the CPU
ALL GENERAL PURPOSE COMPUTERS FOLLOW THE SAME
BASIC MODEL. THIS DIAGRAM ILLUSTRATES THE FLOW OF
DATA WITHIN A COMPUTER.
ADDITION
SUBTRACTION
MULTIPLICATION
DIVISION
LOGICAL COMPARISONS E.G. IS A = B, IS 3 > 5
REGISTERS ARE SMALL AMOUNTS OF HIGH-SPEED MEMORY CONTAINED WITHIN THE CPU. THEY ARE USED BY
THE PROCESSOR TO STORE SMALL AMOUNTS OF DATA THAT ARE NEEDED DURING PROCESSING, SUCH AS:
DIFFERENT PROCESSORS HAVE DIFFERENT NUMBERS OF REGISTERS FOR DIFFERENT PURPOSES. MOST HAVE
SOME, OR ALL, OF THE FOLLOWING:
REGISTERS
PC (PROGRAM COUNTER)
CONTAINS THE ADDRESS OF THE NEXT INSTRUCTION TO BE FETCHED
CC (ACCUMULATOR)
A
CONTAINS THE RESULTS OF ANY CALCULATIONS PERFORMED IN THE ALU
CPU components
CACHE
CACHE IS A SMALL AMOUNT OF HIGH-SPEED RANDOM ACCESS MEMORY (RAM) BUILT DIRECTLY WITHIN THE
PROCESSOR. IT IS USED TO TEMPORARILY HOLD DATA AND INSTRUCTIONS THAT THE PROCESSOR IS LIKELY TO
REUSE. THIS ALLOWS FOR FASTER PROCESSING, AS THE PROCESSOR DOES NOT HAVE TO WAIT FOR THE DATA
AND INSTRUCTIONS TO BE FETCHED FROM THE RAM.
CLOCK
THE CPU CONTAINS A CLOCK WHICH, ALONG WITH THE CU, IS USED TO COORDINATE ALL OF THE COMPUTER'S
COMPONENTS. THE CLOCK SENDS OUT A REGULAR ELECTRICAL PULSE WHICH SYNCHRONIZES (KEEPS IN TIME)
ALL THE COMPONENTS.
THE FREQUENCY OF THE PULSES IS KNOWN AS CLOCK SPEED. CLOCK SPEED IS MEASURED IN HERTZ (HZ). THE
GREATER THE SPEED, THE MORE INSTRUCTIONS CAN BE PERFORMED IN ANY GIVEN MOMENT OF TIME.
IN THE 1980S, PROCESSORS COMMONLY RAN AT A RATE OF BETWEEN 3 MEGAHERTZ (MHZ) AND 5 MHZ, WHICH
IS 3 MILLION TO 5 MILLION PULSES OR CYCLES PER SECOND. TODAY, PROCESSORS COMMONLY RUN AT A RATE
OF BETWEEN 3 GIGAHERTZ (GHZ) AND 5 GHZ, WHICH IS 3 BILLION TO 5 BILLION PULSES OR CYCLES PER
SECOND.
CPU components
BUSES
A BUS IS A HIGH-SPEED INTERNAL CONNECTION. BUSES ARE USED TO SEND CONTROL SIGNALS AND DATA
BETWEEN THE PROCESSOR AND OTHER COMPONENTS.
THREE TYPES OF BUS ARE USED.
• ADDRESS BUS - CARRIES MEMORY ADDRESSES FROM THE PROCESSOR TO OTHER COMPONENTS SUCH AS
PRIMARY STORAGE AND INPUT/OUTPUT DEVICES. THE ADDRESS BUS IS UNIDIRECTIONAL.
• DATA BUS - CARRIES THE DATA BETWEEN THE PROCESSOR AND OTHER COMPONENTS. THE DATA BUS
IS BIDIRECTIONAL.
• CONTROL BUS - CARRIES CONTROL SIGNALS FROM THE PROCESSOR TO OTHER COMPONENTS. THE CONTROL
BUS ALSO CARRIES THE CLOCK'S PULSES. THE CONTROL BUS IS UNIDIRECTIONAL.
Von Neumann Model
MAIN COMPONENTS
CONTROL UNIT – PART OF CPU, CONTROLS FLOW OF DATA AND TELLS DIFFERENT COMPONENTS HOW TO RESPONDS
WITH INSTRUCTIONS GIVEN. INCLUDES PC (PROGRAM COUNTER) INSTRUCTIONS FROM THE COMPONENTS IN
COMPUTER, CIR (CURRENT INSTRUCTION REGISTER), HOLDING ALL DATA TO BE SENT TO THE PROCESSING UNIT TO
BE OUTPUTTED ON THE SCREEN.
MEMORY UNIT – CPU NEEDS TO HOLD DATA AND INSTRUCTIONS BEFORE PROCESSING SO IT IS STORED IN THE
MEMORY UNIT. THE DATA IS LOADED IN THE MAIN MEMORY AND BROUGHT TO THE IAS (IMMEDIATE ACCESS STORE).
INCLUDES MAR (MEMORY ADDRESS REGISTER) AND MDR (MEMORY DATA REGISTER).
PROCESSING UNIT – PROCESSES THE DATA, INCLUDES ALU (ARITHMETIC LOGIC UNIT). THAT CARRIES
CALCULATIONS ON DATA, THE ARITHMETIC PART USES MULTIPLICATION, SUBTRACTION, ADDITION AND DIVISION.
LOGIC USES EQUAL TO, GREATER THAN, LESS THAN. VALUES ARE PLACED IN THE ACCUMULATOR (REGISTER USED
FOR AL CALCULATIONS) FOR CALCULATIONS TO BE CARRIED OUT. PROCESSING UNIT ALSO INCLUDES TEMP
(TEMPORARY REGISTER).
Von Neumann Architecture
• THE PROGRAM COUNTER (PC) HOLDS THE MEMORY ADDRESS OF THE NEXT INSTRUCTION TO BE FETCHED
FROM PRIMARY STORAGE
• THE MEMORY ADDRESS REGISTER (MAR) HOLDS THE ADDRESS OF THE CURRENT INSTRUCTION THAT IS TO BE
FETCHED FROM MEMORY, OR THE ADDRESS IN MEMORY TO WHICH DATA IS TO BE TRANSFERRED
• THE MEMORY DATA REGISTER (MDR) HOLDS THE CONTENTS FOUND AT THE ADDRESS HELD IN THE MAR, OR
DATA WHICH IS TO BE TRANSFERRED TO PRIMARY STORAGE
• THE CURRENT INSTRUCTION REGISTER (CIR) HOLDS THE INSTRUCTION THAT IS CURRENTLY BEING DECODED
AND EXECUTED
• THE ACCUMULATOR (ACC) IS A SPECIAL PURPOSE REGISTER AND IS USED BY THE ARITHMETIC LOGIC UNIT
(ALU) TO HOLD THE DATA BEING PROCESSED AND THE RESULTS OF CALCULATIONS
Von Neumann Architecture
THE JOURNEY OF DATA THROUGH THE VON NEUMANN MODEL
CPU (BRAIN OF COMPUTER) CARRIES LOTS OF INSTRUCTIONS TO BE CALCULATED, ALSO INCLUDING THE FETCH-
DECODE-EXECUTE CYCLE.
1. BINARY NUMBER FROM COMPONENTS INSIDE THE COMPUTER SYSTEM IS SENT TO THE PROGRAM COUNTER
IN THE CONTROL UNIT SINCE IT HAS TO BE DECODED. CONTAINS BINARY ADDRESS OF INSTRUCTIONS TO BE
FETCHED.
2. ADDRESS AND DATA COPIED FROM PC TO MAR THAT HAS TO BE DECODED. THE PC TALKS TO THE MAR IN THE
MEMORY UNIT, IT SENDS ONLY 1 PIECE OF DATA ONE WAY TO BE DECODED. MAR CONTAINS ADDRESS OF THE
LOCATION OF INSTRUCTION.
3. BINARY DATA AND INSTRUCTIONS COPIED FROM MAR TO MDR.
4. CONTENTS OF MDR COPIED INTO CIR (CURRENT INSTRUCTION REGISTER).
5. PC INCREMENTED BY 1 AND NEXT INSTRUCTION FETCHED (PC FETCHES INSTRUCTIONS FROM OUTSIDE OF
CPU BECAUSE THEY WANT TO CARRY THE INSTRUCTIONS AND PIECES OF DATA TO BE DECODED AND NOT
WAIT AND HAVE A QUEUE).
6. INSTRUCTION DECODED THEN EXECUTED USING CONTROL BUS. PIECE OF DATA IN CIR IS SENT TO ALU SO IT
CAN DECODE AND EXECUTE USING THE CONTROL BUS. IT IS STORED IN THE TEMPORARY REGISTER BEFORE
BEING SENT TO THE OUTPUT.
Von Neumann Architecture
IN MOST COMPUTER SYSTEMS, THE CPU RECEIVES INSTRUCTIONS AND DATA FROM
AN INPUT OR MEMORY. THE INSTRUCTIONS AND DATA ARE PROCESSED BY THE CPU AND THE
RESULTS ARE EITHER SENT TO AN OUTPUT OR TRANSFERRED TO SECONDARY STORAGE.
'ARCHITECTURE' IS THE DESIGN THAT ENABLES THE INSTRUCTIONS AND DATA TO REACH AND BE
PROCESSED BY THE CPU.
VON NEUMANN ARCHITECTURE IS THE DESIGN UPON WHICH MANY GENERAL PURPOSE
COMPUTERS ARE BASED. THE KEY ELEMENTS OF VON NEUMANN ARCHITECTURE ARE:
• DATA AND INSTRUCTIONS ARE BOTH STORED AS BINARY.
• DATA AND INSTRUCTIONS ARE BOTH STORED IN MAIN MEMORY.
• INSTRUCTIONS ARE FETCHED FROM MEMORY ONE AT A TIME AND IN ORDER - SERIALLY.
• THE PROCESSOR DECODES AND EXECUTES AN INSTRUCTION, BEFORE CYCLING AROUND TO
FETCH THE NEXT INSTRUCTION.
• THE CYCLE CONTINUES UNTIL NO MORE INSTRUCTIONS ARE AVAILABLE.
Von Neumann Architecture
A PROCESSOR BASED ON VON NEUMANN ARCHITECTURE HAS FIVE SPECIAL REGISTERS WHICH IT
USES FOR PROCESSING:
• PROGRAM COUNTER (PC) - HOLDS THE MEMORY ADDRESS OF THE NEXT INSTRUCTION TO BE
FETCHED FROM MAIN MEMORY.
• MEMORY ADDRESS REGISTER (MAR) - HOLDS THE ADDRESS OF THE CURRENT INSTRUCTION
THAT IS TO BE FETCHED FROM MEMORY, OR THE ADDRESS IN MEMORY TO WHICH DATA IS TO BE
TRANSFERRED.
• MEMORY BUFFER REGISTER (MBR) - HOLDS THE CONTENTS FOUND AT THE ADDRESS HELD IN
THE MAR, OR DATA WHICH IS TO BE TRANSFERRED TO MAIN MEMORY. IT IS ALSO REFERRED TO
AS THE MEMORY DATA REGISTER (MDR).
• CURRENT INSTRUCTION REGISTER (CIR) - HOLDS THE INSTRUCTION THAT IS CURRENTLY BEING
DECODED AND EXECUTED.
• ACCUMULATOR (ACC) - HOLDS THE DATA BEING PROCESSED AND THE RESULTS OF PROCESSING.
USING THE REGISTERS AND THE KEY ELEMENTS OF THE VON NEUMANN ARCHITECTURE, WE CAN
NOW LOOK AT HOW AN INSTRUCTION IS PROCESSED IN THE FETCH-EXECUTE CYCLE.
Von Neumann Architecture
THE FETCH-DECODE-EXECUTE CYCLE
THE FETCH-DECODE-EXECUTE CYCLE IS A KEY FEATURE OF THE VON NEUMANN ARCHITECTURE AND CONSISTS
OF SEVEN STAGES:
1. THE MEMORY ADDRESS HELD IN THE PROGRAM COUNTER (PC) IS COPIED INTO THE MEMORY ADDRESS
REGISTER (MAR).
2. THE ADDRESS IN THE PROGRAM COUNTER IS INCREMENTED (INCREASED) BY ONE. THE PROGRAM COUNTER
NOW HOLDS THE ADDRESS OF THE NEXT INSTRUCTION TO BE FETCHED.
3. THE PROCESSOR SENDS A SIGNAL ALONG THE ADDRESS BUS TO THE MEMORY ADDRESS HELD IN THE MAR.
4. THE INSTRUCTION OR DATA HELD IN THAT MEMORY ADDRESS IS SENT ALONG THE DATA BUS TO THE MEMORY
DATA REGISTER (MDR).
5. THE INSTRUCTION OR DATA HELD IN THE MDR IS COPIED INTO THE CURRENT INSTRUCTION REGISTER (CIR).
6. THE INSTRUCTION OR DATA HELD IN THE CIR IS DECODED AND THEN EXECUTED. RESULTS OF PROCESSING
ARE STORED IN THE ACCUMULATOR (ACC).
7. THE CYCLE RETURNS TO STEP ONE.
Von Neumann Architecture
THE THREE STAGES
FETCH
THIS OPERATION IS TRIGGERED BY THE CPU CAUSING THE NEXT
INSTRUCTION AND DATA TO BE 'FETCHED' FROM MEMORY (RAM).
DECODE
ONCE THE CPU HAS FETCHED THE INSTRUCTIONS AND DATA IT WILL
THEN TRANSLATE THEM INTO INSTRUCTIONS UNDERSTANDABLE BY
THE CPU
EXECUTE
THE CPU WILL THEN EXECUTE THE INSTRUCTIONS IN A LOGICAL
SEQUENCE
• WRITE OPERATION – INFORMATION SAVED ON HARD DRIVE, OPPOSITE WAY OF READ OPERATION. IT SHOWS
HOW VALUE WAS WRITTEN IN MEMORY LOCATION
E.G. 01011011 (MDR) INTO 10010101 (MAR)
Factors Affecting CPU Performance
EVEN THOUGH TODAY'S PROCESSORS ARE TREMENDOUSLY FAST, THEIR PERFORMANCE CAN BE AFFECTED BY
SEVERAL FACTORS, SUCH AS:
• CLOCK SPEED
• CACHE SIZE
• NUMBER OF CORES
CLOCK SPEED
CLOCK SPEED IS THE NUMBER OF PULSES THE CENTRAL PROCESSING UNIT’S (CPU) CLOCK GENERATES PER
SECOND. IT IS MEASURED IN HERTZ (HZ).
THE FASTER THE CLOCK SPEED, THE FASTER THE COMPUTER IS ABLE TO RUN FETCH-DECODE-EXECUTE
CYCLES. THIS MEANS THAT IT CAN PROCESS MORE INSTRUCTIONS IN THE SAME AMOUNT OF TIME.
CPU CLOCKS CAN SOMETIMES BE SPEED UP BY THE USER. THIS PROCESS IS KNOWN AS OVERCLOCKING. WHEN
THE NUMBER OF PULSES PER SECOND IS INCREASED, MORE FETCH-DECODE-EXECUTE CYCLES CAN BE
PERFORMED AND MORE INSTRUCTIONS CAN BE PROCESSED IN A GIVEN TIME. THIS INCREASES PERFORMANCE,
BUT ALSO REQUIRES MORE POWER, WHICH RESULTS IN A GREATER NEED FOR HEAT DISSIPATION AND CAN
STRAIN THE LIFE OF THE BATTERY. OVERCLOCKING CAUSES THE CPU TO WORK HARDER AND PRODUCE MORE
HEAT, WHICH CAN LEAD TO LONG-TERM DAMAGE TO THE HARDWARE.
Factors Affecting CPU Performance
CACHE
CACHE IS A SMALL AMOUNT OF HIGH-SPEED RANDOM ACCESS MEMORY (RAM) BUILT DIRECTLY WITHIN THE
PROCESSOR. IT IS USED TO TEMPORARILY HOLD DATA AND INSTRUCTIONS THAT THE PROCESSOR IS LIKELY TO
REUSE. THIS ALLOWS FOR FASTER PROCESSING AS THE PROCESSOR DOES NOT HAVE TO WAIT FOR THE DATA
AND INSTRUCTIONS TO BE FETCHED FROM RAM.
THE LARGER THE CACHE SIZE, THE LESS TIME A PROCESSOR HAS TO WAIT FOR INSTRUCTIONS TO BE FETCHED.
THIS IMPROVES PERFORMANCE.
NUMBER OF CORES
A PROCESSING UNIT WITHIN A CPU IS KNOWN AS A CORE. EACH CORE IS CAPABLE OF
FETCHING, DECODING AND EXECUTING ITS OWN INSTRUCTIONS.
A CPU WITH MORE CORES CAN PROCESS MORE INSTRUCTIONS IN A GIVEN TIME. HOWEVER, SOMETIMES ONE
CORE WILL HAVE TO WAIT FOR THE OUTPUT FROM ANOTHER BEFORE CARRYING OUT THE NEXT PHASE OF THE
INSTRUCTION, WHICH CAN CAUSE A DELAY.
MULTIPLE CORES INCREASE THE PROCESSOR COST. MANY MODERN CPUS ARE DUAL-CORE (TWO) OR QUAD-
CORE (FOUR) PROCESSORS. THIS PROVIDES VASTLY SUPERIOR PROCESSING POWER.
Additional hardware components
GRAPHICS PROCESSING UNIT (GPU)
A GPU IS A MICROPROCESSOR THAT PERFORMS THE CALCULATIONS TO PRODUCE HIGH-QUALITY GRAPHIC
IMAGES ON A SCREEN. ORIGINALLY THE CENTRAL PROCESSING UNIT (CPU) PERFORMED THESE CALCULATIONS.
AS MORE COMPLEX GRAPHICS WERE DEVELOPED, THE GPU WAS INTRODUCED TO TAKE OVER THESE TASKS,
FREEING UP THE CPU TO PERFORM OTHER TASKS.
INTEGRATED GPU
AN INTEGRATED GPU IS BUILT INTO THE MOTHERBOARD AND IS CHEAPER THAN A DEDICATED GRAPHICS CARD.
IT GENERATES LESS HEAT AND USES LESS POWER AND IS SUITABLE FOR GENERAL GRAPHICS PROCESSING,
SUCH AS WATCHING OR EDITING VIDEOS.
DEDICATED GPU
A DEDICATED GPU HAS ITS OWN VIDEO MEMORY AND IS INSTALLED ON A SEPARATE GRAPHICS CARD. THESE
PROVIDE THE BEST VISUAL QUALITY AND ARE USED BY GRAPHIC DESIGNERS AND SERIOUS GAMERS, BUT THEY
USE MORE POWER AND GENERATE MORE HEAT THAN AN INTEGRATED GPU.
Additional hardware components
MOTHERBOARD
THE MOTHERBOARD IS THE MAIN CIRCUIT BOARD OF A COMPUTER. IT CONNECTS THE CPU AND READ ONLY
MEMORY (ROM), WHICH ARE MOUNTED ON THE MOTHERBOARD, AND INCLUDES RANDOM ACCESS MEMORY
(RAM) EXPANSION SLOTS.
SOUND CARDS
SOUND CARDS ARE USUALLY INCLUDED ON THE MOTHERBOARD BUT THEY MAY BE ADDED TO IT SEPARATELY.
THEY ENABLE THE COMPUTER TO RECORD SOUND FROM A MICROPHONE, EDIT IT, AND OUTPUT SOUND TO THE
SPEAKERS.
Input/Output devices
INPUT DEVICES
AN INPUT DEVICE ALLOWS DATA SUCH AS TEXT, IMAGES, VIDEO OR SOUND TO BE ENTERED INTO A COMPUTER
SYSTEM.
• KEYBOARD - THE MOST COMMON INPUT DEVICE USED FOR ENTERING TEXT. INCLUDES KEYS FOR WORD
PROCESSING AND DATA INPUTTING, AND FOR PERFORMING SPECIFIC FUNCTIONS.
• MOUSE - THE MOST POPULAR POINTING DEVICE USED TO CONTROL THE CURSOR ON THE SCREEN AND
ACTIVATED WHEN MOVED ACROSS A FLAT SURFACE. THERE ARE USUALLY TWO BUTTONS THAT ACTIVATE
DIFFERENT FEATURES ON THE SCREEN.
• MICROPHONE - USED TO CONVERT ANALOGUE SOUND WAVES INTO A DIGITAL FORM THAT CAN BE SAVED AND
MANIPULATED BY THE COMPUTER. A MICROPHONE CAN ALSO BE USED TO INPUT VOICE COMMANDS BUT
THEY DO NOT WORK WELL IN NOISY ENVIRONMENTS.
• SCANNER - WORKS IN A SIMILAR WAY TO A PHOTOCOPIER. CAPTURES IMAGES FROM THE SOURCE WHICH ARE
THEN CONVERTED INTO A DIGITAL FORM THAT CAN BE STORED.
• ASSISTIVE TECHNOLOGY - DEVICES THAT ARE USED BY SOME PEOPLE WITH DISABILITIES TO ACCESS
COMPUTERS. FOR EXAMPLE, A SIP/PUFF TUBE CAN BE USED BY SOMEONE WITH A DISABILITY SUCH AS
PARALYSIS TO CONTROL A COMPUTER SYSTEM.
Input/Output devices
OUTPUT DEVICES
THERE ARE MANY OUTPUTS CREATED BY A COMPUTER SYSTEM. THESE INCLUDE PRINTED DOCUMENTS, ON-
SCREEN DATA AND SOUND. AN OUTPUT DEVICE ALLOWS DATA TO BE TRANSMITTED BY THE COMPUTER IN A
HUMAN-FRIENDLY FORM, FOR EXAMPLE, SOUND BEING PLAYED THROUGH A SPEAKER.
• MONITOR - THE MAIN OUTPUT DEVICE OF A COMPUTER. IT FORMS IMAGES BY CONVERTING ELECTRICAL
ENERGY INTO LIGHT IN THE FORM OF TINY DOTS ON THE SCREEN CALLED PIXELS. THE SHARPNESS OF THE
IMAGE DEPENDS UPON THE NUMBER OF PIXELS.
• PRINTER - USED TO PRINT INFORMATION ON PAPER. COMMONLY USES EITHER LASERS OR INKJETS TO
PRECISELY PLACE INK ONTO THE PAGE TO RECREATE TEXT AND HIGH-QUALITY IMAGES.
• SPEAKER - CONVERTS DIGITAL SIGNALS INTO AUDIBLE SOUND WAVES.
• PROJECTOR - A DEVICE THAT IS USED TO PROJECT VIDEO OUTPUT FROM THE COMPUTER ONTO A WALL OR
SCREEN.
General Purpose Computer
A GENERAL PURPOSE COMPUTER IS A COMPUTER THAT IS DESIGNED TO BE ABLE TO CARRY OUT
MANY DIFFERENT TASKS. A PC IS AN EXAMPLE OF A GENERAL PURPOSE COMPUTER. AMONG OTHER
THINGS, IT CAN BE USED TO:
• ACCESS THE INTERNET
• BROWSE THE WORLD WIDE WEB - WWW
• USE WORD PROCESSING SOFTWARE
• PLAY GAMES
• COMMUNICATE VIA EMAIL AND SOCIAL MEDIA
• DESIGN AND BUILD WEB PAGES
• STORE AND RETRIEVE DATA
• PLAY VIDEOS AND MUSIC
EACH OF THESE TASKS NEEDS A DIFFERENT APPLICATION. ANY COMPUTER THAT CAN HAVE MANY
APPLICATIONS, SUCH AS THOSE LISTED, IS A GENERAL PURPOSE COMPUTER.
General Purpose Computer
APART FROM PCS AND LAPTOPS, THE FOLLOWING DEVICES ARE ALSO CLASSED AS GENERAL
PURPOSE COMPUTERS:
• TABLETS - LIKE PCS, THEY CAN RUN A VARIETY OF APPLICATIONS
• SMARTPHONES - TODAY'S SMARTPHONES CAN ALSO RUN A VARIETY OF APPLICATIONS
• GAMES CONSOLES - AS WELL AS GAMES, MODERN CONSOLES ALSO ALLOW USERS TO WATCH
VIDEOS, PLAY MUSIC AND BROWSE THE INTERNET
• MEDIA SYSTEMS IN CARS - ALLOW USERS TO TRAVEL TO PLACES USING SATELLITE NAVIGATION,
LISTEN TO MUSIC AND CONNECT TO A SMARTPHONE
Embedded System
AS WELL AS GENERAL PURPOSE COMPUTERS, THERE ARE OTHER TYPES OF COMPUTER SYSTEM. THE MOST
COMMON OF THESE ARE KNOWN AS EMBEDDED SYSTEMS.
AN EMBEDDED SYSTEM IS A SMALL COMPUTER THAT FORMS PART OF A LARGER SYSTEM, DEVICE OR MACHINE.
ITS PURPOSE IS TO CONTROL THE DEVICE AND TO ALLOW A USER TO INTERACT WITH IT. EMBEDDED SYSTEMS
TEND TO HAVE ONE, OR A LIMITED NUMBER OF TASKS THAT THEY CAN PERFORM.
EXAMPLES OF EMBEDDED SYSTEMS INCLUDE:
• CENTRAL HEATING SYSTEMS
• ENGINE MANAGEMENT SYSTEMS IN VEHICLES
• DOMESTIC APPLIANCES, SUCH AS DISHWASHERS, TVS AND DIGITAL PHONES
• DIGITAL WATCHES
• ELECTRONIC CALCULATORS
• GPS SYSTEMS
• FITNESS TRACKERS
Embedded System
EMBEDDED DEVICES ARE NOT USUALLY PROGRAMMABLE BY A USER - THE PROGRAMMING IS USUALLY DONE
BEFOREHAND BY THE MANUFACTURER. HOWEVER, IT IS OFTEN POSSIBLE TO UPGRADE THE SOFTWARE ON AN
EMBEDDED DEVICE. FOR EXAMPLE, FITNESS TRACKERS ARE EMBEDDED SYSTEMS, BUT THE SOFTWARE CAN
OFTEN BE UPGRADED BY CONNECTING THE DEVICE TO A PC AND INSTALLING THE NEW SOFTWARE.
EMBEDDED SYSTEMS CAN HAVE ADVANTAGES OVER GENERAL PURPOSE COMPUTERS IN THAT:
• THEIR LIMITED NUMBER OF FUNCTIONS MEANS THEY ARE CHEAPER TO DESIGN AND BUILD.
• THEY TEND TO REQUIRE LESS POWER. SOME DEVICES RUN FROM BATTERIES.
• THEY DO NOT NEED MUCH PROCESSING POWER. THEY CAN BE BUILT USING CHEAPER, LESS POWERFUL
PROCESSORS.
Embedded System
• AN EMBEDDED SYSTEM IS A COMPUTER SYSTEMS WITH A EITHER ONE FUNCTION OR LIMITED SPECIFIC FUNCTIONS BUILT
WITHIN A LARGER MECHANICAL DEVICE
• ITS PURPOSE IS TO CONTROL THE DEVICE AND ALLOW A USER TO INTERACT WITH IT
• IT RUNS ON FIRMWARE AND DOES NOT HAVE ADDITIONAL PERIPHERALS
• AN EMBEDDED SYSTEM IS DIFFERENT TO A GENERAL PURPOSE COMPUTER SYSTEM LIKE A LAPTOP OR DESKTOP COMPUTER
WHICH CAN BE USED TO PERFORM MANY DIFFERENT TASKS
• THE VAST MAJORITY OF MICROPROCESSORS MANUFACTURED ARE FOR USE AS EMBEDDED SYSTEMS
• SOME EMBEDDED SYSTEMS ARE MICROCONTROLLERS MEANING THEY ARE PART OF AN INTEGRATED CIRCUIT WITH BUILT IN
MEMORY