转DFT概论.docx

上传人:b****7 文档编号:26689871 上传时间:2023-06-21 格式:DOCX 页数:9 大小:17.30KB
下载 相关 举报
转DFT概论.docx_第1页
第1页 / 共9页
转DFT概论.docx_第2页
第2页 / 共9页
转DFT概论.docx_第3页
第3页 / 共9页
转DFT概论.docx_第4页
第4页 / 共9页
转DFT概论.docx_第5页
第5页 / 共9页
点击查看更多>>
下载资源
资源描述

转DFT概论.docx

《转DFT概论.docx》由会员分享,可在线阅读,更多相关《转DFT概论.docx(9页珍藏版)》请在冰豆网上搜索。

转DFT概论.docx

转DFT概论

[转]DFT概论

标签:

无标签

 

[转]DFT概论版权声明:

转载时请以超链接形式标明文章原始出处和作者信息及本声明

以下根据资料和个人体会整理,如果错误,疑问欢迎请指

正,讨论!

dft的三种的故障模型。

1.固定故障。

也称电压故障(stuckfault)。

即晶体管的一端固定的不期望的链接到VDD或者VSS,从而导致布尔错误。

2.电流故障。

currentfault。

这些故障容易导致高的漏电流,不会导致布尔错误,但是会造成器件的过早失效甚至有源短路。

3.延迟故障。

包括跳变延迟故障和路径延迟故障。

扫描链工作过程。

分为四步:

1.串行输入

2.并行测量

3.平行捕获

4.串行输出

DFTCompiler添加扫描链过程:

1.testconfigure

2.scanconfigure

3.dftconfigure

4.specify

5.preview

6.synthize

开始testconfigure。

testconfigure主要用来配置一些测试相关的时钟,输入延迟,双向延迟,测试选通时间。

上图配置tcl中如下设置:

settest_default_period100

settest_default_delay50

settest_default_bidir_delay55

settest_default_strob90

二,scanconfigure。

配置扫描链的一些属性。

命令和参数如下:

解释一些常用的

set_scan_configuration

[-add_lockuptrue|false]

[-chain_countinteger

|-max_lengthinteger_or_default

|-exact_lengthinteger_or_default

|-count_per_domaininteger_or_default]

[-clock_mixingno_mix|mix_edges|mix_clocks|mix_clocks_not_edges]

[-create_dedicated_scan_out_portstrue|false]

[-internal_clockssingle|none|multi]

[-insert_terminal_lockuptrue|false]

[-lockup_typelatch|flip_flop]

[-mix_internal_clock_drivertrue|false]

[-partitionvertical|horizontal]

[-stylemultiplexed_flip_flop|clocked_scan|lssd|aux_clock_lssd|combinational|none]

[-exclude_elementsexclude_list]

[-voltage_mixingtrue|false]

[-power_domain_mixingtrue|false]

[-test_modemode_name]

[-domain_based_scan_enabletrue|false]

[-pipeline_scan_enabletrue|false]

[-pipeline_fanout_limitinteger_or_default]

[-reuse_mv_cellscontrol_reuse_of_existing_MV_isolation_and_level-shifter_cells]

[-create_test_clocks_by_system_clock_domaincreate_test_clock_from_system_clock]

[-replacereplace]

[-hierarchical_isolationhierarchical_isolation]

[-shared_scan_innumber_of_shared_pin_count]

[-preserve_multibit_segmentmultibit_segment]

[-begin_and_end_with_rising_edgechain_terminals_optimization]

1.set_scan_config-stylemultiplexed_flip_flop设置扫描的链中的触发器类型,一般选择多路复用触发器。

低功耗设计中使用门控扫描触发器。

2.set_scan_config-clock_mixingno_mix

dc默认的是每个时钟域产生一个扫描链。

即当你声明好一个scan_path(fromsi1to

si2),dc会将同一个时钟域的同类型触发器链接到si1到si2上,如果类型不同,还会自动产生一条扫描链。

no_mix意思是扫描链上的触发器必须

是同类型的:

同时钟,同边沿。

如下图:

三个时钟域,想产生2条扫描链,使用no_mix配置。

但是dc会生成3三条扫描链。

同样mix_edges表示一个扫描链上只允许是同一个时钟的触发器,包括上升沿出发和下降沿触发的。

而mix_clocks表示扫描连上允许不同时钟,不同边沿驱动的触发器。

一般选用mix_clocks,扫描链容易达到平衡。

set_scan_config-preserve_multibit_segment使用指定由create_multibit-namex{xx}产生的multibit的链接方式。

false,表示multibit是分散的。

true表示同步化的。

set_scan_config-exclude_elements扫描链中不包含指定单元。

同样也可以使用set_san_elementfalsexxx指定某个单元不进行扫描链插入。

set_scan_config-create_dedicated_scan_out_ports是否根据声明的ScanDataOut产生扫描链

set_scan_config-add_lockup是否添加lockup

cell。

