khtsoi
Newbie level 3
Hi all,
My pervious knowledge is to break the system in to small pieces (may be hierarchically) to a stage that the feature points cannot be further decomposed. Then create a collection of test cases to cover all these feature points.
Now we have a system with about 10 modules (each is a DSP implemented in Verilog). Each module has 3~10 parameters which by itself is a large combination. Then these modules are connected to a routing network (NoC) such that data can flow through them in another large combination. We have count over 40 possible data paths. Since the parameters are orthogonal and the modules will alter data size which will cause the change of parameters further down the flow, it is unlikely a single test case can cover many different combinations.
The number of test cases for individual module are grow over about 500 now. Combining this with the possible order of data flow, we will never tape out before fully cover every possible use cases. Any suggestion of how we should manage the verification of this type of systems? Thanks in advance!
Regards,
Brittle
My pervious knowledge is to break the system in to small pieces (may be hierarchically) to a stage that the feature points cannot be further decomposed. Then create a collection of test cases to cover all these feature points.
Now we have a system with about 10 modules (each is a DSP implemented in Verilog). Each module has 3~10 parameters which by itself is a large combination. Then these modules are connected to a routing network (NoC) such that data can flow through them in another large combination. We have count over 40 possible data paths. Since the parameters are orthogonal and the modules will alter data size which will cause the change of parameters further down the flow, it is unlikely a single test case can cover many different combinations.
The number of test cases for individual module are grow over about 500 now. Combining this with the possible order of data flow, we will never tape out before fully cover every possible use cases. Any suggestion of how we should manage the verification of this type of systems? Thanks in advance!
Regards,
Brittle