The Nios II Processor

       Learning Zone @
       Embedded World 2010




© 2010 Altera Corporation—Public
Nios II Versions

      32-bit RISC Nios II Processor comes in three ISA
      compatible versions:
                                                           − FAST: Optimized for Speed



                                                           − STANDARD: Balanced for Speed & Size



                                                            − ECONOMY: Optimized for Size



      Software code is binary compatible across all
      versions - No software changes required
© 2010 Altera Corporation—Public
ALTERA, ARRIA, CYCLONE, HARDCOPY, MAX, MEGACORE, NIOS, QUARTUS & STRATIX are Reg. U.S. Pat. & Tm. Off.
and Altera marks in and outside the U.S.
Nios II Processor Features

      Configurable:
         − Core features – caches, interrupts, custom instructions, etc.
         − User Defined Peripheral Set


      Automated processor configuration and
      system integration

      Powerful software tools
         − Eclipse IDE, C/C++ Development Tools,
              Trace Debug, Flash Programmer, etc.


      Third party support for RTOS,
      middleware and debug tools
© 2010 Altera Corporation—Public
ALTERA, ARRIA, CYCLONE, HARDCOPY, MAX, MEGACORE, NIOS, QUARTUS & STRATIX are Reg. U.S. Pat. & Tm. Off.
and Altera marks in and outside the U.S.
Nios II Processor Configuration
                                                 Nios II Processor Core
               reset                                                                                                              Instruction
                                                                                                   General                        Master




                                                                               Instruction and
                                                     Program




                                                                                Instruction and
               clock                                                                               Purpose                        Port




                                                                                  Data Trace
                                                    Controller




                                                                                  Data Trace
                                                                                                  Registers         Instruction
JTAG interface              Hardware-                   &                                                             Cache
 to Software                 Assisted                Address
Debugger                   Debug Module             Generation                                    Status &
                                                                                                   Control
                                                                                                  Registers            Tightly
                                                                                                                        Tightly
High Speed                                              Trace
                                                        Trace                                                        Coupled
                                                                                                                      Coupled
Connection                     Trace port
                               Trace port                                                                            I-Memory
                                                       Memory
                                                       Memory                                                         I-Memory
to Trace Pod




                                                                               Breakpoints
                                                                               Breakpoints
                                                     Exception                                                        Tightly
                                                                                                                       Tightly




                                                                                  HW
                                                     Controller                                     MMU




                                                                                   HW
                                                                                                                     Coupled
                                                                                                                      Coupled
                                                                                                                     D-Memory
                                                                                                                     D-Memory
                                                      Interrupt                                      MPU
    irq[31..0]                                       Controller                                                                   Data
                                                                                                                                  Master
                                                                                                                                  Port
                                                                                                                       Data
                                Custom                                                                                Cache
  Custom                       Instruction                               Arithmetic
I/O Signals                      Logic                                   Logic Unit



  © 2010 Altera Corporation—Public
                                                                  = Configurable                  = Optional & Configurable
  ALTERA, ARRIA, CYCLONE, HARDCOPY, MAX, MEGACORE, NIOS, QUARTUS & STRATIX are Reg. U.S. Pat. & Tm. Off.
  and Altera marks in and outside the U.S.
                                                                  = Fixed                         = Debug Options
Nios II Processor Benchmark Data

                                   Cyclone® III / IV FPGAs                                         Stratix® IV FPGAs
                                   Clock                                                   Clock
                                   Speed          DMIPS                  LEs               Speed         DMIPS   ALUTs
                                   (MHz)                                                   (MHz)

  Nios II /f                        175              195                1,800                 290         340    1,020


  Nios II /s                        145               90                1,300                 250         150     850


  Nios II /e                        215               30                 650                  340         48      520


        Note: Cyclone devices range from 5K LEs to >100KLEs
© 2010 Altera Corporation—Public
ALTERA, ARRIA, CYCLONE, HARDCOPY, MAX, MEGACORE, NIOS, QUARTUS & STRATIX are Reg. U.S. Pat. & Tm. Off.
and Altera marks in and outside the U.S.
3 Ways to Increase Performance
            Custom                                       Hardware                                          Multi-Processor
          Instructions                                  Accelerators                                           System
          FPGA                                             FPGA                                                     FPGA
                                                                                                                           Nios II
                                                                                                                           Nios
                            Nios II
                            Nios                                         Nios II
                                                                         Nios                            External
                                                                                                         External          Nios II




                                                                                                                    PCIe
                                                                                                                           Nios




                                                                                                                    PCIe
                           Custom
                           Custom                                      Hardware
                                                                       Hardware                          CPU or
                                                                                                         CPU or
                         Instructions
                         Instructions                                 Accelerator
                                                                      Accelerator                         DSP
                                                                                                          DSP              Nios II
                                                                                                                           Nios


         Accelerate CPU                                    Add external                                    Add more
         processing                                        co-processing                                   processors
         performance with                                  hardware to                                     (internal &/or
         application-                                      accelerate data                                 external) to increase
         specific hardware                                 functions                                       processing power

