chipsalliance / chipsalliance/Surelog

Backward/Forward Compatibility

Open
#1,707 12 comments 0 reactions 0 assignees View on GitHub
Dominant language
C++
Stars
475
Forks
90
Avg merge
1h 39m
Merged PRs (30d)
37

Description

Is the generated cache file backward compatible? i.e. if a `*.uhdm` file is generated using one version of the binary, can that same be loaded with a newer version of the binary?

I presume the answer is "_No_" because if new classes/properties/refs (basically, any change in model file) were introduced in UHDM, the `uhdmxxxx` IDs will reshuffle losing the ability to load cache files generated using older binaries. So, the next question is - Do these IDs have to be sequential? Is that a requirement as per the standard? If not, why not make these IDs be some sort of hash of their corresponding names to maintain compatibility across binaries.

Contributor guide

No contributing guide indexed for this repository

Research direction

The issue does not name any files, tests, or entry points. Begin by locating the UHDM cache serialization and deserialization code and the generation of uhdmxxxx IDs. Done means establishing whether cross-version loading is supported and deciding whether IDs must remain sequential or can be made stable across binaries.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
compilers
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.