zoukankan      html  css  js  c++  java
  • Chipscope使用

    作者:桂。

    时间:2017-08-07  06:47:31

    链接:http://www.cnblogs.com/xingshansi/p/7297482.html


    前言

      Chipscope在FPGA调试中被用来观察内部信号,程序里加入Chipscope相当于有了数字示波器。

      本文主要记录Chipscope的基本操作,以及如何借助MATLAB对Chipscope的数据进行分析。

    一、Chipscope使用

      A-Chipscope简介

      参考:ug029_ChipScope Pro 11.4 Software and Cores

      Chipscope只要一个JTAG(Joint Test Action Group)口,就可以访问到FPGA内部的所有信号。

    核心:两个关键Core+Analyzer

    Core-ILA:集成逻辑分析仪。连接信号,触发条件和触发时钟;

    Core-ICON:是Analyzer和ILA联络的桥梁。只有一个,ICON负责管理多个ILA,提供通过JTAG口访问多个ILA的途径;

    Analyzer:Chipscope的信号GUI界面

    附加

    IBA(Integrated Bus Analyzer):用来Debug IBM coreconnect总线;

    ATC(Agilent Trace Core):Agilent为Xilinx FPGA开发的支持片外采样数据存储的设备。

      B-Chipscope Pro Core Inserter流程

     1)保留设计层次

    XST 缺省设置是将设计打平以取得好的综合效果,因此需要设置:Synthesize XST → process properties:

    2)选择对应芯片

    Core Generator —— New project —— 选择存放目录,并设置Part,如果指定语言需要设置Generation,语言默认VHDL,以S6为例:

    3)ICON设置

     双击:

    点击:Generate,完成最基本的ICON设置

    4)ILA设置

     双击:

    参数可人为设定,

    触发端口数量最大为256

    点击:Generate.

    这样一来,便完成了ICON与ILA核的设置,如果工程中需要用到Chipscope,不必每次都要生成,只需将其中四个文件拷贝到对应工程目录下即可。

    综合后的网表文件:*.ngc以及对应的工程*.v,ICON与ILA各两个,共四个文件:

    其中两个*.v文件:

      ila:

    `timescale 1ns/1ps
    
    module chipscope_ila(
        CONTROL,
        CLK,
        TRIG0) /* synthesis syn_black_box syn_noprune=1 */;
    
    
    inout [35 : 0] CONTROL;
    input CLK;
    input [255 : 0] TRIG0;
    
    endmodule
    

      icon:

    `timescale 1ns/1ps
    
    module chipscope_icon(
        CONTROL0) /* synthesis syn_black_box syn_noprune=1 */;
    
    
    inout [35 : 0] CONTROL0;
    
    endmodule

    Chipscope相当于内部的示波器,有了工具如何调用呢?利用Analyze(本质是GUI界面)即可。

    5)调用Analyze

    打开Analyzer,通常可以自动识别芯片,点击OK。

    工程中,Rddata描述:

    在Analyzer中设置:选中0~7,move to bus,new bus:

    点击三角运行

    即可抓取EEPROM写入FPGA的输入Rddata:

    这与写入IIC总线的数据是一致的:

    二、借助MATLAB对Chipscope的数据进行分析

       通常希望从多个角度分析数据,因此考虑将Chipscope的数据导入MATLAB。

    File —— Export:

    输入存储的文件名,如test.prn;

    利用MATLAB指令读取:xlLoadChipScopeData(‘test.prn’);

  • 相关阅读:
    fiddler修改请求和返回
    解决springboot在mac电脑下启动过慢的问题
    mysql中的联合查询(内联、左联、外联、右联、全联)
    servlet防止表单重复提交
    spring开发中常见错误集合,逐步添加
    spring4整合hibernate5以及出现的问题解决办法
    利用maven构建一个spring mvc的helloworld实例
    Hibernate5 入门之SessionFactory对象的创建
    OGNL表达式入门
    Template模版
  • 原文地址:https://www.cnblogs.com/xingshansi/p/7297482.html
Copyright © 2011-2022 走看看