SlideShare a Scribd company logo
1 of 9
EM083
BondMachine
Reconfigurable Computing
Mirko Mariotti,
Loriano Storchi,
Daniele Spiga
Dept of Physics and Geology – University of Perugia
INFN Perugia
EM083
• Create a computational system where hardware and
software are co-designed
• Guarantee the full exploitation of the FPGA hardware
capabilities
• Provide a user friendly abstraction
Objectives
• A dynamic computer architecture: adapting to specific
computational problems
Strategy
BondMachine (BM)
EM083
BM Computer Architecture Components
Connecting Processor (CP)
The atomic computing core
● Simple “register machines”
● Interconnected via special IO registers and
opcodes
● Local ROM and RAM
● Specialized with many customization
possibilities
● Building a Heterogeneous architecture with
Many cores in a single BM
Shared Object (SO)
Non-computing objects
● Objects like: memories, channels, barriers, pseudo
random generators. Etc..
● Shared possibly among CPs
● Used by CPs via extra instructions to allow
synchronization, storage, communication
EM083
BM computer
architecture
Handling
tools
FPGA
The
Bondgo
compiler
API for
specific
problems
The Ecosystem
Network Connector
EM083
Handling the BM computer architecture
The BM computer architecture is managed by a set of tools to:
• Build a specific architecture
• Modify a pre-existing architecture
• Simulate or Emulate the behavior
• Generate the Register Transfer Level (RTL) code
Processor Builder
(procbuilder)
Selects the single processor,
assemble and disassemble, saves
on disk as JSON, creates the RTL
code of a CP.
Simulation Framework
(simbox)
Simulates the behavior,
emulates a BM on a standard
Linux workstation.
BondMachine Builder
(bondmachine)
Connects CPs and SOs together in
custom topologies, loads and saves
on disk as JSON, create BM's RTL
code.
BondMachine
EM083
Bondgo: The BM compiler
High level GO source file
Assembly CP 0Assembly CP 0Assembly CP ...
Assembly CP 0
Assembly CP N-th
Compilation
Assembling and Binaries
CP 0
CP 2 CP ...
CP 3
CP N-th
CP 1
Architecture
creation
Interconnections
EM083
Ecosystem API
Mapping specific computational problems to BondMachines
Symbond
Map symbolic
mathematical expressions
to BM
Matrixwork
Basic matrix computation
Boolbond
Map boolean systems to
BM
tf2bm
Mapping TensorFlow
graphs to BMs
Neuralbond
Map neural networks to
BM
Evolutive BM
Evolutionary computing to
BMs
EM083
Clustering BondMachines
• The same logic existing among CPs have been extended to different BMs organized in
clusters.
• Custom protocols have been created for this purpose.
• FPGA based BMs, standard Linux Workstations and emulated BMs may join a cluster and
contribute to a single distributed computational problem.
EM083
Conclusion and Future work
• The result of this project is the construction of a computer architecture that is
not anymore a static constraint where computing occurs but its creation becomes
a part of the computing process, gaining computing power and flexibility
• Over this abstraction is it possible to create a full computing Ecosystem
• Keeping the register machine abstraction it is possible to borrow well known
languages and techniques to keep the programming simple
Future work:
• New instructions and SO
• Support for new interconnection
devices
Uses in Physics experiments:
• Real time pulse shape analysis in
neutron detectors
• Space experiments test beams

More Related Content

What's hot

Microkernels in the Era of Data-Centric Computing
Microkernels in the Era of Data-Centric ComputingMicrokernels in the Era of Data-Centric Computing
Microkernels in the Era of Data-Centric ComputingMartin Děcký
 
Deep learning: Hardware Landscape
Deep learning: Hardware LandscapeDeep learning: Hardware Landscape
Deep learning: Hardware LandscapeGrigory Sapunov
 
Design and Implementation of Quintuple Processor Architecture Using FPGA
Design and Implementation of Quintuple Processor Architecture Using FPGADesign and Implementation of Quintuple Processor Architecture Using FPGA
Design and Implementation of Quintuple Processor Architecture Using FPGAIJERA Editor
 
Smalltalk-80 : hardware and software
Smalltalk-80 : hardware and softwareSmalltalk-80 : hardware and software
Smalltalk-80 : hardware and softwareESUG
 
