0% found this document useful (0 votes)
74 views

BENC 4453: Computer Architecture: Computing Overview

This document provides an overview of computer architecture and how computers work at a fundamental level. It discusses how programs are executed by the central processing unit (CPU) and stored in memory. Early computers separated memory for storing instructions and data, while modern computers follow the von Neumann architecture where programs and data share the same memory. The document also describes key components like registers, the system bus, instruction sets, and operating systems and their role in managing the computer system.

Uploaded by

Raja Alya
Copyright
© © All Rights Reserved
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
74 views

BENC 4453: Computer Architecture: Computing Overview

This document provides an overview of computer architecture and how computers work at a fundamental level. It discusses how programs are executed by the central processing unit (CPU) and stored in memory. Early computers separated memory for storing instructions and data, while modern computers follow the von Neumann architecture where programs and data share the same memory. The document also describes key components like registers, the system bus, instruction sets, and operating systems and their role in managing the computer system.

Uploaded by

Raja Alya
Copyright
© © All Rights Reserved
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 37

BENC 4453 :

COMPUTER
ARCHITECTURE
Computing Overview
“ Programs are what a
computer does and data
are
what a computer knows.

2
Doing and knowing
● The part that “does” is called the central processing unit
(CPU). The part that “knows” is called memory.

● This “knowing” is done by encoding numbers, characters


and logical states using the binary numeric notation
discovered by Gottfried Leibniz in 1679.

3
Doing and knowing
● It wasn’t until 1937 that Claude Shannon
systematized the use of binary numbers into the
math's and logic that computers use to this day.

● A bit is a binary digit, an irreducible atom of


