AR# 52124

MIG 7 Series DDR3/DDR2 - Synplify fails due to DQS parameters

描述

MIG 7 系列 DDR3/DDR2 设计会使 Synplify 失效,产生如下的错误:

@E: CG596 :"/user_design/rtl/phy/mig_7series_v1_7_ddr_mc_phy_wrapper.v":1185:14:1185:21|Parameter DQS_BIAS cannot be found in module IOBUFDS_DCIEN.

or

@E: CG596 :"/user_design/rtl/ddr3_sdram/phy/mig_7series_v1_8_ddr_byte_lane.v":435:3:435:18|Parameter DQS_FIND_PATTERN cannot be found in module PHASER_IN_PHY.

解决方案

出现这些错误的原因是:在 ISE 设计工具 14.2 和 14.3 版间,DQS_BIAS I/O 特性从 I/O 原语上的属性变为 I/O 原语上的参数。该变化出现在 Synplify FPGA 2012.09 重叠补丁中,并且会包含在 Synplify FPGA G-2012.09-SP1 的官方版本中。 

叠加更新可在答复记录末尾下载。

注:当应用了此叠加,在 Vivado 执行中会出现类似以下语句的警告:
[Netlist 29-73] Incorrect value 'UNDECLARED' specified for property 'OSERDES_DATA_WIDTH'. 系统会使用默认值或丢失属性值。验证源文件。["/proj/ipmig/mig_7series_v1_8//
test10_ddr3_ver_synp/example_design/par_vivado/project_1/pro
ject_1.srcs/sources_1/imports/rev_1/example_top.edf":44124]

可忽略这些关键提醒。


如果不能使用重叠文件,那么以下解决方法可用于绕过错误信息。

Synplify 流程解决方法:

1. 打开 user_design/rtl/phy/mig_7series_v1_7_ddr_mc_phy_wrapper.v 模块。
2.编辑如下:

原始代码:

          IOBUFDS_DCIEN #
            (
             .IBUF_LOW_PWR (IBUF_LOW_PWR),
             .DQS_BIAS     ("TRUE")
             )

修改后的代码:

          (* DQS_BIAS = "TRUE" *) IOBUFDS_DCIEN #
            (
             .IBUF_LOW_PWR (IBUF_LOW_PWR)
             )

原始代码:

          IOBUFDS_INTERMDISABLE #
            (
             .IBUF_LOW_PWR (IBUF_LOW_PWR),
             .DQS_BIAS     ("TRUE")
             )

修改后的代码:

          (* DQS_BIAS = "TRUE" *) IOBUFDS_INTERMDISABLE #
            (
             .IBUF_LOW_PWR (IBUF_LOW_PWR)
             )

原始代码:

          IOBUFDS #
            (
             .IBUF_LOW_PWR (IBUF_LOW_PWR),
             .DQS_BIAS     ("TRUE")
             )

修改后的代码:

          (* DQS_BIAS = "TRUE" *) IOBUFDS #
            (
             .IBUF_LOW_PWR (IBUF_LOW_PWR)
             )

注: 无法对仿真执行这些更新,因为 Xilinx 模型需要 DQS_BIAS I/O 参数。MIG 7 Series v1.7 生成的文件必须用于仿真。

在 ISE 14.4 版本中, ddr_byte_lane 模块中的 DQS_AUTO_RECALL 和 DQS_FIND_PATTERN 属性出现了同样的情况。 .14.3 和 14.4 版本间,这些从属性变为参数。mig_7series_v1_8_ddr_byte_lane.v 模块可有类似的解决方案:

原始代码:
PHASER_IN_PHY #(
  .BURST_MODE                       ( PI_BURST_MODE),
  .CLKOUT_DIV                       ( PI_CLKOUT_DIV),
  .DQS_AUTO_RECAL                   ( DQS_AUTO_RECAL),
  .DQS_FIND_PATTERN                 ( DQS_FIND_PATTERN),
   
修改后的代码:

(* DQS_AUTO_RECAL = DQS_AUTO_RECAL, DQS_FIND_PATTERN = DQS_FIND_PATTERN *) PHASER_IN_PHY #(
  .BURST_MODE                       ( PI_BURST_MODE),
  .CLKOUT_DIV                       ( PI_CLKOUT_DIV),
//  .DQS_AUTO_RECAL                   ( DQS_AUTO_RECAL),
//  .DQS_FIND_PATTERN                 ( DQS_FIND_PATTERN),

修订历史
01/18/2013 - 在 v1.8中为 DQS_AUTO_RECALL 和 DQS_FIND_PATTERN 问题新增解决方法
11/02/2012 - 更新重叠补丁
10/16/2012 - 初始版本

附件

文件名 文件大小 File Type
ar52124.zip 561 KB ZIP

链接问答记录

主要问答记录

Answer Number 问答标题 问题版本 已解决问题的版本
45195 MIG 7 Series - Release Notes and Known Issues for All ISE versions and Vivado 2012.4 and older tool versions N/A N/A
AR# 52124
日期 03/18/2013
状态 Active
Type 已知问题
器件
IP