Towards Language-Oriented Modeling (HDR Defense)
Towards Language-Oriented Modeling (HDR Defense)Towards Language-Oriented Modeling (HDR Defense)
Towards Language-Oriented Modeling (HDR Defense)Benoit Combemale
 

What's hot (7)

Microkernels in the Era of Data-Centric Computing
Microkernels in the Era of Data-Centric ComputingMicrokernels in the Era of Data-Centric Computing
Microkernels in the Era of Data-Centric Computing
 
Deep learning: Hardware Landscape
Deep learning: Hardware LandscapeDeep learning: Hardware Landscape
Deep learning: Hardware Landscape
 
J044084349
J044084349J044084349
J044084349
 
Design and Implementation of Quintuple Processor Architecture Using FPGA
Design and Implementation of Quintuple Processor Architecture Using FPGADesign and Implementation of Quintuple Processor Architecture Using FPGA
Design and Implementation of Quintuple Processor Architecture Using FPGA
 
Smalltalk-80 : hardware and software
Smalltalk-80 : hardware and softwareSmalltalk-80 : hardware and software
Smalltalk-80 : hardware and software
 
Towards Language-Oriented Modeling (HDR Defense)
Towards Language-Oriented Modeling (HDR Defense)Towards Language-Oriented Modeling (HDR Defense)
Towards Language-Oriented Modeling (HDR Defense)
 
LPC4300_two_cores
LPC4300_two_coresLPC4300_two_cores
LPC4300_two_cores
 

Similar to BondMachine slides for the InnovateFPGA 2018 Grand Final

INFN ML FPGA Course 2022
INFN ML FPGA Course 2022INFN ML FPGA Course 2022
INFN ML FPGA Course 2022Mirko Mariotti
 
Error Permissive Computing
Error Permissive ComputingError Permissive Computing
Error Permissive ComputingRyousei Takano
 
High Performance Computer Architecture
High Performance Computer ArchitectureHigh Performance Computer Architecture
High Performance Computer ArchitectureSubhasis Dash
 
Project report on embedded system using 8051 microcontroller
Project  report on embedded system using 8051 microcontrollerProject  report on embedded system using 8051 microcontroller
Project report on embedded system using 8051 microcontrollerVandna Sambyal
 
ECML PKDD 2021 ML meets IoT Tutorial Part II: Creating ML based Self learning...
ECML PKDD 2021 ML meets IoT Tutorial Part II: Creating ML based Self learning...ECML PKDD 2021 ML meets IoT Tutorial Part II: Creating ML based Self learning...
ECML PKDD 2021 ML meets IoT Tutorial Part II: Creating ML based Self learning...Bharath Sudharsan
 
Hardware and Software Architectures for the CELL BROADBAND ENGINE processor
Hardware and Software Architectures for the CELL BROADBAND ENGINE processorHardware and Software Architectures for the CELL BROADBAND ENGINE processor
Hardware and Software Architectures for the CELL BROADBAND ENGINE processorSlide_N
 
CS304PC:Computer Organization and Architecture Session 31 Multiprogramming.pptx
CS304PC:Computer Organization and Architecture  Session 31 Multiprogramming.pptxCS304PC:Computer Organization and Architecture  Session 31 Multiprogramming.pptx
CS304PC:Computer Organization and Architecture Session 31 Multiprogramming.pptxAsst.prof M.Gokilavani
 
Industrial trends in heterogeneous and esoteric compute
Industrial trends in heterogeneous and esoteric computeIndustrial trends in heterogeneous and esoteric compute
Industrial trends in heterogeneous and esoteric computePerry Lea
 
How I Sped up Complex Matrix-Vector Multiplication: Finding Intel MKL's "S
How I Sped up Complex Matrix-Vector Multiplication: Finding Intel MKL's "SHow I Sped up Complex Matrix-Vector Multiplication: Finding Intel MKL's "S
How I Sped up Complex Matrix-Vector Multiplication: Finding Intel MKL's "SBrandon Liu
 
Ca lecture 03
Ca lecture 03Ca lecture 03
Ca lecture 03Haris456
 
