The quest for the optimal library
At Nine Dot Connects, a good deal of our experience has been in libraries. Every project that we touch requires us to review and, in many cases, modify library components. We understand that a library is both the necessary foundation of a PCB design and, quite frankly, the bane of every designer who has to deal with them.
Before we delve into our services, we wish to express our philosophies regarding libraries, divided into 2 major areas of concern. The first is the framework for the library structure. There are several ways to do it, some of which are unnecessary or inefficient. They may look like the optimal solution for your company; however, the path to achieving and maintaining such libraries is painful, as best.
The structure is meaningless without the components, which is the second area of concern. Though it is simple enough to put together a component, some implications have a tremendous impact on the bill of materials and, ultimately, the PCB fabrication and assembly.
- There are over two billion components and 15,000 suppliers on the market, according to Silicon Expert. Other than the textual databases of Octopart, Silicon Expert Electronic Components, and the central part suppliers, there is no complete library.
- Even if there were a complete library, it would have to be automated in such a way as to collect information regarding obsolete components in an automated fashion (or have a rather large team of individuals whose sole job is to seek and collect this information.) Likewise, the team would have to keep up with introducing new components.
- Furthermore, this library's size would be in terabytes with the need for a large-scale database system.
- Even if an organization provided a library with 3 million components, that only represents 0.2% of the total components available. Within that 3 million component library, 99.9% of the components in that library would not apply to your design.
- The building of a library is much like the building of a dam. It has to be done right the first time, and subsequent repairs thereafter are rather tricky and time-consuming.
- Someone must own a library. Like a garden, human hands must be maintained; otherwise, it will go to pot in very short order.
- There are fundamentally 2 library types available - symbol-centric and database library. Symbol-centric libraries have been around since the beginning of EDA tools; however, the most efficient method is the database library. In addition to symbol and footprint reuse, it is far easier to create and duplicate formats in a database than it is to do so in a symbol-centric library.
- Unless the customer or industry upon which the design is being created requires version control of a library, there is no need for it. Components generally do not change over time.
- The optimal library management method is to have a single database that serves both the engineering (aka the designers) and the business (aka the purchasers, accountants) groups. A library database separate from the purchasing system will always have an inherent information lag that causes most problems. (We understand that this is not a simple thing to remedy; thus, the need for a separate library truly becomes a necessary evil.)
These philosophies regarding the framework are a good start; however, there is a need to take the philosophies into reality. The Nine Connect Dots team has put considerable thought and time into different library configurations. From these experiences, we have come to conclusions and recommendations to impact those seeking to build a library.
- Without a universal graphical standard, each component must have a graphical symbol and footprint for each EDA tool used. Even within EDA tools the same company offers, different products require different formats. For example, Protel, Altium Designer, and P-CAD have their formats, though they are all under Altium Inc's umbrella.
- The ability to collect components amongst colleagues to pull together a central library is challenging. The best analogy to this would be to have many kids scoop sand from different beach areas into a bucket and hope that when that buck is turned over, a perfect sandcastle will be formed. Anyone who has gone through this summertime exercise knows it will be nothing more than a pile of sand after the bucket is lifted. Why? Because there was no consistency in the sand moisture. There will be no consistency in the parameter information or even the graphical formats in a library case. In the end, it will be a pile of misaligned components.
- A component that has not been used before will be needed in almost every new design. The only exception may be when the exact netlist was used, and the board's form factor differs. Even then, that's a rarity because there is usually a need for a different connector. In the case of a new revision of an existing product, that rev is usually to enhance speed, size, or functionality. As a result, there is a need for a better component.
- Generally speaking, 75% or more of the bill of materials will contain discrete components, primarily capacitors, and resistors.
- The features and options provided in most EDA tools are like spools of rope - plenty enough to hang oneself with.