Top Banner
Computer Organization Architectures for Embedded Computing Computer Organization Architectures for Embedded Computing Embedded Architectures Tuesday 25 November 14
40

Embedded Architectures - ULisboa · Embedded Architectures ... – LCD drivers • Analog peripherals: – A/D converters up to 12-bits ... – Contact-based

Apr 17, 2018

Download

Documents

vuongtram
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Embedded Architectures - ULisboa · Embedded Architectures ... – LCD drivers • Analog peripherals: – A/D converters up to 12-bits ... – Contact-based

Computer Organization Architectures for Embedded Computing

Computer Organization Architectures for Embedded Computing

Embedded Architectures

Tuesday 25 November 14

Page 2: Embedded Architectures - ULisboa · Embedded Architectures ... – LCD drivers • Analog peripherals: – A/D converters up to 12-bits ... – Contact-based

Computer Organization / Architectures for Embedded Computing 2

Summary

•  Previous Class – Analog-Digital Interface

•  Today: – Embedded Architectures

•  Microcontrollers •  DSP •  Smartcards

Page 3: Embedded Architectures - ULisboa · Embedded Architectures ... – LCD drivers • Analog peripherals: – A/D converters up to 12-bits ... – Contact-based

Computer Organization / Architectures for Embedded Computing 3

Microprocessor Varieties •  Processing unit particularly suited to the control of simple

procedures or devices in embedded systems

•  Processor families: –  General Purpose Processors (GPP)

•  transfer and data manipulation operations (MOVs); conditional execution operations (IF ... ELSE ...)

–  Digital Signal Processors (DSP) •  microprocessor optimized for digital signal processing

–  Mathematical computation (mainly, multiplications)

–  Microcontrollers •  includes on-board memory and I/O devices (peripherals) to

interface with the outside world

•  Common applications –  control, actuators, instrumentation, etc

Page 4: Embedded Architectures - ULisboa · Embedded Architectures ... – LCD drivers • Analog peripherals: – A/D converters up to 12-bits ... – Contact-based

Computer Organization / Architectures for Embedded Computing 4

Application Examples •  Personal appliances

–  Cellular phones –  Watches –  Calculators –  PDAs

•  Computer components –  Mouse –  Keyboards –  Modem –  Fax –  Battery charger

•  Home appliances –  Alarms –  Thermostats –  Air conditioners –  Remote controllers –  Most domestic machines

Page 5: Embedded Architectures - ULisboa · Embedded Architectures ... – LCD drivers • Analog peripherals: – A/D converters up to 12-bits ... – Contact-based

Computer Organization / Architectures for Embedded Computing 5

Application Examples

•  Car industry –  On-board computer –  Controllers of traction,

injection, transmission, break (ABS), etc

–  Air bag –  Air conditioning –  Instrumentation

•  Entertainment –  Video games –  Consoles –  Toys

•  Industrial applications –  Industrial robots

(manipulators) –  Belt conveyor systems –  Lifts –  Automatic control –  Instrumentation

Page 6: Embedded Architectures - ULisboa · Embedded Architectures ... – LCD drivers • Analog peripherals: – A/D converters up to 12-bits ... – Contact-based

Computer Organization / Architectures for Embedded Computing 6

Automotive Embedded Systems •  Today’s high-end automobile have more than 100

microprocessors: –  4-bit microcontroller checks seat belt –  microcontrollers run dashboard devices –  16/32-bit microprocessor controls engine

•  Customer’s requirements –  Reduced cost –  Increased functionality –  Improved performance –  Increased overall dependability

Page 7: Embedded Architectures - ULisboa · Embedded Architectures ... – LCD drivers • Analog peripherals: – A/D converters up to 12-bits ... – Contact-based

Computer Organization / Architectures for Embedded Computing 7

An Engineering View

Page 8: Embedded Architectures - ULisboa · Embedded Architectures ... – LCD drivers • Analog peripherals: – A/D converters up to 12-bits ... – Contact-based

Computer Organization / Architectures for Embedded Computing 8

Digital Camera Block Diagram

