SlideShare a Scribd company logo
1 of 24
Download to read offline
OpenSPARC on FPGAs

Durgam.Vahia@Sun.Com

OpenSPARC Engineering & Partnership Development
Sun Microsystems, Inc.


DV Club – July 2009
  www.OpenSPARC.net                               1
64 bits, 64 threads, and free


OpenSPARC
                                          OpenSPARC.net
                                   Open source variants of Sun’s
                                    CMT microprocessors
                                     UltraSPARC T1
                                     UltraSPARC T2
                                   Governed by GPL version2
                                      Widely used in Linux distribution

                                   US export compliant for world-
                                    wide distribution




www.OpenSPARC.net   DV Club – Silicon Valley                               2
64 bits, 64 threads, and free


Agenda
  Chip Multi-threading
  OpenSPARC
  Motivation for the FPGA port
  Implementation
  Results
  Resources
  Q & A




 www.OpenSPARC.net   DV Club – Silicon Valley                             3
64 bits, 64 threads, and free


Chip Multi-threading (CMT)




 www.OpenSPARC.net   DV Club – Silicon Valley                             4
64 bits, 64 threads, and free


UltraSPARC T1
                              SPARC V9 ISA, 64-bit
                              Eight cores, four threads
                               each
                              Single issue 6-stage pipe
                              High BW 12-way
                               associative 3 MB on-chip
                               L2 cache
                              4 DDR2 channels
                              Shared on-chip FPU
                              Chip IO through JBUS


 www.OpenSPARC.net   DV Club – Silicon Valley                             5
64 bits, 64 threads, and free


SPARC Core Pipeline



                                                                  Interface to
                                                                  the core




 www.OpenSPARC.net   DV Club – Silicon Valley                             6
64 bits, 64 threads, and free


UltraSPARC T2
     FB DIMM     FB DIMM      FB DIMM     FB DIMM                Eight cores, eight threads
                                                                  each
     FB DIMM     FB DIMM      FB DIMM     FB DIMM
                                                                 8-stage single issue pipe
         MCU      MCU           MCU        MCU                   One FPU per core
    L2$ L2$ L2$ L2$ L2$ L2$ L2$ L2$                              16-way associative 4 MB
                   Full Cross Bar                                 on-chip L2 cache
    C0     C1 C2        C3 C4       C5    C6     C7
                                                                 Four dual channel
    FPU    FPU   FPU    FPU   FPU   FPU   FPU    FPU              FBDIMM
                                                                 Two 10G Ethernet
       NIU              Sys I/F
                                            PCI-Ex               PCIe and Crypto
     (E-net+)     Buffer Switch Core
                                                                  excluded
                Power 60 – 123W
 2x 10GE Ethernet               x8 @2.5GHz
 www.OpenSPARC.net                                     DV Club – Silicon Valley                             7
64 bits, 64 threads, and free


OpenSPARC Bundles
  Hardware
      −   HDL design files written in Verilog
      −   Verification test-bench, diagnostics, scripts
      −   Synthesis scripts for ASIC and FPGA
      −   Lots of documents
  Software
      −   SPARC Architecture Model (SAM) source
      −   Full-system simulator (Legion) source
      −   Hypervisor, Open Boot PROM (OBP) source
      −   Solaris10 disk image
      −   Scripts to build all the components
 www.OpenSPARC.net            DV Club – Silicon Valley                             8
64 bits, 64 threads, and free


Source browser at www.opensparc.net




 www.OpenSPARC.net   DV Club – Silicon Valley                             9
64 bits, 64 threads, and free


                           OpenSPARC Ecosystem

Area                Community                  Universities                Partners


                OpenSPARC.net
                                           Center of Excellence       FPGA implementation
                Contests
                                           Collaborations             ASIC implementation
                Blogs
Tool Kit        Conferences
                                           Curriculum                 EDA
                                           Research                   SoC implementation
                Tutorials
                                           Tutorials                  Foundry relationship
               Operating System Port




               Evangelize OpenSPARC       Research publications     Chip spins
Focus          Encourage contributions    Textbooks                 Coprocessors
               Build knowledgebase        Shared coursework         CMT EDA tools




                             Encourage community innovation
   www.OpenSPARC.net                      DV Club – Silicon Valley                             10
64 bits, 64 threads, and free


OpenSPARC momentum



           Innovation
             will happen everywhere


         More than 11,000 downloads
 Includes academic and commercial interests
 www.OpenSPARC.net    DV Club – Silicon Valley                             11
64 bits, 64 threads, and free


Agenda
  Chip Multi-threading
  OpenSPARC
  Motivation for the FPGA port
  Implementation
  Results
  Resources
  Q & A




 www.OpenSPARC.net   DV Club – Silicon Valley                             12
64 bits, 64 threads, and free


Why FPGAs?
  
      Community requested it
      −   As a platform for experimentation
      −   Gentler introduction to server class processor design
      −   Basic building block for more interesting/complex
          designs
  
      Need off-the-shelf FPGA board that is
      −   Large enough for “good-sized” design points
      −   At the “right” price point
      −   Available world-wide




 www.OpenSPARC.net           DV Club – Silicon Valley                             13
