Computers and Microprocessors

Slides:



Advertisements
Similar presentations
MUHAMMAD AHMED HUSSAIN
Advertisements

Copyright © 2006 by The McGraw-Hill Companies, Inc. All rights reserved. McGraw-Hill Technology Education Copyright © 2006 by The McGraw-Hill Companies,
Chapter 5 Input/Output 5.1 Principles of I/O hardware
Our Digital World Second Edition
Computing Systems Organization
Processor Data Path and Control Diana Palsetia UPenn
Computer Architecture
MOTHERBOARD The MOTHERBOARD is the main circuit board of your computer and is also known as the main board or logic board. If you ever open your computer,
Computer Structure.
Figure 12–1 Basic computer block diagram.
1 Operating Systems Input/Output Management. 2 What is the I/O System A collection of devices that different sub- systems of a computer use to communicate.
Chapter 4 The Von Neumann Model
Chapter 4 The Von Neumann Model
Designing Embedded Hardware 01. Introduction of Computer Architecture Yonam Institute of Digital Technology.
Chapter 5 The System Unit.
Dr. Rabie A. Ramadan Al-Azhar University Lecture 3
MICRO PROCESSER The micro processer is a multipurpose programmable, clock driven, register based, electronic integrated device that has computing and decision.
Khaled A. Al-Utaibi  Computers are Every Where  What is Computer Engineering?  Design Levels  Computer Engineering Fields  What.
Introduction to Information Technology: Your Digital World © 2013 The McGraw-Hill Companies, Inc. All rights reserved.Using Information Technology, 10e©
1 The System Unit Lecture 2 CSCI 1405 Introduction to Computer Science Fall 2006.
1 Hardware and Software Architecture Chapter 2 n The Intel Processor Architecture n History of PC Memory Usage (Real Mode)
Computer Hardware Processing and Internal Memory.
The CPU - Outline. Components of CPU Englander p
University College Cork IRELAND Hardware Concepts An understanding of computer hardware is a vital prerequisite for the study of operating systems.
Chapter 4 The Components of the System Unit
6. The CPU and Memory Chapt. 7.
COMPONENTS OF THE SYSTEM UNIT
Computer Systems 1 Fundamentals of Computing
C.S. Choy95 COMPUTER ORGANIZATION Logic Design Skill to design digital components JAVA Language Skill to program a computer Computer Organization Skill.
Your Interactive Guide to the Digital World Discovering Computers 2012.
Stuart Cunningham - Computer Platforms COMPUTER PLATFORMS Input, Output, and Storage & Introduction to Basic Computer Architecture Week 2.
Computer Processing of Data
E0001 Computers in Engineering1 The System Unit & Memory.
Introduction to Computing: Lecture 4
Computers Are Your Future Tenth Edition Chapter 6: Inside the System Unit Copyright © 2009 Pearson Education, Inc. Publishing as Prentice Hall1.
HNC COMPUTING - COMPUTER PLATFORMS 1 Computer Platforms Week 1 The Basics – System Unit Components.
Discovering Computers 2012: Chapter 4
1 CS503: Operating Systems Spring 2014 Dongyan Xu Department of Computer Science Purdue University.
Computers Are Your Future Eleventh Edition Chapter 2: Inside the System Unit Copyright © 2011 Pearson Education, Inc. Publishing as Prentice Hall1.
Chapter 2 The CPU and the Main Board  2.1 Components of the CPU 2.1 Components of the CPU 2.1 Components of the CPU  2.2Performance and Instruction Sets.
Computing and the Web Computer Hardware Components.
Btec National - COMPUTER Systems 1 Computer Systems Week 1 The Basics – System Unit Components.
Fall 2012 Chapter 2: x86 Processor Architecture. Irvine, Kip R. Assembly Language for x86 Processors 6/e, Chapter Overview General Concepts IA-32.
General Concepts of Computer Organization Overview of Microcomputer.
Computer Organization & Assembly Language © by DR. M. Amer.
Computer Hardware The Processing Unit.
Computer Hardware A computer is made of internal components Central Processor Unit Internal External and external components.
Motherboard A motherboard allows all the parts of your computer to receive power and communicate with one another.
Academic PowerPoint Computer System – Architecture.
The Computer System.
Computer Organization and Assembly Languages Yung-Yu Chuang 2005/09/29
Computer operation is of how the different parts of a computer system work together to perform a task.
System Hardware FPU – Floating Point Unit –Handles floating point and extended integer calculations 8284/82C284 Clock Generator (clock) –Synchronizes the.
Chapter 2.
Overview of microcomputer structure and operation
CS 1410 Intro to Computer Tecnology Computer Hardware1.
Computers Are Your Future Tenth Edition Inside the System Unit 1.
Information Technology INT1001 Lecture 2 1. Computers Are Your Future Tenth Edition Chapter 6: Inside the System Unit Copyright © 2009 Pearson Education,
Lecture # 10 Processors Microcomputer Processors.
Advanced Diploma - Unit One 1 Computer Components Week 1 System Unit Components.
Chapter Overview General Concepts IA-32 Processor Architecture
x86 Processor Architecture
Discovering Computers 2011: Living in a Digital World Chapter 4
ASSEMBLY LANGUAGE FOR INTEL-BASED COMPUTERS,
Assembly Language for Intel-Based Computers, 5th Edition
Basic Computer Organization
Microcomputer Architecture
Introduction to Computing
Morgan Kaufmann Publishers Computer Organization and Assembly Language
Computer Organization and Assembly Languages Yung-Yu Chuang 2005/09/29
Presentation transcript:

Computers and Microprocessors Lecture 34 PHYS3360/AEP3630

Contents Computer architecture / experiment control Microprocessor organization Basic computer components Memory modes for x86 series of microprocessors

Laboratory computers Many experiments utilize computers interfaced to the physical world via transducers (previous lecture) This allows control of experiment conditions and data acquisition not otherwise possible (e.g. nonlinear control of a measured parameter, various feedback/readout loops, setup procedures) Computers can be either standalone or embedded (sometimes also called controllers)

Computer Abstraction Layers Basic Computer Organization Has several abstraction layers that hide implementation details OS & applications: a gateway for human interaction kernel: mandatory part of OS common to all software; CPU tasks, memory, I/O interrupts; drivers for various devices assembler: turns assembly language instr. into opcodes (binary stream of commands that CPU understands)

Computer Abstraction Layers (2) firmware: a low-level program embedded into a hardware that enables its functionality; hardware specific. Ex: Basic Input/Output System Microcode hardware: microprocessors, buses, memory, input/output devices, ports, etc.

Computer Organization control unit (CU): controls operation timing / sequencing arithmetic logic unit (ALU): performs all math & logic operations, receives command sequence from CU clock: synchronizes CPU operation

Central Processing Unit (CPU) CPU = ALU + CU + registers Registers: arrays of D flip-flops for storage of operands, addresses, and instructions, characterized by quick access Microprocessor: CPU on a single chip general registers addressing control data bus bus interface unit ALU control & timing address bus control bus timing interrupt requests

Buses Bus: a group of wires that transfer data from one part to another (data, address, control) Data bus: bi-directional (read/write) 8, 16, 32-bit wide common (same as ‘word size’) Address bus: specifies memory location in RAM/ROM/interface device to be accessed; monodirectional address space: 16-bit wide  216 = 64210 = 64KB 32-bit wide  232 = 4GB Control bus: carries commands from the CPU and returns status signals from the devices

Hexadecimal Representing data, addresses, or instructions in a computer is more natural using hexadecimal (base-16) notation: Ex: 16-bit word 1101 0011 1111 0101 D 3 F 5 2 H

Clock all CPU and bus operations are synchronized to the clock machine cycle (clock) measures time for a single operation e.g. 2 GHz  clock cycle 0.5 ns CPU frequency is not necessarily indicative of the execution speed; e.g. floating pt. operation of multiplication may take ~10 to ~100 cycles depending on the processor FLOPS: floating operations per second, a useful measure for (super)computers dedicated to extensive computations

Instruction execution cycle program counter instruction queue Fetch Decode Fetch operands Execute Store output

Simple microcomputer DATA BUS I/O PORT IR ACC B MEMORY PC ALU FLAG DEVICE I/O DECODE PC ALU DEVICE I/O FLAG CONTROL AND SEQUENCING ACC – accumulator register IR – instruction register PC – program counter ADDRESS BUS CONTROL BUS CLOCK

Control signals (e.g. 20 in total) WR RD WR RD DATA BUS RD I/O PORT IR ACC B MEMORY WR WR INC RD DEVICE I/O RD DECODE PC ALU OP RD DEVICE I/O FLAG CONTROL AND SEQUENCING OP WR ADDRESS BUS WR RD WR RD CONTROL BUS CLOCK

Example of execution sequence LDA – assembler mnemonic for ‘load accumulator register’, e.g. for performing arithmetic operation, etc.

LDA (execution cycle 1): IRRD DATA BUS RD I/O PORT IR ACC B MEMORY DEVICE I/O DECODE PC ALU DEVICE I/O FLAG CONTROL AND SEQUENCING ADDRESS BUS CONTROL BUS CLOCK

LDA (execution cycle 2): MEMRD DATA BUS I/O PORT IR ACC B MEMORY DEVICE I/O DECODE PC ALU DEVICE I/O FLAG CONTROL AND SEQUENCING ADDRESS BUS RD CONTROL BUS CLOCK

LDA (execution cycle 3): ACCWR DATA BUS I/O PORT IR ACC B MEMORY DEVICE I/O DECODE PC ALU DEVICE I/O FLAG CONTROL AND SEQUENCING ADDRESS BUS CONTROL BUS CLOCK

