基于GRU_LSTM及RL算法的伪随机指令生成器OACSTPCD
在CPU验证过程中,传统伪随机指令生成器通过生成大量合法无序的指令序列,从而实现功能覆盖率或代码覆盖率的验证目标。然而,没有趋向针对性的指令生成,为达到指标需要耗费大量的人力及时间成本。该文以一款基于精简指令集(RISC-V)自研核心为例,在基于通用验证方法学(Universal Verification Methodology, UVM)的验证平台上设计出一种伪随机指令生成器,并针对普通伪随机指令生成器覆盖率低、收敛速度慢的问题,建立GRU_LSTM算法模型,并结合强化学习(Reinforcement Learning, RL)算法构建新算法模型RLGRU_LSTM应用于伪随机指令生成过程,并且针对RL方向决策,提出了基于霍夫曼编码的CPU指令包编码方式训练opcode分布,同时融合了CPU指令类型和指令间执行顺序因素,快速捕获人工定向验证预料不到的验证盲点,有效加快了代码覆盖率达到预期的进程。该文着重描述伪随机指令生成器及RLGRU_LSTM算法对模型训练过程的指导。实验结果表明,与直接使用伪随机指令生成技术相比,该方法在约定伪随机指令条目下,相比传统伪随机方法能提高约19%的覆盖率,收敛至目标覆盖率消耗时长减少22%。
欧阳有恒;严大卫;
南京信息工程大学,江苏南京210044无锡先进技术研究院,江苏无锡214125
计算机与自动化
门控循环单元长短记忆强化学习伪随机指令生成通用验证方法学
《计算机技术与发展》 2024 (002)
P.78-83 / 6
国家自然科学基金(61732018)。
评论