网站公告列表

  没有公告

加入收藏
设为首页
联系站长
您现在的位置: 61IC中国电子在线 >> EDA >> Xilinx >> 文章正文
  [组图]在xilinx-FPGA中实现包含有Synopsys DesignWare IP的RTL代码           ★★★ 【字体:
在xilinx-FPGA中实现包含有Synopsys DesignWare IP的RTL代码
作者:61IC录入    文章来源:本站原创    点击数:    更新时间:2006-10-1    

在SoC的设计中,FPGA验证是必不可少的一个步骤,如果芯片中所有的数字逻辑都是由RTL明码写成,那么FPGA的综合、布局布线和下载往往不会出现什么问题。但是如果我们在设计中使用了Synopsys公司提供的DesignWare的IP,那么我们的FPGA综合就会出现问题,由于DesignWare的IP是加密的,所以无论是对于Xilinx的ISE还是Synplicity的Synplify,DesignWare IP的RTL代码都是不可见的,所以我们将只能选择Synopsys(r)的FPGA Compiler对所有代码进行综合,但是由于FPGA Compiler的效率不如Synplify,所以有时会出现FPGA资源耗尽的情况,更加麻烦的是由于综合没有在FPGA供应商提供的统一环境(如Xilinx ISE)下进行,用户在使用FPGA上的DCM和memory等资源时会遇到很多麻烦。所以有时需要我们使用Synopsys的FPGA Compiler单独对DesignWare IP的RTL进行综合,然后再使用Synplify等综合工具对整个项目进行综合。下面以使用DesignWare的memory controller(DW_Memctl)和Xilinx的FPGA为例,详细介绍一下这个过程:(我们整个FPGA的开发环境是Xilinx的ISE,使用的综合工具是Synplify)

如上文所述,由于DW_Memctl是Synopsys公司提供的IP,RTL只能用Synopsys公司的综合工具进行综合。所以我们必须先用Synopsys的综合工具将DW_Memctl综合为网表文件,然后加入ISE的环境中综合入TOP中,步骤如下:

用Synopsys公司的FPGA Compiler II综合DW_Memctl,注意一定要先在Creat Implementation选项中选中Do not Insert I/O pad,否则ISE中实现的时候将不能将带有I/O pad信息的网表综合到顶层中去。综合完后我们可以得到一个不带I/O pad信息的网表文件DW_Memctl.edf。如图1所示:

 

 

 

 

 

 

 

 

 

在ISE中做一个DW_Memctl的黑盒子,这个verilog文件只有输入与输出端口,synplify在综合的时候可以识别出这是一个黑盒子,在log file中将有如下的显示:
W:CG146 :"E:\XXX\XXX_TOP_NODCM\DW_memctl.v":3:7:3:15|Creating black box for empty module DW_memctl


将用FPGA Compiler II综合出来的网表文件DW_memctl.edf放入ISE 相应工程的根目录下。

用Synplify对TOP进行综合的时候,遇到这样的黑盒子,Synplify将自动在根目录下寻找没有I/O pad信息的edf网表文件,并且加入到设计中去,下面是在综合过程中显示的信息:
Command Line: ngdbuild -intstyle ise -dd e:\XXX\XXX_top_nodcm/_ngo -nt
timestamp -uc XXX_top.ucf -p xc2v1500-bg575-6 XXX_top.edn XXX_top.ngd
Reading module "XXX_top.ngo" ( "XXX_top.ngo" unchanged since last run )...
Reading NGO file 'e:/XXX/XXX_top_nodcm/_ngo/XXX_top.ngo' ...
Reading module "DW_memctl.ngo" ( "DW_memctl.ngo" unchanged since last run )...
Loading design module "e:\XXX\XXX_top_nodcm\_ngo\DW_memctl.ngo"...
Reading module "dprf9gp_512x16m4.ngo" ( "dprf9gp_512x16m4.ngo" unchanged since last run )...
这样我们就完成了对真个项目的综合,解下来的步骤就和以前的步骤一摸一样的,Translate,Map,P&R,Generate Program File,然后就可以下载测试了。

同样的方法也适用于Xilinx ISE中提供的综合工具XST。

作者:蒋燕波
意法办导体深圳设计中心

               欢迎点击进入:TI德州中文网   (国内唯一针对TI应用的中文技术网站)    文章录入:admin    责任编辑:admin 
  • 上一篇文章:

  • 下一篇文章:
  • 发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
    最新热点 最新推荐 相关文章
    高速存储器接口的低成本FPGA…
    利用流量控制管理器件实现通…
    利用流量控制管理器件实现通…
    一种基于FPGA的新型误码测试…
    ALTERA的NIOS CycloneII 2C3…
    FPGA C 语言编程指南
    产生基于FPGA的电路板所需的…
    产生基于FPGA的电路板所需的…
    产生基于FPGA的电路板所需的…
    平台FPGA为实现流量管理提供…
      网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)
    站长:61IC 湘ICP备05002478号