L5.1.1 Separate local skew from clock spread

EasyImplement12 minOpenROAD · serverReview the topic

Turn clock arrival times into the skew that each real data path sees.

Hardware context: Four flip-flops on three clock-tree branches. Distinguish local data-path skew from the full clock arrival spread.

The propagated-clock report gives fa=0.2151 ns, fb=0.2885 ns, fc=0.4529 ns and fd=0.5306 ns. Only fa→fb and fc→fd exchange data. All four arrivals use the same rising reference edge.

Return the two local skews using capture minus launch, and the global arrival spread using latest minus earliest. Each answer must be within 0.001 ns of the native report. The grader re-runs the fixed tree; you are completing its numerical handoff worksheet.

Requirements

RequirementLimitUnit
Absolute error in fa → fb skew≤ 0.001ns
Absolute error in fc → fd skew≤ 0.001ns
Absolute error in global arrival spread≤ 0.001ns

Live analysis: Live TT ideal-wire OpenSTA on the propagated three-branch ctree3 circuit from L5.1, with a 1 ns clock and 0.1 ns input slew. Local skews are computed from the minimum-path reports; no physical tree is synthesized here.

Full specification
JSON fieldAllowed valuesMeaning
skew_ab-2 to 2Capture arrival minus launch arrival, in ns.
skew_cd-2 to 2Capture arrival minus launch arrival, in ns.
spread0 to 2Latest minus earliest arrival across the four clock pins, in ns.

Live TT ideal-wire OpenSTA on the propagated three-branch ctree3 circuit from L5.1, with a 1 ns clock and 0.1 ns input slew. Local skews are computed from the minimum-path reports; no physical tree is synthesized here.

Numeric checks use inclusive bounds. A missing measurement always fails. Only the documented fields are accepted.

Examples

Example 1

Reverse both local signs
Input
{
  "skew_ab": -0.0734,
  "skew_cd": -0.0777,
  "spread": 0.3155
}
Output
Absolute error in fa → fb skew: 0.1468 ns
Absolute error in fc → fd skew: 0.1554 ns
Absolute error in global arrival spread: 0 ns

Subtract the arrivals of the two endpoints that actually exchange data.

Example 2

Use the global spread twice
Input
{
  "skew_ab": 0.3155,
  "skew_cd": 0.3155,
  "spread": 0.3155
}
Output
Absolute error in fa → fb skew: 0.2421 ns
Absolute error in fc → fd skew: 0.2378 ns
Absolute error in global arrival spread: 0 ns

Subtract the arrivals of the two endpoints that actually exchange data.

Example 3

Use capture arrival alone
Input
{
  "skew_ab": 0.2885,
  "skew_cd": 0.0777,
  "spread": 0.3155
}
Output
Absolute error in fa → fb skew: 0.2151 ns
Absolute error in fc → fd skew: 0 ns
Absolute error in global arrival spread: 0 ns

Subtract the arrivals of the two endpoints that actually exchange data.

Submission rules

  • Submit one JSON object with every documented configuration field. The supplied circuit and external environment stay fixed.
  • Run measures your configuration. Submit applies the same requirements and records the result.
  • The stated stage and cell corner define this exercise; passing does not establish full chip sign-off.

Hints

Hint 1

The same reference edge cancels when you subtract clock arrivals.

Hint 2

A local skew is not the capture latency by itself.

Hint 3

The earliest and latest sinks need not form a data path.

What is checked: Live TT ideal-wire OpenSTA on the propagated three-branch ctree3 circuit from L5.1, with a 1 ns clock and 0.1 ns input slew. Local skews are computed from the minimum-path reports; no physical tree is synthesized here.

Run and Submit use the same measured requirements. Run is a preview; Submit records an attempt. The fixed circuit and allowed settings use the pinned OpenROAD/OpenSTA engine.

More problems on this topic
Your configuration JSONSaved locally
Ln 1, Col 1Ctrl/⌘ + Enter runs
Not run yet

Run your configuration to inspect the result.

OpenROAD · server