SlideShare a Scribd company logo
1 of 35
© 2016, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
David Pellerin, Business Development Principal
December 15, 2016
Announcing Amazon EC2 F1
Instances with Custom FPGAs
Hardware-Accelerated Computing on AWS
F1
Agenda
1. Accelerated Computing Concepts
2. Introducing F1 FPGA Instances
3. Examples of FPGA Use-Cases
4. FPGA Development Process
Accelerated Computing on EC2
EC2 Compute Instance Types
M4
General
purpose
Compute
optimized
Storage and IO
optimized
GPU and
FPGA
accelerated
Memory
optimized
X1
2010
2013
2016
2016
PreviewF1
P2
G2
CG1
M3
T2
I2
HS
1
I3 D2
R4
R3
C5
C4
C3
CC2
Announced
NVIDIA Tesla
GPU Card
P2: GPU-accelerated computing
 Enabling a high degree of parallelism – each
GPU has thousands of cores
 Consistent, well documented set of APIs
(CUDA, OpenACC, OpenCL)
 Supported by a wide variety of ISVs and
open source frameworks
Xilinx
UltraScale+
FPGA
F1: FPGA-accelerated computing
 Massively parallel – each FPGA includes
millions of parallel system logic cells
 Flexible – no fixed instruction set, can
implement wide or narrow datapaths
 Programmable using available, cloud-based
FPGA development tools
GPU and FPGA for Accelerated Computing
CPU: High speed, lower efficiency GPU/FPGA: High throughput, higher efficiency
GPUs and FPGAs can provide massive parallelism and higher
efficiency than CPUs for certain categories of applications
Accelerated Computing Concepts
More parallelism for higher throughout…
A GPU is effective at processing the same set of operations in parallel – single instruction, multiple data
(SIMD). A GPU has a well-defined instruction-set, and fixed word sizes – for example single, double, or
half-precision integer and floating point values.
An FPGA is effective at processing the same or different operations in parallel – multiple
instructions, multiple data (MIMD). An FPGA does not have a predefined instruction-set, or a
fixed data width.
Control
ALU
ALU
Cache
DRAM
ALU
ALU
CPU
(one core)
FPGA
DRAM DRAM
GPU
Each FPGA in
F1 has more
than 2M of
these cells
Each GPU
in P2 has
2880 of
these
cores
DRAM
Parallel Processing in GPUs and FPGAs
BlockRAM
BlockRAM
DRAM DRAM
module filter1 (clock, rst, strm_in, strm_out)
for (i=0; i<NUMUNITS; i=i+1)
always@(posedge clock)
integer i,j; //index for loops
tmp_kernel[j] = k[i*OFFSETX];
FPGA handles compute-
intensive, deeply pipelined,
hardware-accelerated
operations
CPU handles the rest
application
How FPGA Acceleration Works
Process
Process
Process
Process
Process
Process
Process
Process
Process
Data Data
Data
Data
Process
Process
Data
Hardware-Accelerated Computing
Building parallel systems for parallel problems
An FPGA is effective at processing data of many types in parallel, for example
creating a complex pipeline of parallel, multistage operations on a video stream, or
performing massive numbers of dependent or independent calculations for a
complex financial model…
An FPGA does not have an
instruction-set!
Data can be any bit-width (9-bit
integer? No problem!)
Complex control logic (such as a
state machine) is easy to
implement in an FPGA
Each FPGA in
F1 has more
than 2M of
these cells
Parallel Processing in FPGAs
Introducing F1 FPGA Instances
 Make FPGA acceleration available to a larger community of
developers, and to millions of potential end-customers
 Provide dedicated and large amounts of FPGA logic in a
single EC2 instance, using multiple FPGAs
 Simplify the development process by providing cloud-based
FPGA development tools
 Allow developers to focus on algorithm design, by
abstracting FPGA I/O using well-defined interfaces
 Provide access to a growing ecosystem of FPGA
programming tools and applications
 Provide a Marketplace for FPGA applications, providing more
choice and easy access for all AWS customers
FPGA Acceleration in the AWS Cloud: Goals
 New EC2 FPGA instance type for accelerated computing
 Up to 8 Xilinx UltraScale+ 16nm VU9P FPGA devices in a single instance
 The f1.16xlarge size provides:
 8 FPGAs, each with over 2 million customer-accessible FPGA
programmable logic cells and over 5000 programmable DSP blocks
 Each of the 8 FPGAs has 4 DDR-4 interfaces, with each interface
