Monday 4th July 2022
I'm using the LayoutEditor Full Version, build: 20211015, and the XFab PDK version xh035-stdformats-iPDK-6.6.2.3
This is being run in WSL Linux Ubunto 20.04.4
When I try to run RTL to GDS for X-Fab, I get the following Error Message:
No digital library defined. Please set it inside the ProjectSettings.tcl file in your project folder. Execution terminated!
I have all the correct files (I think) in the working project directory, including autoLoadMacro.layout. I launch layout in the working directory using:
sudo layout -a
It appears the X-Fab settings are getting properly configured; here is the output at startup:
<> -------------------------------------------
<>
<> Loading XFAB PDK components
<> generic O.K
<> juspertor O.K
<> basic O.K
<> exports O.K
<> custom O.K
<> cdf O.K
<> xh035 O.K
<>
<> -------------------------------------------
<>
<> Technology xh035
<> Version v6_6_2_3
<> LibCode 1021
<> Core MOS
<> Mos5A no Mos5A
<> Mim MIM
<> Metal METAL4
<>
<> -------------------------------------------
Here is the ProjectSettings.tcl file:
#----------------------------------------------------------------------------
#do not modify this file
#----------------------------------------------------------------------------
proc ProjectSettings {} {
global Project
set Project [list \
[list KitFlowVersion v3_1_3] \
[list Technology xh035] \
[list libCode 1021] \
[list Version v6_6_2_3] \
[list Type new] \
[list AnalogLibs {}] \
[list Core MOS] \
[list DRCTool {}] \
[list DigitalLibs {}] \
[list DrcRunsetFile {}] \
[list EsdLibs {}] \
[list GatesPcell {}] \
[list HspiceLib {{./Hspice/mos/xh035.lib tm} {./Hspice/mos/param.lib 3s}}] \
[list HspiceModule mos] \
[list HspiceVersion {v6_6 v6_6_2}] \
[list LVSSchNetlistFormat CDL] \
[list LVSTool {}] \
[list LvsRunsetFile {}] \
[list Metal METAL4] \
[list Mim MIM] \
[list Mos5A {no Mos5A}] \
[list PRIMLIB PRIMLIB] \
[list Primlib PRIMLIB_1021] \
[list PrimlibDataSheetVersion {v6_6 v6_6_1}] \
[list RunsetCode MOS_MET4_MIM] \
[list StreamLayerMapFile ./strmInOut.layertable] \
[list StreamObjectMapFile ./strmOutObjects.map] \
[list TechFile TECH_XH035_1021] \
[list XticFlow new] \
[list edaTool XFABiPDK.F1] \
[list warn {no Info}] \
]
}
It appears the error is getting triggered because the rtl2gds-xfab.layout script wants something in the [list DigitalLibs {}] field, which is empty.
Any suggestions on a fix?
Thank You
Jürgen LayoutEditorFull Monday 4th July 2022
The package 'xh035-stdformats-iPDK-6.6.2.3' contains the technology setup and the primary cells for the xh035 technology. However it does not contains any digital cells like a AND2 gate. These digital libraries are in a separate package and need to be downloaded from X-Fab and installed separately. Once installed you need to edit your ProjectSettings file and add the digital library you want to use under *DigitalLibs* like
```[list DigitalLibs {"D_CELLSL"}] \```
The rtl2gds-xfab.layout macro will then be able to find the library on your system and forwards the xh035_D_CELLSL.lef file the OpenRoad. OpenRoad is an open source tool doing a RTL to a DEF file. The LayoutEditor will then read the DEF file and can perform a LVS.
M
Monday 4th July 2022
Thanks for quick response Jurgen,
Is it just the .lef file(s) that are needed?
The instructions in the X-fab info files says this:
------------------------
Installation:
cd $X_DIR
tar -xvfz xh035-D_CELLS-LEF-v5_0_2.tar.gz
************************************************************************************
In our case using LayoutEditor, is the $X_DIR -> /root/xh035/ (this is the directory where stdformats directory was installed under)?
In this case, I assume the project file would be modified to:
[list DigitalLibs {"D_CELLS"}] \
Just wondering where the expression "D_CELLS" would be defined to point to xh035_D_CELLS.lef? Does that need to be specified with a path in the ProjectSettings file as well?
Thanks, Tim
Jürgen LayoutEditorFull Monday 4th July 2022
You will need the LEF file, the liberty file and the OpenAccess database with the D-CELLS. Like the other package the shipped macro *X-Fab Installer* will extract and put anything to the correct place. It is located in the layout window under Utilities/Technology/X-Fab.
LEF-file and Liberty file will be needed for OpenRoad to perform a RTL to DEF and LayoutEditor will need the OpenAccess database to perform the DEF to GDS.
M
Tuesday 5th July 2022
Is the OpenAccess database specific to the X-Fab D-CELLS modules? I didn't see any downloadable OA files from X-Fab.
Are any verilog files needed such as D_CELLS-verilog?
Thanks
Jürgen LayoutEditorFull Tuesday 5th July 2022
I have just checked the packages on my.xfab.com. The package with the OpenAccess database of the digital cells is now named *xh035-D_CELLS-synopsys_CustomCompiler-version.tar.gz*. It is pure OpenAccess and should run without any adjustment with the LayoutEditor.
Just for the primar/analog package you will need the package named *xh035-stdformats-IPDK* and not the Synopsys package which contains some Synopsys specific adjustments.
It seems that the OpenRoad synthesizer is fine with the Liberty files and do not need additional Verilog file.
Support forums are fading
Support forums are fading because nobody wants to wait days for a reply. AI answers faster and better. LayoutEditor is no different: please use Help → AI Console in the LayoutEditor for all questions. If that is not enough, licensed users still have e-mail support at support@layouteditor.com. This forum remains available here as an archive.