2 FETand 19 OpAmps:

Since the invention of the transistor, there's always been people wondering if it's possible to emulate the characteristics of a triode with silicon technology in a faithful way. The "tube sound" is still the guitarrists' most wanted sound in the silicon era, and there's been countless attemps to achieve that sound with silicon technology. This, is only another attempt to add to the list.

I have a jtm45 hand-made by myself, but i'd love to have a pedal that is able to get the classic tube distortion without having to mod my amplifier nor having to pump up the volume. There are many stompboxes out there, even some with tubes in them, but I like to do things by myself. I haven't still tested this "silicon triode" yet, because my free time is sparse. But I'd like to present the first results of my quest:

About a week ago or so I re-read the articule about the Fetzer Valve in runoff groove.com. It's a design that tries to emulate some characteristics of the triode using a JFET and a resistance on the source as feedback in order to obtain a drain to source current that follows the 1.5 power rate that is characteristic in a triode. I thought it was an interesting approach, but, the article said that we should use a certain value of the Rs (source resistance) in order to approximate as much as we could to this 1.5 power/exponent rate. It also mentioned that the value of Rs had been studied on a paper called "On Triode Emulation" written by Dimitri Danyuk.

So, just for fun, I decided to read it and try to emulate the graphs shown on the paper.

Basically, a JFET in Saturation region, follows the equation:

Ids =Idss*(1 - Vgs/Vp)^2

You can see the exponent in that function is 2. The exponent in the current function on a triode is 1.5, and if you add a resistance to the source pin of a JFET, the curve of Ids will fall, so at some point, for a given Rs=k*Vp/Idss, the curve of a JFET will actually be very similar to a power 1.5.

In the paper, Dimitri finds that the best match is Rs= 0.83*Vp/Idss (that is, k=0.83). But that's just the best approximation for the operating point. That is, if the input voltage goes from Vp to Rs*Idss, this Rs is the best approximation when the input is (Vp+Rs*Idss)/2. But the fact is that when we use the "Fezter Valve", we use all the voltage range. So I created a function in matlab that sums the normalized difference from the "Fezter Valve" to the x^1.5 function for each k and this is what I found:

Basically, k=0.64 is a better match when we consider all the input voltage range. The difference is 1.467% when for k=0.84 it's 2.664% (note that for k=0 it's about 16%).

All in all, I think the "Fetzer Valve" is an interesting approach, but, as I had never designed anything with valves before, I didn't fully understand how triodes worked. What the hell did actually meant this 3/2 power law that everyone said triodes followed?

So I installed Pspice Microsim Eval 8 and with this tutorial and the model of a 12ax7a I could finally get to test a triode (or at least the model of a triode). These are the the curves on a triode:

and:

As you can see in both images, the current depends from Vpk (plate to cathode) and from Vgk (grid to cathode)! This is what I didn't understand when I looked to the graphs of a triode, that's why I wanted to check it by myself on the circuit simulator. This fact, tears the Fetzer Valve to shreds, as the current of a triode depends on 2 voltages and the current of the JFET and of the Fetzer Valve only depends (in the first/simplest approximation) on the Vgs (gate to source, the equivalent of the grid to sourcein a triode)!

The next image represents the curve of the current in a JFET. As I said, it follows the equation Ids =Idss*(1 - Vgs/Vp)^2. You can see that it's very similar to the last image I've posted of a triode, being the main differences that it has an exponent 2 instead of 1.5 (the Fetzer valve solves that), and that the curve changes for each Vpk on a triode:

This is a two dimensional function, a curve. If I wanted to suceed in emulating the charateristics of a triode, I had to know what the current transfer function looks like. So, observing the the model of a 12ax7a for pspice I saw that it followed a not so complex formula. Searching more on the web I also found the formula on this paper ("SPICE Models for Vacuum-Tube Amplifiers"):

Ip = m*(u*Vgk + Vpk)^1.5

Where m and u are constants and p=plate, g=grid, k=cathode. The formula used in pspice introduces a constant. As it's not a difficult modification and it looks like it's a more exact model, I reproduce it here:

Ip = m*(u*Vgk + Vpk +Vconstant)^1.5.

Knowing the parametters of this function (they are on the pspice model of a 12ax7), and just for fun, and as I didn't find anyone on the web that had ever cared to plot a 3d graph of this function, I went to matlab and here you have the 3d graph:

Look another time to the last image, the current function of a JFET. When Vds changes and Vgs doesn't, the transfer function doesn't change (in saturation mode, at first approximation). But for a triode, when Vgk=-2, Ip can be 0mA (for example for Vpk=50) or 4mA (for example for Vpk=200). It makes a hell of a difference!

But there's even more! Even if, for a moment, we didn't consider this "little thing" called Vpk in our model of a triode, the Fetzer Valve does a good job approximating the 1.5 exponent and therefore the behaviour of a triode... Well, of a triode... with the cathode connected to ground! (and most designs do not connect the 12ax7a cathode to ground) Because, of course, if we added another resistance/capacitor/whatever to the path from the Rs of a Fetzer Valve, the current transfer function will vary.. in a veery different way than the transfer function of a triode would do. In order to imagine up to what point it differs, take into account again that an ideal JFET/Fetzer Valve has a curve as transfer function and that a triode has a whole surface as transfer function!

But, not everything is lost, we can overcome ALL those problems and obtain a silicon circuit that implements the function that so many circuit simulation programs use to modellate a triode, and, that's done modifying the Fetzer valve approach. Of course, the pspice model of a triode is not infinitely accurate, and the implementation of that model that I've found is not perfect and although it solves all the aforementioned problems, it also adds it's own kind of problems (19 opamps, resistors mismatching, power consumption etc). But, hey, it will be a better approach than the one of the Fetzer valve (though a little bit more complex). I think we could even create a "silicon triode" that could be connected to the socket of a triode (the 3 pins of the heaters should be replaced with Vcc, gnd and Vss) and work just like a triode. It is not my goal, but theoretically possible, and it would need a bigger power supply (or, if you want to implement a guitar amp that has an-all valves power supply, you would need a separated all-silicon power supply to feed the "silicon valves").

Having about 19 Opamps, the design shouldn't be used for that kind of crazy stuff but for a pedal, or a preamp, and of course only in the case you prefer to implement a valve through 19 Opamps instead of using the real stuff. Although if this design actualy works well (and not only on our simulations), it could be possible to create "silicon valves" so anyone that wanted to use them could simply buy one instead of soldering 19 Opamps.

I'm sorry no to present the work yet, but here in Europe it's 11pm, I've been writting this post for hours and I'm early tomorrow so I'll continue another day and present the actual circuit (with pspice simulations)!

EDIT: I had the second of the triode's graphs missing, I've now added it.

Since the invention of the transistor, there's always been people wondering if it's possible to emulate the characteristics of a triode with silicon technology in a faithful way. The "tube sound" is still the guitarrists' most wanted sound in the silicon era, and there's been countless attemps to achieve that sound with silicon technology. This, is only another attempt to add to the list.

I have a jtm45 hand-made by myself, but i'd love to have a pedal that is able to get the classic tube distortion without having to mod my amplifier nor having to pump up the volume. There are many stompboxes out there, even some with tubes in them, but I like to do things by myself. I haven't still tested this "silicon triode" yet, because my free time is sparse. But I'd like to present the first results of my quest:

About a week ago or so I re-read the articule about the Fetzer Valve in runoff groove.com. It's a design that tries to emulate some characteristics of the triode using a JFET and a resistance on the source as feedback in order to obtain a drain to source current that follows the 1.5 power rate that is characteristic in a triode. I thought it was an interesting approach, but, the article said that we should use a certain value of the Rs (source resistance) in order to approximate as much as we could to this 1.5 power/exponent rate. It also mentioned that the value of Rs had been studied on a paper called "On Triode Emulation" written by Dimitri Danyuk.

So, just for fun, I decided to read it and try to emulate the graphs shown on the paper.

Basically, a JFET in Saturation region, follows the equation:

Ids =Idss*(1 - Vgs/Vp)^2

You can see the exponent in that function is 2. The exponent in the current function on a triode is 1.5, and if you add a resistance to the source pin of a JFET, the curve of Ids will fall, so at some point, for a given Rs=k*Vp/Idss, the curve of a JFET will actually be very similar to a power 1.5.

In the paper, Dimitri finds that the best match is Rs= 0.83*Vp/Idss (that is, k=0.83). But that's just the best approximation for the operating point. That is, if the input voltage goes from Vp to Rs*Idss, this Rs is the best approximation when the input is (Vp+Rs*Idss)/2. But the fact is that when we use the "Fezter Valve", we use all the voltage range. So I created a function in matlab that sums the normalized difference from the "Fezter Valve" to the x^1.5 function for each k and this is what I found:

Basically, k=0.64 is a better match when we consider all the input voltage range. The difference is 1.467% when for k=0.84 it's 2.664% (note that for k=0 it's about 16%).

