为了更好的设计一个scan design,一些scan design的rule必须遵循。

1)tristate bus在shift mode下必须保持bus contention;

2)bidirectional IO port在shift mode下,必须force在input或者output;

3)gated clock在shift mode下,必须保证enable;

4)derived clock在shift和capture mode下,最好保持bypass;

5)combinational的feedback,在shift和capture mode下,应该break;

6)async的set/reset,在shift和capture mode下,最好使用external pin;

7)clock drive data,在shift和capture mode下,最好进行block;

8)Floating buses,在shift和capture mode下,增加bus keeper;

tristate buses:

ATPG可以保证在capture mode下,不会有两个drive控制一个bus的情况,但是在shift mode下,

并没有这样的保证,所以要求在shift mode下,bus contention不变。

而且一个没有pull-up/pull-down/bus-keeper的bus,也会导致fault coverage loss,因为一个floating bus

是不可预测的,不能进行stuck-at 1的测试。所以pull-up/pull-down/bus-keeper的bus推荐设计。

bidirectional IO port:

在一个capture operation中,bidirectional IO会被指定为input/output,但是在shift operation上,

需要多加控制。

Gated clock:

clock gate的enable端口,同样不能在进行shift mode下,在0与1之间多次变化。

可以使用SE或TM信号控制。

Derived clock:

一个derived clock是指从一个storage element和一个clock generator(PLL,frequence divider,pluse generator)

在整个的test过程中,这些clock必须是bypass的。

Combinational Feedback loops:

当inversion的个数是奇数时,输出形成oscillation,

当inversion的个数是偶数时,输出形成sequential behavior,

在进行test的过程,需要保证loop中的value是controlled,所以需要接爱如逻辑:

Async set/reset signals:

async set/reset不能由primary input直接控制,可能影响shift data的合理操作,所以要求,在shift operation

中,这些信号被force为inactive。

使用TM信号会导致,这些reset/set信号在test过程中,不能被测试到,

使用SE信号可能会使得clock这些set/reset之间造成竞争。

scan design rules的更多相关文章

  1. scan design flow(二)

    在scan stitch之后,scan synthesis就已经完成, Scan extraction主要用来从scan design中extracing所有的instance,来保证scan cha ...

  2. scan design flow(一)

    一个典型的scan实现的flow: clock mux和一些rst,在Scan中都被bypass掉,是不能测到的.所以DFT的test coverage一般就在97%或98%. scan design ...

  3. Logic BIST

    Logic BIST is crucial for many applications, in particular for life-critical and mission-critical ap ...

  4. DFT设计绪论

    DFT设计的主要目的是为了将defect-free的芯片交给客户. 产品质量,通常使用Parts Per million(PPM)来衡量. 但是随着IC从SSI到VLSI的发展,在test上花销的时间 ...

  5. scan cell

    scan cell有两种不同的input: 1)data input:由电路的combinational logic驱动: 2)scan input:由另一个scan cell驱动,从而形成scan  ...

  6. scan & ATPG

    Testability用来表征一个manufactured design的quality. 将testability放在ASIC前端来做,成为DFT(Design For Test),用可控(cont ...

  7. 数据库设计(二)Introduction to Database Design

    原文链接:http://www.datanamic.com/support/lt-dez005-introduction-db-modeling.html Introduction to Databa ...

  8. OrCAD Capture CIS绘制原理图、Allegro PCB Design XL 绘制PCB

    1.OrCAD Capture CIS绘制原理图 1.1.快捷键 (1)放置连线         w (2)放置net名称      n     放下一个时再按n可以编辑名字 (3)编辑属性      ...

  9. ARM JTAG 信号 RTCK 应该如何处理?

    用户在调试内嵌可综合内核的 CPU 如 ARM7TDMI-S 时,需要通过打开仿真器的自适应时钟功能. 此时,ARM仿真器根据 RTCK 时钟信号的频率,产生可用于 CPU 内核当前时钟主频的最快的 ...

随机推荐

  1. background和background-size

    今天偶遇一个小问题. 添加logo图片时, 由于不需要重新定位图片位置,就准备偷懒在间歇属性中省略background-position的属性,然而很不幸的是,结果却是酱紫的(谷歌浏览器): 不能加载 ...

  2. Makefile使用总结

    1. Makefile 简介 Makefile 是和 make 命令一起配合使用的. 很多大型项目的编译都是通过 Makefile 来组织的, 如果没有 Makefile, 那很多项目中各种库和代码之 ...

  3. android常用命令

    首先配置好环境变量会比较方便... 大部分sdk提供的工具都在sdk\platform-tools和sdk\tools下,建议配置这两个路径到path 另外aapt工具在sdk\build-tools ...

  4. partial类与[MetadataType(typeof(类名))]有什么区别?

    在MVC的Model中,我们可以定义很多与视图相关的元数据,这些元数据对我们开发视图起着相当重要的作用,特别是在数据验证方面.这些元数据一般情况下我们是不会定义在业务实体(或持久化实体)上面,所以很多 ...

  5. ecshop

    if($cat_id == '205'){ $smarty->display('cat1.dwt', $cache_id); }elseif($cat_id == '2'){ $smarty-& ...

  6. Selenium2学习-003-WebUI自动化实战实例-001-百度搜索

    此文主要通过百度搜索功能,进行 Selenium2 的实战实例讲解,文中所附源代码于 2015-01-16 02:01 亲测通过,敬请亲们阅览.希望能对初学 Selenium2 UI 自动化测试编程的 ...

  7. LeetCode H-Index II

    原题链接在这里:https://leetcode.com/problems/h-index-ii/ 题目: Follow up for H-Index: What if the citations a ...

  8. 配置文件后面的rc的由来

    配置文件后面的rc的由来 配置文件比较正规的叫法是:运行控制文件  run control Linux就这个范儿 4.5.3 配置文件 配置文件比较文绉绉的称呼是“运行控制文件”,存放与具体程序相关的 ...

  9. jquery对于table的操作

    $("#datable tr").eq(0).children("td").eq(0).html()   //获得某行某列的值

  10. js工具类大全

    /********** 日期处理函数 *********/<script type="text/javascript" src="${springMacroRequ ...