Jump to content

Setting different hdlpaths to READ/WRITE access in UVM

Recommended Posts

Hi there


A register can have different RTL implementation based on access_mode.

ie., When a register REG_1 is read in backdoor, actual HDLPATH of the register would point to 'top.abc.dout'.

When a register REG_1 is written in backdoor, actual HDLPATH of the register would point to 'top.abc.dout_temp'


We want to program different hdlpaths to REG_1 based on access mode (READ or WRITE).


Does UVM_REG provide ready-made hookups or methods like add_hdl_path_slice() methods to setup different hdlpaths to READ/WRITE backdoor access? (Inside the DPI based backdoor access itself?)


I checked that write_backdoor and read_backdoor methods need to be overwritten to setup different HDLPATHs based on READ/WRITE access modes. But this involves overriding string based DPI backdoor access factory methods. I'm looking for an alternative here, if it really exists.


Suggestions to this requirement, very much appreciated.


Best regards

Balasubramanian G

Link to comment
Share on other sites



UVM doesnt have a ready to use infrastructure for this. however i do believe with a few building blocks you can accomplish this.


1. i would write a new backdoor deriving from uvm_reg_backdoor

2. each reg with your setup i would set my new backdoor as the backdoor to use instead of the hdl backdoor (.set_backdoor)

3. i would implement the backdoor so that the backdoor has access to to register being accessed currently and via the reg i would have access to the setup of the hdl_backdoor (the path setup)

4. the the standard hdl-path setup i could then choose the right hdl path for a read or a write operation for instance "RTL2-R" for read and "RTL2-W" for write...


i havent coded that and there might be problems along the road but i could see this working.




Link to comment
Share on other sites

  • 3 weeks later...

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Create New...