Example of execution sequence ADD – adds a number (ALU function) to one already stored in ACC

ADD (execution cycle 1): IRRD DATA BUS RD I/O PORT IR ACC B MEMORY DEVICE I/O DECODE PC ALU DEVICE I/O FLAG CONTROL AND SEQUENCING ADDRESS BUS CONTROL BUS CLOCK

ADD (execution cycle 2): MEMRD DATA BUS I/O PORT IR ACC B MEMORY DEVICE I/O DECODE PC ALU DEVICE I/O FLAG CONTROL AND SEQUENCING ADDRESS BUS RD CONTROL BUS CLOCK

ADD (execution cycle 3): BWR DATA BUS I/O PORT IR ACC B MEMORY DEVICE I/O DECODE PC ALU DEVICE I/O FLAG CONTROL AND SEQUENCING ADDRESS BUS RD CONTROL BUS CLOCK

ADD (execution cycle 4): ALU10, ACCWR DATA BUS I/O PORT IR ACC B MEMORY DEVICE I/O DECODE PC ALU DEVICE I/O FLAG CONTROL AND SEQUENCING ADDRESS BUS RD CONTROL BUS CLOCK

Example of execution sequence JMP – jump to another command (aka GOTO)

JMP (execution cycle 1): IRRD DATA BUS RD I/O PORT IR ACC B MEMORY DEVICE I/O DECODE PC ALU DEVICE I/O FLAG CONTROL AND SEQUENCING ADDRESS BUS CONTROL BUS CLOCK

JMP (execution cycle 2): PCWR DATA BUS I/O PORT IR ACC B MEMORY WR DEVICE I/O DECODE PC ALU DEVICE I/O FLAG CONTROL AND SEQUENCING ADDRESS BUS CONTROL BUS CLOCK

Intel Architecture 32 (IA-32) Instruction set for CPUs from 386 to the latest 32-bit processor, also known as x86-32 From programmer’s point of view, IA-32 has not changed all that much except for the introduction of high-performance instructions Now being succeeded by IA-64 and AMD-64 (but not everything needs a bleeding-edge speed, memory, etc. so many applications / embedded controllers are just fine with 32-bit, 16-bit or even 8-bit processors)

Basic hardware constituents Chassis Controller board / Motherboard Peripheries: video, disk, etc. optional Memory I/O ports

Motherboard / controller board CPU socket External cache memory slots Main memory slots BIOS chips Video/sound synthesizer chip (optional) I/O ports and bus standards: Integrated Drive Electronics (IDE), parallel, serial, Universal Serial Bus, (video, keyboard, network, and mouse connectors) Peripheral Component Interconnect bus connectors (expansion cards) Other bus standards such as VMEbus

Intel D850MD Motherboard Video mouse, keyboard, parallel, serial, and USB connectors Audio chip PCI slots memory controller hub Intel 486 socket AGP slot dynamic RAM Firmware hub AGP - accelerated graphics port I/O Controller Speaker Power connector Battery Diskette connector Source: Intel® Desktop Board D850MD/D850MV Technical Product Specification IDE drive connectors

VME Controller Board & Chassis VME – versa module Europa

Memory Dynamic RAM (DRAM) stores each bit of data on tiny capacitors on IC inexpensive, but must be refreshed constantly Static RAM (SRAM) uses RS or JK latches expensive; used for cache memory; no refresh required Video RAM (VRAM) dual ported (multiple read/writes occurring at the same time); optimized for constant video refresh CMOS RAM refreshed by a battery system setup information

Reading from memory address placed on address bus Multiple machine cycles are required when reading from memory, because it responds much more slowly than the CPU. The steps are: address placed on address bus Read Line (RD) set low CPU waits one cycle for memory to respond Read Line (RD) goes to 1, indicating that the data is on the data bus

Cache memory High-speed expensive static RAM both inside and outside the CPU. Level-1 cache: inside the CPU Level-2 cache: outside the CPU Cache hit: when data to be read is already in cache memory Cache miss: when data to be read is not in cache memory Main design problem: minimize cache misses at a reasonable cost (compulsory, capacity, conflict)

Memory access: real mode 1 MB RAM maximum addressable (20-bit address) Application programs can access any area of memory Early m-processors; single tasking; supported by MS-DOS operating system

Memory access: protected mode 4 GB addressable RAM (32-bit address) (00000000 to FFFFFFFFH) Each program assigned a memory partition which is protected from other programs Designed for multitasking; supported by Linux & Windows

Multi-segment model Each program has a local descriptor table (LDT) holds descriptor for each segment used by the program multiplied by 1000h

Labs this week Learn about CPU operations by inspecting a simple assembler program execution Control USB device with digital inputs/outputs (C++ code with National Instruments driver for Windows XP/Vista) LTspice experiment: encryption/decryption of digital information using a pseudo-random number generator