Randomization Based Verification for Microprocessors
Independent thesis Advanced level (degree of Master (Two Years)), 20 credits / 30 HE creditsStudent thesis
Verification of microprocessors is a vital phase in their development. It takes majority of time and cost in the microprocessor development. Verification can be split into two; coverage and check. In coverage we try to find out if all desired conditions are executed. Where as in check, we try to find out if the behaviour of the DUT is as expected. In this thesis we concentrate more on coverage. The test bench should be able to cover all the cases, hence methodologies have to be used which will not only reduce the total time of the project but also get maximum coverage to increase the bug detection chances. Random simulation helps to quickly attain corner cases that would not have been found by the traditional directed testing.
In this thesis functional verification for the microprocessor M6802 was implemented. Few verification approaches were implemented to find out their feasibility. It was found out that random generation had many advantages over directed testing but both the approaches failed to attain good coverage in reasonable time. To overcome this other implementations were explored such as coverage driven and machine learning.
Machine learning showed significant improvement over the other methods for coverage on the filp side it required a lot of setup time. It was found out that the combination of these approaches have to be used to reduce the setup time and get maximum coverage. The method to be selected depends on the complexity of the processor and the functional coverpoint.
Place, publisher, year, edition, pages
2014. , 81 p.
Computer and Information Science
IdentifiersURN: urn:nbn:se:kth:diva-177438OAI: oai:DiVA.org:kth-177438DiVA: diva2:872734