© 2010 Altera Corporation—Public
ALTERA, ARRIA, CYCLONE, HARDCOPY, MAX, MEGACORE, NIOS, QUARTUS & STRATIX are Reg. U.S. Pat. & Tm. Off.
and Altera marks in and outside the U.S.
Accelerating Software in FPGA
                                                                                                                         Custom
                     Add Custom instruction: CUST A,B,C                                                                   Logic

                     −   Ideal for complex bit/word operations                                            A
                                                                                                                           +
                                                                                                                           -
                     Add hardware accelerator                                                                             <<
                                                                                                                                        C - Out
                                                                                                                          >>
                     − Processor & accelerator can run concurrently
                                                                                                          B                &
                     − More work per clock
                     − Lower fMAX, power, cost                                                            Nios II Embedded Processor

                     −   Ideal for block operations
                                                                                                                                  Control

                     2,500                                                                               Nios II
 Iterations/Second




                                                                                                                                               DMA
                                                                                                                           DMA
                                                                                                           Custom                Accelerator
                                                                                                         Instruction
                     2,000
                     1,500                                                530 Times
                                             27 Times                       Faster
                     1,000
                                              Faster
                                                                                                                       Arbiter         Arbiter
                     500
                         0
                             Software        Custom              Accelerator                              Program       Data            Data
                                                                                                          Memory       Memory          Memory
                               Only        Instruction
© 2010 Altera Corporation—Public        * Accelerator running 64Kb CRC at 100 MHz
ALTERA, ARRIA, CYCLONE, HARDCOPY, MAX, MEGACORE, NIOS, QUARTUS & STRATIX are Reg. U.S. Pat. & Tm. Off.
and Altera marks in and outside the U.S.
Altera C2H – the SW Accelerator Solution

      Generates and integrates a custom hardware
      accelerator from an ANSI C function.


                                          C2H
                                          C2H
              CPU                      Accelerator
                                       Accelerator




                                   Arbiter
                                   Arbiter        Arbiter
                                                  Arbiter


           Program              Data              Data
           Memory              Memory            Memory

© 2010 Altera Corporation—Public
ALTERA, ARRIA, CYCLONE, HARDCOPY, MAX, MEGACORE, NIOS, QUARTUS & STRATIX are Reg. U.S. Pat. & Tm. Off.
and Altera marks in and outside the U.S.
Hardware Development Flow
                                                           Hardware



                                                         HW Simulation                                   Configure & Integrate

                                    Hardware
                                   Configuration




                      FPGA



© 2010 Altera Corporation—Public
ALTERA, ARRIA, CYCLONE, HARDCOPY, MAX, MEGACORE, NIOS, QUARTUS & STRATIX are Reg. U.S. Pat. & Tm. Off.
and Altera marks in and outside the U.S.
Creating Systems With SOPC Builder




© 2010 Altera Corporation—Public
ALTERA, ARRIA, CYCLONE, HARDCOPY, MAX, MEGACORE, NIOS, QUARTUS & STRATIX are Reg. U.S. Pat. & Tm. Off.
and Altera marks in and outside the U.S.
SOPC Builder IP Cores
     Over 50 IP cores and components available
     Interface protocols
        − Ethernet, RapidIO®, PCI, SPI, UART, USB, etc.

     Processors
        − Nios II, Cortex M1, Coldfire V1, etc.

     Memories and memory controllers
        − DMA, flash controllers, SDRAM controllers

     Peripherals
        − Display, microcontroller peripherals, etc.

     Video and imaging processing
        − Alpha blender mixer, Deinterlacer, etc.

     Plus many more



© 2010 Altera Corporation—Public
ALTERA, ARRIA, CYCLONE, HARDCOPY, MAX, MEGACORE, NIOS, QUARTUS & STRATIX are Reg. U.S. Pat. & Tm. Off.
and Altera marks in and outside the U.S.
Embedded Development Flow
                                                           Hardware



                                                                                                         Configure & Integrate

                                    Hardware                                                         System             .ptf
                                   Configuration                                                   Information          .sopc


                                                            Software

                      FPGA

                                                                                                          Compile & Debug
© 2010 Altera Corporation—Public
ALTERA, ARRIA, CYCLONE, HARDCOPY, MAX, MEGACORE, NIOS, QUARTUS & STRATIX are Reg. U.S. Pat. & Tm. Off.
and Altera marks in and outside the U.S.
Nios II Embedded Design Suite



  Integrated Software                                                                                     Nios II Software
      Development                                                                                           Build Tools
 Manage, Build, Debug

                                                           Embedded
                                                          Design Suite
                 HAL API

       Peripheral Drivers                                                                                  GNU Tools
         and Runtime                                                                                       Debugger,
        Software Library
© 2010 Altera Corporation—Public                                                                         C/C++Compiler
ALTERA, ARRIA, CYCLONE, HARDCOPY, MAX, MEGACORE, NIOS, QUARTUS & STRATIX are Reg. U.S. Pat. & Tm. Off.
and Altera marks in and outside the U.S.
Nios II Operating System / Middleware
Support

                                                                                                                     LINUX




                                                                                                              embOS



                                                                        µCLinux



                    ERIKA & RT-Druid                        Open Source                                  Open Source
                                                            www.niosforum.org                            www.niosforum.org
© 2010 Altera Corporation—Public
ALTERA, ARRIA, CYCLONE, HARDCOPY, MAX, MEGACORE, NIOS, QUARTUS & STRATIX are Reg. U.S. Pat. & Tm. Off.
and Altera marks in and outside the U.S.
Partner Software Development Tools




                                                                                                         Optimizing C Compiler



© 2010 Altera Corporation—Public
ALTERA, ARRIA, CYCLONE, HARDCOPY, MAX, MEGACORE, NIOS, QUARTUS & STRATIX are Reg. U.S. Pat. & Tm. Off.
and Altera marks in and outside the U.S.
Other Processor Options
      ARM Cortex-M1

      Freescale ColdFire V1

      Evatronix X86

      Octera PPC 405

      Leon 3

      Many legacy cores – 8051, 6502, etc

