CH04
Objectives / Learning Goals
Know parts of a modern computer system.
Understand how components work together to run programs.
Learn basic computer structure and its relation to programs.
Week 4 Overview
Class Introduction and Focus
Transition from introduction phase to core content of the course.
Focus on "Marie" as a foundational example of computer architecture.
Upcoming Topics
Instruction Set Architecture (ISA) in Chapter 5.
Emphasis on Intel instruction set; be sure to review material ahead of time for better comprehension.
Homework Review Ch03
Key Concepts:
Boolean Operations:
Product (AND): True only when all operands are true.
Sum (OR): True if at least one operand is true.
Ripple Carry Adder:
A series of full adders configured in sequence with carry-outs feeding into the next.
Circuits:
Combinational Circuits:
Outputs depend solely on current inputs.
Sequential Circuits:
Outputs are influenced by both current inputs and previous states.
Edge-Triggered vs. Level-Triggered:
Edge-Triggered: Changes occur at distinct moments during clock signal transitions.
Level-Triggered: Changes can happen whenever the clock is in a specific state.
Flip-Flops:
D Flip-Flop: Represents memory for a single bit of information.
Truth Tables and Logic Expressions:
Example: Truth table illustrating AND operation being true when all inputs are true.
D. Morgan's Law:
Explains the relationship between conjunction and disjunction in Boolean algebra.
Project Discussion
Major project: Create a basic integer calculator using "Marie" architecture.
Features: Supports number/operator input, looping on invalid inputs, and handling negative multipliers.
Optional extra credit involves including division functionality.
Introduction to Marie Computer
Architecture Basics:
Uses binary two's complement for integer representation.
Memory size: 16 bits, 4K words available.
Registers:
Accumulator (AC): Holds intermediate arithmetic and logic results.
Memory Address Register (MAR): Contains addresses for memory operations.
Memory Buffer Register (MBR): Temporarily stores data transfers.
Program Counter (PC): Monitors the address of the currently executing instruction.
Input/Output Register: Facilitates data exchange with peripheral devices.
Instruction Set Architecture (ISA) in Marie:
Contains 13 distinct instructions: Load, Store, Add, Subtract, Input, Output, Halt, Skip, Conditional, Jump.
Fetch-Decode-Execute Cycle:
Fetch: Read an instruction from memory into the instruction register.
Decode: Interpret the instruction to prepare necessary components for execution.
Execute: Perform the instruction, potentially updating memory and registers.
Indirect Addressing in Marie:
New instructions introduced for enhanced data manipulation.
Introduction to C Programming
Call by Value: Changes do not alter the original variable.
Call by Reference: Directly modifies the original variable.
Breakout Groups
Discussions focused on enhancing project development and fostering collaboration strategies.
Important Concepts Covered
General overview of computer systems.
Major components of digital circuits.
CPU basics: Functions, components, and bus structure.
Upcoming Topics
Introduction to new CPU architectures (e.g., Intel vs. MIPS).
Preparation for the midterm exam covering Chapters 1-5.