Embedded Systems Design. General Purpose Processors: Software BASIC ARCHITECTURE - Datapath BASIC ARCHITECTURE - Datapath 2.

Slides:



Advertisements
Similar presentations
Computer Architecture
Advertisements

PCEL4303 MICROPROCESSOR & MICRO CONTROLLERS MODULE - I (10 hours) Microprocessor Architecture: Microprocessor and Microcomputer Architecture, Pins & Signals,
Computing Machinery Chapter 10: Microcontrollers.
EEE226 MICROPROCESSORBY DR. ZAINI ABDUL HALIM School of Electrical & Electronic Engineering USM.
Processor System Architecture
Khaled A. Al-Utaibi  Computers are Every Where  What is Computer Engineering?  Design Levels  Computer Engineering Fields  What.
Microcontroller – PIC – 4 PIC types PIC architecture
WIMS Capstone Proposal DSP Demo Abigail Fuentes Rivera Esteban Valentin Lugo Michael Ortiz Sanchez ICOM 5047 Prof Nayda Santiago.
Coordinate Based Tracking System
1 ECE 263 Embedded System Design Lessons 2, 3 68HC12 Hardware Overview, Subsystems, and memory System.
ASPPRATECH.
Microcontroller Architecture PIC18F Family
BLDC MOTOR SPEED CONTROL USING EMBEDDED PROCESSOR
Engineering 1040: Mechanisms & Electric Circuits Fall 2011 Introduction to Embedded Systems.
INPUT-OUTPUT ORGANIZATION
CS4101 嵌入式系統概論 Freescale Tower System Prof. Chung-Ta King Department of Computer Science National Tsing Hua University, Taiwan ( Materials from
MCU – Microcontroller Unit – 1 MCU  1 cip or VLSI core – application-specific.
Microcontrollers, Basics Fundamentals of Designing with Microcontrollers 16 January 2012 Jonathan A. Titus.
MSP432™ MCUs Training Part 5: Digital Peripherals
COMPONENTS OF THE SYSTEM UNIT
1 © Unitec New Zealand Embedded Hardware ETEC 6416 Date: - 10 Aug,2011.
LSU 10/22/2004Serial I/O1 Programming Unit, Lecture 5.
4.0 rtos implementation part II
Arduino Josh Villbrandt February 4, Digital Circuits Analog versus digital – What’s the difference? – How to represent an analog signal in a computer?
Input/Output mechanisms
Introduction to Computing: Lecture 4
Core of the Embedded System
1 SERIAL PORT INTERFACE FOR MICROCONTROLLER EMBEDDED INTO INTEGRATED POWER METER Mr. Borisav Jovanović, Prof.dr Predrag Petković, Prof.dr. Milunka Damnjanović,
Microcontroller based system design Asst. Prof. Dr. Alper ŞİŞMAN.
Lecture 20: Communications Lecturers: Professor John Devlin Mr Robert Ross.
Computers Are Your Future Eleventh Edition Chapter 2: Inside the System Unit Copyright © 2011 Pearson Education, Inc. Publishing as Prentice Hall1.
DEVICES AND COMMUNICATION BUSES FOR DEVICES NETWORK
Microcontroller Presented by Hasnain Heickal (07), Sabbir Ahmed(08) and Zakia Afroze Abedin(19)
Other Chapters From the text by Valvano: Introduction to Embedded Systems: Interfacing to the Freescale 9S12.
Designing with Components Wilmer Arellano. How to chose a Microcontroller Choose one that you are familiar with or that is easy to learn.
MICROPROCESSOR AND MICRO CONTROLLER
Atmel Atmega128 Overview ALU Particulars RISC Architecture 133, Mostly single cycle instructions 2 Address instructions (opcode, Rs, Rd, offset) 32x8 Register.
General Concepts of Computer Organization Overview of Microcomputer.
Chapter 2 Introducing the PIC Mid-Range Family and the 16F84A The aims of this chapter are to introduce: The PIC mid-range family, in overview The overall.
MCS51 - lecture 6. Lecture 6 1/32 Extending MCS51 system Built-in peripherals MCS51 family.
ATtiny23131 A SEMINAR ON AVR MICROCONTROLLER ATtiny2313.
©2008 R. Gupta, UCSD COSMOS Summer 2008 Peripheral Interfaces Rajesh K. Gupta Computer Science and Engineering University of California, San Diego.
© 2009, Renesas Technology America, Inc., All Rights Reserved 1 Course Introduction  Purpose:  This course provides an overview of the serial communication.
THE EMBEDDED SYSTEMDESIGN PROCESS. W HAT IS A PS O C M IXED S IGNAL D EVICE ? P rogrammable S ystem o n C hip PSoC combines: the familiarity of a microcontroller.
Lecture 7: Overview Microprocessors / microcontrollers.
Features of the PIC18 microcontroller - 8-bit CPU - 2 MB program memory space (internal 32KB to 128KB) bytes to 1KB of data EEPROM - Up to 4096 bytes.
© 2008, Renesas Technology America, Inc., All Rights Reserved 1 Course Introduction Purpose  This course provides an introduction to the peripheral functions.
بسم الله الرحمن الرحيم MEMORY AND I/O.
The 8085 Microprocessor Architecture. What 8085 meant for? 80 - year of invention bit processor 5 - uses +5V for power.
Chapter Microcontroller
Components of a typical full-featured microcontroller.
Chapter 3. Advanced Hardware Fundamentals The various parts you will commonly find in an embedded-system circuit 발표일시 : 발표자 : 채화영.
CEng3361/18 CENG 336 INT. TO EMBEDDED SYSTEMS DEVELOPMENT Spring 2007 Recitation 01.
1. PIC ADC  PIC18F877 has 8 analog input channels i.e. port A pins(RA0 to RA5) and port E pins(RE1 and RE2). These pins are used as Analog input pins.
USING TV REMOTE AS A CORDLESS MOUSE FOR THE COMPUTER
CORDLESS MOUSE FEATURES BY TV REMOTE USING PIC MICROCONTROLLER
Introduction to Microcontroller Technology
Popular Microcontrollers and their Selection by Lachit Dutta
Microcontrollers, Basics Fundamentals of Designing with Microcontrollers 16 January 2012 Jonathan A. Titus.
Microcontrollers & GPIO
Serial Communication Protocols And Embedded IoT
UNIT – Microcontroller.
Embedded Systems Design
INTRODUCTION TO MICROPROCESSORS
Subject Name: Microcontroller Subject Code: 10ES42
Introduction to Microprocessors and Microcontrollers
Introducing the PIC Mid-Range Family and the 16F84A
AVR – ATmega103(ATMEL) Architecture & Summary
Wireless Embedded Systems
Presentation transcript:

Embedded Systems Design

General Purpose Processors: Software BASIC ARCHITECTURE - Datapath BASIC ARCHITECTURE - Datapath 2

3

Controller 4

Memory 5

Operation: Pipelining 6

Instruction Set: Addressing Mode 7

Instruction Set 8

Program Memory Space The programmer must be aware of the size of the available memory The programmer must be aware of the size of the available memory 9

Registers The programmer must know the general purpose registers and special function registers. The programmer must know the general purpose registers and special function registers. Example: registers for storing Wireless configuration Example: registers for storing Wireless configuration 10

I/O The programmer must be aware of the processor’s input and output settings. The programmer must be aware of the processor’s input and output settings. What registers are assigned for bit I/O setting What registers are assigned for bit I/O setting 11

Interrupts An interrupt causes the processor to suspend execution of the main program, and jump to an Interrupt Service Routine. An interrupt causes the processor to suspend execution of the main program, and jump to an Interrupt Service Routine. The programmer must know the name of the ISR. The programmer must know the name of the ISR. Example: Timer, Port Interrupt, ADC Interrupt and Data Ready interrupt Example: Timer, Port Interrupt, ADC Interrupt and Data Ready interrupt 12

Operating System An operating system is a layer of software that provides low level services to the application layer An operating system is a layer of software that provides low level services to the application layer 13

Development Environment Assembler Assembler Compiler Compiler Debugger Debugger Device Programmer Device Programmer Emulator Emulator Development board Development board Breakout board Breakout board 14

Selecting Microcontrollers 15

Standard Processors - Peripherals Timer Timer Question: Question: 16

Timer 17

Timer 18

Peripheral - PWM Question Question 19

Stepper Motor 20

Stepper Motor 21

ADC An analog-to-digital converter (ADC, A/D or A2D) converts an analog signal to a digital signal, and a digital-to-analog converter (DAC, D/A or D2A) does the opposite. Such conversions are necessary because, while embedded systems deal with digital values, an embedded system’s surroundings typically involve many analog signals. 22

ADC 23

ADC 24

Solution 25

ADC: Successive Approximation 26

Solution 27

UART A UART (Universal Asynchronous Receiver/Transmitter) receives serial data and stores it as parallel data (usually one byte), and takes parallel data and transmits it as serial data Require creating a routine to send data serially over an I/O port, making use of a timer to control the rate. It would also require using an interrupt service routine to capture serial data coming from another I/O port whenever such data begins arriving. 28

What is wrong with serial port? Because serial ports are asynchronous (no clock data is transmitted), devices using them must agree ahead of time on a data rate. Because serial ports are asynchronous (no clock data is transmitted), devices using them must agree ahead of time on a data rate. Asynchronous serial ports require hardware overhead–the UART at either end is relatively. Asynchronous serial ports require hardware overhead–the UART at either end is relatively. Another core fault in asynchronous serial ports is that they are inherently suited to communications between two, and only two, devices Another core fault in asynchronous serial ports is that they are inherently suited to communications between two, and only two, devices 29

SPI The Serial Peripheral Interface (SPI) bus is a synchronous serial communication interface specification used for short distance communication, primarily in embedded systems. The interface was developed by Motorola and has become a de facto standard. The Serial Peripheral Interface (SPI) bus is a synchronous serial communication interface specification used for short distance communication, primarily in embedded systems. The interface was developed by Motorola and has become a de facto standard. 30

How SPI works? 31

SPI Logic Analyzer 32

What is wrong with SPI? The most obvious drawback of SPI is the number of pins required. Connecting a single master to a single slave with an SPI bus requires four lines The most obvious drawback of SPI is the number of pins required. Connecting a single master to a single slave with an SPI bus requires four lines 33

I2C I²C (Inter-Integrated Circuit), pronounced I- squared-C, is a multi-master, multi-slave, single-ended, serial computer bus invented by Philips Semiconductor (known today as NXP Semiconductors) I²C (Inter-Integrated Circuit), pronounced I- squared-C, is a multi-master, multi-slave, single-ended, serial computer bus invented by Philips Semiconductor (known today as NXP Semiconductors) 34

How I2C works? 35

I2C Logic Analyzer 36

I2C most I 2 C devices can communicate at 100kHz or 400kHz. most I 2 C devices can communicate at 100kHz or 400kHz. There is some overhead with I 2 C; for every 8 bits of data to be sent, one extra bit of meta data (the “ACK/NACK” bit) must be transmitted. There is some overhead with I 2 C; for every 8 bits of data to be sent, one extra bit of meta data (the “ACK/NACK” bit) must be transmitted. 37

Real Time Clock (RTC) Much like a digital wristwatch, a real-time clock (RTC) keeps the time and date in an embedded system. Read-time clocks are typically composed of a crystal-controlled oscillator, numerous cascaded counters, and a battery backup. 38

LCD 39

Others Peripherals 40

Watchdog Timer A watchdog timer (WDT; sometimes called a computer operating properly or COP timer, or simply a watchdog) is an electronic timer that is used to detect and recover from computer malfunctions. 41

AES AES (advanced encryption standard) AES (advanced encryption standard) Secure Microcontrollers Keep Data Safe Secure Microcontrollers Keep Data Safe Secure MCU offerings range from 8-bit to 32-bit CPUs with dedicated encryption engines, random number generators, and additional features to secure communication channels and protected data Secure MCU offerings range from 8-bit to 32-bit CPUs with dedicated encryption engines, random number generators, and additional features to secure communication channels and protected data 42

CRC A Cyclic Redundancy Check (CRC) is a verification method used to ensure that data being sent is not corrupted during transfer. A Cyclic Redundancy Check (CRC) is a verification method used to ensure that data being sent is not corrupted during transfer. The use of CRCs is common in communication mediums that transmit digital data, such as WiFi and Ethernet. The use of CRCs is common in communication mediums that transmit digital data, such as WiFi and Ethernet. 43

Analog Comparator An analog comparator is a device that compares two (2) analog values and indicate which is greater. In electronics it is basically an amplifier without feedback and thus very high gain, as shown below. When the positive input (+) is greater the output voltage is saturated to its positive supply (logic 1), otherwise the output is saturated to is negative supply ( logic 0). An analog comparator is a device that compares two (2) analog values and indicate which is greater. In electronics it is basically an amplifier without feedback and thus very high gain, as shown below. When the positive input (+) is greater the output voltage is saturated to its positive supply (logic 1), otherwise the output is saturated to is negative supply ( logic 0). 44

IrDA IrDA, similar to UART, is a standard used for transmitting data by IR (infrared). The standard is optimized based on various factors such as resistance to environmental noise, etc. IrDA, similar to UART, is a standard used for transmitting data by IR (infrared). The standard is optimized based on various factors such as resistance to environmental noise, etc. 45

Hardware Multiplier Processing of digital signals is very demanding. One of the biggest problems is the multiplication required for processing of digital signals. Processing of digital signals is very demanding. One of the biggest problems is the multiplication required for processing of digital signals. The multipliers owing to their high complexities are difficult to be built-in in the majority of micoprocessors or microcontrollers. The multipliers owing to their high complexities are difficult to be built-in in the majority of micoprocessors or microcontrollers. 46

Cont. A multiplier is a part of the microprocessor or microcontroller only in the applications when it is absolutely necessary, such as digital signal processing A multiplier is a part of the microprocessor or microcontroller only in the applications when it is absolutely necessary, such as digital signal processing 47

Cont The megaAVR is a series of new devices in the AVR RISC Microcontroller family that includes, among other new enhancements, a hardware multiplier. This multiplier is capable of multiplying two 8-bit numbers, giving a 16- bit result using only two clock cycles. The component that makes a dedicated digital signal processor (DSP) specially suitable for signal processing is the Multiply-Accumulate (MAC) unit. This unit is functionally equivalent to a multiplier directly connected to an Arithmetic Logic Unit (ALU). 48

USB The Universal Serial Bus, or USB, has grown in popularity due to its simple physical layer interface, its flexibility, and ease of integrating – both at the hardware and software levels. Standardized and integrated connectors make it easy to interface an MCU to the USB cable The Universal Serial Bus, or USB, has grown in popularity due to its simple physical layer interface, its flexibility, and ease of integrating – both at the hardware and software levels. Standardized and integrated connectors make it easy to interface an MCU to the USB cable 49

LCD controller and driver Our new LCD drivers are also ideal to drive touch sensitive LCDs in combination with an capacitive touch controller to implement touch buttons on the display Our new LCD drivers are also ideal to drive touch sensitive LCDs in combination with an capacitive touch controller to implement touch buttons on the display 50

Capacitive Touch Many modern MCU come with an integrated peripheral touch controller (PTC) for capacitive touch applications Many modern MCU come with an integrated peripheral touch controller (PTC) for capacitive touch applications Ideal for capacitive touch button, slider, wheel or proximity sensing applications Ideal for capacitive touch button, slider, wheel or proximity sensing applications 51

Crossbar Silicon Labs’ patented crossbar technology enables maximum flexibility and allows designers to select needed peripherals without pin out conflicts. Silicon Labs’ patented crossbar technology enables maximum flexibility and allows designers to select needed peripherals without pin out conflicts. 52