Predicting Read Only Register in RAL

I’m trying to get familiar with RAL and am not quite understanding how prediction of read only registers work.

For example, say I have a DUT with a set of registers where one of these registers is a GO bit and another register is a result register. After setting GO the DUT will perform some set of calculations that that take N cycles. Once these N cycles are up the value produced by the set of operations is stored in the result register to be read out at later time.

In order to verify this DUT I would create a predictor that “mirrors” the calculation that the DUT does.

I was wondering if it makes sense to put this predicted value into the desired value of the RAL so that when a read transaction occurs it compares the DUT value to the value stored in the RAL

Does this make sense? or is this a misunderstanding of how to use RAL for predictions.

In reply to EELearner:

The understanding is correct. Go step by step as below way :
1.Create a Register Model
2.Define Predictions
3.Set Desired Values
4.Perform Transactions
5.Check for Matches

This is how, you can use the RAL to model and predict the behavior of your read-only registers and check if the DUT behaves as expected.


rahulvala@gmail.com
Freelancer/verification engineer
https://www.linkedin.com/in/rahulvala/