accessing a 16GiB, 72-bit wide, ECC-protected memory
Instance Size FPGAs DDR-4
(GiB)
FPGA
Link
FPGA
Direct
vCPUs Instance
Memory (GiB)
NVMe Instance
Storage (GB)
Network
Bandwidth*
f1.2xlarge 1 4 x 16 - - 8 122 1 x 480 10 Gbps Peak
f1.16xlarge 8 32 x 16 Y Y 64 976 4 x 960 30 Gbps
*In a placement group
F1 FPGA Instance Types on AWS
System Logic Block:
Each FPGA in F1 provides over 2M
of these logic blocks
DSP (Math) Block:
Each FPGA in F1 has more than
5000 of these blocks
I/O Blocks:
Used to communicate externally, for
example to DDR-4, PCIe, or ring
Block RAM:
Each FPGA in F1 has over 60Mb of
internal Block RAM, and over
230Mb of embedded UltraRAM
BlockRAM
BlockRAM
I/O Blocks
DDR-4 DDR-4
DDR-4 DDR-4
PCIe
FPGALink
What’s Inside the F1 FPGA?
AWS FPGA Shell
FPGA I/O is provided using pre-configured, pre-tested,
and secure I/O components, allowing FPGA developers
to focus on their differentiating value
The FPGA Shell allows for faster coding of core
acceleration functions by removing the need to develop
I/O related FPGA hardware
BlockRAM
BlockRAMDDR-4 DDR-4
DDR-4 DDR-4
FPGALink
PCIe
Abstracting FPGA I/O
Amazon
Machine
Image (AMI)
Amazon FPGA
Image (AFI)
EC2 F1
Instance
CPU
Application
on F1
DDR-4
Attached
Memory
DDR-4
Attached
Memory
DDR-4
Attached
Memory
DDR-4
Attached
Memory
DDR-4
Attached
Memory
DDR-4
Attached
Memory
DDR-4
Attached
Memory
DDR-4
Attached
Memory
FPGA Link
PCIe
DDR
Controllers
Launch Instance
and Load AFI
An F1 instance
can have any
number of AFIs
An AFI can be
loaded into the
FPGA in less than
1 second
FPGA Acceleration Using F1
Example F1 Use-Cases
Highly Efficient
• Algorithms Implemented in Hardware
• Gate-Level Circuit Design
• No Instruction Set Overhead
Massively Parallel
• Massively Parallel Circuits
• Multiple Compute Engines
• Rapid FPGA Reconfigurability
FPGA
Speeds Analysis of Whole Human Genomes from Hours to Minutes
Unprecedented Low Cost for Compute and Compressed Storage
F1 for Genomics Processing
F1 for Financial Computing
Modeling Counterparty Risk (CVA) and Regulatory Capital Requirements
F1 for Video Processing
Next Generation Video Compression for Broadcast Quality 4K content
Successfully ported
to F1 in just 3 weeks
F1 for Accelerated Analytics
Heterogeneous Compute Acceleration for Faster Data Discovery
FPGA Development Process
Development steps
Launch the AWS-provided FPGA Developer AMI, which includes all
needed FPGA design and programming software, as well as the AWS
FPGA Hardware Development Kit (HDK)
Use Xilinx Vivado or SDAccel software and a hardware description
language (Verilog, VHDL, or OpenCL) with the HDK to describe and
simulate your custom FPGA logic
After successful simulation, use Vivado or SCAccel to synthesize and
place/route the FPGA logic to create an FPGA Design Check Point
(DCP), encrypt, and generate an Amazon FPGA Image (AFI)
Launch an F1 instance and load the AFI to the FPGA, using AFI
management tools provided by AWS
Developing Applications for F1
1
2
3
4
Generate an
Amazon FPGA
Image (AFI)
FPGA Place-and-Route
using Xilinx Vivado on C4 or
M4 instance
FPGA Logic Design using
Xilinx Vivado on C4 or M4
instance
Securely deploy
AFI on one or
more F1
instances
Developing Applications for F1
Choose and launch the AWS-provided FPGA Developer AMI, which includes all
needed FPGA design and programming software, as well as the AWS FPGA
Hardware Development Kit (HDK)
Developing Applications for F1
Developing Applications for F1
Use Xilinx Vivado or SCAccel software and a hardware description language
(Verilog, VHDL, or OpenCL) with the HDK to describe and simulate your custom
FPGA logic
After successful simulation, use scripts provided with the HDK to encrypt,
synthesize and place/route the FPGA logic to create a final FPGA Design Check
Point (DCP) and generate a secure, encrypted Amazon FPGA Image (AFI)
Developing Applications for F1
Launch an F1 instance and download the AFI to the FPGA, using AFI
management tools provided by AWS
Generate an
Amazon FPGA
Image (AFI)
Deploy AFI on
one or more F1
instances
Developing Applications for F1
Amazon EC2 FPGA
Deployment via Marketplace
Amazon
Machine
Image (AMI)
Amazon FPGA Image
(AFI)
AFI is secured, encrypted,
dynamically loaded into the
FPGA - can’t be copied or
downloaded
Customers
AWS Marketplace
Delivering FPGA Partner Solutions on AWS
via AWS Marketplace
Delivering FPGA Partner Solutions on AWS
AWS Marketplace Benefits
• Streamlined delivery of FPGA-accelerated solutions: Offer software as a
managed Amazon Machine Image (AMI) and one or more Amazon FPGA Images
(AFI), with secure 1-click purchasing.
• Discover new customers: Allow customers to launch directly from AWS
Marketplace, decreasing the length of sales cycles. Sellers can also offer free
trials with no additional engineering effort.
• Simplified billing & payments: Customers pay for AWS Marketplace software
as part of the regular AWS billing cycle. AWS manages the complexity of AMI and
AFI security, metering, billing, payment collection, and financial reporting.
• Secure your FPGA-based products: FPGA custom logic is deployed to
customers in a secure way, with no ability to view, copy, or edit the AFI logic.
• Provide Seamless Product Support: AWS Marketplace Product Support
Connection makes it easy to support your customers on AWS Marketplace.
FPGA: A Field Programmable Gate Array is a device that consists of very large numbers of
configurable logic and memory elements interconnected by configurable routing resources.
FPGAs differ from CPUs and GPUs by having no fixed instruction set, and in their ability to
implement operations and processes that are pipelined and parallelized in an almost unlimited
number of ways, using arbitrarily sized bit-widths.
AFI (Amazon FPGA Image): a file containing the binary image for an FPGA bitstream.
Loading an AFI onto an FPGA “programs” that device, within seconds, to perform one of more
application-specific functions.
HDL (Hardware Description Language): a low-level programming language designed for
describing logic functions for the purposed of simulation and for conversion (via synthesis) to
an FPGA or ASIC.
Vivado and SDAccel: a set of design tools produced by Xilinx (provider of the F1 FPGA
devices) for development of FPGA logic, pre-integrated and provided at no charge by AWS.
Verilog: a commonly-used HDL for FPGA design and simulation, supported by Vivado.
VHDL: another commonly-used HDL for FPGA , also supported by Vivado.
F1 Glossary
OpenCL (Open Computing Language): a higher-level alternative to HDL programming
based on C-language, and supported in the Xilinx SDAccel design tools. OpenCL can be
used to target either FPGAs or GPUs.
HDK (Hardware Development Kit): a set of tools, documentation, and associated FPGA
libraries provided by AWS to assist FPGA developers with more rapid FPGA development, in
particular to simplify the use of I/O from the FPGA to the host EC2 instance via PCIe, from
FPGA to memory, and from FPGA to FPGA.
AXI: an FPGA-internal bus format providing standardized interfaces for memory-mapped
communications and for high-speed streaming data. AXI is used in the F1 HDK to define
interfaces between AWS-provided interface logic, and custom logic provided by FPGA
developers.
Developer AMI: a preconfigured AMI, available in the AWS Marketplace, that includes all
necessary software and libraries for FPGA development, including the Vivado software and
the HDK libraries enabling HDL design and simulation.
F1 Glossary (cont)
Synthesis: the process, using software tools provided with Vivado, of converting an HDL or
OpenCL application into a lower-level format (sometimes referred to as a “netlist”)
representing the individual logic elements of the application, for example AND, OR, XOR
gates, adders and multipliers, shift registers, etc. This “netlist” must be further processed,
using place-and-route software, to create a downloadable bitstream.
Place-and-Route: the process, using software tools provided with Vivado, of mapping
individual logic elements to precise locations in the target FPGA, and specifying their
interconnections. Place-and-route is an iterative process that can require hours to complete
for larger applications and larger FPGAs.
Bitstream: a binary format representing the synthesized, placed, and routed FPGA
application ready for downloading to an FPGA.
Design Check Point (DCP): a binary file format containing the FPGA bitstream, ready for
ingestion during the creation of an Amazon FPGA Image (AFI).
F1 Glossary (cont)
Additional Resources
AWS F1 details: https://aws.amazon.com/ec2/instance-types/f1/
AWS Marketplace: https://aws.amazon.com/marketplace/
AWS Educate: https://aws.amazon.com/education/awseducate/
Edico Genome: http://www.edicogenome.com/
NGCODEC: http://www.ngcodec.com
Maxeler: http://www.maxeler.com/
Ryft: https://www.ryft.com
Thank you!

