
![]()
|
CPU, Memory, Cache, Virtual Memory, Bus, Disk, other I/O | |
|
Ability to understand technical literature on new computer systems |
|
Understanding all components of a computer system affect performance | |
|
Ability to use benchmarks and performance metrics | |
|
Understanding of the tradeoffs between RISC and CISC computers |
|
Understanding the relationship between Machine Code, Assembly Code, and High-level Languages | |
|
Ability to program moderately-complex programs in assembly language | |
|
Ability to hand assemble and dis-assemble code |
|
Ability to design integer ALUs at the gate level | |
|
Understanding of integer multiplication and division algorithms | |
|
Understanding of floating-point formats and simple operations |
|
Understanding of the relationship between assembly language and CPU design | |
|
Ability to design and analyze simple integer CPUs | |
|
Ability to design and analyze multi-cycle integer CPUs |
|
Ability to design and analyze multi-stage pipelined CPUs | |
|
Ability to design hazard detection logic | |
|
Ability to design register-forwarding hazard prevention systems |
|
Understanding of the purpose of cache memory systems | |
|
Ability to design simple cache memory systems | |
|
Understanding of multi-level cache memory systems | |
|
Ability to analyze the performance of a cache memory system | |
|
Ability to design and analyze associative caches |
|
Understanding of the purposes of virtual memory systems | |
|
Ability to design and analyze simple demand-based virtual memory systems |
![]()
Kevin Bolding January 01, 2008