64 bits, 64 threads, and free


OpenSPARC/Xilinx FPGA Evaluation Kit




        Available from http://www.digilentinc.com/v5osdk
 www.OpenSPARC.net               DV Club – Silicon Valley                             14
64 bits, 64 threads, and free


FPGA implementation – Key objectives
  
      Proliferation of OpenSPARC & Xilinx
      FPGA Technology
      −   Make OpenSPARC FPGA-Friendly
      −   Create reference design with complete system
          functionality
      −   Boot Solaris and Linux
      −   Open it up ..
      −   Seed ideas in the community




 www.OpenSPARC.net         DV Club – Silicon Valley                             15
64 bits, 64 threads, and free


Processor core changes
  
      Primarily to reduce the area foot-print of
      the multi-threaded SPARC core
        
            Recode custom SRAM cells for better resource utilization
        
            Parameterizable single- and multi-thread options
        
            Removal of all the asynchronous logic – no clock gating
        
            Simplified reset
        
            Only flops, no latches
        
            Reduce multi-port SRAM arrays
        
            Removable logic – Crypto accelerator, Floating-point


                 Overall 50% reduction in area


 www.OpenSPARC.net              DV Club – Silicon Valley                             16
64 bits, 64 threads, and free


OpenSPARC FPGA System
                                                                    Xilinx Embedded
                                                                    Developer’s
 FPGA Boundary
                                           External DDR2 Dimm       (EDK) Design


                                           MCH-OPB MemCon


                     CCX-FSL     Microblaze Proc            Microblaze Debug UART
 SPARC T1 Core       Interface
                                                            SPARC T1 UART

                                                            10/100 Ethernet




 www.OpenSPARC.net               DV Club – Silicon Valley                             17
64 bits, 64 threads, and free


Software Stack
 • Out-of-the-box
   operating system
   installation
 • Boots from a virtual
   disk in RAM which                                  Solaris/Linux
   holds the Solaris                             Open Boot PROM
                                                      (OBP)
   binaries                         Reset          Hypervisor
                                    Code
 • Able to boot either
   Linux or OpenSolaris
 • Entire software stack
   is open source
 www.OpenSPARC.net    DV Club – Silicon Valley                             18
64 bits, 64 threads, and free


Results – Capacity Utilization
 • Using Xilinx XC5VLX110T device
 • Synthesis results (no SPU, 16 TLB entries)
    1-thread core: 31475 LUT (45%), 115
       BRAM (78%)
    4-thread core: 51558 LUT (74%), 115
       BRAM (78%)
         (synthesized with Synplicity Synplify Pro)
 • Complete system:
    SPARC core, MicroBlaze, 2 UARTs,
       Ethernet, and DDR2 controller:
    1-thread core: 38271 LUT (55%), 128
  www.OpenSPARC.net     DV Club – Silicon Valley   19
64 bits, 64 threads, and free


Results – Community building
• 50+MHz OpenSPARC FPGA system
   – Platform for experimentation for HW developers
   – Building blocks to design truly multi-core, multi-thread
     processors
   – Based on open-source technology
   – Costs ~$700 for academics ($2,000 for others)
   – Higher-end boards available for larger design points
• Used in 200+ Universities world-wide
   – Architectural exploration, fault tolerance, reconfigurable
     computing, low power architectures

         Free download, visit http://www.opensparc.net
 www.OpenSPARC.net          DV Club – Silicon Valley                             20
64 bits, 64 threads, and free

Results - Partner




   http://www.beecube.com



  www.OpenSPARC.net     DV Club – Silicon Valley                             21
64 bits, 64 threads, and free


Key Learnings
• FPGA capacity and performance are
  increasing each successive generation,
  however
   – Optimal use of these resources is a big challenge
• FPGA design/coding is significantly different
  from ASIC style
   – E.g. pipeline bypass, latches, clock gating creates both
     functional and P&R issues
   – For prototyping, create special FPGA models
• FPGA tools are full of quirks
   – Invest in verification at each level – RTL, gate, layout,
     system

 www.OpenSPARC.net          DV Club – Silicon Valley                             22
64 bits, 64 threads, and free


Web pointers
  Program
      − http://www.opensparc.net
  Publications
      − http://www.opensparc.net/publications/
  Downloads
      − http://www.opensparc.net/opensparc-t1/downloads.html
      − http://www.opensparc.net/opensparc-t2/downloads.html
   Participation (Forums)
      − http://forums.sun.com/category.jspa?categoryID=120
   FPGA development boards
      − http://www.digilentinc.com/v5osdk
 www.OpenSPARC.net          DV Club – Silicon Valley                             23
OpenSPARC on FPGAs
Durgam.Vahia@Sun.Com

OpenSPARC Engineering & Partnership Development
Sun Microsystems, Inc.