同一个扫描链中可能有不同功能时钟驱动的触发器,如上面clock_mixing选择mix_clocks,那么相邻2个scan

ff需要加入lockupcell。

如下图:

如果没有加lockup

cell同时clk1和clk2的波形如后面一个,那么就有可能导致后面一个触发器捕获不到数据。

加入了lockup

cell无论哪种情况都可以捕获数据

set_scan_config-insert_terminal_lockuptrue|false是否在扫描链结尾插入lockupcell

set_scan_config-lockup_typelatch|flip_floplockupcell类型,一般选择latch,terminallockup可以选flipflop

set_scan_config-inter_clcokmulti指导工具将选择时钟或者多驱动时钟和顶层时钟分离开来。

一般用于将clock_mixing设置mix_clocks的时候。

因为当使用mix_clocks的时候,相邻2个scanff的功能时钟是不一样的,如果后一个是选择时钟,或者多驱动时钟。

那么在同一个testclock下会造成holdviolation。

如下图:

使用mix_clocks类型的扫描链,会产生下面的扫描链:

由于reg2的testclock经过了一个选择器,会造成holdviolation。

如果设置了add_lockuptrue2个scanff之间会加入lockup,则不会产生时序问题。

如果设置inter_clock为multi则会将2个scanff放到2个扫描链中。

也不会产生时序问题。

版权声明:

转载时请以超链接形式标明文章原始出处和作者信息及本声明

dft概论2

set_dft_configuration

[-scanenable|disable]

[-fix_clockenable|disable]

[-fix_setenable|disable]

[-fix_resetenable|disable]

[-fix_xpropagationenable|disable]

[-fix_busenable|disable]

[-fix_bidirectionalenable|disable]

[-control_pointsenable|disable]

[-observe_pointsenable|disable]

[-logicbistenable|disable]

[-wrapperenable|disable]

[-boundaryenable|disable]

[-bsdenable|disable]

[-clock_controllerenable|disable]

[-mode_decoding_stylebinary|one_hot]

[-scan_compressionenable|disable]

[-pipeline_scan_dataenable|disable]

[-connect_clock_gatingenable|disable]

[-integrationenable|disable]

dft配置

-scanenable|disable

是否允许scan。

默认使能,不需配置

-fix_clockenable|disable

是否允许自动修正clock

-fix_setenable|disable

是否允许修正set

-fix_resetenable|disable

是否修正复位reset

-fix_xpropagationenable|disable

是否修正不定态x

-fix_busenable|disable

是否修正总线。

总线分内部总线和外部总线。

-fix_bidirectionalenable|disable

是否修正双向

-control_pointsenable|disable

是否允许插入控制点

-observe_pointsenable|disable

是否允许插观测点.

-wrapperenable|disable

是否使用影子scan

-scan_compressionenable|disable

是否使用压缩

set_dft_insertion_configuration

[-map_effortlow|medium|high]扫描链优化级别默认low

[-synthesis_optimizationnone|all]是否进行综合优化一般none

[-preserve_design_nametrue|false]保持设计名称一般true

set_dft_signal

[-viewexisting_dft|spec]

[-test_modemode_name]扫描类型,全扫描,部分扫描

-typesignal_type信号类型:

ScanDataIn,ScanDataOut,Reset,Set,Constant,ScanClock,TestData

[-portport_list]信号端口

[-active_stateactive_state]信号什么状态有效

[-timingtiming]信号的时序

[-periodperiod]ScanClock周期

[-hookup_pinhookup_pin]信号端口关联的pin

set_scan_path

scan_chain_name

[-ordered_elementsordered_list]在扫描链上按顺序链接ordered_list单元

[-include_elementsinclude_list]在扫描链上包含include_list单元

[-dedicated_scan_outtrue|false]是否使用指定的扫描链输出口

[-completetrue|false]扫描链是否完成的

[-exact_lengthlength]扫描链长度

[-insert_terminal_lockuptrue|false]是否在扫描链结尾插入lockupcell

[-scan_master_clockclock_name]扫描链的主时钟

[-scan_slave_clockclock_name]扫描链的从时钟

[-scan_enableport_name]扫描链的使能信号

[-scan_data_inport_name]扫描链输入

[-scan_data_outport_name]扫描链输出

set_autofix_configuration

[-typeclock|set|reset|xpropagation|internal_bus|

external_bus|bidirectional]自动修正类型:

时钟,复位,预置,不定态,内部总线,外部总线,双向

[-test_datatest_data_name]用来修正的信号

[-methodmux|gate|enable_one|disable_all|input|output|no_disabling]

[-fix_dataenable|disable]修正时钟做数据线

[-fix_latchenable|disable]

[-include_elementslist_of_design_objects]修正包括那些单元,也可以使用set_autofix_element

[-exclude_elementslist_of_design_objects]修正中不能包括哪些单元

[-control_signalcontrol_name]修正时使用的控制信号

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > PPT模板 > 其它模板

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1