Electronic design automation (EDA or ECAD) is a category of software tool used to create, modify, analyse and optimise the designs of electronic systems. These tools assist the designer throughout the product design cycle and automate a lot of standard tasks to save time and energy, freeing designers to address more important challenges. EDA software increases the productivity of the designer, improves the quality of design, improves communication through documentation, and generates industry-standard output data directly for manufacturing.
How was it done in the old days?
Before the idea of EDA was conceived, the designs were laid out by hand. Some expert designers used geometric software to make layouts. The process was fundamentally graphic, with the translation from electronics to graphics done manually. By the mid-1970s, designers started automating the drafting of designs when tools for placement and routing came into existence.
But the major breakthrough occurred in 1980 with the publication of ‘Introduction to VLSI Systems’ by Carver Mead and Lynn Conway. This ground-breaking text advocated chip design with programming languages. This idea of using a programming language to define electronic components is the core of current-world EDA tools. The immediate result was a considerable increase in the complexity of the chips that could be designed, with improved access to design verification tools that used logic simulation.
How EDA tools increase productivity?
EDA tools increase productivity multi-fold. These tools support every phase of the product design cycle and make each task more organised, traceable and quick. When you want to design a new project, you start with making the schematic. Now, if you were to do this by hand you would have to draw each symbol manually, referring to the datasheet. You cannot remember the pin configuration of each component and most of the design cannot be completed in one day. This means that every time you come back to the project, you will be referring to the datasheets repeatedly for each component to draw symbols. Isn’t this cumbersome?
The EDA tools simplify such repetitive tasks with the help of a computer. Most of the symbols come built-in with EDA tools which you just have to select, place on the worksheet and connect with each other. And if some symbol is missing, it can be easily created and used in all future designs. The complete design itself can be simulated and checked for expected functionality, which reduces the chance of errors at later stages. Such organisation and automation, in turn, reduces human error and increases the overall productivity.
Now, to make the PCB of your design, you will have to draw it manually, corresponding to the schematic, if EDA tools were not available—something today’s designers cannot even imagine doing. It is highly unproductive and there are high chances of human error. With EDA tools, there is now a lot of automation involved for PCB design. You can import your design directly to the PCB tool and you will find all the footprints already connected with rat lines. These rat lines exactly correspond to the schematic’s wiring. This means that if your schematic is correct, the PCB will match it exactly. A lot of automation features like auto-routing, auto-placement, DRC (design rule check), etc, help in making the highest-quality, error-free PCBs.
Once the PCB is ready, you will have to send it to the PCB manufacturer for prototyping. With these EDA tools, the manufacturer and designer are in sync. The standard output data to manufacture the PCB can be easily generated. This is then directly fed to the machines for manufacturing. After you receive the PCBs, they will be sent to the assembler for the mounting of components. The Bill of material (BOM) and manufacturing data required by the assembler is created with just the click of a button and the chip shooter mounts the components in minutes. If you have to do all this manually, the time to market will be long, and the results uncertain.
Why is it important to select the right EDA tool?
While selecting an EDA tool, the first thing that you should keep in mind is that this tool will be used throughout the organisation by different departments. Therefore this tool should support the requirements of each department. You would not want to use several different tools because then, inter-departmental communication becomes impossible. So it is best that you consider the requirements of each department and chose the tool that suits them all or can be configured to do so.
It requires considerable training when implementing a new tool in your organisation. Only after proper training and a lot of practice can the tool be used to its fullest. But training comes at a price and for practice, you will have to invest a lot of time. Also, if you buy a proprietary tool, the licence is quite expensive. This makes it really important that you select the right EDA tool the first time itself.
Open source or proprietary?
With open source tools, you can save yourself the expense of buying a licence and you do not stand to lose anything apart from time even if your selection is not correct the first time. And if you get this right, you stand to gain a lot. Open source software is made available to the public, enabling anyone to use it without paying royalties or fees. Open source software evolves through community cooperation with the sharing of experiences and ideas that can then be incorporated into future releases.
Some people still prefer proprietary software because they believe that open source software is never stable. To some extent, they are right, because open source software doesn’t come with a guarantee that the software will continue to be developed with regular upgrades. Also, it takes a lot of time to evaluate whether such software meets all the requirements of an organisation; after which, if it is not appropriate, you have to start the evaluation process all over again with another software. In the case of proprietary software, the vendor takes the responsibility of continuity, features and training.
But with the open source community growing very fast and producing reliable products, the trust level is also rising. These communities have created thousands of stable products which are used by millions of happy users. Also, the support provided by the community is amazing because it is not from one company but enthusiasts all over the world that are always happy to help.
The developments in open source software happen faster than in the proprietary world because the ideas come from all over the globe, and people are committed to improvement and are not afraid to experiment. And the best part is that even if the development is dropped, nobody stops you from developing the software further and creating a solution in your very own style.
Each EDA tool will have several sub-tools for different functions like schematic entry, PCB design, simulation, Gerber view, etc. Let us review these tools one by one and understand the basic parameters and functionalities for evaluating them.
Schematic capture or schematic entry is the very first step in the design cycle of an electronic system. This is normally not done all at once but the overall design is broken into sub-modules. The schematic of these smaller portions are entered in the schematic capture tool using the in-built symbols which are wired together to represent the design. The design of these sub-modules is verified using simulation programs. Similarly, other sub-modules are entered and verified for functionality one after another. These sub-modules are then integrated with one another and again the simulation helps to check if they work as expected, even together. In this manner, the complete design is laid out using the schematic capture tool where simulation and schematic entry go hand in hand.
Now that we have seen how important a schematic capture tool is, look at some aspects that might help you in selecting one.
User friendliness. When you are going to spend so much time with this tool for all your designs, it is important that it is user-friendly, organised, simple and yet powerful. All basic functions such as selecting components from the library, placement, attribute entry, wiring, editing, navigating the design, zoom, etc, should be straightforward and intuitive. These are very basic functions but make a very big difference to a designer. For example, some tools have a better library search system than others, enabling you to find the parts very easily with just some common sense, while with others you have to put in a lot of effort to find the correct part before you can include it in a schematic.
In-built library. No library can have all the available electronic parts because every day there are new entrants. But the more accomplished the symbol library is, the less time you will waste making new symbols. So do check the libraries thoroughly and compare it with other tools to have an idea. There are various open source tools that have communities contributing to these libraries. So if you do not find a part in the in-built library, you can look in the contributed libraries and there is a good chance that you will find your required part. Such a feature is a definite plus point while selecting an EDA tool.
Symbol creation. No matter how accomplished the in-built symbol libraries are, you will always have to make new symbols for your designs. Do make some symbols yourself while evaluating a tool to see if it is really quick to make and include them in the existing libraries. Some tools have a very complicated procedure for making new symbols and including them in your design, which results in designers being reluctant to make new symbols and they try to work around the problem with the existing ones.
Hierarchical designs. This is a must. When the design gets complex, it is better to represent it as a hierarchical design. This makes the representation simple, traceable, and easy to navigate and review. In schematics with a lot of repetition, this feature can save you labour. For example, if you have 10 channels of some circuitry, you can build it once and replicate it using hierarchy. Second, when multiple persons are working on a project, it enforces clean boundaries. Because all high-level connectivity is via ports, there is no risk of accidental connectivity via off-page connectors. And yet, within each subsection of the design, you can still use off-page connection if you like. Also check the page limitation, if any, for multi-sheet designs.
ERC (electrical rule check). The ERC is used to test schematics for electrical errors such as unconnected inputs, shorted outputs, correct power and ground connections. When you are working on a schematic, there will be some human errors that can lead to tears at a later stage of development. This feature can catch such silly mistakes in time to save you from a lot of suffering.
Smart features. Smart features such as auto-number, replace, slot, etc, are highly useful. For example, if there are 20 resistors in your design and you name them one by one, it will take too much time. But if you can select them all and use the auto-number function, resistors get incremented reference numbers automatically. Such functions save time and reduce human error, so do look for them in any EDA tool you are reviewing.
Supported image formats. Often, you will have to publish your schematic, for which you need it in some image format such as EPS, JPEG, etc. Do check if the image format required by you is supported by the EDA.
Configurability. All EDAs are designed corresponding to standard needs but every organisation has unique requirements for an EDA. For example, one organisation might need a different colour-map for exported images or a BOM in a different format, and so on. Here, configuration comes into play. In proprietary tools, configuration access is only on the surface level and you can change only a very limited number of things. But several open source tools are completely configurable and you can change them to suit your needs. So if your organisation has such unique requirements which no proprietary software supports, then open source tools are what might help.
Exporting designs to the PCB tool
The EDA tool you select should support the complete design cycle. Once the schematic entry is done, it is simulated for verification. But as per past experiences, there is always some gap between the simulated and real result. Therefore prototyping is done and all the tests are performed on the physical sample. All electronic assemblies are done on the PCB board, so you have to make the PCB layout for your design. EDA tools should have the function that enables your design to be exported to the PCB design tool in an intuitive manner.
Some PCB tools even accept the netlist generated by other schematic capture tools for PCB layout. If you plan to work that way, check what netlist formats are accepted by the tool. Also, your organisation might outsource the PCB design work. So it is important that your schematic capture tool can generate a netlist compatible to other tools as well.
The PCB design tool
The PCB design tool is used to make the PCB layout of your design. The PCB is manufactured with this layout and components are mounted on it to build the prototype. PCB design is creative work, so the tool should be very efficient in handling repetitive cumbersome jobs and should be extremely user friendly. Also, this is one task in the design phase that requires a lot of concentration and has maximum chances of human error. So the tool should be able to automatically indicate the human errors.
Similar to schematic capture tool, one of the key parameters to consider while selecting the PCB tool are the available in-built footprint library and quick footprint creation. The more complete the footprint library is, the less time you will spend making new footprints. Unlike symbols, footprints have to be created very precisely so that they match your components. The dimensions are very critical in this case, and making one takes more time than making a symbol.
But as I have already explained, you will always have to make new footprints. So it is better that the process of making one is simple and quick. Some open source tools even support footprints created by other third-party tools (which are specifically designed to make footprints) and are very efficient and precise. The availability of such features is also a plus point while selecting an EDA tool.
Other features that should be available in the PCB design tool are:
Multi-layer design. Some PCB design tools support a limited number of layers. Here you should consider your future prospects also and look for a tool that can support the maximum number of layers. As the designs become complex, it becomes difficult to lay out a PCB design on a single layer in conformance with the design guidelines. You will need multi-layer functionality today or tomorrow, so it is best that you think about it in advance, rather than regret your choice at a later stage.
Smart functions. Similar to schematic capture, smart functions such as auto-placement, auto routing, etc, can speed up the work. If some design portions are not very critical, you can select the corresponding components and run ‘auto-placement’ to place the components together. In this way, you do not have to take components one by one and think too much about how to place them. After this, you can even auto-route them. Entire routing will be done all at once. This saves a lot of time. Though auto-routing and auto-placement algorithms are improving, it is still preferable to do it manually. But you can save some time using these features for non-critical portions.
Forward and backward annotation. With this feature, schematic and PCB files are logically interconnected through automatic forward and backward annotation. When you add a new part to a schematic, the part’s package is added to the PCB layout automatically and you do not have to import it again. When deleting a part from a schematic drawing, the part’s package is deleted from the PCB layout as well.
Similarly, when a part is deleted from the PCB layout file, the corresponding part will be deleted from the schematic as well. This is a very useful feature, so grab an EDA tool with this functionality.
DRC (design rule check). This is a very important feature that checks the design for various standard design guidelines automatically. The main objective of the DRC is to achieve a high overall yield and reliability for the design. While design rule checks do not ensure that the design will operate correctly, they are constructed to verify that the structure meets the process constraints for a given design type and process technology. So if your PCB design tool could have this feature, you can avoid a lot of process related mistakes automatically.
Once the design is complete, you will create the manufacturing data. Carefully check if all standard exports like Gerber, netlist, BOM, etc, are available. Check this aspect for imports too.
Simulation modelling allows designers and engineers to avoid repeatedly building multiple physical prototypes to analyse designs for new or existing parts. Before creating the physical prototype, users can virtually investigate many digital prototypes. Electronic circuit simulation uses mathematical models to replicate the behaviour of an actual electronic device or circuit. Simulation software allows for the modelling of circuit operations and is an invaluable analysis tool.
While there are mostly analogue electronics circuit simulators, popular simulators often include both analogue and digital simulation capabilities. This means that any simulation may contain components that are analogue, digital or a combination of both. An entire mixed signal analysis can be driven from one integrated schematic. So when you are selecting the EDA, simulation is a must in the tool chain. Look for a mixed signal simulation system.
The Gerber file format is used by printed circuit board industry software to describe the PCB image’s copper layers, solder mask, legend, drill holes, etc. The Gerber file format is the de facto industry standard for printed circuit board image transfer. You will generate these Gerber files when you want to send the data to the manufacturer. Also, often you will need to view the Gerber files to see the real view of your PCB design. Therefore the Gerber viewer is also a must in the tool chain.
Do consider all the points mentioned above for various sub-tools, prior to selecting the right EDA for your organisation. It would be ideal if you can make the right selection at the first instance to save money and the most precious resource—time.
The author is a technical editor at EFY