OpenLane icon indicating copy to clipboard operation
OpenLane copied to clipboard

Missing function on output ports of `sky130_fd_sc_hd__(s)dlclkp_*`

Open kareefardi opened this issue 2 years ago • 6 comments

Description

Output ports of such cells have no function and gets rejected by yosys unless the cells are blackboxed.

Expected Behavior

Cells shouldn't be rejected by yosys

Environment report

n/a

Reproduction material

n/a

Relevant log output

sample output:

yosys> read_liberty libs.ref/sky130_fd_sc_hd/lib/sky130_fd_sc_hd__tt_025C_1v80.lib
1. Executing Liberty frontend: libs.ref/sky130_fd_sc_hd/lib/sky130_fd_sc_hd__tt_025C_1v80.lib
ERROR: Missing function on output GCLK of cell sky130_fd_sc_hd__dlclkp_1.

Still investigating a proper fix. Related issue: https://github.com/The-OpenROAD-Project/OpenLane/issues/1627

kareefardi avatar Jan 31 '23 10:01 kareefardi

I am currently having the same issue! I also have a similar issue with the nanogate45 tech

tristonw109 avatar Mar 29 '23 18:03 tristonw109

Fwiw I doubt yosys can infer a clock gate.

maliberty avatar Mar 29 '23 20:03 maliberty

Fwiw I doubt yosys can infer a clock gate.

I need to use the insbuf command in yosy, think I can delete the clock gate section and be ok?

tristonw109 avatar Mar 29 '23 23:03 tristonw109

I need to use the insbuf command in yosy, think I can delete the clock gate section and be ok?

I don't know but it seems odd to use a clock gating cell as a buffer.

maliberty avatar Mar 30 '23 02:03 maliberty

Fwiw I doubt yosys can infer a clock gate.

Using this comment, I looked into if yosys can infer gated clocks. It doesn't seem to support it. Since I didn't need the gate clock, I removed it from the liberty file and was able to easily load it into yosys. This is a temporary fix until yosys can support gated clocks.

tristonw109 avatar Mar 30 '23 19:03 tristonw109

Any reason for blocking this? I had similar yosys> read_liberty libs.ref/sky130_fd_sc_hd/lib/sky130_fd_sc_hd__tt_025C_1v80.lib

  1. Executing Liberty frontend: libs.ref/sky130_fd_sc_hd/lib/sky130_fd_sc_hd__tt_025C_1v80.lib ERROR: Missing function on output GCLK of cell sky130_fd_sc_hd__dlclkp_1. - Any updates? This was on Yosys 0.33

pramchan avatar Jun 09 '25 17:06 pramchan

@pramchan Oh, sorry for the late repsonse.

If you're stuck still, Yosys has a number of new arguments to read_liberty which you can use -ignore_miss_func to work around this specific issue.

https://yosyshq.readthedocs.io/projects/yosys/en/latest/cmd/index_frontends.html#cmd-read_liberty

The reason it is blocked is that it's not technically an OpenLane bug and I'm not sure why it's here.

donn avatar Oct 04 '25 11:10 donn