© 2010 Altera Corporation—Public
ALTERA, ARRIA, CYCLONE, HARDCOPY, MAX, MEGACORE, NIOS, QUARTUS & STRATIX are Reg. U.S. Pat. & Tm. Off.
and Altera marks in and outside the U.S.
Why your next embedded project might use a
Nios II processor…

      If standard microcontrollers                                                                         I/O      I/O   I/O

      or processors don’t offer enough…                                                                            FPGA
         − Functionality                                                                                     CUSTOM LOGIC


         − System Integration                                                                            Nios II   DSP    I/O
         − Power/performance ratio
         − Product flexibility
         − Obsolescence protection


      …then the Nios II processor is for you!

                   Innovate with Nios II & FPGA!
© 2010 Altera Corporation—Public
ALTERA, ARRIA, CYCLONE, HARDCOPY, MAX, MEGACORE, NIOS, QUARTUS & STRATIX are Reg. U.S. Pat. & Tm. Off.
and Altera marks in and outside the U.S.
Thank You



     www.altera.com



© 2010 Altera Corporation—Public
Back-up




© 2010 Altera Corporation—Public
First Step in System Design




© 2010 Altera Corporation—Public
ALTERA, ARRIA, CYCLONE, HARDCOPY, MAX, MEGACORE, NIOS, QUARTUS & STRATIX are Reg. U.S. Pat. & Tm. Off.
and Altera marks in and outside the U.S.
What is SOPC Builder?




IP delivery and system generation tool:
         −    GUI based
         −    IP configuration
         −    System configuration
         −    Automated IP integration



© 2010 Altera Corporation—Public
ALTERA, ARRIA, CYCLONE, HARDCOPY, MAX, MEGACORE, NIOS, QUARTUS & STRATIX are Reg. U.S. Pat. & Tm. Off.
and Altera marks in and outside the U.S.
Traditional System Design
                                    Processor                                                     Ethernet
                                   (Bus Master)                   Interrupt                     (Bus Master)
                                      32-Bit                      Controller                       32-Bit



                                         Address




                                                                                                         Address
     Address                                                                                                                 High




                                                                                                                   Data
                                                   Data
     Decoder                                                                                                                  High
                                                          Arbiter
                                                                                                                          Engineering
                                                                                                                          Engineering
                                                                                                                           Overhead!
                                                                                                                           Overhead!




       Width-Match                   Width-Match                 Width-Match                  Width-Match                 Width-Match

            UART                      Memory                        Timer                          PCI                      DDR2
            8-Bit                      32-Bit                       16-Bit                        64-Bit                    64-Bit

        Clock 1                        Clock 2                                                  Clock 1
© 2010 Altera Corporation—Public
ALTERA, ARRIA, CYCLONE, HARDCOPY, MAX, MEGACORE, NIOS, QUARTUS & STRATIX are Reg. U.S. Pat. & Tm. Off.
and Altera marks in and outside the U.S.
SOPC Builder Integration
                                    Processor                                                     Ethernet
                                   (Bus Master)                                                 (Bus Master)
                                      32-Bit                                                       32-Bit Integration is
                                                                                                           Integration is
                                                                                                            Fast, Easy and
                                                                                                             Fast, Easy and
                                                                                                              Error Free!
                                                                                                               Error Free!
   Automatically Generated System Interconnect Fabric

         Address
         Address                      Interrupt
                                       Interrupt                     Burst
                                                                     Burst                    Wait-state
                                                                                              Wait-state       Multi-clock
                                                                                                               Multi-clock
         Decoder
         Decoder                      Controller
                                      Controller                   Transfers
                                                                   Transfers                  Generation
                                                                                              Generation        Domain
                                                                                                                Domain

           Arbiter
           Arbiter                      Arbiter
                                        Arbiter                      Arbiter
                                                                     Arbiter                      Arbiter
                                                                                                  Arbiter        Arbiter
                                                                                                                 Arbiter
       Width-Match
       Width-Match                   Width-Match
                                     Width-Match                 Width-Match
                                                                 Width-Match                  Width-Match
                                                                                              Width-Match       Width-Match
                                                                                                                Width-Match


            UART                      Memory                        Timer                          PCI            DDR2
            8-Bit                      32-Bit                       16-Bit                        64-Bit          64-Bit

        Clock 1                        Clock 2                                                  Clock 1
© 2010 Altera Corporation—Public
ALTERA, ARRIA, CYCLONE, HARDCOPY, MAX, MEGACORE, NIOS, QUARTUS & STRATIX are Reg. U.S. Pat. & Tm. Off.
and Altera marks in and outside the U.S.
SOPC Builder




© 2010 Altera Corporation—Public
ALTERA, ARRIA, CYCLONE, HARDCOPY, MAX, MEGACORE, NIOS, QUARTUS & STRATIX are Reg. U.S. Pat. & Tm. Off.
and Altera marks in and outside the U.S.
Component Selection


                                                                          Pool of “SOPC Builder Ready”
                                                                          Pool of “SOPC Builder Ready”
                                                                          Components
                                                                          Components
                                                                            −−   Communications
                                                                                 Communications
                                                                            −−   DSP
                                                                                 DSP
                                                                            −−   Bus Interfaces
                                                                                 Bus Interfaces
                                                                            −−   Bridges
                                                                                 Bridges
                                                                            −−   Memory Controllers
                                                                                 Memory Controllers
                                                                          Nios & Nios II®®Processors
                                                                          Nios & Nios II Processors
                            Over 60                                       Third Party IP Support
                                                                          Third Party IP Support
                         Cores Available
                             Today


