RTimothyEdwards / qflow

Qflow full end-to-end digital synthesis flow for ASIC designs
183 stars 36 forks source link

'edit display' doesnt work #37

Open hughperkins opened 2 years ago

hughperkins commented 2 years ago

tried in both latest tag, and master

after checking out master did:

./configure
make clean
make -j 8
sudo make install

This is the output in the magic console when I click 'edit display' in qflow

loading history file ... 7 events added
Use openwrapper to create a new GUI-based layout window
Use closewrapper to remove a new GUI-based layout window

Magic 8.3 revision 262 - Compiled on Mon 24 Jan 2022 10:52:43 PM EST.
Starting magic under Tcl interpreter
Using Tk console window
Processing system .magicrc file
Could not find file 'SCN4M_SUBM.20.tech' in any of these directories:
         . $CAD_ROOT/magic/sys $CAD_ROOT/magic/sys/current
4 Magic internal units = 1 Lambda
New windows will not have a title caption.
New windows will not have scroll bars.
New windows will not have a border.
Root cell box:
           width x height  (   llx,  lly  ), (   urx,  ury  )

microns:   0.000 x 0.000   ( 0.000,  0.000), ( 0.000,  0.000)
lambda:     0.00 x 0.00    (  0.00,  0.00 ), (  0.00,  0.00 )
internal:      0 x 0       (     0,  0    ), (     0,  0    )
Reading LEF data from file /home/ubuntu/git/qflow/tech/osu035/osu035_stdcells.lef.
This action cannot be undone.
LEF read, Line 104 (Error): Don't know how to parse layer "metal1"
LEF read, Line 104 (Error): Try adding this name to the LEF techfile section
LEF read, Line 105 (Error): No layer defined for RECT.
LEF read, Line 106 (Error): Don't know how to parse layer "via1"
LEF read, Line 106 (Error): Try adding this name to the LEF techfile section
LEF read, Line 107 (Error): No layer defined for RECT.
LEF read, Line 108 (Error): Don't know how to parse layer "metal2"
LEF read, Line 108 (Error): Try adding this name to the LEF techfile section
LEF read, Line 109 (Error): No layer defined for RECT.
LEF read, Line 113 (Error): Don't know how to parse layer "metal2"
LEF read, Line 113 (Error): Try adding this name to the LEF techfile section
LEF read, Line 114 (Error): No layer defined for RECT.
LEF read, Line 115 (Error): Don't know how to parse layer "via2"
LEF read, Line 115 (Error): Try adding this name to the LEF techfile section
LEF read, Line 116 (Error): No layer defined for RECT.
LEF read, Line 117 (Error): Don't know how to parse layer "metal3"
LEF read, Line 117 (Error): Try adding this name to the LEF techfile section
LEF read, Line 118 (Error): No layer defined for RECT.
LEF read, Line 122 (Error): Don't know how to parse layer "metal3"
LEF read, Line 122 (Error): Try adding this name to the LEF techfile section
LEF read, Line 123 (Error): No layer defined for RECT.
LEF read, Line 124 (Error): Don't know how to parse layer "via3"
LEF read, Line 124 (Error): Try adding this name to the LEF techfile section
LEF read, Line 125 (Error): No layer defined for RECT.
LEF read, Line 126 (Error): Don't know how to parse layer "metal4"
LEF read, Line 126 (Error): Try adding this name to the LEF techfile section
LEF read, Line 127 (Error): No layer defined for RECT.
LEF read, Line 132 (Error): Don't know how to parse layer "metal1"
LEF read, Line 132 (Error): Try adding this name to the LEF techfile section
LEF read, Line 137 (Error): Don't know how to parse layer "metal2"
LEF read, Line 137 (Error): Try adding this name to the LEF techfile section
LEF read, Line 142 (Error): Don't know how to parse layer "via1"
LEF read, Line 142 (Error): Try adding this name to the LEF techfile section
LEF read, Line 143 (Error): No layer defined for RECT.
LEF read, Line 148 (Error): Don't know how to parse layer "metal3"
LEF read, Line 148 (Error): Try adding this name to the LEF techfile section
LEF read, Line 153 (Error): Don't know how to parse layer "metal2"
LEF read, Line 153 (Error): Try adding this name to the LEF techfile section
LEF read, Line 158 (Error): Don't know how to parse layer "via2"
LEF read, Line 158 (Error): Try adding this name to the LEF techfile section
LEF read, Line 159 (Error): No layer defined for RECT.
LEF read, Line 164 (Error): Don't know how to parse layer "metal3"
LEF read, Line 164 (Error): Try adding this name to the LEF techfile section
LEF read, Line 169 (Error): Don't know how to parse layer "metal4"
LEF read, Line 169 (Error): Try adding this name to the LEF techfile section
LEF read, Line 174 (Error): Don't know how to parse layer "via3"
LEF read, Line 174 (Error): Try adding this name to the LEF techfile section
LEF read, Line 175 (Error): No layer defined for RECT.
LEF read, Line 180 (Error): Don't know how to parse layer "metal1"
LEF read, Line 180 (Error): Try adding this name to the LEF techfile section
LEF read, Line 182 (Error): Don't know how to parse layer "metal1"
LEF read, Line 182 (Error): Try adding this name to the LEF techfile section
LEF read, Line 187 (Error): Don't know how to parse layer "metal2"
LEF read, Line 187 (Error): Try adding this name to the LEF techfile section
LEF read, Line 189 (Error): Don't know how to parse layer "metal2"
LEF read, Line 189 (Error): Try adding this name to the LEF techfile section
LEF read, Line 194 (Error): Don't know how to parse layer "metal3"
LEF read, Line 194 (Error): Try adding this name to the LEF techfile section
LEF read, Line 196 (Error): Don't know how to parse layer "metal3"
LEF read, Line 196 (Error): Try adding this name to the LEF techfile section
LEF read, Line 201 (Error): Don't know how to parse layer "metal4"
LEF read, Line 201 (Error): Try adding this name to the LEF techfile section
LEF read, Line 203 (Error): Don't know how to parse layer "metal4"
LEF read, Line 203 (Error): Try adding this name to the LEF techfile section
LEF read, Line 237 (Error): Don't know how to parse layer "metal1"
LEF read, Line 237 (Error): Try adding this name to the LEF techfile section
LEF read, Line 246 (Error): Don't know how to parse layer "metal1"
LEF read, Line 246 (Error): Try adding this name to the LEF techfile section
LEF read, Line 262 (Error): Don't know how to parse layer "metal1"
LEF read, Line 262 (Error): Try adding this name to the LEF techfile section
LEF read, Line 269 (Error): Don't know how to parse layer "metal1"
LEF read, Line 269 (Error): Try adding this name to the LEF techfile section
LEF read, Line 279 (Error): Don't know how to parse layer "metal1"
LEF read, Line 279 (Error): Try adding this name to the LEF techfile section
LEF read, Line 287 (Error): Don't know how to parse layer "metal1"
LEF read, Line 287 (Error): Try adding this name to the LEF techfile section
LEF read, Line 299 (Error): Don't know how to parse layer "metal1"
LEF read, Line 299 (Error): Try adding this name to the LEF techfile section
LEF read, Line 306 (Error): Don't know how to parse layer "metal1"
LEF read, Line 306 (Error): Try adding this name to the LEF techfile section
LEF read, Line 329 (Error): Don't know how to parse layer "metal1"
LEF read, Line 329 (Error): Try adding this name to the LEF techfile section
LEF read, Line 336 (Error): Don't know how to parse layer "metal1"
LEF read, Line 336 (Error): Try adding this name to the LEF techfile section
LEF read, Line 347 (Error): Don't know how to parse layer "metal1"
LEF read, Line 347 (Error): Try adding this name to the LEF techfile section
LEF read, Line 355 (Error): Don't know how to parse layer "metal1"
LEF read, Line 355 (Error): Try adding this name to the LEF techfile section
LEF read, Line 367 (Error): Don't know how to parse layer "metal1"
LEF read, Line 367 (Error): Try adding this name to the LEF techfile section
LEF read, Line 374 (Error): Don't know how to parse layer "metal1"
LEF read, Line 374 (Error): Try adding this name to the LEF techfile section
LEF read, Line 397 (Error): Don't know how to parse layer "metal1"
LEF read, Line 397 (Error): Try adding this name to the LEF techfile section
LEF read, Line 405 (Error): Don't know how to parse layer "metal1"
LEF read, Line 405 (Error): Try adding this name to the LEF techfile section
LEF read, Line 412 (Error): Don't know how to parse layer "metal1"
LEF read, Line 412 (Error): Try adding this name to the LEF techfile section
LEF read, Line 422 (Error): Don't know how to parse layer "metal1"
LEF read, Line 422 (Error): Try adding this name to the LEF techfile section
LEF Read:  Further errors will not be reported.
LEF read: Processed 3179 lines.
LEF Read: encountered 572 errors total.
Cell foo has technology "scmos", but current technology is "minimum"
Use command "tech load" if you want to switch technologies, or use
"cellname delete foo" and "load foo -force" to force the cell to load as technology minimum
Scaled tech values by 4 / 1 to match internal grid scaling
Using technology "minimum", version 0.0
Main console display active (Tcl8.6.10 / Tk8.6.10)
% 

