Unit 1 Introduction Video |
— |
Unit 1 Learning Outcomes |
- 1a List the major advances that have taken place in the history of computer technology (CLO 1)
- 1b List the basic elements in a computer block diagram (CLO 2)
- 1c Explain key trends in the computing industry (CLO 1)
|
Computer History |
- 1a List the major advances that have taken place in the history of computer technology (CLO 1)
|
History of Computing Hardware |
- 1a List the major advances that have taken place in the history of computer technology (CLO 1)
|
Personal Computer Hardware |
- 1b List the basic elements in a computer block diagram (CLO 2)
|
Practice Drag and Drop: Parts of a Computer |
- 1b List the basic elements in a computer block diagram (CLO 2)
|
CPU and Processor Time Counter |
- 1b List the basic elements in a computer block diagram (CLO 2)
|
Microprocessor Design and Performance |
- 1b List the basic elements in a computer block diagram (CLO 2)
|
Computing Benchmarks |
- 1b List the basic elements in a computer block diagram (CLO 2)
|
Amdahl's Law |
- 1b List the basic elements in a computer block diagram (CLO 2)
|
Learning Activity: Amdahl's Law |
- 1b List the basic elements in a computer block diagram (CLO 2)
|
The Need For A Radical New Type Of Computer Architecture |
- 1c Explain key trends in the computing industry (CLO 1)
|
Modern Computing |
- 1c Explain key trends in the computing industry (CLO 1)
|
Unit 1 Assessment |
- 1a List the major advances that have taken place in the history of computer technology (CLO 1)
- 1b List the basic elements in a computer block diagram (CLO 2)
- 1c Explain key trends in the computing industry (CLO 1)
|
Unit 2 Introduction Video |
— |
Unit 2 Learning Outcomes |
- 2a Illustrate the hardware–software interface for executing a simple program statement (CLO 2)
- 2b Illustrate how high-level programs are translated into machine language using the process for a simple C program statement (CLO 2)
- 2c Convert an integer into binary and other base-n representations (CLO 4)
- 2d Convert a decimal number into its floating-point representation (CLO 4)
- 2e Explain the functions of the CPU in executing instructions, including fetching, decoding, executing, and storing results program (CLO 5)
- 2f Describe how a simple MIPS assembly language program executes step by step (CLO 2)
|
Introduction to Programming Languages |
- 2a Illustrate the hardware–software interface for executing a simple program statement (CLO 2)
- 2b Illustrate how high-level programs are translated into machine language using the process for a simple C program statement (CLO 2)
|
Machine Code |
- 2b Illustrate how high-level programs are translated into machine language using the process for a simple C program statement (CLO 2)
|
The Machine Cycle |
- 2a Illustrate the hardware–software interface for executing a simple program statement (CLO 2)
|
Introduction to Number Systems |
- 2c Convert an integer into binary and other base-n representations (CLO 4)
|
More on Number Systems |
- 2c Convert an integer into binary and other base-n representations (CLO 4)
- 2d Convert a decimal number into its floating-point representation (CLO 4)
|
Floating Points |
- 2c Convert an integer into binary and other base-n representations (CLO 4)
- 2d Convert a decimal number into its floating-point representation (CLO 4)
|
Practice with Number Systems |
- 2c Convert an integer into binary and other base-n representations (CLO 4)
|
Converting Decimal Numbers to Binary |
- 2c Convert an integer into binary and other base-n representations (CLO 4)
|
Fractions |
- 2c Convert an integer into binary and other base-n representations (CLO 4)
|
Practice Questions: Converting Numbers |
- 2b Illustrate how high-level programs are translated into machine language using the process for a simple C program statement (CLO 2)
- 2c Convert an integer into binary and other base-n representations (CLO 4)
- 2d Convert a decimal number into its floating-point representation (CLO 4)
|
RISC and CISC |
- 2e Explain the functions of the CPU in executing instructions, including fetching, decoding, executing, and storing results program (CLO 5)
|
MIPS Instructions |
- 2e Explain the functions of the CPU in executing instructions, including fetching, decoding, executing, and storing results program (CLO 5)
- 2f Describe how a simple MIPS assembly language program executes step by step (CLO 2)
|
MIPS Arithmetic Instructions |
|
MIPS Control Flow Instructions |
|
MIPS Memory Instructions |
|
Addressing Memory |
|
First Program in MIPS Assembly |
|
X86 Instructions |
|
ARM Architecture |
|
Unit 2 Assessment |
- 2a Illustrate the hardware–software interface for executing a simple program statement (CLO 2)
- 2b Illustrate how high-level programs are translated into machine language using the process for a simple C program statement (CLO 2)
- 2c Convert an integer into binary and other base-n representations (CLO 4)
- 2d Convert a decimal number into its floating-point representation (CLO 4)
- 2e Explain the functions of the CPU in executing instructions, including fetching, decoding, executing, and storing results program (CLO 5)
- 2f Describe how a simple MIPS assembly language program executes step by step (CLO 2)
|
Unit 3 Introduction Video |
— |
Unit 3 Learning Outcomes |
- 3a Describe the evolution of physical components used to implement Boolean logic in the design of digital processors and computers (CLO 3)
- 3b Construct a simple digital circuit from a given truth table or Karnaugh map (CLO 3)
- 3c Design a 4-bit adder (CLO 3)
- 3d Implement a simple sequential circuit from a given state diagram and state transition table (CLO 3)
|
Logic Gates |
- 3a Describe the evolution of physical components used to implement Boolean logic in the design of digital processors and computers (CLO 3)
|
Ladder Logic |
- 3b Construct a simple digital circuit from a given truth table or Karnaugh map (CLO 3)
|
Karnaugh Mapping |
- 3b Construct a simple digital circuit from a given truth table or Karnaugh map (CLO 3)
|
Combinational Logic Functions |
- 3c Design a 4-bit adder (CLO 3)
|
Multivibrators |
- 3d Implement a simple sequential circuit from a given state diagram and state transition table (CLO 3)
|
Sequential Circuits |
- 3d Implement a simple sequential circuit from a given state diagram and state transition table (CLO 3)
|
Finite State Automata |
- 3d Implement a simple sequential circuit from a given state diagram and state transition table (CLO 3)
|
Unit 3 Assessment |
- 3a Describe the evolution of physical components used to implement Boolean logic in the design of digital processors and computers (CLO 3)
- 3b Construct a simple digital circuit from a given truth table or Karnaugh map (CLO 3)
- 3c Design a 4-bit adder (CLO 3)
- 3d Implement a simple sequential circuit from a given state diagram and state transition table (CLO 3)
|
Unit 4 Introduction Video |
— |
Unit 4 Learning Outcomes |
- 4a Explain how integers and real numbers are represented in binary and floating-point formats (CLO 4)
- 4b Calculate the outputs of a 4-bit adder for given input values (CLO 3)
- 4c Apply a 4-bit adder to perform multiplication, subtraction, and division (CLO 4)
- 4d Use half-adder blocks to implement the operation of a full adder (CLO 3)
|
Integers and the Representation of Real Numbers |
- 4a Explain how integers and real numbers are represented in binary and floating-point formats (CLO 4)
- 4b Calculate the outputs of a 4-bit adder for given input values (CLO 3)
|
Floating Points Arithmetic |
- 4a Explain how integers and real numbers are represented in binary and floating-point formats (CLO 4)
- 4c Apply a 4-bit adder to perform multiplication, subtraction, and division (CLO 4)
|
Add and Subtract Blocks |
- 4c Apply a 4-bit adder to perform multiplication, subtraction, and division (CLO 4)
- 4d Use half-adder blocks to implement the operation of a full adder (CLO 3)
|
Binary Multipliers |
- 4c Apply a 4-bit adder to perform multiplication, subtraction, and division (CLO 4)
|
Division |
- 4c Apply a 4-bit adder to perform multiplication, subtraction, and division (CLO 4)
|
Division Algorithm |
— |
Arithmetic for Computers |
- 4b Calculate the outputs of a 4-bit adder for given input values (CLO 3)
- 4c Apply a 4-bit adder to perform multiplication, subtraction, and division (CLO 4)
|
Extended Precision |
- 4c Apply a 4-bit adder to perform multiplication, subtraction, and division (CLO 4)
|
Unit 4 Assessment |
- 4a Explain how integers and real numbers are represented in binary and floating-point formats (CLO 4)
- 4b Calculate the outputs of a 4-bit adder for given input values (CLO 3)
- 4c Apply a 4-bit adder to perform multiplication, subtraction, and division (CLO 4)
- 4d Use half-adder blocks to implement the operation of a full adder (CLO 3)
|
Unit 5 Introduction Video |
— |
Unit 5 Learning Outcomes |
- 5a Illustrate how the hardware components of a processor execute a simple operation (CLO 2)
- 5b Describe the organization and operation of a Von Neumann computer architecture (CLO 1)
- 5c Summarize the design of a simple MIPS processor (CLO 1)
- 5d Describe the basic operation of pipelining (CLO 6)
- 5e Describe different types of pipeline hazards (data, control, and structural) and their effects on performance (CLO 6)
- 5f Describe the approaches used to improve processor performance (CLO 5)
|
The Von Neumann Architecture |
- 5a Illustrate how the hardware components of a processor execute a simple operation (CLO 2)
- 5b Describe the organization and operation of a Von Neumann computer architecture (CLO 1)
|
Learning Activity: Instruction Execution Path |
- 5a Illustrate how the hardware components of a processor execute a simple operation (CLO 2)
|
An Introduction to Processor Design |
- 5a Illustrate how the hardware components of a processor execute a simple operation (CLO 2)
- 5b Describe the organization and operation of a Von Neumann computer architecture (CLO 1)
|
Datapaths |
- 5a Illustrate how the hardware components of a processor execute a simple operation (CLO 2)
|
Processor Design Control |
- 5c Summarize the design of a simple MIPS processor (CLO 1)
|
Pipelining |
- 5d Describe the basic operation of pipelining (CLO 6)
|
Pipelining Hazards |
- 5e Describe different types of pipeline hazards (data, control, and structural) and their effects on performance (CLO 6)
|
Handling Data Hazards |
- 5e Describe different types of pipeline hazards (data, control, and structural) and their effects on performance (CLO 6)
|
Handling Control Hazards |
- 5e Describe different types of pipeline hazards (data, control, and structural) and their effects on performance (CLO 6)
|
Parallelism |
- 5f Describe the approaches used to improve processor performance (CLO 5)
|
Instruction-Level Parallelism |
- 5f Describe the approaches used to improve processor performance (CLO 5)
|
Unit 5 Assessment |
- 5a Illustrate how the hardware components of a processor execute a simple operation (CLO 2)
- 5b Describe the organization and operation of a Von Neumann computer architecture (CLO 1)
- 5c Summarize the design of a simple MIPS processor (CLO 1)
- 5d Describe the basic operation of pipelining (CLO 6)
- 5e Describe different types of pipeline hazards (data, control, and structural) and their effects on performance (CLO 6)
- 5f Describe the approaches used to improve processor performance (CLO 5)
|
Unit 6 Introduction Video |
— |
Unit 6 Learning Outcomes |
- 6a Explain the principles of the memory hierarchy and the trade-offs between speed, cost, and capacity across different memory types (CLO 7)
- 6b Explain how cache memory is organized and optimized for performance (CLO 7)
- 6c Analyze the impact of cache memory on system efficiency using concepts like cache hits, misses, and replacement policies (CLO 7)
- 6d Explain how virtual memory extends physical memory to support the efficient execution of large programs (CLO 7)
|
The Basics of Memory Heirarchy |
- 6a Explain the principles of the memory hierarchy and the trade-offs between speed, cost, and capacity across different memory types (CLO 7)
- 6b Explain how cache memory is organized and optimized for performance (CLO 7)
|
Practice Sorting: Compare Types of Memory |
- 6a Explain the principles of the memory hierarchy and the trade-offs between speed, cost, and capacity across different memory types (CLO 7)
- 6b Explain how cache memory is organized and optimized for performance (CLO 7)
|
Cache Organization |
- 6b Explain how cache memory is organized and optimized for performance (CLO 7)
- 6c Analyze the impact of cache memory on system efficiency using concepts like cache hits, misses, and replacement policies (CLO 7)
|
Cache Memory Performance Optimization |
- 6c Analyze the impact of cache memory on system efficiency using concepts like cache hits, misses, and replacement policies (CLO 7)
|
Virtual Memory |
- 6d Explain how virtual memory extends physical memory to support the efficient execution of large programs (CLO 7)
|
Unit 6 Assessment |
- 6a Explain the principles of the memory hierarchy and the trade-offs between speed, cost, and capacity across different memory types (CLO 7)
- 6b Explain how cache memory is organized and optimized for performance (CLO 7)
- 6c Analyze the impact of cache memory on system efficiency using concepts like cache hits, misses, and replacement policies (CLO 7)
- 6d Explain how virtual memory extends physical memory to support the efficient execution of large programs (CLO 7)
|
Unit 7 Introduction Video |
— |
Unit 7 Learning Outcomes |
- 7a Explain the role of the I/O subsystem in managing communication between the CPU, memory, and external devices (CLO 8)
- 7b Explain the role of interrupts and their types, such as programmable, maskable, and non-maskable (CLO 8)
- 7c Discuss storage and I/O devices, their performance measurement, and RAID technology (CLO 6, CLO 8)
|
Introduction to I/O Subsystems |
- 7a Explain the role of the I/O subsystem in managing communication between the CPU, memory, and external devices (CLO 8)
- 7b Explain the role of interrupts and their types, such as programmable, maskable, and non-maskable (CLO 8)
|
Interfaces and Buses |
- 7a Explain the role of the I/O subsystem in managing communication between the CPU, memory, and external devices (CLO 8)
- 7b Explain the role of interrupts and their types, such as programmable, maskable, and non-maskable (CLO 8)
|
Practice Drag and Drop: Storage and I/O |
- 7a Explain the role of the I/O subsystem in managing communication between the CPU, memory, and external devices (CLO 8)
- 7b Explain the role of interrupts and their types, such as programmable, maskable, and non-maskable (CLO 8)
|
Hard Disk Drive Performance Characteristics |
- 7c Discuss storage and I/O devices, their performance measurement, and RAID technology (CLO 6, CLO 8)
|
RAID |
- 7c Discuss storage and I/O devices, their performance measurement, and RAID technology (CLO 6, CLO 8)
|
Unit 7 Assessment |
- 7a Explain the role of the I/O subsystem in managing communication between the CPU, memory, and external devices (CLO 8)
- 7b Explain the role of interrupts and their types, such as programmable, maskable, and non-maskable (CLO 8)
- 7c Discuss storage and I/O devices, their performance measurement, and RAID technology (CLO 6, CLO 8)
|
Unit 8 Introduction Video |
— |
Unit 8 Learning Outcomes |
- 8a Explain the need for parallel architectures and multi-core processors in addressing performance limitations of sequential systems (CLO 9)
- 8b Apply Amdahl's and Gustafson's Laws to compute speedup for given tasks (CLO 9)
- 8c Describe different approaches to parallel computation (CLO 9)
- 8d Describe common challenges in transitioning from sequential to parallel execution (CLO 9)
- 8e Analyze cache coherence or memory consistency issues to determine bottlenecks (CLO 9)
|
Parallel Processing |
- 8a Explain the need for parallel architectures and multi-core processors in addressing performance limitations of sequential systems (CLO 9)
|
Why Do We Need Parallel Architectures? |
- 8a Explain the need for parallel architectures and multi-core processors in addressing performance limitations of sequential systems (CLO 9)
|
Multi-Core Chips |
- 8a Explain the need for parallel architectures and multi-core processors in addressing performance limitations of sequential systems (CLO 9)
|
Limits and Costs of Parallel Programming |
- 8b Apply Amdahl's and Gustafson's Laws to compute speedup for given tasks (CLO 9)
|
Parallel Performance: Amdahl vs. Gustafson |
- 8b Apply Amdahl's and Gustafson's Laws to compute speedup for given tasks (CLO 9)
|
Parallel Architectures |
- 8c Describe different approaches to parallel computation (CLO 9)
|
Parallel Models |
- 8c Describe different approaches to parallel computation (CLO 9)
|
Practice Matching: Parallel Architecture |
- 8c Describe different approaches to parallel computation (CLO 9)
|
Challenges of Parallel Processing |
- 8c Describe different approaches to parallel computation (CLO 9)
- 8d Describe common challenges in transitioning from sequential to parallel execution (CLO 9)
|
From Sequential to Parallel |
- 8d Describe common challenges in transitioning from sequential to parallel execution (CLO 9)
|
Cache Coherence |
- 8d Describe common challenges in transitioning from sequential to parallel execution (CLO 9)
- 8e Analyze cache coherence or memory consistency issues to determine bottlenecks (CLO 9)
|
Memory Consistency |
- 8e Analyze cache coherence or memory consistency issues to determine bottlenecks (CLO 9)
|
Unit 8 Assessment |
- 8a Explain the need for parallel architectures and multi-core processors in addressing performance limitations of sequential systems (CLO 9)
- 8b Apply Amdahl's and Gustafson's Laws to compute speedup for given tasks (CLO 9)
- 8c Describe different approaches to parallel computation (CLO 9)
- 8d Describe common challenges in transitioning from sequential to parallel execution (CLO 9)
- 8e Analyze cache coherence or memory consistency issues to determine bottlenecks (CLO 9)
|
Unit 9 Introduction Video |
— |
Unit 9 Learning Outcomes |
- 9a Discuss basic laws applicable to computer performance (CLO 5, CLO 10)
- 9b Describe examples of computer architecture for special-purpose computing architectures (CLO 5, CLO 10)
|
Topologies |
- 9a Discuss basic laws applicable to computer performance (CLO 5, CLO 10)
|
GPU, Distributed, Grid, and Cloud Computing |
- 9b Describe examples of computer architecture for special-purpose computing architectures (CLO 5, CLO 10)
|
Distributed, Cloud, and Edge Architectures |
- 9b Describe examples of computer architecture for special-purpose computing architectures (CLO 5, CLO 10)
|
GPU and TPU |
- 9b Describe examples of computer architecture for special-purpose computing architectures (CLO 5, CLO 10)
|
RISC-V |
- 9b Describe examples of computer architecture for special-purpose computing architectures (CLO 5, CLO 10)
|
TOP500 |
- 9b Describe examples of computer architecture for special-purpose computing architectures (CLO 5, CLO 10)
|
Practice Simulation: Special Architectures |
- 9a Discuss basic laws applicable to computer performance (CLO 5, CLO 10)
- 9b Describe examples of computer architecture for special-purpose computing architectures (CLO 5, CLO 10)
|
Unit 9 Assessment |
- 9a Discuss basic laws applicable to computer performance (CLO 5, CLO 10)
- 9b Describe examples of computer architecture for special-purpose computing architectures (CLO 5, CLO 10)
|
CS301 Study Guide |
— |
CS301: Certificate Final Exam |
— |
View Your Course Completion Certificate |
— |