www.OpenSPARC.net

  www.OpenSPARC.net                               24

More Related Content

What's hot

DPDK: Multi Architecture High Performance Packet Processing
DPDK: Multi Architecture High Performance Packet ProcessingDPDK: Multi Architecture High Performance Packet Processing
DPDK: Multi Architecture High Performance Packet ProcessingMichelle Holley
 
GENI - Seminário - Inatel
GENI - Seminário - InatelGENI - Seminário - Inatel
GENI - Seminário - InatelLúcio Henrique
 
2012 Fall OpenStack Bare-metal Speaker Session
2012 Fall OpenStack Bare-metal Speaker Session2012 Fall OpenStack Bare-metal Speaker Session
2012 Fall OpenStack Bare-metal Speaker SessionMikyung Kang
 
Using VPP and SRIO-V with Clear Containers
Using VPP and SRIO-V with Clear ContainersUsing VPP and SRIO-V with Clear Containers
Using VPP and SRIO-V with Clear ContainersMichelle Holley
 
Performance Analysis: C vs CUDA
Performance Analysis: C vs CUDAPerformance Analysis: C vs CUDA
Performance Analysis: C vs CUDAVitor Pamplona
 
Simulation Directed Co-Design from Smartphones to Supercomputers
Simulation Directed Co-Design from Smartphones to SupercomputersSimulation Directed Co-Design from Smartphones to Supercomputers
Simulation Directed Co-Design from Smartphones to SupercomputersEric Van Hensbergen
 
Continuum PCAP
Continuum PCAP Continuum PCAP
Continuum PCAP rwachsman
 
ELCE 2011 - BZ - Embedded Linux Optimization Techniques - How Not To Be Slow
ELCE 2011 - BZ - Embedded Linux Optimization Techniques - How Not To Be SlowELCE 2011 - BZ - Embedded Linux Optimization Techniques - How Not To Be Slow
ELCE 2011 - BZ - Embedded Linux Optimization Techniques - How Not To Be SlowBenjamin Zores
 
DFX Architecture for High-performance Multi-core Microprocessors
DFX Architecture for High-performance Multi-core MicroprocessorsDFX Architecture for High-performance Multi-core Microprocessors
DFX Architecture for High-performance Multi-core MicroprocessorsIshwar Parulkar
 
Devconf2017 - Can VMs networking benefit from DPDK
Devconf2017 - Can VMs networking benefit from DPDKDevconf2017 - Can VMs networking benefit from DPDK
Devconf2017 - Can VMs networking benefit from DPDKMaxime Coquelin
 
XT Best Practices
XT Best PracticesXT Best Practices
XT Best PracticesJeff Larkin
 
An FPGA-based Scalable Simulation Accelerator for Tile Architectures @HEART2011
An FPGA-based Scalable Simulation Accelerator for Tile Architectures @HEART2011An FPGA-based Scalable Simulation Accelerator for Tile Architectures @HEART2011
An FPGA-based Scalable Simulation Accelerator for Tile Architectures @HEART2011Shinya Takamaeda-Y
 
How To Train Your Calxeda EnergyCore
How To Train Your  Calxeda EnergyCoreHow To Train Your  Calxeda EnergyCore
How To Train Your Calxeda EnergyCoreNaoto MATSUMOTO
 
In-Network Acceleration with FPGA (MEMO)
In-Network Acceleration with FPGA (MEMO)In-Network Acceleration with FPGA (MEMO)
In-Network Acceleration with FPGA (MEMO)Naoto MATSUMOTO
 
Computer relative short from....
Computer relative short from....Computer relative short from....
Computer relative short from....Nimai Chand Das
 

What's hot (20)

DPDK: Multi Architecture High Performance Packet Processing
DPDK: Multi Architecture High Performance Packet ProcessingDPDK: Multi Architecture High Performance Packet Processing
DPDK: Multi Architecture High Performance Packet Processing
 
GENI - Seminário - Inatel
GENI - Seminário - InatelGENI - Seminário - Inatel
GENI - Seminário - Inatel
 
ARM and SoC Traning Part I -- Overview
ARM and SoC Traning Part I -- OverviewARM and SoC Traning Part I -- Overview
ARM and SoC Traning Part I -- Overview
 
2012 Fall OpenStack Bare-metal Speaker Session
2012 Fall OpenStack Bare-metal Speaker Session2012 Fall OpenStack Bare-metal Speaker Session
2012 Fall OpenStack Bare-metal Speaker Session
 
Using VPP and SRIO-V with Clear Containers
Using VPP and SRIO-V with Clear ContainersUsing VPP and SRIO-V with Clear Containers
Using VPP and SRIO-V with Clear Containers
 
Nvidia at SEMICon, Munich
Nvidia at SEMICon, MunichNvidia at SEMICon, Munich
Nvidia at SEMICon, Munich
 
Seven deadly
Seven deadly Seven deadly
Seven deadly
 
Performance Analysis: C vs CUDA
Performance Analysis: C vs CUDAPerformance Analysis: C vs CUDA
Performance Analysis: C vs CUDA
 
