下载此文档

使用Chipscope时如何防止reg_wire型信号被优化掉.doc


文档分类:通信/电子 | 页数:约3页 举报非法文档有奖
1/3
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/3 下载此文档
文档列表 文档介绍
使用Chipscope时如何防止reg_wire型信号被优化掉
随着FPGA设计复杂程度越来越高,芯片内部逻辑分析功能显得越来越重要。硬件层次上的逻辑分析仪价格十分昂贵,而且操作比较复杂。目前,FPGA芯片的两大供应商都为自己的FPGA芯片提供了软件层面上的逻辑分析仪,可以帮助我们在线分析芯片内部逻辑。而且操作简单方便。但是往往因为某些原因,有些信号在综合的时候就会被优化掉,就可能会导致我们的设计失败,当然在为逻辑分析仪添加观察信号的时候也无法找到该信号。从而对设计、调试人员的工作带来一定的不便。下面就分别以Xilinx公司的逻辑分析仪ChipScope和Altera公司的SignalTap做以下总结:
一、使用Xilinx公司的ChipScope
在ChipScope中添加一些引脚的信号,但列表中并没有显示,原因是综合的地方没设置好,应该将XST的属性设置成如下:keep hierarchy 处为YES
使用ChipScope观察芯片内部的信号的之前先要在把需要观察的信号添加到ChipScope信号观察列表当中。也就是说,我们必须能够在综合的网表文件中找到相应的信号。如果是使用XST综合的话,最好保留芯片内部结构的层次,这样就可以在相应的子模块查找需要观察的信号。默认情况下,Chipscope只能观察reg类型的信号。但是通过设置属性也是可以观察wire型信号的。使用不同的综合工具需要添加的属性也不一样。
1、使用XST综合。
(1)对于reg型信号,如果被ISE优化掉,一般有可以把这个信号和其他没有被优化的信号进行“与”、“或”等操作。这样就可以达到观察信号的目的。
(2)对于wire型号,,XST综合,以Spartan3为例,可以使用(* KEEP="TRUE"*) wire [15:0] CPLD_ _AD;这样就可以在查找信号的信号找到wire类型的CPLD_ _AD信号进行观察。再不行就用reg引出。
2、使用Synplify Pro综合
也可参考:http://hi./vvbaba/item/94bb1b33af6c4b33b3c0c56e
Synplify Pro对wire、reg类型的信号有着不同的综合属性。
(1) 对于wire型信号,使用/* synthesis syn_keep=1 */综合属性,例如下面的语句:
1 wire  [7:0]  data_in  /* synthesis syn_keep=1 */;
(2) 对于reg型信号,使用/* synthesis preserve = 1 */综合属性,例如下面的语句:
1 reg  [7:0]   data_in  /* synthesis preserve = 1 */;
二、使用Altera公司的SignalTap
1、使用Altera自带的综合器综合
Altera自带的综合器为了防止某些信号综合器优化掉,也有自己的一套综合约束属性。
(1)对于reg型信号,为了防止Altera自带综合器将其优化掉,可以添加noprune属性。这样就可以防止某些寄存器信号被优化掉。也可以使用/*synthesis noprune*/综合属性。
01 `include ""
02 module S

使用Chipscope时如何防止reg_wire型信号被优化掉 来自淘豆网m.daumloan.com转载请标明出处.

非法内容举报中心
文档信息
  • 页数3
  • 收藏数0 收藏
  • 顶次数0
  • 上传人yunde113
  • 文件大小0 KB
  • 时间2014-07-05
最近更新