https://open-source-silicon.dev logo
m

mehdi

11/17/2020, 9:48 PM
Thanks @User, Can you share a DEF + script to replicate the issue ?
t

tnt

11/17/2020, 9:49 PM
You might have to guide me on where to find that 😅
m

mehdi

11/17/2020, 9:51 PM
In openroad, it should be in one of the results folder. I am not sure where they sit in openlane. @Amr Gouhar Do you know where I could find the DEF for his experiemnt?
t

tnt

11/17/2020, 9:52 PM
Well I have plenty of DEF at various stages of the process.
m

mehdi

11/17/2020, 9:52 PM
Okay, I need the one after TritonRoute and after global route
Global Route= Fast Route
+ your scripts for these steps
So this contains the whole
runs
folder with all scripts / config / intermediate results.
/results/routing/usb_sky130.def
is after TritonRoute
Trying to find the one after fast route.
Ah well
/tmp/routing/fastroute.def
m

mehdi

11/17/2020, 10:04 PM
Thanks
@tnt I will fwd this internally to the person in charge and let you know
t

tnt

11/17/2020, 10:25 PM
Looking at it, it just seems like those diodes shouldn't be there in the first place and diode insertion is done by OpenLane right ? not OpenRoad.
m

mehdi

11/17/2020, 10:26 PM
The two are using the same tools. As mentionned earlier, this will happen after antenna repair
and the diode are inserted next to the sink
I don't think Macros are handled correctly
Where would you be expecting the diodes?
is that creating a DRC error
t

tnt

11/17/2020, 10:29 PM
Well I'd expect it anywhere else really 😛 There are no macro pins near where the diode is placed. And those are SRAM macros, at this point in the flow it would have no clue if there is a transistor gate connected there.
Really I'd want to tell it : don't worry about it and assume the macro has internal diodes if it needs them.
m

mehdi

11/17/2020, 10:30 PM
Ok but how would you fix the natenna error later on
t

tnt

11/17/2020, 10:31 PM
Always have diodes on input pins of your macros ?
I mean it has no idea what's in there and how much internal metal there is right ?
so seems like the only safe way would be for the macro to ensure it always has diodes on its inputs.
m

mehdi

11/17/2020, 10:34 PM
Normally in the LEF file there is gate antenna ratio or DIFF antenna ration porperties
and that's how the antenna error is detected and fixed
I still did not look at the testcase but can you see if the diodes are inserted for each pin?
(it shouldn't be the case)
t

tnt

11/17/2020, 10:35 PM
Mmm, you're right.
There are
ANTENNAGATEAREA
for all input pins of the macros.
(all the same value though which is a bit suspicious)
m

mehdi

11/17/2020, 10:38 PM
probably because all inputs are connected to the same instances (FF or buffer) which has the same ratio
t

tnt

11/17/2020, 10:43 PM
I guess in this particular instance, it'd be easier to handle this by forcing layer change having a small jumper to a high layer to break the antenna near the macro pin.
m

mehdi

11/17/2020, 11:16 PM
Yes, adding a jumper would work but it is not fully supported I think.