SlideShare a Scribd company logo
Gujarat Technological University
Ahmedabad
&
C-DAC, Pune
M.E (Electronics & Communication Engineering)
In
VLSI & Embedded System Design (sem-1)
En No-160930359011
Inter-Process Communication using
Pipes in FPGA-based Adaptive
Computing
Presented by
Mayur Shah
What is Inter Process Communication ?[1]
 Exchange of data between two or more separate, independent
processes/threads.
 Operating systems provide facilities/resources for inter-process
communications (IPC), such as message queues, semaphores, and
shared memory.
 Distributed computing systems make use of these facilities/resources to
provide application programming interface (API) which allows IPC to
be programmed at a higher level of abstraction. (e.g., send and
receive)
 Distributed computing requires information to be exchanged among
independent processes.
Figure Of Inter Process Communication
Process 1 Process 2
data
sender receiver
IPC Mechanisms
 Signals
 Pipes
 FIFOs
 Message Queue
 Shared memory
Purposes for IPC
 Data Transfer
 Sharing Data
 Event notification
 Resource Sharing and Synchronization
 Process Control
What is pipe?
Pipe which allow transfer data between processes in First in-
First-out manner.
A pipe is usually realized in memory.
Pipe operations are memory operations.
Create a Pipeline
 Sometimes useful to connect a set of processes in a pipeline.
Process
c
Process
D
PipePipe
Process A writes to pipe AB, Process B reads from AB and
writes to BC
Process C reads from BC and writes to CD …..
Field Programmable Gate Array
 It is primarily a semiconductor device that can be configured by the
user (customer or designer) after the manufacturing process has been
completed
 The term "field-programmable" means the device is programmed by
the customer, not the manufacturer.
 Can be programmed using a logic circuit diagram or source code in
VHDL or Verilog.
 It offers partial re-configuration of a portion of design.
General Figure of FPGA
 Logic blocks
 to implement combinational
and sequential logic
 Interconnect
 wires to connect inputs and
outputs to logic blocks
 I/O blocks
 special logic blocks at periphery
of device for external connections
Adaptive Computing
Adaptive computing refers to the capability of a computing system
to adapt one or more of its properties (e.g. performance) during
runtime.
There are diverse reasons of why it is advantageous for a computing
system to adapt during runtime and there are various enabling
techniques and paradigms that allow a computing system to perform
such an adaptation.
Now We starting our main topic ………….
Inter-Process Communication using Pipes in FPGA-based
Adaptive Computing
Abstract:-
In FPGA-based adaptive computing, Inter-Process Communications
(IPC) are required to exchange information among hardware processes
which time multiplex the resources in a same reconfigurable region.
 Adaptive computing based on FPGA Partial Reconfiguration (PR)
technologie tailors various computation algorithmes to ambient
conditions during system run-time. It intelligently manages on-chip
computing resources and improves their utilization efficiency .
 In contrast to conventional static configuration of FPGAs, PR
provides the technical support for changing only a particular section
of an FPGA design, while the remaining system is still in operation.
Analogous to software multiprogramming on CPUs, the PR
technology enables multitasking on limited FPGA resources by
dynamically configuring or unloading processing modules according
to computation requirements. In this context, each processing module
is treated as a hardware process for one specific algorithm.
Now Introduction
IPC QUEING MODEL
Static Process Model
Pipes and FIFOs (Also called named pipes. We use pipe as the general name.)
are a basic IPC mechanism provided in all flavors of Unix OSes. They are best
suited to implement producer-consumer interactions among processes.
A pipe is a unidirectional channel: All data written by a process to the pipe is
routed by the OS kernel to another process which can thus read it .In FPGA-based
designs, hardware pipes behave in an analogous manner as the software ones in
Oses.
(Figure 1) shows consecutive pipe communications between algorithm
modules. Conventionally all algorithm processors or algorithm steps are
statically placed on the FPGA fabric. They work in parallel to process
their respective input data streams, possibly generate output results, and
pass IPC information to the next computation stage. In this model,
intermediate pipes with buffering capability decouple and coordinate
producers and consumers, if they do not generate and consume data at the
same pace.
Re-configurable Process Model
In adaptive computing scenarios in which multiple algorithm processors or
algorithm steps timeshare the same resources in one PR Region (PRR), pipes can
be used to bridge the communication of two modules activated at different time.
In Figure 2, a reconfigurable design is demonstrated with the same dataflow as
the static algorithm placement shown in Figure 1: Algorithm modules are
sequentially loaded into the PR region for a period of time. They read and
consume data from the previous-stage pipe, and store the generated inter-module
information in the current-stage pipe for next-stage computation. For example
after activated, algorithm A1 reads IPC packets of A0 from pipe0, and
passinformation to A2 via pipe1.
• Pipes can be implemented with
• BRAM on Xilinx Virtex-4 FPGA
• External DDR memory
M. Liu, Z. Lu, W. Kuehn, S. Yang, and A. Jantsch,
"A Reconfigurable Design Framework for FPGA
Adaptive Computing“, ReConFig’09.
HARDWARE IMPLEMENTATION
DDR_pipe:
The complete system architecture
FPGA adaptive computing [1]
• Embedded microprocessor
(scheduler)
• Memory (partial bitstream storage)
• HWICAP for PR
Conclusion
The latency of IPC packets is expected to be reduced with
more intelligent mechanisms, and to be properly coordinated
with throughput requirements in realtime applications.
Reference
.1. ipc using pipe in fpga adtive computing
https://www.google.com.sg/url?sa=t&rct=j&q=&esrc=s&source=web&cd=2&cad=rja&uact=8&ved=0ahUKEwivuNm46tX
PAhVMNY8KHU3cBt8QFggiMAE&url=http%3A%2F%2Fpeople.kth.se%2F~mingliu%2Fpublications%2Fisvlsi.pdf&usg=
AFQjCNHrXxzujLetB6rt_lVIcY5Be53bVw&sig2=QknRCLRS3W8mus0v3vJLig&bvm=bv.135475266,d.c2I
2. ipc
https://www.google.com.sg/url?sa=t&rct=j&q=&esrc=s&source=web&cd=1&cad=rja&uact=8&sqi=2&ved=0ahUKEwi6wp-
d69XPAhVELI8KHWhgDaoQFggaMAA&url=http%3A%2F%2Fcs.gmu.edu%2F~yhwang1%2FSWE622%2FSlides%2FIP
C.ppt&usg=AFQjCNEmVM6Hulc8KHty_Ws4_d25fp5Hig&sig2=hGeYLuamFJGVZD4D0C0yMA&bvm=bv.135475266,d.c
2I
3. ipc using pipe
https://www.google.com.sg/url?sa=t&rct=j&q=&esrc=s&source=web&cd=2&cad=rja&uact=8&ved=0ahUKEwiu79bH69X
PAhXDtI8KHQbMB8sQFgggMAE&url=http%3A%2F%2Fwww.cs.fsu.edu%2F~xyuan%2Fcop4610%2Flecture_6_osinte
rface4.ppt&usg=AFQjCNH9xpXqX1FLfvCPiDcHFz3KnGhEZQ&sig2=PRFlyBr8RnehonF4TCelVA&bvm=bv.135475266,d.
c2I
3.2
https://www.google.com.sg/url?sa=t&rct=j&q=&esrc=s&source=web&cd=2&cad=rja&uact=8&ved=0ahUKEwiu79bH69X
PAhXDtI8KHQbMB8sQFgggMAE&url=http%3A%2F%2Fwww.cs.fsu.edu%2F~xyuan%2Fcop4610%2Flecture_6_osinte
rface4.ppt&usg=AFQjCNH9xpXqX1FLfvCPiDcHFz3KnGhEZQ&sig2=PRFlyBr8RnehonF4TCelVA&bvm=bv.135475266,d.
c2I
4. adptive computing
https://www.google.com.sg/url?sa=t&rct=j&q=&esrc=s&source=web&cd=4&cad=rja&uact=8&ved=0ahUKEwiH8_L959X
PAhUBsY8KHeeSAAYQFgg5MAM&url=http%3A%2F%2Fwww.diva-
portal.org%2Fsmash%2Fget%2Fdiva2%3A418205%2FFULLTEXT01.pdfAdaptive&usg=AFQjCNFvnAiqgy6XEdUTifSQ
mdGJdIijtQ&sig2=uriWwwdTeAfmcub9ISpXtg

