CFS Vision

Why Does uvm_reg::read() Return Wrong Data?

In this post, I will highlight the reason and a simple solution for a common problem: the data returned by the uvm_reg::read() task is not the same as the data returned by the DUT. If you want to jump directly to the most likely solution, click here...

How To Check if the DUT Is Stuck

In this article I am describing one technique (out of many) to catch the scenario in which a DUT (Device Under Test) gets stuck, no longer outputting any information on some particular bus. A very common scoreboard architecture has the following...

The Power of “define … as computed”

‘e’ language is a very powerful language which allows us to make incredible things with its native syntax. It is difficult to reach a point in which you want to do something not supported by the language. But, if you do, ‘e’...