原创 【转】Microblaze 与Chipscope pro

2010-11-18 22:00 1791 6 6 分类: FPGA/CPLD
随着FPGA规模的不断增大,其封装形式大多向球形方式转移,这样使得传统的探针方式监测信号变得越来越困难。Chipscope pro是一种片内逻辑分析工具,它能通过JTAG口,将FPGA内部信号实时读出,传入计算机进行分析。它的基本实现方法是通过利用FPGA中未使用的BLOCKRAM,利用设置的触发条件将相应信号实时的存储其中,然后利用JTAG口将数据传入计算机,最后在计算机中显示其波形。.
在XILINX EDK中提供的了5个Chipscope pro核,

  1.  chipscope_icon — 集成控制核,与其它的ChipScope cores进行通讯,最后将数据通过JTAG口送出。
  2.  chipscope_opb_iba — 监测OPB总线动作
  3.  chipscope_plb_iba — 监测PLB总线动作
  4.  chipscope_vio — 创建虚拟IO(Virtual IO), 通过JTAG实现监测和驱动FPGA内部信号。
  5.  chipscope_ila — 监测单独的非总线信号,现行版本只支持MHS级信号的探测。

    下面简要介绍其在EDK中实现过程:
    在MHS中加入相应的IP cores,图中加入了chipscope_icon,chipscope_opb_iba和chipscope_ila。
 
    建立模块信号的连接关系,并对其相应参数做设置,
 
 
 
相应的MHS文件为,
BEGIN chipscope_icon
PARAMETER INSTANCE = chipscope_icon_0
PARAMETER HW_VER = 1.00.a
PARAMETER C_NUM_CONTROL_PORTS = 2
PARAMETER C_SYSTEM_CONTAINS_MDM = 1
PORT control0 = chipscope_icon_0_control0
PORT control1 = chipscope_icon_0_control1
END
BEGIN chipscope_opb_iba
PARAMETER INSTANCE = chipscope_opb_iba_0
PARAMETER HW_VER = 1.00.a
PARAMETER C_NUM_DATA_SAMPLES = 512
PARAMETER C_CONTROL_UNITS = 1
PARAMETER C_ADDR_UNITS = 1
PARAMETER C_DATA_UNITS = 1
BUS_INTERFACE MON_OPB = mb_opb
PORT OPB_Clk = sys_clk_s
PORT SYS_Rst = sys_rst_s
PORT chipscope_icon_control = chipscope_icon_0_control0
END
BEGIN chipscope_ila
PARAMETER INSTANCE = chipscope_ila_0
PARAMETER HW_VER = 1.00.a
PARAMETER C_ENABLE_TRIGGER_OUT = 1
PARAMETER C_DATA_SAME_AS_TRIGGER = 1
PARAMETER C_TRIG0_TRIGGER_IN_WIDTH = 8
PORT CHIPSCOPE_ILA_CONTROL = chipscope_icon_0_control1
PORT CLK = sys_clk_s
PORT TRIG0 = fpga_0_LEDs_8Bit_GPIO_d_out
END
    相应的设置完成之后,连接好硬件,就可以将包含chipscope核的整个系统重新下载到FPGA中,然后利用打开chipscope pro analyzer进行信号的上传观察,
 
点击 ,扫描JTAG键,
 
找到JTAG键上的两个器件,选择XC3S400,点OK。导入.cdc文件,Platgen 和ChipScope cores的 Tcl wrappers基于设计参数在<EDK Project Directory>/implementation/<OPB IBA instance name>_wrapper/<OPB IBA instance name>.cdc 目录中创建了包含信号的.cdc 文件,如设计中的OPB ILA例化为chipscope_ila_0,然后录<Project>/implementation/chipscope_opb_ila_0_wrapper/chipscope_opb_ila_0.cdc 中建立 ChipScope信号的 .cdc 文件,将其导入ChipScope analyzer即可得到其信号信息,
 
此时可选择相应的DEV(XC3S400,XCF02S)和DEV中的UNIT(MyIBA/OPB0和MyILA1),然后对其触发条件进行设置,将关心的信号加入波形窗口中,最后执行触发即可。
上述过程只是简单介绍,具体关于chipscope的使用,请参见其帮助文档。文中错误在所难免,希望大家指正,.


文章评论0条评论)

登录后参与讨论
我要评论
0
6
关闭 站长推荐上一条 /2 下一条