Computer Architecture Pathway
The microprocessor is a triumph of modern technology. From the desktops and laptops that enable our work, to mobile processors in smartphones that help to keep us connected and informed, our world is significantly richer because of these computer systems.
A student following the Computer Architecture pathway will focus on the fundamentals of computing systems — how they work, how we can best harness their power and how to create new microprocessor-based systems to continue this amazing trajectory. This pathway combines a strong focus on microprocessors and their implementation with software techniques to efficiently use these systems.
This pathway is a good fit for students who are interested in:
- Understanding, designing and optimizing digital hardware
- Understanding optimization across software and hardware
- Developing the next generation of microprocessors and computers
Do I need a graduate degree specializing in this area to be marketable to industry?
No. However, while a student with a bachelor’s degree and good skills can easily find employment, a master’s degree opens up a noticeably wider range of positions in this area. A doctoral degree is generally required for research and teaching.
What are some examples of real-world areas of application?
There are many possible real-world applications of computer architecture. Here are a few examples:
- Designing accelerators for deep learning
- Designing the next Apple iPhone
- Designing the next Nvidia GPU
- Creation of new microprocessor designs from Intel, Apple and ARM
Does computer architecture touch on global impact, equity and/or quality of life?
Yes. The advancement of computing technology over the last few decades has transformed modern life, while low-power mobile processors in the form of cellphones have brought many of these advances to low-resource environments as well. As computers become more powerful and more affordable, they will continue to transform almost all facets of our lives.
Areas of Impact
Computing Data and Digital Technologies
Computer architecture is at the heart of computing technology, and because of that, it has a profound, fundamental impact in this area.
Related Career Paths
Students graduating with a focus in computer architecture will be prepared to pursue careers in many different types of organizations. Graduates often work at top semiconductor companies such as Intel, Apple, Nvidia, SiFive and AMD.
Computer Architecture Courses
These courses are suggested for those following the Computer Architecture pathway but are not required to complete the BSECE degree program:
EE 469 — Computer Architecture I
How does the machine code produced by a compiler translate into computation by a processor? How can we improve the performance of a processor, and what are the trade-offs that must be made? These questions and many more are answered by this course, as students receive an initial exposure to computer architecture and design their own processor in Verilog Hardware Design Language, an industry standard for hardware description.
EE 470 — Computer Architecture II
Learn about advanced computer architecture. Topics in this course include performance evaluation and energy efficiency, instruction set architectures, instruction-level parallelism, modern microprocessor micro-architecture, thread-level parallelism, cache coherency and memory consistency in shared-memory multiprocessors, memory hierarchy, GPU architecture, warehouse-scale computing, and trends in computer design.
EE 477 — Very Large-Scale Integrated Design II (Automated VLSI Design)
The vast portion of modern integrated circuits today are constructed using synthesis, auto-place and route (SAPR) methodologies. These methodologies allow a designer to describe their design using a hardware design language such as System Verilog and rely on electronic design automation to produce digital circuits that implement the desired function. Managing the massive scale achievable by such designs requires understanding both system-building principles and higher-level concepts in digital design, as well as the skills for effective use of industry-standard design tools to produce these designs. The relevance of the content and skills taught in this class have led to its support by Intel.
CSE 373 — Data Structures and Algorithms
Fundamental algorithms and data structures for implementation. Techniques for solving problems by programming. Linked lists, stacks, queues, directed graphs. Trees: representations, traversals. Searching (hashing, binary search trees, multiway trees). Garbage collection, memory management. Internal and external sorting.
CSE 374 — Intermediate Programming Concepts and Tools
Covers key software development concepts and tools not in introductory courses. Concepts of lower-level programming (C/C++) and explicit memory management; techniques and tools for individual and group software development; design, implementation, and testing strategies.
We recommend that students following the Computer Architecture pathway use any of the computer engineering-related capstones or digital logic-oriented ENGINE projects for their capstone (see the ENGINE capstone description below).
EE 497 (winter quarter) and EE 498 (spring quarter) — Engineering Entrepreneurial Capstone (ENGINE)
The Engineering Entrepreneurial Capstone program (ENGINE) is the culmination of a student’s electrical and computer engineering education at UW ECE. The program provides a unique opportunity for students to develop skills in collaborative systems engineering, project management, and most importantly, working in teams on real-world problems from industry-sponsored projects. The program is overseen by UW ECE faculty and students are guided by practicing engineers. The course culminates in a showcase of student projects, which is attended by industry sponsors and held at the end of spring quarter every year.
Students studying Computer Architecture should also consider the following customizable pathways:
Enriching Your Path
The following courses are also recommended for those following the Computer Architecture pathway:
- EE 331 — Devices and Circuits 1
- EE 332 — Devices and Circuits 2
- EE 371 — Design of Digital Circuits and Systems
- EE 419 — Introduction to Computer-Communication Networks
- EE 443 — Machine Learning for Signal Processing Applications
- EE 476 — Very Large-Scale Integrated Design II (Automated VLSI Design)
- EE 478 — Capstone Integrated Digital Design Projects
- CSE 410 — OS
- CSE 413 — Compilers