ucb-bar / hammer

Hammer: Highly Agile Masks Made Effortlessly from RTL
BSD 3-Clause "New" or "Revised" License
255 stars 59 forks source link

Investigate VPD, FSDB Support #769

Open harrisonliew opened 2 years ago

harrisonliew commented 2 years ago
  1. From ucb-bar/chipyard#1173, it looks like Voltus 21.12 is unable to read VPDs written by VCS S-2021.09 (throws syntax error). Converting the waveform to VCD works instead.
  2. From previous tests, Voltus' FSDB reader was a few releases behind the equivalent VCS release, causing version compatibility issues.

This likely affects other Cadence tools that can read activity files (Joules, Tempus, etc.).

TASK: find out compatibility matrix + potential workarounds (e.g. hard dependency on Xcelium, older VCS versions).

harrisonliew commented 2 years ago

Cadence FSDB compatibility findings: from documentation of Verdi <-> FSDB versions, it appears that Cadence uses an FSDB version that is approx. 2 years older.

To check this: HammerTool needs to implement has_setting so that we can check against sim.vcs.version if the waveform file is detected as an fsdb.

dpgrubb13 commented 2 years ago

To clarify, the Verdi version and Cadence tool version seems to generally match the same year. However, the correct vcs version must be used (ie. a vcs version from the same year as the Cadence tool).

dpgrubb13 commented 2 years ago

Also to follow up, it appears that the available Cadence tools don't use above FSDB version 5.8 as of now.