More Related Content

What's hot

Chapter 4 a interprocess communication
Chapter 4 a interprocess communicationChapter 4 a interprocess communication
Chapter 4 a interprocess communicationAbDul ThaYyal
 
Inter Process Communication Presentation[1]
Inter Process Communication Presentation[1]Inter Process Communication Presentation[1]
Inter Process Communication Presentation[1]Ravindra Raju Kolahalam
 
IPC mechanisms in windows
IPC mechanisms in windowsIPC mechanisms in windows
IPC mechanisms in windows
Vinoth Raj
 
Cs704 d distributedmutualexcclusion&memory
Cs704 d distributedmutualexcclusion&memoryCs704 d distributedmutualexcclusion&memory
Cs704 d distributedmutualexcclusion&memory
Debasis Das
 
Inter process communication
Inter process communicationInter process communication
Inter process communication
RJ Mehul Gadhiya
 
Interprocess Communication
Interprocess CommunicationInterprocess Communication
Interprocess Communication
Deepak H L
 
IPC
IPCIPC
NTP Software Jan 2012 Monthly Meeting IPC Presentation
NTP Software Jan 2012 Monthly Meeting IPC PresentationNTP Software Jan 2012 Monthly Meeting IPC Presentation
NTP Software Jan 2012 Monthly Meeting IPC Presentation
Muhamad Hesham
 
Message queues
Message queuesMessage queues
Message queues
talktorohit54
 
Inter Process Communication
Inter Process CommunicationInter Process Communication
Inter Process Communication
Adeel Rasheed
 
Lecture 6 -_presentation_layer
Lecture 6 -_presentation_layerLecture 6 -_presentation_layer
Lecture 6 -_presentation_layer
Serious_SamSoul
 
IPC
IPCIPC
User datagram protocol (udp)
User datagram protocol (udp)User datagram protocol (udp)
User datagram protocol (udp)
Ramola Dhande
 
Multi-Core on Chip Architecture *doc - IK
Multi-Core on Chip Architecture *doc - IKMulti-Core on Chip Architecture *doc - IK
Multi-Core on Chip Architecture *doc - IK
Ilgın Kavaklıoğulları
 
Point-to-Point Communicationsin MPI
Point-to-Point Communicationsin MPIPoint-to-Point Communicationsin MPI
Point-to-Point Communicationsin MPI
Hanif Durad
 
socket programming
socket programming socket programming
socket programming
prashantzagade
 
Introduction to TCP/IP
Introduction to TCP/IPIntroduction to TCP/IP
Introduction to TCP/IP
Frank Fang Kuo Yu
 

What's hot (19)

Chapter 4 a interprocess communication
Chapter 4 a interprocess communicationChapter 4 a interprocess communication
Chapter 4 a interprocess communication
 
Inter Process Communication Presentation[1]
Inter Process Communication Presentation[1]Inter Process Communication Presentation[1]
Inter Process Communication Presentation[1]
 
IPC mechanisms in windows
IPC mechanisms in windowsIPC mechanisms in windows
IPC mechanisms in windows
 
Ipc ppt
Ipc pptIpc ppt
Ipc ppt
 
Cs704 d distributedmutualexcclusion&memory
Cs704 d distributedmutualexcclusion&memoryCs704 d distributedmutualexcclusion&memory
Cs704 d distributedmutualexcclusion&memory
 
Inter process communication
Inter process communicationInter process communication
Inter process communication
 
Interprocess Communication
Interprocess CommunicationInterprocess Communication
Interprocess Communication
 
IPC
IPCIPC
IPC
 
NTP Software Jan 2012 Monthly Meeting IPC Presentation
NTP Software Jan 2012 Monthly Meeting IPC PresentationNTP Software Jan 2012 Monthly Meeting IPC Presentation
NTP Software Jan 2012 Monthly Meeting IPC Presentation
 
Message queues
Message queuesMessage queues
Message queues
 
Inter Process Communication
Inter Process CommunicationInter Process Communication
Inter Process Communication
 
Lecture 6 -_presentation_layer
Lecture 6 -_presentation_layerLecture 6 -_presentation_layer
Lecture 6 -_presentation_layer
 
IPC
IPCIPC
IPC
 
User datagram protocol (udp)
User datagram protocol (udp)User datagram protocol (udp)
User datagram protocol (udp)
 
Multi-Core on Chip Architecture *doc - IK
Multi-Core on Chip Architecture *doc - IKMulti-Core on Chip Architecture *doc - IK
Multi-Core on Chip Architecture *doc - IK
 
Point-to-Point Communicationsin MPI
Point-to-Point Communicationsin MPIPoint-to-Point Communicationsin MPI
Point-to-Point Communicationsin MPI
 
socket programming
socket programming socket programming
socket programming
 
Introduction to TCP/IP
Introduction to TCP/IPIntroduction to TCP/IP
Introduction to TCP/IP
 
Chapter 9 names
Chapter 9 namesChapter 9 names
Chapter 9 names
 

Viewers also liked

Remote method invocation (as part of the the PTT lecture)
Remote method invocation (as part of the the PTT lecture)Remote method invocation (as part of the the PTT lecture)
Remote method invocation (as part of the the PTT lecture)Ralf Laemmel
 
Remote Method Invocation
Remote Method InvocationRemote Method Invocation
Remote Method Invocationelliando dias
 
Remote method invocation
Remote method invocationRemote method invocation
Remote method invocation
Dew Shishir
 
Inter-Process Communication in distributed systems
Inter-Process Communication in distributed systemsInter-Process Communication in distributed systems
Inter-Process Communication in distributed systems
Aya Mahmoud
 
Introduction to C++ Remote Procedure Call (RPC)
Introduction to C++ Remote Procedure Call (RPC)Introduction to C++ Remote Procedure Call (RPC)
Introduction to C++ Remote Procedure Call (RPC)Abdelrahman Al-Ogail
 
Java rmi
Java rmiJava rmi
Java rmi
Tanmoy Barman
 
RPC: Remote procedure call
RPC: Remote procedure callRPC: Remote procedure call
RPC: Remote procedure call
Sunita Sahu
 
RMI
RMIRMI
Introduction to Remote Method Invocation (RMI)
Introduction to Remote Method Invocation (RMI)Introduction to Remote Method Invocation (RMI)
Introduction to Remote Method Invocation (RMI)
eLink Business Innovations
 
Java rmi
Java rmiJava rmi
Java rmi
kamal kotecha
 
Socket System Calls
Socket System CallsSocket System Calls
Socket System Calls
Avinash Varma Kalidindi
 
Remote Method Invocation (RMI)
Remote Method Invocation (RMI)Remote Method Invocation (RMI)
Remote Method Invocation (RMI)
Peter R. Egli
 
Java RMI Presentation
Java RMI PresentationJava RMI Presentation
Java RMI Presentation
Masud Rahman
 
Network Sockets
Network SocketsNetwork Sockets
Network Sockets
Peter R. Egli
 
remote procedure calls
  remote procedure calls  remote procedure calls
remote procedure callsAshish Kumar
 
Java rmi example program with code
Java rmi example program with codeJava rmi example program with code
Java rmi example program with codekamal kotecha
 
Piping Training course-How to be an Expert in Pipe & Fittings for Oil & Gas c...
Piping Training course-How to be an Expert in Pipe & Fittings for Oil & Gas c...Piping Training course-How to be an Expert in Pipe & Fittings for Oil & Gas c...
Piping Training course-How to be an Expert in Pipe & Fittings for Oil & Gas c...
Varun Patel
 
Java - Remote method invocation
Java - Remote method invocationJava - Remote method invocation
Java - Remote method invocation
Riccardo Cardin
 

Viewers also liked (20)

IPC SOCKET
IPC SOCKETIPC SOCKET
IPC SOCKET
 
Remote method invocation (as part of the the PTT lecture)
Remote method invocation (as part of the the PTT lecture)Remote method invocation (as part of the the PTT lecture)
Remote method invocation (as part of the the PTT lecture)
 
Remote Method Invocation
Remote Method InvocationRemote Method Invocation
Remote Method Invocation
 
Remote method invocation
Remote method invocationRemote method invocation
Remote method invocation
 
Inter-Process Communication in distributed systems
Inter-Process Communication in distributed systemsInter-Process Communication in distributed systems
Inter-Process Communication in distributed systems
 
Introduction to C++ Remote Procedure Call (RPC)
Introduction to C++ Remote Procedure Call (RPC)Introduction to C++ Remote Procedure Call (RPC)
Introduction to C++ Remote Procedure Call (RPC)
 
Java rmi
Java rmiJava rmi
Java rmi
 
RPC: Remote procedure call
RPC: Remote procedure callRPC: Remote procedure call
RPC: Remote procedure call
 
RMI
RMIRMI
RMI
 
Introduction to Remote Method Invocation (RMI)
Introduction to Remote Method Invocation (RMI)Introduction to Remote Method Invocation (RMI)
Introduction to Remote Method Invocation (RMI)
 
Java rmi
Java rmiJava rmi
Java rmi
 
Socket System Calls
Socket System CallsSocket System Calls
Socket System Calls
 
Remote Method Invocation (RMI)
Remote Method Invocation (RMI)Remote Method Invocation (RMI)
Remote Method Invocation (RMI)
 
Java RMI Presentation
Java RMI PresentationJava RMI Presentation
Java RMI Presentation
 
Network Sockets
Network SocketsNetwork Sockets
Network Sockets
 
remote procedure calls
  remote procedure calls  remote procedure calls
remote procedure calls
 
Java rmi example program with code
Java rmi example program with codeJava rmi example program with code
Java rmi example program with code
 
Inter Process Communication
Inter Process CommunicationInter Process Communication
Inter Process Communication
 