Chrome server2 print_http_www_uni_mannheim_de_acm97_papers_soderquist_m_13736...
Chrome server2 print_http_www_uni_mannheim_de_acm97_papers_soderquist_m_13736...Chrome server2 print_http_www_uni_mannheim_de_acm97_papers_soderquist_m_13736...
Chrome server2 print_http_www_uni_mannheim_de_acm97_papers_soderquist_m_13736...Léia de Sousa
 
An assessment of internet of things protocols for constrain apps
An assessment of internet of things protocols for constrain appsAn assessment of internet of things protocols for constrain apps
An assessment of internet of things protocols for constrain appsPokala Sai
 
ECML PKDD 2021 ML meets IoT Tutorial Part III: Deep Optimizations of CNNs and...
ECML PKDD 2021 ML meets IoT Tutorial Part III: Deep Optimizations of CNNs and...ECML PKDD 2021 ML meets IoT Tutorial Part III: Deep Optimizations of CNNs and...
ECML PKDD 2021 ML meets IoT Tutorial Part III: Deep Optimizations of CNNs and...Bharath Sudharsan
 

Similar to BondMachine slides for the InnovateFPGA 2018 Grand Final (20)

INFN ML FPGA Course 2022
INFN ML FPGA Course 2022INFN ML FPGA Course 2022
INFN ML FPGA Course 2022
 
Error Permissive Computing
Error Permissive ComputingError Permissive Computing
Error Permissive Computing
 
High Performance Computer Architecture
High Performance Computer ArchitectureHigh Performance Computer Architecture
High Performance Computer Architecture
 
module01.ppt
module01.pptmodule01.ppt
module01.ppt
 
Project report on embedded system using 8051 microcontroller
Project  report on embedded system using 8051 microcontrollerProject  report on embedded system using 8051 microcontroller
Project report on embedded system using 8051 microcontroller
 
COA.pptx
COA.pptxCOA.pptx
COA.pptx
 
Grid computing
Grid computingGrid computing
Grid computing
 
ECML PKDD 2021 ML meets IoT Tutorial Part II: Creating ML based Self learning...
ECML PKDD 2021 ML meets IoT Tutorial Part II: Creating ML based Self learning...ECML PKDD 2021 ML meets IoT Tutorial Part II: Creating ML based Self learning...
ECML PKDD 2021 ML meets IoT Tutorial Part II: Creating ML based Self learning...
 
Hardware and Software Architectures for the CELL BROADBAND ENGINE processor
Hardware and Software Architectures for the CELL BROADBAND ENGINE processorHardware and Software Architectures for the CELL BROADBAND ENGINE processor
Hardware and Software Architectures for the CELL BROADBAND ENGINE processor
 
Ijetr042175
Ijetr042175Ijetr042175
Ijetr042175
 
CS304PC:Computer Organization and Architecture Session 31 Multiprogramming.pptx
CS304PC:Computer Organization and Architecture  Session 31 Multiprogramming.pptxCS304PC:Computer Organization and Architecture  Session 31 Multiprogramming.pptx
CS304PC:Computer Organization and Architecture Session 31 Multiprogramming.pptx
 
Industrial trends in heterogeneous and esoteric compute
Industrial trends in heterogeneous and esoteric computeIndustrial trends in heterogeneous and esoteric compute
Industrial trends in heterogeneous and esoteric compute
 
How I Sped up Complex Matrix-Vector Multiplication: Finding Intel MKL's "S
How I Sped up Complex Matrix-Vector Multiplication: Finding Intel MKL's "SHow I Sped up Complex Matrix-Vector Multiplication: Finding Intel MKL's "S
How I Sped up Complex Matrix-Vector Multiplication: Finding Intel MKL's "S
 
CSC204PPTNOTES
CSC204PPTNOTESCSC204PPTNOTES
CSC204PPTNOTES
 
Distributed Computing
Distributed ComputingDistributed Computing
Distributed Computing
 
Ca lecture 03
Ca lecture 03Ca lecture 03
Ca lecture 03
 
EEE226a.ppt
EEE226a.pptEEE226a.ppt
EEE226a.ppt
 
Chrome server2 print_http_www_uni_mannheim_de_acm97_papers_soderquist_m_13736...
Chrome server2 print_http_www_uni_mannheim_de_acm97_papers_soderquist_m_13736...Chrome server2 print_http_www_uni_mannheim_de_acm97_papers_soderquist_m_13736...
Chrome server2 print_http_www_uni_mannheim_de_acm97_papers_soderquist_m_13736...
 
