Thanks to visit codestin.com
Credit goes to www.scribd.com

0% found this document useful (0 votes)
62 views2 pages

Computer Architecture Course Outline

The document outlines the course CSC 316: Computer Architecture at the University of Benin, focusing on the interaction between hardware and software in modern computing technology. It covers topics such as instruction sets, processor design, memory management, and the transition from sequential to parallel processing. The course aims to equip students with a comprehensive understanding of computer architecture and its practical applications through various units and assessments.

Uploaded by

Lawal Ishola
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
62 views2 pages

Computer Architecture Course Outline

The document outlines the course CSC 316: Computer Architecture at the University of Benin, focusing on the interaction between hardware and software in modern computing technology. It covers topics such as instruction sets, processor design, memory management, and the transition from sequential to parallel processing. The course aims to equip students with a comprehensive understanding of computer architecture and its practical applications through various units and assessments.

Uploaded by

Lawal Ishola
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 2

Department Of Curriculum and Instruction

Faculty of Education
University Of Benin

Course Code: CSC 316


Course Title: Computer Architecture
Course Unit: 3

Course Description
Explore hardware/software components, assembly language, and the functional architecture and design of
computers, with a focus on topics like instruction sets, processor arithmetic and control, Von Neumann
architecture, pipelining, memory management, storage, and input/output.

Course Introduction
Modern computer technology requires an understanding of both hardware and software since the
interaction between the two offers a framework for mastering the fundamentals of computing. The
purpose of this course is to cultivate an understanding of modern computing technology through an in-
depth study of the interface between hardware and software. In this course, you will study the history of
modern computing technology before learning about modern computer architecture and a number of its
essential features, including instruction sets, processor arithmetic and control, the Von Neumann
architecture, pipelining, memory management, storage, and other input/output topics. The course will
conclude with a look at the recent switch from sequential processing to parallel processing by looking at
the parallel computing models and their programming implications.

Course Objectives
Upon successful completion of this course, student will be able to:
 Identify important advances that have taken place in the history of modern computing, and discuss
some of the latest trends in the computing industry;
 Explain how programs written in high-level programming languages, such as C or Java, can be
translated into the language of the hardware;
 Describe the interface between hardware and software, and explain how software instructs
hardware to accomplish desired functions;
 Explain the process of carrying out sequential logic design;
 Explain computer arithmetic hardware blocks and floating-point representation;
 Explain how a hardware programming language is executed on hardware and how hardware and
software design affect performance;
 Explain the importance of memory hierarchy in computer design, and explain how memory design
impacts overall hardware performance;
 Describe storage and I/O devices, their performance measurement, and redundant array of
inexpensive disks (more commonly referred to by the acronym RAID) technology; and
 Identify the reasons for and the consequences of the recent switch from sequential processing to
parallel processing in hardware manufacture, and explain the basics of parallel programming.

• Unit 1: Introduction to Computer Technology


In this unit, we will discuss some of the advances in technology that led to the development of modern
computers. We will begin our study with a look at the different components of a computer. We will then
discuss the ways in which we measure hardware and software performance before discussing the
importance of computing power and how it motivated the switch from a single-core to a multi-core
processor.
• Unit 2: Instructions: Hardware Language
In order to understand computer architecture, you need to understand the components that comprise a
computer and their interconnections. Sets of instructions, called programs, describe the computations that
computers carry out. The instructions are strings of binary digits. When symbols are used for the binary
strings, the instructions are called assembly language instructions. Components interpret the instructions
and send signals to other components that cause the instruction to be carried out.

• Unit 3: Fundamentals of Digital Logic Design


We will begin this unit with an overview of digital components, identifying the building blocks of digital
logic. We will build on that foundation by writing truth tables and learning about more complicated
sequential digital systems with memory. This unit serves as background information for the processor
design techniques we learn in later units.

• Unit 4: Computer Arithmetic


In this unit, you will build upon your knowledge of computer instructions and digital logic design to
discuss the role of computer arithmetic in hardware design. We will also discuss the designs of adders,
multipliers, and dividers. You will learn that there are two types of arithmetic operations performed by
computers: integer and floating point. Finally, we will discuss floating point details for carrying out
operations with real numbers.

• Unit 5: Designing a Processor


In this unit, we will discuss various components of MIPS processor architecture and then take a subset of
MIPS instructions to create a simplified processor in order to better understand the steps in processor
design. This unit will ask you to apply the information you learned in units 2, 3, and 4 to create a simple
processor architecture. We will also discuss a technique known as pipelining, which is used to improve
processor performance. We will also identify the issues that limit the performance gains that can be
achieved from it.

• Unit 6: The Memory Hierarchy


This unit will address the memory hierarchy of a computer and will identify different types of memory
and how they interact with one another. This unit will look into a memory type known as cache and will
discuss how caches improve computer performance. This unit will then discuss the main memory, DRAM
(or the Dynamic Random Access Memory), and the associated concept of virtual memory. You will take a
look at the common framework for memory hierarchy. The unit concludes with a review of the design of a
cache hierarchy for an industrial microprocessor.

• Unit 7: Storage and I/O


In this unit, we will discuss the input/output devices that enable communication between computers and
the outside world in some form. The reliability of these devices is important; we will accordingly discuss
the related issues of dependability, availability, and reliability. You will also take a look at non-volatile
storage mediums, such as disk and flash memory, before learning about mechanisms used to connect the
computer to input/output devices. This unit will conclude by discussing disk system performance
measures.

• Unit 8: Parallel Processing


This unit will address several advanced topics in computer architecture, focusing on the reasons for and
the consequences of the recent switch from sequential processing to parallel processing by hardware
producers. You will learn that parallel programming is not easy and that parallel processing imposes
certain limitations in performance gains, as seen in the well-known Amdahl's law. You will also look into
the concepts of shared memory multiprocessing and cluster processing as two common means of
improving performance with parallelism. The unit will conclude with a look at some of the programming
techniques used in the context of parallel machines.

Unit 9: Lecture Revision and Examination


Class attendance, Test, Term Paper, Project, etc: 30%
End of semester Exam 70%

You might also like