Friday, September 5, 2008

SPICE simulations for board level design

What trigger me to write this article is base on a question raise by one of trainee engineer in my present company. While I was drawing some schematics file, he asked me did i use SPICE simulations to get the correct circuits or put the correct value. I answer "no". Then he ask back, how do u know it's correct?.

When you do board level design, many sub-block is basically a recycle of sub-block that u had known before or that u already understand. If u understand very well during electronics course at university, u will know how transistor switch circuit is, class A amplifier, class AB amplifier, low pass filter, high pass filter, etc. This is the sub-block that when connected, it makes a circuits that target your applications. You should have a good sense on the how big the value of resistor should be, the kind of transistor u need to put and u actually can do the calculations by hand.The important things is, you must understand the qualitative analysis first. SPICE just help you to get a very very accurate quantitative analysis.

Another reason for not using SPICE is that, board level design consist of using a lot of ICs. The fact is, no IC manufacturer would give u SPICE models for their IC. You can get SPICE models for transistor, diodes, resistors and other passive elements, but u wont get for the ICs. Imagine design consist of using PIC16F84A MCU, I don't think Microchip release the SPICE models for it.

How do u get the correct circuits? For board level design, you always make prototype first. You get the prototype PCB, solder the componets, load the firmware and you power up the board.From the design, u know that it should behave this way, and the voltage or current value at those point should give this and that value. If it doesn't, you desolder some components, solder other components with different value, repeat this few times until you get what you want. Basically that's how it been done.

What is the purpose of SPICE? SPICE is certainly being use in IC design. I had experience working for fabless IC design company to understand this. The reason is, IC prototype is very very much expensive compare to PCB prototype. The IC designer try to get as accurate as possible the design. If the IC wont work, you cannot desolder or cut some wire to make it work. Basically, it just means that the prototype fails. The way IC being design also, make it possible to use SPICE. Inside the IC, it consist a lot of transistors,diodes,resistor connected together. You don't have another IC inside an IC.

What I try to point to is that, you must have very strong understandings of circuit theory and operations. Stuff like kirchoff voltage law, current law, transistor operations,etc should be well understood. In other way to see it is, you should able to run SPICE simulations inside your head before you could actually use the SPICE programs effectively.

No comments: