|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?注册
x
本帖最后由 gbsid 于 2012-4-16 14:26 编辑
小弟的DFT是带有PAD模型和PAD库来综合的,
其中有2个PAD一个是p13
另一个是TESTMODE
但是TESTMODE信号是用来区分系统的正常工作模式(TESTMODE=0)和测试模式(TESTMODE=1)用的端口。在测试模式下还有很多种测试——通过一个组合端口(p23,p26,p27)来区分不同的测试模式,其中扫描链也是其中的一种测试模式,我是将他分配在TESTMODE=1,{p23,p26,p27}=101的情况下
在做DFT的时候,使用set_dft_signal信号指定一个TestMode类型的信号,另外有一个端口p13本想用来作为TestMode类型的端口(用来自动修复时钟、复位逻辑)。但是插入扫描链的时候将p13作为TestMode类型端口,DFTC工具会自动退出,并且产生一个fatal错误。但是将TESTMODE端口指定为TestMode类型的端口的时候就不会出现上述现象。但是TESTMODE端口不是我想要的结果啊。
请问大牛有没有什么解决措施,或者我这样设定p13和TESTMODE端口有什么问题么?
通过的时候脚本如下:
set_dft_signal -view e -type TestMode -port TESTMODE -active_state 1 [get_pins utestmode/y]
set_dft_signal -view s -type TestMode -port TESTMODE -active_state 1 [get_pins utestmode/y]
set_dft_signal -view e -type Counstant -port p23 -active_state 1 [get_pins up23/y]
set_dft_signal -view e -type counstant -port p26 -active_state 0 [get_pins up26/y]
set_dft_signal -view e -type counstant -port p27 -active_state 1 [get_pins up27/y]
我没有将TESTMODE指定成Counstant类型(但是也能通过)
有错误的时候脚本如下:
set_dft_signal -view e -type counstant -port TESTMODE -active_state 1 [get_pins utestmode/y] #(因为我是希望在测试模式下TESTMODE=1)
set_dft_signal -view e -type TestMode -port p13 -active_state 1 -hookup_pin [get_pins up13/y]
set_dft_signal -view s -type TestMode -port p13 -active_state 1 -hookup_pin [get_pins up13/y]
p23~p27设置同上
另外区别是TESTMODE选定的PAD是通过将其控制信号直接连接到高、低电平来实现输入功能配置的
p13端口的输入输出使能我已经通过TESTMODE,P23,P26,P27几个端口的组合形式配置成在扫描链测试模式下为输入模式了
带有PAD的DFTC真麻烦
另外,错误是在insert_dft的过程中失败的,并且每次都是在Architect Scan chains的过程退出,退出以后显示:Warning:timing update失败,并且说我的设计当中有loops,我以为是timing loops所以用report_timing查过了没有loop,并且这个警告也没有错误标志,很明显是系统发送出来的错误。并且之后是错误ID,还有一大串输字。
我个人觉得应该不是工具的问题,应该是我的上述设置违背了什么才导致工具出现这个问题的,请指教 |
|