Summer 2003 Lecture 1 06/09/03

Similar documents
PART B UNIT II PART A

Computer Architecture 2/26/01 Lecture #

Computer Organization and Microprocessors SYLLABUS CHAPTER - 1 : BASIC STRUCTURE OF COMPUTERS CHAPTER - 3 : THE MEMORY SYSTEM

Microprocessors and Microcontrollers. Assignment 1:

Microprocessors/Microcontrollers

QUESTION BANK CS2252 MICROPROCESSOR AND MICROCONTROLLERS

Computer Hardware Requirements for ERTSs: Microprocessors & Microcontrollers

EE 5340/7340 Motorola 68HC11 Microcontroler Lecture 1. Carlos E. Davila, Electrical Engineering Dept. Southern Methodist University

Sunday, April 25, 2010

Computers and Microprocessors. Lecture 34 PHYS3360/AEP3630

Introduction to Microcontrollers

SRI VENKATESWARA COLLEGE OF ENGINEERING AND TECHNOLOGY DEPARTMENT OF ECE EC6504 MICROPROCESSOR AND MICROCONTROLLER (REGULATION 2013)

Department of Computer Science and Engineering

Computer Organization

Fig 1. Block diagram of a microcomputer

Evolution of computers and the development of the microprocessor

Embedded Systems Lab Lab 1 Introduction to Microcontrollers Eng. Dalia A. Awad

Computer Hardware Requirements for Real-Time Applications

Lecture 2 Microcomputer Organization: Fig.1.1 Basic Components of Microcomputer

BASIC INTERFACING CONCEPTS

MICROCONTROLLERS 8051

Microprocessor. By Mrs. R.P.Chaudhari Mrs.P.S.Patil

MicroProcessor. MicroProcessor. MicroProcessor. MicroProcessor

2. List the five interrupt pins available in INTR, TRAP, RST 7.5, RST 6.5, RST 5.5.

CPE/EE 421 Microcomputers

KINGS DEPARTMENT OF INFORMATION TECHNOLOGY QUESTION BANK. Subject Name: Microprocessors and Microcontrollers UNIT-I 8085 MICROPROCESSOR

Lecture Objectives. Introduction to Computing Chapter 0. Topics. Numbering Systems 04/09/2017

Chapter 2 COMPUTER SYSTEM HARDWARE

ECE 485/585 Microprocessor System Design

MICROPROCESSORS & MICRO CONTROLLER COLLEGE OF ENGINEERING DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING QUESTION BANK

Summer 2003 Lecture 18 07/09/03


Lecture 1: Introduction to Microprocessors

Microprocessors I MICROCOMPUTERS AND MICROPROCESSORS

V8-uRISC 8-bit RISC Microprocessor AllianceCORE Facts Core Specifics VAutomation, Inc. Supported Devices/Resources Remaining I/O CLBs

8086 ALP TOOLS (CH 2) CHAPTER 2

Microprocessor. Dr. Rabie A. Ramadan. Al-Azhar University Lecture 1

Lecture 1. Course Overview and The 8051 Architecture

1. INTRODUCTION TO MICROPROCESSOR AND MICROCOMPUTER ARCHITECTURE:

ENE 334 Microprocessors

Input/Output Systems

Computer Organization

DEPARTMENT OF ECE QUESTION BANK SUBJECT: MICROPROCESSOR AND MICROCONTROLLER UNIT-1 PART-A (2 MARKS)

Computers Are Your Future

Course Syllabus of Microprocessor I (Fall 2006)

EMBEDDED SYSTEM BASICS AND APPLICATION

x86 Architectures; Assembly Language Basics of Assembly language for the x86 and x86_64 architectures

Basic Concepts COE 205. Computer Organization and Assembly Language Dr. Aiman El-Maleh

Introduction to Microprocessor

Celeron EPIC Computer with GUI and Dual Ethernet SBC4685

Microcomputer Architecture and Programming

MICROPROCESSOR TECHNOLOGY

MICROPROCESSOR MEMORY ORGANIZATION

COE 205: Computer Organization & Assembly Language Introductory Experiment-B By Louai Al-Awami

Assembly Language for Intel-Based Computers, 4 th Edition. Kip R. Irvine. Chapter 2: IA-32 Processor Architecture

5 Computer Organization

Assembly Language for Intel-Based Computers, 4 th Edition. Chapter 2: IA-32 Processor Architecture. Chapter Overview.

Embedded Systems Design (630414) Lecture 1 Introduction to Embedded Systems Prof. Kasim M. Al-Aubidy Computer Eng. Dept.

TUTORIAL Describe the circumstances that would prompt you to use a microprocessorbased design solution instead of a hard-wired IC logic design.

