9.1i配置 – 在XAPP424中仿真JTAG Player时,我的仿真总是在TDO检查指令处失败Altera_wiki6年前发布841 问题描述 当在XAPP424中运行JTAG Player的仿真测试平台时,仿真通过,但是当使用我为仿真生成的实际ACE文件时,它在第一次TDO检查操作时失败。 FPGAFPGA-CPLDSoCsxilinx赛灵思
解决/修复方法
Xilinx JTAG编程操作包含JTAG TDO Check操作,例如IDCODE Check。由iMPACT为实际JTAG链创建的SVF文件将期望来自被定位器件的IDCODE,并将在继续之前检查正确的IDCODE。实际的JTAG链未在仿真测试平台中建模。随XAPP424提供的测试平台假设JTAG链中没有其他器件,其测试向量仿真的值将与同一向量中的TDO预期值正确对齐。
您可以通过修改在iMPACT中创建的SVF文件来解决此问题。通常,您将在SVF文件中看到一些指令,用于文件开头和结尾的TDO检查。您需要搜索SVF文件并使用以下方法之一修改包含这些指令的行:
方法1
如果要在不检查其功能的情况下运行TDO检查行,可以通过将MASK更改为全零来屏蔽检查中的所有位。 SVF文件中的示例行将是:
Orignal Line - SDR 32 TDI(00000000)SMASK(ffffffff)TDO(f1718093)MASK(0ffffff);
修改后的线路:SDR 32 TDI(00000000)SMASK(00000000)TDO(f1718093)MASK(00000000)
方法2
如果要仿真TDO Check算法的实际功能,可以通过将TDO(值)复制到TDI(值)来修改SVF文件中的行,如下所示:
原线: - SDR 32 TDI(00000000)SMASK(fffffff)TDO(f1718093)MASK(0ffffff);
修改线 - SDR 32 TDI(f1718093)SMASK(ffffffff)TDO(f1718093)MASK(0ffffff);
在appnote中提供的测试平台中,您现在将通过TDI发送TDO预期值并返回到TDO,以便匹配。
更改SVF后,再次运行SVF2ACE以创建新的ACE文件进行仿真。
注意:这仅适用于仿真。在实际设计中,你不应该修改您的SVF文件以这种方式。