> Netlist is purely for discrete games; as I understand it it's over-accurate and > under-performant for discrete sound. But we may yet be surprised.
It started out as being purely for discrete games. However, quite early in the process I started to realize that I would need "discrete" macro models as in discrete sound again. That's when I started to design the object model to be scalable to pure "analog" devices like resistors and capacitors. The work got interrupted (job, health and family) for quite a while. However, I managed to have some time here and there to evaluate different approaches to analog circuit simulation. This convinced me that a mixed signal simulation should be feasible now.
Currently, I have a NAND-Multivibrator working (at the end of the pong netlist in pong.c). That's a start. The diode model (Shockley) works as well. For speed, it needs to be exchanged to a linearized model. Even this will be more accurate than the 0.7V the current discrete core assumes.
It's still a long way to go, though.
Accuracy was not the only driver. Currently, only Derrick Renaud and myself are left. The last work on the discrete core has been years ago. It served its purpose well at that time. However, we need something easier. Designing models with the discrete core for somebody without knowledge about it has a very slow learning curve. With the new netlist code also newbies should be able to translate schematics into netlists. Just because you only take e.g. R38, connect terminal 1 to terminal 1 of C41 and terminal B (Base) of Q13.
NET_C(R38.1, C41.1) NET_C(C41.1, Q13.B)
the code beneath will take care of nets.
Hope this summarizes the direction.
Edited by couriersud (11/23/13 11:43 PM)
|