Faster, Better PCB design: Smarter, Cloud-Based Software is the Future

At the recent Altium Live Event in San Diego I had the opportunity to sit down and chat with Altium Chief Software Architect Leigh Gawne about PCB design. It was highly informative and reflected many of the concerns and issues facing modern device manufacturers. How fast? What requirements? At what cost? Gawne addressed these issues and more. Take a look:     

Altium Chief Software Architect Leigh Gawne

Leigh, in the “prehistory” of PCB design, which is where I came from, it was literally pencil on paper with everything based on what we considered the anchor components. If it was a power system, it was a question of a TO-3 or TO-220 component, which uses a lot of real estate and dissipates a lot of heat; everything was a slave to that component. My ground plane was usually a halo around the board. It was always a single layer board and we iterated our way to success with resist ink, Mylar tape and chromic acid etches. It was very expensive and very time consuming. This forced me and others like me to be extremely conservative in our design methodology, because we knew we had a limited number of iterations we could process before we needed a final product. How much has PCB design software freed designers today?


Those iterations that you would have gone through, you were going through them a little bit blind and you were using an empirical kind of measurement after each one to readjust your next one. I think there are a lot of things that software tools today now do that mean that it’s no longer an issue.

For example, the DRC (Design Rule Check). You can configure your environment based on the rules that a specific component manufacturer or board fabricator or assembler tells you. The environment can be set up in such a way to help you avoid making those kinds of mistakes that might force you to come back and then reiterate around the kind of things that you're talking about. Electronic design automation today is not even comparable in my mind anymore to that slow manual process.

Today we have new materials, but how much has design changed since the age of crude phenolics? Things like power boards were often totally discrete from control boards. We could put a conformal coating on signal components, but we couldn't do so on things that had to dissipate heat.

I think those problems still exist today and you still got those considerations to make. You can't change the laws of physics and other properties of the environments within which you work. I think PCB technology components, have been evolving so that there's constant shrinkage. Power supplies is an interesting one. Power suppliers can provide a huge amount of energy today and they can actually have a very small form factor. We're able to do that through very high switching, switch mode power supply circuits. Very, very capable capacitors and other components that would have been much, much larger in days gone by with the old electrolytic technologies.  At the end of the day, material science powers everything in my mind.

In terms of the pure design process, complexity is essentially free today; it's just down to time, design time. We can simulate and iterate our way through hundreds of iterations at a time, where we used to only be able to do it for a handful of iterations. Can you make lazy designers this way or can you make brilliant designers this way?

It's a double-edged sword really. Sometimes this can bring confidence to people, which is good, but then it means that they can overlook even some of the most basic things. At the end of the day, I don't think that there is a replacement for experience. However, I do believe in the fact that there is the ability to abstract people from problems that do exist, especially problems that lend themselves to being properly handled or managed by a tool environment. At the end of the day, this is what happens in everyday life. You get into a car, you don't have to understand how the car works to be able to use it. You're abstracted from that complexity. It's exactly the same with design tools. If there's a feature in there that abstracts you from having to understand the inner workings of how that is, then that's good. The critical thing is that it has to do that with integrity. It can't abstract totally; you still have to have some knowledge. It's getting that kind of balance that’s important. I do believe tools are continuing to move further and further that way. This level of continuous abstraction, I see that supporting the design engineer. Now at the end of the day, as we are talking, the manufacturing processes are getting more and more complex to produce more and more advanced boards. When you talk about blind and buried vias, laser drilling, all of that technology. We’re not going to educate every single design engineer about the potential ramifications of those manufacturing processes. We have to have an easier way of being able to translate process constraints in the manufacturing domain.

Will we automate design software to the point where the constraints will be simply built in? I have a bill of materials. These are the components, this is the real estate I have to work with, I push a button and walk away.

I think that's absolutely what's going to happen. One of the first steps I think we can take is look at DFM today. It totally relies on a design engineer going and finding information and setting up their environment based on it. Sometimes you don't know what you don't know. You might put what you think is adequate into that design and you still end up trying to go to the manufacturer and finding out if there's another problem.

Manufacturing was traditionally “Doctor No” to designers.  Always telling designers what they can and can’t do.