© 2010 Altera Corporation—Public
ALTERA, ARRIA, CYCLONE, HARDCOPY, MAX, MEGACORE, NIOS, QUARTUS & STRATIX are Reg. U.S. Pat. & Tm. Off.
and Altera marks in and outside the U.S.
Component Configuration




                         Select Component from
                          Select Component from
                         SOPC library
                          SOPC library
                         Wizard based configuration
                          Wizard based configuration
                         for individual component
                          for individual component
                         properties
                          properties
                         Component added to list of
                          Component added to list of
                         active components
                          active components
                         Add, remove or modify
                          Add, remove or modify
                         component properties at
                          component properties at
                         any time
                          any time

© 2010 Altera Corporation—Public
ALTERA, ARRIA, CYCLONE, HARDCOPY, MAX, MEGACORE, NIOS, QUARTUS & STRATIX are Reg. U.S. Pat. & Tm. Off.
and Altera marks in and outside the U.S.
SOPC Builder Nios II Processor Options

      Select best fit
      processor core

      Configure caches

      Configure debug option

      Integrate custom
      instructions




          Edit and Regenerate at Any Time!
© 2010 Altera Corporation—Public
ALTERA, ARRIA, CYCLONE, HARDCOPY, MAX, MEGACORE, NIOS, QUARTUS & STRATIX are Reg. U.S. Pat. & Tm. Off.
and Altera marks in and outside the U.S.
System Configuration




                                                                                                Connection Patch Panel
                                                                                                Connection Patch Panel
                                                                                                  −− One click to connect
                                                                                                      One click to connect
                                                                                                     component
                                                                                                      component
                                                                                                Each master can connect
                                                                                                 Each master can connect
                                                                                                to one or many slaves
                                                                                                 to one or many slaves
                                                                                                Configure connections to
                                                                                                 Configure connections to
                                                                                                optimize throughput
                                                                                                 optimize throughput
                                                                                                Set Arbitration priorities
                                                                                                 Set Arbitration priorities



© 2010 Altera Corporation—Public
ALTERA, ARRIA, CYCLONE, HARDCOPY, MAX, MEGACORE, NIOS, QUARTUS & STRATIX are Reg. U.S. Pat. & Tm. Off.
and Altera marks in and outside the U.S.
System Component Configuration



                Configure how each Component
                 Configure how each Component
                fits into the System
                 fits into the System
                    −−    Interrupt Request (IRQ) Level
                           Interrupt Request (IRQ) Level
                    −−    Base Address
                           Base Address
                    −−    Clock Source
                           Clock Source
                Auto-assign option
                 Auto-assign option
                Error checking
                 Error checking
                Edit values at any time
                 Edit values at any time
                Lock critical settings
                 Lock critical settings


             Click on ‘Generate’ button
              Click on ‘Generate’ button
             to create system
© 2010 Altera Corporation—Public
              to create system
ALTERA, ARRIA, CYCLONE, HARDCOPY, MAX, MEGACORE, NIOS, QUARTUS & STRATIX are Reg. U.S. Pat. & Tm. Off.
and Altera marks in and outside the U.S.
Developing Software for the Nios II
      Processor




© 2010 Altera Corporation—Public
Nios II IDE Debug Perspective
                            Re-start Debugger                    Re-Run Program



  Basic Debug
 • Run Controls
 • Stack View
 • Active Debug
 Sessions


Double-click to
add breakpoints


 Memory View
 • Variables
 • Registers
 • Signals
  © 2010 Altera Corporation—Public
  ALTERA, ARRIA, CYCLONE, HARDCOPY, MAX, MEGACORE, NIOS, QUARTUS & STRATIX are Reg. U.S. Pat. & Tm. Off.
  and Altera marks in and outside the U.S.
Processor - FPGA Interfaces                                                                                      = master
                                                                                                                 = slave

                  Processor                                        FPGA
                   or DSP                                                                     Avalon
                                              GPIO,                                         Switch Fabric
                                              RS232,
                                   I/O         etc.
                                   I/F
                                                                             IP                             IP
                    CPU / DSP




                                               CPU
                                Co-Proc       Specific
                                                                             IP                             IP
                                  I/F

                                               SRAM
                                              SDRAM
                                                etc.
                                Memory                                       IP                             IP
                                                                                            Automatically
                                                                                             Generated

© 2010 Altera Corporation—Public
ALTERA, ARRIA, CYCLONE, HARDCOPY, MAX, MEGACORE, NIOS, QUARTUS & STRATIX are Reg. U.S. Pat. & Tm. Off.
and Altera marks in and outside the U.S.
Processor - FPGA Interfaces                                                                                             = master
                                                                                                                        = slave

                  Processor                                        FPGA
                   or DSP                                                                            Avalon
                                                                                                   Switch Fabric

                                                                                                                   IP
                    CPU / DSP




                                           Industry




                                                                                       Interface
                                          Standard                         PCIe
                                   PCI e
                                                                           Hard                                    IP
                                    I/F      High                           IP
                                         Performance


                                                                                                                   IP
                                                                                                   Automatically
                                                                                                    Generated

© 2010 Altera Corporation—Public
ALTERA, ARRIA, CYCLONE, HARDCOPY, MAX, MEGACORE, NIOS, QUARTUS & STRATIX are Reg. U.S. Pat. & Tm. Off.
and Altera marks in and outside the U.S.
Processor - FPGA Interfaces                                                                                             = master
                                                                                                                        = slave

                  Processor                                        FPGA
                                                                                                     Avalon
                                                                                                   Switch Fabric

                                                                                                                   IP


                                          Industry




                                                                                       Interface
                                         Standard                          PCIe
                    CPU




                                   PCIe
                                                                           Hard                                    IP
                                    I/F     High                            IP
                                        Performance


                                                                                                                   IP
                                                                                                   Automatically
                                                                                                    Generated

