For the first time, I am approaching the world of Verification by using SystemVerilog, and I have learnt about the TB components only recently (Generator, Driver, Monitor etc.). My actual task right now is to realize a testbench in SV, creating all those components, for an Asynchronous FIFO, which you can find at the following link:
http://www.sunburst-design.com/papers/CummingsSNUG2002SJ_FIFO1.pdf
I know when it comes to realize a testbench in Verilog for a design, I should only focus on the top_level of the design, even if there are multiple modules instantiated inside. But, since now I need to realize the Transaction class, the Scoreboard, etc., I would like to be sure on what I need to focus.