Simulation Directed Co-Design from Smartphones to Supercomputers
Simulation Directed Co-Design from Smartphones to SupercomputersSimulation Directed Co-Design from Smartphones to Supercomputers
Simulation Directed Co-Design from Smartphones to Supercomputers
 
Continuum PCAP
Continuum PCAP Continuum PCAP
Continuum PCAP
 
ELCE 2011 - BZ - Embedded Linux Optimization Techniques - How Not To Be Slow
ELCE 2011 - BZ - Embedded Linux Optimization Techniques - How Not To Be SlowELCE 2011 - BZ - Embedded Linux Optimization Techniques - How Not To Be Slow
ELCE 2011 - BZ - Embedded Linux Optimization Techniques - How Not To Be Slow
 
DFX Architecture for High-performance Multi-core Microprocessors
DFX Architecture for High-performance Multi-core MicroprocessorsDFX Architecture for High-performance Multi-core Microprocessors
DFX Architecture for High-performance Multi-core Microprocessors
 
Devconf2017 - Can VMs networking benefit from DPDK
Devconf2017 - Can VMs networking benefit from DPDKDevconf2017 - Can VMs networking benefit from DPDK
Devconf2017 - Can VMs networking benefit from DPDK
 
XT Best Practices
XT Best PracticesXT Best Practices
XT Best Practices
 
An FPGA-based Scalable Simulation Accelerator for Tile Architectures @HEART2011
An FPGA-based Scalable Simulation Accelerator for Tile Architectures @HEART2011An FPGA-based Scalable Simulation Accelerator for Tile Architectures @HEART2011
An FPGA-based Scalable Simulation Accelerator for Tile Architectures @HEART2011
 
Nvidia Cuda Apps Jun27 11
Nvidia Cuda Apps Jun27 11Nvidia Cuda Apps Jun27 11
Nvidia Cuda Apps Jun27 11
 
How To Train Your Calxeda EnergyCore
How To Train Your  Calxeda EnergyCoreHow To Train Your  Calxeda EnergyCore
How To Train Your Calxeda EnergyCore
 
In-Network Acceleration with FPGA (MEMO)
In-Network Acceleration with FPGA (MEMO)In-Network Acceleration with FPGA (MEMO)
In-Network Acceleration with FPGA (MEMO)
 
Computer relative short from....
Computer relative short from....Computer relative short from....
Computer relative short from....
 
Cisco-6500-v1.0-R
Cisco-6500-v1.0-RCisco-6500-v1.0-R
Cisco-6500-v1.0-R
 

Viewers also liked

Topc open-platform-public
Topc open-platform-publicTopc open-platform-public
Topc open-platform-publicKenson Chou
 
End to End Open Source Telecom
End to End Open Source TelecomEnd to End Open Source Telecom
End to End Open Source TelecomAshish Banerjee
 
Implementing Lightweight Networking
Implementing Lightweight NetworkingImplementing Lightweight Networking
Implementing Lightweight Networkingguest6972eaf
 
Open cores (software libre – hardware libre) javier condori flores
Open cores (software libre – hardware libre)   javier condori floresOpen cores (software libre – hardware libre)   javier condori flores
Open cores (software libre – hardware libre) javier condori floresJavier Condori Flores
 
Android OS Porting: Introduction
Android OS Porting: IntroductionAndroid OS Porting: Introduction
Android OS Porting: IntroductionJollen Chen
 

Viewers also liked (8)

OpenSPARC
OpenSPARCOpenSPARC
OpenSPARC
 
Topc open-platform-public
Topc open-platform-publicTopc open-platform-public
Topc open-platform-public
 
¿Que Es Hardware Abierto? - v1.1.7
¿Que Es Hardware Abierto? - v1.1.7¿Que Es Hardware Abierto? - v1.1.7
¿Que Es Hardware Abierto? - v1.1.7
 
End to End Open Source Telecom
End to End Open Source TelecomEnd to End Open Source Telecom
End to End Open Source Telecom
 
Implementing Lightweight Networking
Implementing Lightweight NetworkingImplementing Lightweight Networking
Implementing Lightweight Networking
 
Open cores (software libre – hardware libre) javier condori flores
Open cores (software libre – hardware libre)   javier condori floresOpen cores (software libre – hardware libre)   javier condori flores
Open cores (software libre – hardware libre) javier condori flores
 
El Hardware
El HardwareEl Hardware
El Hardware
 
Android OS Porting: Introduction
Android OS Porting: IntroductionAndroid OS Porting: Introduction
Android OS Porting: Introduction
 

Similar to Durgam vahia open_sparc_fpga

OpenSPARC on FPGAs
OpenSPARC on FPGAsOpenSPARC on FPGAs
OpenSPARC on FPGAsDVClub
 
Sun sparc enterprise t5440 server technical presentation
Sun sparc enterprise t5440 server technical presentationSun sparc enterprise t5440 server technical presentation
Sun sparc enterprise t5440 server technical presentationxKinAnx
 