Page 9: Embedded Architectures - ULisboa · Embedded Architectures ... – LCD drivers • Analog peripherals: – A/D converters up to 12-bits ... – Contact-based

Computer Organization / Architectures for Embedded Computing 9

GPPs versus Microcontrollers •  General Purpose Processors (GPPs)

–  CPU, Memory and IO integrated on a set of chips, on a board or several boards

•  Microcontrollers –  CPU, Memory, IO and peripherals integrated in a single

chip

Page 10: Embedded Architectures - ULisboa · Embedded Architectures ... – LCD drivers • Analog peripherals: – A/D converters up to 12-bits ... – Contact-based

Computer Organization / Architectures for Embedded Computing 10

GPPs versus Microcontrollers •  General Purpose Processors (GPPs):

–  High performance CPU, in an independent chip –  Absence of any RAM, ROM and IO modules in the CPU chip

•  The used memory space should be defined and adjusted according to each particular application

–  Peripherals (timer, serial port, etc.) are external to the CPU chip

•  Expansible, versatile and general purpose

Page 11: Embedded Architectures - ULisboa · Embedded Architectures ... – LCD drivers • Analog peripherals: – A/D converters up to 12-bits ... – Contact-based

Computer Organization / Architectures for Embedded Computing 11

GPPs versus Microcontrollers •  Microcontrollers:

–  CPU with few resources (e.g.: 8-bits) –  RAM, ROM and IO integrated within the CPU chip

•  The available memory space is fixed

–  Peripherals integrated within the CPU chip.

•  Suitable for low-cost and restricted (power, HW, etc.) applications

Page 12: Embedded Architectures - ULisboa · Embedded Architectures ... – LCD drivers • Analog peripherals: – A/D converters up to 12-bits ... – Contact-based

Computer Organization / Architectures for Embedded Computing 12

GPPs versus Microcontrollers •  Adopted architectures:

–  Von Neumann architecture: •  Single memory shared by program and data •  The processor is interconnected by a data and an address bus

–  Harvard architecture: •  Separated memories for program and data •  Independent data and address buses for each memory device

Page 13: Embedded Architectures - ULisboa · Embedded Architectures ... – LCD drivers • Analog peripherals: – A/D converters up to 12-bits ... – Contact-based

Computer Organization / Architectures for Embedded Computing 13

Microcontroller’s CPU and Peripherals

•  Simple CPU, implemented with: –  Single-cycle state machine –  Control unit with a state machine –  Micro-programmed control unit –  Very simple pipeline

•  On-chip peripherals: –  I/O ports –  RAM and ROM memories –  Timer –  Interruptions controller –  USART –  Parallel port; etc.

Page 14: Embedded Architectures - ULisboa · Embedded Architectures ... – LCD drivers • Analog peripherals: – A/D converters up to 12-bits ... – Contact-based

Computer Organization / Architectures for Embedded Computing 14

Microcontrollers Families

•  Most manufacturers offer a wide set of devices, with different performance levels

•  Processing power: 4-bits, 8-bits, 16-bits, 32-bits –  8-bits microcontrollers are the most widely adopted

and used by the majority of the applications –  32-bits and 64-bits are only requested by very

specialized and reduced markets, with very specific requisites:

•  Communications •  Signal processing •  Video processing •  etc.

Page 15: Embedded Architectures - ULisboa · Embedded Architectures ... – LCD drivers • Analog peripherals: – A/D converters up to 12-bits ... – Contact-based

Computer Organization / Architectures for Embedded Computing 15

Microcontrollers Families •  Atmel

–  AVR •  ARM •  Intel

–  8-bit •  8XC42 •  MCS48 •  MCS51 •  8xC251

–  16-bit •  MCS96 •  MXS296

•  Microchip –  12-bit instruction PIC

•  PIC12F508 –  14-bit instruction PIC

•  PIC16F84 –  16-bit instruction PIC

•  National Semiconductor –  COP8

•  NEC •  Motorola

–  8-bit •  68HC05 •  68HC08 •  68HC11

–  16-bit •  68HC12 •  68HC16

–  32-bit •  683xx

•  SGS/Thomson –  ST62

