Computer architecture is a key component of computer engineering and the practicing computer engineer should have a practical understanding of this topic. It is concerned with all aspects of the design and organization of the central processing unit and the integration of the CPU into the computer system itself
On completion of this course the student should be able to:· Identify some contributors to computer architecture and organization and relate their achievements to the knowledge area; explain the reasons and strategies for different architectures; articulate differences between computer organization and computer architecture; identify some of the components of a computer; indicate some strengths and weaknesses inherent in different architectures; and describe how computer engineering uses or benefits from computer architecture and organization.· Explain the organization of a von Neumann machine and its major functional units; explain how a computer fetches from memory and executes an instruction; articulate the strengths and weaknesses of the von Neumann architectureAppreciate how numerical values are represented in digital computers; understand the limitations of computer arithmetic and the effects of errors on calculations; and appreciate the effect of a processor’s arithmetic unit on its overall performance· Identify the main types of memory technology; explain the effect of memory latency and bandwidth on performance; explain the use of memory hierarchy to reduce the effective memory latency; describe the principles of memory management; and understand how errors in memory systems arise and how to resolve them