DM544 – Computer Architecture
Study Plan for the Oral Exam [pdf format]
|
This is the list of topics that can be asked at the oral exam.
The exam will last 20 minutes. Topics from the list will be
drawn randomly. For each topic the person examined should be prepared to make
a short presentation of max 10 minutes. It is allowed to bring hand
written notes but not course material (slides, textbook, articles). The
notes can be consulted if needed, for example, to remember the sequence
of things to present.
At most one topic can be drawn from the set of topics 1, 4, 5, 9.
Examinees are allowed to bring pictures, schemes or small examples to
show and describe during the presentation. It should be possible to
project the material on a screen and its correct visualization remains
under the responsibility of the examinee. The exam will be held in the
IMADA seminar room, where it is possible to
project transparencies or PDF files via computer. If the examinee
chooses to use a computer, he/she must provide for one and must inform
the examiners at the beginning of the exam session in order to minimize
waiting time in the preparation during the exam session.
The slides cannot contain lists of text items or presentation-like
outlines. Only pictures, schemes and examples are allowed and the
examiners can themselves provide for some of these.
- Machine Language (lec 1):
-
C, assembly, machine code:
-
Object files, disassembly
- Assembly process (sec. 7.3-7.5 of B1)
- Linking process (sec. 7.3-7.5 of B1)
- Different radix number systems: conversions (binary – decimal
– hexadecimal)
- Information Representation (lec. 1, 2, 3) – Part 1:
- Character codes (ASCII, UNICODE, UTF8)
- Integers
- Representation: unsigned and signed (two’s complement)
- Conversion and casting
- (Logic/arithmetic) expanding, truncating
- Addition, negation, multiplication, shifting
- Information Representation (lec. 1, 2, 3) – Part 2:
-
Floating Point Numbers
-
Background: fractional numbers
- IEEE Standard definition: Normalized and Denormalized values
- Examples and properties
- Introduction to Computer Systems (Lec. 4, 5):
-
Different views of a computer
-
Component view (I/O devices: Modems, Internet Cables)
- Functional view (Von Neumann Architecture)
- Multi-level view
- Trends
-
Transistors, VLSI
- Microcodes – hardware, RISC – CISC
- Parallelism
- Tradeoff
- MOORE’s Law
- Intel processors
- Memory Hierarchy (Lec. 5)
-
Memory characteristics
- Memory organization: bytes, words, byte ordering (lec. 1)
- The Memory Hierarchy
- Memory Technologies
- Primary memory - RAM and ROM
- Cache Memory
- Error correction (Hamming distance, parity bit, Hamming code)
- Cache (locality, hit ratio, miss ratio, etc)
- Digital Logic Level (Lec 8, 9)
-
Gates, Transistors (NOT, AND, OR, NAND, NOR, XOR, XNOR)
- Boolean algebra
- Circuits: multiplexers, decoders, shifters, adders, ALUs, clocks
- Memories: SR-Latches, D-Latches, Flip-flops, Memory organization,
FPGA
- Buses (in Intel machines)
- CPU chips
- Microachitecture (Lec 10, 11, 12) - Part 1
-
The data path (enlarged view)
- The timing diagram
- Microarchitecture operation
- Stack
- From ISA to Microinstructions: implementing IJVM
- Microachitecture (Lec 10, 11, 12) - Part 2: Design Improvements
- Reduction of execution path length
- Super scalar architectures
- Prefetching (IFU)
- Caches
- Pipeline (Dependences/Hazards: RAW dependence, etc)
- Branch prediction
- Out-of-orderd execution
- Speculative execution
- Instruction Set Architecture (Lec 13, 14)
-
Overview of the ISA level
- Data types
- Instruction formats and types
- Addressing modes (immediate, direct, register, indirect,
indexed, base-indexed, stack)
- Traps and Interrupts
- IA-32 vs IA-64