ECE222: Digital Computers
I needed to convince myself that this course is useful. It is extremely useful, because software oftentimes need to interact with hardware. When you run out of Memory, or you see the term DDR4 and you never understood what it stood for, and now you finally do! Or the idea of Cache Coherency! You are going to learn it all within a week, this is super exciting.
Link to course notes here.
Watch this playlist instead of going to class.
Concepts
Chapter 1
- Moore’s Law
- ENIAC was a general purpose machine.
- 8 Great Ideas in Computer Architecture
- Computer Memory
- Comparing performance using Performance Test
- CPU for execution time
- CPU Performance
- Yield
- Latency
- MAC
- Coprocessor
- Accelerator
- Amdahl’s Law
- Program Counter
- Computer
- Liquid Crystal Display
- Local Area Network
- Wide Area Network
- Silicon
- Electromagnetic Induction
Chapter 2
- Endianness
- Byte Addressing
- RISC-V
- Instruction Set Architecture
- Computer Memory
- Alignment Restriction
- Synchronization
- Dynamically Linked Libraries (DLLs)
Chapter 4
- RISC-V Implementation
- State Element
- Control Unit
- Edge-Triggered Clocking
- Clock Signal
- Datapath
- Arithmetic Logic Unit (ALU)
- Pipelining
- Dealing with the 3 kinds of hazards
- Exception
- SCAUSE
- Vectored Interrupt
- Microarchitecture
- Memory-Mapped IO
Chapter 5: Computer Memory
- Memory Hierarchy
- Principle of Locality
- Hit Rate
- SRAM
- DRAM
- Flash Memory
- EEPROM
- Wear Leveling
- Disk Memory
- Cache
- LRU Scheme
- Cache Performance
- Content-Addressable Memory
- Write Buffer
- Hamming Distance
- Error Detection and Correction
- Error Correction Code
- Virtual Machine
- Virtual Memory
- Segmentation (Memory)
- Translation-Lookaside Buffer (TLB)
- Data Striping
- Redundant Array of Inexpensive Disks (RAID)
- Prefetching
Chapter 6 (self-study)
- SISD
- MIMD
- SPMD
- SIMD
- Graphics Processing Unit (GPU)
- CUDA
Other
- Domain-Specific Language
- General-Purpose Language
- 6.7 Domain-Specific Architecture
1 word = 4 bytes = 32 bits double-word = 8 bytes = 64 bits
Computer Program → REALLY IMPORTANT PAGE TO UNDERSTAND THE DIFFERENT LAYERS OF THE COMPUTER PROGRAM
Chapter 4: Review