Programmable Devices
CPLDs, FPGAs, SoC FPGAs, Configuration, and Transceivers
21602 讨论

Quartus Implementation issue

Deepak25
初学者
950 次查看

Hi,

I’m currently using Synplify FPGA flow to synthesis a design coded in RTL and pass the resulting netlist to Quartus to perform place and route, timing analysis and bitstream generation.

Synplify flow works okay but Quartus fails to route the the design, I’ve shown the error message I’m getting from Quartus in quartus_error.png. It should be straightforward for Quartus to fix the routing issues by inserting duplicate registers during the P&R stage but it doesn’t. I’ve set the following in Quartus but they have no effect:

set_global_assignment -name PHYSICAL_SYNTHESIS_REGISTER_DUPLICATION ON
set_global_assignment -name ROUTER_REGISTER_DUPLICATION ON

I’ve tried other seettings such as modifying the fitter seed but they don’t have any impact.

Any recommendations as to what I can do to resolve this issue?


0 项奖励
2 回复数
sstrell
名誉分销商 III
945 次查看

Is this a very large design that is failing because the chip is full?  Did you enable the aggressive routing option as mentioned in the messages?

0 项奖励
Deepak25
初学者
890 次查看

Looks like we have found a workaround to the register duplication issue. In RTL I can insert synthesis commands to limit the max fanout on the registers that have fanout issues:
reg [31:0] p_ep5_base_d /* synthesis syn_maxfan=2 */;

The number of additional registers that are inserted is minimal and there is little or no impact on utilization

0 项奖励
回复