An assessment of internet of things protocols for constrain apps
An assessment of internet of things protocols for constrain appsAn assessment of internet of things protocols for constrain apps
An assessment of internet of things protocols for constrain apps
 
ECML PKDD 2021 ML meets IoT Tutorial Part III: Deep Optimizations of CNNs and...
ECML PKDD 2021 ML meets IoT Tutorial Part III: Deep Optimizations of CNNs and...ECML PKDD 2021 ML meets IoT Tutorial Part III: Deep Optimizations of CNNs and...
ECML PKDD 2021 ML meets IoT Tutorial Part III: Deep Optimizations of CNNs and...
 

More from Mirko Mariotti

Course: "Introductory course to HLS FPGA programming"
Course: "Introductory course to HLS FPGA programming"Course: "Introductory course to HLS FPGA programming"
Course: "Introductory course to HLS FPGA programming"Mirko Mariotti
 
INFN Advanced ML Hackaton 2022 Talk
INFN Advanced ML Hackaton 2022 TalkINFN Advanced ML Hackaton 2022 Talk
INFN Advanced ML Hackaton 2022 TalkMirko Mariotti
 
Firmware Develpment for hybrid (ARM and FPGA) processors
Firmware Develpment for hybrid (ARM and FPGA) processorsFirmware Develpment for hybrid (ARM and FPGA) processors
Firmware Develpment for hybrid (ARM and FPGA) processorsMirko Mariotti
 
Short course on FPGA programming
Short course on FPGA programmingShort course on FPGA programming
Short course on FPGA programmingMirko Mariotti
 
Harvesting dispersed computational resources with Openstack
Harvesting dispersed computational resources with OpenstackHarvesting dispersed computational resources with Openstack
Harvesting dispersed computational resources with OpenstackMirko Mariotti
 
Pim - Un Esempio di integrazione AA dei servizi INFN/Universita'
Pim - Un Esempio di integrazione AA dei servizi INFN/Universita'Pim - Un Esempio di integrazione AA dei servizi INFN/Universita'
Pim - Un Esempio di integrazione AA dei servizi INFN/Universita'Mirko Mariotti
 
Xen - Esperienze a Perugia
Xen - Esperienze a PerugiaXen - Esperienze a Perugia
Xen - Esperienze a PerugiaMirko Mariotti
 

More from Mirko Mariotti (9)

Course: "Introductory course to HLS FPGA programming"
Course: "Introductory course to HLS FPGA programming"Course: "Introductory course to HLS FPGA programming"
Course: "Introductory course to HLS FPGA programming"
 
INFN SOSC 2022 Talk
INFN SOSC 2022 TalkINFN SOSC 2022 Talk
INFN SOSC 2022 Talk
 
INFN Advanced ML Hackaton 2022 Talk
INFN Advanced ML Hackaton 2022 TalkINFN Advanced ML Hackaton 2022 Talk
INFN Advanced ML Hackaton 2022 Talk
 
ICTP Workshop 2022
ICTP Workshop 2022ICTP Workshop 2022
ICTP Workshop 2022
 
Firmware Develpment for hybrid (ARM and FPGA) processors
Firmware Develpment for hybrid (ARM and FPGA) processorsFirmware Develpment for hybrid (ARM and FPGA) processors
Firmware Develpment for hybrid (ARM and FPGA) processors
 
Short course on FPGA programming
Short course on FPGA programmingShort course on FPGA programming
Short course on FPGA programming
 
Harvesting dispersed computational resources with Openstack
Harvesting dispersed computational resources with OpenstackHarvesting dispersed computational resources with Openstack
Harvesting dispersed computational resources with Openstack
 
Pim - Un Esempio di integrazione AA dei servizi INFN/Universita'
Pim - Un Esempio di integrazione AA dei servizi INFN/Universita'Pim - Un Esempio di integrazione AA dei servizi INFN/Universita'
Pim - Un Esempio di integrazione AA dei servizi INFN/Universita'
 
Xen - Esperienze a Perugia
Xen - Esperienze a PerugiaXen - Esperienze a Perugia
Xen - Esperienze a Perugia
 

Recently uploaded

Introduction to Serverless with AWS Lambda
Introduction to Serverless with AWS LambdaIntroduction to Serverless with AWS Lambda
Introduction to Serverless with AWS LambdaOmar Fathy
 
Design For Accessibility: Getting it right from the start
Design For Accessibility: Getting it right from the startDesign For Accessibility: Getting it right from the start
Design For Accessibility: Getting it right from the startQuintin Balsdon
 
Passive Air Cooling System and Solar Water Heater.ppt
Passive Air Cooling System and Solar Water Heater.pptPassive Air Cooling System and Solar Water Heater.ppt
Passive Air Cooling System and Solar Water Heater.pptamrabdallah9
 
INTERRUPT CONTROLLER 8259 MICROPROCESSOR
INTERRUPT CONTROLLER 8259 MICROPROCESSORINTERRUPT CONTROLLER 8259 MICROPROCESSOR
INTERRUPT CONTROLLER 8259 MICROPROCESSORTanishkaHira1
 
Electromagnetic relays used for power system .pptx
Electromagnetic relays used for power system .pptxElectromagnetic relays used for power system .pptx
Electromagnetic relays used for power system .pptxNANDHAKUMARA10
 
scipt v1.pptxcxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx...
scipt v1.pptxcxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx...scipt v1.pptxcxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx...
scipt v1.pptxcxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx...HenryBriggs2
 
Digital Communication Essentials: DPCM, DM, and ADM .pptx
Digital Communication Essentials: DPCM, DM, and ADM .pptxDigital Communication Essentials: DPCM, DM, and ADM .pptx
Digital Communication Essentials: DPCM, DM, and ADM .pptxpritamlangde
 
Worksharing and 3D Modeling with Revit.pptx
Worksharing and 3D Modeling with Revit.pptxWorksharing and 3D Modeling with Revit.pptx
Worksharing and 3D Modeling with Revit.pptxMustafa Ahmed
 
Unsatisfied Bhabhi ℂall Girls Ahmedabad Book Esha 6378878445 Top Class ℂall G...
Unsatisfied Bhabhi ℂall Girls Ahmedabad Book Esha 6378878445 Top Class ℂall G...Unsatisfied Bhabhi ℂall Girls Ahmedabad Book Esha 6378878445 Top Class ℂall G...
Unsatisfied Bhabhi ℂall Girls Ahmedabad Book Esha 6378878445 Top Class ℂall G...Payal Garg #K09
 
PE 459 LECTURE 2- natural gas basic concepts and properties
PE 459 LECTURE 2- natural gas basic concepts and propertiesPE 459 LECTURE 2- natural gas basic concepts and properties
PE 459 LECTURE 2- natural gas basic concepts and propertiessarkmank1
 
HOA1&2 - Module 3 - PREHISTORCI ARCHITECTURE OF KERALA.pptx
HOA1&2 - Module 3 - PREHISTORCI ARCHITECTURE OF KERALA.pptxHOA1&2 - Module 3 - PREHISTORCI ARCHITECTURE OF KERALA.pptx
HOA1&2 - Module 3 - PREHISTORCI ARCHITECTURE OF KERALA.pptxSCMS School of Architecture
 
Ground Improvement Technique: Earth Reinforcement
Ground Improvement Technique: Earth ReinforcementGround Improvement Technique: Earth Reinforcement
Ground Improvement Technique: Earth ReinforcementDr. Deepak Mudgal
 
Hospital management system project report.pdf
Hospital management system project report.pdfHospital management system project report.pdf
Hospital management system project report.pdfKamal Acharya
 
Compressing and Sparsifying LLM in GenAI Applications
Compressing and Sparsifying LLM in GenAI ApplicationsCompressing and Sparsifying LLM in GenAI Applications
Compressing and Sparsifying LLM in GenAI ApplicationsMFatihSIRA
 
1_Introduction + EAM Vocabulary + how to navigate in EAM.pdf
1_Introduction + EAM Vocabulary + how to navigate in EAM.pdf1_Introduction + EAM Vocabulary + how to navigate in EAM.pdf
1_Introduction + EAM Vocabulary + how to navigate in EAM.pdfAldoGarca30
 