More Related Content

What's hot

Tilera tile64 by Ibrahem Batta
Tilera tile64  by Ibrahem BattaTilera tile64  by Ibrahem Batta
Tilera tile64 by Ibrahem Batta
Ibrahem Batta
 
Red Hat Global File System (GFS)
Red Hat Global File System (GFS)Red Hat Global File System (GFS)
Red Hat Global File System (GFS)
Schubert Zhang
 

What's hot (20)

DPDK IPSec performance benchmark ~ Georgii Tkachuk
DPDK IPSec performance benchmark ~ Georgii TkachukDPDK IPSec performance benchmark ~ Georgii Tkachuk
DPDK IPSec performance benchmark ~ Georgii Tkachuk
 
FPGA on the Cloud
FPGA on the Cloud FPGA on the Cloud
FPGA on the Cloud
 
Tilera tile64 by Ibrahem Batta
Tilera tile64  by Ibrahem BattaTilera tile64  by Ibrahem Batta
Tilera tile64 by Ibrahem Batta
 
FPGA 개발하면서 겪은 삽질에 대한 총 정리
FPGA 개발하면서 겪은 삽질에 대한 총 정리FPGA 개발하면서 겪은 삽질에 대한 총 정리
FPGA 개발하면서 겪은 삽질에 대한 총 정리
 
Kernel Recipes 2017 - An introduction to the Linux DRM subsystem - Maxime Ripard
Kernel Recipes 2017 - An introduction to the Linux DRM subsystem - Maxime RipardKernel Recipes 2017 - An introduction to the Linux DRM subsystem - Maxime Ripard
Kernel Recipes 2017 - An introduction to the Linux DRM subsystem - Maxime Ripard
 
Deep learning: Hardware Landscape
Deep learning: Hardware LandscapeDeep learning: Hardware Landscape
Deep learning: Hardware Landscape
 
System on chip architectures
System on chip architecturesSystem on chip architectures
System on chip architectures
 
Hyper threading technology
Hyper threading technologyHyper threading technology
Hyper threading technology
 
RDMA programming design and case studies – for better performance distributed...
RDMA programming design and case studies – for better performance distributed...RDMA programming design and case studies – for better performance distributed...
RDMA programming design and case studies – for better performance distributed...
 
ISSCC 2018: "Zeppelin": an SoC for Multi-chip Architectures
ISSCC 2018: "Zeppelin": an SoC for Multi-chip ArchitecturesISSCC 2018: "Zeppelin": an SoC for Multi-chip Architectures
ISSCC 2018: "Zeppelin": an SoC for Multi-chip Architectures
 
IoT Intro and Demo
IoT Intro and DemoIoT Intro and Demo
IoT Intro and Demo
 
DFI_Blog
DFI_BlogDFI_Blog
DFI_Blog
 
Deep learning with FPGA
Deep learning with FPGADeep learning with FPGA
Deep learning with FPGA
 
IPMI is dead, Long live Redfish
IPMI is dead, Long live RedfishIPMI is dead, Long live Redfish
IPMI is dead, Long live Redfish
 
Red Hat Global File System (GFS)
Red Hat Global File System (GFS)Red Hat Global File System (GFS)
Red Hat Global File System (GFS)
 
Userspace networking
Userspace networkingUserspace networking
Userspace networking
 
Crimson: Ceph for the Age of NVMe and Persistent Memory
Crimson: Ceph for the Age of NVMe and Persistent MemoryCrimson: Ceph for the Age of NVMe and Persistent Memory
Crimson: Ceph for the Age of NVMe and Persistent Memory
 
How to use Apache TVM to optimize your ML models
How to use Apache TVM to optimize your ML modelsHow to use Apache TVM to optimize your ML models
How to use Apache TVM to optimize your ML models
 
Demystifying Networking Webinar Series- Routing on the Host
Demystifying Networking Webinar Series- Routing on the HostDemystifying Networking Webinar Series- Routing on the Host
Demystifying Networking Webinar Series- Routing on the Host
 
DPDK in Containers Hands-on Lab
DPDK in Containers Hands-on LabDPDK in Containers Hands-on Lab
DPDK in Containers Hands-on Lab
 

Viewers also liked

Viewers also liked (20)

Deep Dive on Amazon EC2 Instances - January 2017 AWS Online Tech Talks
Deep Dive on Amazon EC2 Instances - January 2017 AWS Online Tech TalksDeep Dive on Amazon EC2 Instances - January 2017 AWS Online Tech Talks
Deep Dive on Amazon EC2 Instances - January 2017 AWS Online Tech Talks
 
AWS re:Invent 2016: High Performance Computing on AWS (CMP207)
AWS re:Invent 2016: High Performance Computing on AWS (CMP207)AWS re:Invent 2016: High Performance Computing on AWS (CMP207)
AWS re:Invent 2016: High Performance Computing on AWS (CMP207)
 
AWS re:Invent 2016: Deep Learning, 3D Content Rendering, and Massively Parall...
AWS re:Invent 2016: Deep Learning, 3D Content Rendering, and Massively Parall...AWS re:Invent 2016: Deep Learning, 3D Content Rendering, and Massively Parall...
AWS re:Invent 2016: Deep Learning, 3D Content Rendering, and Massively Parall...
 
AWS re:Invent 2016: Bringing Deep Learning to the Cloud with Amazon EC2 (CMP314)
AWS re:Invent 2016: Bringing Deep Learning to the Cloud with Amazon EC2 (CMP314)AWS re:Invent 2016: Bringing Deep Learning to the Cloud with Amazon EC2 (CMP314)
AWS re:Invent 2016: Bringing Deep Learning to the Cloud with Amazon EC2 (CMP314)
 
Announcing AWS Shield - Protect Web Applications from DDoS Attacks
Announcing AWS Shield - Protect Web Applications from DDoS AttacksAnnouncing AWS Shield - Protect Web Applications from DDoS Attacks
Announcing AWS Shield - Protect Web Applications from DDoS Attacks
 
Announcing AWS Greengrass - January 2017 AWS Online Tech Talks
Announcing AWS Greengrass - January 2017 AWS Online Tech TalksAnnouncing AWS Greengrass - January 2017 AWS Online Tech Talks
Announcing AWS Greengrass - January 2017 AWS Online Tech Talks
 
NEW LAUNCH! Delivering Powerful Graphics-Intensive Applications from the AWS ...
NEW LAUNCH! Delivering Powerful Graphics-Intensive Applications from the AWS ...NEW LAUNCH! Delivering Powerful Graphics-Intensive Applications from the AWS ...
NEW LAUNCH! Delivering Powerful Graphics-Intensive Applications from the AWS ...
 
NEW LAUNCH! AWS Shield—A Managed DDoS Protection Service
NEW LAUNCH! AWS Shield—A Managed DDoS Protection ServiceNEW LAUNCH! AWS Shield—A Managed DDoS Protection Service
NEW LAUNCH! AWS Shield—A Managed DDoS Protection Service
 
Development of a 4K Main 10 Profile HEVC Encoder for Great Improvements in Co...
Development of a 4K Main 10 Profile HEVC Encoder for Great Improvements in Co...Development of a 4K Main 10 Profile HEVC Encoder for Great Improvements in Co...
Development of a 4K Main 10 Profile HEVC Encoder for Great Improvements in Co...
 
Astroinformatics 2014: Scientific Computing on the Cloud with Amazon Web Serv...
Astroinformatics 2014: Scientific Computing on the Cloud with Amazon Web Serv...Astroinformatics 2014: Scientific Computing on the Cloud with Amazon Web Serv...
Astroinformatics 2014: Scientific Computing on the Cloud with Amazon Web Serv...
 
Automate your M&E workflows on AWS
Automate your M&E workflows on AWSAutomate your M&E workflows on AWS
Automate your M&E workflows on AWS
 
IT empresarial en la nube
IT empresarial en la nubeIT empresarial en la nube
IT empresarial en la nube
 
Cloud Computing Use Cases Whitepaper
Cloud Computing Use Cases WhitepaperCloud Computing Use Cases Whitepaper
Cloud Computing Use Cases Whitepaper
 
