Computer Architecture Why do you want to study Computer Architecture ? Because the design, analysis, implementation concepts are vital to all aspects of computer science and engineering. Because the course will equip you with an intellectual toolbox for dealing with a host of systems design challenges. Course Goals Understand Interfaces (ex. Abstract Data Type = State + Operations) Instruction Set Architecture ("The Hardware/Software Interface") Engineering methodology/Correctness criteria/Evaluation method/Technology trend The design techniques Pipeline Cache Multiprocessor Cache Coherence Synchronization Interconnection Network 인터페이스를 이해하기 위해서는 ADT의 operation과 state를 이해해야 한다. 함수를 이해하기 위해서는 함수의 input과 output의 패턴을 이해하면 된다. Engineering methodology Rule 1 : Identify and Optimize the Common Case 주로 일어나는 경우가 무엇인지 관찰한 후, 해당 경우의 Speed를