•  Texas Instruments –  TMS370 –  MSP430

•  Zilog –  Z8 –  Z86E02

Page 16: Embedded Architectures - ULisboa · Embedded Architectures ... – LCD drivers • Analog peripherals: – A/D converters up to 12-bits ... – Contact-based

Computer Organization / Architectures for Embedded Computing 16

Microcontrollers Market •  Market:

–  8 and 16-bit microcontrollers satisfy more than 75% of the market needs!

•  Dominant microcontrollers: –  Microchip 16Fxx –  Intel 8051 and derivatives –  Motorola MC68HC05

Page 17: Embedded Architectures - ULisboa · Embedded Architectures ... – LCD drivers • Analog peripherals: – A/D converters up to 12-bits ... – Contact-based

Computer Organization / Architectures for Embedded Computing 17

Microcontroller Packaging and Appearance

•  From left to right: PIC 12F508, PIC 16F84A, PIC 16C72, Motorola 68HC05B16, PIC 16F877, Motorola 68000

Page 18: Embedded Architectures - ULisboa · Embedded Architectures ... – LCD drivers • Analog peripherals: – A/D converters up to 12-bits ... – Contact-based

Computer Organization / Architectures for Embedded Computing 18

Example: Intel MCS-51 Microcontrollers Family •  8-bits microcontroller •  Introduced in the market by Intel (8051) by the end of the 1970’s •  One of the most popular microcontrollers (about 40% of the market) •  Today, it is produced by several manufacturers in different formats:

–  Intel •  8751 microcontroller UV-EPROM

–  Philips •  8051 AD, DA, extended I/O, and flash

–  Atmel •  AT89C51, Flash (erase before write)

–  Dallas Semiconductor •  DS5000 NV-RAM, RTC

Page 19: Embedded Architectures - ULisboa · Embedded Architectures ... – LCD drivers • Analog peripherals: – A/D converters up to 12-bits ... – Contact-based

Computer Organization / Architectures for Embedded Computing 19

Example: Intel MCS-51 Microcontrollers Family

•  Intel MCS-51 Family: –  CPU, RAM, ROM, I/O, interrupt logic, timer, etc. in a single

chip –  8-bits data bus –  16-bits address bus

•  can access 216 = 64 kB memory positions (RAM and ROM) –  On-chip RAM: 128 bytes (“Data Memory”) –  On-chip ROM: 4 kB (“Program Memory”) –  4-bytes bi-directional IO port –  UART (serial port) –  2 × 16-bit counters/timers –  Interrupt controller (2 priority levels) –  Low-power mode

Page 20: Embedded Architectures - ULisboa · Embedded Architectures ... – LCD drivers • Analog peripherals: – A/D converters up to 12-bits ... – Contact-based

Computer Organization / Architectures for Embedded Computing 20

Example: Intel MCS-51 Microcontrollers Family

Architecture:

Page 21: Embedded Architectures - ULisboa · Embedded Architectures ... – LCD drivers • Analog peripherals: – A/D converters up to 12-bits ... – Contact-based

Computer Organization / Architectures for Embedded Computing 21

Example: Intel MCS-51 Microcontrollers Family

•  Internal peripherals: –  Parallel IO ports –  Clock generator –  Serial port –  Timers –  Interrupt controller

Page 22: Embedded Architectures - ULisboa · Embedded Architectures ... – LCD drivers • Analog peripherals: – A/D converters up to 12-bits ... – Contact-based

Computer Organization / Architectures for Embedded Computing 22

•  Parallel IO ports: –  Each port can be configured either for input or output –  The direction is defined by special registers

•  Serial port: –  Data is sent/received serially –  The transmission rate (BAUD rate) and the transmission

mode are configured with specific registers (SFR)

Example: Intel MCS-51 Microcontrollers Family

Page 23: Embedded Architectures - ULisboa · Embedded Architectures ... – LCD drivers • Analog peripherals: – A/D converters up to 12-bits ... – Contact-based

Computer Organization / Architectures for Embedded Computing 23

Example: Intel MCS-51 Microcontrollers Family