QsNetIII, An HPC Interconnect For Peta Scale Systems
QsNetIII, An HPC Interconnect For Peta Scale SystemsQsNetIII, An HPC Interconnect For Peta Scale Systems
QsNetIII, An HPC Interconnect For Peta Scale SystemsFederica Pisani
 
OpenCAPI-based Image Analysis Pipeline for 18 GB/s kilohertz-framerate X-ray ...
OpenCAPI-based Image Analysis Pipeline for 18 GB/s kilohertz-framerate X-ray ...OpenCAPI-based Image Analysis Pipeline for 18 GB/s kilohertz-framerate X-ray ...
OpenCAPI-based Image Analysis Pipeline for 18 GB/s kilohertz-framerate X-ray ...Ganesan Narayanasamy
 
00 opencapi acceleration framework yonglu_ver2
00 opencapi acceleration framework yonglu_ver200 opencapi acceleration framework yonglu_ver2
00 opencapi acceleration framework yonglu_ver2Yutaka Kawai
 
Scaling the Container Dataplane
Scaling the Container Dataplane Scaling the Container Dataplane
Scaling the Container Dataplane Michelle Holley
 
Introduction to DPDK
Introduction to DPDKIntroduction to DPDK
Introduction to DPDKKernel TLV
 
Deep learning: Hardware Landscape
Deep learning: Hardware LandscapeDeep learning: Hardware Landscape
Deep learning: Hardware LandscapeGrigory Sapunov
 
Ceph on 64-bit ARM with X-Gene
Ceph on 64-bit ARM with X-GeneCeph on 64-bit ARM with X-Gene
Ceph on 64-bit ARM with X-GeneCeph Community
 
Software Network Data Plane - Satisfying the need for speed - FD.io - VPP and...
Software Network Data Plane - Satisfying the need for speed - FD.io - VPP and...Software Network Data Plane - Satisfying the need for speed - FD.io - VPP and...
Software Network Data Plane - Satisfying the need for speed - FD.io - VPP and...Haidee McMahon
 
Under The Hood Of A Shard-Per-Core Database Architecture
Under The Hood Of A Shard-Per-Core Database ArchitectureUnder The Hood Of A Shard-Per-Core Database Architecture
Under The Hood Of A Shard-Per-Core Database ArchitectureScyllaDB
 
Představení produktové řady Oracle SPARC S7
Představení produktové řady Oracle SPARC S7Představení produktové řady Oracle SPARC S7
Představení produktové řady Oracle SPARC S7MarketingArrowECS_CZ
 
PLNOG16: Obsługa 100M pps na platformie PC , Przemysław Frasunek, Paweł Mała...
PLNOG16: Obsługa 100M pps na platformie PC, Przemysław Frasunek, Paweł Mała...PLNOG16: Obsługa 100M pps na platformie PC, Przemysław Frasunek, Paweł Mała...
PLNOG16: Obsługa 100M pps na platformie PC , Przemysław Frasunek, Paweł Mała...PROIDEA
 
Renaissance of sparc UKOUG 2014
Renaissance of sparc UKOUG 2014Renaissance of sparc UKOUG 2014
Renaissance of sparc UKOUG 2014Philippe Fierens
 
Trend - HPC-29mai2012
Trend - HPC-29mai2012Trend - HPC-29mai2012
Trend - HPC-29mai2012Agora Group
 
PCCC23:筑波大学計算科学研究センター テーマ1「スーパーコンピュータCygnus / Pegasus」
PCCC23:筑波大学計算科学研究センター テーマ1「スーパーコンピュータCygnus / Pegasus」PCCC23:筑波大学計算科学研究センター テーマ1「スーパーコンピュータCygnus / Pegasus」
PCCC23:筑波大学計算科学研究センター テーマ1「スーパーコンピュータCygnus / Pegasus」PC Cluster Consortium
 