Piping Training course-How to be an Expert in Pipe & Fittings for Oil & Gas c...
Piping Training course-How to be an Expert in Pipe & Fittings for Oil & Gas c...Piping Training course-How to be an Expert in Pipe & Fittings for Oil & Gas c...
Piping Training course-How to be an Expert in Pipe & Fittings for Oil & Gas c...
 
Java - Remote method invocation
Java - Remote method invocationJava - Remote method invocation
Java - Remote method invocation
 

Similar to Inter-Process communication using pipe in FPGA based adaptive communication

High speed customized serial protocol for IP integration on FPGA based SOC ap...
High speed customized serial protocol for IP integration on FPGA based SOC ap...High speed customized serial protocol for IP integration on FPGA based SOC ap...
High speed customized serial protocol for IP integration on FPGA based SOC ap...
IJMER
 
A NETWORK-BASED DAC OPTIMIZATION PROTOTYPE SOFTWARE 2 (1).pdf
A NETWORK-BASED DAC OPTIMIZATION PROTOTYPE SOFTWARE 2 (1).pdfA NETWORK-BASED DAC OPTIMIZATION PROTOTYPE SOFTWARE 2 (1).pdf
A NETWORK-BASED DAC OPTIMIZATION PROTOTYPE SOFTWARE 2 (1).pdf
SaiReddy794166
 
Programmable logic controller performance enhancement by field programmable g...
Programmable logic controller performance enhancement by field programmable g...Programmable logic controller performance enhancement by field programmable g...
Programmable logic controller performance enhancement by field programmable g...
ISA Interchange
 
Automatically partitioning packet processing applications for pipelined archi...
Automatically partitioning packet processing applications for pipelined archi...Automatically partitioning packet processing applications for pipelined archi...
Automatically partitioning packet processing applications for pipelined archi...
Ashley Carter
 
Avionics Paperdoc
Avionics PaperdocAvionics Paperdoc
Avionics Paperdoc
Falascoj
 
Spie2006 Paperpdf
Spie2006 PaperpdfSpie2006 Paperpdf
Spie2006 Paperpdf
Falascoj
 
Fpga lecture
Fpga lectureFpga lecture
Fpga lecture
Zhwan Rashid
 
Design And Verification of AMBA APB Protocol
Design And Verification of AMBA APB ProtocolDesign And Verification of AMBA APB Protocol
Design And Verification of AMBA APB Protocol
IJERA Editor
 
A STUDY OF AN ENTRENCHED SYSTEM USING INTERNET OF THINGS
A STUDY OF AN ENTRENCHED SYSTEM USING INTERNET OF THINGSA STUDY OF AN ENTRENCHED SYSTEM USING INTERNET OF THINGS
A STUDY OF AN ENTRENCHED SYSTEM USING INTERNET OF THINGS
International Journal of Technical Research & Application
 
Convolution
ConvolutionConvolution
Convolution
sridharbommu
 
Fpg as 11 body
Fpg as 11 bodyFpg as 11 body
Fpg as 11 body
Rameez Raja
 
Nt1310 Unit 5 Algorithm
Nt1310 Unit 5 AlgorithmNt1310 Unit 5 Algorithm
Nt1310 Unit 5 Algorithm
Angie Lee
 
UNIT 1 SONCA.pptx
UNIT 1 SONCA.pptxUNIT 1 SONCA.pptx
UNIT 1 SONCA.pptx
mohan134666
 
DESIGN AND ANALYSIS OF A 32-BIT PIPELINED MIPS RISC PROCESSOR
DESIGN AND ANALYSIS OF A 32-BIT PIPELINED MIPS RISC PROCESSORDESIGN AND ANALYSIS OF A 32-BIT PIPELINED MIPS RISC PROCESSOR
DESIGN AND ANALYSIS OF A 32-BIT PIPELINED MIPS RISC PROCESSOR
VLSICS Design
 
Design and Analysis of A 32-bit Pipelined MIPS Risc Processor
Design and Analysis of A 32-bit Pipelined MIPS Risc ProcessorDesign and Analysis of A 32-bit Pipelined MIPS Risc Processor
Design and Analysis of A 32-bit Pipelined MIPS Risc Processor
VLSICS Design
 
DESIGN AND ANALYSIS OF A 32-BIT PIPELINED MIPS RISC PROCESSOR
DESIGN AND ANALYSIS OF A 32-BIT PIPELINED MIPS RISC PROCESSORDESIGN AND ANALYSIS OF A 32-BIT PIPELINED MIPS RISC PROCESSOR
DESIGN AND ANALYSIS OF A 32-BIT PIPELINED MIPS RISC PROCESSOR
VLSICS Design
 
Conference Paper: Universal Node: Towards a high-performance NFV environment
Conference Paper: Universal Node: Towards a high-performance NFV environmentConference Paper: Universal Node: Towards a high-performance NFV environment
Conference Paper: Universal Node: Towards a high-performance NFV environment
Ericsson
 

Similar to Inter-Process communication using pipe in FPGA based adaptive communication (20)

High speed customized serial protocol for IP integration on FPGA based SOC ap...
High speed customized serial protocol for IP integration on FPGA based SOC ap...High speed customized serial protocol for IP integration on FPGA based SOC ap...
High speed customized serial protocol for IP integration on FPGA based SOC ap...
 
A NETWORK-BASED DAC OPTIMIZATION PROTOTYPE SOFTWARE 2 (1).pdf
A NETWORK-BASED DAC OPTIMIZATION PROTOTYPE SOFTWARE 2 (1).pdfA NETWORK-BASED DAC OPTIMIZATION PROTOTYPE SOFTWARE 2 (1).pdf
A NETWORK-BASED DAC OPTIMIZATION PROTOTYPE SOFTWARE 2 (1).pdf
 
Programmable logic controller performance enhancement by field programmable g...
Programmable logic controller performance enhancement by field programmable g...Programmable logic controller performance enhancement by field programmable g...
Programmable logic controller performance enhancement by field programmable g...
 
Automatically partitioning packet processing applications for pipelined archi...
Automatically partitioning packet processing applications for pipelined archi...Automatically partitioning packet processing applications for pipelined archi...
Automatically partitioning packet processing applications for pipelined archi...
 
Avionics Paperdoc
Avionics PaperdocAvionics Paperdoc
Avionics Paperdoc
 
