终章:在测试的海洋中,压缩是我们的航标,引导我们更高效、更精确地探索未知的深渊。 EDT的介绍也到了终章,在前两节中,探讨了ATPG压缩的背景,并以Tessent的EDT为代表作,深入解析了其核心组件LFSR的工作原理。 接下来,终章将主要以Mentor Tessent的官方报告为参考,探讨Tessent的压缩率和什么相关。 小讨论 Mentor的EDT由多个小型LFSR组合而成的大型LFSR,对应前面第二节的LFSR的图。但是PHASE SHIFT部分的扇出明显增多,这有助于提高压缩率,但也可能对原始LFSR的完备性表达造成影响。 在mentor的edt结构中,对于非LBIST的ATPG向量,mentor中使用edt_update来将LFSR的初始种子重置为全0。具体而言,当edt_update为1时,test_clock的上升沿时会将LFSR初始化为全0,如下: 但是LBIST的LFSR相对于非LBIST缺少了external channel,所以默认初始化种子为0的操作并不一定合适哦。对应前面章节关于external和internal两种LFSR的描述,从系统变量的数量来看,工具对系统控制力的减弱对应覆盖率的损失增多。 tessent atpg 报告解析 下面是一个tessent的ATPG的报告:
对于ATE机台,不区分向量是不是压缩的,ATE机台的具体资源消耗计算如下:
名词解释如下:
Test Data Volume (ATPG) / Test data volume (TestKompress) § 以上述报告的数据为例: Test Data Volume (ATPG) ≈ Scan cells 的数量 = 300000Test data volume (TestKompress) ≈ (init cycles + shift cycles) * (channel counts ) = [ 305, 300 (internal scan length) + 5 (additional cycles) ]* [ (22input channels + 11 output channels) / 2] = 305 * 16.5 因此, Compression per pattern = 300000/ 5032.5 ≈ 59.61x 为什么除以2? A: Test Data Volume (ATPG)默认也只计算了一边,需要乘以2,转移到了等式的右边罢了。 OK,这时候我们来看压缩率与哪些因素相关? 从公式来看: 1. 输入/输出的Channel数目:Channel的数量直接关系到信息的传输和处理能力,因此与压缩率紧密相关。 2. Shift Cycle:这主要取决于Scan Chain的长度以及低功耗设置。更长的Scan Chain或特定的低功耗设置可能会影响压缩的效率, 一般为平均链长+low power shift。(小思考?shift cycle的count能否增加EDT的随机序列的控制能力?因为随机种子默认为0,丢弃cube前面的几个shift cycle其实是可以有利于pattern产生的)。 3. Pattern Count:虽然这个因素在公式下不体现,但实际上Pattern的数量对压缩率也有影响。实际整体的压缩率受到Pattern数量的隐式影响。 考虑到ATE机台的测试时间和内存,我们可以得到以下公式: 总测试内存 (Total Test Content) = Pattern Count × Memory per Pattern 从这个公式我们可以得出: Mentor工具中的“Compression per pattern”是一个相对理想的指标,并不代表整体的压缩率。这是因为它主要描述了与每个pattern相关的压缩的两个变量,没有体现一个关键的变量,那就是Pattern的总数。 (原始的一条pattern的信息,受限EDT的逻辑在某些情况无法产生完美复原,那么就需要多条pattern去覆盖对应的faults,对应于pattern count的增加。) |