Continue to Site

Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

[SOLVED] Keep Combinational Timing Loop which is disabled by DC compiler

Status
Not open for further replies.

sami154

Newbie
Newbie level 4
Joined
Dec 10, 2015
Messages
5
Helped
0
Reputation
0
Reaction score
0
Trophy points
1
Activity points
44
Hello Everyone,

I am trying to implement a ring oscillator true random number generator (RO-TRNG) and synthesize it in DC compiler. However, DC compiler is showing me a warning "
Disabling timing arc between pins 'IN2' and 'QN' on cell 'loop[5].ro1/nand_2/U1' to break a timing loop. (OPT-314)". So I am guessing that DC compiler has removed the feedback path from the netlist. But I want to keep the feedback path of the ring oscillator. Can you please let me know how I can keep the combinational loop of the ring oscillator in DC compiler? I have implemented the RTL design in FPGA board using ALLOW_COMBINATORIAL_LOOPS true constraint in vivado and works fine. Now I need your suggestion how I can do the synthesis in DC compiler.

Thanks in advance for your help.
 

Solution
The synthesis is breaking the timing loop, which will not create problems. But, you should not let the synthesis tool touch your ring oscillator. The tool will remove your delay gates and maybe more.

BradtheRad

Super Moderator
Staff member
Advanced Member level 7
Joined
Apr 1, 2011
Messages
14,744
Helped
2,871
Reputation
5,754
Reaction score
2,887
Trophy points
1,393
Location
Minneapolis, Minnesota, USA
Activity points
110,198
Does your ring oscillator start up in a defined state or random state?

That is, did you design it so each stage begins in a default state when first powered up? So that the simulator is able to calculate definite values for all nodes and outputs, starting with the first frame of the run?

Try leaving the feedback wire disconnected for the first few cycles, then connect it.
 

ThisIsNotSam

Advanced Member level 5
Advanced Member level 5
Joined
Apr 6, 2016
Messages
2,326
Helped
390
Reputation
780
Reaction score
418
Trophy points
83
Activity points
12,123
the problem is that you should not be trying to synthesize in the first place. it is not synchronous logic. it's probably safer to keep it as a blackbox while you synthesize the rest of your circuit
 

SynthWorks

Member level 1
Member level 1
Joined
Jun 4, 2013
Messages
41
Helped
18
Reputation
36
Reaction score
20
Trophy points
1,288
Activity points
1,702
The message does not mean it "fixed" your timing loop by removing it. It means it is ignoring it because the presence of the timing loop causes the timing tool to be in an infinite loop.
 

Trent_N

Newbie level 6
Newbie level 6
Joined
Apr 2, 2022
Messages
12
Helped
1
Reputation
2
Reaction score
1
Trophy points
1
Activity points
88
The synthesis is breaking the timing loop, which will not create problems. But, you should not let the synthesis tool touch your ring oscillator. The tool will remove your delay gates and maybe more.
 

Solution
Status
Not open for further replies.

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Top