fesens/opentpu/5-optimizer
Claude Code and agent skill by fesens/opentpu
- community
Checking that the SKILL.md file is still in the repository.
Install
npx vskill@latest install fesens/opentpu/5-optimizerSKILL.md
For PPA optimization through macro placement refinement. First need to comply with the planning rules.
Planning rules
- Push macros to the periphery. Macros are routing obstacles; placing
them in the core forces detours and creates congestion. Peripheral placement also simplifies the PG mesh and helps IR drop on high-power macros.
- Orient so macro pins do not face outward. Rotate / flip only when a
macro's highlighted pin side points outward toward the nearest core/die edge. Preserve row/column alignment while flipping.
- Leave room around each macro for signal routing and the PG grid.
- Eliminate dead pockets. Empty space between macros wastes area —
shift macros or adjust aspect ratio to convert it into usable standard-cell region.
- Avoid narrow channels between blocks and boundary. Skinny row strips between
macros cause CTS and routing pain — widen or eliminate them. Do not leave channels between boundary with macros.
- Keep the standard-cell region near aspect ratio 1.0 and contiguous.
Square is densest; aspect ratios above ~4 degrade density. Fragmented logic regions hurt density and complicate CTS. Do not place one or two macros to break, make small channels.
- The area near the pin group should leave for stdcell. The macros interact with pin group normally less than stdcell group, so the macro cluster can put away of pin group. Do not put macros in the center to make compact shape.
- The macros in the same cluster should be placed closer. According to the macro cluster file.
- Point pin sides inward — toward the central standard-cell region and toward each other macro (pin-to-pin). Non-pin sides can then abut back-to-back to save space.
- Don't stack the macros too deep if possible(more than 3).
Then For the design that pin group on the only one side, the optimization direction are(try one by one or combine):
- we can try to spread the macros around the others three periphery, leave the center for stdcell, doesn't need to place all macro on one side.
- we can adjust the macro placement to avoid small channel, especilly which cause detour.
- avoid deep stack(more than 3).
- if has small channel, that should not on the corners, we should move macro to avoid the channel on corner, change to let channel on middle.
- pin side of macro should has 4 um gap for better routing, in the pin_side.png the red line on the side of macro representt the pin side of macro.
For the design that pin group on the two sides or three sides, the optimization direction are(try one by one or combine):
- Don't place the macros to block the pin group, leave the area near pin group for stdcell if possible.
- Try to place macros on the corner.
- leave the area in the center for stdcell.
- You can leave corridor for stdcell if need to place macros next to the pin group.
Security
- Security scanPassed, 90 of 100Pattern checks on the skill's files.
- Model reviewPassed
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryCheckingasic/nangate45/openlayout/skills/skills_Nangate45/5.optimizer/SKILL.md
Popularity
- Repository stars
- 782
- Repository forks
- 65
- 7-day trend score
- 0
Stars and forks are for the whole GitHub repository, not this skill alone. Not refreshed yet.
Works with
Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.
- Claude Code
- Cursor
- GitHub Copilot
- Windsurf
- Codex
- Gemini CLI
- Cline
- Amp
- Roo Code
- Goose
- Continue
- Kilo Code
- Junie
- Trae
- OpenHands
- Qwen Code
- AI Agent
- Tabnine Chat
- Sourcegraph Cody
- Amazon Q
- Firebase Genkit
- Sweep
- Devin
- Phind
- Mentat
- Claude Desktop
- Aider
- GPT Pilot
- Plandex
- bolt.new
- v0
- Replit Agent
- Anse
- TypingMind
- BetterChatGPT
- LibreChat
- Warp AI
- Pieces
- Fig AI
Embed badge
[](https://verified-skill.com/skills/fesens/opentpu/5-optimizer)