Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Standard cell reference missing for DLATCH in gf180 PDK #101

Open
0616ygh opened this issue Nov 30, 2022 · 6 comments
Open

Standard cell reference missing for DLATCH in gf180 PDK #101

0616ygh opened this issue Nov 30, 2022 · 6 comments

Comments

@0616ygh
Copy link

0616ygh commented Nov 30, 2022

Expected Behavior

  1. The latch cells can be found in the PDK by Yosys+ABC.
  2. The synthesis, floorplan, placement, and routing steps can be successfully completed by OpenLane with GF180 PDK.

Actual Behavior

  1. ABC can't find latch cells in GF180 PDK and you can find cells named "$DLTACH_N" in synthesis report.
  2. Floorplanning failed for module "$DLTACH_N" not found in "merged.nom.lef", and check whether EXTRA_LEFS is set appropriately.

Steps to Reproduce the Problem

  1. git clone https://github.com/0616ygh/rioschip2.git
  2. cd rioschip2
  3. source env.sh
  4. make setup
  5. cd openlane
  6. make green

Specifications

  • OpenLane Version: OpenLane daae2154590cf20e0c20b77e3fc02b6526ad09af
  • PDK Version: open_pdks 0059588eebfc704681dc2368bd1d33d96281d10f
  • Platform: Ubuntu 20.04
    a
@0616ygh
Copy link
Author

0616ygh commented Nov 30, 2022

Current solution:
I add a latch_map.v in "pdks/gf180mcuC/libs.tech/openlane/gf180mcu_fd_sc_mcu7t5v0/":

module \$_DLATCH_P_ (input E, input D, output Q);
  gf180mcu_fd_sc_mcu7t5v0__latq_1 _TECHMAP_DLATCH_P (
    .D(D),
    .Q(Q),
    .GATE(E)
  );
endmodule

module \$_DLATCH_N_ (input E, input D, output Q);
  gf180mcu_fd_sc_mcu7t5v0__latrnq_1 _TECHMAP_DLATCH_N (
    .D(D),
    .Q(Q),
    .GATE_N(E)
  );
endmodule

At present, I can successfully pass the floorplan. Is this the right addition? thank you.

@QuantamHD
Copy link
Collaborator

Thanks for the suggestion. I'll have to check what Yosys is looking for when it comes to auto mapping latches. It might be as simple as the liberty file not putting the latch function in quotes

@QuantamHD
Copy link
Collaborator

Looks like yosys might not have support for latches YosysHQ/yosys#1221

@0616ygh
Copy link
Author

0616ygh commented Nov 30, 2022

Yes, I agree with you very much. This is not supported by Yosys.
In skywater130 pdk, I can find the mapping files in thesky130A/libs.tech/openlane/sky130_fd_sc_hd (I use sky130_fd_sc_hd as an example): such as latch_map.v,mux_map.v, etc.
So I think in the GF180PDK, it may also be necessary to provide themapping files? This will be very helpful. Thank you.

@QuantamHD
Copy link
Collaborator

Agreed. @RTimothyEdwards should this be added to the openpdks tech mapping file?

@RTimothyEdwards
Copy link
Collaborator

The openlane development team needs to provide me with the set of mapping files.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants