Embedded Processing

Document Sample
Embedded Processing Powered By Docstoc
					Embedded Processing

          Overview

        Don Heyer, Fall 2006
Preview
   Overview and Definitions
   Hardcore Processors
       Examples
       Brief Mention of the Blackfin (Analog Devices) the
        PowerPC405 (IBM)
   Softcore Processors
       Advantages/Disadvantages
       Examples
       Current Research
Overview
   Typical Processors: General-Purpose
       Personal Computers
   Embedded Processors: Special-Purpose,
      Majority of Processors Sold
       Automotive
       DSP
       MP3 Players
       …
  Definition:
          Microprocessor
      A Microprocessor is a Single VLSI Chip
       that has a CPU and may also have some
       Other Units (for example, caches, floating
       point processing arithmetic unit, pipelining,
       and super-scaling units)
                    Source                 Microprocessor Family
                   Motorola                       68HCxxx
                     Intel                      80x86 & i860
                      Sun                          SPARC
                      IBM                         PowerPC

Source: Raj Kamal, Embedded Systems: Architecture, Programming and Design
  Definition:
          Microcontroller
      A Microcontroller is a Single-Chip VLSI
       Unit which, though having Limited
       Computational Capabilities Possesses
       Enhanced Input-Output Capabilities and
       a Number of On-Chip Functional Units
                    Source                 Microcontroller Family
                   Motorola             68HC11xx, HC12xx, HC16xx
                     Intel                  80x86, 8051, 80251
                   Microchip             PIC 16F84, 16F876, PIC18
                     ARM                        ARM9, ARM7

Source: Raj Kamal, Embedded Systems: Architecture, Programming and Design
  Definition:
          Embedded Processor
      An Embedded Processor is a Special
       Microprocessor or Microcontroller that
       Allows for Fast, Precise and Intensive
       Calculations for Complex Real Time
       Applications
                    Source                 Digital Signal Processor
                   Motorola                        5600xx
                Analog Devices                     SHARC
              Texas Instruments                  TMS320Cxx


Source: Raj Kamal, Embedded Systems: Architecture, Programming and Design
  Definition:
  Application Specific System Processor
      An Application Specific System
       Processor is an Additional Processing
       Unit for Running Application-Specific
       Tasks in Place of Processing Using
       Embedded Software
          Video Compression/Decompression
          Encryption/Decryption
          Networking Solutions


Source: Raj Kamal, Embedded Systems: Architecture, Programming and Design
Hardcore/Softcore Processors
   Hardcore Processors
       A Fabricated Integrated Circuit that may or
        may not be Embedded into Additional Logic
   Softcore Processors
       A Processor Described in a HDL that is
        implemented in Reconfigurable Logic (ie, in
        an FPGA)
Embedded
  Hardcore Processors
   Typically have slower clock speeds than
    general purpose processors
   Typically have shorter pipelines (5-10
    stages) than general purpose
    processors
   May or may not have a cache
   Special Branch Instructions? (Prof.
    Franklin)
Embedded
  CISC Hardcore Processors




                     Source: Raj Kamal,
                     Embedded Systems:
                  Architecture, Programming
                          and Design
Embedded
  RISC Hardcore Processors




                     Source: Raj Kamal,
                     Embedded Systems:
                  Architecture, Programming
                          and Design
Example:
   Analog Devices Blackfin
   32-bit RISC Embedded Processor @
    Frequencies up to ~750MHz
   Targets Embedded Audio, Video and
    Communications Applications
   Architecture Includes Instructions Specifically
    Targeted to Video Processing
       Discrete Cosine Transform
       “Sum Absolute Difference”
   10-Stage Pipeline
   L1 and L2 On-Chip Memory
Example:
   IBM PowerPC 405
   32-bit RISC Embedded Processor
       Implemented in 60+ IBM ASICs
       Embedded in Xilinx Virtex2 Pro and Virtex4
        FPGAs
   5-Stage Pipeline
       Static Branch Prediction
   L1 Cache (16Kb Instruction, 16Kb Data)
IBM PowerPC 405:
      Block Diagram
Embedded
  Softcore Processors
   Typically Slower than Hardcore
    Processors
   Typically have Shorter Pipelines (0-6
    stages) than Hardcore Processors
       Typically Static Branch Prediction, if any
   May or may not have a cache
       Memory is sometimes Slower!
Embedded
  Softcore Processors
   Customizable for Application-Specific
    Needs
       Performance, Power or Area can be
        Targeted
       Any Number of Processors can be
        Implemented
       All Required On-Chip Functionality can be
        Included (and Nothing More)
Commercial Softcore Processors
   Altera
       NiosII/e (Economy)
            Unpipelined, Serial Shifter, Software Multiplication
       NiosII/s (Standard)
            5-Stage Pipeline, Multiplier-Based Shifter, Hardware
             Multiply, Instruction Cache
       NiosII/f (Fast)
            6-Stage Pipeline, Dynamic Branch Prediction,
             Instruction/Data Caches
Commercial Softcore Processors
   Xilinx
       PicoBlaze
            Simple 8-bit Microcontroller Core
       MicroBlaze v4.00
            3-Stage Pipeline
            Optional Floating Point Unit
            No Branch Prediction
       MicroBlaze v5.00
            5-Stage Pipeline
            Optional Instruction and Data Cache
            No Branch Prediction
Current Research
   Application-Specific Processor
    Customization
       Peter Yiannacouras, J. Gregory Steffan and
        Jonathan Rose
       Able to Generate Custom Softcore Processors with
        Soft Processor Rapid Exploration Environment
       Have Currently Investigated Multiplier, Shifter and
        Pipeline Depth Customization
Current Research




                                              (Added Hardware Multiplier Support)



 Source: Peter Yiannacouras, J. Gregory Steffan, and Jonathan Rose,
“Application-Specific Customization of Soft Processor Microarchitecture”
Current Research




 Source: Peter Yiannacouras, J. Gregory Steffan, and Jonathan Rose,
“Application-Specific Customization of Soft Processor Microarchitecture”
Recap
   Embedded Processors Widely Sold and Used
   Typically Customized for a Specific Application
   Embedded Processors Typically have Fewer
    Resources Compared to General Purpose
    Processors
   New Softcore Processors Provide Further
    Levels of Customization as Research
    Continues