... and nothing shows up: there are no layers on the right hand side of magic. There is no circuit.

If I run magic layout/foo.mag, then magic loads, with the layer key showing, and a circuit drawn.

So I suspect some issue with the commandline inside qflow_manager.py

hughperkins commented 2 years ago

I hacked qflow_manager.py to display the commandline. It's:

Screen Shot 2022-02-22 at 7 57 44 AM

Seems to be missing the path to a .mag file? (Or is this supposed to being added to the .magicrc somehow? .magicrc contents are:

ubuntu@ubuntu:~/git/qflow$ cat layout/qflow.magicrc 
tech load SCN4M_SUBM.20 -noprompt
#-----------------------------------------------------
# .magicrc startup file for OSU035 project under qflow
#-----------------------------------------------------

path sys +/usr/local/share/qflow/tech/osu035
scalegrid 1 4
set GND gnd
set VDD vdd

drc euclidean on
drc off

addpath digital

# Qflow: read layout for review
openwrapper
box 0 0 0 0
drc off
lef read /home/ubuntu/git/qflow/tech/osu035/osu035_stdcells.lef
load foo
select top cell
expand
view
hughperkins commented 2 years ago

Looks like it might be working until after 'migration' step. At this point, with a bit of hacking to qflow_manager.py, I get the following output on qflow console:

Screen Shot 2022-02-22 at 8 16 04 AM