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.

Where do I get the osu025_stdcells.lib from? problm using Encounter RTL Compiler.

Status
Not open for further replies.

jaishankar

Junior Member level 2
Junior Member level 2
Joined
Feb 9, 2012
Messages
21
Helped
0
Reputation
0
Reaction score
0
Trophy points
1,281
Activity points
1,480
Hello,

This is a beginner question. Please help!!!

There is Encounter RTL Compiler - physical (version 10.1.302) tool available in my university.
I need to learn the tool and develop a microprocessor- starting from verilog code to the final physical layout. - no one else is using the software in my univ. I had to learn on my own.

For now, to get familiarized with the tool, I am asked to do a simple design with a few gates.
I am following tutorials from other universities. - but couldn't get a good understanding of the tool. (I have done full custom IC designs in the last semester using cadence virtuoso, but I have no knowledge in design automations - like the Encounter tools.)
one of the tutorials I got is this.. **broken link removed**

Now my doubts are..

1. We have Nangateopencelllibrary. like NangateOpenCellLibrary_functional.lib installed in our systems., I just used this library file in RTL compiler. I run the code , but I see a "synthesis failed" message in the terminal, (I do see some gate structure/circuit diagram in the result window). What should I do to synthesise a verilog code properly? (the verilog code I used is this.. (from the tutorial)

module accu(in, acc, clk, reset);
input [7:0] in;
input clk, reset;
output [7:0] acc;
reg [7:0] acc;

always @(posedge clk)
begin
if (reset) acc<=0;
else acc<=acc+in;
end

endmodule

The error message I get is this..
Error : Cannot perform synthesis because libraries do not have usable inverters. [LBR-171] [synthesize]
: Inverters are required for mapping. Ensure that the loaded libraries contain at least one usable inverter.
Error : Cannot perform synthesis because libraries do not have usable basic gates. [LBR-172] [synthesize]
: At least one usable two-input and/or/nand/nor gate (modulo inversion at inputs) is required for mapping. Ensure that the loaded libraries contain at least one such cell.
Synthesis failed.
Error sourcing '/eng/home/jaishank/tutfirst/synthesis/rtl.tcl'.


2. In the tutorial, they've used a Osu stdcell library, where do I get these open source libraries from? I have to do a simple example design for now, I would be happy if you can suggest me a good library, and some tutorial/guidance on how to use them.
Please help !!
 

I think it might be a path problem. Somehow the tool is not able to find out the location of the library. Are you sure you have given the library path and the tool is aware of where the library is?

If not, then use the osu_free_library. Its the simplest one i know of. See attachment
 

Attachments

  • osu_freelib.tar.gz
    216.3 KB · Views: 138

jaishankar,

To my knowledge of RTL Compiler, the reason your getting an Error is because your library does not have a single usable inverter and any 2 input combo cell to implement the logic during synthesis. This is required if your doing synthesis with RC - atleast one inverter and one basic 2 input combo cell.

Also it could be that the library carries the libcell but you may have marked it a set_dont_use.
 

Hello,
Thanks for your reply. I have actually used FreePDK45nm library and it is working fine. I still don't know the reason why nangate library didn't work,, I did check the nangate library, ----- inverters, AND/OR gates and all basic gates were available.
I am clueless why those gates were not recognized.

Can you tell me how can I improve my knowledge in utilzing these software tools?

Thank you all.
 

You can try using the check_library command to identify why the libcells were not available or also look for Warnings once you have loaded the library.
In RC there is an option of "write_template <options>" use this command to create a script as a start for the synthesis flow you wish to execute. Try and explore and see what each command does... rest will come with curiosity and as more and often you play with your design. :)
 

Thank you. I haven't yet completed a simple example design. I want to see the whole flow in the tool RTL Compiler - Physical.
Logic synthesis is done.
Now, I have a couple of doubts.
1. The timing information offered in the library FreePDK,-- ".tlf" file is not accepted in the RTL compiler - Physical. What should I use for importing the timing information then???
2. I don't know how to start with the floorplanning. I have to do everything via script file in this software, But "floorplan" syntax is not working., may be I got to create a .def file now.
3. How do I create a .def file? Can Someone tell me how can I educate myself on creating a correct script file which gives me the correct physical layout.



How can I learn the proper scripting/ learn the tool? plz share your ideas.
 


Status
Not open for further replies.

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top