Two interface driver mechnism

Hello ,
Is it possible for a uvm_driver to get values from one interface and drive it to the other . In conventional environments where a sequence is used (req_items) to provide values to interface signals , instead of that an interface signals are used to provide values to another interface.I dont understand the role of tlm in this. iF Anyone can guide me with some points or pseudo-code it would be helpful . (Both interfaces are in different environments)

In reply to sarth21:

Sounds complicated what you want to do for a simple thing. A few questions to clarify your question:
(1) what do you mean with ‘get values’? Is it seq_items or is it signal values.
(2) what is your second interface. Is it of the same type as the first one?

In reply to chr_sue:

  1. “get values” means one interface signals are directly driven to another . e.g
    inf2.wr_enb2 <= inf1.wr_enb2 ;
    inf2.wr_data2 <= inf2.wr_data2 ;
    I dont think it is possible to making a dummy trans file(based on the signal values of interface1 )and then driving it to interface2 (No seqs or tlm presence ).
    So is there something that allows this mechanism to happen .

  2. Second interface is same as first (some signals are of different protocol so might require some manipulation ) but as connection of two interfaces is not possible directly I was thinking something like mentioned above.

In reply to sarth21:

In reply to chr_sue:

  1. Second interface is same as first (some signals are of different protocol so might require some manipulation ) but as connection of two interfaces is not possible directly I was thinking something like mentioned above.

you can connect two interface.


interface my_intf;
  logic a;
  logic b;
endinterface 

module tbtop;

  my_intf i0();
  my_intf i1();
  assign i1.a = i0.a;
  assign i1.b = i0.b;

    initial begin
      #10;
      i0.a=1;
      #10;
    end
   
    initial begin
      $dumpfile("test.vcd");
      $dumpvars(0,tbtop);
    end
  
endmodule


I don’t understand why do you want to connect two interface?
Why do you need two interface with same values?