Crear un centro de datos virtual en AWS
Crear un centro de datos virtual en AWSCrear un centro de datos virtual en AWS
Crear un centro de datos virtual en AWS
 
Security, Risk, Compliance & Controls
Security, Risk, Compliance & ControlsSecurity, Risk, Compliance & Controls
Security, Risk, Compliance & Controls
 
Building Automated Control Systems for Your AWS Infrastructure
Building Automated Control Systems for Your AWS InfrastructureBuilding Automated Control Systems for Your AWS Infrastructure
Building Automated Control Systems for Your AWS Infrastructure
 
A Primer on FPGAs - Field Programmable Gate Arrays
A Primer on FPGAs - Field Programmable Gate ArraysA Primer on FPGAs - Field Programmable Gate Arrays
A Primer on FPGAs - Field Programmable Gate Arrays
 
AWS Summit Auckland - Fundamentals of Networking in AWS
AWS Summit Auckland - Fundamentals of Networking in AWSAWS Summit Auckland - Fundamentals of Networking in AWS
AWS Summit Auckland - Fundamentals of Networking in AWS
 
Protecting your data in aws - Toronto
Protecting your data in aws - TorontoProtecting your data in aws - Toronto
Protecting your data in aws - Toronto
 
Amazon ECS with Docker | AWS Public Sector Summit 2016
Amazon ECS with Docker | AWS Public Sector Summit 2016Amazon ECS with Docker | AWS Public Sector Summit 2016
Amazon ECS with Docker | AWS Public Sector Summit 2016
 

Similar to Announcing Amazon EC2 F1 Instances with Custom FPGAs

ProjectVault[VivekKumar_CS-C_6Sem_MIT].pptx
ProjectVault[VivekKumar_CS-C_6Sem_MIT].pptxProjectVault[VivekKumar_CS-C_6Sem_MIT].pptx
ProjectVault[VivekKumar_CS-C_6Sem_MIT].pptx
Vivek Kumar
 
Dsp Based Field Programable Gate Array
Dsp Based Field Programable Gate ArrayDsp Based Field Programable Gate Array
Dsp Based Field Programable Gate Array
decebems
 

Similar to Announcing Amazon EC2 F1 Instances with Custom FPGAs (20)

Amazon EC2 F1 Developing Cloud-Scale Accelerations Sep 13, 2017
Amazon EC2 F1 Developing Cloud-Scale Accelerations Sep 13, 2017 Amazon EC2 F1 Developing Cloud-Scale Accelerations Sep 13, 2017
Amazon EC2 F1 Developing Cloud-Scale Accelerations Sep 13, 2017
 
Accelerate Your C/C++ Applications with Amazon EC2 F1 Instances - CMP402 - re...
Accelerate Your C/C++ Applications with Amazon EC2 F1 Instances - CMP402 - re...Accelerate Your C/C++ Applications with Amazon EC2 F1 Instances - CMP402 - re...
Accelerate Your C/C++ Applications with Amazon EC2 F1 Instances - CMP402 - re...
 
SDAccel Design Contest: SDAccel and F1 Instances
SDAccel Design Contest: SDAccel and F1 InstancesSDAccel Design Contest: SDAccel and F1 Instances
SDAccel Design Contest: SDAccel and F1 Instances
 
Accelerating Development Using Custom Hardware Accelerations with Amazon EC2 ...
Accelerating Development Using Custom Hardware Accelerations with Amazon EC2 ...Accelerating Development Using Custom Hardware Accelerations with Amazon EC2 ...
Accelerating Development Using Custom Hardware Accelerations with Amazon EC2 ...
 
FPGA MeetUp
FPGA MeetUpFPGA MeetUp
FPGA MeetUp
 
SoC - altera's user-customizable arm-based soc
SoC - altera's user-customizable arm-based socSoC - altera's user-customizable arm-based soc
SoC - altera's user-customizable arm-based soc
 
InAccel FPGA resource manager
InAccel FPGA resource managerInAccel FPGA resource manager
InAccel FPGA resource manager
 
CAPI and OpenCAPI Hardware acceleration enablement
CAPI and OpenCAPI Hardware acceleration enablementCAPI and OpenCAPI Hardware acceleration enablement
CAPI and OpenCAPI Hardware acceleration enablement
 
Using a Field Programmable Gate Array to Accelerate Application Performance
Using a Field Programmable Gate Array to Accelerate Application PerformanceUsing a Field Programmable Gate Array to Accelerate Application Performance
Using a Field Programmable Gate Array to Accelerate Application Performance
 
Accelerate Your C/C++ Applications with Amazon EC2 F1 Instances (CMP405) - AW...
Accelerate Your C/C++ Applications with Amazon EC2 F1 Instances (CMP405) - AW...Accelerate Your C/C++ Applications with Amazon EC2 F1 Instances (CMP405) - AW...
Accelerate Your C/C++ Applications with Amazon EC2 F1 Instances (CMP405) - AW...
 
4.FPGA for dummies: Design Flow
4.FPGA for dummies: Design Flow4.FPGA for dummies: Design Flow
4.FPGA for dummies: Design Flow
 
TDC2019 Intel Software Day - Tecnicas de Programacao Paralela em Machine Lear...
TDC2019 Intel Software Day - Tecnicas de Programacao Paralela em Machine Lear...TDC2019 Intel Software Day - Tecnicas de Programacao Paralela em Machine Lear...
TDC2019 Intel Software Day - Tecnicas de Programacao Paralela em Machine Lear...
 
