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] Ring oscillator desgin doesn't generate ring oscillator as wanted

Status
Not open for further replies.

kahlenberg

Junior Member level 3
Joined
Oct 26, 2009
Messages
29
Helped
0
Reputation
0
Reaction score
0
Trophy points
1,281
Location
AT
Activity points
1,543
Hi,
I am desingning a ROPUF (Ring oscillator PUF), however, it is not generating enough NOT gates, It should generate 15 NOT gates and connect them in a chain,
I am attaching all code and generated schematic.
ro.PNG
As you can see, it generates only chain5, 6, 9, 10, 13 and 14, I dont know why it doesn't generate other NOT gates.
Could you please help me?
Thanks.
 

Attachments

  • PUF.7z
    5.4 KB · Views: 90

my guess, without looking at your code, is that the gates are getting optimized out. You need to use some attribute like KEEP to prevent the synthesis tool from optimizing out the gates.

BTW, I am always a little leery of opening an attachment from someone I don't know. You might be better off just posting your code using the CODE tags. If your code is too long, then most people won't look at it anyway.
 
  • Like
Reactions: kahlenberg

    V

    Points: 2
    Helpful Answer Positive Rating

    kahlenberg

    Points: 2
    Helpful Answer Positive Rating
A quick search seems to indicate the attribute is supposed to be:
attribute keep : boolean;
attribute keep of chain: signal is true;


and not
attribute syn_keep: boolean;
attribute syn_keep of chain: signal is true;


as you currently have in your code.

- - - Updated - - -

barry, it's a 7-zip file with only *.VHD files.
 
  • Like
Reactions: kahlenberg

    V

    Points: 2
    Helpful Answer Positive Rating

    kahlenberg

    Points: 2
    Helpful Answer Positive Rating
A quick search seems to indicate the attribute is supposed to be:
attribute keep : boolean;
attribute keep of chain: signal is true;


and not
attribute syn_keep: boolean;
attribute syn_keep of chain: signal is true;


as you currently have in your code.

- - - Updated - - -

barry, it's a 7-zip file with only *.VHD files.

Thank you very much, that was the problem, now it generates 15 NOT gates as desired.
 

Status
Not open for further replies.

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top