Microprocessor and peripheral

Slides:



Advertisements
Similar presentations
VHDL 8 Practical example
Advertisements

INTRODUCTION TO THE ARM PROCESSOR – Microprocessor Asst. Prof. Dr. Choopan Rattanapoka and Asst. Prof. Dr. Suphot Chunwiphat.
1-1 ECE 424 Design of Microprocessor-Based Systems Haibo Wang ECE Department Southern Illinois University Carbondale, IL
Course Overview and The 8051 Architecture
CENG 2400, Embedded system design
COMP3221: Microprocessors and Embedded Systems Lecture 2: Instruction Set Architecture (ISA) Lecturer: Hui Wu Session.
Chapter 2: Memory CEG2400 – Embedded System Design CEG2400 Ch2. Memory V4c1.
EET 4250: Chapter 1 Performance Measurement, Instruction Count & CPI Acknowledgements: Some slides and lecture notes for this course adapted from Prof.
© 2009 Acehub Vista Sdn. Bhd Introduction to ARM ® Processors.
Computer Organization and Assembly language
CEN 226: Computer Organization & Assembly Language :CSC 225 (Lec#1) By Dr. Syed Noman.
Processors for Embedded Systems PowerPC X86 MIPS ARM & Strong ARM SuperH RISC (SH3 and SH4) PIC – EE 4175.
MCU – Microcontroller Unit – 1 MCU  1 cip or VLSI core – application-specific.
CSE378 Gen. Intro1 Machine Organization and Assembly Language Programming Machine Organization –Hardware-centric view (in this class) –Not at the transistor.
Computer Organization
INTRODUCTION TO MICROPROCESSORS
An Introduction Chapter Chapter 1 Introduction2 Computer Systems  Programmable machines  Hardware + Software (program) HardwareProgram.
Computer architecture Microprocessor based computers.
Overview Introduction The Level of Abstraction Organization & Architecture Structure & Function Why study computer organization?
Lecture 13 Introduction to Embedded Systems Graduate Computer Architecture Fall 2005 Shih-Hao Hung Dept. of Computer Science and Information Engineering.
November SSI Small Scale Integration Up to 12 equivalent gate circuits on a single chip Includes basic gates and flip-flops.
Computers organization & Assembly Language Chapter 0 INTRODUCTION TO COMPUTING Basic Concepts.
CPS120: Introduction to Computer Science Introduction to Computers.
(1) ECE 3056: Architecture, Concurrency and Energy in Computation Lecture Notes by MKP and Sudhakar Yalamanchili Sudhakar Yalamanchili (Some small modifications.
Computer Organization and Design Computer Abstractions and Technology
Processors for Embedded Systems PowerPC X86 MIPS ARM & Strong ARM SuperH RISC (SH3 and SH4)
Computer System Design Lecture 1 Wannarat Suntiamorntut.
Tolo-e-aftab higher education 1 th semester Bcs 1/2/1392 MINISTRY OF HIGHER EDUCATION.
Chapter 1 Computer Abstractions and Technology. Chapter 1 — Computer Abstractions and Technology — 2 The Computer Revolution Progress in computer technology.
PC hardware and x86 programming Lec 2 Jinyang Li.
ARM Assembly Language Programming by Mazidi et al
MICROOCESSORS AND MICROCONTROLLER:
Ee314 Microprocessor Systems Dr. Mircea DABACAN Electrical Engineering & Computer Science Dept., Washington State University Office: EE/ME 504 Phone:
COMPUTER ARCHITECTURE & OPERATIONS I Instructor: Yaohang Li.
The Principle and Application of Microcontrollers
Representation of Data Binary Representation of Instructions teachwithict.weebly.com.
SEPTEMBER 8, 2015 Computer Hardware 1-1. HARDWARE TERMS CPU — Central Processing Unit RAM — Random-Access Memory  “random-access” means the CPU can read.
By Wannarat Computer System Design Lecture 1 Wannarat Suntiamorntut.
CEng3361/18 CENG 336 INT. TO EMBEDDED SYSTEMS DEVELOPMENT Spring 2007 Recitation 01.
SPRING 2012 Assembly Language. Definition 2 A microprocessor is a silicon chip which forms the core of a microcomputer the concept of what goes into a.
CENG 2400, Embedded system design Chapter 1: Introduction KH Wong CENG2400 Ch1. Introduction v6b1.
GCSE Computer Science - Revision
IF I ONLY HAD A BRAIN THE MICROCONTROLLER
Introduction to Microcontrollers
Microprocessor and Microcontroller Fundamentals
Morgan Kaufmann Publishers
Hardware and Software Hardware refers to the physical devices of the computer system e.g. monitor, keyboard, printer, RAM etc. Software is a set of programs,
Computer Architecture & Operations I
ECE354 Embedded Systems Introduction C Andras Moritz.
COMPUTER ORGANIZATION & ASSEMBLY LANGUAGE
Why to use the assembly and why we need this course at all?
IPCOWALA INSTITUTE OF ENGINEERING & TECHNOLOGY-DHARMAJ
INTRODUCTION TO MICROPROCESSORS
Introduction to Microprocessors
INTRODUCTION TO MICROPROCESSORS
INTRODUCTION TO MICROPROCESSORS
CENG 2400, Embedded system design
عمارة الحاسب.
Welcome Aboard 1.
Introduction to Microprocessors and Microcontrollers
Lecture 2 Microprocessor Overview
EE 445S Real-Time Digital Signal Processing Lab Spring 2014
INTRODUCTION TO COMPUTER ARCHITECTURE
Introduction to Microprocessor Programming
Java Programming Introduction
Wireless Embedded Systems
Function of Operating Systems
Course Code 114 Introduction to Computer Science
Dr. Clincy Professor of CS
Presentation transcript:

Microprocessor and peripheral Lecture 1: Introduction

What to learn? Build microcontroller/embedded systems Program it using assembly / C languages Techniques to interface sensors and control devices

What is a microcontroller ? 9-May-18 What is a microcontroller ? It is a computer on a chip. Examples: Intel 8031, PIC Arm (32-bit, assembly or C) “In 2007..ARM market >80%. ..2.3 billion ARM-based embedded processors are shipping each year.”[http://www.electronicsweekly.com/Articles/2007/01/31/40641/arm-dominated-mcu-market-is-ready-for-change.htm] Arm in the I-phone http://content.zdnet.com/2346-9595_22-93276-27.html http://www.mobilebond.com/wp-content/uploads/2010/12/11119422-apple-iphone-4.jpg

What are they used for? Offices (Word processing, data bases) 9-May-18 What are they used for? Offices (Word processing, data bases) Engineering (robot) Game consoles (Kinect, PSP) http://www.trossenrobotics.com/

CPU on a Chip -> Microprocessor 9-May-18 CPU on a Chip -> Microprocessor Microcontroller (MCU) is a computer on a chip CENG2400 Ch1. Introduction V2a

System on a chip (SoC) & A new trend http://en.wikipedia.org/wiki/System-on-a-chip . E.g. mobile phone SoC chip (Arm + wireless modules) If the system is too large for an SoC chip, use system in package (SiP):multi- chip system . + wireless module http://www.mobilecomputermag.co.uk/images/stories/news/2008/01/arm-processor.jpg +

Other CPUs Intel Pentium Motorola/IBM PowerPC AMD K7 ARM StrongArm 9-May-18 Other CPUs Intel Pentium Motorola/IBM PowerPC AMD K7 ARM StrongArm Compaq (DIGITAL) Alpha Zilog Z80 Motorola 68000 6502 MIPS Interesting details about CPUs http://bwrc.eecs.berkeley.edu/CIC/archive/cpu_history.html

ARM microprocessor cores Main article: List of ARM microprocessor cores A summary of the numerous vendors who implement ARM cores Architecture Family ARMv1 ARM1 ARMv2 ARM2, ARM3 ARMv3 ARM6, ARM7 ARMv4 StrongARM, ARM7TDMI, ARM9TDMI ARMv5 ARM7EJ, ARM9E, ARM10E, XScale ARMv6 ARM11, ARM Cortex-M ARMv7 ARM Cortex-A, ARM Cortex-M, ARM Cortex-R ARMv8 ARM Cortex-A50[20] Our Course I-PAD http://en.wikipedia.org/wiki/ARM_architecture

History Turing and Turing machine 8-bit 64-bit 32-bit http://www.bletchleypark.org.uk/edu/lectures/turing.rhtm http://www.krcadinac.com/pictures/600px-Turing_machine_1.JPG 8-bit 64-bit 32-bit

CENG2400 Ch1. Introduction V2a Hardware/Software Hardware Processor Architecture Memory Hierarchy User Interfaces - CENG2400 Ch1. Introduction V2a

CENG2400 Ch1. Introduction V2a Hardware/Software Software Firmware Software Development Operating System/ Device driver - Bios setup - Assembly lang. - Task scheduling Device drivers - Prog. languages CENG2400 Ch1. Introduction V2a

CENG2400 Ch1. Introduction V2a Software hierarchy Different layers CENG2400 Ch1. Introduction V2a

To be covered Lectures Use Philips LPC2000 family (ARM7) Basic Knowledge Machine Instructions & Assembly Language ARM7 instruction set Input/Output (I/O) Memory Use Philips LPC2000 family (ARM7)

Overview of an embedded system Internal Input/output Interface Internal ram

Revision of Hexadecimal numbers Binary 0000 1 0001 2 0010 3 4 5 6 7 8 9 10 A 11 B 12 C 13 D 14 E 15 F 1111 Revision of Hexadecimal numbers A hexadecimal digital number has a value from 0 to F In binary representation it has 4 binary bits Different ways to write hexadecimal numbers: E.g. many different forms 0x7=7h=7H=7hex 0xa=0xA=Ah=a(hex) etc. . Fill in the blanks

CENG2400 Ch1. Introduction V2a Memory structure Example 16-bit Address (64K locations) (H=Hex) 8-bit content (data) FFFF H 35H FFFE H 23H … 0ACD H 24H 0001 H 32H 0000 H 2BH Memory is like a tall building. In this example, memory size is 216=64K locations (flats). 16-bit can be represented by 4 hexadecimal numbers Each location (flat) has an address. E.g. address 0000H, address 0ACDH etc. Each address (flat) has a data (The content) 8-bit (2 hexadecimal numbers) Exercise: For a given memory device, can you change (i) the address, (ii) the data? If the address is 8-bit, how many address locations are there in the memory? If the address is 32-bit, how many address locations are there in the memory? CENG2400 Ch1. Introduction V2a

How does a system start? What happens after power up? 16-bit Address (64K locations) (H=Hex) 8-bit content (data) FFFF H 35H FFFE H 23H … 0ACD H 24H 0001 H 32H 0000 H 2BH

Important machine program concept Example Important machine program concept 16-bit Address (64K locations) (H=Hex) 8-bit content (data) FFFF H 35H FFFE H 23H … 0ACD H 24H (do something) 0001 H 32H 0000 H 2BH (goto 0ACDH) Basic concept Memory is like a tall building Address cannot change; content (data) can change Memory is for storing program and data Address is incrementing from 0000 to FFFFH (total 64K) Data is random, it is your machine code program. After power up , the processor will automatically goto 0000H , follow Instructions specified by the data Exercise to make sure you know how to convert hexadecimal to binary code: write 7FFEH and 35H in binary format. Your machine code program

Review questions List and discuss the Hardware and Software modules in a computer system. How memory is used in a computer system? List and discuss different types of memory in a computer system. And how do they used for? List the differences between address and data. List the bootup procedures of a computer?

END

Appendix:The processor (e.g. ARM7) with 32 bit address bits 32bit Address (232=4G locations) (H=Hex) 8-bit content (data) example FFFFFFFFH 35H FFFFFFFE H 23H … 00000ACD H 24H 00000001 H 32H 00000000 H 2BH 4G locations