Top Banner
Next generation computing using FPGA’s A small what, why, how, intro into Field Programmable Gate Arrays By Rolf Huisman [email protected] @rlrhuisman
27

[Lightning talk] Next generation computing with fpga

Jan 07, 2017

Download

Software

Rolf Huisman
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: [Lightning talk] Next generation computing with fpga

NextgenerationcomputingusingFPGA’s

Asmallwhat,why,how,introintoFieldProgrammableGate

Arrays

[email protected]

@rlrhuisman

Page 2: [Lightning talk] Next generation computing with fpga

FPGA?A field-programmablegatearray (FPGA)isanintegratedcircuitdesignedtobeconfiguredbyacustomeroradesigneraftermanufacturing– hence"field-programmable”

Source:Wikipedia

Simplified:YoucancreateyourownprocessorWhyshouldonecare?

Page 3: [Lightning talk] Next generation computing with fpga

InnovationKeynoteIgnite2016

Title document 307-11-16

“But we not stopping there. We are now, taking those; neural nets, deep neural nets, convolution nets and asking ourselves; What if we can run them not just on cpu’s or gpu’s, what if we can run them on silicon ?”Satya Nadella

Source: Innovation Keynote Ignite 2016

Page 4: [Lightning talk] Next generation computing with fpga

InnovationKeynoteIgnite2016

Dough Burger

Source: Innovation Keynote Ignite 2016

Page 5: [Lightning talk] Next generation computing with fpga

FPGAarepowerfull24-core2.4Haswell <10Cpu cores+4FPGA’s

Source: Innovation Keynote Ignite 2016

Page 6: [Lightning talk] Next generation computing with fpga

LasttwoyearsatRolf’satticFPGAmeetsraspberrypi

Page 7: [Lightning talk] Next generation computing with fpga

PersonalPOCPensionCalculation50ktransactionspersecond

7x300Watts 1,89Watts+3,34Watts2100Watts 5,23Watts

Titledocument 707-11-16

Page 8: [Lightning talk] Next generation computing with fpga

WhatamIseeing?

RaspberryPI

MicroService

Page 9: [Lightning talk] Next generation computing with fpga

WhatamIseeing?

RaspberryPI FPGAShield

MicroService RAM

SPISerial Peripheral Interface

Page 10: [Lightning talk] Next generation computing with fpga

WhatamIseeing?

RaspberryPI FPGAShield

MicroService RAM

FPGAChip

MyProcessor

SPISerial Peripheral Interface

Page 11: [Lightning talk] Next generation computing with fpga

AndGate

A B Out0 0 01 0 00 1 01 1 1

OutANDAB

Page 12: [Lightning talk] Next generation computing with fpga

OrGate

A B Out0 0 01 0 10 1 11 1 1OutORA

B

ANDAB

Page 13: [Lightning talk] Next generation computing with fpga

(Multiplexer)MUX

Choosingbetweengates

ORAB

Out

ANDAB

S

S A B Out0 0 0 00 1 0 00 0 1 00 1 1 11 0 0 01 1 0 11 0 1 11 1 1 1

AND

OR

Page 14: [Lightning talk] Next generation computing with fpga

(Multiplexer)MUX

MuxGate

ORAB

ANDAB

S

Out

Page 15: [Lightning talk] Next generation computing with fpga

(Multiplexer)MUX

MuxGate

ORAB

ANDAB

S

Out

0

Page 16: [Lightning talk] Next generation computing with fpga

(Multiplexer)MUX

MuxGate

ORAB

ANDAB

S

Out

1

Page 17: [Lightning talk] Next generation computing with fpga

(Multiplexer)MUX

MuxGate

ORAB

ANDAB

S

OutThe selectors are part of the “Bitstream”This Bitstream is the configuration you write to you’re FPGA

That’s how you are configuring/building your own dedicated processor

Page 18: [Lightning talk] Next generation computing with fpga

RealityisabitmorecomplexInreality:GatesareLookUpTables(LUT)with5or6inputs,and2outputsFlip-Flops(Memorycells)RoutingFabric(LotofMultiplexerstoroutesignals)IOpinsconnectingtooutsideworld

AndalotI’llignorefornowSignalTimingsHeatingwithintheFPGAchipPowerconsumption…

Page 19: [Lightning talk] Next generation computing with fpga

Specifying/ProgrammingDirect– VHDL– Verilog– GateDiagrams

Indirect:– (HLS)C– Open-CL

VHDL of Blinking light (“Hello World”)

Page 20: [Lightning talk] Next generation computing with fpga

ConstraintsSpecifywhichpinsareconnected

SpecifyPackages

BGAQFP144

Page 21: [Lightning talk] Next generation computing with fpga

Synthesis,Mapping,Placing,RoutingAutomatic,Manual,orBoth

Specify

Can take weeks if very complex

Page 22: [Lightning talk] Next generation computing with fpga

GeneratingBitstream andupload

Page 23: [Lightning talk] Next generation computing with fpga

DebuggingHardwaresimulationsJTAGinterfaceOscilloscope

Page 24: [Lightning talk] Next generation computing with fpga

ConclusionFPGA’sisaveryinterestingtechnology– Powerful– EfficientFPGA’sisalsoadifficulttechnology– Steeplearningcurve– Synthesis,mapping,androutingcantakeages– Highlyparallelandphysicalinterferencemakesforfundebuggingsessions

– Physicalbehavior(Heatingofchip,chirp)Useabstractionslikeopen-clifyou'reableto

Titledocument 2407-11-16

Page 25: [Lightning talk] Next generation computing with fpga

Thanks

Page 26: [Lightning talk] Next generation computing with fpga

Spartan-6LX9~17$

715CLB’s9.152LUT6’S102IOPins*

*The XC6SLX9-2TQG144C only has 94 pins bonded

Page 27: [Lightning talk] Next generation computing with fpga

IncomparisontotheIgnitedemoStratix VD5,dependingontheversion:– Between300kand952kLUTS(Comparedto9kSpartan6-LX9)

– Between1K$and5K$(Comparedto17$Spartan6-LX9)

AndhehasfourofthemJ