Study of architectural concepts in computer systems. Computer arithmetic and arithmetic logic unit design. Memories, memory hierarchies and dynamic address translation. CPU characteristics, performance factors. Control unit design: hardware and micro-program, microprogramming. Interrupt mechanism. DMA. Pipelining. The course includes lab works based on theory taught.