Exactly. That is an issue. I've spoken to a few manufacturing companies, board fabs, assembly houses that have a constant frustration that when a designer’s design comes in, it just goes on hold because of all the issues they have to resolve. They just want to be able to express their concerns in a way that can be understood and consumed by the designers, so we don't have that problem. One of the things that we're going to do and we're working on with Altium  365 is having this feedback loop. The way it works today is from design to manufacturer is very much a one-way street. We occasionally have the odd street that comes back through a phone call or an email. That kind of feedback loop from manufacturer to design is pretty weak in my opinion. What we need is the same level of continuity or even better going from manufacturing to design as we do from design to manufacturer. There's no reason why we shouldn't be in a world that when a design engineer starts out, their environment is either configured for a particular manufacturer or technology set that would reflect the capabilities of a collection of manufacturers. Based on that, if we understand manufacturer's process constraints, what they can do, we can translate that into rules and constraints in the design domain and allow design engineers to either work within them or,  if they're going to break them, understand what the ramifications are. A lot of the time manufacturing is not just binary. Either it can or can't be done. What tends to happen is that it's 50 shades of gray. You might find you make a poor decision that is buildable, but it's either very expensive, it's laborious, it's unreliable, or there's poor yield. There are all kinds of things that people don't consider.

In my experience, it always came down to cost. Why did you miss that cost target? Because, the damn design prevented me from achieving it.

Exactly that. It can be a simple thing like layer stacks. For instance, the design engineer might have an impedance-controlled design and will come up with an arbitrary layer stack and root everything to it. Only to find out that layer stack is not something that is readily available through off the shelf materials. Then you need to go back and add a different layer stack that perhaps is more common, based on available materials. It invalidates this design because obviously, all of his copper has been put down based on that stack. These are the kinds of things that we can really improve on today.

We are told today that all engineering software is moving to a massively collaborative model or we're going to use the cloud. My plant might be in Vietnam, and my PCB designer is in Germany, and the man who actually drew the schematic is in Cleveland, and we're all going to talk to each other in real time and make this work. Then the IP security people are jumping in now and saying, wait a minute, we have ITAR, we've got some things that we don't want to broadcast straight to other people on this planet. Can we square that circle? Are we going to have enough security to make true collaboration possible?

I believe so, but I think again, it's a subjective thing. Some people have requirements, which are not as extreme as others. If they're very extreme, then of course. Some of these things might just be prohibited, but I think that's not true for the vast majority of people that are out there today. It's up to you whether you choose to use it. We have more and more customers today that are demanding that we deliver this kind of capability.

Leigh, the young electrical engineers graduating today. Do they have the necessary skill set to be successful PCB designers?

I'm not even sure that that happened years ago. When I graduated university, I studied electronic engineering and a lot of it was theory. I did some practical work. When I graduated, I certainly knew very little about PCB design. I was actually very self taught, and it was through trial and error and cost me my own money before I actually ended up doing it in a professional way. I think it's been a problem for a long time. Whether or not it's getting worse or getting better is an interesting question. I don't think I could fully answer that. I can only answer anecdotally, and I think it would be that it's not getting better.

What skills sensibly would, if you could give a 24-year-old fresh graduate the wisdom of a 50-year-old. What skillset should they cultivate, should they think about developing to get good at this?

Engineering is all about problem solving, right? At some point you have to translate theory into practice and come up with something. I find that academia is brilliant at being able to seek the theory, but it's not that good at being able to teach the practice. That only comes with actually getting out and doing things. Just because right now you may not be an RF specialist doesn't mean that you can't use a Bluetooth module. You just go and buy one of those, but your expertise is now going to be in another area. At the end of the day, I think it's important to be continually learning and continually applying knowledge. Not just theory but actually putting things into practice.

Last question, 30, 40, 50 years from now, will we automate this thing to the point where you draw a schematic and you press a button and a PCB emerges and PCB design will disappear as an actual engineering skill?

I'm almost certain that will happen, yes. Even from the schematic capture side of things, I think that will also greatly change. Today schematic capture is on a very low level with picking individual components up and with wiring them up. I think in the future that will also continue to be abstracted where we're dealing with higher functions of logic, which represent what we need. I think that whole thing in 30 or 40 years is going to be pretty far from where we are today. I don't know how it's going to happen, but I would agree that layout will be something that goes away. It will go away.