How Computers Work?
What if you got ask the very basic question: How Computers Work?
A brief answer:
A more comprehensive answer:
What if you got ask the very basic question: How Computers Work?
A brief answer:
A more comprehensive answer:
Interviewers often ask how to design a memory controller in technical interviews. We show one example below.
The memory controller takes incoming requests along with address and request ID as inputs. It is expected to provide read responses along with response ID as outputs. Internally, it can access memory to fetch the read data.
Continue reading → How to design a memory controller with in-order read responses?
100% code coverage does not imply the completeness of verification. A fundamental limitation of code coverage is, it does not consider design specs and event sequences. Functional coverage is used address this limitation.
There are 2 ways to measure functional coverage. The first one is called covergroups, which is usually defined by DV engineers in test bench. See this post for more details.
The second one is called cover property, which is defined by designers. Usually cover properties can be specified inline with RTL, or in a separate file bind to RTL. Unlike assert property, cover property can be used to determine whether or not certain aspects of the designs functionality have been exercised. See this post for how to write cover properties.
Code coverage is a fundamental DV metric, and it measures how well the RTL code is covered by test bench. Code coverage includes the following aspects:
We recommend readers to refer to this post for more details.