TAU ¡2014 ¡ Contest ¡and ¡more ¡… ¡ Igor ¡Keller ¡
TAU ¡2014: ¡ ¡Timing ¡Workshop ¡ n STA ¡and ¡related ¡areas ¡ ¨ Analog ¡circuits ¡… ¡also ¡related ¡ n Right ¡forum ¡for ¡top ¡STA ¡experts ¡ n Covers ¡both ¡mainstream ¡and ¡controversial ¡topics ¡ n ¡Goals: ¡ ¨ ¡Re-‑discover ¡STA ¡ ¨ ¡Bring ¡STA ¡science ¡to ¡design ¡houses ¡ ¨ ¡Bring ¡design ¡experience ¡to ¡academics ¡and ¡EDA ¡ ¨ Exchange ¡ideas ¡and ¡build ¡networking ¡ ¨ EnLce ¡students ¡to ¡stay ¡in ¡EDA ¡ ¨ Have ¡fun ¡… ¡ 2 ¡
Technical ¡Program ¡ n ¡48 ¡registered ¡aQendees ¡ n EDA, ¡design ¡houses, ¡foundries, ¡academia ¡ ¨ Altera, ¡IBM, ¡Intel, ¡Cisco, ¡Qualcomm, ¡Broadcom, ¡ADI, ¡ TI, ¡Oracle, ¡ARM, ¡Swatch ¡group, ¡Samsung, ¡TSMC, ¡ NVIDIA, ¡Cadence, ¡Synopsys ¡ ¨ 8 ¡universiLes ¡ ¡ ¨ Countries: ¡Switzerland, ¡Greece, ¡Ireland, ¡ ¡Netherlands, ¡ Taiwan, ¡Japan, ¡Korea, ¡USA ¡ n 6 ¡technical ¡sessions ¡squeezed ¡into ¡2 ¡days ¡ n 17 ¡papers ¡(2 ¡invited) ¡ n 2 ¡emoLonal ¡panel ¡discussions ¡ n Timing ¡Contest: ¡ ¡8 ¡teams ¡
The ¡TAU ¡2014 ¡Contest ¡ Removing ¡Pessimism ¡during ¡Timing ¡Analysis ¡ Jin ¡Hu ¡ Debjit ¡Sinha ¡ Igor ¡Keller ¡ IBM ¡Corp. ¡ IBM ¡Corp. ¡ Cadence ¡ [Speaker] ¡ Sponsors: ¡ 4 ¡ TAU ¡2014 ¡Workshop ¡– ¡March ¡6 th -‑7 th , ¡2014 ¡
Past ¡and ¡Present ¡Timing ¡Contests ¡ Goal ¡of ¡Coordinated ¡Academic-‑Industry ¡Contests ¡ Guided ¡awareness ¡of ¡challenging ¡projects ¡at ¡earlier ¡academic ¡stages ¡ Encourage ¡novel ¡parallelizaLon ¡techniques ¡(including ¡mulL-‑threading) ¡ Facilitate ¡infrastructure/benchmarks ¡for ¡future ¡research ¡ Develop ¡Clever ¡Methods ¡for ¡Solving ¡Difficult ¡Problems ¡ Gain ¡insight ¡from ¡other ¡perspecLves ¡and ¡approaches ¡ Allow ¡algorithm ¡development ¡through ¡focused ¡problem ¡statement ¡ Previous ¡Contests ¡ 5 ¡
Focused ¡Problem ¡Statement ¡ Develop ¡an ¡algorithm ¡to ¡perform ¡ ¡ ¡ Common ¡Path ¡Pessimism ¡Removal ¡ ¡CPPR ¡ ¡ during ¡Lming ¡analysis ¡ CPPR: ¡the ¡process ¡of ¡removing ¡inherent ¡but ¡arJficial ¡pessimism ¡from ¡Jming ¡tests ¡and ¡paths ¡ 6 ¡
CPPR ¡Relevance ¡ Variability ¡causes ¡many ¡sources ¡of ¡Mming ¡uncertainty ¡ Manufacturing ¡VariaLons ¡ Metal ¡thickness ¡(CMP) ¡ Random ¡dopant ¡effects ¡( V t ) ¡ Line-‑edge ¡roughness ¡ Voltage ¡& ¡Temperature ¡VariaLons ¡ Sinha ¡et ¡al. ¡[TAU ¡2013] ¡ Across ¡surface ¡of ¡chip ¡ From ¡cycle ¡to ¡cycle ¡ Difficult ¡to ¡ accurately ¡and ¡quickly ¡model ¡for ¡all ¡variaJon ¡sources ¡ Electrical ¡Effects ¡ Create ¡ lower ¡( early ) ¡and ¡ upper ¡( late ) ¡delay ¡bounds ¡[ lb , ¡ ub ] ¡ PotenLal ¡coupling ¡noise ¡ Commonly ¡found ¡by ¡deraLng ¡original ¡delay, ¡e.g., ¡ ± 5% ¡ Simultaneous ¡signal ¡switching ¡ Any ¡unknown, ¡difficult-‑to-‑model ¡effect ¡can ¡be ¡accounted ¡for ¡ *Global ¡chip-‑to-‑chip ¡variaJons ¡ Good ¡news: ¡addiLonal ¡ pessimism ¡introduced ¡(desirable ¡for ¡safe ¡chip ¡operaLon) ¡ Bad ¡ ¡ ¡ ¡news: ¡addiLonal ¡ pessimism ¡introduced ¡(unnecessary) ¡ CPPR ¡prevents ¡over-‑opLmizaLon ¡of ¡design ¡due ¡to ¡ false ¡ Mming ¡fails ¡ 7 ¡
SequenLal ¡Timing ¡Analysis ¡ Details ¡provided ¡in contest_education.pdf Hold ¡ ¡ ¡Tests ¡( Same ¡Cycle) ¡ [ data ¡must ¡be ¡stable ¡t HOLD ¡ ¡Jme ¡ ¡a^er ¡ ¡clock ¡arrives ] ¡ slack HOLD = at ( D ) – at ( CK ) – t HOLD arrival ¡ arrival ¡ pre-‑CPPR ¡slack ¡ hold ¡Jme ¡ Jme ¡at ¡D ¡ Jme ¡at ¡CK ¡ Timing ¡tests ¡are ¡checked ¡against ¡data ¡pin ¡ D ¡and ¡clock ¡pin ¡ CK ¡of ¡FF ¡ IN ¡ Launching ¡FF 1 ¡ Capturing ¡FF 2 ¡ OUT ¡ D ¡ Test ¡ CombinaJonal ¡Logic ¡ CK ¡ Data ¡Path ¡ ( DP ) ¡ CLOCK ¡ Clock ¡Path ¡ ( CP ) ¡ 8 ¡
SequenLal ¡Timing ¡Analysis ¡ Details ¡provided ¡in contest_education.pdf Hold ¡ ¡ ¡Tests ¡( Same ¡Cycle) ¡ [ data ¡must ¡be ¡stable ¡t HOLD ¡ ¡Jme ¡ ¡a^er ¡ ¡clock ¡arrives ] ¡ E L slack HOLD = at ( D ) – at ( CK ) – t HOLD pre-‑CPPR ¡slack ¡ early ¡arrival ¡ late ¡arrival ¡ hold ¡Jme ¡ Jme ¡at ¡D ¡ Jme ¡at ¡CK ¡ Timing ¡tests ¡are ¡checked ¡against ¡data ¡pin ¡ D ¡and ¡clock ¡pin ¡ CK ¡of ¡FF ¡ at ¡opposite ¡modes ¡ IN ¡ Launching ¡FF 1 ¡ Capturing ¡FF 2 ¡ OUT ¡ D ¡ Test ¡ CombinaJonal ¡Logic ¡ CK ¡ Data ¡Path ¡ ( DP ) ¡ Data ¡Path ¡ ( DP ) ¡ CLOCK ¡ Clock ¡Path ¡ ( CP ) ¡ Clock ¡Path ¡ ( CP ) ¡ Signal ¡cannot ¡be ¡both ¡early ¡and ¡late ¡in ¡common ¡porJon ¡ à ¡This ¡is ¡inherent ¡but ¡arLficial ¡pessimism ¡ 9 ¡
Common ¡Path ¡Pessimism ¡Removal ¡ Details ¡provided ¡in contest_education.pdf Hold ¡ ¡ ¡Tests ¡( Same ¡Cycle) ¡ [ data ¡must ¡be ¡stable ¡t HOLD ¡ ¡Jme ¡ ¡a^er ¡ ¡clock ¡arrives ] ¡ E L L E slack HOLD = at ( D ) – at ( CK ) – t HOLD + [at ( cp ) – at ( cp )] Apply ¡ [Hold ¡ ¡ CPPR ¡credit ] ¡ post -‑CPPR ¡slack ¡early ¡arrival ¡ late ¡arrival ¡ late ¡arrival ¡ early ¡arrival ¡ hold ¡Jme ¡ Jme ¡at ¡D ¡ Jme ¡at ¡CK ¡ Jme ¡at ¡cp ¡ Jme ¡at ¡cp ¡ Timing ¡tests ¡are ¡checked ¡against ¡data ¡pin ¡ D ¡and ¡clock ¡pin ¡ CK ¡of ¡FF ¡ at ¡opposite ¡modes ¡ IN ¡ Launching ¡FF 1 ¡ Capturing ¡FF 2 ¡ OUT ¡ D ¡ Test ¡ CombinaJonal ¡Logic ¡ CK ¡ Data ¡Path ¡ ( DP ) ¡ CLOCK ¡ Clock ¡Path ¡ ( CP ) ¡ common ¡point ¡(cp) ¡ Signal ¡cannot ¡be ¡both ¡early ¡and ¡late ¡in ¡common ¡porJon ¡ à ¡This ¡is ¡inherent ¡but ¡arLficial ¡pessimism ¡ 10 ¡
PotenLal ¡Impact ¡of ¡CPPR ¡ *if ¡done ¡correctly ¡ CPPR ¡can ¡only ¡improve ¡test ¡slacks ¡(never ¡overly ¡opMmisMc) ¡ Pre-‑CPPR ¡ ¡ ¡slack ¡ ≈ ¡ ¡ ¡ ¡-‑55 ¡ Post-‑CPPR ¡slack ¡ ≈ ¡+275 ¡ Post-‑CPPR ¡Test ¡Slack ¡ Pre-‑CPPR ¡Test ¡Slack ¡ pre-‑CPPR ¡slack ¡= ¡post-‑CPPR ¡slack ¡ no ¡post-‑CPPR ¡slack ¡worse ¡ ¡ than ¡its ¡pre-‑CPPR ¡slack ¡ 11 ¡
Why ¡is ¡CPPR ¡Important? ¡ Timing ¡opLmizaLon ¡ ¡ Power ¡opLmizaLon ¡ Slack ¡ Slack ¡ CPPR ¡ Done! ¡ Slack ¡ 12 ¡
Why ¡is ¡CPPR ¡Difficult? ¡ n ExponenLal ¡complexity ¡ n Analysis ¡of ¡graph ¡for ¡re-‑converging ¡paths ¡ n High ¡runLme ¡and ¡memory ¡ n Grows ¡fast ¡with ¡number ¡of ¡clock ¡nets ¡in ¡the ¡ design ¡ n Possible ¡but ¡not ¡easy ¡to ¡parallelize ¡ n Devil ¡is ¡in ¡the ¡details ¡… ¡ 13 ¡
TAU ¡2014 ¡Contest ¡MoLvaLon ¡ CPPR ¡Challenges ¡ Analysis ¡is ¡path-‑based: ¡can ¡have ¡ exponenMal ¡runMme ¡ à ¡CPPR ¡can ¡be ¡overly ¡opLmisLc ¡if ¡not ¡enough ¡paths ¡are ¡considered ¡ ExisLng ¡literature ¡and ¡research ¡is ¡limited ¡ Contest ¡/ ¡Topic ¡Scope ¡ Timeline ¡spans ¡roughly ¡2.5 ¡months ¡ *not ¡accounJng ¡for ¡holidays ¡ Only ¡Hold ¡+ ¡Setup ¡tests ¡considered ¡ No ¡latches ¡(flush ¡segments) ¡considered ¡ Limited ¡design ¡topologies, ¡e.g., ¡clock ¡tree ¡reconvergence ¡ Limited ¡to ¡determinisJc ¡Jming ¡(no ¡staJsJcal) ¡ Lessons ¡Learned ¡from ¡Previous ¡Contests ¡ Simplify ¡input ¡/ ¡output ¡processing ¡ à ¡focus ¡on ¡algorithm ¡development ¡and ¡performance ¡opLmizaLons ¡ Provide ¡adequate ¡documentaLon ¡ à ¡assumes ¡ no ¡prior ¡knowledge ¡of ¡Lming ¡analysis ¡or ¡CPPR ¡ 14 ¡
Recommend
More recommend