Convertibility Verification and Converter Synthesis: Two Faces of the

Download Report

Transcript Convertibility Verification and Converter Synthesis: Two Faces of the

Depth-Bounded Communication
Complexity for Distributed
Computation
Student: Jie-Hong Jiang
Mentor: Prof. Robert Brayton
EE249 Class Project
12/3/2002
Motivation

In system-on-chip design, computation tasks
may be localized in some particular locations
(e.g. analog/digital separations)


An embedded system interacts with its
environment, which may span over a large area


Avoid long distance (delay) communication
Localize computation tasks
Communication costs among different locations
may be quite high (due to implementation,
noise, delay, etc.)

Minimize communication links and depths
Problem formulation

Given a computation task
T(I,O) , two physically
separated parties A(I1,O1)
and B(I2,O2) want to
fulfill task T using
minimum amount of
communication within a
specified depth

Assume X1  X2 = X and
X1  X2 = ,
where X = {I, O}
A
B
O1
O2
fa(I1,y)
fb(x,I2)
I1
x
y
h(I1,y)
g(x,I2)
I2
Prior work


Communication complexity
has been intensively studied
in the community of
theoretical computer
science since 1979
Yao’s formulation is the
most well-studied


Assume the two parties in
communication have
unbounded computation
power
Use protocol tree to represent
the communication behavior

The height of tree = bits
communicated
f
I2
I1
00
01
10
11
00
1
0
1
1
01
0
0
0
0
10
1
0
1
1
11
0
0
1
0
I1
{00,10 : 01,11}
I2
{01 : 00,10,11}
I2
{00,01,11 : 10}
0
0
1
I1
{01 : 11}
0
1
What has been missing ?


Communication depths
Sharing of communication links
Categorization



Combinational instances with one-sided outputs,
i.e. (O1 = O, O2 = )
Combinational instances with two-sided outputs,
i.e. (O1  , O2  )
Sequential instances (finite-state machines)
Combinational instance:
One-sided output (O1 = O, O2 = )

Reduce functional matrix representation



Merge identical rows and columns
Equivalent communication complexity analysis
Use multi-valued representation for multi-output
functions
f1
I1
f1'
I2
00
00
01
10
11
1
0
1
0
01
0
0
0
0
10
1
0
1
1
I2'
11
1
I1'
0
1
2
0
1
0
1
1
0
0
0
2
0
0
1
0
1
0
Combinational instance:
One-sided output (O1 = O, O2 = )

Communication depths should be captured in
embedded system design

Assume the two parties in communication have
unbounded computation power. This is fine even for
A
B
combinational implementations.
A
A
B
B
f1(I1,y')
f1(I1,y)
f1(I1,y)
g(x,I2)
g(I2)
I1
I2
(a)
h(I1)
I1
I2
(b)
I1
I2
(c)
Combinational instance:
One-sided output (O1 = O, O2 = )

Slicing functional matrices
vs. building protocol trees


Limited alternating
communication
Lower bounds


Depth-1, lg (#column)
Depth-k, minall protocol { i=1,…,k
lg (max #branch at level
i) }
Combinational instance:
Two-sided output (O1  , O2  )


Reduce functional matrix representation
Use multi-valued representation for multi-output
functions
I2
I1
00
0
1
I2
f1
1
0
01
0
0
10
1
0
f2
I1
0
1
0
row merging
00
1
1
01
0
1
f1
f2
10
1
0
f2
f2
11
0
1
11
1
I1
I2
column merging
Combinational instance:
Two-sided output (O1  , O2  )

Sharing communication links may result in
combinational cycles


Sometimes is essential to achieve minimum
communication
Might possibly have ambiguous causalities (cause bistable, oscillation behaviors)
Sequential instance

Degenerate state equivalence relation between
two parties in communication



Take advantage of this partial information to reduce
interaction
Compute partial information by Galois connection
Approximate by combinational techniques
Conclusions and future work


We give a formulation for the analysis of the
depth-bounded communication complexity
problem
Effective techniques need to be explored


Language equation formulation ?
Game-theoretic formulation ?


Nash equilibrium may not even be local optimal for selfish
row and column players
Cooperative games