Synchronization Detection for Multi-Process Hierarchical Synthesis - PowerPoint PPT Presentation

1 / 15
About This Presentation
Title:

Synchronization Detection for Multi-Process Hierarchical Synthesis

Description:

Synthesis of hierarchical composed system specifications ... in which the state of each process can be statically determined. Processes proceed ... – PowerPoint PPT presentation

Number of Views:17
Avg rating:3.0/5.0
Slides: 16
Provided by: oliverbr
Category:

less

Transcript and Presenter's Notes

Title: Synchronization Detection for Multi-Process Hierarchical Synthesis


1
Synchronization Detection for Multi-Process
Hierarchical Synthesis
  • Oliver Bringmann
  • Wolfgang Rosenstiel
  • Dirk Reichardt

2
Outline
  • Resource sharing in hierarchical synthesis
  • Communication model and synchronization points
  • Synchronization point detection
  • Synchronicity condition
  • Initial synchronization points
  • Loop-based synchronization points
  • Conclusion

3
Hierarchical Synthesis
System Specification
Specification
RT-Library
Schedule
RT-Structure
Bottom-up Synthesis
High-Level Synthesis
  • Synthesis of hierarchical composed system
    specifications
  • Providing of optimizations across different
    hierarchical levels with respect to already
    synthesized module structures
  • Automatic integration of optimized modules
  • Resource sharing across process boundaries
  • Multiple processes have to be considered during
    synthesis

4
Resource Sharing in Multi-Process Specifications
Prerequisite Common Clock and Reset
Clock
Reset
FSM
FSM
FSM
Goal Only one implementation of module
Main tasks 1. Which states synchronize/de-synchro
nize different processes? 2. In which clock steps
are the demanded submodules in use? 3. Can a
resource conflict occur when sharing
submodules? (2. 3. Þ Resource sharing in
hierarchical synthesis, ICCAD 97)
5
Synchronization and De-Synchronization Points
6
Communication Model
Communication model bases on message passing
7
Synchronicity Condition (SC)
Synchronicity Check by Simulation
Process P2
Process P1
Analytically Synchronicity Check
  • Communication Ci is a synchronization point Û
    is reached before / simultaneously with
    , for all paths, starting from previous
    synchronization points

8
Communication Dependency Graph
Communication Dependency Graph
Hierarchical Schedule
I
I
I
I
1
2
S1
1
S1
C1
C1
R1
1
R1
1
R2
2
R2
4
1


C2
C2
2
3
3
2
S2
3
S2
1
C3
C3
R3
S3
R3
S3
Process P2
Process P1
Process P2
Process P1
  • Reduction to communication states , and
    unbounded loops
  • Sequential timing are represented by edge labels

R
S
U
3
S2
S1
9
Node Collapsing during Graph Construction
10
Applicability of the Synchronicity Condition
I
I
1
2
S1
C1
R1
1
R2
3
4
1
12
C2
U1
2
1
u1
S2
1
C3
S3
R3
  • Problem Synchronicity condition (SC) are only
    applicable between SPs
  • Þ SC gives just a criteria for verifying SPs
  • Þ SC can not directly be used to determine SPs

11
Initial Synchronization Points (ISPs)
I
I
1
2
S1
C1
R1
1
R2
3
4
1
12
C2
U1
2
1
u1
S2
1
C3
S3
R3
  • Applicability problem not existing for initial
    synchronization points
  • Representation of the SCs bases on linear
    inequalities
  • Transformation to linear equalities by use of
    slack variables
  • Slack variables represent the wait states of the
    receive nodes
  • Negative slack values indicate a violation of the
    SCs

12
Loop-based SP Calculation by Cyclic Implication
Synchronization Cycles
I
I
SC(C1 C2)
1
2
S1
C1
R1
SC(C2 C3)
SC(C3 C1)
1
R2
3
4
1
SC(C2 C3)
12
C2
U1
2
SC(C3 C2)
1
u1
S2
1
C3
S3
R3
SC(C1 C1)
  • Assumption All communications are SPs
  • SCs are applied to cyclic dependent
    communications
  • Each cycle are considered independently
  • If all SCs of a synchronization cycle are valid Þ
    related Ci are LSPs

13
Synchronization Point Detection (Outline)
I
I
1
2
S1
C1
x1, x2, x3 ³ 0
Þ x2 2
R1
1
Þ x3 12
R2
3
4
1
Þ x1 -1 Þ x1 0
12
C2
U1
2
1
u1
S2
1
C3
S3
R3
1. Choose greatest unconsidered communication
cycle
2. Evaluate synchronicity conditions for the
involved communications
14
Conclusion
  • Synchronization point detection for multi-process
    specifications
  • Inter-process communication bases on the
    message-passing model
  • Blocking and non-blocking communications are
    allowed
  • No restrictions of structured control structures
    are required
  • Especially unbounded data-dependent loops can be
    handled
  • SPs can be used for multi-process resource
    sharing
  • Further area of application is for instance, the
    minimization of the communication overhead

15
Related Work
  • Filo, Ku, Coelho, De Micheli (IEEE TCAD, 1993)
  • Minimization of the communication overhead
  • Communication model restricted to basic blocks
  • Amon, Hulgaard, Burns, Borriello (ICCD, 1993)
  • Determination of timing bounds between different
    consecutive communications
  • Conditional branches are not allowed
  • Dey, Bommmu (ICCAD, 1997)
  • Calculation of the worst-case execution time
    inmulti-process specifications
  • Limited to specifications without unbounded loops
Write a Comment
User Comments (0)
About PowerShow.com