mbowler Posted November 22, 2011 Report Share Posted November 22, 2011 So my register to bus adapter came across an unexpected value in the uvm_reg_bus_op::kind field... UVM_BURST_WRITE. According to the class reference the uvm_access_e enumeration only has two values (UVM_READ and UVM_WRITE). What is to be done with this value? If I treat it the same as UVM_WRITE I get an interesting sequence of transactions which are generated by a uvm_mem::burst_write() call which is trying to burst 6 32-bit words, offset 0x388 on a memory mapped at 0xc4000. //My data array to be bursted. 525705 TESTCASE: reg_data = 0x0000000029f79058 525705 TESTCASE: reg_data = 0x00000000982bcf4c 525705 TESTCASE: reg_data = 0x00000000031101fe 525705 TESTCASE: reg_data = 0x000000007f494bbb 525705 TESTCASE: reg_data = 0x00000000f268f9cf 525705 TESTCASE: reg_data = 0x000000007414996a //The six uvm_reg_bus_op transactions that the uvm_reg_adapter::reg2bus method sees: 525705 EB_REG_ADAPT: TESTCASE: UVM_BURST_WRITE addr=0x00000000000c4388, data=0x0000000029f79058, n_bits=32 525725 EB_REG_ADAPT: TESTCASE: UVM_BURST_WRITE addr=0x00000000000c438c, data=0x0000000000000000, n_bits=0 525745 EB_REG_ADAPT: TESTCASE: UVM_BURST_WRITE addr=0x00000000000c4390, data=0x0000000000000000, n_bits=32 525765 EB_REG_ADAPT: TESTCASE: UVM_BURST_WRITE addr=0x00000000000c4394, data=0x0000000000000000, n_bits=32 525785 EB_REG_ADAPT: TESTCASE: UVM_BURST_WRITE addr=0x00000000000c4398, data=0x0000000000000000, n_bits=32 525805 EB_REG_ADAPT: TESTCASE: UVM_BURST_WRITE addr=0x00000000000c439c, data=0x0000000000000000, n_bits=32 All have the expected addresses. I like the first transaction. The second one has n_bits set to 0 which is unexpected. The third through 6th have n_bits back at 32, but the data field is full of zeros in each case. What is the register adapter supposed to do with a uvm_reg_bus_op::kind of UVM_BURST_WRITE? I cannot find any examples of this in the 1.1 reference implementation. Thanks, Michael Quote Link to comment Share on other sites More sharing options...
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.