Close

Ring Oscillator Measurements

A project log for Discrete NMOS Logic in 2020

Optimizing NMOS logic gates made of discrete transistors

timTim 11/28/2020 at 11:293 Comments

A good way of assessing performance of discrete inverterer is to build ring oscillators.I built 5 stage ring oscillators from the five candidate transistors.


The image below shows one of the PCBs with a five stage ring oscillator plus one additional inverter as output buffer. The load resistor was always 1.8 kohm.

You can see two examples of scope traces below. The actual voltages are 10x higher (forgot to correct for 1:10 probes). As expected, one can see that the rise time is much slower than the fall time due to the different impedances involved in pulling the input up- or down.

The images below show the ring oscillator frequency and current in dependence of supply voltage. We can see that there is quite some spread in frequency between candidate transistors. The spread in supply current is comparatively lower, since the current consumption is rather defined by the load resists..


The table above lists inverter properties at 5V supply for different transistors. Generally, the propagation delay mostly correlated with threshold voltages. The lower Vth, the lower the propagation delay. This is intuitively obvious, since L->H transition is limiting tpd and a lower Vth means that the gate will swith at an earlier time during the rising edge. This relationships does not hold true for all devices though and there is no clear correlation to gate charge.

The FDV301N is by far the fastest transistor, there is no other contender. The off-brand L2N7002 is the slowest device at quite some margin.

Conclusions

As was already clear from the difficulty of identifying suitable N-MOSFETS for building discrete NMOS-Logic, there is no perfect transistor available. The performance of the NMOS ring-oscillators does not really compare to the performance achievable with suitable bipolar switching transistors.

In many cases, however, the simplicity and robustness of NMOS may be more relevant than the speed of bipolar logic. In that case it would be advised to pick the Onsemi FDV301N for the best possible trade-off. If the goal is just to build functional NMOS logic, the 2N7002 and clones are available for very little money and in many package sizes and are probably a good choice if optimizing for speed is not of relevance.

Discussions

joan lluch wrote 08/21/2021 at 08:46 point

I believe that the BSS84 and BSS123 combined in CMOS style gates should offer a similar or better performance than discrete bipolars, requiring less power. However, CMOS tends to be expensive in number of transistors and it's a pity we can't implement PTL (Pass Transistor Logic) circuits with the said transistors. The BSS83 would be a gem for that but unfortunatelly is no longer in production.

I have been looking for ways to create discrete PTL (pass transistor logic) circuits and I suppose that one remaining possibility is using discrete analog switches like the TMUX1102 and TMUX1101 in combination with standard signal mosfets like the ones mentioned above. What do you think?

  Are you sure? yes | no

Tim wrote 08/21/2021 at 09:05 point

Discrete CMOS logic probably works well. You have to deal with power spikes, but that should be fine. I somehow don't like the added transistor count. That's just excessive for discrete logic.

I somehow missed looking at the BSS123. I guess it performs well in NMOS as well.

Regarding pass gate logic: Why not go all the way and use analog switches? :)

I looked into that here:

https://hackaday.io/project/8449-hackaday-ttlers/log/175781-analog-multiplexer-logic

  Are you sure? yes | no

joan lluch wrote 08/21/2021 at 11:33 point

Thanks for your reply. Some time ago I also played with "switch" logic, but my initial goal was making it with mechanical relays. I even designed a CPU and simulated it in Logisim, documented it all here http://anycpu.org/forum/viewtopic.php?f=23&t=659 but never got my hands dirty on it beyond the design stages because I don't really like mechanical relay relatively reduced life

So I am looking now to move this same architecture into transistors, and that's why I aim at logic with the few possible number of components/transistors. I guess the same exact relay based schematic cold be replaced by analog switches. This would be very convenient because most of the logic design work is already done, and it would be really reduced in number of components compared with anything else of the same complexity based in transistors

  Are you sure? yes | no