© 2010 Altera Corporation—Public
ALTERA, ARRIA, CYCLONE, HARDCOPY, MAX, MEGACORE, NIOS, QUARTUS & STRATIX are Reg. U.S. Pat. & Tm. Off.
and Altera marks in and outside the U.S.
Co-processing Solution Example

               USB
                                     PCIe
                                   I/O Hub          Processor                           DSP
           Graphics                                (Intel Atom)                       (Optional)

           Hard Disk
                                                     PCIe                                RapidIO
                 DVI

                                                                                                           Isolation
                                                                                                           and RJ-45
                                                                                              Industrial
              Motor Control                                                                    Ethernet
              Power Stage                                                                                  Isolation
                                               PWM                                                         and RJ-45




                      Sensor                          Camera                          ADC/DAC              OPTO I/O


© 2010 Altera Corporation—Public
ALTERA, ARRIA, CYCLONE, HARDCOPY, MAX, MEGACORE, NIOS, QUARTUS & STRATIX are Reg. U.S. Pat. & Tm. Off.
and Altera marks in and outside the U.S.
Nios II Embedded Evaluation Kit,
Cyclone III Edition
      Embedded software evaluation platform
      Development board based on
      Cyclone III FPGA with touch-screen LCD
      Software applications and tutorials
           −     Web server
           −     Picture viewer
           −     Graphics acceleration
           −     and more
      Development software: Nios II EDS,
      SOPC Builder, Quartus II Web Edition
      Low Cost: $449


© 2010 Altera Corporation—Public
ALTERA, ARRIA, CYCLONE, HARDCOPY, MAX, MEGACORE, NIOS, QUARTUS & STRATIX are Reg. U.S. Pat. & Tm. Off.
and Altera marks in and outside the U.S.
NEW Altera Embedded Systems Development Kit,
Cyclone III Edition




      Complete platform for proto-typing embedded systems (3C120)
      List price: $1995
      IP Licensing purchased separately
      Embedded IP Suite (IPS-EMBEDDED) $995
         −    Nios® II processor, DDR/DDR2 Memory controllers, Triple Speed Ethernet and software stack
© 2010 Altera Corporation—Public
ALTERA, ARRIA, CYCLONE, HARDCOPY, MAX, MEGACORE, NIOS, QUARTUS & STRATIX are Reg. U.S. Pat. & Tm. Off.
and Altera marks in and outside the U.S.