Streams on wires
Streams on wiresStreams on wires
Streams on wires
 
Spie2006 Paperpdf
Spie2006 PaperpdfSpie2006 Paperpdf
Spie2006 Paperpdf
 
Fpga lecture
Fpga lectureFpga lecture
Fpga lecture
 
Design And Verification of AMBA APB Protocol
Design And Verification of AMBA APB ProtocolDesign And Verification of AMBA APB Protocol
Design And Verification of AMBA APB Protocol
 
A STUDY OF AN ENTRENCHED SYSTEM USING INTERNET OF THINGS
A STUDY OF AN ENTRENCHED SYSTEM USING INTERNET OF THINGSA STUDY OF AN ENTRENCHED SYSTEM USING INTERNET OF THINGS
A STUDY OF AN ENTRENCHED SYSTEM USING INTERNET OF THINGS
 
Convolution
ConvolutionConvolution
Convolution
 
chameleon chip
chameleon chipchameleon chip
chameleon chip
 
Fpg as 11 body
Fpg as 11 bodyFpg as 11 body
Fpg as 11 body
 
Nt1310 Unit 5 Algorithm
Nt1310 Unit 5 AlgorithmNt1310 Unit 5 Algorithm
Nt1310 Unit 5 Algorithm
 
UNIT 1 SONCA.pptx
UNIT 1 SONCA.pptxUNIT 1 SONCA.pptx
UNIT 1 SONCA.pptx
 
1
11
1
 
DESIGN AND ANALYSIS OF A 32-BIT PIPELINED MIPS RISC PROCESSOR
DESIGN AND ANALYSIS OF A 32-BIT PIPELINED MIPS RISC PROCESSORDESIGN AND ANALYSIS OF A 32-BIT PIPELINED MIPS RISC PROCESSOR
DESIGN AND ANALYSIS OF A 32-BIT PIPELINED MIPS RISC PROCESSOR
 
Design and Analysis of A 32-bit Pipelined MIPS Risc Processor
Design and Analysis of A 32-bit Pipelined MIPS Risc ProcessorDesign and Analysis of A 32-bit Pipelined MIPS Risc Processor
Design and Analysis of A 32-bit Pipelined MIPS Risc Processor
 
DESIGN AND ANALYSIS OF A 32-BIT PIPELINED MIPS RISC PROCESSOR
DESIGN AND ANALYSIS OF A 32-BIT PIPELINED MIPS RISC PROCESSORDESIGN AND ANALYSIS OF A 32-BIT PIPELINED MIPS RISC PROCESSOR
DESIGN AND ANALYSIS OF A 32-BIT PIPELINED MIPS RISC PROCESSOR
 
Conference Paper: Universal Node: Towards a high-performance NFV environment
Conference Paper: Universal Node: Towards a high-performance NFV environmentConference Paper: Universal Node: Towards a high-performance NFV environment
Conference Paper: Universal Node: Towards a high-performance NFV environment
 

Recently uploaded

一比一原版(YU毕业证)约克大学毕业证如何办理
一比一原版(YU毕业证)约克大学毕业证如何办理一比一原版(YU毕业证)约克大学毕业证如何办理
一比一原版(YU毕业证)约克大学毕业证如何办理
yuhofha
 
135. Reviewer Certificate in Journal of Engineering
135. Reviewer Certificate in Journal of Engineering135. Reviewer Certificate in Journal of Engineering
135. Reviewer Certificate in Journal of Engineering
Manu Mitra
 
太阳城娱乐-太阳城娱乐推荐-太阳城娱乐官方网站| 立即访问【ac123.net】
太阳城娱乐-太阳城娱乐推荐-太阳城娱乐官方网站| 立即访问【ac123.net】太阳城娱乐-太阳城娱乐推荐-太阳城娱乐官方网站| 立即访问【ac123.net】
太阳城娱乐-太阳城娱乐推荐-太阳城娱乐官方网站| 立即访问【ac123.net】
foismail170
 
How Mentoring Elevates Your PM Career | PMI Silver Spring Chapter
How Mentoring Elevates Your PM Career | PMI Silver Spring ChapterHow Mentoring Elevates Your PM Career | PMI Silver Spring Chapter
How Mentoring Elevates Your PM Career | PMI Silver Spring Chapter
Hector Del Castillo, CPM, CPMM
 
han han widi kembar tapi beda han han dan widi kembar tapi sama
han han widi kembar tapi beda han han dan widi kembar tapi samahan han widi kembar tapi beda han han dan widi kembar tapi sama
han han widi kembar tapi beda han han dan widi kembar tapi sama
IrlanMalik
 
Full Sail_Morales_Michael_SMM_2024-05.pptx
Full Sail_Morales_Michael_SMM_2024-05.pptxFull Sail_Morales_Michael_SMM_2024-05.pptx
Full Sail_Morales_Michael_SMM_2024-05.pptx
mmorales2173
 
原版制作(RMIT毕业证书)墨尔本皇家理工大学毕业证在读证明一模一样
原版制作(RMIT毕业证书)墨尔本皇家理工大学毕业证在读证明一模一样原版制作(RMIT毕业证书)墨尔本皇家理工大学毕业证在读证明一模一样
原版制作(RMIT毕业证书)墨尔本皇家理工大学毕业证在读证明一模一样
atwvhyhm
 
Andrea Kate Portfolio Presentation.pdf
Andrea Kate  Portfolio  Presentation.pdfAndrea Kate  Portfolio  Presentation.pdf
Andrea Kate Portfolio Presentation.pdf
andreakaterasco
 
欧洲杯买球平台-欧洲杯买球平台推荐-欧洲杯买球平台| 立即访问【ac123.net】
欧洲杯买球平台-欧洲杯买球平台推荐-欧洲杯买球平台| 立即访问【ac123.net】欧洲杯买球平台-欧洲杯买球平台推荐-欧洲杯买球平台| 立即访问【ac123.net】
欧洲杯买球平台-欧洲杯买球平台推荐-欧洲杯买球平台| 立即访问【ac123.net】
foismail170
 
