Computer Organization and Architecture
Instruction Set Architecture (ISA)
Studied how processors interpret and execute instructions, with an emphasis on performance implications.Computer Arithmetic
Explored binary operations, ALUs, and how arithmetic units handle calculations at the hardware level.Processor Internals & Pipelining
Designed and analyzed datapaths and control paths, implementing pipelined architectures to improve throughput.Memory Hierarchy & System Design
Investigated cache structures, RAM access patterns, and strategies for minimizing latency and bottlenecks.I/O Systems
Learned how CPUs communicate with external devices, focusing on buses, controllers, and interrupt handling.Parallelism & Performance Optimization
Applied parallel processing techniques and evaluated system performance through simulation and modeling.Hardware/Software Co-Design
Explored strategies for optimizing systems by aligning hardware capabilities with software needs.Case Studies
Analyzed real-world processor architectures and their trade-offs.
Course | Master of Science in Electrical Engineering
Semester: Spring 2025
Instructor: Dr. Sudeep Pasricha
Course Overview
Technical Scope
This course provided a deep dive into how modern computers are built and operate—from the low-level language a processor understands to the complex flow of data through processing units, memory, and I/O systems. It explored the fundamental building blocks of computer architecture, including instruction set design, arithmetic logic, control units, and memory hierarchy. A strong emphasis was placed on bridging the gap between software and hardware, helping students understand how high-level code is ultimately executed at the circuit level. This perspective is essential for designing and optimizing efficient, high-performance computing systems in both embedded and general-purpose applications.
Final Reflection
This course sharpened my understanding of how hardware and software interact at a fundamental level, equipping me with the ability to analyze and optimize computer systems for real-world applications. The course strengthened my problem-solving skills in designing efficient processors, memory architectures, and I/O systems—all critical for developing high-performance and reliable technology solutions. This foundation prepares me to contribute effectively to roles in embedded systems design, hardware-software integration, and computer architecture development, where a deep technical understanding and practical system-level insight are essential.


Connect
Explore my projects and coursework for insights.
afiah468@gmail.com
+970-689-1697
© 2025. All rights reserved.