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

routing api #359

Merged
merged 4 commits into from
Dec 31, 2023
Merged

routing api #359

merged 4 commits into from
Dec 31, 2023

Conversation

rohanku
Copy link
Contributor

@rohanku rohanku commented Dec 31, 2023

  • fix warnings, start working on abstract merging
  • basic routing api

@rohanku rohanku merged commit 62a9514 into abstract Dec 31, 2023
@rohanku rohanku deleted the routing-api branch December 31, 2023 21:00
rahulk29 added a commit that referenced this pull request Jan 7, 2024
* wip: atoll API

* wip

* base api

* basic port extraction

* fix integer division rounding issues

* fix lints

* expose vec of net IDs from AtollAbstract

* api for coordinate conversions

* feat(lvs-matching): LVS matching via AtollTile trait (#356)

* basic port extraction

* feat(lvs-matching): LVS matching via AtollTile trait

* work on atoll api

* fix integer division rounding issues

* fix lints

* expose vec of net IDs from AtollAbstract

* wip api

* remove unecessary changes

---------

Co-authored-by: Rahul Kumar <[email protected]>

* remove nx, ny from routing grid

* feat(atoll): convert between physical/lcm units

feat(atoll): fill sky130 nmos tile lcm bounds with nsdm and pwell

This allows proper abutment between nmos tiles.

* add sky130 pmos tile

* correct nsdm/psdm/nwell dimensions, add pmos tile to sky130 atoll

* feat(bbox): implement LayerBbox trait

The LayerBbox trait allows users to find bounding boxes
considering only the geometry on a specific LayerId.

* add track and grid helper functions for atoll

* feat(atoll): use virtual layer for tile outline

feat(atoll): make abstract generator function part of Abstract

* format

* fix lints

* fix(atoll): extend gate pin of mos tile to grid

* routing api (#359)

* fix warnings, start working on abstract merging

* basic routing api

* initial dijkstra router impl

* fix router bugs

* fix route drawing logic (#360)

* fix route drawing logic

* remove tiling

* iterative dijkstra

* debug router

* fix track dir bug in router

* hacky fix to force router to not assume same root net means connected

* format

* fix incorrect uniform tracks test

* add alignment

* fix bug in router cost function

* remove nondeterminism of router

* remove debug abstract

* feat(atoll): add sky130 ntap/ptap atoll tiles

* work on correct abstract merge

* fix drc errors in mos tile

* make signals public

* adjust li expansion to fix drc errors

* remove pwell from nmos

* revert to using pwell pin

* fix router interlayer transitions (ilts)

* add mechanism for matching nets to port geometry

* fix router bugs

* fix tap nwell

* add connected instantiation

* fix lint errors

* tweak costs, fix docs

* fix broken docs links in atoll

---------

Co-authored-by: rohanku <[email protected]>
Co-authored-by: rohanku <[email protected]>
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