Programmer s Model SYSC-3006

Similar documents
RAM & ROM Based Digital Design. ECE 152A Winter 2012

Memory Basics. SRAM/DRAM Basics

CHAPTER 7: The CPU and Memory

MICROPROCESSOR AND MICROCOMPUTER BASICS

Homework # 2. Solutions. 4.1 What are the differences among sequential access, direct access, and random access?

Module 2. Embedded Processors and Memory. Version 2 EE IIT, Kharagpur 1

Computer Systems Structure Main Memory Organization

MICROPROCESSOR BCA IV Sem MULTIPLE CHOICE QUESTIONS

Computer Architecture

CPU Organisation and Operation

Logical Operations. Control Unit. Contents. Arithmetic Operations. Objectives. The Central Processing Unit: Arithmetic / Logic Unit.

Computer Organization. and Instruction Execution. August 22

Computers. Hardware. The Central Processing Unit (CPU) CMPT 125: Lecture 1: Understanding the Computer

ADVANCED PROCESSOR ARCHITECTURES AND MEMORY ORGANISATION Lesson-17: Memory organisation, and types of memory

Memory. The memory types currently in common usage are:

Chapter 4 System Unit Components. Discovering Computers Your Interactive Guide to the Digital World

A N. O N Output/Input-output connection

Discovering Computers Living in a Digital World

Basic Computer Organization

The Central Processing Unit:

Algorithms and Methods for Distributed Storage Networks 3. Solid State Disks Christian Schindelhauer

Microprocessor & Assembly Language

Management Challenge. Managing Hardware Assets. Central Processing Unit. What is a Computer System?

Chapter 6. Inside the System Unit. What You Will Learn... Computers Are Your Future. What You Will Learn... Describing Hardware Performance

Handout 17. by Dr Sheikh Sharif Iqbal. Memory Unit and Read Only Memories

LSN 2 Computer Processors

MICROPROCESSOR. Exclusive for IACE Students iacehyd.blogspot.in Ph: /422 Page 1

Let s put together a Manual Processor

Chapter 7 Memory and Programmable Logic

Chapter 5 :: Memory and Logic Arrays

Read-only memory Implementing logic with ROM Programmable logic devices Implementing logic with PLDs Static hazards

Advanced Computer Architecture-CS501. Computer Systems Design and Architecture 2.1, 2.2, 3.2

Central Processing Unit (CPU)

Modeling Sequential Elements with Verilog. Prof. Chien-Nan Liu TEL: ext: Sequential Circuit

With respect to the way of data access we can classify memories as:

Chapter 2 Basic Structure of Computers. Jin-Fu Li Department of Electrical Engineering National Central University Jungli, Taiwan

CHAPTER 2: HARDWARE BASICS: INSIDE THE BOX

what operations can it perform? how does it perform them? on what kind of data? where are instructions and data stored?

Memory Systems. Static Random Access Memory (SRAM) Cell

Computer organization

Learning Outcomes. Simple CPU Operation and Buses. Composition of a CPU. A simple CPU design

MACHINE ARCHITECTURE & LANGUAGE

Microprocessor and Microcontroller Architecture

Building a computer. Electronic Numerical Integrator and Computer (ENIAC)

1. Memory technology & Hierarchy

Microprocessor or Microcontroller?

Chapter 2 Logic Gates and Introduction to Computer Architecture

Chapter 8 Memory Units

Central Processing Unit

CHAPTER 4 MARIE: An Introduction to a Simple Computer

Chapter 4 Register Transfer and Microoperations. Section 4.1 Register Transfer Language

OVERVIEW OF MICROPROCESSORS

8-Bit Flash Microcontroller for Smart Cards. AT89SCXXXXA Summary. Features. Description. Complete datasheet available under NDA

CHAPTER 6: Computer System Organisation 1. The Computer System's Primary Functions

(Refer Slide Time: 00:01:16 min)

Chapter 9 Semiconductor Memories. Jin-Fu Li Department of Electrical Engineering National Central University Jungli, Taiwan

Objectives. Units of Memory Capacity. CMPE328 Microprocessors (Spring ) Memory and I/O address Decoders. By Dr.

MULTIPLE CHOICE FREE RESPONSE QUESTIONS

ADVANCED PROCESSOR ARCHITECTURES AND MEMORY ORGANISATION Lesson-12: ARM

Microcontroller Basics A microcontroller is a small, low-cost computer-on-a-chip which usually includes:

Memory unit. 2 k words. n bits per word