meaning that expresses either 1 or 0. Bits are
represented in computers by on/off electrical
states.
4
Doing and knowing
● Today, both the CPU and memory are made out of large
numbers of transistors etched onto silicon chips.
(https://www.youtube.com/watch?v=d9SWNLZvA8g)
● (A transistor is simply an electrical switch made out of exotic
metals called semiconductors.)

● This wasn’t always the case; before silicon chips, computers


were built out of individual transistors and even vacuum
tubes.

5
Early Computers
● A central control console monitored several different
subsystems, each of which was generally in its own cabinet or
cabinets.

● There was the CPU, a punched tape or magnetic tape storage


unit and two different memory units.
6
Early Computers
● One of the memory units held a series
of machine instructions that comprised
a computer program.

● The other memory unit held the data


that the program manipulated.

● This is sometimes called the Harvard


architecture, because the Mark I, a very
early electromechanical computer
developed at Harvard university in
1944,
stored data and instructions separately.
7
“ Programs are data and
should be stored in the
same memory system as
data, using the same
memory address space as
data.
-von Neumann

8
Modern Computer
● Instructions could be entered through a single panel
of switches and stored in data memory, one-by-one.
● Later they could be written out from memory onto
lengths of tape punched with patterns of holes, so
that they wouldn’t have to be entered by hand every
time they were run.
● Von Neumann’s insight simplified computing greatly,
and led straight to the explosion of computer power
that occurred during the 1950s.

9
10
Memory
● In the simplest possible terms, system memory
is a long row of storage compartments for data.
● Each location in the row has a unique numeric
address.
● All locations are the same size; in modern
computers this is generally the 8-bit byte.

11
Memory
● However, computers read data from system memory in
multi-byte chunks.

● Thirty-two-bit systems like the Raspberry Pi access memory


32 bits (4 bytes, generally called a word) at a time, and
perform most of their internal operations on 32-bit
quantities.

● In larger 64-bit desktops and laptops, system memory is


accessed 64-bits (8 bytes) at a time.
12
• Memory addresses are ordered in numeric sequence beginning
with 0.

• There is a little disconnect in having the first memory location at


address 0 rather than 1.

• CPU locates its data for reading and writing by using memory
addresses.

• It uses machine instructions to fetch data words from specified


addresses in the system memory and place them in its registers for
calculation and testing.

• It uses other machine instructions to write values stored in its


registers to the system memory.

13
Registers
● All CPUs contain a certain limited number of
storage locations called registers.

● Registers are right on the silicon of the CPU, and


the digital logic that executes machine
instructions is not only near them but literally all
around them. Each register holds a single value.

14
Registers
● Writing to registers and reading from
them is fast—faster than accessing any
other type of memory, especially
system memory that lies outside the
silicon on some other
part of the computer’s main circuit
board.

● Some registers have no single job and


can be put to many different kinds of
work. These are general-purpose
registers
15
Registers
● There are many kinds of special-purpose
registers. Some of the most common are:

■ Program counter: A program counter


register holds the address of the next
machine instruction to be brought in from
memory for execution. It “keeps the place”
in a computer program.

16
Registers
■ Status: A status register (sometimes
called a flags register) holds a value
divided into single bits or groups of bits.
Each bit or group is updated with the
status of something the CPu has just
done. This allows an instruction that
follows the comparison to know which
way the comparison went.

17
Registers
■ Stack pointer: A stack pointer holds
an address in memory where a data
structure called a last-in-first-out stack is
stored. Stacks are fundamental to CPU
operation.

■ Accumulator: The accumulator is a


register that holds the result of arithmetic
and logical operations. In modern
computers, no single register is the sole
location for arithmetic results, and the
accumulator’s job has been
redistributed to some or all of the general- 18
The System Bus
● There is a pathway between the CPU and
memory called the system bus.

● The system bus is a side-by-side group of


electrical conductors called lines, each of
which carries one bit of information.

● The number of bus lines varies depending on


the type of computer and the chips it uses.

19
The System Bus
● The system bus carries three things:
○ Memory addresses

○ Data values

○ Control signals that allow the CPU and


system memory to coordinate traffic over
the bus

20
Instruction Sets
● An instruction set is specific to a specific family
of CPUs.
● Intel’s CPUs represent one such family; ARM is
another.
● Most individual CPUs understand only a single
instruction set.
● The original Raspberry Pi’s ARM11 processor
actually has two instruction sets, though only
one of them is actually used by the Raspberry
Pi software.

21
Instruction Sets
● The machine instructions in an instruction set are
grouped by their general function:

○ instructions that move data from or to memory and


between registers;

○ instructions that perform arithmetic calculations;

○ instructions that perform logical operations;

○ instructions that read status bits or set control bits;


and so on. 22
Hexadecimal as a
Shorthand for
Binary
● So why does hexadecimal notation even
exist?

● Computers don’t really use hexadecimal


numbers. They use binary numbers, period,
encoded as electrical voltage levels. “Hex”
(as we say informally) is used by all of us
who have trouble interpreting long strings
of 1s and 0s.
23
Hexadecimal as a
Shorthand for
● It’s a sort of shorthand, allowing us to
Binary
express binary numbers in a much more
accessible form.

● 111100000010101001 is the same value


as 3C0A9.

● Which would you prefer to work with?

24
Different Voltage Levels

16 Bits wide system bus

Each digit in a Hexadecimal number represent values from 0 to 15

25
Operating Systems
● The Boss of the Box
● Operating systems are programs, and like all
programs they’re ultimately sequences of
machine instructions.
● Unlike word processors and video games,
operating systems have special powers that
enable them to manage a computer system.

26
Operating Systems
● Many of these powers depend on special
machine instructions that are designed to be
used only by operating systems.

27
Operating Systems
● Operating systems are loaded and run first, through a
boot-up process controlled by a computer’s
bootloader, which is a special program tasked with
getting the operating system from storage into
memory and then running it.
● Once an OS has loaded and configured itself, the
computer is “open for business” and the OS can begin
management of the machine.

28
What an OS
does?
● Process management: The OS launches individual
threads of execution for its own needs and the needs
of users. It allocates execution time on the CPU
among executing threads. If the CPU has multiple
cores, it distributes processes among the cores.

● Memory management: The OS allocates memory


to running processes, in most cases as separate
memory spaces that are protected from interference
by other processes.
29
What an OS
● File management: The OS maintains one or more

does?
file systems, which allocate file storage space on
disks and other mass-storage devices and manage
the reading of data from files and the writing to and
deletion of files.

30
What an OS
does?
● Peripheral management: The OS manages access
to system peripherals like keyboards, mice, printers,
scanners, graphics coprocessors and (in cooperation
with file systems) mass storage devices. This is
generally done through specialised software
interfaces called device drivers, which are written for
specific peripherals and may be installed separately,
much like user applications.

31
What an OS
does?
● Network management: The OS manages the
computer’s access to external networks (like local
area networks and the Internet) through a collection
of standard methods called networking protocols. The
protocols are implemented in one or more pieces of
software that, taken together, are called the network
stack.

32
What an OS
does?
● User account management: All modern operating
systems allow different users to have their own
accounts on the computer. An account includes a
unique login, a set of security rules called privileges
and a private file space protected from manipulation
by other users.

33
What an OS
does?
● Security: Scattered throughout an OS are
mechanisms to keep running processes from
interfering with one another and with the OS itself.
Much of OS security is done by defining rules that
specify what processes and users can and cannot do.
Certain users called administrators or super users
have powers that ordinary users do not
have, in order to control the way the OS does its
work.

34
What an OS
does?
● User interface management: The OS manages
user interaction with the computer through software
mechanisms called shells. A shell may be as simple
as a text command line in a terminal window, or it
can be a full-blown windowed graphical environment
like those used in Windows, Mac OS X and desktop
implementations of Linux, including Raspbian on the
Raspberry Pi.

35
Saluting the Kernel
● In Linux (including the Raspbian oS) the user
interface is an installable module, not much different
in nature from a pure application like a word
processor.
● There are textual shells like bash and ksh, and many
different graphical shells, including GNoME, KDE,
Xfce, Cinnamon and others.
● These shells can be installed and uninstalled by
users with administrator privileges.
36
Thanks!
Any questions?

37

You might also like