Your EDA Tools... Automated

Blog

Articles about EDA trends, tips, and our tools.

How To Automate the Creation of EDA Logic Symbols

Enhancing the Process of Creating Logic Symbols  for Your EDA Tools

Building accurate schematic symbols for high pin count devices is one of the most mind-numbing, time-consuming, frustrating pieces of the designer’s job. Naturally, as engineers, we want to cheat. The more we can automate the process, the more time we can spend on more interesting problems. But how to do it in a way that’s accurate enough that the time you saved isn’t wasted correcting issues caused by your ingenious solution?

More importantly, how do you ensure that you don’t spend more time figuring out how to create a shortcut than the shortcut saves you?

Fortunately, the hard work’s already been done. Whether your team works in Altium, Cadence, Mentor or Zuken, PartBuilder, from CadEnhance is the solution you’re looking for.

Five things to Know Before you Try to Automate the Creation of Logic Symbols

There are a few important things we’ve learned over 20 years of working on automating logic symbol creation in just about every EDA you can imagine, trying every process you can think of. 

  1. The key to the efficiency and accuracy you need for this is extracting error-free PinData directly from vendor source data without needing to massage it.

  2. Getting PinNames and Pin Numbers is the easy part. But, if you want to be able to properly meet and check design constraints, you need to be able to identify special pin attributes like differential Pin Mates, Pin Delays, and Pin Swap Groups

  3. To make your automation provide the necessary flexibility, you will need to add a robust path to store and recall complex configuration settings, including property contents, values, and locations.

  4. Each EDA tool vendor (and even their different tool offerings) has a different set of requirements and limitations and required file structures.

  5. With tools like Orcad (or Cadence Capture/CIS) and Altium, your automation will provide an ascii file that must be imported into the end tool since their symbol formats are not ASCII. You should look at also providing tools to help with the required import process.

  6. Automation provides the best way to make sure symbols are built to your symbol standards.

What is PartBuilder?

PartBuilder is a revolutionary tool to build schematic symbols for high pin count devices. It creates them with unmatched speed and accuracy,  supporting parts with 10 to more than 10,000 pins. It’s proven to be 5 to 25 times faster than what you're used to. With PartBuilder, the computer handles the error-prone detail work involved in symbol creation so that you have more time for the countless other tasks in your queue.

What Can PartBuilder do for Me?

Partbuilder’s Pin-Extract, Smart-Frac, and the Symbol Description Language or SDL, take all the heavy lifting of symbol creation off your plate saving you time and minimizing frustration. 

  • Pin-Extract mines Pin-data directly from pdfs, spreadsheets, and FPGA vendor files with almost zero-touch required by the user

  • SDL describes the arrangement of pins around symbols. It can place 100+ power pins with one match, and large busses of pins or diff-pairs with another. It provides unmatched flexibility for fractured symbol construction

  • Smart-Frac sorts the pin-data, identifies the pin-matches and creates SDL to describe a set of functional symbols for any size part in just minutes.

With all these tedious tasks taken care of, your time can be spent on the kind of real innovation you imagined an engineer’s job would involve.

Can’t I Just Build a Tool to Automate Logic Symbol Creation in Python?

If you have some decent scripting skills (in python, perl, tcl or visual basic) , it’s not too hard to automate some steps in the process to make them  more efficient and less error-prone

for the current part you are working on.

The problem is, you'll find yourself making changes to each step to try and support your next part while making sure you don't break support for the first one...

It takes real expertise to extract good pinData from the wildly diverse pin-lists you can expect to get from a vendor. 

If you try to make your pin-lists conform to what your script can read, you’ll spend more time reorganizing the pins, and involve the risk of causing an error for every pin you need to change.

If you want to take it a step further and build the whole symbol,  it takes even more expertise to understand the nuances of the resulting symbol files you need to create….

How do we know this? 

We started on this path 20 years ago...  

We've been there and done that and we still continue to optimize and improve the tools to handle any case our customers can throw at us.

Click here to schedule a Demo from a qualified engineer who understands your pain, not a salesman, so we can show you what PartBuilder can do for you and answer all your questions.

Bill OLeary