Signals parametriaztion configuration object

Hey all, I hope you’re doing great.
I created an agent for a protocol, In the protocol interface file I specified signals width ( number of bits), I want to make it configurable by parametrizing widths of signals.
I tried to create a configurable object extended from uvm_object in my agent package where I declared width variable and assigned to it a certain value but my agent classes didn’t recognize this cfg object.
I wonder where I made the mistake or if there’s a better idea to achieve this goal of configuring the interface signals.
Thank you in advance :smiling_face:.

In reply to abdelaali_21:

A configuration object is used to modify the values of variables etc. on the fly in a testbench. For instance you might want to change some values for certain tests. I do not believe you want to change the width of your signals in your testbench on the fly.
You vcan simply use parameters to achieve this.