Computer Architecture Lecture 2: Instruction Set Principles (Appendix A) Chih Wei Liu 劉 志 尉 National Chiao Tung University

DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING Question Bank Subject Name: EC Microprocessor & Microcontroller Year/Sem : II/IV

Understanding Memory TYPES OF MEMORY

Computer System: User s View. Computer System Components: High Level View. Input. Output. Computer. Computer System: Motherboard Level

Chapter 13. PIC Family Microcontroller

Computer Performance. Topic 3. Contents. Prerequisite knowledge Before studying this topic you should be able to:

Memory Testing. Memory testing.1

Instruction Set Architecture (ISA)

Semiconductor Memories

Memory is implemented as an array of electronic switches

EXERCISES OF FUNDAMENTALS OF COMPUTER TECHNOLOGY UNIT 5. MEMORY SYSTEM

Byte Ordering of Multibyte Data Items

Random-Access Memory (RAM) The Memory Hierarchy. SRAM vs DRAM Summary. Conventional DRAM Organization. Page 1

Acknowledgments. Thanks to the following web site and people for the materials and images used in this presentation:

Connecting AMD Flash Memory to a System Address Bus

How To Program A Microcontroller With Memory On A Microchip Microcontroller

Technical Note. Micron NAND Flash Controller via Xilinx Spartan -3 FPGA. Overview. TN-29-06: NAND Flash Controller on Spartan-3 Overview

A3 Computer Architecture

CSCI 4717 Computer Architecture. Function. Data Storage. Data Processing. Data movement to a peripheral. Data Movement

İSTANBUL AYDIN UNIVERSITY

Topics. Introduction. Java History CS 146. Introduction to Programming and Algorithms Module 1. Module Objectives

Sequential Circuit Design

Chapter 5 Instructor's Manual

Lecture-3 MEMORY: Development of Memory:

Hardware: Input, Processing, and Output Devices. A PC in Every Home. Assembling a Computer System

CPU Organization and Assembly Language

NAND Flash FAQ. Eureka Technology. apn5_87. NAND Flash FAQ

CS101 Lecture 26: Low Level Programming. John Magee 30 July 2013 Some material copyright Jones and Bartlett. Overview/Questions

PROBLEMS. which was discussed in Section

Multiple Choice Questions(Computer)

UNIVERSITY OF CALIFORNIA, DAVIS Department of Electrical and Computer Engineering. EEC180B Lab 7: MISP Processor Design Spring 1995

COMPUTERS ORGANIZATION 2ND YEAR COMPUTE SCIENCE MANAGEMENT ENGINEERING JOSÉ GARCÍA RODRÍGUEZ JOSÉ ANTONIO SERRA PÉREZ

1 PERSONAL COMPUTERS

Overview. CISC Developments. RISC Designs. CISC Designs. VAX: Addressing Modes. Digital VAX

Chapter 02: Computer Organization. Lesson 04: Functional units and components in a computer organization Part 3 Bus Structures

CSCA0102 IT & Business Applications. Foundation in Business Information Technology School of Engineering & Computing Sciences FTMS College Global

1 Classical Universal Computer 3

Computer Architecture

1. Convert the following base 10 numbers into 8-bit 2 s complement notation 0, -1, -12

Transcription:

Programmer s Model

Basic Computer Organization The Von Neumann Model The mother of conventional digital computers Memory Unit Input Unit Arithmetic and Logic Unit Output Unit Control Unit Control Path Data Path

Basic Computer Organization Von Neumann defined the Stored Program Concept (Before: program was stored externally) Memory contains both instructions and data Instructions ARE data: can be manipulated Instructions must be read and then executed (instruction execution cycle) Instruction execution cycle: sequence of operations required to execute a single instruction Control unit fetches next instruction from memory, decode it and then execute it Execution of instruction may require further fetches of data from memory and/or storage of data to memory How do we start the instruction execution cycle?

Simple Computer System Organization (expanded) Central Processing Unit (CPU)

Data Path (Tanenbaum Figure 2-2) A + B Programmer s Registers A B ALU Input bus A ALU A+B B ALU Input Registers ALU Output Register

Data Path (Tanenbaum Figure 2-2) Two major categories of instructions Register-memory: transfer information between registers and memory Read: data can be used as inputs to the ALU in subsequent instruction(s) Write: results of ALU can be stored persistently Register-to-Register Typically: fetch two operands from programmer s registers, used as two ALU inputs and storing ALU output back in one of the registers Eg. addition, boolean Called the data path cycle Defines what the computer can do Faster the data cycle, the faster the machine