HiPEAC-Keynote.pptx
HiPEAC-Keynote.pptxHiPEAC-Keynote.pptx
HiPEAC-Keynote.pptx
 
PowerAI Deep dive
PowerAI Deep divePowerAI Deep dive
PowerAI Deep dive
 
00 opencapi acceleration framework yonglu_ver2
00 opencapi acceleration framework yonglu_ver200 opencapi acceleration framework yonglu_ver2
00 opencapi acceleration framework yonglu_ver2
 
DRIVE PX 2
DRIVE PX 2DRIVE PX 2
DRIVE PX 2
 
ProjectVault[VivekKumar_CS-C_6Sem_MIT].pptx
ProjectVault[VivekKumar_CS-C_6Sem_MIT].pptxProjectVault[VivekKumar_CS-C_6Sem_MIT].pptx
ProjectVault[VivekKumar_CS-C_6Sem_MIT].pptx
 
Dsp Based Field Programable Gate Array
Dsp Based Field Programable Gate ArrayDsp Based Field Programable Gate Array
Dsp Based Field Programable Gate Array
 
Deep Dive on Amazon EC2 Accelerated Computing
Deep Dive on Amazon EC2 Accelerated ComputingDeep Dive on Amazon EC2 Accelerated Computing
Deep Dive on Amazon EC2 Accelerated Computing
 
FPGAs in the cloud? (October 2017)
FPGAs in the cloud? (October 2017)FPGAs in the cloud? (October 2017)
FPGAs in the cloud? (October 2017)
 

More from Amazon Web Services

Tools for building your MVP on AWS
Tools for building your MVP on AWSTools for building your MVP on AWS
Tools for building your MVP on AWS
Amazon Web Services
 
How to Build a Winning Pitch Deck
How to Build a Winning Pitch DeckHow to Build a Winning Pitch Deck
How to Build a Winning Pitch Deck
Amazon Web Services
 
Building a web application without servers
Building a web application without serversBuilding a web application without servers
Building a web application without servers
Amazon Web Services
 
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
Amazon Web Services
 

More from Amazon Web Services (20)

Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
 
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
 
Esegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS FargateEsegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS Fargate
 
Costruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWSCostruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWS
 
Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot
 
Open banking as a service
Open banking as a serviceOpen banking as a service
Open banking as a service
 
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
 
OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...
 
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows WorkloadsMicrosoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads
 
Computer Vision con AWS
Computer Vision con AWSComputer Vision con AWS
Computer Vision con AWS
 
Database Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatareDatabase Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatare
 
Crea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJSCrea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJS
 
API moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e webAPI moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e web
 
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatareDatabase Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare
 
Tools for building your MVP on AWS
Tools for building your MVP on AWSTools for building your MVP on AWS
Tools for building your MVP on AWS
 
How to Build a Winning Pitch Deck
How to Build a Winning Pitch DeckHow to Build a Winning Pitch Deck
How to Build a Winning Pitch Deck
 
Building a web application without servers
Building a web application without serversBuilding a web application without servers
Building a web application without servers
 
Fundraising Essentials
Fundraising EssentialsFundraising Essentials
Fundraising Essentials
 
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
 
Introduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container ServiceIntroduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container Service
 

Recently uploaded

+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 

Recently uploaded (20)

Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdf
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation Strategies
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 

