软错误缓解控制器 – 如何在Vivado实验室工具中使用SEM IP-Altera-Intel社区-FPGA CPLD-ChipDebug

软错误缓解控制器 – 如何在Vivado实验室工具中使用SEM IP

描述

此答复记录中描述的流程指示如何修改SEM示例设计并在Vivado Lab Tools中显示信号(即,通过开放硬件会话)。

有两套独立的指令,

  • 对于2013.2及更早版本,使用SEM v4.0 rev1及更早版本。
  • 对于2013.3并使用SEMv4.0 rev2或更高版本。

2013.2及更早版本使用SEM v4.0 rev1及更早版本

  1. 自定义软错误缓解IP,为错误注入Shim选择“chipscope”选项。
  2. 单击确定
  3. 右键单击配置的IP,然后选择“打开IP示例设计”。
  4. 在IP示例设计中,双击打开“example_hid”HDL源文件,并注释掉“chipscope_icon”和“chipscope_vio”实例。
    对于VHDL配置,还要注释掉相应的组件声明。
  5. 替换注释的“chipscope_vio”实例,手动实例化新的vio实例,如下所示:

    Verilog的:

    sem_vio example_chipscope_vio(
    .CLK(icap_clk),
    .PROBE_IN0(SYNC_IN),
    .PROBE_OUT0(SYNC_OUT)
    );

    VHDL:

    example_chipscope_vio:sem_vio
    港口映射(
    CLK => icap_clk,
    PROBE_IN0 => sync_in,
    PROBE_OUT0 => sync_out
    );

  6. 对于VHDL配置,还要创建相应的组件声明。端口宽度不变。
  7. 保存修改后的HDL文件。
  8. 记下先前在文件中声明的“sync_in”信号的向量宽度。
  9. 打开IP目录,然后双击以自定义“VIO(虚拟输入/输出)”IP。
  10. 在“自定义IP”窗口中,对默认的VIO IP选项进行以下更改:
    1. 将组件名称更改为“sem_vio”
    2. 从PROBE_IN端口选项卡,将探针宽度PROBE_IN0更改为sync_in信号的指示矢量宽度。
    3. 从PROBE_OUT端口选项卡,将探针宽度PROBE_OUT0更改为41。
    4. 单击“ 确定”以完成VIO IP的自定义。
  11. 确保新定制的“sem_vio”实例显示在“example_hid”设计源层次结构下。
  12. 像往常一样完成设计实施。
  13. 在对FPGA进行编程时,选择“Open Hardware Session”,并在“Debug Probes”窗口中注意VIO实例的存在。 “软错误缓解控制器产品指南”PG036中介绍了VIO端口及其用法。

2013.3并使用SEMv4.0 rev2或更高版本

1.自定义软错误缓解IP,为错误注入Shim选择“ChipScope”选项。
2.单击“确定”。
3.右键单击配置的IP,然后选择“打开IP示例设计”。
4.在IP示例设计中,将“example_hid”HDL源文件替换为本答复记录附带的zip中的一个HDL文件。

按着这些次序:

  1. 选择设计源层次结构中的example_hid文件,并记下文件的路径。
  2. 从此答复记录下载zip文件。
  3. 解压缩文件。
    此zip中提供了4个不同的example_hid文件。
    选择适合目标器件和HDL语言的文件:
    • ./monolithic_verilog/sem_0_sem_hid.v
    • ./ssi_verilog/sem_0_sem_hid.v
    • ./monolithic_vhdl/sem_0_sem_hid.vhd
    • ./ssi_vhdl/sem_0_sem_hid.vhd

    (注意:包含7vx1140t,7vh580t,7vh870t或7v2000t的器件被视为Virtex-7 SSI器件。所有其他器件均被视为单片)

  4. 用所选文件替换IP示例设计example_hid文件。
    本答复记录提供的示例HDL文件使用默认组件名称sem_0。
    根据需要更新模块或组件声明,以将此示例文件集成到项目中。
  5. 在Vivado设计源层次结构中,确保新文件正确反映在层次结构中。
    此更新应自动进行。如果没有,请通过右键单击层次结构窗格并选择刷新层次结构进行更新。
5.打开IP目录,进入Debug&Verification – > Debug – >“VIO(Virtual Input / Output)”,然后双击进行自定义。
6.在Customize IP窗口中,对默认VIO IP选项进行以下更改:
  • 将组件名称更改为“sem_vio”
  • 如果目标器件是Virtex-7 SSI器件:
    在PROBE_IN Ports选项卡中,将PROBE_IN端口数更改为4,并将所有PORT_WIDTHS设置为8。
    在PROBE_OUT端口选项卡中,将PROBE_OUT端口数更改为2,并将PROBE_OUT0_WIDTH设置为1,将PROBE_OUT1_WIDTH设置为40
  • 对于所有其他器件:
    从PROBE_IN端口选项卡,将PROBE_IN端口数更改为8,并将所有PORT_WIDTHS设置为1
    在PROBE_OUT端口选项卡中,将PROBE_OUT端口数更改为2,并将PROBE_OUT0_WIDTH设置为1,将PROBE_OUT1_WIDTH设置为40
  • 单击“确定”以完成VIO IP的自定义。
确保新定制的“sem_vio”实例显示在“example_hid”设计源层次结构下。
7.像往常一样完成设计实施。
8.对FPGA进行编程后,选择“Open Hardware Session”,并在“Debug Probes”窗口中注意VIO实例的存在。
“软错误缓解控制器产品指南”PG036中介绍了VIO端口及其用法。

请登录后发表评论

    没有回复内容