Nios II Embedded Processor: Embedded World 2010

  • 1.
    The Nios IIProcessor Learning Zone @ Embedded World 2010 © 2010 Altera Corporation—Public
  • 2.
    Nios II Versions 32-bit RISC Nios II Processor comes in three ISA compatible versions: − FAST: Optimized for Speed − STANDARD: Balanced for Speed & Size − ECONOMY: Optimized for Size Software code is binary compatible across all versions - No software changes required © 2010 Altera Corporation—Public ALTERA, ARRIA, CYCLONE, HARDCOPY, MAX, MEGACORE, NIOS, QUARTUS & STRATIX are Reg. U.S. Pat. & Tm. Off. and Altera marks in and outside the U.S.
  • 3.
    Nios II ProcessorFeatures Configurable: − Core features – caches, interrupts, custom instructions, etc. − User Defined Peripheral Set Automated processor configuration and system integration Powerful software tools − Eclipse IDE, C/C++ Development Tools, Trace Debug, Flash Programmer, etc. Third party support for RTOS, middleware and debug tools © 2010 Altera Corporation—Public ALTERA, ARRIA, CYCLONE, HARDCOPY, MAX, MEGACORE, NIOS, QUARTUS & STRATIX are Reg. U.S. Pat. & Tm. Off. and Altera marks in and outside the U.S.
  • 4.
    Nios II ProcessorConfiguration Nios II Processor Core reset Instruction General Master Instruction and Program Instruction and clock Purpose Port Data Trace Controller Data Trace Registers Instruction JTAG interface Hardware- & Cache to Software Assisted Address Debugger Debug Module Generation Status & Control Registers Tightly Tightly High Speed Trace Trace Coupled Coupled Connection Trace port Trace port I-Memory Memory Memory I-Memory to Trace Pod Breakpoints Breakpoints Exception Tightly Tightly HW Controller MMU HW Coupled Coupled D-Memory D-Memory Interrupt MPU irq[31..0] Controller Data Master Port Data Custom Cache Custom Instruction Arithmetic I/O Signals Logic Logic Unit © 2010 Altera Corporation—Public = Configurable = Optional & Configurable ALTERA, ARRIA, CYCLONE, HARDCOPY, MAX, MEGACORE, NIOS, QUARTUS & STRATIX are Reg. U.S. Pat. & Tm. Off. and Altera marks in and outside the U.S. = Fixed = Debug Options
  • 5.
    Nios II ProcessorBenchmark Data Cyclone® III / IV FPGAs Stratix® IV FPGAs Clock Clock Speed DMIPS LEs Speed DMIPS ALUTs (MHz) (MHz) Nios II /f 175 195 1,800 290 340 1,020 Nios II /s 145 90 1,300 250 150 850 Nios II /e 215 30 650 340 48 520 Note: Cyclone devices range from 5K LEs to >100KLEs © 2010 Altera Corporation—Public ALTERA, ARRIA, CYCLONE, HARDCOPY, MAX, MEGACORE, NIOS, QUARTUS & STRATIX are Reg. U.S. Pat. & Tm. Off. and Altera marks in and outside the U.S.
  • 6.
    3 Ways toIncrease Performance Custom Hardware Multi-Processor Instructions Accelerators System FPGA FPGA FPGA Nios II Nios Nios II Nios Nios II Nios External External Nios II PCIe Nios PCIe Custom Custom Hardware Hardware CPU or CPU or Instructions Instructions Accelerator Accelerator DSP DSP Nios II Nios Accelerate CPU Add external Add more processing co-processing processors performance with hardware to (internal &/or application- accelerate data external) to increase specific hardware functions processing power © 2010 Altera Corporation—Public ALTERA, ARRIA, CYCLONE, HARDCOPY, MAX, MEGACORE, NIOS, QUARTUS & STRATIX are Reg. U.S. Pat. & Tm. Off. and Altera marks in and outside the U.S.
  • 7.
    Accelerating Software inFPGA Custom Add Custom instruction: CUST A,B,C Logic − Ideal for complex bit/word operations A + - Add hardware accelerator << C - Out >> − Processor & accelerator can run concurrently B & − More work per clock − Lower fMAX, power, cost Nios II Embedded Processor − Ideal for block operations Control 2,500 Nios II Iterations/Second DMA DMA Custom Accelerator Instruction 2,000 1,500 530 Times 27 Times Faster 1,000 Faster Arbiter Arbiter 500 0 Software Custom Accelerator Program Data Data Memory Memory Memory Only Instruction © 2010 Altera Corporation—Public * Accelerator running 64Kb CRC at 100 MHz ALTERA, ARRIA, CYCLONE, HARDCOPY, MAX, MEGACORE, NIOS, QUARTUS & STRATIX are Reg. U.S. Pat. & Tm. Off. and Altera marks in and outside the U.S.
  • 8.
    Altera C2H –the SW Accelerator Solution Generates and integrates a custom hardware accelerator from an ANSI C function. C2H C2H CPU Accelerator Accelerator Arbiter Arbiter Arbiter Arbiter Program Data Data Memory Memory Memory © 2010 Altera Corporation—Public ALTERA, ARRIA, CYCLONE, HARDCOPY, MAX, MEGACORE, NIOS, QUARTUS & STRATIX are Reg. U.S. Pat. & Tm. Off. and Altera marks in and outside the U.S.
  • 9.
    Hardware Development Flow Hardware HW Simulation Configure & Integrate Hardware Configuration FPGA © 2010 Altera Corporation—Public ALTERA, ARRIA, CYCLONE, HARDCOPY, MAX, MEGACORE, NIOS, QUARTUS & STRATIX are Reg. U.S. Pat. & Tm. Off. and Altera marks in and outside the U.S.
  • 10.
    Creating Systems WithSOPC Builder © 2010 Altera Corporation—Public ALTERA, ARRIA, CYCLONE, HARDCOPY, MAX, MEGACORE, NIOS, QUARTUS & STRATIX are Reg. U.S. Pat. & Tm. Off. and Altera marks in and outside the U.S.
  • 11.
    SOPC Builder IPCores Over 50 IP cores and components available Interface protocols − Ethernet, RapidIO®, PCI, SPI, UART, USB, etc. Processors − Nios II, Cortex M1, Coldfire V1, etc. Memories and memory controllers − DMA, flash controllers, SDRAM controllers Peripherals − Display, microcontroller peripherals, etc. Video and imaging processing − Alpha blender mixer, Deinterlacer, etc. Plus many more © 2010 Altera Corporation—Public ALTERA, ARRIA, CYCLONE, HARDCOPY, MAX, MEGACORE, NIOS, QUARTUS & STRATIX are Reg. U.S. Pat. & Tm. Off. and Altera marks in and outside the U.S.
  • 12.
    Embedded Development Flow Hardware Configure & Integrate Hardware System .ptf Configuration Information .sopc Software FPGA Compile & Debug © 2010 Altera Corporation—Public ALTERA, ARRIA, CYCLONE, HARDCOPY, MAX, MEGACORE, NIOS, QUARTUS & STRATIX are Reg. U.S. Pat. & Tm. Off. and Altera marks in and outside the U.S.
  • 13.
    Nios II EmbeddedDesign Suite Integrated Software Nios II Software Development Build Tools Manage, Build, Debug Embedded Design Suite HAL API Peripheral Drivers GNU Tools and Runtime Debugger, Software Library © 2010 Altera Corporation—Public C/C++Compiler ALTERA, ARRIA, CYCLONE, HARDCOPY, MAX, MEGACORE, NIOS, QUARTUS & STRATIX are Reg. U.S. Pat. & Tm. Off. and Altera marks in and outside the U.S.
  • 14.
    Nios II OperatingSystem / Middleware Support LINUX embOS µCLinux ERIKA & RT-Druid Open Source Open Source www.niosforum.org www.niosforum.org © 2010 Altera Corporation—Public ALTERA, ARRIA, CYCLONE, HARDCOPY, MAX, MEGACORE, NIOS, QUARTUS & STRATIX are Reg. U.S. Pat. & Tm. Off. and Altera marks in and outside the U.S.
  • 15.
    Partner Software DevelopmentTools Optimizing C Compiler © 2010 Altera Corporation—Public ALTERA, ARRIA, CYCLONE, HARDCOPY, MAX, MEGACORE, NIOS, QUARTUS & STRATIX are Reg. U.S. Pat. & Tm. Off. and Altera marks in and outside the U.S.
  • 16.
    Other Processor Options ARM Cortex-M1 Freescale ColdFire V1 Evatronix X86 Octera PPC 405 Leon 3 Many legacy cores – 8051, 6502, etc © 2010 Altera Corporation—Public ALTERA, ARRIA, CYCLONE, HARDCOPY, MAX, MEGACORE, NIOS, QUARTUS & STRATIX are Reg. U.S. Pat. & Tm. Off. and Altera marks in and outside the U.S.
  • 17.
    Why your nextembedded project might use a Nios II processor… If standard microcontrollers I/O I/O I/O or processors don’t offer enough… FPGA − Functionality CUSTOM LOGIC − System Integration Nios II DSP I/O − Power/performance ratio − Product flexibility − Obsolescence protection …then the Nios II processor is for you! Innovate with Nios II & FPGA! © 2010 Altera Corporation—Public ALTERA, ARRIA, CYCLONE, HARDCOPY, MAX, MEGACORE, NIOS, QUARTUS & STRATIX are Reg. U.S. Pat. & Tm. Off. and Altera marks in and outside the U.S.
  • 18.
    Thank You www.altera.com © 2010 Altera Corporation—Public
  • 19.
    Back-up © 2010 AlteraCorporation—Public
  • 20.
    First Step inSystem Design © 2010 Altera Corporation—Public ALTERA, ARRIA, CYCLONE, HARDCOPY, MAX, MEGACORE, NIOS, QUARTUS & STRATIX are Reg. U.S. Pat. & Tm. Off. and Altera marks in and outside the U.S.
  • 21.
    What is SOPCBuilder? IP delivery and system generation tool: − GUI based − IP configuration − System configuration − Automated IP integration © 2010 Altera Corporation—Public ALTERA, ARRIA, CYCLONE, HARDCOPY, MAX, MEGACORE, NIOS, QUARTUS & STRATIX are Reg. U.S. Pat. & Tm. Off. and Altera marks in and outside the U.S.
  • 22.
    Traditional System Design Processor Ethernet (Bus Master) Interrupt (Bus Master) 32-Bit Controller 32-Bit Address Address Address High Data Data Decoder High Arbiter Engineering Engineering Overhead! Overhead! Width-Match Width-Match Width-Match Width-Match Width-Match UART Memory Timer PCI DDR2 8-Bit 32-Bit 16-Bit 64-Bit 64-Bit Clock 1 Clock 2 Clock 1 © 2010 Altera Corporation—Public ALTERA, ARRIA, CYCLONE, HARDCOPY, MAX, MEGACORE, NIOS, QUARTUS & STRATIX are Reg. U.S. Pat. & Tm. Off. and Altera marks in and outside the U.S.
  • 23.
    SOPC Builder Integration Processor Ethernet (Bus Master) (Bus Master) 32-Bit 32-Bit Integration is Integration is Fast, Easy and Fast, Easy and Error Free! Error Free! Automatically Generated System Interconnect Fabric Address Address Interrupt Interrupt Burst Burst Wait-state Wait-state Multi-clock Multi-clock Decoder Decoder Controller Controller Transfers Transfers Generation Generation Domain Domain Arbiter Arbiter Arbiter Arbiter Arbiter Arbiter Arbiter Arbiter Arbiter Arbiter Width-Match Width-Match Width-Match Width-Match Width-Match Width-Match Width-Match Width-Match Width-Match Width-Match UART Memory Timer PCI DDR2 8-Bit 32-Bit 16-Bit 64-Bit 64-Bit Clock 1 Clock 2 Clock 1 © 2010 Altera Corporation—Public ALTERA, ARRIA, CYCLONE, HARDCOPY, MAX, MEGACORE, NIOS, QUARTUS & STRATIX are Reg. U.S. Pat. & Tm. Off. and Altera marks in and outside the U.S.
  • 24.
    SOPC Builder © 2010Altera Corporation—Public ALTERA, ARRIA, CYCLONE, HARDCOPY, MAX, MEGACORE, NIOS, QUARTUS & STRATIX are Reg. U.S. Pat. & Tm. Off. and Altera marks in and outside the U.S.
  • 25.
    Component Selection Pool of “SOPC Builder Ready” Pool of “SOPC Builder Ready” Components Components −− Communications Communications −− DSP DSP −− Bus Interfaces Bus Interfaces −− Bridges Bridges −− Memory Controllers Memory Controllers Nios & Nios II®®Processors Nios & Nios II Processors Over 60 Third Party IP Support Third Party IP Support Cores Available Today © 2010 Altera Corporation—Public ALTERA, ARRIA, CYCLONE, HARDCOPY, MAX, MEGACORE, NIOS, QUARTUS & STRATIX are Reg. U.S. Pat. & Tm. Off. and Altera marks in and outside the U.S.
  • 26.
    Component Configuration Select Component from Select Component from SOPC library SOPC library Wizard based configuration Wizard based configuration for individual component for individual component properties properties Component added to list of Component added to list of active components active components Add, remove or modify Add, remove or modify component properties at component properties at any time any time © 2010 Altera Corporation—Public ALTERA, ARRIA, CYCLONE, HARDCOPY, MAX, MEGACORE, NIOS, QUARTUS & STRATIX are Reg. U.S. Pat. & Tm. Off. and Altera marks in and outside the U.S.
  • 27.
    SOPC Builder NiosII Processor Options Select best fit processor core Configure caches Configure debug option Integrate custom instructions Edit and Regenerate at Any Time! © 2010 Altera Corporation—Public ALTERA, ARRIA, CYCLONE, HARDCOPY, MAX, MEGACORE, NIOS, QUARTUS & STRATIX are Reg. U.S. Pat. & Tm. Off. and Altera marks in and outside the U.S.
  • 28.
    System Configuration Connection Patch Panel Connection Patch Panel −− One click to connect One click to connect component component Each master can connect Each master can connect to one or many slaves to one or many slaves Configure connections to Configure connections to optimize throughput optimize throughput Set Arbitration priorities Set Arbitration priorities © 2010 Altera Corporation—Public ALTERA, ARRIA, CYCLONE, HARDCOPY, MAX, MEGACORE, NIOS, QUARTUS & STRATIX are Reg. U.S. Pat. & Tm. Off. and Altera marks in and outside the U.S.
  • 29.
    System Component Configuration Configure how each Component Configure how each Component fits into the System fits into the System −− Interrupt Request (IRQ) Level Interrupt Request (IRQ) Level −− Base Address Base Address −− Clock Source Clock Source Auto-assign option Auto-assign option Error checking Error checking Edit values at any time Edit values at any time Lock critical settings Lock critical settings Click on ‘Generate’ button Click on ‘Generate’ button to create system © 2010 Altera Corporation—Public to create system ALTERA, ARRIA, CYCLONE, HARDCOPY, MAX, MEGACORE, NIOS, QUARTUS & STRATIX are Reg. U.S. Pat. & Tm. Off. and Altera marks in and outside the U.S.
  • 30.
    Developing Software forthe Nios II Processor © 2010 Altera Corporation—Public
  • 31.
    Nios II IDEDebug Perspective Re-start Debugger Re-Run Program Basic Debug • Run Controls • Stack View • Active Debug Sessions Double-click to add breakpoints Memory View • Variables • Registers • Signals © 2010 Altera Corporation—Public ALTERA, ARRIA, CYCLONE, HARDCOPY, MAX, MEGACORE, NIOS, QUARTUS & STRATIX are Reg. U.S. Pat. & Tm. Off. and Altera marks in and outside the U.S.
  • 32.
    Processor - FPGAInterfaces = master = slave Processor FPGA or DSP Avalon GPIO, Switch Fabric RS232, I/O etc. I/F IP IP CPU / DSP CPU Co-Proc Specific IP IP I/F SRAM SDRAM etc. Memory IP IP Automatically Generated © 2010 Altera Corporation—Public ALTERA, ARRIA, CYCLONE, HARDCOPY, MAX, MEGACORE, NIOS, QUARTUS & STRATIX are Reg. U.S. Pat. & Tm. Off. and Altera marks in and outside the U.S.
  • 33.
    Processor - FPGAInterfaces = master = slave Processor FPGA or DSP Avalon Switch Fabric IP CPU / DSP Industry Interface Standard PCIe PCI e Hard IP I/F High IP Performance IP Automatically Generated © 2010 Altera Corporation—Public ALTERA, ARRIA, CYCLONE, HARDCOPY, MAX, MEGACORE, NIOS, QUARTUS & STRATIX are Reg. U.S. Pat. & Tm. Off. and Altera marks in and outside the U.S.
  • 34.
    Processor - FPGAInterfaces = master = slave Processor FPGA Avalon Switch Fabric IP Industry Interface Standard PCIe CPU PCIe Hard IP I/F High IP Performance IP Automatically Generated © 2010 Altera Corporation—Public ALTERA, ARRIA, CYCLONE, HARDCOPY, MAX, MEGACORE, NIOS, QUARTUS & STRATIX are Reg. U.S. Pat. & Tm. Off. and Altera marks in and outside the U.S.
  • 35.
    Co-processing Solution Example USB PCIe I/O Hub Processor DSP Graphics (Intel Atom) (Optional) Hard Disk PCIe RapidIO DVI Isolation and RJ-45 Industrial Motor Control Ethernet Power Stage Isolation PWM and RJ-45 Sensor Camera ADC/DAC OPTO I/O © 2010 Altera Corporation—Public ALTERA, ARRIA, CYCLONE, HARDCOPY, MAX, MEGACORE, NIOS, QUARTUS & STRATIX are Reg. U.S. Pat. & Tm. Off. and Altera marks in and outside the U.S.
  • 36.
    Nios II EmbeddedEvaluation Kit, Cyclone III Edition Embedded software evaluation platform Development board based on Cyclone III FPGA with touch-screen LCD Software applications and tutorials − Web server − Picture viewer − Graphics acceleration − and more Development software: Nios II EDS, SOPC Builder, Quartus II Web Edition Low Cost: $449 © 2010 Altera Corporation—Public ALTERA, ARRIA, CYCLONE, HARDCOPY, MAX, MEGACORE, NIOS, QUARTUS & STRATIX are Reg. U.S. Pat. & Tm. Off. and Altera marks in and outside the U.S.
  • 37.
    NEW Altera EmbeddedSystems Development Kit, Cyclone III Edition Complete platform for proto-typing embedded systems (3C120) List price: $1995 IP Licensing purchased separately Embedded IP Suite (IPS-EMBEDDED) $995 − Nios® II processor, DDR/DDR2 Memory controllers, Triple Speed Ethernet and software stack © 2010 Altera Corporation—Public ALTERA, ARRIA, CYCLONE, HARDCOPY, MAX, MEGACORE, NIOS, QUARTUS & STRATIX are Reg. U.S. Pat. & Tm. Off. and Altera marks in and outside the U.S.