Flow of RAL

Can anyone say what is the flow of RAL model for auto prediction,passive prediction and explicit prediction?..

In reply to Anjali Karkagari:

Hi Anjali,

Auto prediction :-

  • When write method of reg is called with value, it will start sequence on assigned sequencer and reg_map after doing necessary reg2bus() adapter conversation.
  • Once, sequence is finished and if ral_model is configured with set_auto_predict(1) then only, write value will be mimic and store to the mirrored value using predict() method.

Explicit prediction :-

  • When write method is called, driver drives the received item on assigned interface.
  • Plugged active monitor must have support to sample the interface and write the transaction on analysis port which further, connected with bus_in port of uvm_reg_predictor.
  • uvm_reg_predictor will receive sampled transaction, and convert bus to reg transaction using bus2reg() adapter method. then call predict() method which will update mirrored value with converted transaction.

Passive prediction :-

  • Passive prediction is same as explicit prediction. plugged passive monitor observe the interface and same as explicit prediction it will write to the bus_in port of uvm_reg_predictor.

In reply to mitesh.patel:

Hi Mitesh,
Thanks for the reply. What is the exact difference between explicit and passive prediction?

In reply to Anjali Karkagari:

Hi,

Explicit and passive prediction are similar to active agent and passive agent in standard uvm hierarchy. Implementation wise, there is no such difference. In explicit prediction, active monitor will sample, interface on which reg sequence is started. while passive prediction works same as passive monitor.
Both predictors updates mirrored value of associated register with retrieved data from interface.