google / xls

XLS: Accelerated HW Synthesis
http://google.github.io/xls/
Apache License 2.0
1.22k stars 180 forks source link

Simplify: use one form of serialization used by fuzzer and ir/verilog simulation #1645

Open hzeller opened 1 month ago

hzeller commented 1 month ago

This is something to simplify.

Currently, there are two types of serializations used to represent test vectors to simulation

The fuzzer runner then reads these, and converts into the other serialization format needed for the evaluators. This works,but it makes it harder to add additional information (I am currently looking into adding valid holdoff fuzzing), as that then has to be added to the proto, but also to the ad-hoc serialization.

The proto describing the input data should be broken out of the fuzzer context, made to be a serialization of test vectors (like before, but proto lives somewhere differently), then used in the fuzzer but as well in the evaluators/simulators.

hzeller commented 2 weeks ago

This is now simplified in a way that all simulation inputs take a --testvector_textproto which is of type xls::testvector::SampleInputsProto. The --args/--args_file/--channel_file flags are still supported for now, but they are not used anymore by the fuzzer, so possibly clean to remove.

Nexs steps