Have you ever been thrown into the middle of ocean, and you don’t even know how to swim? Well, I have lived this experience, both literally and figuratively. This week it was the latter! But let me assure you, it felt exactly the same both times. Therefore, I am writing this blog for anyone who is just starting with designing Printed Circuit Boards (PCBs) for the first time. I will be explaining and detailing how I started, what I have learned and the problems I wish I was told about earlier. Every week I will be writing a blog entry showing my progress, but if you have any questions or advice, drop them down in the comment section. Now let’s get started.

Circuit Schematics and PCB Layout

I was assigned this week a new task, to design a printed circuit board for our product. The circuit is moderately complex, as it contains an FPGA and a PIC18 microcontroller. In some companies, the electronics engineer who will do the circuit schematics is a different person than the PCB designer whose responsibility is to create the physical layout of the board. But in our case I will be doing both, and hence, that was my first lesson; creating the circuit schematics – to some extent – is a different task than laying out the PCB. But that is not exactly correct, as there are many PCB concepts the circuit designer must keep in mind when designing the circuit. Therefore, this week I read about PCB designing process, and next week I will be talking more about creating the schematics.

 

When I was assigned to the task I started searching and reading about designing PCBs. The problem with most tutorials on the Internet is that they are either very simple non-technical overview of the process of creating (manufacturing, not designing) PCBs, or they are overwhelming technical papers (mostly dealing with RF noise and Electromagnetic Interference EMI).

The way to go

So as a beginner, what is my advice to you? As my supervisor explained to me, PCB designing is not an exact science. It is an ART. That is why you will not find a step by step guide of how to design a board. Nonetheless, you will find many guidelines. In fact, the huge number of guidelines is what made the process seems overwhelming. But it is not. To make your life easier, here are the steps I think will get you into the game:

Understand the basics of PCBs

You must first understand what PCBs are. Start with the basics. Know that PCBs can have many copper layers separated by layers of insulators. These copper layers are etched to create traces for the current. Get familiar with the language and terms of the PCB, such as via, blind and buried via, pads, traces, planes, solder mask, silkscreen… etc. Also, get to know the different types of components and their packages, such as plated-through holes PTH, surface mount technology SMT, DIP, BGA, CSP, and so on.

At this step I started learning how to use a CAD software. For designing PCBs, there are many good programs, but I think the big players are KiCAD, and Eagle. Both are very affordable, and powerful. You can’t go wrong with either one. Here we are using KiCAD, and as such, I got to learn its basics. All the schematics and layouts you will be seeing in this blog will be made using it. KiCAD is a collection of tools, for creating the circuit schematics, components footprint, and PCB layout. There is a big number of tutorials for it, but I need to remind you that you need to get familiar with the PCB terminologies first, so you can use them comfortably inside the software.

Read about EMI

Now you have the vocabulary to “talk PCB”, it is time to read about one of the most important (if not the most important) concerns when designing a board, Electromagnetic Interference EMI. Here is where things get messy, and you need to pay attention. From what I found out, this topic is huge, and there are many books and published papers about EMI. The good news is that you don’t need (and most probably can’t) cover it all before starting designing your board. And for most low speed boards (highest frequency is less than 50MHz) you can survive knowing only the basics. You will understand why in multilayer PCBs, you need to have one or more complete layers for ground, and one or more layers for power, why you need to separate the analog ground from the digital ground, and also you will understand concepts such as Crosstalk, Signal Integrity… etc.

A good starting point that was suggested to me by my supervisor is TI’s “PCB Design Guidelines For Reduced EMI”. It is general guidelines not specific to a certain design. Once you grab the basics, move on to the next step.

Start with your design

Remember when I said that you will not find a step by step designing tutorial? Well, one of the reasons is that every design depends completely on the components used in it. And as such, you will need to figure out what the guidelines are for every component you are using. In my specific case, I am using a Spartan-6 FPGA in our design, hence, I needed to read the guidelines for PCB design for it here “Spartan-6 FPGA PCB Design and Pin Planning Guide”. Also, I will need to read the design guidelines for the PIC18 as well.

The implementation of this step will differ from one person to another. I just hope that along the way the complete picture of will become more vivid.

 

That’s it for my first week as a PCB designer. Next week I will talk in more details about our project. Please keep in mind that I am a beginner to designing PCBs, so my opinions and understanding might not be exactly right, or just outright wrong! So if you see anything that needs to modified, the comment section is all yours.
Talk to you next time.

Categories: Experiential

1 Comment

Starting with Eeschema | AESTE · 2015-05-18 at 10:14

[…] Resuming from last week, I continued working on the PCB design for our product. Last week I talked about my experience with learning the basics of designing PCB layout. The first half of this week I studied Xilinx’s PCB design guide for the FPGA, while I focused on creating the schematic for the circuit in the other half. […]

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.