Overview
Reinforcement Learning (RL) is a machine learning paradigm that, in the evidence available, is documented as a component of automated approaches to hardware Design Verification (DV). In that domain, RL is used alongside supervised learning to improve upon traditional constrained-random stimulus generation, which is the standard industry technique for exercising complex integrated circuit designs.
Application in Design Verification
According to Hughes et al. (2019), constrained-random stimulus is ubiquitous in modern integrated circuit verification because, in theory, it allows all possible combinations to be exercised given enough time. In practice, however, highly complex designs make it difficult for a purely random approach to exercise all combinations in a timely manner. Verification engineers typically steer the DV environment to generate hard-to-hit combinations, but this guidance becomes progressively more challenging and time-consuming as designs grow in complexity, often making verification the dominant schedule limitation.
The paper "Optimizing Design Verification using Machine Learning: Doing better than Random" (Hughes et al., 2019) describes an approach that leverages existing constrained-random DV environment tools and further enhances them using supervised learning and reinforcement learning techniques. The combined approach is described as providing better than random results in a highly automated fashion, thereby allowing DV objectives of full design coverage to be achieved on an accelerated timescale and with fewer human resources.
Demonstrated Examples
The paper presents two hardware verification examples used to validate the approach:
- A Cache Controller design.
- The open-source RISC-V Ariane design paired with Google's RISC-V Random Instruction Generator.
The authors report that the machine-learning based approach performs significantly better than a random or constrained-random approach on functional coverage and in reaching complex hard-to-hit states.
Related Concepts
- Machine Learning for Verification — a broader concept under which reinforcement learning is applied as one of the techniques used.
- Optimizing Design Verification using Machine Learning: Doing better than Random (Hughes et al., 2019, arXiv:1909.13168) — the primary cited paper demonstrating RL in this context.
Limitations of the Evidence
The evidence provided consists of a single paper abstract. This article therefore documents only the application of Reinforcement Learning as described in that specific work and does not generalize to broader properties, algorithms, or applications of RL beyond the design verification context cited.