Central Processing Unit Organization Registers highspeed storage locations directly connected to internal units and bus of the CPU status register flags instruction execution result program counter keeps track of address of next instruction to execute Control Unit Status Register Program Counter Address Register ALU Data Cycle Instruction Queue and Decoder Includes the Programmer s Registers Data Driver Internal Data Bus PINS External Address Bus Clock Control Signals External Data Bus

Instruction Execution Cycle For each machine instruction: control unit uses program counter (PC) and instruction queue to run the Fetch-Execute Cycle 1. Fetch Phase: read memory at the address given in the PC. Copy instruction into internal instruction queue. 2. Decode Phase: determine type of instruction and number/location of operands. 3. Execute Phase : 1. Fetch Operands: [if needed] read memory, copy data into ALU input register 2. Instruction Execution: signal ALU to perform operation. Send data to output register and set status flags 3. Store output operand: [if needed] write to memory to store data from ALU output register.

Instruction Execution Cycle The instruction execution cycle is the heartbeat of the computer. It is all synchronized on the CPU clock. Execution Cycle Fetch Instr Decode Instr Fetch Operand Execute Instr Store Result Fetch Instr Decode Instr Fetch Operand Execute Instr Store Result Instruction Execution Phase Figure 1.9 Dandamudi What is the execution time of an instruction?

Memory Central storage for (program) instructions and data Memory persistent; changes only as result of a write What are the contents before the first write (during power-on)? Memory: sequence of directly addressable locations. Organized as 8-bit cells (bytes). Modern processors: wider addressable locations (16 bit, 32 bit, 64 bit!), each byte can be accessed. 0 1 2 3 10101010 00001111 00110011 11001100 8-bit cells With 2-bit addresses Wider memories: faster access to the processor.

Memory Memory location: address and its contents. Address Bus Contents Data Bus Notation: m[addr] represents the contents of a memory location, Example: m[20h] refers to contents of memory location at 20h. Two memory-related behaviours : write(value, addr) and value = read( addr ) Two parameters Two buses

What is a Memory Address? (A programmer s view) CPU 2-bit Address Bus Address Decoder Memory Binary Address Contents 00 01 10 11 11 22 33 44 Memory cell (byte) is the smallest addressable memory unit You cannot address individual bits in a cell Address Space? Address bus: given width. Range or capacity of this memory? 2-bit address : 2 2 different addresses 20-bit addresses: 2 20 different addresses = 1 Meg address space (Hint : 1K = 2 10 = 1024)

What about the Data bus? CPU 2-bit Address Bus 8-bit Data Bus Address Decoder Memory Binary Address Contents 00b 01b 10b 11b 11h 22h 33h 44h Memory viewed logically as array of contiguous bytes. Many processors 16-bit (and above), meaning They have a 16-bit data bus They can read/write 16-bit contents all in one read/write cycle. How to store binary values wider than 8-bits using 8-bit memory cells? Use more than one consecutive memory locations

Endian Memory Schemes New Problem: 16-bit values, stored in two memory locations. Which location should hold which byte? consecutive memory cells? msbyte lsbyte 16-bit value Little Endian (Intel) 16-bit value msbyte lsbyte Big Endian (Motorola) 16-bit value msbyte lsbyte memory contents address lsbyte X msbyte X + 1 memory contents address msbyte X lsbyte X + 1 low @ low high @ high low @ high high @ low

Little Endian Exercise What is the byte at address 1201? What is the word at address 1201? What is the double-word at address 1201? Address Data Memory Address 1202 1200h 1201h 1202h 1203h 1204h 5E 73 A2 95 0A 1010 0010b Data is 8 bits

Semiconductor Memory - Read and Modify (Random Access Memory - RAM): same amount of time required to access any location on the same chip - Read-only memory (ROM): can only be read; not written Random Access Memory -Dynamic random access memory (DRAM): periodic refresh required to maintain contents of a DRAM chip -Static random access memory (SRAM): no periodic refresh required Read-Only Memory -Mask-programmed read-only memory (MROM): programmed when manufactured -Programmable read-only memory (PROM): memory chip can be programmed by end user

Erasable Programmable ROM (EPROM) 1. Electrically programmable many times 2. Erased by ultraviolet light (through a window) 3. Erasable in bulk (whole chip in one erasure operation) Electrically Erasable Programmable ROM (EEPROM) 1. Electrically programmable many times 2. Electrically erasable many times 3. Can be erased one location, one row, or whole chip in one operation Flash Memory 1. Electrically programmable many times 2. Electrically erasable many times 3. Can only be erased in bulk