Commit Graph

307 Commits

Author SHA1 Message Date
Eren Dogan 821c763a1e Cleanup graph router 2023-07-29 20:01:58 -07:00
Eren Dogan 3b0997e7cf Implement custom add_route() for the graph router 2023-07-29 08:18:49 -07:00
Eren Dogan 4c73d3aa7c Use safe regions to protect pin nodes 2023-07-29 08:17:00 -07:00
Eren Dogan 091d0f8775 Convert pins and blockages for graph router 2023-07-26 21:46:30 -07:00
Eren Dogan 8522e0108c Add center nodes for existing vias 2023-07-26 21:45:35 -07:00
Eren Dogan 4d835e98b7 Simplify merging new shapes in graph router 2023-07-26 16:44:57 -07:00
Eren Dogan 53505e2ed2 Add "pin safe" functionality to is_node_blocked() 2023-07-26 16:41:46 -07:00
Eren Dogan d609ef9243 Make sure via probes can also be blocked by other blockages 2023-07-25 22:21:26 -07:00
Eren Dogan 62a04ce874 Add get_lpp() function to router_tech 2023-07-25 21:01:32 -07:00
Eren Dogan 6cda5415a4 Try routing in larger regions if no path is found 2023-07-25 18:40:07 -07:00
Eren Dogan ed404a3ad2 Rename 'inflated_from' to 'core' 2023-07-25 10:26:23 -07:00
Eren Dogan 47185f6085 Generate cartesian values for pins correctly 2023-07-25 10:18:43 -07:00
Eren Dogan 587d44e536 Include pins as blockages properly 2023-07-24 21:15:15 -07:00
Eren Dogan fa74a45d8c Fix spacing rule for wider blockages 2023-07-24 13:08:02 -07:00
Eren Dogan 947e94323d Cleanup graph router 2023-07-24 08:03:08 -07:00
Eren Dogan 54f2e73214 Simplify inflating shapes in graph router 2023-07-23 21:09:15 -07:00
Eren Dogan 7119f9a131 Fix spacing rule for non-max-width layer in router_tech 2023-07-23 18:45:02 -07:00
Eren Dogan 542e1a5e03 Use half pin's size difference for new spacing rule 2023-07-23 18:43:26 -07:00
Eren Dogan a90fd36f57 Change spacing rule for pins 2023-07-23 10:43:02 -07:00
Eren Dogan 7a7ddebcca Add more spacing to inflated pins to prevent unroutables 2023-07-23 10:22:43 -07:00
Eren Dogan 1c274afa46 Include blockages in the routing area after generating nodes 2023-07-22 21:30:40 -07:00
Eren Dogan 06b8f3b2be Prevent supply ring from overlapping existing pins 2023-07-22 19:25:26 -07:00
Eren Dogan 48b556c43a Fix even more DRC errors in graph router 2023-07-22 14:07:27 -07:00
Eren Dogan 8354de654f Fix precision of blockage node centers 2023-07-21 12:24:20 -07:00
Eren Dogan 3e3265c416 Add new snap_to_grid function for graph router 2023-07-21 09:55:36 -07:00
Eren Dogan 44b2e4589c Don't use multiple when inflating shapes 2023-07-21 08:30:46 -07:00
Eren Dogan 7ee1dcef54 Simplify inflated_from logic 2023-07-21 08:26:54 -07:00
Eren Dogan 5ce193c2dd Snap node vectors to grid to prevent precision errors 2023-07-19 18:32:22 -07:00
Eren Dogan e8c3cf0a94 Remove nodes inside routables that can cause DRC errors 2023-07-18 22:36:14 -07:00
Eren Dogan b5983fbfd6 Prevent via DRC errors 2023-07-17 16:30:19 -07:00
Eren Dogan 6e051e7f06 Avoid DRC errors when routing the same type of pin 2023-07-17 15:43:48 -07:00
Eren Dogan 38110a55e1 Connect graph nodes better by hopping over removed nodes 2023-07-17 15:02:36 -07:00
Eren Dogan e501e0ef4f Cleanup graph for gridless router 2023-07-16 20:41:58 -07:00
Eren Dogan 983cf13ccf Fix spacing for gridless router 2023-07-16 20:25:15 -07:00
Eren Dogan 094e71764a Change option name for the gridless router 2023-07-13 12:16:58 -07:00
Eren Dogan 71e4a5ab6c Rename gridless router files 2023-07-13 12:07:55 -07:00
Eren Dogan 813a67fea9 Add more comments for gridless router 2023-07-13 11:29:51 -07:00
Eren Dogan 6b0b4c2def Create fake pins on the ring and route others to them 2023-07-10 09:24:16 -07:00
Eren Dogan 4a61874888 Add supply ring pins around the layout area 2023-07-09 18:53:21 -07:00
Eren Dogan bb35ac2f90 Include new wires while routing the pins 2023-07-03 14:04:26 -07:00
Eren Dogan 0938e7ec9a Fix probes not being blocked correctly 2023-07-03 13:34:27 -07:00
Eren Dogan 78be525ea0 Use minimum spanning tree to route same type of pins together 2023-07-01 16:14:56 -07:00
Eren Dogan 5bf629f3e5 Prevent DRC violations for vdd and gnd pins 2023-06-28 20:55:49 -07:00
Eren Dogan a47bc7ebee Prevent multiple dog-legs in non-preferred direction 2023-06-15 11:08:13 -07:00
Eren Dogan 15b4e4dbe8 Fix DRC spacing in Hanan router 2023-06-05 19:33:45 -07:00
Eren Dogan 48a148003a Include other pins as blockages in Hanan router 2023-06-05 11:27:05 -07:00
Eren Dogan 8f1af0ebb7 Reduce the number of shapes on Hanan paths 2023-06-04 10:56:50 -07:00
Eren Dogan 021da25cd6 Include all blockages inside the routing region 2023-06-04 08:46:59 -07:00
Eren Dogan 4fe5aa49e4 Reorganize utility functions for Hanan router 2023-06-01 14:24:40 -07:00
Eren Dogan e3d8ad13b2 Remove blocked Hanan node connections 2023-05-30 20:09:10 -07:00