Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Register fields with AccessType ROV don't get names #1417

Open
louiecaulfield opened this issue May 15, 2024 · 1 comment
Open

Register fields with AccessType ROV don't get names #1417

louiecaulfield opened this issue May 15, 2024 · 1 comment

Comments

@louiecaulfield
Copy link
Contributor

There's a line in RegInst.field() which causes registers of type ROV to not be named.

This causes trouble when iterating of the bus registers to build a register map.

I don't see the purpose of this line in fact.

@jijingg
Copy link
Collaborator

jijingg commented May 22, 2024

ROV is a new Type for Readonly value different from RO, Which always used for device version ,
ReadOnlyVersion

RO need declare an wire then connect a signal or value to it

val ro_field  = busif.newRegAt(0x0000, "RO TEST").field(Bits(32 bit), RO, 0x0000abcd,  "ro test")
ro_field := B(0x0000abcd, 32 bit)
//ro_field :=  io.read_only_data
busif.newRegAt(0x0004,"ROV test").field(Bits(32 bit), ROV, 0x0FFF1234,  "rov test")
    0x0000:  bus_rdata <=  ro_field;
    0x0004:  bus_rdata <=  32'h0FFF_1234;

assign ro_field = 32'h0000_ABCD

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants