This is the official home for Georgia Tech's ECE 3058 course, which is officially named: Architecture, Systems, Concurrency and Energy in Computation.
What's New in ECE 3058?¶
ECE 3058 evolved from 3055, 3056 and 3057. The current iteration of the course is based on content and labs created by various faculty members and students over the years.
The one question that set the direction for course revisions was:
How can we give students the tools they need to be an effective computer architect?
The Effective Computer Architect Has:
- A holistic understanding of computing systems - including both the architecture and operating system
- A rich understanding of microarchitectural choices and their implications
- The ability to choose the most effective design tools
- The ability to question and improve past architectures
One thing that was largely overhauled were the tools used in this course.
The modern computer architect should be familiar with:
- RTLs such as Verilog or VHDL
- High level HDL such as:
- Chisel from Scala or
- nMigen from Python or
- Bluespec Verilog from Haskell
- Integrating compilers with RTL simulators
Each student should know what happens from the moment a computer's on button is pressed, to the moment it shuts down.
You won't learn all of that in this course.
What you will learn are some fundamental concepts and how to further explore different components of computer architecture that fascinate you.