Hi, I've been using SKY130 for teaching analog IC ...
# openlane
Hi, I've been using SKY130 for teaching analog IC at our University and it played nicely. Up until this year, for the digital domain I used qflow as a demonstrator and now I'd like to try openlane out. So, my setup, on our server, is that I already have SKY130 pdk all set using
by Tim Edwards, so now I am trying to get openlane going. I see that docker containers are advised, however, I don't think that fits in my case; namely, this is a VM that students are accessing via internet (server is, alas, native Win machine and VM is Ubuntu), remotely, so adding another layer of abstraction wouldn't be what I am looking for. Plus, I already have the PDK all set, so I wouldn't like to double that. Hence, I'd like to set openlane like we did in the olden' days 🙂 Unless... that is... there are arguments that it will really benefit us if I scratch everything and actually move on to containers? It's not that I don't like containers, I use them on a daily basis, actually, on another project, but in this case it seems we are better of avoiding them... Are we? Anyway, when I try following the instructions from here: https://openroad.readthedocs.io/en/latest/user/BuildLocally.html this is what I get:
Copy code
:/opt/OpenROAD-flow-scripts$ ./build_openroad.sh --local
[INFO FLW-0002] Updating git submodules.
[INFO FLW-0001] Using local build method. This will create binaries at 'tools/install' unless overwritten.
[INFO FLW-0017] Compiling Yosys.
make: Entering directory '/opt/OpenROAD-flow-scripts/tools/yosys'
mkdir -p /opt/OpenROAD-flow-scripts/tools/install/yosys/bin
cp yosys yosys-config yosys-abc yosys-filterlib yosys-smtbmc /opt/OpenROAD-flow-scripts/tools/install/yosys/bin
strip -S /opt/OpenROAD-flow-scripts/tools/install/yosys/bin/yosys
strip /opt/OpenROAD-flow-scripts/tools/install/yosys/bin/yosys-abc
strip /opt/OpenROAD-flow-scripts/tools/install/yosys/bin/yosys-filterlib
mkdir -p /opt/OpenROAD-flow-scripts/tools/install/yosys/share/yosys
cp -r share/. /opt/OpenROAD-flow-scripts/tools/install/yosys/share/yosys/.
make: Leaving directory '/opt/OpenROAD-flow-scripts/tools/yosys'
[INFO FLW-0018] Compiling OpenROAD.
CMake Error: The source directory "/opt/OpenROAD-flow-scripts/CMAKE_INSTALL_PREFIX=/opt/OpenROAD-flow-scripts/tools/install/OpenROAD" does not exist.
Specify --help for usage, or press the help button on the CMake GUI.
directory does exist, but from that line:
it seems to me that there's a mess up within that script somewhere... as if the
part of the command got mixed in within another line... Could someone take a look and help? I am happy to share temporary access to the server, as well, just let me know and we'll find a timeslot to look at this together. Thanks!
1. containers dont use virtualization. They build on top of your OSes kernel. 2. You dont want to be builsing openlane every 3 months even if you can. Just use docker, and save yourself some time
Thanks for your insights: 1. you are right, I corrected my message <== it wasn't my intention to lead anyone to believe that VM and docker do the same thing, rather to say that involves another layer of abstraction that makes us bend minds around yet another tool. I would like to avoid that. 2. I build it once a year <= when we start a semester with one version, we stick with that one until finish. Doing it once a year is fine. Hence, that's not a reason back off in my case.
why use openroad instead of openlane?
Hi @User thanks for joining in. As explained above, I don't want to go through the docker container, I'd like to have the tool set directly on my VM. So, if I go to
git, readme says:
Copy code
Containerless/Local Installations
Please see here.
https://github.com/The-OpenROAD-Project/OpenLane#containerlesslocal-installations pointing me to: https://github.com/The-OpenROAD-Project/OpenLane/blob/master/docs/source/local_installs.md which tells me the following:
Copy code
DO NOTE: We expect you to get some tools on your own, because said tools are too complex to build in an automated fashion. Namely:

Git 2.34+
i.e. it instructs me to get OpenROAD installed and set, hence I went for this: https://openroad.readthedocs.io/en/latest/user/BuildLocally.html === The point here being, it's not that I wanted to use OpenROAD instead of openlane, it's just the way things seem to have arranged themselves... I may be understanding something wrong, though, so... do correct me, please. === Can you maybe recommend another way around (without docker containers)?