RECOGNITION AWARD 13 - TO ALESSANDRO MARTINS.pdf
RECOGNITION AWARD 13 - TO ALESSANDRO MARTINS.pdfRECOGNITION AWARD 13 - TO ALESSANDRO MARTINS.pdf
RECOGNITION AWARD 13 - TO ALESSANDRO MARTINS.pdf
AlessandroMartins454470
 
Luke Royak's Personal Brand Exploration!
Luke Royak's Personal Brand Exploration!Luke Royak's Personal Brand Exploration!
Luke Royak's Personal Brand Exploration!
LukeRoyak
 
Personal Brand exploration KE.pdf for assignment
Personal Brand exploration KE.pdf for assignmentPersonal Brand exploration KE.pdf for assignment
Personal Brand exploration KE.pdf for assignment
ragingokie
 
134. Reviewer Certificate in Computer Science
134. Reviewer Certificate in Computer Science134. Reviewer Certificate in Computer Science
134. Reviewer Certificate in Computer Science
Manu Mitra
 
欧洲杯投注网站-欧洲杯投注网站推荐-欧洲杯投注网站| 立即访问【ac123.net】
欧洲杯投注网站-欧洲杯投注网站推荐-欧洲杯投注网站| 立即访问【ac123.net】欧洲杯投注网站-欧洲杯投注网站推荐-欧洲杯投注网站| 立即访问【ac123.net】
欧洲杯投注网站-欧洲杯投注网站推荐-欧洲杯投注网站| 立即访问【ac123.net】
foismail170
 
欧洲杯投注app-欧洲杯投注app推荐-欧洲杯投注app| 立即访问【ac123.net】
欧洲杯投注app-欧洲杯投注app推荐-欧洲杯投注app| 立即访问【ac123.net】欧洲杯投注app-欧洲杯投注app推荐-欧洲杯投注app| 立即访问【ac123.net】
欧洲杯投注app-欧洲杯投注app推荐-欧洲杯投注app| 立即访问【ac123.net】
foismail170
 
How to Master LinkedIn for Career and Business
How to Master LinkedIn for Career and BusinessHow to Master LinkedIn for Career and Business
How to Master LinkedIn for Career and Business
ideatoipo
 
Transferable Skills - Your Roadmap - Part 1 and 2 - Dirk Spencer Senior Recru...
Transferable Skills - Your Roadmap - Part 1 and 2 - Dirk Spencer Senior Recru...Transferable Skills - Your Roadmap - Part 1 and 2 - Dirk Spencer Senior Recru...
Transferable Skills - Your Roadmap - Part 1 and 2 - Dirk Spencer Senior Recru...
Dirk Spencer Corporate Recruiter LION
 
皇冠体育- 皇冠体育官方网站- CROWN SPORTS| 立即访问【ac123.net】
皇冠体育- 皇冠体育官方网站- CROWN SPORTS| 立即访问【ac123.net】皇冠体育- 皇冠体育官方网站- CROWN SPORTS| 立即访问【ac123.net】
皇冠体育- 皇冠体育官方网站- CROWN SPORTS| 立即访问【ac123.net】
larisashrestha558
 
DOC-20240602-WA0001..pdf DOC-20240602-WA0001..pdf
DOC-20240602-WA0001..pdf DOC-20240602-WA0001..pdfDOC-20240602-WA0001..pdf DOC-20240602-WA0001..pdf
DOC-20240602-WA0001..pdf DOC-20240602-WA0001..pdf
Pushpendra Kumar
 
Midterm Contract Law and Adminstration.pptx
Midterm Contract Law and Adminstration.pptxMidterm Contract Law and Adminstration.pptx
Midterm Contract Law and Adminstration.pptx
Sheldon Byron
 

Recently uploaded (20)

一比一原版(YU毕业证)约克大学毕业证如何办理
一比一原版(YU毕业证)约克大学毕业证如何办理一比一原版(YU毕业证)约克大学毕业证如何办理
一比一原版(YU毕业证)约克大学毕业证如何办理
 
135. Reviewer Certificate in Journal of Engineering
135. Reviewer Certificate in Journal of Engineering135. Reviewer Certificate in Journal of Engineering
135. Reviewer Certificate in Journal of Engineering
 
太阳城娱乐-太阳城娱乐推荐-太阳城娱乐官方网站| 立即访问【ac123.net】
太阳城娱乐-太阳城娱乐推荐-太阳城娱乐官方网站| 立即访问【ac123.net】太阳城娱乐-太阳城娱乐推荐-太阳城娱乐官方网站| 立即访问【ac123.net】
太阳城娱乐-太阳城娱乐推荐-太阳城娱乐官方网站| 立即访问【ac123.net】
 
How Mentoring Elevates Your PM Career | PMI Silver Spring Chapter
How Mentoring Elevates Your PM Career | PMI Silver Spring ChapterHow Mentoring Elevates Your PM Career | PMI Silver Spring Chapter
How Mentoring Elevates Your PM Career | PMI Silver Spring Chapter
 
han han widi kembar tapi beda han han dan widi kembar tapi sama
han han widi kembar tapi beda han han dan widi kembar tapi samahan han widi kembar tapi beda han han dan widi kembar tapi sama
han han widi kembar tapi beda han han dan widi kembar tapi sama
 
Full Sail_Morales_Michael_SMM_2024-05.pptx
Full Sail_Morales_Michael_SMM_2024-05.pptxFull Sail_Morales_Michael_SMM_2024-05.pptx
Full Sail_Morales_Michael_SMM_2024-05.pptx
 
原版制作(RMIT毕业证书)墨尔本皇家理工大学毕业证在读证明一模一样
原版制作(RMIT毕业证书)墨尔本皇家理工大学毕业证在读证明一模一样原版制作(RMIT毕业证书)墨尔本皇家理工大学毕业证在读证明一模一样
原版制作(RMIT毕业证书)墨尔本皇家理工大学毕业证在读证明一模一样
 
Andrea Kate Portfolio Presentation.pdf
Andrea Kate  Portfolio  Presentation.pdfAndrea Kate  Portfolio  Presentation.pdf
Andrea Kate Portfolio Presentation.pdf
 
