

Transistor-level simulation of the Atari 2600 (2014) - mariuz
http://blog.visual6502.org/2014/10/atari-2600-simulation.html

======
dj-wonk
If the author says "transistor-level simulation" I would expect that to mean
all transistors in the simulation are modeled. Is that true?

Since they are nonlinear devices, doing so is relatively expensive
computationally.

If so, I'd be interested to learn the rationale for it. I would expect (and
could be wrong) that an Atari could be simulated at the logic level
adequately.

From "13.1 Types of Simulation" from from Application-Specific Integrated
Circuits available at
[http://iroi.seu.edu.cn/books/asics/Book2/CH13/CH13.1.htm](http://iroi.seu.edu.cn/books/asics/Book2/CH13/CH13.1.htm)

> Logic simulation or gate-level simulation can also be used to check the
> timing performance of an ASIC. In a gate-level simulator a logic gate or
> logic cell (NAND, NOR, and so on) is treated as a black box modeled by a
> function whose variables are the input signals. The function may also model
> the delay through the logic cell. Setting all the delays to unit value is
> the equivalent of functional simulation. If the timing simulation provided
> by a black-box model of a logic gate is not accurate enough, the next, more
> detailed, level of simulation is switch-level simulation which models
> transistors as switches—on or off. Switch-level simulation can provide more
> accurate timing predictions than gate-level simulation, but without the
> ability to use logic-cell delays as parameters of the models. The most
> accurate, but also the most complex and time-consuming, form of simulation
> is transistor-level simulation. A transistor-level simulator requires models
> of transistors, describing their nonlinear voltage and current
> characteristics.

~~~
weland
[https://github.com/gregjames/Sim2600/blob/master/nmosFet.py](https://github.com/gregjames/Sim2600/blob/master/nmosFet.py)
,
[https://github.com/gregjames/Sim2600/blob/master/circuitSimu...](https://github.com/gregjames/Sim2600/blob/master/circuitSimulatorBase.py)

It looks like they're only working with logic levels, rather than "actual"
device simulation. It's reasonably common in the digital IC crowd to call this
"transistor-level", but indeed, it's not what most EEs usually call a
transistor-level simulation (where one would actually expect the behaviour to
be modelled down to the behaviour of a transistor). If we insist on jargon,
this is actually a switch-level simulation.

------
gpvos
Heh. The Atari 2600 contained a chip called RIOT. Makes me think of a certain
'90s band. (Which seems to be back according to Wikipedia.)

~~~
qbrass
Riot's first album was released the same year as the 2600.

~~~
gluelogic
I believe they are referencing Atari Teenage Riot.

~~~
gpvos
Yes, that was the one I meant. Sorry, I forgot that there also was a band just
called Riot.

