get register by address instead of name

来源:互联网 发布:sql是什么 编辑:程序博客网 时间:2024/05/16 10:35

Following is the example that can map the address(from SVID generator) with the register in RAL Model.

 

 

    vmm_ral_reg      ral_reg[];

    bit[7:0]         addr;

 

    //get RAL model

    ral_sys.SVIDReg0.get_registers(ral_reg);

 

    //search address, match with the expected addr

    foreach(ral_reg[i]) begin

      addr=ral_reg[i].get_address_in_system();

      //if match, access the register via RAL

      if(addr==8'h08) begin

        ral_reg[i].read(stat,rdata);

      end

end

 

=================== another way=================

myreg=ral_sys.svidReg1.get_reg_by_offset(trans.payload);
     if(myreg==null) begin
       `vmm_warning(log,$psprintf("GETREG1 with Reserved address=%0h",trans.payload));
     end
     else begin
        myreg.peek(stat,rdata);
     end

原创粉丝点击