欧洲杯买球平台-欧洲杯买球平台推荐-欧洲杯买球平台| 立即访问【ac123.net】
欧洲杯买球平台-欧洲杯买球平台推荐-欧洲杯买球平台| 立即访问【ac123.net】欧洲杯买球平台-欧洲杯买球平台推荐-欧洲杯买球平台| 立即访问【ac123.net】
欧洲杯买球平台-欧洲杯买球平台推荐-欧洲杯买球平台| 立即访问【ac123.net】
 
RECOGNITION AWARD 13 - TO ALESSANDRO MARTINS.pdf
RECOGNITION AWARD 13 - TO ALESSANDRO MARTINS.pdfRECOGNITION AWARD 13 - TO ALESSANDRO MARTINS.pdf
RECOGNITION AWARD 13 - TO ALESSANDRO MARTINS.pdf
 
Luke Royak's Personal Brand Exploration!
Luke Royak's Personal Brand Exploration!Luke Royak's Personal Brand Exploration!
Luke Royak's Personal Brand Exploration!
 
Personal Brand exploration KE.pdf for assignment
Personal Brand exploration KE.pdf for assignmentPersonal Brand exploration KE.pdf for assignment
Personal Brand exploration KE.pdf for assignment
 
134. Reviewer Certificate in Computer Science
134. Reviewer Certificate in Computer Science134. Reviewer Certificate in Computer Science
134. Reviewer Certificate in Computer Science
 
欧洲杯投注网站-欧洲杯投注网站推荐-欧洲杯投注网站| 立即访问【ac123.net】
欧洲杯投注网站-欧洲杯投注网站推荐-欧洲杯投注网站| 立即访问【ac123.net】欧洲杯投注网站-欧洲杯投注网站推荐-欧洲杯投注网站| 立即访问【ac123.net】
欧洲杯投注网站-欧洲杯投注网站推荐-欧洲杯投注网站| 立即访问【ac123.net】
 
欧洲杯投注app-欧洲杯投注app推荐-欧洲杯投注app| 立即访问【ac123.net】
欧洲杯投注app-欧洲杯投注app推荐-欧洲杯投注app| 立即访问【ac123.net】欧洲杯投注app-欧洲杯投注app推荐-欧洲杯投注app| 立即访问【ac123.net】
欧洲杯投注app-欧洲杯投注app推荐-欧洲杯投注app| 立即访问【ac123.net】
 
How to Master LinkedIn for Career and Business
How to Master LinkedIn for Career and BusinessHow to Master LinkedIn for Career and Business
How to Master LinkedIn for Career and Business
 
Transferable Skills - Your Roadmap - Part 1 and 2 - Dirk Spencer Senior Recru...
Transferable Skills - Your Roadmap - Part 1 and 2 - Dirk Spencer Senior Recru...Transferable Skills - Your Roadmap - Part 1 and 2 - Dirk Spencer Senior Recru...
Transferable Skills - Your Roadmap - Part 1 and 2 - Dirk Spencer Senior Recru...
 
皇冠体育- 皇冠体育官方网站- CROWN SPORTS| 立即访问【ac123.net】
皇冠体育- 皇冠体育官方网站- CROWN SPORTS| 立即访问【ac123.net】皇冠体育- 皇冠体育官方网站- CROWN SPORTS| 立即访问【ac123.net】
皇冠体育- 皇冠体育官方网站- CROWN SPORTS| 立即访问【ac123.net】
 
DOC-20240602-WA0001..pdf DOC-20240602-WA0001..pdf
DOC-20240602-WA0001..pdf DOC-20240602-WA0001..pdfDOC-20240602-WA0001..pdf DOC-20240602-WA0001..pdf
DOC-20240602-WA0001..pdf DOC-20240602-WA0001..pdf
 
Midterm Contract Law and Adminstration.pptx
Midterm Contract Law and Adminstration.pptxMidterm Contract Law and Adminstration.pptx
Midterm Contract Law and Adminstration.pptx
 

