I recently spent some time rummaging around my basement. I suppose my basement is not unlike many others — it’s kind of my family’s catch-all storage place for items too big to fit in a closet. Besides housing my HVAC and water heating systems, my basement is home to a variety of holiday decorations, lots of canned, bottled, and bulk food items, a small collection of mismatched folding tables and chairs, a few carpet remnants from a recent remodeling project, and the “archive” section of my personal library. I say “archive” since the stacks of books in my basement are the overflow from the stacks in my office. Yeah, I love books, and my large and diverse collection is a virtual window into my rather broad range of interests — probably too broad for my own good. My book-buying mantra is “you can never have too much reference material”. When I add a book to my library, it has a permanent home; selling or giving away any of them is a bit like abandoning a trusted friend. I’ll be the first to admit that books are a bit of an obsession for me, but I digress…
A downside of having so many books is that I sometimes forget what titles I have. Having finished my basement rummage, I was on my way back upstairs when a long forgotten little green book caught my eye: Engineering Formulas, 7th Edition, by Kurt and Reiner Gieck. I inherited this tiny yet information packed volume a decade or so ago from my dad’s personal reference library. The book covers a broad range of engineering topics including statics, dynamics, thermodynamics, electricity, and controls, just to name a few. While it’s not meant to be a detailed mathematical tome on all things engineering, it is a pretty good primer for new topics, and a reasonable review for subjects I haven’t worked in for awhile. For me, it was a great re-discovery and will no doubt be a handy reference when I need to research analog device operation before creating a model.
Before simulation there has to be modeling, and analog modeling starts with a mathematical description of behavior. I know this isn’t rocket science, but in the crunch of a hectic design schedule, it’s easy to forget that behind every symbol in a simulatable schematic there has to be some sort of mathematical model, and inside every mathematical model there is at least one equation. It’s pretty hard to overstate the importance of equations to the modeling and simulation process. If your simulation results look good, chances are a quality set of equations helped determine the answer. If your simulation results look wacky, equations could easily be the problem. In short, quality of simulation results is directly related to the quality of device equations. Getting the equations right is an important first step toward simulation results that make sense.
Selecting device equations is a bit of a subjective process. The equations you select or derive to describe a device’s behavior may well be different from those I would choose. A lot of this has to do with the information, technology, and modeling experience we have at hand. But selecting equations is only the beginning of the modeling process. With equations in hand, the next big hurdle is figuring out how to turn them into a viable simulation model. A bad implementation of even excellent equations can cause simulation problems. In coming blog posts I’ll suggest some general guidelines to help you turn device equations into useful VHDL-AMS simulation models.