In reply to Vignesh_18:
You have a fundamental flaw in your environment you need to fix.
You need to distinguish between the Wishbone interface and the UART design. Your base agent should be a wishbone agent, not a uart agent. The wishbone interface is how you communicate with your DUT. The uart functionality is DUT specific and should have no relation with the wishbone interface.
You should:
- Make your agent a generic wishbone agent that does wishbone writes/reads
- Create a UART configuration object which has the uart configuration you want to test. You can randomize this object.
- Use the UART configuration object in your test to generate register writes/reads to configure each DUT.
- Also, use the UART configuration object in your scoreboard to check for correct behavior of your DUTs.