【技术实现步骤摘要】
一种基于遗传算法的目录控制器测试激励生成方法
本专利技术涉及芯片设计技术,具体涉及一种基于遗传算法的目录控制器测试激励生成方法。
技术介绍
片上多核处理器(CMP,ChipMulti-processors)已经成为处理器发展的方向,随着多核多线程之间数据通信需求的不断增强,片上集成大容量Cache(高速缓冲)实现数据共享和交互,从而降低访存延迟和减少访问冲突。如图1所示的一款64核处理器,采用CMP结构,包括了处理器核(core)、Cache、片上网络(NetworkonChip,NoC)、目录控制器(DirectoryControlUnit,DCU)、存储控制器(MemoryControlUnit)。图1中,Core是CPU核,完成指令的调度与执行;Cache是高速缓存,两个core共享一个Cache;NOC是片上互连网络,提供Cache之间、Cache和CPU外部存储器之间的信息报文交换;DCU是目录控制器,记录各个Cache中数据块的副本使用情况,完成各个Cache之间数据一致性的维护;MCU是存储控制器,外接DRAM ...
【技术保护点】
1.一种基于遗传算法的目录控制器测试激励生成方法,其特征在于,包括:/nS1:针对目录控制器的测试特征进行遗传算法的符号编码;/nS2:创建测试激励的初代种群,基于否定选择算法生成种群数目M个测试激励集合;/nS3:根据变异概率进行变异操作:生成新染色体t3,基于否定选择算法加入种群,计算种群每个染色体与新染色体t3的染色体差异性,若染色体差异性小于阈值
【技术特征摘要】
1.一种基于遗传算法的目录控制器测试激励生成方法,其特征在于,包括:
S1:针对目录控制器的测试特征进行遗传算法的符号编码;
S2:创建测试激励的初代种群,基于否定选择算法生成种群数目M个测试激励集合;
S3:根据变异概率进行变异操作:生成新染色体t3,基于否定选择算法加入种群,计算种群每个染色体与新染色体t3的染色体差异性,若染色体差异性小于阈值则新染色体t3为非自我数据,将该新染色体t3删除,重新进行变异操作;否则新染色体t3为自我数据,将新染色体t3加入重组种群,变异完成后,重组种群所有染色体按照适应度值降序排序,重组种群保留固定种群数目M,删除多余染色体;
S4:根据交叉概率选择重组种群染色体进行交叉操作生成新染色体t4,基于否定选择算法加入次代种群,计算种群每个染色体与新染色体t4的染色体差异性,若染色体差异性小于阈值则新染色体t4为非自我数据,将该新染色体t4删除,重新进行交叉操作;否则新染色体t4为自我数据,将新染色体t4加入次代种群,交叉完成后,次代种群所有染色体按照适应度值降序排序,保留固定种群数目M,删除多余染色体;
S5:重复步骤S3-S4直至达到遗传算法的最大遗传代数或者种群出现适应度值大于等于设定阈值ε的染色体。
2.根据权利要求1所述的基于遗传算法的目录控制器测试激励生成方法,其特征在于,步骤S1中进行遗传算法的符号编码包括:生成测试向量,所述测试向量包括五个方面的特征:报文的操作类型、报文的源节点编号、报文的地址相关性、体编号、报文请求长度信息;然后将每一个测试向量视为一个基因,多个测试向量构成测试激励视为包含多个基因的染色体,从而完成遗传算法的符号编码,所述报文的操作类型包括操作码、无高速缓冲读、共享读、无高速缓冲写、高速缓冲维护命令,所述报文的源节点编号为高速缓冲或IO控制器的编号。
3.根据权利要求1所述的基于遗传算法的目录控制器测试激励生成方法,其特征在于,步骤S2的详细步骤包括:
S2a:随机生成初始的测试序列作为染色体t1,计算染色体t1的覆盖率,加入种群;
S2b:随机生成染色体t2,计算染色体t2的覆盖率;
S2c:计算种群每个染色体与染色体t2的染色体差异性,若染色体差异性小于阈值则该染色体t2为非自我数据,将染色体t2删除,否则染色体t2为自我数据,将染色体t2加入种群;
S2d:重复步骤S2b和步骤S2c,直到种群中的染色体数目达到预定的种群数目M。
4.根据权利要求3所述的基于遗传算法的目录控制器测试激励生成方法,其特征在于,记任意染色体tk对功能j的覆盖率为covtk[j],则covtk[j]的计算函数表达式如下:
covtk[j]=covtk[1,j]|covtk[2,j]|covtk[3,j]|...|c...
【专利技术属性】
技术研发人员:罗莉,周理,潘国腾,荀长庆,周海亮,铁俊波,欧国东,冯权友,王蕾,龚锐,石伟,张剑锋,刘威,任巨,
申请(专利权)人:中国人民解放军国防科技大学,
类型:发明
国别省市:湖南;43
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。