_index.md (3438B)
1 +++ 2 title = 'Systems Architecture' 3 +++ 4 5 # Systems Architecture 6 7 1. [Intro: Laws of Computing](empirical-laws-of-computing) 8 9 2. Digital Logic 10 11 - Boolean Algebra 12 - [Representation of data (algebra, truth tables)](representation-of-data) 13 - [Logic function synthesis](synthesis-of-logic-functions) 14 - [Minimisation using Karnaugh maps](karnaugh-maps) 15 - Logic gates 16 - [Basic (AND, OR, NOT, XOR)](basic-logic-gates) 17 - [Universal (NAND, NOR)](universal-gates) 18 - Combinatorial circuits (output depends only on current input) 19 - [Decoders](decoders) 20 - [Multiplexers](multiplexers) 21 - Sequential circuits (output also depends on previous inputs - system state) 22 - [Flip-flops](flip-flops) 23 - SR Latch 24 - Gated SR Latch 25 - Gated D latch 26 - T flip-flop 27 - Master-slave flip-flop 28 - [Registers, shift registers](registers-and-shift-registers) 29 - [Counters](counters) 30 31 3. Digital Data 32 33 - [Positional numbering system](positional-numbering-system) 34 - [Conversion between bases](conversion-between-bases) 35 - [Numeric representations of data types](numeric-representations-of-data-types) 36 - Integers arithmetic 37 - [Addition & subtraction with signed integers](addition-subtraction-with-signed-integers) 38 - [Addition/subtraction logic unit](addition-subtraction-logic-unit) 39 - [Multiplication of signed integers](multiplication-of-signed-integers) 40 - Floating point arithmetic 41 - [Adding/subtracting floating point values](adding-subtracting-floating-point-values). 42 - [Multiplying/dividing floating point values.](multiplying-dividing-floats) 43 44 4. ISAs 45 46 1. [Memory locations & addresses](memory-locations-addresses) 47 48 2. [Memory operations & instructions](memory-operations-instructions) 49 50 3. [Addressing modes](addressing-modes) 51 52 4. [Subroutines & the Stack](subroutines-the-stack) 53 54 5. Basic processing unit 55 56 1. [Instruction execution](instruction-execution) 57 58 2. [Hardware components](hardware-components) 59 60 3. [Data path & instructions](data-path-instructions) 61 62 6. Pipelining 63 64 1. [The Basic Concept](the-basic-concept) 65 66 2. Hazards 67 68 1. [Data dependencies](data-dependencies) 69 70 2. [Memory delays](memory-delays) 71 72 3. [Branch delays](branch-delays) 73 74 3. [Superscalar operation](superscalar-operation) 75 76 7. IO 77 78 1. [Buses](buses) 79 80 2. [Accessing I/O devices](accessing-i-o-devices) 81 82 3. Basic approaches: 83 84 - [Program-controlled](program-controlled-i-o) 85 - [Interrupts](interrupts) 86 87 8. Memory 88 89 1. [Basic concepts](basic-concepts) 90 91 2. [Internal organisation of memory chips](internal-organisation-of-memory-chips) 92 93 3. [Memory types](memory-types) 94 95 4. [Direct Memory Access (DMA)](direct-memory-access-dma) 96 97 5. [Memory Hierarchy](memory-hierarchy) 98 99 6. [Cache memory](cache-memory) 100 101 7. [Mapping functions](mapping-functions) 102 103 8. [Performance considerations](performance-considerations) 104 105 9. Large-scale systems (parallel processing & performance) 106 107 1. [Multithreading](multithreading) 108 109 2. [Vector (SIMD) processing & GPUs](vector-simd-processing-gpus) 110 111 3. [Shared-memory multiprocessors](shared-memory-multiprocessors) 112 113 4. [Cache coherence](cache-coherence) 114 115 5. [Parallel programming](parallel-programming)