•  2 × internal timer: –  Each timer increments the counter at each clock cycle –  The count limit is configured using specific timer

registers (TH0, TL0, TH1, TL1) –  The current count value can be read in registers TH0,

TL0, TH1, TL1 –  At the end of the count:

•  An interruption is generated •  Dedicated bits at SFR register are activated

Page 24: Embedded Architectures - ULisboa · Embedded Architectures ... – LCD drivers • Analog peripherals: – A/D converters up to 12-bits ... – Contact-based

Computer Organization / Architectures for Embedded Computing 24

Example: Intel MCS-51 Microcontrollers Family •  Interrupt controller

–  5 types of interruption: •  Timer 1 Overflow •  Timer 2 Overflow •  External interruption 1 •  External interruption 2 •  Serial port event (buffer full, buffer empty, etc.)

–  Interruptions are activated/inhibited using the SFR register.

Page 25: Embedded Architectures - ULisboa · Embedded Architectures ... – LCD drivers • Analog peripherals: – A/D converters up to 12-bits ... – Contact-based

Computer Organization / Architectures for Embedded Computing 25

Example: Microchip Microcontrollers PIC Family

•  Large microcontrollers (PIC) family –  Advanced communication peripherals and protocols –  Wide processing capacity offer

•  8, 16 or 32 bits

–  Several (memory) addressing spaces available:

•  RAM •  ROM •  EEPROM •  Flash

Page 26: Embedded Architectures - ULisboa · Embedded Architectures ... – LCD drivers • Analog peripherals: – A/D converters up to 12-bits ... – Contact-based

Computer Organization / Architectures for Embedded Computing 26

Example: Microchip Microcontrollers PIC Family

Vast set of peripherals and protocols: •  Communication peripherals and protocols:

–  RS232/RS485 –  SPI –  I2C –  CAN –  USB –  TCP/IP –  Ethernet

•  Control and timer peripherals: –  Acquisition and comparison –  Pulse Width Modulation (PWM) –  Counters and timers –  Watchdogs

•  Visual peripherals: –  LED drivers –  LCD drivers

•  Analog peripherals: –  A/D converters up to 12-

bits –  D/A converters –  Comparators and signal

amplifiers –  Voltage detectors –  Temperature sensors –  Oscillators –  Voltage references –  Voltage regulators

Page 27: Embedded Architectures - ULisboa · Embedded Architectures ... – LCD drivers • Analog peripherals: – A/D converters up to 12-bits ... – Contact-based

Computer Organization / Architectures for Embedded Computing 27

Example: Microchip Microcontrollers PIC Family

Page 28: Embedded Architectures - ULisboa · Embedded Architectures ... – LCD drivers • Analog peripherals: – A/D converters up to 12-bits ... – Contact-based

Computer Organization / Architectures for Embedded Computing 28

Example: Microchip Microcontrollers PIC Family PIC Family Stack Size Instruction

Word Size No of

Instructions Interrupt Vectors

12CX/12FX 2 12- or 14-bit 33 None 16C5X/16F5X 2 12-bit 33 None

16CX/16FX 8 14-bit 35 1 17CX 16 16-bit 58 4

18CX/18FX 32 16-bit 75 2

Page 29: Embedded Architectures - ULisboa · Embedded Architectures ... – LCD drivers • Analog peripherals: – A/D converters up to 12-bits ... – Contact-based

Computer Organization / Architectures for Embedded Computing 29

Example: TMS32010

Page 30: Embedded Architectures - ULisboa · Embedded Architectures ... – LCD drivers • Analog peripherals: – A/D converters up to 12-bits ... – Contact-based

Computer Organization / Architectures for Embedded Computing 30

Example: Philips TriMedia-Processor

Page 31: Embedded Architectures - ULisboa · Embedded Architectures ... – LCD drivers • Analog peripherals: – A/D converters up to 12-bits ... – Contact-based

Computer Organization / Architectures for Embedded Computing 31

Example: SH-MobileG1 chip System on a Chip (SoC)

Page 32: Embedded Architectures - ULisboa · Embedded Architectures ... – LCD drivers • Analog peripherals: – A/D converters up to 12-bits ... – Contact-based

