calyxir / calyx

Intermediate Language (IL) for Hardware Accelerator Generators
https://calyxir.org
MIT License
450 stars 44 forks source link

[Cider 2] Memory data dump format & serialization/deserialization #1988

Closed EclecticGriffin closed 1 month ago

EclecticGriffin commented 1 month ago

Part of #1913 and half of #1968.

This defines the data dump format and the serialization and deserialization code needed to write the format to/from files in addition to the code needed to load it into the memories and out of them. This features frankly way too many property tests to confirm things work appropriately, but hey it seems to work now.

Next up with this is integrating it into the command for cider2 and creating an external tool to parse out old-style data files into the expected data dump and back.