Announcing Amazon EC2 F1 Instances with Custom FPGAs

  • 1. © 2016, Amazon Web Services, Inc. or its Affiliates. All rights reserved. David Pellerin, Business Development Principal December 15, 2016 Announcing Amazon EC2 F1 Instances with Custom FPGAs Hardware-Accelerated Computing on AWS F1
  • 2. Agenda 1. Accelerated Computing Concepts 2. Introducing F1 FPGA Instances 3. Examples of FPGA Use-Cases 4. FPGA Development Process
  • 4. EC2 Compute Instance Types M4 General purpose Compute optimized Storage and IO optimized GPU and FPGA accelerated Memory optimized X1 2010 2013 2016 2016 PreviewF1 P2 G2 CG1 M3 T2 I2 HS 1 I3 D2 R4 R3 C5 C4 C3 CC2 Announced
  • 5. NVIDIA Tesla GPU Card P2: GPU-accelerated computing  Enabling a high degree of parallelism – each GPU has thousands of cores  Consistent, well documented set of APIs (CUDA, OpenACC, OpenCL)  Supported by a wide variety of ISVs and open source frameworks Xilinx UltraScale+ FPGA F1: FPGA-accelerated computing  Massively parallel – each FPGA includes millions of parallel system logic cells  Flexible – no fixed instruction set, can implement wide or narrow datapaths  Programmable using available, cloud-based FPGA development tools GPU and FPGA for Accelerated Computing
  • 6. CPU: High speed, lower efficiency GPU/FPGA: High throughput, higher efficiency GPUs and FPGAs can provide massive parallelism and higher efficiency than CPUs for certain categories of applications Accelerated Computing Concepts More parallelism for higher throughout…
  • 7. A GPU is effective at processing the same set of operations in parallel – single instruction, multiple data (SIMD). A GPU has a well-defined instruction-set, and fixed word sizes – for example single, double, or half-precision integer and floating point values. An FPGA is effective at processing the same or different operations in parallel – multiple instructions, multiple data (MIMD). An FPGA does not have a predefined instruction-set, or a fixed data width. Control ALU ALU Cache DRAM ALU ALU CPU (one core) FPGA DRAM DRAM GPU Each FPGA in F1 has more than 2M of these cells Each GPU in P2 has 2880 of these cores DRAM Parallel Processing in GPUs and FPGAs BlockRAM BlockRAM DRAM DRAM
  • 8. module filter1 (clock, rst, strm_in, strm_out) for (i=0; i<NUMUNITS; i=i+1) always@(posedge clock) integer i,j; //index for loops tmp_kernel[j] = k[i*OFFSETX]; FPGA handles compute- intensive, deeply pipelined, hardware-accelerated operations CPU handles the rest application How FPGA Acceleration Works
  • 10. An FPGA is effective at processing data of many types in parallel, for example creating a complex pipeline of parallel, multistage operations on a video stream, or performing massive numbers of dependent or independent calculations for a complex financial model… An FPGA does not have an instruction-set! Data can be any bit-width (9-bit integer? No problem!) Complex control logic (such as a state machine) is easy to implement in an FPGA Each FPGA in F1 has more than 2M of these cells Parallel Processing in FPGAs
  • 11. Introducing F1 FPGA Instances
  • 12.  Make FPGA acceleration available to a larger community of developers, and to millions of potential end-customers  Provide dedicated and large amounts of FPGA logic in a single EC2 instance, using multiple FPGAs  Simplify the development process by providing cloud-based FPGA development tools  Allow developers to focus on algorithm design, by abstracting FPGA I/O using well-defined interfaces  Provide access to a growing ecosystem of FPGA programming tools and applications  Provide a Marketplace for FPGA applications, providing more choice and easy access for all AWS customers FPGA Acceleration in the AWS Cloud: Goals
  • 13.  New EC2 FPGA instance type for accelerated computing  Up to 8 Xilinx UltraScale+ 16nm VU9P FPGA devices in a single instance  The f1.16xlarge size provides:  8 FPGAs, each with over 2 million customer-accessible FPGA programmable logic cells and over 5000 programmable DSP blocks  Each of the 8 FPGAs has 4 DDR-4 interfaces, with each interface accessing a 16GiB, 72-bit wide, ECC-protected memory Instance Size FPGAs DDR-4 (GiB) FPGA Link FPGA Direct vCPUs Instance Memory (GiB) NVMe Instance Storage (GB) Network Bandwidth* f1.2xlarge 1 4 x 16 - - 8 122 1 x 480 10 Gbps Peak f1.16xlarge 8 32 x 16 Y Y 64 976 4 x 960 30 Gbps *In a placement group F1 FPGA Instance Types on AWS
  • 14. System Logic Block: Each FPGA in F1 provides over 2M of these logic blocks DSP (Math) Block: Each FPGA in F1 has more than 5000 of these blocks I/O Blocks: Used to communicate externally, for example to DDR-4, PCIe, or ring Block RAM: Each FPGA in F1 has over 60Mb of internal Block RAM, and over 230Mb of embedded UltraRAM BlockRAM BlockRAM I/O Blocks DDR-4 DDR-4 DDR-4 DDR-4 PCIe FPGALink What’s Inside the F1 FPGA?
  • 15. AWS FPGA Shell FPGA I/O is provided using pre-configured, pre-tested, and secure I/O components, allowing FPGA developers to focus on their differentiating value The FPGA Shell allows for faster coding of core acceleration functions by removing the need to develop I/O related FPGA hardware BlockRAM BlockRAMDDR-4 DDR-4 DDR-4 DDR-4 FPGALink PCIe Abstracting FPGA I/O
  • 16. Amazon Machine Image (AMI) Amazon FPGA Image (AFI) EC2 F1 Instance CPU Application on F1 DDR-4 Attached Memory DDR-4 Attached Memory DDR-4 Attached Memory DDR-4 Attached Memory DDR-4 Attached Memory DDR-4 Attached Memory DDR-4 Attached Memory DDR-4 Attached Memory FPGA Link PCIe DDR Controllers Launch Instance and Load AFI An F1 instance can have any number of AFIs An AFI can be loaded into the FPGA in less than 1 second FPGA Acceleration Using F1
  • 18. Highly Efficient • Algorithms Implemented in Hardware • Gate-Level Circuit Design • No Instruction Set Overhead Massively Parallel • Massively Parallel Circuits • Multiple Compute Engines • Rapid FPGA Reconfigurability FPGA Speeds Analysis of Whole Human Genomes from Hours to Minutes Unprecedented Low Cost for Compute and Compressed Storage F1 for Genomics Processing
  • 19. F1 for Financial Computing Modeling Counterparty Risk (CVA) and Regulatory Capital Requirements
  • 20. F1 for Video Processing Next Generation Video Compression for Broadcast Quality 4K content Successfully ported to F1 in just 3 weeks
  • 21. F1 for Accelerated Analytics Heterogeneous Compute Acceleration for Faster Data Discovery
  • 23. Development steps Launch the AWS-provided FPGA Developer AMI, which includes all needed FPGA design and programming software, as well as the AWS FPGA Hardware Development Kit (HDK) Use Xilinx Vivado or SDAccel software and a hardware description language (Verilog, VHDL, or OpenCL) with the HDK to describe and simulate your custom FPGA logic After successful simulation, use Vivado or SCAccel to synthesize and place/route the FPGA logic to create an FPGA Design Check Point (DCP), encrypt, and generate an Amazon FPGA Image (AFI) Launch an F1 instance and load the AFI to the FPGA, using AFI management tools provided by AWS Developing Applications for F1 1 2 3 4
  • 24. Generate an Amazon FPGA Image (AFI) FPGA Place-and-Route using Xilinx Vivado on C4 or M4 instance FPGA Logic Design using Xilinx Vivado on C4 or M4 instance Securely deploy AFI on one or more F1 instances Developing Applications for F1
  • 25. Choose and launch the AWS-provided FPGA Developer AMI, which includes all needed FPGA design and programming software, as well as the AWS FPGA Hardware Development Kit (HDK) Developing Applications for F1
  • 27. Use Xilinx Vivado or SCAccel software and a hardware description language (Verilog, VHDL, or OpenCL) with the HDK to describe and simulate your custom FPGA logic After successful simulation, use scripts provided with the HDK to encrypt, synthesize and place/route the FPGA logic to create a final FPGA Design Check Point (DCP) and generate a secure, encrypted Amazon FPGA Image (AFI) Developing Applications for F1
  • 28. Launch an F1 instance and download the AFI to the FPGA, using AFI management tools provided by AWS Generate an Amazon FPGA Image (AFI) Deploy AFI on one or more F1 instances Developing Applications for F1
  • 29. Amazon EC2 FPGA Deployment via Marketplace Amazon Machine Image (AMI) Amazon FPGA Image (AFI) AFI is secured, encrypted, dynamically loaded into the FPGA - can’t be copied or downloaded Customers AWS Marketplace Delivering FPGA Partner Solutions on AWS via AWS Marketplace
  • 30. Delivering FPGA Partner Solutions on AWS AWS Marketplace Benefits • Streamlined delivery of FPGA-accelerated solutions: Offer software as a managed Amazon Machine Image (AMI) and one or more Amazon FPGA Images (AFI), with secure 1-click purchasing. • Discover new customers: Allow customers to launch directly from AWS Marketplace, decreasing the length of sales cycles. Sellers can also offer free trials with no additional engineering effort. • Simplified billing & payments: Customers pay for AWS Marketplace software as part of the regular AWS billing cycle. AWS manages the complexity of AMI and AFI security, metering, billing, payment collection, and financial reporting. • Secure your FPGA-based products: FPGA custom logic is deployed to customers in a secure way, with no ability to view, copy, or edit the AFI logic. • Provide Seamless Product Support: AWS Marketplace Product Support Connection makes it easy to support your customers on AWS Marketplace.
  • 31. FPGA: A Field Programmable Gate Array is a device that consists of very large numbers of configurable logic and memory elements interconnected by configurable routing resources. FPGAs differ from CPUs and GPUs by having no fixed instruction set, and in their ability to implement operations and processes that are pipelined and parallelized in an almost unlimited number of ways, using arbitrarily sized bit-widths. AFI (Amazon FPGA Image): a file containing the binary image for an FPGA bitstream. Loading an AFI onto an FPGA “programs” that device, within seconds, to perform one of more application-specific functions. HDL (Hardware Description Language): a low-level programming language designed for describing logic functions for the purposed of simulation and for conversion (via synthesis) to an FPGA or ASIC. Vivado and SDAccel: a set of design tools produced by Xilinx (provider of the F1 FPGA devices) for development of FPGA logic, pre-integrated and provided at no charge by AWS. Verilog: a commonly-used HDL for FPGA design and simulation, supported by Vivado. VHDL: another commonly-used HDL for FPGA , also supported by Vivado. F1 Glossary
  • 32. OpenCL (Open Computing Language): a higher-level alternative to HDL programming based on C-language, and supported in the Xilinx SDAccel design tools. OpenCL can be used to target either FPGAs or GPUs. HDK (Hardware Development Kit): a set of tools, documentation, and associated FPGA libraries provided by AWS to assist FPGA developers with more rapid FPGA development, in particular to simplify the use of I/O from the FPGA to the host EC2 instance via PCIe, from FPGA to memory, and from FPGA to FPGA. AXI: an FPGA-internal bus format providing standardized interfaces for memory-mapped communications and for high-speed streaming data. AXI is used in the F1 HDK to define interfaces between AWS-provided interface logic, and custom logic provided by FPGA developers. Developer AMI: a preconfigured AMI, available in the AWS Marketplace, that includes all necessary software and libraries for FPGA development, including the Vivado software and the HDK libraries enabling HDL design and simulation. F1 Glossary (cont)
  • 33. Synthesis: the process, using software tools provided with Vivado, of converting an HDL or OpenCL application into a lower-level format (sometimes referred to as a “netlist”) representing the individual logic elements of the application, for example AND, OR, XOR gates, adders and multipliers, shift registers, etc. This “netlist” must be further processed, using place-and-route software, to create a downloadable bitstream. Place-and-Route: the process, using software tools provided with Vivado, of mapping individual logic elements to precise locations in the target FPGA, and specifying their interconnections. Place-and-route is an iterative process that can require hours to complete for larger applications and larger FPGAs. Bitstream: a binary format representing the synthesized, placed, and routed FPGA application ready for downloading to an FPGA. Design Check Point (DCP): a binary file format containing the FPGA bitstream, ready for ingestion during the creation of an Amazon FPGA Image (AFI). F1 Glossary (cont)
  • 34. Additional Resources AWS F1 details: https://aws.amazon.com/ec2/instance-types/f1/ AWS Marketplace: https://aws.amazon.com/marketplace/ AWS Educate: https://aws.amazon.com/education/awseducate/ Edico Genome: http://www.edicogenome.com/ NGCODEC: http://www.ngcodec.com Maxeler: http://www.maxeler.com/ Ryft: https://www.ryft.com