Hello everyone, when I run qflow on my verilog des...
# magic
m
Hello everyone, when I run qflow on my verilog design it creates a folder named "layout" where you have .gds and .mag files which you can open in magic and view, however when I try to do this then I do not see the standard cell gates and on the console window it says that it is unable to read them, what could be the issue.
t
@Mudasir: Qrouter is fairly primitive and it is not able to handle the high-density cells from sky130-pdk without many DRC errors. However, James Stine's group at OSU makes standard cells that are very clean and route very cleanly. So I have set up qflow in sky130 to work with the OSU standard cell set. But the OSU standard cell set is not configured into sky130 by default (maybe it's time to change that?), so you need to enable it when you configure open_pdks prior to compile and install:
Copy code
--enable-osu-t12-sky130[=path]
                          Install sky130_osu_t12. If path is omitted, the repository
                          will be downloaded. [default=disabled]
  --enable-osu-t15-sky130[=path]
                          Install sky130_osu_t15. If path is omitted, the repository
                          will be downloaded. [default=disabled]
  --enable-osu-t18-sky130[=path]
                          Install sky130_osu_t18. If path is omitted, the repository
                          will be downloaded. [default=disabled]
I have not spent much time on qflow support for sky130 as it sort of runs counter to Efabless' support of OpenROAD/openlane. If you have problems with it, please let me know.
m
I am not using sky130 as the technology when running qflow instead I am using osu035, but still it is unable to read the cells above.
t
Sorry, I just assumed sky130 (the OSU crew names their cells the same as the OSU035 and OSU018 libraries, so it's not obvious). In that case, you need to make sure you are running magic from a location that contains a .magicrc file that points to the location of the standard cells (or start magic with the
-rcfile
option pointing to such a file). In the default installation of qflow, you'll find this file in
/usr/local/share/qflow/tech/osu035/osu035.magicrc
.
m
Still getting the same result, which file does magic looks for to include the layouts of the standard cells, I presume there must be some file/files containing the layout information of the standard cells.
One other thing, if I wanted to use the synthesized spice netlist from the verilog code for my ngspice simulations then I would need a spice library file defining the pmos and nmos models for the technology used in the netlist, and I cannot seem to find such a file for osu035 technology.
t
Sorry, I saw this post earlier and failed to reply. For the 2nd question: Yes, that is a clearly known problem with the SCMOS PDK. Unlike sky130, SCMOS is not a complete open-source PDK. It comprises a set of layout rules that are somewhat conservative and will satisfy DRC rules for a number of compatible foundry processes. However, it only describes layout rules and does not contain any information about device models. In the past SCMOS rules were defined, maintained, and distributed by MOSIS. If you needed device models, you could get them for specific foundries and MPW runs through MOSIS under NDA. The OSU035 standard cells are based on the SCN4M_SUBM.20 technology which was used with TSMC35. Any device models would have to come from TSMC under NDA. For the first question, you will probably need to pre-load the standard cells from GDS in your layout, since qflow does not provide the magic layout views for those cells. If the installation in is
/usr/local/share/
as I mentioned above, then you can read the GDS of the standard cells from the file ``/usr/local/share/qflow/tech/osu035/osu035_stdcells.gds2` . If you launch magic from the qflow GUI, then it should do that automatically.