Computer Organization / Architectures for Embedded Computing 32

Smart-Cards •  Appeared in the beginning of the 1970’s, but...

–  Only by the beginning of the 1980’s were the supporting technologies developed

•  Two types of cards: –  Memory card (without CPU) –  Card with microprocessor

Chip Plastic card

Page 33: Embedded Architectures - ULisboa · Embedded Architectures ... – LCD drivers • Analog peripherals: – A/D converters up to 12-bits ... – Contact-based

Computer Organization / Architectures for Embedded Computing 33

Smart-Cards

•  Applications –  Information technology

•  Secure access and user authentication •  Storage of digital certificates and passwords •  Encryption of critical data

–  Cellular phones (GSM) •  Subscriber authentication •  Data storage

–  e-Commerce •  e-Banking and e-Payments •  Identification and access control (tickets) •  Parking •  Phone credit (decrement of a credit counter)

Page 34: Embedded Architectures - ULisboa · Embedded Architectures ... – LCD drivers • Analog peripherals: – A/D converters up to 12-bits ... – Contact-based

Computer Organization / Architectures for Embedded Computing 34

Smart-Cards

•  Smart-Cards with microprocessor –  Processor

•  Usually, 16-bits @ 5-16 MHz •  Cryptographic co-processors

–  Memory •  ROM (16 kBytes - 128 kBytes) for the operating system •  EEPROM (4 kBytes - 64 kBytes) for persistent data •  RAM (256 Bytes – 4k Bytes) for data •  ROM size ≈ 4 × EEPROM size ≈ 16 × RAM size

–  File system supported on the installed memory –  Small silicon area (5mm2), due to space and energy

restrictions

Page 35: Embedded Architectures - ULisboa · Embedded Architectures ... – LCD drivers • Analog peripherals: – A/D converters up to 12-bits ... – Contact-based

Computer Organization / Architectures for Embedded Computing 35

Smart-Cards

•  Dedicated commands to support secure / cryptography protocols – Access control

•  Examples: check key(), change key() – Authentication

•  Examples: authenticate() – Encryption

•  Examples: start encryption(), stop encryption() – Atomic operations

•  Examples: exchange(), increment(), decrement()

Page 36: Embedded Architectures - ULisboa · Embedded Architectures ... – LCD drivers • Analog peripherals: – A/D converters up to 12-bits ... – Contact-based

Computer Organization / Architectures for Embedded Computing 36

Smart-Cards •  Communication

–  Contact-based –  Contact-less (transmission with an antenna)

•  Serial protocol, 9600 bps

•  Power-supply –  With battery –  Without battery

•  the CPU is powered with an inductive circuit

Page 37: Embedded Architectures - ULisboa · Embedded Architectures ... – LCD drivers • Analog peripherals: – A/D converters up to 12-bits ... – Contact-based

Computer Organization / Architectures for Embedded Computing 37

Smart-Cards: Infineon SLE66

Page 38: Embedded Architectures - ULisboa · Embedded Architectures ... – LCD drivers • Analog peripherals: – A/D converters up to 12-bits ... – Contact-based

Computer Organization / Architectures for Embedded Computing 38

Conclusion •  Microprocessors come in many varieties

–  GPP –  DSP –  Microcontrollers –  Smartcards

•  A significant share of the market is targeted to embedded systems: –  I/O –  Small –  Cheap –  Application oriented –  Energy restricted

Page 39: Embedded Architectures - ULisboa · Embedded Architectures ... – LCD drivers • Analog peripherals: – A/D converters up to 12-bits ... – Contact-based

Computer Organization / Architectures for Embedded Computing 39

Next Class

•  Multiprocessors – Programming overheads – Shared-Memory Multiprocessor

•  UMA vs NUMA

– Memory coherence

Page 40: Embedded Architectures - ULisboa · Embedded Architectures ... – LCD drivers • Analog peripherals: – A/D converters up to 12-bits ... – Contact-based

Computer Organization Architectures for Embedded Computing

Computer Organization Architectures for Embedded Computing

Embedded Architectures

Tuesday 25 November 14