Data Synchronization Issues in GALS SoCs Rostislav (Reuven) Dobkin and Ran Ginosar Technion Christos...
-
Upload
kelton-riggins -
Category
Documents
-
view
228 -
download
1
Transcript of Data Synchronization Issues in GALS SoCs Rostislav (Reuven) Dobkin and Ran Ginosar Technion Christos...
![Page 1: Data Synchronization Issues in GALS SoCs Rostislav (Reuven) Dobkin and Ran Ginosar Technion Christos P. Sotiriou FORTH ICS- FORTH.](https://reader030.fdocuments.net/reader030/viewer/2022032701/56649c765503460f94929f70/html5/thumbnails/1.jpg)
Data Synchronization Issues in GALS SoCs
Rostislav (Reuven) Dobkin and Ran GinosarTechnion
Christos P. SotiriouFORTH
ICS-FORTH
![Page 2: Data Synchronization Issues in GALS SoCs Rostislav (Reuven) Dobkin and Ran Ginosar Technion Christos P. Sotiriou FORTH ICS- FORTH.](https://reader030.fdocuments.net/reader030/viewer/2022032701/56649c765503460f94929f70/html5/thumbnails/2.jpg)
2ICS-
FORTH
Outline
• The Problemo Synchronization Failures in GALS SoCs
• Three solutions:o Timing verificationo Synchronizerso Locally-delayed clocks
• Analysis
![Page 3: Data Synchronization Issues in GALS SoCs Rostislav (Reuven) Dobkin and Ran Ginosar Technion Christos P. Sotiriou FORTH ICS- FORTH.](https://reader030.fdocuments.net/reader030/viewer/2022032701/56649c765503460f94929f70/html5/thumbnails/3.jpg)
3ICS-
FORTH
GALS with Stoppable Clocks
• A GALS Module contains:o Synchronous Islando Local clock generatoro Self-timed wrapper (can stop the local clock)o Handshake for inter-modular communications,
Moore et al., “Point to point GALS interconnect,” ASYNC 2002
Villiger et al., “Self- timed Ring for Globally- Asynchronous Locally- Synchronous Systems,” ASYNC 2003
SYNCISLAND
LOCALCLOCK
GEN
CTRL
PORT
LOCALCLOCK
GEN
CTRL
PORT
HANDSHAKE
DATA
SYNCISLAND
![Page 4: Data Synchronization Issues in GALS SoCs Rostislav (Reuven) Dobkin and Ran Ginosar Technion Christos P. Sotiriou FORTH ICS- FORTH.](https://reader030.fdocuments.net/reader030/viewer/2022032701/56649c765503460f94929f70/html5/thumbnails/4.jpg)
4ICS-
FORTH
Data Synchronization
AK
C
Adjustable Delay Line ~ T/2
Clock Reset
REG
Local Clock Generator
PortREQ
ACK
LocallySynchronous
IslandDATA
XFER
MU
TE
X
MU
TE
X
MU
TE
X
R
A
B
Z
X
Y
INPUT
Moore et al., “Point to point GALS interconnect,” ASYNC 2002
Villiger et al., “Self- timed Ring for Globally- Asynchronous Locally- Synchronous Systems,” ASYNC 2003
![Page 5: Data Synchronization Issues in GALS SoCs Rostislav (Reuven) Dobkin and Ran Ginosar Technion Christos P. Sotiriou FORTH ICS- FORTH.](https://reader030.fdocuments.net/reader030/viewer/2022032701/56649c765503460f94929f70/html5/thumbnails/5.jpg)
5ICS-
FORTH
AK
C
Adjustable Delay Line ~ T/2
Clock Reset
REG
Local Clock Generator
PortREQ
ACK
LocallySynchronous
IslandDATA
XFER
MU
TE
X
MU
TE
X
MU
TE
X
R
A
B
Z
X
Y
INPUT
Synchronization FailureDue to clock tree delay,
the previous clock rise
may conflict with the
handshake
![Page 6: Data Synchronization Issues in GALS SoCs Rostislav (Reuven) Dobkin and Ran Ginosar Technion Christos P. Sotiriou FORTH ICS- FORTH.](https://reader030.fdocuments.net/reader030/viewer/2022032701/56649c765503460f94929f70/html5/thumbnails/6.jpg)
6ICS-
FORTH
Synchronization Failure: RACE !
AK
C
DATA
R
A
B
Z
X
Y
INPUT
R
X
DATA D0 D1
Y
CLK
CONFLICT
Conflict Condition:
CLK = +
![Page 7: Data Synchronization Issues in GALS SoCs Rostislav (Reuven) Dobkin and Ran Ginosar Technion Christos P. Sotiriou FORTH ICS- FORTH.](https://reader030.fdocuments.net/reader030/viewer/2022032701/56649c765503460f94929f70/html5/thumbnails/7.jpg)
7ICS-
FORTH
Conflict / Safe Zones
Conflict Condition:
CLK
T/2 T 3T/2 CLK
T/2
0
W
SS SConflict zones
![Page 8: Data Synchronization Issues in GALS SoCs Rostislav (Reuven) Dobkin and Ran Ginosar Technion Christos P. Sotiriou FORTH ICS- FORTH.](https://reader030.fdocuments.net/reader030/viewer/2022032701/56649c765503460f94929f70/html5/thumbnails/8.jpg)
Three Solutions
![Page 9: Data Synchronization Issues in GALS SoCs Rostislav (Reuven) Dobkin and Ran Ginosar Technion Christos P. Sotiriou FORTH ICS- FORTH.](https://reader030.fdocuments.net/reader030/viewer/2022032701/56649c765503460f94929f70/html5/thumbnails/9.jpg)
9ICS-
FORTH
Solution 1:Timing Verification
• Extract delays• Verify that CLK falls inside the SAFE
zones
T/2 T 3T/2 CLK
T/2
+DNOR
0
W
SS SConflict zones
SAFE
SAFE
SAFE …
![Page 10: Data Synchronization Issues in GALS SoCs Rostislav (Reuven) Dobkin and Ran Ginosar Technion Christos P. Sotiriou FORTH ICS- FORTH.](https://reader030.fdocuments.net/reader030/viewer/2022032701/56649c765503460f94929f70/html5/thumbnails/10.jpg)
10ICS-
FORTH
Solution 1:Matched Delay Port Control
AK
Clock Reset
REG
Local Clock Generator
PortREQ
ACK
LocallySynchronous
IslandDATA
XFER
MU
TE
X
MU
TE
X
MU
TE
X
R
A
B
Z
X
Y
INPUT
MatchedClock-TreeDelay, CLK
CLKCLK
C
Adjustable Delay Line ~ T/2
![Page 11: Data Synchronization Issues in GALS SoCs Rostislav (Reuven) Dobkin and Ran Ginosar Technion Christos P. Sotiriou FORTH ICS- FORTH.](https://reader030.fdocuments.net/reader030/viewer/2022032701/56649c765503460f94929f70/html5/thumbnails/11.jpg)
11ICS-
FORTH
Solution 1: Disadvantages
• Clock tree delays must be re-verified after each layout iteration
• The solution is sensitive to thermal and voltage variations
![Page 12: Data Synchronization Issues in GALS SoCs Rostislav (Reuven) Dobkin and Ran Ginosar Technion Christos P. Sotiriou FORTH ICS- FORTH.](https://reader030.fdocuments.net/reader030/viewer/2022032701/56649c765503460f94929f70/html5/thumbnails/12.jpg)
12ICS-
FORTH
Solution 2:Two-Flop Synchronizer • Low bandwidth
• Resolution time: one clock cycle
• Data Cycle: At least 3 clock cycles
REG
CLK
Locally Synchronous Island
REQENABLE
ACK
DATAINPUT
RESET
![Page 13: Data Synchronization Issues in GALS SoCs Rostislav (Reuven) Dobkin and Ran Ginosar Technion Christos P. Sotiriou FORTH ICS- FORTH.](https://reader030.fdocuments.net/reader030/viewer/2022032701/56649c765503460f94929f70/html5/thumbnails/13.jpg)
13ICS-
FORTH
Solution 3:Locally Delayed Latching
CLOCKLEAVES
LATCH DATA REG2REG1
ACK
CLDL
REQ CONTROL
YY1L
Y ...
![Page 14: Data Synchronization Issues in GALS SoCs Rostislav (Reuven) Dobkin and Ran Ginosar Technion Christos P. Sotiriou FORTH ICS- FORTH.](https://reader030.fdocuments.net/reader030/viewer/2022032701/56649c765503460f94929f70/html5/thumbnails/14.jpg)
14ICS-
FORTH
Solution 3:Time Budget
MS DCTRL Y1
Clock Y
Port WinsConflic
t
MS DCTRLY1 Clock Wins
MUTEX Metastability
Resolution
Asynchronous Controller
Delay
Clock Y1High-Phase
![Page 15: Data Synchronization Issues in GALS SoCs Rostislav (Reuven) Dobkin and Ran Ginosar Technion Christos P. Sotiriou FORTH ICS- FORTH.](https://reader030.fdocuments.net/reader030/viewer/2022032701/56649c765503460f94929f70/html5/thumbnails/15.jpg)
15ICS-
FORTH
36
38
40
42
44
46
48
350 250 180 130 90 70
Feature Size (nm)
FO
4 G
ate
Del
ays
10,000 1,000,000
How much resolution time?
• Less than 50 FO4 delays needed to resolve metastability
• ASIC / SoC clocks are slow: T > 100 FO4 delays• Conclusions:
o Fast clocks: Half a cycle is budgeted for M/S resolutiono Slower clocks (T>200 FO4): Quarter cycle
REQUIRED MTBF (YEARS)
![Page 16: Data Synchronization Issues in GALS SoCs Rostislav (Reuven) Dobkin and Ran Ginosar Technion Christos P. Sotiriou FORTH ICS- FORTH.](https://reader030.fdocuments.net/reader030/viewer/2022032701/56649c765503460f94929f70/html5/thumbnails/16.jpg)
16ICS-
FORTH
Solution 3:Operating Modes
Y
REQ
ACK
L
Y1
DATA Data0 Data1
No Conflict Conflict(Port Wins)
Data2 Data3
Conflict(Clock Wins)
No Conflict(Reduced Cycle)
Data4
dCTRLDelayed Clock
Worst case = dCTRL
Delayed RequestWorst Case = T/2
Delayed Clock
![Page 17: Data Synchronization Issues in GALS SoCs Rostislav (Reuven) Dobkin and Ran Ginosar Technion Christos P. Sotiriou FORTH ICS- FORTH.](https://reader030.fdocuments.net/reader030/viewer/2022032701/56649c765503460f94929f70/html5/thumbnails/17.jpg)
17ICS-
FORTH
Solution 3:A. Decoupled Input Port
LATCH
CTRL
DATA REG2REG1
ACKDO
LA
DI
MUTEX
R1
DL
REQ
R2 R3
YY1L
Y ...
DCTRL=
D{R3+DO+ DI+L-R2-}
![Page 18: Data Synchronization Issues in GALS SoCs Rostislav (Reuven) Dobkin and Ran Ginosar Technion Christos P. Sotiriou FORTH ICS- FORTH.](https://reader030.fdocuments.net/reader030/viewer/2022032701/56649c765503460f94929f70/html5/thumbnails/18.jpg)
18ICS-
FORTH
Solution 3:B. Decoupled Output Port
DATADATA
ReqREG
DataOutREG
CTRL
R1
A1Ack
REG1Ack
REG2 DL
MUTEX
ROUT
AIN
R2
OUTPUT PORT
SYNCISLAND
A2
A3
A4
DCTRL= D{A4+ A1+ A3-}
![Page 19: Data Synchronization Issues in GALS SoCs Rostislav (Reuven) Dobkin and Ran Ginosar Technion Christos P. Sotiriou FORTH ICS- FORTH.](https://reader030.fdocuments.net/reader030/viewer/2022032701/56649c765503460f94929f70/html5/thumbnails/19.jpg)
19ICS-
FORTH
Solution 3:C. A Simpler Input Port
LATCHDATA REG2REG1
ACKDLATCH
MUTEX
DL
REQ Y
YY1L
DCTRL= DLATCH +
DTX {ACK+ REQ-}
![Page 20: Data Synchronization Issues in GALS SoCs Rostislav (Reuven) Dobkin and Ran Ginosar Technion Christos P. Sotiriou FORTH ICS- FORTH.](https://reader030.fdocuments.net/reader030/viewer/2022032701/56649c765503460f94929f70/html5/thumbnails/20.jpg)
20ICS-
FORTH
Solution 3:Analysis
MS DCTRL Y1
Clock Y
T/4 for M/S Resolution
Asynchronous Controller
Delay
Minimal Clock High-Phase,
THP ~3 FO4 gate delays
• Example: T=160 FO4 gate delays. Constraint:
40 3 37 FO4 gate delays4
CTRL HP
TD T
Conflict
DL
![Page 21: Data Synchronization Issues in GALS SoCs Rostislav (Reuven) Dobkin and Ran Ginosar Technion Christos P. Sotiriou FORTH ICS- FORTH.](https://reader030.fdocuments.net/reader030/viewer/2022032701/56649c765503460f94929f70/html5/thumbnails/21.jpg)
21ICS-
FORTH
Solution 3:Simulations
CircuitCritical PathLatency(0.35)
InverterFO4
delays
Decoupled Input Port
R3+Do+Di+L–R2 –3.13 ns24
Decoupled Output Port
A4+A1+A3–1.81 ns14
Simple Input Port with Decoupled Output Port
Latch DelayA2+R2–2.13 ns16
*These results are based on data bus width of 16 bits
![Page 22: Data Synchronization Issues in GALS SoCs Rostislav (Reuven) Dobkin and Ran Ginosar Technion Christos P. Sotiriou FORTH ICS- FORTH.](https://reader030.fdocuments.net/reader030/viewer/2022032701/56649c765503460f94929f70/html5/thumbnails/22.jpg)
22ICS-
FORTH
Summary
• Design of arbitrated clocks for GALS SoCs must consider clock tree delays to control the risk of synchronization failures
• Presented three solutions:o Extract the delays and verify timingo Employ 2-flop synchronizers or matched-delay async
ports (low bandwidth)
o Employ locally-delayed ports(high bandwidth)