diff --git a/examples/simple_rw_reg.rdl b/examples/simple_rw_reg.rdl new file mode 100644 index 0000000..ae2b486 --- /dev/null +++ b/examples/simple_rw_reg.rdl @@ -0,0 +1,33 @@ +// This RDL file contains 4 simple types of registers: +// - A 1-dimensional register +// - A 1-dimensional register that uses an enumeration +// - A 3-dimensional register +// - A 2-dimensional register with the external property set +// +// Note that no reset is defined, so none of the registers will be +// resetable. + +addrmap simple_rw_reg { + // 1-D register + reg { + field {sw=rw; hw=rw; we;} f1 [15:0]; + field {sw=rw; hw=rw; we;} f2 [31:16]; + } register_1d; + + // 1-D register with enumeration + reg { + enum example_encode { + value_1 = 16'd0; + value_2 = 16'd1; + }; + + field {sw=rw; hw=rw; we;} f1 [15:0]; + f1->encode = example_encode; + } register_1d_enum; + + // 3-D register + reg { + field {sw=rw; hw=rw; we;} f1 [15:0]; + field {sw=rw; hw=rw; we;} f2 [31:16]; + } register_3d[2][2]; +};