Latch-based Design
-
Upload
hyatt-thomas -
Category
Documents
-
view
29 -
download
0
description
Transcript of Latch-based Design
![Page 1: Latch-based Design](https://reader035.fdocuments.net/reader035/viewer/2022072014/56812ee0550346895d947de8/html5/thumbnails/1.jpg)
EE1411
© Digital Integrated Circuits2nd Timing Issues
Latch-based Design Latch-based Design
![Page 2: Latch-based Design](https://reader035.fdocuments.net/reader035/viewer/2022072014/56812ee0550346895d947de8/html5/thumbnails/2.jpg)
EE1412
© Digital Integrated Circuits2nd Timing Issues
Register ParametersRegister ParametersD
Clk
Q
Delays can be different for rising and falling data transitions
D
Q
Clk
tc-q
thold
T
tsu
![Page 3: Latch-based Design](https://reader035.fdocuments.net/reader035/viewer/2022072014/56812ee0550346895d947de8/html5/thumbnails/3.jpg)
EE1413
© Digital Integrated Circuits2nd Timing Issues
Latch ParametersLatch Parameters D
Clk
Q
Delays can be different for rising and falling data transitions
D
Q
Clk
tc-q
thold
PWmtsu
td-q
T
![Page 4: Latch-based Design](https://reader035.fdocuments.net/reader035/viewer/2022072014/56812ee0550346895d947de8/html5/thumbnails/4.jpg)
EE1414
© Digital Integrated Circuits2nd Timing Issues
Latch timingLatch timing
D
Clk
Q
tD-Q
tClk-Q
• When data arrives to transparent latch- latch is a “soft” barrier
• When data arrives to closed latch - data has to be ‘re-launched’
![Page 5: Latch-based Design](https://reader035.fdocuments.net/reader035/viewer/2022072014/56812ee0550346895d947de8/html5/thumbnails/5.jpg)
EE1415
© Digital Integrated Circuits2nd Timing Issues
Flip-Flop – Based TimingFlip-Flop – Based Timing
Flip-flop
Logic
Flip-flop delay
Skew
Logic delay
TSU
TClk-Q
Representation after M. Horowitz, VLSI Circuits 1996.
![Page 6: Latch-based Design](https://reader035.fdocuments.net/reader035/viewer/2022072014/56812ee0550346895d947de8/html5/thumbnails/6.jpg)
EE1416
© Digital Integrated Circuits2nd Timing Issues
Timing ConstraintsTiming Constraints
R1
D QCombinational
LogicIn
CLK tCLK1
R2
D Q
tCLK2
tc qtc q, cdtsu, thold
tlogict
Minimum cycle time:Tclk tc-q + tsu + tlogic
Basic constraints without clock skew and jitter
Hold time constraint:t(c-q, cd) + t(logic, cd) thold
![Page 7: Latch-based Design](https://reader035.fdocuments.net/reader035/viewer/2022072014/56812ee0550346895d947de8/html5/thumbnails/7.jpg)
EE1417
© Digital Integrated Circuits2nd Timing Issues
Latch-Based TimingLatch-Based Timing
L1Latch
Logic
Logic
L2Latch
L1 latch
L2 latch
Skew
Can tolerate skew!
Longpath
Shortpath
Static logic
![Page 8: Latch-based Design](https://reader035.fdocuments.net/reader035/viewer/2022072014/56812ee0550346895d947de8/html5/thumbnails/8.jpg)
EE1418
© Digital Integrated Circuits2nd Timing Issues
Synchronous Pipelined DatapathSynchronous Pipelined Datapath
In
tpd,reg tpd1
D
R1
Q
CLK
LogicBlock #1
tpd2
D
R2
QLogic
Block #2
tpd3
D
R3
Q D
R4
Q LogicBlock #3
TCLK
CLK
TCLK
Block #1
Block #2
• Register based pipeline
The computation between the registers must be completed within Tclk
![Page 9: Latch-based Design](https://reader035.fdocuments.net/reader035/viewer/2022072014/56812ee0550346895d947de8/html5/thumbnails/9.jpg)
EE1419
© Digital Integrated Circuits2nd Timing Issues
Latch-Based DesignLatch-Based Design
L1Latch
Logic
Logic
L2Latch
L1 latch is transparentwhen = 0
L2 latch is transparent when = 1
![Page 10: Latch-based Design](https://reader035.fdocuments.net/reader035/viewer/2022072014/56812ee0550346895d947de8/html5/thumbnails/10.jpg)
EE14110
© Digital Integrated Circuits2nd Timing Issues
Register-based vs Latch-based PipelineRegister-based vs Latch-based Pipeline• Register-based: using edge triggered registers
CombinationalLogic
R1 R2Cin Cout Out
In
CLK
• Latch-based: using level transparent latches- break combinational logic in two blocks- replace register by two lathes and move second latch between the blocks
Clk ClkClk
Logic Block 1
Logic Block 2
In OutL1a L1b L2a
![Page 11: Latch-based Design](https://reader035.fdocuments.net/reader035/viewer/2022072014/56812ee0550346895d947de8/html5/thumbnails/11.jpg)
EE14111
© Digital Integrated Circuits2nd Timing Issues
Latch-based Pipeline designLatch-based Pipeline design
CLK1
CLK2
TCLK
Nominal computation:
Computation in each block is nominally performed in phase CLK=0 (block A computes when CLK1= 0, block B computes when CLK2=0)
The entire computation of d must be ready by edge 4 => Delay =1.5 Tclk
tpd,AIn must be ready prior to CLK1=0
a valid
tpd,Bc valid
d ready
tsu+ tDQ
CLB_A CLB_BInput
b ready
QDIn CLB_A QD QD
CLK1
L1 L2 L1
CLK2 CLK1
CLB_Btpd,A tpd,Ba b c d e
![Page 12: Latch-based Design](https://reader035.fdocuments.net/reader035/viewer/2022072014/56812ee0550346895d947de8/html5/thumbnails/12.jpg)
EE14112
© Digital Integrated Circuits2nd Timing Issues
Slack-borrowing Slack-borrowing
CLK1
CLK2
TCLK
tpd,A
a valid
tDQ tpd,B
b valid d valid
tDQ
e valid
slack passed to next stage
= slackc valid
CLB_A computes CLB_B computes
Actual computation can start earlier, when CLK=1, as long as data is available and stable (e.g. block A does not have to wait for CLK1 to be 0)
QDIn CLB_A QD QD
CLK1
L1 L2 L1
CLK2 CLK1
CLB_Btpd,A tpd,Ba b c d e