srdl2sv/examples/simple_rw_reg.rdl

34 lines
904 B
Plaintext
Raw Normal View History

// 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];
};