下面分别说说这两种插入的流程。
1.OCC的自动插入
- 使能occ的插入,使用的命令是
set_dft_configuration -clock_controller enable
- 定义时钟,包括参考时钟,ATE时钟,PLL产生的时钟。
参考时钟的定义:如果周期跟默认的测试周期相同,定义方法
set_dft_signal -view existing_dft -type MasterClock -port my_clock -timing {45 55}
set_dft_signal -view exsiting_dft -type refclock -port my_clock -period 100 -timing {45 55}
如果周期不同,就只需要定义refclock,不需要定义MasterClock
set_dft_signal -view exsiting_dft -type refclock -port my_clock -period 10 -timing {4 6}
ATE时钟的定义:
set_dft_signal -view exsiting_dft -type ScanClock -port ate_clock -timing {45 55}
set_dft_signal -view exsiting_dft -type Oscillator -port ate_clock
PLL产生时钟的定义:
set_dft_signal -view existing_dft -type Oscillator -hookup_pin pll/clk1
set_dft_signal -view existing_dft -type Oscillator -hookup_pin pll/clk2
- 指定全局信号,包括pll_bypass,pll_reset,ScanEnble,TestMode
set_dft_signal -view spec -type pll_reset -port pll_rst
set_dft_signal -view spec -type pll_bypass -port pll_bp
set_dft_signal -view spec -type ScanEnable -port scan_en
set_dft_signal -view spec -type TestMode -port test_en
- clock controller的设置
set_dft_clock_controller -cell_name u1 -design_name occ_clock_mux
-pllclocks [pll/clk1 pll/clk2] -ateclocks [ate_clock]
-cycles_per_clock 2
- scan_configuration的设置
2.OCC已经存在
这种情况下由于OCC已经插入,因此命令set_dft_clock_controller在这里已经没有意义了,这里需要让DFT知道occ输出时钟信号的属性,使用的方法还是set_dft_signal。另外需要指定clock chains,使用set_scan_path来指定,将其complete化。另外如果使用到adaptive scan,注意test mode在两种模式下都必须指定啊。
没有评论:
发表评论