Skip to content

Add eSim-ORFS integration with PDK-aware netlist validator#467

Open
Divinesoumyadip wants to merge 6 commits intoFOSSEE:masterfrom
Divinesoumyadip:esim-orfs-integration
Open

Add eSim-ORFS integration with PDK-aware netlist validator#467
Divinesoumyadip wants to merge 6 commits intoFOSSEE:masterfrom
Divinesoumyadip:esim-orfs-integration

Conversation

@Divinesoumyadip
Copy link

Hey team,
I've been exploring the eSim-ORFS integration path and wanted to
start with a concrete foundation. This PR adds the initial skeleton
for automating the handoff from eSim's schematic export to OpenROAD
Flow Scripts.
The core idea is simple so before a .cir.out netlist reaches ORFS,
we validate it against the target PDK to catch unmappable primitives
early to avoiding silent failures during placement and routing.

Also its included

pdk_validator.py: skeleton for checking .cir.out against PDK cells., orfs_config_gen.py: will auto-generate ORFS config.mk from netlist. and init.py: module init.

This is the starting point. Happy to discuss the design direction
before building out the full implementation soon.

@Divinesoumyadip
Copy link
Author

Hey @Shanthipriya20 , implemented the full working version based on your feedback. The parser now handles real .cir.outSPICE netlists, validates all components against the sky130 HD standard cell library, flags analog primitives like voltage sources as skipped, and blocks config generation if unmappable primitives are found. orfs_config_gen.py auto-generates a complete config.mk only after validation passes. Both scripts are tested and working. Would love your review!

@Divinesoumyadip
Copy link
Author

Hey @Shanthipriya20 , tested the parser against all three cases you mentioned. Basic logic gates pass cleanly, hierarchical schematics now correctly identify internal user-defined subcircuits separately from PDK cells so they don't get flagged as unmappable, and parameterized components like R, C, M with W/L parameters are correctly skipped as analog primitives. All three test netlists pass. Test files are in src/orfs_integration/tests/. Ready for your review!

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

Successfully merging this pull request may close these issues.

1 participant