> Are chips more vulnerable to witchcraft as they got thinner and narrower? >
They're generally scale-invariant.
The scribbling on them is smaller, but then we put more of the scribbling, so they end up having the same X-Y dimensions for the price.
If the dimensions X-Y were to be made too small, it would make the devices too hard to cool. It helps to make them a "decent size" in the X-Y, so the heat sink works for us.
You cannot make them too much thinner or they would snap from mechanical stresses.
The chips convert electricity into heat, and as a side effect, they do your taxes. And yes, they are pretty amazing.
At one time, the scribbling was so large inside, a guy with a graphite pencil at the fab, added some missing connections to a chip, by using his pencil to leave conductive marks on the chip, causing the chip to work. The guy who did it, was on my soccer team :-) The chip in that case, the "lid" was held on with cello tape on one edge, and you could flip the lid up and look inside for the pencil marks. And the chip, it then worked. The chip was not very complex, but I think the developer was pretty proud of being the first one of its type, at our fab. It's possible there wasn't any "simulation" done for that chip, and that's why the missing traces were not noticed. We didn't even have a design review for that chip -- if we had reviewed it, I have a suspicion we would have caught that mistake.
Today, the scribblings inside are quite small, even for a microscope to look at. At one analysis place, they use an electron microscope, to examine the scribblings and reverse engineer things (check for patent violations).
It's long hours of work to make them. It would take too long to design them, if it weren't for the repetitive nature of some of the structures (you just make xerox copies of some of the items and lay them down side by side). The RAM chips in your computer are like that. Very uniform patterns.
When the things they do, are closer to being software subroutines (adhoc state machines and so on), it's a lot easier to make mistakes. One chip had 4096 registers in the interface, and we would make a software program to "watch" the register contents. There were some "defined" parts of the registers, we could understand what those were doing. But you would see some other addresses where the detail of the chip was "undefined" and these were observation points and stuff was flashing on and off. That's what the more "random" functions look like. The people at the other company who made the chip, knew what they did, but they don't have to document those observation points for other to use. It took about four tries, to get the function of that chip, closer to correctness. Even though it was fully simulated, had test benches, if the design intent isn't right, you have to do it over again.
And the thing was, the management at the other company, thought they were using "smart" techniques to make the chip, but it still took four tries.
But it's a living. People make good money doing that. You should try it some time. It's just like designing software. You can be sitting in a CAD room, working on your scribblings at midnight, when others are asleep. You don't have to worry about what was on TV at 8PM, as you're still at work :-)
# What fun :-) Yawn. Getting sleepy now. # Only a million more of these to make...