Electricity and signals
Tópicos
- Voltage, current, resistance
- Ohm’s Law
- Analog vs digital signals
- Binary representation (0 and 1)
- Signal noise and reliability
- Clock signals
- Timing and propagation delay
Transistors
Tópicos
- What is a transistor
- BJT vs MOSFET
- Switching behavior
- Transistor as a switch
- CMOS technology
- Power consumption (dynamic vs static)
- Scaling and nanometer process
Logic gates
Tópicos
- NOT, AND, OR
- NAND, NOR
- XOR, XNOR
- Truth tables
- Gate composition
- Universal gates (NAND/NOR)
Combinational logic
Tópicos
- Boolean algebra simplification
- Karnaugh maps
- Multiplexers (MUX)
- Demultiplexers (DEMUX)
- Encoders and decoders
- Adders (half adder, full adder)
- Comparators
Sequential logic
Tópicos
- Latches (SR, D)
- Flip-flops (JK, T, D)
- Clocked circuits
- Finite State Machines (FSM)
- Mealy vs Moore machines
- Timing constraints (setup/hold)
Memory basics
Tópicos
- What is memory
- Bits, bytes, words
- Memory addressing
- [[Byte Endianness]]
- RAM vs ROM
- SRAM vs DRAM
- Memory hierarchy basics
Registers
Tópicos
- Register design
- Shift registers
- Register files
- Load/store operations
- Temporary storage in CPU
Datapaths
Tópicos
- Datapath design basics
- Data flow between components
- Instruction execution path
- Pipelined vs non-pipelined datapaths
- Hazard types (data, control, structural)
ALU (Arithmetic Logic Unit)
Tópicos
- Arithmetic operations (add, sub, mul, div)
- Bitwise operations
- Shifting and rotation
- Flags (zero, carry, overflow, sign)
- Floating point basics (FPU)
Control Unit
Tópicos
- Hardwired control
- Microprogrammed control
- Instruction decoding
- Control signals
- Micro-operations
More memory stuff
Tópicos
- Cache memory (L1, L2, L3)
- Cache coherence
- Virtual memory
- Paging and segmentation
- TLB (Translation Lookaside Buffer)
- Memory-mapped I/O
Buses and hardware communication
Tópicos
- Data bus
- Address bus
- Control bus
- Bus arbitration
- Interrupts
- DMA (Direct Memory Access)
- PCIe, SATA basics
Modern CPUs
Tópicos
- Instruction Set Architecture (ISA)
- RISC vs CISC
- Superscalar execution
- Out-of-order execution
- Branch prediction
- Speculative execution
- SIMD (AVX, SSE)
- Multicore processors
- Hyper-threading
Advanced Memory Stuff
Tópicos
- NUMA architecture
- Persistent memory
- GDDR and HBM
- Memory bandwidth vs latency
- Cache optimization strategies
GPU Concepts
Tópicos
- Parallel processing model
- SIMD/SIMT architecture
- CUDA / OpenCL basics
- Warps and threads
- Memory hierarchy in GPUs
- Graphics pipeline basics
NPUs Concepts
Tópicos
- Neural network acceleration
- Tensor operations
- Matrix multiplication optimization
- Quantization (INT8, FP16)
- AI inference vs training hardware
- Edge AI hardware
System-level integration
Tópicos
- Motherboard architecture
- Chipsets
- I/O systems
- Firmware (BIOS/UEFI)
- Boot process
- Hardware-software interaction
Operating system interaction
Tópicos
- Process and thread management
- Scheduling
- Memory management
- System calls
- Drivers
- Interrupt handling
Performance & optimization
Tópicos
- Latency vs throughput
- Amdahl’s Law
- Profiling
- Bottlenecks
- Cache locality
- Parallelism
Emerging architectures
Tópicos
- Quantum computing basics
- Neuromorphic chips
- FPGA concepts
- ASIC design
- Heterogeneous computing