Electronics-Related.com
Forums

Digital transistor?

Started by Sylvia Else March 25, 2022
On 26/03/2022 4:35 am, Sylvia Else wrote:
> On 26-Mar-22 2:40 pm, jlarkin@highlandsniptechnology.com wrote: >> On Sat, 26 Mar 2022 14:16:46 +1100, Sylvia Else <sylvia@email.invalid> >> wrote: >> >>> On 26-Mar-22 11:32 am, John Larkin wrote: >>>> On Sat, 26 Mar 2022 10:52:34 +1100, Sylvia Else <sylvia@email.invalid> >>>> wrote: >>>> >>>>> https://www.farnell.com/datasheets/2353855.pdf >>>>> >>>>> I bought a few of these. I don't know what is intended by "digital >>>>> transistor" since the charge storage time defeats any attempt to use >>>>> them at a high frequency, and there's no way to add a Schottky >>>>> diode to >>>>> prevent saturation, or a speed-up capacitor across the base resistor. >>>>> >>>>> I'm using this and the corresponding PNP type to do level shifting of >>>>> both high and low levels (*). At 25 kHz it's OK, albeit with a >>>>> significant change in duty cycle, and is adequate for my purpose, >>>>> but I >>>>> wouldn't want to push it much higher. >>>>> >>>>> I suppose the lack of description of the switching characteristics >>>>> should have been a give-away. >>>>> >>>>> Sylvia. >>>>> >>>>> (*) Whether I needed to do that is a different discussion. >>>> >>>> The idea was to drive them from TTL without a base resistor. I suppose >>>> some people liked not having to do the required higher-level math. >>>> >>>> Logic-level mosfets made these mostly obsolete. FDV301 costs us 3 >>>> cents. >>> >>> LTSpice shows me 0.7V of undershoot when driving it with 3V pulses, 10ns >>> rise time, using Onsemi's model, and 10K load resistor. >>> >>> https://www.onsemi.com/design/resources/design-resources/models?rpn=FDV301N >>> >>> >>> Limiting that with a Schottky diode then gives me 22 mA spikes through >>> the diode. >>> >>> Taming it with a 1K gate resistor helps, at the expense of slowing the >>> output, but now we're back to needing an extra component. >>> >>> Not that such spikes always matter. >>> >>> Sylvia. >> >> 10K load implies very low current, so if you want less spikes you'd >> need a part witn low Cg-d, namely a wimpier smaller-geometry device. >> >> An open-drain cmos gate might work, for whatever you are doing. >> >> Got a schematic? >> >> >> > > Below is my LTSpice version of the bit of the circuit concerned, to > change levels up and down. > > The actual version implemented using the digital transistors performs > fairly closely to the simulation. As I've said, it's sufficient for my > requirements. > > I originally used a digital isolator but I've already destroyed two, one > through carelessness, and one possibly through static discharge while > trying to understand why one channel was behaving oddly. They're rather > expensive to buy in excess of what is required in case they break. > > Version 4 > SHEET 1 1268 680 > WIRE 432 -752 432 -784 > WIRE 784 -752 432 -752 > WIRE 192 -704 192 -784 > WIRE 784 -672 784 -752 > WIRE 432 -656 432 -752 > WIRE 528 -656 432 -656 > WIRE 528 -608 528 -656 > WIRE -112 -592 -160 -592 > WIRE 192 -592 192 -624 > WIRE 192 -592 -112 -592 > WIRE 192 -544 192 -592 > WIRE 432 -544 432 -656 > WIRE 736 -512 640 -512 > WIRE 784 -512 784 -592 > WIRE 784 -512 736 -512 > WIRE -32 -496 -80 -496 > WIRE 80 -496 48 -496 > WIRE 128 -496 80 -496 > WIRE 528 -496 528 -528 > WIRE 528 -496 496 -496 > WIRE 560 -496 528 -496 > WIRE 640 -496 640 -512 > WIRE 80 -448 80 -496 > WIRE 432 -448 416 -448 > WIRE 80 -320 80 -368 > WIRE 80 -320 -144 -320 > WIRE 192 -320 192 -448 > WIRE 192 -320 80 -320 > WIRE -80 -272 -80 -496 > WIRE 416 -272 416 -448 > WIRE 416 -272 -80 -272 > WIRE 416 -128 352 -128 > WIRE 416 -80 416 -128 > WIRE 176 -48 176 -96 > WIRE 176 -48 -256 -48 > WIRE 352 -48 352 -128 > WIRE 352 -48 176 -48 > WIRE -256 16 -256 -48 > WIRE 416 32 416 0 > WIRE 416 32 -96 32 > WIRE 176 48 176 -48 > WIRE 176 48 64 48 > WIRE 64 80 64 48 > WIRE -240 96 -256 96 > WIRE 176 144 176 48 > WIRE 416 144 416 32 > WIRE 672 176 624 176 > WIRE 768 176 672 176 > WIRE -96 192 -96 32 > WIRE -48 192 -96 192 > WIRE 64 192 64 160 > WIRE 64 192 32 192 > WIRE 112 192 64 192 > WIRE 512 192 480 192 > WIRE 544 192 512 192 > WIRE 624 192 624 176 > WIRE 512 224 512 192 > WIRE 416 240 400 240 > WIRE -336 256 -384 256 > WIRE 176 256 176 240 > WIRE 176 256 -336 256 > WIRE 400 320 400 240 > WIRE 512 320 512 304 > WIRE 512 320 400 320 > WIRE -256 368 -256 96 > WIRE 176 368 176 336 > WIRE 176 368 -256 368 > FLAG 176 -176 0 > FLAG 400 320 0 > FLAG 768 256 0 > FLAG 192 -864 0 > FLAG -144 -320 0 > FLAG 432 -864 0 > FLAG 416 -192 0 > FLAG -112 -592 OUT1 > FLAG 736 -512 IN1 > FLAG 672 176 IN2 > FLAG -336 256 OUT2 > SYMBOL npn 480 144 M0 > SYMATTR InstName Q1 > SYMATTR Value 2N3904 > SYMBOL pnp 112 240 M180 > SYMATTR InstName Q2 > SYMATTR Value 2N3906 > SYMBOL res 496 208 R0 > SYMATTR InstName R1 > SYMATTR Value 47K > SYMBOL res 48 64 R0 > SYMATTR InstName R2 > SYMATTR Value 47K > SYMBOL res 48 176 R90 > WINDOW 0 0 56 VBottom 2 > WINDOW 3 32 56 VTop 2 > SYMATTR InstName R3 > SYMATTR Value 10K > SYMBOL res 640 176 R90 > WINDOW 0 0 56 VBottom 2 > WINDOW 3 32 56 VTop 2 > SYMATTR InstName R4 > SYMATTR Value 10K > SYMBOL res 160 240 R0 > SYMATTR InstName R5 > SYMATTR Value 10K > SYMBOL voltage 176 -80 R180 > WINDOW 0 24 96 Left 2 > WINDOW 3 24 16 Left 2 > WINDOW 123 0 0 Left 0 > WINDOW 39 0 0 Left 0 > SYMATTR InstName V1 > SYMATTR Value 14 > SYMBOL voltage 768 160 R0 > WINDOW 123 0 0 Left 0 > WINDOW 39 0 0 Left 0 > SYMATTR InstName V3 > SYMATTR Value PULSE(0 3.3 0 1e-8 1e-8 2e-5 4e-5 10) > SYMBOL voltage -256 0 R0 > WINDOW 123 0 0 Left 0 > WINDOW 39 0 0 Left 0 > SYMATTR InstName V4 > SYMATTR Value 4 > SYMBOL npn 128 -544 R0 > SYMATTR InstName Q3 > SYMATTR Value 2N3904 > SYMBOL pnp 496 -448 R180 > SYMATTR InstName Q4 > SYMATTR Value 2N3906 > SYMBOL res 512 -624 R0 > SYMATTR InstName R6 > SYMATTR Value 47K > SYMBOL res 64 -464 R0 > SYMATTR InstName R7 > SYMATTR Value 47K > SYMBOL res 64 -512 R90 > WINDOW 0 0 56 VBottom 2 > WINDOW 3 32 56 VTop 2 > SYMATTR InstName 10K > SYMATTR Value 10K > SYMBOL res 656 -512 R90 > WINDOW 0 0 56 VBottom 2 > WINDOW 3 32 56 VTop 2 > SYMATTR InstName R9 > SYMATTR Value 10K > SYMBOL voltage 192 -768 R180 > WINDOW 0 24 96 Left 2 > WINDOW 3 24 16 Left 2 > WINDOW 123 0 0 Left 0 > WINDOW 39 0 0 Left 0 > SYMATTR InstName V2 > SYMATTR Value 3.3 > SYMBOL voltage 784 -688 R0 > WINDOW 123 0 0 Left 0 > WINDOW 39 0 0 Left 0 > SYMATTR InstName V5 > SYMATTR Value PULSE(0 4 0 1e-8 1e-8 25e-6 50e-6 10) > SYMBOL res 176 -720 R0 > SYMATTR InstName R10 > SYMATTR Value 10K > SYMBOL voltage 432 -768 R180 > WINDOW 0 24 96 Left 2 > WINDOW 3 24 16 Left 2 > WINDOW 123 0 0 Left 0 > WINDOW 39 0 0 Left 0 > SYMATTR InstName V6 > SYMATTR Value 14 > SYMBOL res 432 -176 R180 > WINDOW 0 36 76 Left 2 > WINDOW 3 36 40 Left 2 > SYMATTR InstName R8 > SYMATTR Value 10K > SYMBOL res 400 -96 R0 > SYMATTR InstName R11 > SYMATTR Value 10K > TEXT -288 376 Left 2 !.tran 2E-4 >
You might not need R8 and R11? piglet
On 27-Mar-22 2:38 am, piglet wrote:
> On 26/03/2022 4:35 am, Sylvia Else wrote: >> On 26-Mar-22 2:40 pm, jlarkin@highlandsniptechnology.com wrote: >>> On Sat, 26 Mar 2022 14:16:46 +1100, Sylvia Else <sylvia@email.invalid> >>> wrote: >>> >>>> On 26-Mar-22 11:32 am, John Larkin wrote: >>>>> On Sat, 26 Mar 2022 10:52:34 +1100, Sylvia Else <sylvia@email.invalid> >>>>> wrote: >>>>> >>>>>> https://www.farnell.com/datasheets/2353855.pdf >>>>>> >>>>>> I bought a few of these. I don't know what is intended by "digital >>>>>> transistor" since the charge storage time defeats any attempt to use >>>>>> them at a high frequency, and there's no way to add a Schottky >>>>>> diode to >>>>>> prevent saturation, or a speed-up capacitor across the base resistor. >>>>>> >>>>>> I'm using this and the corresponding PNP type to do level shifting of >>>>>> both high and low levels (*). At 25 kHz it's OK, albeit with a >>>>>> significant change in duty cycle, and is adequate for my purpose, >>>>>> but I >>>>>> wouldn't want to push it much higher. >>>>>> >>>>>> I suppose the lack of description of the switching characteristics >>>>>> should have been a give-away. >>>>>> >>>>>> Sylvia. >>>>>> >>>>>> (*) Whether I needed to do that is a different discussion. >>>>> >>>>> The idea was to drive them from TTL without a base resistor. I suppose >>>>> some people liked not having to do the required higher-level math. >>>>> >>>>> Logic-level mosfets made these mostly obsolete. FDV301 costs us 3 >>>>> cents. >>>> >>>> LTSpice shows me 0.7V of undershoot when driving it with 3V pulses, >>>> 10ns >>>> rise time, using Onsemi's model, and 10K load resistor. >>>> >>>> https://www.onsemi.com/design/resources/design-resources/models?rpn=FDV301N >>>> >>>> >>>> Limiting that with a Schottky diode then gives me 22 mA spikes through >>>> the diode. >>>> >>>> Taming it with a 1K gate resistor helps, at the expense of slowing the >>>> output, but now we're back to needing an extra component. >>>> >>>> Not that such spikes always matter. >>>> >>>> Sylvia. >>> >>> 10K load implies very low current, so if you want less spikes you'd >>> need a part witn low Cg-d, namely a wimpier smaller-geometry device. >>> >>> An open-drain cmos gate might work, for whatever you are doing. >>> >>> Got a schematic? >>> >>> >>> >> >> Below is my LTSpice version of the bit of the circuit concerned, to >> change levels up and down. >> >> The actual version implemented using the digital transistors performs >> fairly closely to the simulation. As I've said, it's sufficient for my >> requirements. >> >> I originally used a digital isolator but I've already destroyed two, >> one through carelessness, and one possibly through static discharge >> while trying to understand why one channel was behaving oddly. They're >> rather expensive to buy in excess of what is required in case they break. >> >> Version 4 >> SHEET 1 1268 680 >> WIRE 432 -752 432 -784 >> WIRE 784 -752 432 -752 >> WIRE 192 -704 192 -784 >> WIRE 784 -672 784 -752 >> WIRE 432 -656 432 -752 >> WIRE 528 -656 432 -656 >> WIRE 528 -608 528 -656 >> WIRE -112 -592 -160 -592 >> WIRE 192 -592 192 -624 >> WIRE 192 -592 -112 -592 >> WIRE 192 -544 192 -592 >> WIRE 432 -544 432 -656 >> WIRE 736 -512 640 -512 >> WIRE 784 -512 784 -592 >> WIRE 784 -512 736 -512 >> WIRE -32 -496 -80 -496 >> WIRE 80 -496 48 -496 >> WIRE 128 -496 80 -496 >> WIRE 528 -496 528 -528 >> WIRE 528 -496 496 -496 >> WIRE 560 -496 528 -496 >> WIRE 640 -496 640 -512 >> WIRE 80 -448 80 -496 >> WIRE 432 -448 416 -448 >> WIRE 80 -320 80 -368 >> WIRE 80 -320 -144 -320 >> WIRE 192 -320 192 -448 >> WIRE 192 -320 80 -320 >> WIRE -80 -272 -80 -496 >> WIRE 416 -272 416 -448 >> WIRE 416 -272 -80 -272 >> WIRE 416 -128 352 -128 >> WIRE 416 -80 416 -128 >> WIRE 176 -48 176 -96 >> WIRE 176 -48 -256 -48 >> WIRE 352 -48 352 -128 >> WIRE 352 -48 176 -48 >> WIRE -256 16 -256 -48 >> WIRE 416 32 416 0 >> WIRE 416 32 -96 32 >> WIRE 176 48 176 -48 >> WIRE 176 48 64 48 >> WIRE 64 80 64 48 >> WIRE -240 96 -256 96 >> WIRE 176 144 176 48 >> WIRE 416 144 416 32 >> WIRE 672 176 624 176 >> WIRE 768 176 672 176 >> WIRE -96 192 -96 32 >> WIRE -48 192 -96 192 >> WIRE 64 192 64 160 >> WIRE 64 192 32 192 >> WIRE 112 192 64 192 >> WIRE 512 192 480 192 >> WIRE 544 192 512 192 >> WIRE 624 192 624 176 >> WIRE 512 224 512 192 >> WIRE 416 240 400 240 >> WIRE -336 256 -384 256 >> WIRE 176 256 176 240 >> WIRE 176 256 -336 256 >> WIRE 400 320 400 240 >> WIRE 512 320 512 304 >> WIRE 512 320 400 320 >> WIRE -256 368 -256 96 >> WIRE 176 368 176 336 >> WIRE 176 368 -256 368 >> FLAG 176 -176 0 >> FLAG 400 320 0 >> FLAG 768 256 0 >> FLAG 192 -864 0 >> FLAG -144 -320 0 >> FLAG 432 -864 0 >> FLAG 416 -192 0 >> FLAG -112 -592 OUT1 >> FLAG 736 -512 IN1 >> FLAG 672 176 IN2 >> FLAG -336 256 OUT2 >> SYMBOL npn 480 144 M0 >> SYMATTR InstName Q1 >> SYMATTR Value 2N3904 >> SYMBOL pnp 112 240 M180 >> SYMATTR InstName Q2 >> SYMATTR Value 2N3906 >> SYMBOL res 496 208 R0 >> SYMATTR InstName R1 >> SYMATTR Value 47K >> SYMBOL res 48 64 R0 >> SYMATTR InstName R2 >> SYMATTR Value 47K >> SYMBOL res 48 176 R90 >> WINDOW 0 0 56 VBottom 2 >> WINDOW 3 32 56 VTop 2 >> SYMATTR InstName R3 >> SYMATTR Value 10K >> SYMBOL res 640 176 R90 >> WINDOW 0 0 56 VBottom 2 >> WINDOW 3 32 56 VTop 2 >> SYMATTR InstName R4 >> SYMATTR Value 10K >> SYMBOL res 160 240 R0 >> SYMATTR InstName R5 >> SYMATTR Value 10K >> SYMBOL voltage 176 -80 R180 >> WINDOW 0 24 96 Left 2 >> WINDOW 3 24 16 Left 2 >> WINDOW 123 0 0 Left 0 >> WINDOW 39 0 0 Left 0 >> SYMATTR InstName V1 >> SYMATTR Value 14 >> SYMBOL voltage 768 160 R0 >> WINDOW 123 0 0 Left 0 >> WINDOW 39 0 0 Left 0 >> SYMATTR InstName V3 >> SYMATTR Value PULSE(0 3.3 0 1e-8 1e-8 2e-5 4e-5 10) >> SYMBOL voltage -256 0 R0 >> WINDOW 123 0 0 Left 0 >> WINDOW 39 0 0 Left 0 >> SYMATTR InstName V4 >> SYMATTR Value 4 >> SYMBOL npn 128 -544 R0 >> SYMATTR InstName Q3 >> SYMATTR Value 2N3904 >> SYMBOL pnp 496 -448 R180 >> SYMATTR InstName Q4 >> SYMATTR Value 2N3906 >> SYMBOL res 512 -624 R0 >> SYMATTR InstName R6 >> SYMATTR Value 47K >> SYMBOL res 64 -464 R0 >> SYMATTR InstName R7 >> SYMATTR Value 47K >> SYMBOL res 64 -512 R90 >> WINDOW 0 0 56 VBottom 2 >> WINDOW 3 32 56 VTop 2 >> SYMATTR InstName 10K >> SYMATTR Value 10K >> SYMBOL res 656 -512 R90 >> WINDOW 0 0 56 VBottom 2 >> WINDOW 3 32 56 VTop 2 >> SYMATTR InstName R9 >> SYMATTR Value 10K >> SYMBOL voltage 192 -768 R180 >> WINDOW 0 24 96 Left 2 >> WINDOW 3 24 16 Left 2 >> WINDOW 123 0 0 Left 0 >> WINDOW 39 0 0 Left 0 >> SYMATTR InstName V2 >> SYMATTR Value 3.3 >> SYMBOL voltage 784 -688 R0 >> WINDOW 123 0 0 Left 0 >> WINDOW 39 0 0 Left 0 >> SYMATTR InstName V5 >> SYMATTR Value PULSE(0 4 0 1e-8 1e-8 25e-6 50e-6 10) >> SYMBOL res 176 -720 R0 >> SYMATTR InstName R10 >> SYMATTR Value 10K >> SYMBOL voltage 432 -768 R180 >> WINDOW 0 24 96 Left 2 >> WINDOW 3 24 16 Left 2 >> WINDOW 123 0 0 Left 0 >> WINDOW 39 0 0 Left 0 >> SYMATTR InstName V6 >> SYMATTR Value 14 >> SYMBOL res 432 -176 R180 >> WINDOW 0 36 76 Left 2 >> WINDOW 3 36 40 Left 2 >> SYMATTR InstName R8 >> SYMATTR Value 10K >> SYMBOL res 400 -96 R0 >> SYMATTR InstName R11 >> SYMATTR Value 10K >> TEXT -288 376 Left 2 !.tran 2E-4 >> > > You might not need R8 and R11? > > piglet >
Indeed, as originally conceived there weren't there, but they speed it up somewhat. Sylvia.
On 27-Mar-22 2:32 am, piglet wrote:
> On 26/03/2022 2:54 pm, jlarkin@highlandsniptechnology.com wrote: >> On Sat, 26 Mar 2022 15:35:12 +1100, Sylvia Else <sylvia@email.invalid> >> wrote: >> >>> On 26-Mar-22 2:40 pm, jlarkin@highlandsniptechnology.com wrote: >>>> On Sat, 26 Mar 2022 14:16:46 +1100, Sylvia Else <sylvia@email.invalid> >>>> wrote: >>>> >>>>> On 26-Mar-22 11:32 am, John Larkin wrote: >>>>>> On Sat, 26 Mar 2022 10:52:34 +1100, Sylvia Else >>>>>> <sylvia@email.invalid> >>>>>> wrote: >>>>>> >>>>>>> https://www.farnell.com/datasheets/2353855.pdf >>>>>>> >>>>>>> I bought a few of these. I don't know what is intended by "digital >>>>>>> transistor" since the charge storage time defeats any attempt to use >>>>>>> them at a high frequency, and there's no way to add a Schottky >>>>>>> diode to >>>>>>> prevent saturation, or a speed-up capacitor across the base >>>>>>> resistor. >>>>>>> >>>>>>> I'm using this and the corresponding PNP type to do level >>>>>>> shifting of >>>>>>> both high and low levels (*). At 25 kHz it's OK, albeit with a >>>>>>> significant change in duty cycle, and is adequate for my purpose, >>>>>>> but I >>>>>>> wouldn't want to push it much higher. >>>>>>> >>>>>>> I suppose the lack of description of the switching characteristics >>>>>>> should have been a give-away. >>>>>>> >>>>>>> Sylvia. >>>>>>> >>>>>>> (*) Whether I needed to do that is a different discussion. >>>>>> >>>>>> The idea was to drive them from TTL without a base resistor. I >>>>>> suppose >>>>>> some people liked not having to do the required higher-level math. >>>>>> >>>>>> Logic-level mosfets made these mostly obsolete. FDV301 costs us 3 >>>>>> cents. >>>>> >>>>> LTSpice shows me 0.7V of undershoot when driving it with 3V pulses, >>>>> 10ns >>>>> rise time, using Onsemi's model, and 10K load resistor. >>>>> >>>>> https://www.onsemi.com/design/resources/design-resources/models?rpn=FDV301N >>>>> >>>>> >>>>> Limiting that with a Schottky diode then gives me 22 mA spikes through >>>>> the diode. >>>>> >>>>> Taming it with a 1K gate resistor helps, at the expense of slowing the >>>>> output, but now we're back to needing an extra component. >>>>> >>>>> Not that such spikes always matter. >>>>> >>>>> Sylvia. >>>> >>>> 10K load implies very low current, so if you want less spikes you'd >>>> need a part witn low Cg-d, namely a wimpier smaller-geometry device. >>>> >>>> An open-drain cmos gate might work, for whatever you are doing. >>>> >>>> Got a schematic? >>>> >>>> >>>> >>> >>> Below is my LTSpice version of the bit of the circuit concerned, to >>> change levels up and down. >>> >>> The actual version implemented using the digital transistors performs >>> fairly closely to the simulation. As I've said, it's sufficient for my >>> requirements. >>> >>> I originally used a digital isolator but I've already destroyed two, one >>> through carelessness, and one possibly through static discharge while >>> trying to understand why one channel was behaving oddly. They're rather >>> expensive to buy in excess of what is required in case they break. >> >> Interesting schematic style. >> >> You might accomplish the same function with a dual optoisolator or a >> dual opamp. >> >> >> >> > > The sim used 50:50 square waves, if the duty cycle is not too far from > that then the level shift could be reduced to just two capacitors or > even pulse transformers for a 1950s vibe :) > > piglet
I did look at a capacitive solution. But then one gets issues with overshoots/undershoots, especially during power up/down. So one adds diodes and resistors, and the component count goes up again. The solution using the digital transistors involves only four components per level change - two digital transistors and two additional resistors. Sylvia.
John Larkin <jlarkin@highland_atwork_technology.com> wrote:
... 
> Logic-level mosfets made these mostly obsolete. FDV301 costs us 3 > cents.
For interfacing woth uCs, the bipolar digital transisors are guaranteed off while a MOSFET requires a pulldown while the UC boots -- Uwe Bonnes bon@elektron.ikp.physik.tu-darmstadt.de Institut fuer Kernphysik Schlossgartenstrasse 9 64289 Darmstadt --------- Tel. 06151 1623569 ------- Fax. 06151 1623305 ---------