All in all, I think the "Fetzer Valve" is an interesting approach, but, as I had never designed anything with valves before, I didn't fully understand how triodes worked. What the hell did actually meant this 3/2 power law that everyone said triodes followed?

So I installed Pspice Microsim Eval 8 and with this tutorial and the model of a 12ax7a I could finally get to test a triode (or at least the model of a triode). These are the the curves on a triode:

and:

As you can see in both images, the current depends from Vpk (plate to cathode) and from Vgk (grid to cathode)! This is what I didn't understand when I looked to the graphs of a triode, that's why I wanted to check it by myself on the circuit simulator. This fact, tears the Fetzer Valve to shreds, as the current of a triode depends on 2 voltages and the current of the JFET and of the Fetzer Valve only depends (in the first/simplest approximation) on the Vgs (gate to source, the equivalent of the grid to sourcein a triode)!

The next image represents the curve of the current in a JFET. As I said, it follows the equation Ids =Idss*(1 - Vgs/Vp)^2. You can see that it's very similar to the last image I've posted of a triode, being the main differences that it has an exponent 2 instead of 1.5 (the Fetzer valve solves that), and that the curve changes for each Vpk on a triode:

This is a two dimensional function, a curve. If I wanted to suceed in emulating the charateristics of a triode, I had to know what the current transfer function looks like. So, observing the the model of a 12ax7a for pspice I saw that it followed a not so complex formula. Searching more on the web I also found the formula on this paper ("SPICE Models for Vacuum-Tube Amplifiers"):

Ip = m*(u*Vgk + Vpk)^1.5

Where m and u are constants and p=plate, g=grid, k=cathode. The formula used in pspice introduces a constant. As it's not a difficult modification and it looks like it's a more exact model, I reproduce it here:

Ip = m*(u*Vgk + Vpk +Vconstant)^1.5.

Knowing the parametters of this function (they are on the pspice model of a 12ax7), and just for fun, and as I didn't find anyone on the web that had ever cared to plot a 3d graph of this function, I went to matlab and here you have the 3d graph:

Look another time to the last image, the current function of a JFET. When Vds changes and Vgs doesn't, the transfer function doesn't change (in saturation mode, at first approximation). But for a triode, when Vgk=-2, Ip can be 0mA (for example for Vpk=50) or 4mA (for example for Vpk=200). It makes a hell of a difference!

But there's even more! Even if, for a moment, we didn't consider this "little thing" called Vpk in our model of a triode, the Fetzer Valve does a good job approximating the 1.5 exponent and therefore the behaviour of a triode... Well, of a triode... with the cathode connected to ground! (and most designs do not connect the 12ax7a cathode to ground) Because, of course, if we added another resistance/capacitor/whatever to the path from the Rs of a Fetzer Valve, the current transfer function will vary.. in a veery different way than the transfer function of a triode would do. In order to imagine up to what point it differs, take into account again that an ideal JFET/Fetzer Valve has a curve as transfer function and that a triode has a whole surface as transfer function!

But, not everything is lost, we can overcome ALL those problems and obtain a silicon circuit that implements the function that so many circuit simulation programs use to modellate a triode, and, that's done modifying the Fetzer valve approach. Of course, the pspice model of a triode is not infinitely accurate, and the implementation of that model that I've found is not perfect and although it solves all the aforementioned problems, it also adds it's own kind of problems (19 opamps, resistors mismatching, power consumption etc). But, hey, it will be a better approach than the one of the Fetzer valve (though a little bit more complex). I think we could even create a "silicon triode" that could be connected to the socket of a triode (the 3 pins of the heaters should be replaced with Vcc, gnd and Vss) and work just like a triode. It is not my goal, but theoretically possible, and it would need a bigger power supply (or, if you want to implement a guitar amp that has an-all valves power supply, you would need a separated all-silicon power supply to feed the "silicon valves").

Having about 19 Opamps, the design shouldn't be used for that kind of crazy stuff but for a pedal, or a preamp, and of course only in the case you prefer to implement a valve through 19 Opamps instead of using the real stuff. Although if this design actualy works well (and not only on our simulations), it could be possible to create "silicon valves" so anyone that wanted to use them could simply buy one instead of soldering 19 Opamps.

I'm sorry no to present the work yet, but here in Europe it's 11pm, I've been writting this post for hours and I'm early tomorrow so I'll continue another day and present the actual circuit (with pspice simulations)!

EDIT: I had the second of the triode's graphs missing, I've now added it.