Communication
Vineet Sahula
sahula@ieee.org
Outline
Introduction
System-on-a-Chip (SoC)
Who enables Chip design
Electronic Design automation (EDA)
High level, Logic, Layout synthesis
FPGA based synthesis
Generic SoC
Implementation
Computation
PEs
Communication
Bus based architecture
NoC architecture
?
Generic SoC
Processor
Memory
No. of PEs
PE are verified, validated
CPU, DSP , IP , ASIC
Set-top-box, MPEG-2 decoder
Logic
Analog
PE are heterogeneous
Optimized HW/SW
Separable computation & communication
Diverse communication
Communication becomes critical
Embedded SystemsPerformance Evaluation
System Modeling
Models of Computation
Continuous Time Models
SIMULINK, VHDL-AMS
Synchronous Models
Untimed Models
Data Flow Process Networks
Synchronous Data Flow, Kahn Process
Networks
Rendezvous based
CSP, CCS, CRP
Embedded SystemsPerformance Evaluation
Idea
Applications technologies
Wireless/Telecommunication
Computing
Internet
Consumer/medical electronics
Design
Fabrication
Enabling technologies
Fabrication
Software Engineering
Computer architecture
Internet
Packaging
Design Technology
Systems characteristics
Billion/Trillion transistors
Heterogeneous, portable, low power, low cost
Desired
Circa 2004, A single hand-held portable system which is
Computing, GPS enabled, multimedia/voice/data comm.,
wireless internet
VLSI Design
Synthesis based methodology
Synthesize & validate
Embedded SystemsPerformance Evaluation
VLSI Design
Methodology
Supported by CAD
Human expertise
centric
Increasing mismatch of
Synthesis models and
implemented circuit
First time correct
designs are rare/nearly
impossible
Embedded SystemsPerformance Evaluation
Idea
System specification
Architecture Synthesis
Components/gate synthesis
Synthesis
CAD tools
Architecture Synthesis
Components/gate synthesis
Dream
Mature &
evolving
Fabrication
Mature &
Acceptable
How ?
Design Step 1
Design description
Abstraction, models
Simulation
BackSynthesis
annotation
Verification/simulation
Transformation between various
representations
Synthesis
Extraction/back-annotation
Embedded SystemsPerformance Evaluation
Design Step 2
Simulation
Chip layout
10
E-CAD
Why ?
CAD is indispensable
Embedded SystemsPerformance Evaluation
11
Performance Evaluation
Models for System-on-Chip
Communication
Outline
Communication Architectures (CA)
Performance estimation
Statistical estimation
Analytical estimation
13
Communication architecture
CA is fabric to exchange
data & control signals.
It consist of
1.Logic components
2.Global bus lines.
3.Bus interfaces.
14
Bus based
Single shared bus.
Hierarchical buses
connected by
bridges.
Embedded Systems- Performance Evaluation
15
Networks on Chip
Packets routed
via channels and
switches.
16
NoC Topologies
SPIN
Scalable Programmable
Integrated Network
CLICH.
Chip Level Integration of
communication
Heterogeneous Elements
17
18
Performance Estimation
Statistical analysis
- CAG model
- Queueing theory
- Stochastic framework
Trace driven simulation
- System level tools (PTOLEMY)
Hybrid combination of both
Embedded SystemsPerformance Evaluation
19
Classification
Analytical
models
20
Abstract Communication
Lahiri,2004
Embedded SystemsPerformance Evaluation
21
22
23
24
Queueing model
Kim,IEEE
CAD,2005 [2]
25
Markov Model
26
Bus state
Past bus state
Past bridge state
Bridge state
Past buses states
27
S1
S2
Pi1
SG
28
Introduction
HCFG: An Overview
HCFG approach for evaluating GSMP model of SSB architecture
Results
Conclusions
Vineet Sahula2
2 Department of ECE
Malaviya National Institute of Technology, Jaipur, India
Introduction
HCFG: An Overview
HCFG approach for evaluating GSMP model of SSB architecture
Results
Conclusions
Outline
1
Introduction
Motivation
Previous work and Proposed work
HCFG: An Overview
HBB architecture
Results
Conclusions
Ulhas Deshmukh, Vineet Sahula
Introduction
HCFG: An Overview
HCFG approach for evaluating GSMP model of SSB architecture
Results
Conclusions
Motivation
Previous work and Proposed work
Outline
1
Introduction
Motivation
Previous work and Proposed work
HCFG: An Overview
HBB architecture
Results
Conclusions
Ulhas Deshmukh, Vineet Sahula
Introduction
HCFG: An Overview
HCFG approach for evaluating GSMP model of SSB architecture
Results
Conclusions
Motivation
Previous work and Proposed work
SW
SW IP 1
SW Adaption
CPU
HW Adaption
HW IP 1
HW IP 2
HW Adaption
HW Adaption
On Chip Communication
HW Adaption
CPU
SW Adaption
SW
SW IP 2
Communication
architecture facilitates
communication among IPs
Introduction
HCFG: An Overview
HCFG approach for evaluating GSMP model of SSB architecture
Results
Conclusions
Motivation
Previous work and Proposed work
Issue
Modern-day systems demand for higher performance and
more functions
Designer has to use a number of concurrent and
heterogeneous IPs
Communication among these IPs becomes intricate
Quick performance evaluation of communication
architecture is essential
Introduction
HCFG: An Overview
HCFG approach for evaluating GSMP model of SSB architecture
Results
Conclusions
Motivation
Previous work and Proposed work
Outline
1
Introduction
Motivation
Previous work and Proposed work
HCFG: An Overview
HBB architecture
Results
Conclusions
Ulhas Deshmukh, Vineet Sahula
Introduction
HCFG: An Overview
HCFG approach for evaluating GSMP model of SSB architecture
Results
Conclusions
Motivation
Previous work and Proposed work
Authors
P.Knudsen et al.[1]
S.Dey et al. [2]
T.Mudge et al. [3]
A.Ramani et al. [4]
Proposed work
Simulation
Hybrid
Approach
Delay estimation model
Synchronization graph
SMP model (multi-bus arch.)
SMP model (crossbar arch.)
GSMP model evaluation
using HCFG
Simulator (Cheetah)
Operating State Machine
Simulation + CAG
Queueing analysis + simulation
Introduction
HCFG: An Overview
HCFG approach for evaluating GSMP model of SSB architecture
Results
Conclusions
Introduction
HCFG: An Overview
HCFG approach for evaluating GSMP model of SSB architecture
Results
Conclusions
BCOMM
PE 1
PE2
PEN
PE 1
PE2
PEN
I/F
I/F
I/F
I/F
I/F
I/F
bridge
comm
B2COMM
Bus I/f
Bridge
Bus I/f
B1COMM
BUS1
I/F
I/F
MEM 1
Arbiter
Bus2
comm
Bus1
comm
BUS 2
I/F
I/F
MEM 2
Arbiter
Bridge
comm
Fork
TB2COMM
TB1COMM
Join
TBCOMM
BCOMM
AND concurrency
Communications over buses are concurrent
Communication across the bridge begins only when both
buses are free
E[TC ] = E[TB1B2COMM ]+E[Max{TB1 , TB2 }]+E[TB2B1COMM ]
Ulhas Deshmukh, Vineet Sahula
Introduction
HCFG: An Overview
HCFG approach for evaluating GSMP model of SSB architecture
Results
Conclusions
T
Source PE
P1
Path 1
P2
Path 2
P3
TP
Path 3
Dest. PE
OR concurrency
Multiple communications path can be active
E[TC ] = E[Min{TP1 , TP2 , TP3 }]
Ulhas Deshmukh, Vineet Sahula
TP
TP
Introduction
HCFG: An Overview
HCFG approach for evaluating GSMP model of SSB architecture
Results
Conclusions
SSB architecture
HBB architecture
Outline
1
Introduction
Motivation
Previous work and Proposed work
HCFG: An Overview
HBB architecture
Results
Conclusions
Ulhas Deshmukh, Vineet Sahula
Introduction
HCFG: An Overview
HCFG approach for evaluating GSMP model of SSB architecture
Results
Conclusions
SSB architecture
HBB architecture
SSB architecture
PE 1
PE2
PEN
I/F
I/F
I/F
BUS
I/F
MEM
I/F
Arbiter
Model formulation
Homogeneous Processing
Elements (PEs)
Model of a single PE
suffices
Actions of a PE are-
Computing
Accessing the MEM
Waiting for memory
Introduction
HCFG: An Overview
HCFG approach for evaluating GSMP model of SSB architecture
Results
Conclusions
SSB architecture
HBB architecture
Model formulation
PE 1
PE 2
I/F
I/F
PE N
I/F
Computing action
The PE1 is computing
No request is generated
BUS
I/F
I/F
MEM
Arbiter
Introduction
HCFG: An Overview
HCFG approach for evaluating GSMP model of SSB architecture
Results
Conclusions
SSB architecture
HBB architecture
PE1
PE 2
PE N
I/F
I/F
I/F
Accessing action
PE1 generates a request
BUS
I/F
MEM
Arbiter
Introduction
HCFG: An Overview
HCFG approach for evaluating GSMP model of SSB architecture
Results
Conclusions
SSB architecture
HBB architecture
PE 2
I/F
I/F
PE N Full
I/F
BUS
I/F
waiting action
PE1
FW
PEk
MEM
PCOMP, CCOMM
FWFull Waiting
Introduction
HCFG: An Overview
HCFG approach for evaluating GSMP model of SSB architecture
Results
Conclusions
SSB architecture
HBB architecture
PE 2
PE N
I/F
I/F
I/F
BUS
RW
P
I/F
MEM
PE1
PEk
PCOMP, CCOMM
RWResidual Waiting
Modeled as residual
waiting state (labeled as
state 3)
Mean sojourn time is
(C 2 C)/(2(C 1)
GSMP model evaluation using HCFG
Introduction
HCFG: An Overview
HCFG approach for evaluating GSMP model of SSB architecture
Results
Conclusions
SSB architecture
HBB architecture
Description
number of processing elements
mean computing time
mean communication time
second moment of communication time
Introduction
HCFG: An Overview
HCFG approach for evaluating GSMP model of SSB architecture
Results
Conclusions
SSB architecture
HBB architecture
1
0
States of a PE
State 0-computing state
State 1-accessing state
State 2-full waiting state
State 3-residual waiting
state
Introduction
HCFG: An Overview
HCFG approach for evaluating GSMP model of SSB architecture
Results
Conclusions
SSB architecture
HBB architecture
Introduction
HCFG: An Overview
HCFG approach for evaluating GSMP model of SSB architecture
Results
Conclusions
SSB architecture
HBB architecture
p Z2
p Z2
31
22
p Z1
s3
ps3= 1.0
p32= 0.61
p 31= 0.39
p21= 0.39
p22= 0.61
p10= 1.0
p Z2
p Z2
32
p Z1
p Z2
03
p Z2
02
p01= 0.39
p02= 0.18
p03= 0.43
1
F
21
TS = 0
01
p Z1
10
T0 = 1
T1 = 2
T2 = 2
T3 = 1
Introduction
HCFG: An Overview
HCFG approach for evaluating GSMP model of SSB architecture
Results
Conclusions
SSB architecture
HBB architecture
PU
N P1
P 0 + P1
N (P2 + P3 )
2 2 + 3 3
1
Introduction
HCFG: An Overview
HCFG approach for evaluating GSMP model of SSB architecture
Results
Conclusions
SSB architecture
HBB architecture
Outline
1
Introduction
Motivation
Previous work and Proposed work
HCFG: An Overview
HBB architecture
Results
Conclusions
Ulhas Deshmukh, Vineet Sahula
Introduction
HCFG: An Overview
HCFG approach for evaluating GSMP model of SSB architecture
Results
Conclusions
SSB architecture
HBB architecture
HBB architecture
PE2
PEN
PE 1
PE2
PEN
I/F
I/F
I/F
I/F
I/F
I/F
Bus I/f
Bridge
Bus I/f
PE 1
BUS1
I/F
I/F
MEM 1
Arbiter
BUS 2
I/F
I/F
MEM 2
Arbiter
Introduction
HCFG: An Overview
HCFG approach for evaluating GSMP model of SSB architecture
Results
Conclusions
SSB architecture
HBB architecture
1
2
1
1
1
6
6
0
5
5
4
4
States of a PE
State 0 computing state
Introduction
HCFG: An Overview
HCFG approach for evaluating GSMP model of SSB architecture
Results
Conclusions
SSB architecture
HBB architecture
Introduction
HCFG: An Overview
HCFG approach for evaluating GSMP model of SSB architecture
Results
Conclusions
SSB architecture
HBB architecture
p Z2
32
p Z2
31
p Z2
04
p Z2
TS = 0
T0 = 1
02
03
T1 = 2
T2 = 2
T3 = 1
T4 = 2
p Z1
s0
p Z
T5 = 2
T6 = 1
01
p Z2
p Z1
06
10
65
p02 = 0.057
p31 = 0.27
p03 = 0.01
p04 = 0.16
05
p05 = 0.57
p Z1
p Z2
40
p Z2
p06 = 0.19
p32 = 0.73
04
p Z2
p22 = 0.73
p01 = 0.027
p Z1
pS0= 1.0
p Z2
54
p Z2
55
p21 = 0.27
p10 = 1.0
p65 = 0.82
p64 = 0.18
p54 = 0.18
p55 = 0.82
p40 = 1.0
p Z2
64
Introduction
HCFG: An Overview
HCFG approach for evaluating GSMP model of SSB architecture
Results
Conclusions
SSB architecture
HBB architecture
BWg
L`
Lg
W`
Wg
N P1
N P4
= N (P2 + P3 )
= N (P5 + P6 )
= 2 (2 + 3 1 )/1 + 3 3
= 5 (5 + 6 4 )/4 + 6 6
Introduction
HCFG: An Overview
HCFG approach for evaluating GSMP model of SSB architecture
Results
Conclusions
SSB architecture
HBB architecture
Introduction
HCFG: An Overview
HCFG approach for evaluating GSMP model of SSB architecture
Results
Conclusions
SSB architecture
HBB architecture
//BR1.cc
SC_MODULE(BR1)
{
//ports
sc_out<int> req_BR1;
sc_out<int>data_BR1;
sc_in_clk clock;
//other ports
void BR1_action()
{ while(true)
{ if(BR1_grant.read()==1)
}
SC_CTOR(PE12)
{
};
}
//rest of the code;
}
}
}
SC_CTOR(bus2)
}
{
SC_CTOR(BR1)
{
SC_THREAD(BR1_action);
sensitive<< clock;
}
};
};
SC_CTOR(bus2)
{
};
PE 2
PE 1
I/F
I/F
MEM 1
PE 2
PE 1
I/F
I/F
BUS 1
//arbiter1.cc
Bus I/f
Bridge
Bus I/f
//PE11.cc
SC_MODULE(bus2)
//PE12.cc
{
SC_MODULE(PE12)
sc_in<int>data_PE1;
{
sc_in<int>data_BR12;
sc_inout<int>data_PE12;
//some other
ports
sc_out<int>req_PE12;
void bus2_action()
//some other ports
{ while(true)
void PE12_action()
{ if(PE_grant.read()==1)
{ while(true)
{
status_bus2.write(true);
{ if(PE12_grant.read()==1)
//rest of the code not shown;
{
}
SC_MODULE(bus2)
//bus2.cc
{
SC_MODULE(bus2)
sc_in<int>data_PE1;
{
sc_in<int>data_BR12;
sc_in<int>data_PE1;
//some other
ports
sc_in<int>data_BR12;
void bus2_action()
//some other ports
{ while(true)
void bus2_action()
{ if(PE_grant.read()==1)
{ while(true)
{
status_bus2.write(true);
{ if(PE_grant.read()==1)
//rest of the code not shown;
{
status_bus2.write(true);
}
I/F
Arbiter1
I/F
BUS 1
I/F
MEM 1
I/F
Arbiter1
SC_MODULE(arbiter2)
//arbiter2.cc
{
SC_MODULE(arbiter2)
sc_in<bool>bus2_status;
{
sc_in<int>req_PE1;
sc_in<bool>bus2_status;
//some ports
sc_in<int>req_PE1;
void arbiter2_action()
//some ports
{
void arbiter2_action()
while(true)
{ {
//restwhile(true)
of the code not shown
{
}
//rest of the code not shown
}
}
SC_CTOR(arbiter2)
}
{
SC_CTOR(arbiter2)
SC_THREAD(arbiter2_action);
{
}
SC_THREAD(arbiter2_action);
};
}
};
Introduction
HCFG: An Overview
HCFG approach for evaluating GSMP model of SSB architecture
Results
Conclusions
Bandwidth
0.8
0.6
0.4
Simulation Approach
AFOME Approach
0.2
0
1
HCFG Approach
2
Number of PEs
0.8
Simulation Approach
AFOME Approach
0.6
HCFG Approach
PU for T=2,r=0.1
0.4
0.2
0
1
3
4
5
6
Number of PEs (N)
Introduction
HCFG: An Overview
HCFG approach for evaluating GSMP model of SSB architecture
Results
Conclusions
4.0
Simulation Approach
AFOME Approach
HCFG Approach
3.5
Local waiting time
Local bandwidth
0.4
0.2
0
3.0
2.5
2.0
1.5
1.0
0.5
0.2
0.4
0.6
0.8
Simulation Approach
AFOME Approach
0
0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9
Probability of local request
GSMP model evaluation using HCFG
Introduction
HCFG: An Overview
HCFG approach for evaluating GSMP model of SSB architecture
Results
Conclusions
0.3
2.0
Simulation Approach
AFOME Approach
HCFG Approach
0.2
0.1
0
0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9
Probability of local request
Ulhas Deshmukh, Vineet Sahula
Global bandwidth
0.4
1.5
Simulation Appro.
AFOME Approach
HCFG Approach
1.0
0.5
0
0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9
Probability of local request
Introduction
HCFG: An Overview
HCFG approach for evaluating GSMP model of SSB architecture
Results
Conclusions
Conclusions
Proposed analytical approach is time efficient, accurate
Besides, it gives stochastic properties quickly as that of
simulation
Introduction
HCFG: An Overview
HCFG approach for evaluating GSMP model of SSB architecture
Results
Conclusions
Bibliography
1
S. Dey and S. Bommu, Performance analysis of a system of communicating processes, in ICCAD, 1997,
590-597.
T.N.Mudge and H.B.A.Sadoun, A Semi Markov Model for Performance of Multiple-Bus Systems, IEEE
Trans. On Computers, Vol C-34, No 10, Oct 1985.
A.K.Ramani, P.K.Chande and P.C.Sharma, A general model for performance investigations of priority
based multiprocessor system, IEEE Trans. on Computers, 1992, 747-754
J. A. Rowson and A. Sangiovanni-Vincentelli, Interface based design, Proc. Design Automation Conf.,
1997, 178-183.
X. Zhu, W. Qin, and S. Malik, Modeling operation and microarchitecture concurrency for communication
architectures with application to retargetable simulation, IEEE Trans. VLSI Syst., 14(7):707-716, July 2006.
K.Lahiri, A. Raghunathan and S. Dey, System-level performance analysis for designing on-chip
communication architecture, IEEE Tran. CAD, 20(6):768-783, June 2001.
S. Kim, C.Im and S. Ha, Schedule-Aware Performance Estimation of Communication Architecture for
Efficient Design Space Exploration, IEEE Trans. VLSI System Vol 13, No 5, Pages 539-552, may 2005.
10 V.Sahula and C. P. Ravikumar, The hierarchical concurrent flow graph approach for modeling and analysis
of design processes, in Int. Conf. VLSI Design,2001,91-96.
11 U.Deshmukh and V. Sahula, Analytical performance estimation from GSMP model for hierarchical bus
bridge based SoC communication architecture, in Proceedings of 20th IEEE International Conference on
Microelectronics (ICM), Dec. 2008.
Ulhas Deshmukh, Vineet Sahula
Introduction
HCFG: An Overview
HCFG approach for evaluating GSMP model of SSB architecture
Results
Conclusions
Thanks...