Contents
Computer architecture..........................................................................................................................1
Lecture 1 (5/9) – Introduction (CH 1).................................................................................................1
Parts of a computer (hardware).....................................................................................................1
Programming/ controlling a computer..........................................................................................2
Lecture 2 (10/9) – Binary numbers/ MIPS & ISA (CH 2 & 3)...............................................................2
Binary numbers..............................................................................................................................2
MIPS and ISA..................................................................................................................................3
Lecture 3 (17/09) – ISA 2 (CH2 & 3)...................................................................................................3
Lecture 4 – ISA 3 (CH 2.13 -2.5)..........................................................................................................5
Lecture 5 – ISA 4................................................................................................................................5
Procedures/ functions...................................................................................................................5
SPIM programming – introduction................................................................................................6
Lecture 6 (8/10) – Memory hierarchy................................................................................................6
Lecture 8 (15/10) – SPIM & Circuits & …............................................................................................7
Circuits: combinational & sequential (hardware)..........................................................................7
Lecture 9 (22/10) – Processor Design: Datapath & Control...............................................................8
C programming......................................................................................................................................9
Lecture 2 (12/09) – ASCI, functions and variable scope, arrays.........................................................9
ASCI................................................................................................................................................9
Functions & scope..........................................................................................................................9
Debugger.......................................................................................................................................9
Arrays.............................................................................................................................................9
Lecture 3 (19/09) – Strings and recursion..........................................................................................9
Lecture 4 (26/09) – Stacks, pointers & structures............................................................................10
Lecture 5 (3/10) – Pointers..............................................................................................................11
Linked lists...................................................................................................................................11
Q&A - Tips............................................................................................................................................12
Computer architecture
Lecture 1 (5/9) – Introduction (CH 1)
Parts of a computer (hardware)
- Motherboard
, o (micro) Processor(s)
CPU (central processor unit)
Datapath
Control
Special-purpose IOs: interfaces
Memory interface (DRAM)
Cache memory
IO input-output interfaces
o Chipset – makes sure the board works in sync communication between parts
o Memory slots
o PCI slots – for peripherical devices to connect
o Peripherical interfaces (all kinds of ports to devices etc.)
Programming/ controlling a computer
- Input and output consists of binary system: 0s and 1s
o Used to be the only way to program
Lecture 2 (10/9) – Binary numbers/ MIPS & ISA (CH 2 & 3)
Binary numbers
- MSB: most significant bit
o On the most left position
- LSB: least significant bit
o On the most right position
- How to calculate decimal number from bits:
n
∑ ai∗2i
i=0
Where
o i is position (counting from the right, starting at 0)
o a is binary number
- Sorts/ sizes
o 4 bits = nibble
o 8 bits = byte
o 16 bits = C short int
o 32 bits = ‘word’
- How to find binary number from decimal:
o Keep dividing by two, and write down the remainder per division (so either 0 or 1)
o The first divisions give you the end of the binary number (so you work backwards)
o Keep doing so until you get 0 as the end result of the division
- How to get hexadecimal from binary:
o Take 4 bits of binary number and convert into one hexadecimal
o Continue until number is done
- How to express negative numbers
o Sign magnitude
MSB expresses sign (1=minus, 0=+)
o One’s complement
Negative numbers are the other way around
0’s become 1’s and vice versa