CFD acceleration with FPGA (byteLAKE's presentation from PPAM 2019)
CFD acceleration with FPGA (byteLAKE's presentation from PPAM 2019)CFD acceleration with FPGA (byteLAKE's presentation from PPAM 2019)
CFD acceleration with FPGA (byteLAKE's presentation from PPAM 2019)byteLAKE
 

Similar to Durgam vahia open_sparc_fpga (20)

OpenSPARC on FPGAs
OpenSPARC on FPGAsOpenSPARC on FPGAs
OpenSPARC on FPGAs
 
Sun sparc enterprise t5440 server technical presentation
Sun sparc enterprise t5440 server technical presentationSun sparc enterprise t5440 server technical presentation
Sun sparc enterprise t5440 server technical presentation
 
QsNetIII, An HPC Interconnect For Peta Scale Systems
QsNetIII, An HPC Interconnect For Peta Scale SystemsQsNetIII, An HPC Interconnect For Peta Scale Systems
QsNetIII, An HPC Interconnect For Peta Scale Systems
 
OpenCAPI-based Image Analysis Pipeline for 18 GB/s kilohertz-framerate X-ray ...
OpenCAPI-based Image Analysis Pipeline for 18 GB/s kilohertz-framerate X-ray ...OpenCAPI-based Image Analysis Pipeline for 18 GB/s kilohertz-framerate X-ray ...
OpenCAPI-based Image Analysis Pipeline for 18 GB/s kilohertz-framerate X-ray ...
 
Fpga technology
Fpga technologyFpga technology
Fpga technology
 
00 opencapi acceleration framework yonglu_ver2
00 opencapi acceleration framework yonglu_ver200 opencapi acceleration framework yonglu_ver2
00 opencapi acceleration framework yonglu_ver2
 
Scaling the Container Dataplane
Scaling the Container Dataplane Scaling the Container Dataplane
Scaling the Container Dataplane
 
HiPEAC-Keynote.pptx
HiPEAC-Keynote.pptxHiPEAC-Keynote.pptx
HiPEAC-Keynote.pptx
 
Introduction to DPDK
Introduction to DPDKIntroduction to DPDK
Introduction to DPDK
 
uCluster
uClusteruCluster
uCluster
 
Deep learning: Hardware Landscape
Deep learning: Hardware LandscapeDeep learning: Hardware Landscape
Deep learning: Hardware Landscape
 
Ceph on 64-bit ARM with X-Gene
Ceph on 64-bit ARM with X-GeneCeph on 64-bit ARM with X-Gene
Ceph on 64-bit ARM with X-Gene
 
Software Network Data Plane - Satisfying the need for speed - FD.io - VPP and...
Software Network Data Plane - Satisfying the need for speed - FD.io - VPP and...Software Network Data Plane - Satisfying the need for speed - FD.io - VPP and...
Software Network Data Plane - Satisfying the need for speed - FD.io - VPP and...
 
Under The Hood Of A Shard-Per-Core Database Architecture
Under The Hood Of A Shard-Per-Core Database ArchitectureUnder The Hood Of A Shard-Per-Core Database Architecture
Under The Hood Of A Shard-Per-Core Database Architecture
 
Představení produktové řady Oracle SPARC S7
Představení produktové řady Oracle SPARC S7Představení produktové řady Oracle SPARC S7
Představení produktové řady Oracle SPARC S7
 
PLNOG16: Obsługa 100M pps na platformie PC , Przemysław Frasunek, Paweł Mała...
PLNOG16: Obsługa 100M pps na platformie PC, Przemysław Frasunek, Paweł Mała...PLNOG16: Obsługa 100M pps na platformie PC, Przemysław Frasunek, Paweł Mała...
PLNOG16: Obsługa 100M pps na platformie PC , Przemysław Frasunek, Paweł Mała...
 
Renaissance of sparc UKOUG 2014
Renaissance of sparc UKOUG 2014Renaissance of sparc UKOUG 2014
Renaissance of sparc UKOUG 2014
 
Trend - HPC-29mai2012
Trend - HPC-29mai2012Trend - HPC-29mai2012
Trend - HPC-29mai2012
 
PCCC23:筑波大学計算科学研究センター テーマ1「スーパーコンピュータCygnus / Pegasus」
PCCC23:筑波大学計算科学研究センター テーマ1「スーパーコンピュータCygnus / Pegasus」PCCC23:筑波大学計算科学研究センター テーマ1「スーパーコンピュータCygnus / Pegasus」
PCCC23:筑波大学計算科学研究センター テーマ1「スーパーコンピュータCygnus / Pegasus」
 
CFD acceleration with FPGA (byteLAKE's presentation from PPAM 2019)
CFD acceleration with FPGA (byteLAKE's presentation from PPAM 2019)CFD acceleration with FPGA (byteLAKE's presentation from PPAM 2019)
CFD acceleration with FPGA (byteLAKE's presentation from PPAM 2019)
 

More from Obsidian Software (20)

Zhang rtp q307
Zhang rtp q307Zhang rtp q307
Zhang rtp q307
 
Zehr dv club_12052006
Zehr dv club_12052006Zehr dv club_12052006
Zehr dv club_12052006
 
Yang greenstein part_2
Yang greenstein part_2Yang greenstein part_2
Yang greenstein part_2
 
Yang greenstein part_1
Yang greenstein part_1Yang greenstein part_1
Yang greenstein part_1
 
Williamson arm validation metrics
Williamson arm validation metricsWilliamson arm validation metrics
Williamson arm validation metrics
 
Whipp q3 2008_sv
Whipp q3 2008_svWhipp q3 2008_sv
Whipp q3 2008_sv
 
Vishakantaiah validating
Vishakantaiah validatingVishakantaiah validating
Vishakantaiah validating
 
Validation and-design-in-a-small-team-environment
Validation and-design-in-a-small-team-environmentValidation and-design-in-a-small-team-environment
Validation and-design-in-a-small-team-environment
 
Tobin verification isglobal
Tobin verification isglobalTobin verification isglobal
Tobin verification isglobal
 
Tierney bq207
Tierney bq207Tierney bq207
Tierney bq207
 
The validation attitude
The validation attitudeThe validation attitude
The validation attitude
 
Thaker q3 2008
Thaker q3 2008Thaker q3 2008
Thaker q3 2008
 
Thaker q3 2008
Thaker q3 2008Thaker q3 2008
Thaker q3 2008
 
Strickland dvclub
Strickland dvclubStrickland dvclub
Strickland dvclub
 
Stinson post si and verification
Stinson post si and verificationStinson post si and verification
Stinson post si and verification
 
Shultz dallas q108
Shultz dallas q108Shultz dallas q108
Shultz dallas q108
 
Shreeve dv club_ams
Shreeve dv club_amsShreeve dv club_ams
Shreeve dv club_ams
 
Sharam salamian
Sharam salamianSharam salamian
Sharam salamian
 
Schulz sv q2_2009
Schulz sv q2_2009Schulz sv q2_2009
Schulz sv q2_2009
 
Schulz dallas q1_2008
Schulz dallas q1_2008Schulz dallas q1_2008
Schulz dallas q1_2008
 

Durgam vahia open_sparc_fpga

  • 1. OpenSPARC on FPGAs Durgam.Vahia@Sun.Com OpenSPARC Engineering & Partnership Development Sun Microsystems, Inc. DV Club – July 2009 www.OpenSPARC.net 1
  • 2. 64 bits, 64 threads, and free OpenSPARC OpenSPARC.net  Open source variants of Sun’s CMT microprocessors UltraSPARC T1 UltraSPARC T2  Governed by GPL version2  Widely used in Linux distribution  US export compliant for world- wide distribution www.OpenSPARC.net DV Club – Silicon Valley 2
  • 3. 64 bits, 64 threads, and free Agenda Chip Multi-threading OpenSPARC Motivation for the FPGA port Implementation Results Resources Q & A www.OpenSPARC.net DV Club – Silicon Valley 3
  • 4. 64 bits, 64 threads, and free Chip Multi-threading (CMT) www.OpenSPARC.net DV Club – Silicon Valley 4
  • 5. 64 bits, 64 threads, and free UltraSPARC T1  SPARC V9 ISA, 64-bit  Eight cores, four threads each  Single issue 6-stage pipe  High BW 12-way associative 3 MB on-chip L2 cache  4 DDR2 channels  Shared on-chip FPU  Chip IO through JBUS www.OpenSPARC.net DV Club – Silicon Valley 5
  • 6. 64 bits, 64 threads, and free SPARC Core Pipeline Interface to the core www.OpenSPARC.net DV Club – Silicon Valley 6
  • 7. 64 bits, 64 threads, and free UltraSPARC T2 FB DIMM FB DIMM FB DIMM FB DIMM  Eight cores, eight threads each FB DIMM FB DIMM FB DIMM FB DIMM  8-stage single issue pipe MCU MCU MCU MCU  One FPU per core L2$ L2$ L2$ L2$ L2$ L2$ L2$ L2$  16-way associative 4 MB Full Cross Bar on-chip L2 cache C0 C1 C2 C3 C4 C5 C6 C7  Four dual channel FPU FPU FPU FPU FPU FPU FPU FPU FBDIMM  Two 10G Ethernet NIU Sys I/F PCI-Ex  PCIe and Crypto (E-net+) Buffer Switch Core excluded Power 60 – 123W 2x 10GE Ethernet x8 @2.5GHz www.OpenSPARC.net DV Club – Silicon Valley 7
  • 8. 64 bits, 64 threads, and free OpenSPARC Bundles Hardware − HDL design files written in Verilog − Verification test-bench, diagnostics, scripts − Synthesis scripts for ASIC and FPGA − Lots of documents Software − SPARC Architecture Model (SAM) source − Full-system simulator (Legion) source − Hypervisor, Open Boot PROM (OBP) source − Solaris10 disk image − Scripts to build all the components www.OpenSPARC.net DV Club – Silicon Valley 8
  • 9. 64 bits, 64 threads, and free Source browser at www.opensparc.net www.OpenSPARC.net DV Club – Silicon Valley 9
  • 10. 64 bits, 64 threads, and free OpenSPARC Ecosystem Area Community Universities Partners  OpenSPARC.net  Center of Excellence  FPGA implementation  Contests  Collaborations  ASIC implementation  Blogs Tool Kit  Conferences  Curriculum  EDA  Research  SoC implementation  Tutorials  Tutorials  Foundry relationship Operating System Port  Evangelize OpenSPARC  Research publications  Chip spins Focus  Encourage contributions  Textbooks  Coprocessors  Build knowledgebase  Shared coursework  CMT EDA tools Encourage community innovation www.OpenSPARC.net DV Club – Silicon Valley 10
  • 11. 64 bits, 64 threads, and free OpenSPARC momentum Innovation will happen everywhere More than 11,000 downloads Includes academic and commercial interests www.OpenSPARC.net DV Club – Silicon Valley 11
  • 12. 64 bits, 64 threads, and free Agenda Chip Multi-threading OpenSPARC Motivation for the FPGA port Implementation Results Resources Q & A www.OpenSPARC.net DV Club – Silicon Valley 12
  • 13. 64 bits, 64 threads, and free Why FPGAs?  Community requested it − As a platform for experimentation − Gentler introduction to server class processor design − Basic building block for more interesting/complex designs  Need off-the-shelf FPGA board that is − Large enough for “good-sized” design points − At the “right” price point − Available world-wide www.OpenSPARC.net DV Club – Silicon Valley 13
  • 14. 64 bits, 64 threads, and free OpenSPARC/Xilinx FPGA Evaluation Kit Available from http://www.digilentinc.com/v5osdk www.OpenSPARC.net DV Club – Silicon Valley 14
  • 15. 64 bits, 64 threads, and free FPGA implementation – Key objectives  Proliferation of OpenSPARC & Xilinx FPGA Technology − Make OpenSPARC FPGA-Friendly − Create reference design with complete system functionality − Boot Solaris and Linux − Open it up .. − Seed ideas in the community www.OpenSPARC.net DV Club – Silicon Valley 15
  • 16. 64 bits, 64 threads, and free Processor core changes  Primarily to reduce the area foot-print of the multi-threaded SPARC core  Recode custom SRAM cells for better resource utilization  Parameterizable single- and multi-thread options  Removal of all the asynchronous logic – no clock gating  Simplified reset  Only flops, no latches  Reduce multi-port SRAM arrays  Removable logic – Crypto accelerator, Floating-point Overall 50% reduction in area www.OpenSPARC.net DV Club – Silicon Valley 16
  • 17. 64 bits, 64 threads, and free OpenSPARC FPGA System Xilinx Embedded Developer’s FPGA Boundary External DDR2 Dimm (EDK) Design MCH-OPB MemCon CCX-FSL Microblaze Proc Microblaze Debug UART SPARC T1 Core Interface SPARC T1 UART 10/100 Ethernet www.OpenSPARC.net DV Club – Silicon Valley 17
  • 18. 64 bits, 64 threads, and free Software Stack • Out-of-the-box operating system installation • Boots from a virtual disk in RAM which Solaris/Linux holds the Solaris Open Boot PROM (OBP) binaries Reset Hypervisor Code • Able to boot either Linux or OpenSolaris • Entire software stack is open source www.OpenSPARC.net DV Club – Silicon Valley 18
  • 19. 64 bits, 64 threads, and free Results – Capacity Utilization • Using Xilinx XC5VLX110T device • Synthesis results (no SPU, 16 TLB entries) 1-thread core: 31475 LUT (45%), 115 BRAM (78%) 4-thread core: 51558 LUT (74%), 115 BRAM (78%) (synthesized with Synplicity Synplify Pro) • Complete system: SPARC core, MicroBlaze, 2 UARTs, Ethernet, and DDR2 controller: 1-thread core: 38271 LUT (55%), 128 www.OpenSPARC.net DV Club – Silicon Valley 19
  • 20. 64 bits, 64 threads, and free Results – Community building • 50+MHz OpenSPARC FPGA system – Platform for experimentation for HW developers – Building blocks to design truly multi-core, multi-thread processors – Based on open-source technology – Costs ~$700 for academics ($2,000 for others) – Higher-end boards available for larger design points • Used in 200+ Universities world-wide – Architectural exploration, fault tolerance, reconfigurable computing, low power architectures Free download, visit http://www.opensparc.net www.OpenSPARC.net DV Club – Silicon Valley 20
  • 21. 64 bits, 64 threads, and free Results - Partner http://www.beecube.com www.OpenSPARC.net DV Club – Silicon Valley 21
  • 22. 64 bits, 64 threads, and free Key Learnings • FPGA capacity and performance are increasing each successive generation, however – Optimal use of these resources is a big challenge • FPGA design/coding is significantly different from ASIC style – E.g. pipeline bypass, latches, clock gating creates both functional and P&R issues – For prototyping, create special FPGA models • FPGA tools are full of quirks – Invest in verification at each level – RTL, gate, layout, system www.OpenSPARC.net DV Club – Silicon Valley 22
  • 23. 64 bits, 64 threads, and free Web pointers Program − http://www.opensparc.net Publications − http://www.opensparc.net/publications/ Downloads − http://www.opensparc.net/opensparc-t1/downloads.html − http://www.opensparc.net/opensparc-t2/downloads.html  Participation (Forums) − http://forums.sun.com/category.jspa?categoryID=120  FPGA development boards − http://www.digilentinc.com/v5osdk www.OpenSPARC.net DV Club – Silicon Valley 23
  • 24. OpenSPARC on FPGAs Durgam.Vahia@Sun.Com OpenSPARC Engineering & Partnership Development Sun Microsystems, Inc. www.OpenSPARC.net www.OpenSPARC.net 24