Closed yipengsun closed 5 years ago
One of the crucial function, net hopping (termed by Zishuo), has been implemented.
I'm using the net hopping feature to check backplane, and I noticed that there is at least one case where the recursion limit is not sufficient.
The new net hopper that doesn't use recursion don't work. I need to figure out a way to optimize the performance of that recursion.
The parser performance is still abysmal, despite the fact that it is approximately 4 times faster when running over smaller netlists.
With the latest master
branch, I decide to make recursions stop very aggressively: If the current flows to a known branch, stop this current branch immediately, because presumably we have gone back to a known case.
With this technique, a netlist of ~4 MiB
can be parsed ~70 s.
General idea: looping through different net lists, and connect pins on the same connector pins.
So far, we should assume that on different net lists, if the components have the same
compRef
andattr "Library Name"
, then they are the same.