Inter-Process communication using pipe in FPGA based adaptive communication

  • 1. Gujarat Technological University Ahmedabad & C-DAC, Pune M.E (Electronics & Communication Engineering) In VLSI & Embedded System Design (sem-1) En No-160930359011
  • 2. Inter-Process Communication using Pipes in FPGA-based Adaptive Computing Presented by Mayur Shah
  • 3. What is Inter Process Communication ?[1]  Exchange of data between two or more separate, independent processes/threads.  Operating systems provide facilities/resources for inter-process communications (IPC), such as message queues, semaphores, and shared memory.  Distributed computing systems make use of these facilities/resources to provide application programming interface (API) which allows IPC to be programmed at a higher level of abstraction. (e.g., send and receive)  Distributed computing requires information to be exchanged among independent processes.
  • 4. Figure Of Inter Process Communication Process 1 Process 2 data sender receiver
  • 5. IPC Mechanisms  Signals  Pipes  FIFOs  Message Queue  Shared memory
  • 6. Purposes for IPC  Data Transfer  Sharing Data  Event notification  Resource Sharing and Synchronization  Process Control
  • 7. What is pipe? Pipe which allow transfer data between processes in First in- First-out manner. A pipe is usually realized in memory. Pipe operations are memory operations.
  • 8. Create a Pipeline  Sometimes useful to connect a set of processes in a pipeline. Process c Process D PipePipe Process A writes to pipe AB, Process B reads from AB and writes to BC Process C reads from BC and writes to CD …..
  • 9. Field Programmable Gate Array  It is primarily a semiconductor device that can be configured by the user (customer or designer) after the manufacturing process has been completed  The term "field-programmable" means the device is programmed by the customer, not the manufacturer.  Can be programmed using a logic circuit diagram or source code in VHDL or Verilog.  It offers partial re-configuration of a portion of design.
  • 10. General Figure of FPGA  Logic blocks  to implement combinational and sequential logic  Interconnect  wires to connect inputs and outputs to logic blocks  I/O blocks  special logic blocks at periphery of device for external connections
  • 11. Adaptive Computing Adaptive computing refers to the capability of a computing system to adapt one or more of its properties (e.g. performance) during runtime. There are diverse reasons of why it is advantageous for a computing system to adapt during runtime and there are various enabling techniques and paradigms that allow a computing system to perform such an adaptation.
  • 12. Now We starting our main topic …………. Inter-Process Communication using Pipes in FPGA-based Adaptive Computing
  • 13. Abstract:- In FPGA-based adaptive computing, Inter-Process Communications (IPC) are required to exchange information among hardware processes which time multiplex the resources in a same reconfigurable region.
  • 14.  Adaptive computing based on FPGA Partial Reconfiguration (PR) technologie tailors various computation algorithmes to ambient conditions during system run-time. It intelligently manages on-chip computing resources and improves their utilization efficiency .  In contrast to conventional static configuration of FPGAs, PR provides the technical support for changing only a particular section of an FPGA design, while the remaining system is still in operation. Analogous to software multiprogramming on CPUs, the PR technology enables multitasking on limited FPGA resources by dynamically configuring or unloading processing modules according to computation requirements. In this context, each processing module is treated as a hardware process for one specific algorithm. Now Introduction
  • 15. IPC QUEING MODEL Static Process Model Pipes and FIFOs (Also called named pipes. We use pipe as the general name.) are a basic IPC mechanism provided in all flavors of Unix OSes. They are best suited to implement producer-consumer interactions among processes. A pipe is a unidirectional channel: All data written by a process to the pipe is routed by the OS kernel to another process which can thus read it .In FPGA-based designs, hardware pipes behave in an analogous manner as the software ones in Oses.
  • 16.
  • 17. (Figure 1) shows consecutive pipe communications between algorithm modules. Conventionally all algorithm processors or algorithm steps are statically placed on the FPGA fabric. They work in parallel to process their respective input data streams, possibly generate output results, and pass IPC information to the next computation stage. In this model, intermediate pipes with buffering capability decouple and coordinate producers and consumers, if they do not generate and consume data at the same pace.
  • 19. In adaptive computing scenarios in which multiple algorithm processors or algorithm steps timeshare the same resources in one PR Region (PRR), pipes can be used to bridge the communication of two modules activated at different time. In Figure 2, a reconfigurable design is demonstrated with the same dataflow as the static algorithm placement shown in Figure 1: Algorithm modules are sequentially loaded into the PR region for a period of time. They read and consume data from the previous-stage pipe, and store the generated inter-module information in the current-stage pipe for next-stage computation. For example after activated, algorithm A1 reads IPC packets of A0 from pipe0, and passinformation to A2 via pipe1.
  • 20. • Pipes can be implemented with • BRAM on Xilinx Virtex-4 FPGA • External DDR memory M. Liu, Z. Lu, W. Kuehn, S. Yang, and A. Jantsch, "A Reconfigurable Design Framework for FPGA Adaptive Computing“, ReConFig’09. HARDWARE IMPLEMENTATION
  • 21. DDR_pipe: The complete system architecture FPGA adaptive computing [1] • Embedded microprocessor (scheduler) • Memory (partial bitstream storage) • HWICAP for PR
  • 22. Conclusion The latency of IPC packets is expected to be reduced with more intelligent mechanisms, and to be properly coordinated with throughput requirements in realtime applications.
  • 23. Reference .1. ipc using pipe in fpga adtive computing https://www.google.com.sg/url?sa=t&rct=j&q=&esrc=s&source=web&cd=2&cad=rja&uact=8&ved=0ahUKEwivuNm46tX PAhVMNY8KHU3cBt8QFggiMAE&url=http%3A%2F%2Fpeople.kth.se%2F~mingliu%2Fpublications%2Fisvlsi.pdf&usg= AFQjCNHrXxzujLetB6rt_lVIcY5Be53bVw&sig2=QknRCLRS3W8mus0v3vJLig&bvm=bv.135475266,d.c2I 2. ipc https://www.google.com.sg/url?sa=t&rct=j&q=&esrc=s&source=web&cd=1&cad=rja&uact=8&sqi=2&ved=0ahUKEwi6wp- d69XPAhVELI8KHWhgDaoQFggaMAA&url=http%3A%2F%2Fcs.gmu.edu%2F~yhwang1%2FSWE622%2FSlides%2FIP C.ppt&usg=AFQjCNEmVM6Hulc8KHty_Ws4_d25fp5Hig&sig2=hGeYLuamFJGVZD4D0C0yMA&bvm=bv.135475266,d.c 2I 3. ipc using pipe https://www.google.com.sg/url?sa=t&rct=j&q=&esrc=s&source=web&cd=2&cad=rja&uact=8&ved=0ahUKEwiu79bH69X PAhXDtI8KHQbMB8sQFgggMAE&url=http%3A%2F%2Fwww.cs.fsu.edu%2F~xyuan%2Fcop4610%2Flecture_6_osinte rface4.ppt&usg=AFQjCNH9xpXqX1FLfvCPiDcHFz3KnGhEZQ&sig2=PRFlyBr8RnehonF4TCelVA&bvm=bv.135475266,d. c2I 3.2 https://www.google.com.sg/url?sa=t&rct=j&q=&esrc=s&source=web&cd=2&cad=rja&uact=8&ved=0ahUKEwiu79bH69X PAhXDtI8KHQbMB8sQFgggMAE&url=http%3A%2F%2Fwww.cs.fsu.edu%2F~xyuan%2Fcop4610%2Flecture_6_osinte rface4.ppt&usg=AFQjCNH9xpXqX1FLfvCPiDcHFz3KnGhEZQ&sig2=PRFlyBr8RnehonF4TCelVA&bvm=bv.135475266,d. c2I 4. adptive computing https://www.google.com.sg/url?sa=t&rct=j&q=&esrc=s&source=web&cd=4&cad=rja&uact=8&ved=0ahUKEwiH8_L959X PAhUBsY8KHeeSAAYQFgg5MAM&url=http%3A%2F%2Fwww.diva- portal.org%2Fsmash%2Fget%2Fdiva2%3A418205%2FFULLTEXT01.pdfAdaptive&usg=AFQjCNFvnAiqgy6XEdUTifSQ mdGJdIijtQ&sig2=uriWwwdTeAfmcub9ISpXtg