

Show HN: A tutorial on reading circuits in Visual 6502 - ulfalizer2
http://wiki.nesdev.com/w/index.php/Visual_circuit_tutorial

======
ulfalizer2
Note that it uses examples from the APU (audio circuitry) and PPU (graphics
processor) in the NES. This is probably a good thing, as those circuits are
much less dense and so easier to read directly compared to the 6502 circuitry.
The particular examples aren't hugely important, and the principles are
exactly the same.

Skimming it might give a glimpse of what's going on inside old chips (and
newer ones too to some degree, though CMOS is more complicated than NMOS),
which I thought some people might find interesting. :)

I wrote this a few years ago, and I can see a few things that could be
clarified now. Feel free to ask questions.

~~~
wolfgke
> Skimming it might give a glimpse of what's going on inside old chips (and
> newer ones too to some degree, though CMOS is more complicated than NMOS)

What makes CMOS more complicated here?

~~~
ulfalizer2
(Disclaimer: I've never actually tried to read CMOS circuits, and I'm still
far from an analog electronics expert. The tutorial itself has been vetted by
people who worked on the simulators though -- thanks to Lidnariq, Quietust,
and BigEd!)

The basic logic elements tend to be more involved in CMOS, which makes use of
symmetrical pairs of transistors with different doping. (Roughly, the doping
determines whether a high or a low voltage "closes" the transistor.) Compare
the implementation of a NOT gate for NMOS and CMOS here for example (where 'a'
is the input):
[http://en.wikipedia.org/wiki/Inverter_%28logic_gate%29](http://en.wikipedia.org/wiki/Inverter_%28logic_gate%29).

To get an idea of one problem with NMOS that CMOS solves, consider the
inverter example when the input is high. In that case, you get a continuous
current from the power source to ground, meaning you're drawing power (and
generating heat) even in the steady (static) state. CMOS on the other hand is
designed to only draw power while the circuit is switching. Studying the
circuit on the wiki article might give some rough idea of how that works.