CPU ARCHITECTURE. QUESTION 1 Explain how the width of the data bus and system clock speed affect the performance of a computer system.

CISC 360. Computer Architecture. Seth Morecraft Course Web Site:

CREATED BY M BILAL & Arslan Ahmad Shaad Visit:

Mark II Aiken Relay Calculator

Three-box Model: These three boxes need interconnecting (usually done by wiring known as a bus. 1. Processor CPU e.g. Pentium 4 2.

FIFTH SEMESTER B.TECH DEGREE EXAMINATION MODEL TEST QUESTION PAPER, NOVEMBER CS 305: Microprocessor and Microcontrollers PART A

Alex Milenkovich 1. CPE/EE 421 Microcomputers. CPE/EE 421 Microcomputers U A H U A H U A H. Instructor: Dr Aleksandar Milenkovic Lecture Notes S01

The Purpose of Interrupt

CHAPTER ASSEMBLY LANGUAGE PROGRAMMING

A Review of Chapter 5 and. CSc 2010 Spring 2012 Instructor: Qian Hu

Microprocessor (COM 9323)

COMP2121: Microprocessors and Interfacing. Introduction to Microprocessors

To be familiar with the USART (RS-232) protocol. To be familiar with one type of internal storage system in PIC (EEPROM).

Elementary Computing CSC M. Cheng, Computer Science 1

Computers Are Your Future

Homeschool Enrichment. The System Unit: Processing & Memory

Embedded Systems. Read pages

MICROPROCESSOR AND MICROCONTROLLER BASED SYSTEMS

INTRODUCTION TO MICROPROCESSORS

Operating System: Chap13 I/O Systems. National Tsing-Hua University 2016, Fall Semester

ALT-Assembly Language Tutorial

History of the Microprocessor. ECE/CS 5780/6780: Embedded System Design. Microcontrollers. First Microprocessors. MC9S12C32 Block Diagram

Dr. Ramesh K. Karne Department of Computer and Information Sciences, Towson University, Towson, MD /12/2014 Slide 1

The 8051 Microcontroller and Embedded Systems

QUIZ Ch.6. The EAT for a two-level memory is given by:

Instruction Register. Instruction Decoder. Control Unit (Combinational Circuit) Control Signals (These signals go to register) The bus and the ALU

Computer Organization

MICROPROCESSOR BASED SYSTEM DESIGN

Computer Architecture Dr. Charles Kim Howard University

Introduction. Computer System Organization. Languages, Levels, Virtual Machines. A multilevel machine. Sarjana Magister Program

Computer and Hardware Architecture I. Benny Thörnberg Associate Professor in Electronics

Hardware and Software Architecture. Chapter 2

EE 3170 Microcontroller Applications

ME 475 Lab2 Introduction of PIC and Programming. Instructor: Zhen Wang

INTRODUCTION OF MICROPROCESSOR& INTERFACING DEVICES Introduction to Microprocessor Evolutions of Microprocessor

ECE 571 Advanced Microprocessor-Based Design Lecture 3

Verizon Next Step Program Course Outline. Telecommunications Technology: Verizon

b. List different system buses of 8085 microprocessor and give function of each bus. (8) Answer:

Computer Architecture

Microprocessors, Lecture 1: Introduction to Microprocessors


Transcription:

Summer 2003 Lecture 1 06/09/03 General Overview of Class: This class is an introduction to the low level operation of microprocessor-based computer systems. We will cover the operation of the Central Processor (CPU), Memory, and Input/Output (I/O) devices. There will be four lectures per week and 2 lab session per week. Most of the labs are one session labs, however several are multi-session. (2 session and one 3 three session) This class is primarily a programming class, however about a third is devoted to understanding the operation of the hardware and advanced architectural concepts. The programming part of the class is primarily in assembly language using the Intel 8088 as the target processor, and MS-DOS as the target operating environment. Some programming will be done in C, and techniques for interfacing between C and assembly subroutines is covered. Many of the programming exercises in the labs are oriented around programming and controlling hardware peripheral devices. The programming tools used will be Microsoft MASM as the assembler and Borland Turbo C as the C compiler. The Microsoft tools use PWB (Programmer s Workbench) as the development environment (Editor and Make tools) with Codeview as the debugger. The Borland tools use the Turbo C IDE (Integrated Development Environment) as the Editor, Make tool and Debugger. There will be a course web site on which class materials will be posted. These include: lecture notes, homework assignments, lab assignment materials, and various other handouts. Prerequisites: This class assumes prior experience with programming in the C language. It also assumes prior knowledge of basic logic design, both Combination and Sequential. Understanding of timing diagrams will be helpful. Handouts: Course Syllabus and Lab Schedule Lab report standards Document on number systems and data formats Sample assembler listing will be posted on web site. Evolution of Computers and the Development of the Microprocessor. Originally, computer was a job description. It meant someone whose job was to calculate things.

With the invention of programmable machines, the word changed to mean the machine that did the calculation. Early computers required some rewiring to change operations. Eventually, the stored program concept was invented. Two principal architecture types Von Neuman architecture This has a single memory space for instructions and data Harvard Architecture Separate memory space for instruction and data. Mainframe computers Mini Computers Invention of Microprocessor -- Contains all of the functions of the CPU on a single integrated circuit. 8088 16 bits code and data, real mode operation 80286 16 bits code and data, real and protected mode operation 80386 32 bits code and data, real mode, virtual 86 mode and protected mode 80486 integrates math co-processor functions with on same chip Pentium Superscalar architecture Parallel development of advanced CPU architectures resulting in Pentium, with integration of peripherals and memory onto chip, resulting in microcontrollers. System Block Diagram CPU Central Processing Unit Controls operation of computer. Executes instructions. Generates timing to control operation of rest of system. Various kinds of Co-processors exist in some systems, which extend the instruction set of the main CPU. Memory Array of memory locations. Can be organized as bits, bytes words or dwords Types of Memory RAM Static Dynamic ROM Masked Rom EPROM EEPROM Flash Memory Input/Output Memory mapped versus i/o mapped

Some processors have a separate address space for i/o devices (e.g. 8080, Z80, 80x86), other processors have only a memory address space and expect that i/o devices will be in the same address space as memory. (e.g. 68HC11, 68000) Parallel or Serial Interface Serial I/O -- Data is presented in a bit serial format. Varies with word size, and bit order as well as type of clocking Asynchronous RS-232 Synchronous USB PS/2 keyboard and mouse Parallel I/O -- Data is presented with all data bits at the same time on multiple lines. IEE-1284 Printer port SCSI interface Interrupt Logic Used by high priority i/o devices to break into the CPU s stream of execution and temporarily cause it to execute other code. System Bus - Used to interface between different parts of the computer system Address Bus Carries address information from the CPU Data Bus Carries instructions and data between the CPU and memory and i/o devices Control Bus Carries control and timing signals between the CPU and the rest of the system. Microprocessor Operation Machine Cycles Instruction Fetch Instruction Decode Instruction Execution Bus Cycles Memory Read Memory Write I/O Read I/O Write Interrupt Acknowledge Control Signals from Bus Interrupt Non-Maskable Interrupt Wait Hold (for DMA) Multiprocessor synchronization

Development Process The assembly language development process uses normal Compile/Link/Debug cycle. The assembler generates object modules that are combined by a linker to produce an executable program. Assembler modules can be linked with compiled modules from HLL (e.g. C) to produce what is called a mixed mode program. In assembly language, each statement corresponds to a machine instruction. Statement format: label: opcode operand1,operand2 Some statements contain true opcodes, which correspond to machine instructions. Some statements contains pseudo-op s which are instructions to the assembler. Instruction operands specify the data, or the location of the data for the instruction to work on. Data Types and Assembler Data Declaration Pseudo-Ops Data Sizes: Operands will have a size which is one of the following. BYTE 8 bits WORD 16 bits, 2 BYTES DWORD (double word) 32 bits, 2 WORDS or 4 BYTES QWORD (quad word) 64 bits, 4 WORDS, 8 BYTES TBYTE 80 bits, 10 BYTES Character data are arrays of BYTES Pseudo-Ops DB DW DD DQ DUP EQU - Define Byte - Define Word (16 bits) - Define Doubleword (32 bits) - Define Quadword (64 bits) - assembler pseudo function to replicate data - define symbol Programmer s Model of the Machine Memory Organization: 8086 processor has 20 bit address bus, can address 1 MB of memory 80286 has 24 bit address bus, can address 16MB of memory 80386 and later has 32 bit address bus, can address 4GB of memory Memory above 1MB boundary can only be accessed in protected mode. Original IBM PC had memory organized as array of bytes

PC-AT had memory organized as array of words 80386 and later processors have memory organized as array of dwords In all cases, memory is byte-addressable. There are no alignment restrictions, but performance can be increased by using proper alignment. In all cases, memory is segmented and all addresses use both a segment and offset. In many cases, the segment is implied in the operation of the instruction. The segment address used by an instruction will always come from one of the cpu s segment registers. Real mode physical address calculation: PA = seg << 4 + off Interrupt vector table is 1k bytes starting at 0000:0000 (0:0-0:3FFh) Reset vector is at FFFF:0