* declared intwidth, fracwidth, and is_signed UDPs * fix boolean type name in UDP definition * generate hwif fields with fixedpoint indices * make "counter" and "encode" properties mutualy exclusive with signed/fixedpoint * add signed/unsigned to hwif * improved fixedpoint error messages, added validation tests * added fixedpoint tests * fixedpoint/signed not allowed for signal components * added signed/fixedpoint UDP docs * handle single-bit fixedpoint numbers * fix too many positional arguments lint * changed spelling of fixedpoint to fixed-point * use "logic" in place of "unsigned logic" * split signed and fixedpoint docs, added examples * allow enums with is_signed=false * split signed and fixedpoint implementations * assorted nits picked * updated is_signed validation unit test
55 lines
941 B
Plaintext
55 lines
941 B
Plaintext
/*
|
|
* This file defines several property extensions that are understood by the
|
|
* PeakRDL-Regblock SystemVerilog code generator.
|
|
*
|
|
* Compile this file prior to your other SystemRDL sources.
|
|
*
|
|
* For more details, see: https://peakrdl-regblock.readthedocs.io/en/latest/udps/intro.html
|
|
*/
|
|
|
|
property buffer_reads {
|
|
component = reg;
|
|
type = boolean;
|
|
};
|
|
|
|
property rbuffer_trigger {
|
|
component = reg;
|
|
type = ref;
|
|
};
|
|
|
|
property buffer_writes {
|
|
component = reg;
|
|
type = boolean;
|
|
};
|
|
|
|
property wbuffer_trigger {
|
|
component = reg;
|
|
type = ref;
|
|
};
|
|
|
|
property rd_swacc {
|
|
component = field;
|
|
type = boolean;
|
|
};
|
|
|
|
property wr_swacc {
|
|
component = field;
|
|
type = boolean;
|
|
};
|
|
|
|
property is_signed {
|
|
type = boolean;
|
|
component = field;
|
|
default = true;
|
|
};
|
|
|
|
property intwidth {
|
|
type = longint unsigned;
|
|
component = field;
|
|
};
|
|
|
|
property fracwidth {
|
|
type = longint unsigned;
|
|
component = field;
|
|
};
|