Hostel management system project report..pdf
Hostel management system project report..pdfHostel management system project report..pdf
Hostel management system project report..pdfKamal Acharya
 
Computer Networks Basics of Network Devices
Computer Networks  Basics of Network DevicesComputer Networks  Basics of Network Devices
Computer Networks Basics of Network DevicesChandrakantDivate1
 
Introduction to Robotics in Mechanical Engineering.pptx
Introduction to Robotics in Mechanical Engineering.pptxIntroduction to Robotics in Mechanical Engineering.pptx
Introduction to Robotics in Mechanical Engineering.pptxhublikarsn
 

Recently uploaded (20)

Introduction to Serverless with AWS Lambda
Introduction to Serverless with AWS LambdaIntroduction to Serverless with AWS Lambda
Introduction to Serverless with AWS Lambda
 
Design For Accessibility: Getting it right from the start
Design For Accessibility: Getting it right from the startDesign For Accessibility: Getting it right from the start
Design For Accessibility: Getting it right from the start
 
Passive Air Cooling System and Solar Water Heater.ppt
Passive Air Cooling System and Solar Water Heater.pptPassive Air Cooling System and Solar Water Heater.ppt
Passive Air Cooling System and Solar Water Heater.ppt
 
INTERRUPT CONTROLLER 8259 MICROPROCESSOR
INTERRUPT CONTROLLER 8259 MICROPROCESSORINTERRUPT CONTROLLER 8259 MICROPROCESSOR
INTERRUPT CONTROLLER 8259 MICROPROCESSOR
 
Electromagnetic relays used for power system .pptx
Electromagnetic relays used for power system .pptxElectromagnetic relays used for power system .pptx
Electromagnetic relays used for power system .pptx
 
scipt v1.pptxcxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx...
scipt v1.pptxcxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx...scipt v1.pptxcxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx...
scipt v1.pptxcxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx...
 
Digital Communication Essentials: DPCM, DM, and ADM .pptx
Digital Communication Essentials: DPCM, DM, and ADM .pptxDigital Communication Essentials: DPCM, DM, and ADM .pptx
Digital Communication Essentials: DPCM, DM, and ADM .pptx
 
Worksharing and 3D Modeling with Revit.pptx
Worksharing and 3D Modeling with Revit.pptxWorksharing and 3D Modeling with Revit.pptx
Worksharing and 3D Modeling with Revit.pptx
 
Unsatisfied Bhabhi ℂall Girls Ahmedabad Book Esha 6378878445 Top Class ℂall G...
Unsatisfied Bhabhi ℂall Girls Ahmedabad Book Esha 6378878445 Top Class ℂall G...Unsatisfied Bhabhi ℂall Girls Ahmedabad Book Esha 6378878445 Top Class ℂall G...
Unsatisfied Bhabhi ℂall Girls Ahmedabad Book Esha 6378878445 Top Class ℂall G...
 
Integrated Test Rig For HTFE-25 - Neometrix
Integrated Test Rig For HTFE-25 - NeometrixIntegrated Test Rig For HTFE-25 - Neometrix
Integrated Test Rig For HTFE-25 - Neometrix
 
PE 459 LECTURE 2- natural gas basic concepts and properties
PE 459 LECTURE 2- natural gas basic concepts and propertiesPE 459 LECTURE 2- natural gas basic concepts and properties
PE 459 LECTURE 2- natural gas basic concepts and properties
 
HOA1&2 - Module 3 - PREHISTORCI ARCHITECTURE OF KERALA.pptx
HOA1&2 - Module 3 - PREHISTORCI ARCHITECTURE OF KERALA.pptxHOA1&2 - Module 3 - PREHISTORCI ARCHITECTURE OF KERALA.pptx
HOA1&2 - Module 3 - PREHISTORCI ARCHITECTURE OF KERALA.pptx
 
Ground Improvement Technique: Earth Reinforcement
Ground Improvement Technique: Earth ReinforcementGround Improvement Technique: Earth Reinforcement
Ground Improvement Technique: Earth Reinforcement
 
Hospital management system project report.pdf
Hospital management system project report.pdfHospital management system project report.pdf
Hospital management system project report.pdf
 
