4 ms·
I'm not an EE, but I've been dabbling recently. I wonder if it might be possible to set constraints on certain nets, like a rough FFT and current. Or even on sp
by flaviut 4y ago
I'm not an EE, but I've been dabbling recently. I wonder if it might be possible to set constraints on certain nets, like a rough FFT and current. Or even on specific pins--an IC could say, that it'd draw power with specific typical frequency characteristics, and capacitors could provide power with specific frequency characteristics.
Anyway, just thinking out loud. There's endless potentional issues with this sort of stuff, and lots of heuristics needed.
It definitely wouldn't be a shortcut tool, since all this stuff would need to be set up. It would help a lot with making rapid changes to designs, and it'd tie in very well with circuit design as code.
- Alupis 4y agoAuto-routing can be done (and has been done in some designers), but it never generates ideal routes. In low-speed trivial designs, not usually a big issue (ie. if you can make it work on a breadboard, it might work well enough even on a horribly routed board). Auto-placement is really a problem though. Good PCB design is nearly 100% about placement before you even start routing, and requires a higher level understanding of the design to get right. The last thing you want on an even semi-non-trivial design is to have something start moving your components and traces around in a non-controlled way. Part of the problem is your "Pros" don't need/want or use either feature, and your amateurs don't understand how to solve un-obvious (and obvious!) issues that the auto-placer/router might introduce until it's too late and the board has been fab'ed and money wasted. Which means the folks making the design software don't really have a huge interest in making these features at all, or even improving them if they exist.
- exmadscientist 4y agoMost of the things you're talking about have never been measured for 99% of nets. I'm often building the board to make the measurement. So I kind of don't have that input for the auto-layout widget, even if I had the time to set it up. Honestly, one of the biggest reasons autorouters aren't used is they take as long to set up as just routing it yourself, and the result is usually inferior. So setup time is crucial. This approach also wouldn't help one bit with making changes if input data can get stale. And it can and will if system-level measurements are involved. Honestly, making changes to a known-good layout is actually really easy. It's greenfield layouts that are hard, or underdocumented ones, or designs previously done by psychotic morons (like past me!). "Circuit design as code" is an idea that just doesn't work at the system level. We can't even write documentation for many systems. Expressing things precisely enough for a machine to repeat it is folly.