APB Environment
Wrapping all dynamic components together
Congratulations on making it this far! The environment class is the final class based component for
the testbench before we implement the top module. The environment class is responsible for building
the agent and the scoreboard and then calling the respective run() tasks.
Testbench_Architecture_Scoreboard
Given the environment class is responsible for building and running the agent and the scoreboard, it would also be responsible for creating the mailboxes. This would include the mailbox between the generator and the driver and as well as the one between the monitor and the scoreboard. The environment class would help instantiate and connect all of the sub-components together to help build the testbench hierarchy.
Coding Exercise
For this coding exercise, we would have the following goals:
- Implement the
apb_slave_environmentclass which creates the agent, scoreboard and the mailboxes- The
new()method should create the agent, scoreboard and the two mailboxes - The
run()task in the environment class should start the agent and the scoreboard as separate processes
- The
- Update the
apb_slave_pkg.svfile to include our environment class
Loading the interactive workspace...