Compressing and Sparsifying LLM in GenAI Applications
Compressing and Sparsifying LLM in GenAI ApplicationsCompressing and Sparsifying LLM in GenAI Applications
Compressing and Sparsifying LLM in GenAI Applications
 
1_Introduction + EAM Vocabulary + how to navigate in EAM.pdf
1_Introduction + EAM Vocabulary + how to navigate in EAM.pdf1_Introduction + EAM Vocabulary + how to navigate in EAM.pdf
1_Introduction + EAM Vocabulary + how to navigate in EAM.pdf
 
Hostel management system project report..pdf
Hostel management system project report..pdfHostel management system project report..pdf
Hostel management system project report..pdf
 
Cara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak Hamil
Cara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak HamilCara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak Hamil
Cara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak Hamil
 
Computer Networks Basics of Network Devices
Computer Networks  Basics of Network DevicesComputer Networks  Basics of Network Devices
Computer Networks Basics of Network Devices
 
Introduction to Robotics in Mechanical Engineering.pptx
Introduction to Robotics in Mechanical Engineering.pptxIntroduction to Robotics in Mechanical Engineering.pptx
Introduction to Robotics in Mechanical Engineering.pptx
 

BondMachine slides for the InnovateFPGA 2018 Grand Final

  • 1. EM083 BondMachine Reconfigurable Computing Mirko Mariotti, Loriano Storchi, Daniele Spiga Dept of Physics and Geology – University of Perugia INFN Perugia
  • 2. EM083 • Create a computational system where hardware and software are co-designed • Guarantee the full exploitation of the FPGA hardware capabilities • Provide a user friendly abstraction Objectives • A dynamic computer architecture: adapting to specific computational problems Strategy BondMachine (BM)
  • 3. EM083 BM Computer Architecture Components Connecting Processor (CP) The atomic computing core ● Simple “register machines” ● Interconnected via special IO registers and opcodes ● Local ROM and RAM ● Specialized with many customization possibilities ● Building a Heterogeneous architecture with Many cores in a single BM Shared Object (SO) Non-computing objects ● Objects like: memories, channels, barriers, pseudo random generators. Etc.. ● Shared possibly among CPs ● Used by CPs via extra instructions to allow synchronization, storage, communication
  • 5. EM083 Handling the BM computer architecture The BM computer architecture is managed by a set of tools to: • Build a specific architecture • Modify a pre-existing architecture • Simulate or Emulate the behavior • Generate the Register Transfer Level (RTL) code Processor Builder (procbuilder) Selects the single processor, assemble and disassemble, saves on disk as JSON, creates the RTL code of a CP. Simulation Framework (simbox) Simulates the behavior, emulates a BM on a standard Linux workstation. BondMachine Builder (bondmachine) Connects CPs and SOs together in custom topologies, loads and saves on disk as JSON, create BM's RTL code.
  • 6. BondMachine EM083 Bondgo: The BM compiler High level GO source file Assembly CP 0Assembly CP 0Assembly CP ... Assembly CP 0 Assembly CP N-th Compilation Assembling and Binaries CP 0 CP 2 CP ... CP 3 CP N-th CP 1 Architecture creation Interconnections
  • 7. EM083 Ecosystem API Mapping specific computational problems to BondMachines Symbond Map symbolic mathematical expressions to BM Matrixwork Basic matrix computation Boolbond Map boolean systems to BM tf2bm Mapping TensorFlow graphs to BMs Neuralbond Map neural networks to BM Evolutive BM Evolutionary computing to BMs
  • 8. EM083 Clustering BondMachines • The same logic existing among CPs have been extended to different BMs organized in clusters. • Custom protocols have been created for this purpose. • FPGA based BMs, standard Linux Workstations and emulated BMs may join a cluster and contribute to a single distributed computational problem.
  • 9. EM083 Conclusion and Future work • The result of this project is the construction of a computer architecture that is not anymore a static constraint where computing occurs but its creation becomes a part of the computing process, gaining computing power and flexibility • Over this abstraction is it possible to create a full computing Ecosystem • Keeping the register machine abstraction it is possible to borrow well known languages and techniques to keep the programming simple Future work: • New instructions and SO • Support for new interconnection devices Uses in Physics experiments: • Real time pulse shape analysis in neutron detectors • Space experiments test beams