SramRetetion
模式介绍
执行部分cycle的VminVmax测试,在指定的Cycle中插入event进行当前工作最大和最小电压测试。
使用场景:可靠性测试中RDT向量Vmm测试(MBIST_RDT测试项,用于拉低部分cycle的电压,查看是否能保持memory信息)
参数说明
SramRetetion:选择扫描方式BoundarySearch或MostSearch。
DPS:选择当前需要进行升/降压测试的PowerPinList,逗号分隔(该PowerPinName需要与SpecName保持一致)。
addDpsMainToBurst_Type:选择是否需要添加DPS pattern,needAdd时pattern栏填入无DPS port的向量,alreadyAdd时pattern栏填入有DPS port和main pattern的向量。
EventMode:选择按系数coefficient或按电压voltage拉偏指定电源pin。
VectorNumDown:addDpsMainToBurst_Type为needAdd,填入升/降压开始时,电压变化cycle位置+1(填入的cycle要比实际down的Cycle+1),逗号分隔。
addDpsMainToBurst_Type为alreadyAdd,填入升/降压开始时,电压变化vector位置,逗号分隔。
VectorNumBack:addDpsMainToBurst_Type为needAdd,填入升/降压结束时,电压变化cycle位置+2(填入的cycle要比实际back的Cycle+2),逗号分隔。 addDpsMainToBurst_Type为alreadyAdd,填入升/降压结束时,电压变化vector位置,逗号分隔。
VoltageNorm:填入拉偏系数/电压扫描的起始点。
VoltageEnd:填入拉偏系数/电压扫描的终止点。
V_points:填入初次扫描时需要扫描的点数。
V_detail_points:填入再次扫描时需要扫描的点数。
Vclamp_EN:选择ON或OFF,默认为ON,当前测试项是否启用对level Spec的Clamp动作。
Label:addDpsMainToBurst_Type为alreadyAdd时,填入当前pattern中DPS port使用的main pattern名。
Port:填入当前测试所用到的DPS Port。
Output:选择log输出模式,默认为File+ReportUI,可选File、ReportUI、File+ReportUI、None。
PreExecute:选择ON或OFF,默认为OFF,使用PreExecute功能时选择ON,否则选择OFF。
PostExecute:选择ON或OFF,默认为OFF,使用PostExecute功能时选择ON,否则选择OFF。
LogFile:填入log文件的路径和文件名,默认为“report/hidigitallink_log”。
参数解释
参数SramRetetion:可选两种扫描方式BoundarySearch或MostSearch,用户在填入MostSearch时电压扫描由起始点Vcoef_Start开始到终止点Vcoef_ End结束,记录粗扫pass区间最长的电压范围,若有相同长的pass区间取最右边的pass区间,程序将在该电压范围的最小电压值处进入Vmin的detail扫描,在该电压范围的最大电压值处进入Vmax的detail扫描;填入BoundarySearch时,电压扫描由起始点Vcoef_Start开始到终止点Vcoef_ End结束,程序将在扫面范围中所有pass点的最小电压值处进入Vmin的detail扫描;在扫描范围中所有pass点的最大电压值处进入Vmax的detail扫描。MostSearch可识别空洞,推荐使用MostSearch。
参数VectorNumDown/Back:Event插入在pattern中的位置,两个Event之间需要留至少32个cycle的空间
参数Vclamp_EN:Vclamp_EN用于在Sramretention扫描过程中保护电路,参数为ON时保护生效,系统内部回去检查当前所扫描的level里spec 系数的值是否超过1.5,如果超过则报错停止SramRetetion扫描。
细扫算法说明
HDL对于VminVmax、FminFmax、SramRetention测试,粗扫完成后会基于粗扫结果Margin点向pass区域多扫0.2个粗扫step,向fail区域多扫1.2个粗扫step,以更合理的抓取pass和fail的临界点。实际项目中粗扫的Margin点为第二个点或倒数第二个点时,向fail的区域扫1.2个粗扫step时扫描点的值会超过用户设置的start或end的值,因此我们优化了这部分的算法,如果超过用户设置的边界值时让其等于边界值。
注意事项
第一步:添加DPS port main pattern并插入升降压event(如已手动造好event,跳至第二步):选择needAdd,依次填入降压和回压的几个cycle数,填入降压cycle比实际cycle+1, 回压cycle比实际cycle+2,down与back上下一一对应,Norm电压与降压大小和扫描点数和pDPS填写完毕。
执行测试项,执行完之后检查Pattern Explorer是否有生成带Merge后缀的burst pattern和DPS port的main pattern,如图,确认有之后保存pattern,retention pattern即生成成功,如果在生成pattern过程中报“Error:no enough memory to create pattern”;请将load的pattern数量减少
第二步:运行加好DPS port的pattern:生成完成后选择alreadyAdd,填入event的vector位置,Label处填入生成的DPS port pattern,其余保持不变,pattern换成生成好的burstMergepattern
dpsport的timing要手动新增一个retention用到的DPSport,要设置跟JTAG的timing peirod一致,需要手动去在timing中添加即可