topics: [“openlane2”, “asic”, “physicaldesign”, “sram”, “sky130”]
This article presents a physical design flow using OpenLane2 (v2)
that integrates an SRAM hard macro and successfully completes
the process from RTL to GDS.
The critical point is that the goal of this article is not to design an SRAM.
Instead, the SRAM is treated purely as an external hard macro,
with the objective of demonstrating a realistic SoC physical integration methodology.
In practical SoC design, SRAMs are typically:
Accordingly, in this project the SRAM is handled with the following policy:
This is not an evasion—it is the correct and realistic design practice.
OpenLane2 was selected over OpenLane (v1) for the following reasons:
In particular, the expressiveness of macro-aware floorplanning
is a major strength of OpenLane2.
The steps taken in this project are as follows:
The SRAM is not treated as a design variable,
but rather as an initial condition (constraint).
In the generated GDS, the following can be confirmed:
This is the correct and expected outcome.
The fact that the internal structure of the SRAM is not visible
is itself proof that hard macro integration was performed correctly.
→ Yes, absolutely.
In real SoC design, the main difficulty lies not in:
This project isolates and focuses on
the part of ASIC design that is closest to real-world practice.
All contents discussed in this article are organized in a
fully reproducible form in the following repository:
GitHub Pages
https://samizo-aitl.github.io/openlane2-sram/
GitHub Repository
https://github.com/Samizo-AITL/openlane2-sram
Configuration files, structure, and design policies are included,
making this material directly reusable for educational purposes.
If this article helps readers take a step toward
realistic ASIC design beyond standard-cell-only examples,
it has achieved its goal.