efabless / caravel

Caravel is a standard SoC harness with on chip resources to control and read/write operations from a user-dedicated space.
https://caravel-harness.readthedocs.io/
Apache License 2.0
296 stars 69 forks source link

Ignore comments and add error checking. #542

Open d-m-bailey opened 6 months ago

d-m-bailey commented 6 months ago

Require default constants in 13'hxxxx format. Require default constants to be 13 binary bits maximum. Standardize file names to lower case hex digits.

NOTE: Invalid values are merely ignored. No error code is returned.

Fixes #539 and #540

d-m-bailey commented 6 months ago

@RTimothyEdwards

I wonder if it needs a more forceful exit on error in a way that would halt the build process instead of just printing an error message.

Good point. What about caravan? It doesn't use gpio 14-24, so should it throw an error for invalid values for those gpio? What if the user mistakenly deletes a definition for a gpio?

One solution would be to fail on missing definitions (bad definitions would be missing) when doing the replacement in the mag/verilog.

Can we make that a new issue and go ahead with this update?