Close

First log: a minimal parts count shift register !

A project log for Bipolar Discrete UART

Because making discrete clocks is not an end in itself.

yann-guidon-ygdesYann Guidon / YGDES 02/09/2020 at 22:490 Comments

It all starts with this circuit :

The goal is to make a shift register that works at about 115200 bps (hopefully) for receive and send, with one receive and send buffer, with the minimal count of transistors. The above circuit is the basis, the building block for the rest. I don't think a sophisticated and optimised structure would make sense, so I'll focus on a single module with 3 "SCR-style" latches, a pair for the shift register and the third for the in\out buffer (depending on the configuration).

The source code for Falstad is pretty long, sorry...
$ 1 1e-9 0.9487735836358526 60 5 43
d 768 288 672 288 2 1N4148
w 880 0 816 0 1
w 800 288 800 304 0
t 768 320 800 320 1 1 0.5898352006989318 0.5895778354142961 100
r 752 208 752 256 0 2200
t 896 320 928 320 0 1 0.603203789466672 0.6297696664295094 100
t 912 80 880 80 0 -1 -0.5878533226791691 -0.6294666250239822 100
r 880 336 880 400 0 2200
r 928 16 928 80 0 2200
r 880 224 880 288 0 2200
r 928 224 928 288 0 2200
w 928 96 928 224 1
w 928 0 928 16 1
w 880 0 928 0 0
w 880 0 880 32 1
w 928 80 928 96 2
w 928 80 912 80 0
w 928 336 928 432 1
w 928 432 880 432 0
w 880 320 880 288 2
w 880 400 880 432 1
w 928 288 928 304 2
w 896 320 880 320 0
w 880 320 880 336 0
w 880 96 880 112 2
w 880 336 800 336 1
w 880 112 880 128 1
R 816 0 784 0 0 0 40 3 0 0 0.5
w 752 272 752 256 3
w 768 320 752 320 0
w 1024 80 1008 80 1
r 1040 112 1040 160 0 2200
t 1040 112 1040 80 0 -1 0.04161325390746562 0.000009567860214332313 100
w 1056 80 1072 80 3
w 752 144 752 208 1
w 1040 208 1040 160 1
w 752 272 752 320 0
w 768 288 800 288 0
w 1040 208 752 208 0
w 1152 112 1152 80 0
w 1152 0 1200 0 0
d 1152 208 1152 288 2 default
t 1120 320 1152 320 0 1 -2.9986849584196444 6.600983002054078e-10 100
t 1136 112 1104 112 0 -1 2.999990370503179 -0.000009568036190898965 100
r 1104 336 1104 400 0 2200
r 1152 16 1152 80 0 2200
r 1104 208 1104 272 0 2200
r 1152 144 1152 208 0 2200
w 1152 128 1152 144 1
w 1152 0 1152 16 1
w 1104 0 1152 0 0
w 1104 0 1104 32 1
w 1152 112 1152 128 2
w 1152 112 1136 112 0
w 1152 336 1152 432 1
w 1152 432 1104 432 0
w 1104 400 1104 432 1
w 1152 288 1152 304 2
w 1120 320 1104 320 0
w 1104 320 1104 336 0
w 1104 128 1104 144 2
w 1104 272 1104 320 1
w 960 432 1104 432 0
w 928 0 1104 0 0
w 1040 208 1232 208 0
w 1104 32 1104 96 0
w 1152 80 1072 80 0
w 880 32 880 64 0
d 880 128 880 224 2 default
d 960 128 1008 128 2 default
w 1008 128 1008 80 0
w 960 128 880 128 0
g 1152 432 1152 464 0
d 1280 288 1232 288 2 1N4148
w 1152 432 1360 432 0
w 1280 288 1280 304 0
t 1248 320 1280 320 1 1 0.5898352012281517 0.5895776955139157 100
r 1232 208 1232 256 0 2200
t 1376 320 1408 320 0 1 0.6032038700972324 0.6297697242398047 100
t 1392 80 1360 80 0 -1 -0.5878533230430105 -0.6294666249949361 100
r 1360 336 1360 400 0 2200
r 1408 16 1408 80 0 2200
r 1360 224 1360 288 0 2200
r 1408 192 1408 288 0 2200
w 1408 96 1408 192 1
w 1408 0 1408 16 1
w 1360 0 1408 0 0
w 1360 0 1360 32 1
w 1408 80 1408 96 2
w 1408 80 1392 80 0
w 1408 336 1408 432 1
w 1408 432 1360 432 0
w 1360 320 1360 288 2
w 1360 400 1360 432 1
w 1408 288 1408 304 2
w 1376 320 1360 320 0
w 1360 320 1360 336 0
w 1360 96 1360 112 2
w 1360 336 1280 336 1
w 1360 112 1360 128 1
w 1232 272 1232 256 3
w 1248 320 1232 320 0
w 1504 80 1488 80 1
r 1520 112 1520 160 0 2200
t 1520 112 1520 80 0 -1 0.04161325351457945 0.00000956783734107347 100
w 1200 0 1360 0 0
w 1536 80 1552 80 3
w 1520 208 1520 160 1
w 1232 272 1232 320 0
w 1152 288 1200 288 0
w 1520 208 1232 208 0
w 1632 112 1632 80 0
d 1632 208 1632 288 2 default
t 1600 320 1632 320 0 1 -2.998684961523275 6.600340191111187e-10 100
t 1616 112 1584 112 0 -1 2.999990370526181 -0.000009568013317640123 100
r 1584 336 1584 400 0 2200
r 1632 16 1632 80 0 2200
r 1584 208 1584 272 0 2200
r 1632 144 1632 208 0 2200
w 1632 128 1632 144 1
w 1632 0 1632 16 1
w 1584 0 1632 0 0
w 1584 0 1584 32 1
w 1632 112 1632 128 2
w 1632 112 1616 112 0
w 1632 336 1632 432 1
w 1632 432 1584 432 0
w 1584 400 1584 432 1
w 1632 288 1632 304 2
w 1600 320 1584 320 0
w 1584 320 1584 336 0
w 1584 128 1584 144 2
w 1584 272 1584 320 1
w 1440 432 1584 432 0
w 1408 0 1584 0 0
w 1584 32 1584 96 0
w 1632 80 1552 80 0
w 1360 32 1360 64 0
d 1360 128 1360 224 2 default
d 1440 128 1488 128 2 default
w 1488 128 1488 80 0
w 1440 128 1360 128 0
w 1920 128 1840 128 0
w 1968 128 1968 80 0
d 1920 128 1968 128 2 default
d 1840 128 1840 224 2 default
w 1840 32 1840 64 0
w 2112 80 2032 80 0
w 2064 32 2064 96 0
w 1888 0 2064 0 0
w 1920 432 2064 432 0
w 2064 272 2064 320 1
w 2064 128 2064 144 2
w 2064 320 2064 336 0
w 2080 320 2064 320 0
w 2112 288 2112 304 2
w 2064 400 2064 432 1
w 2112 432 2064 432 0
w 2112 336 2112 432 1
w 2112 112 2096 112 0
w 2112 112 2112 128 2
w 2064 0 2064 32 1
w 2064 0 2112 0 0
w 2112 0 2112 16 1
w 2112 128 2112 144 1
r 2112 144 2112 208 0 2200
r 2064 208 2064 272 0 2200
r 2112 16 2112 80 0 2200
r 2064 336 2064 400 0 2200
t 2096 112 2064 112 0 -1 -0.5807702649105297 -0.6133934985529597 100
t 2080 320 2112 320 0 1 0.5798923315009195 0.6265696655175611 100
d 2112 208 2112 288 2 default
w 2112 112 2112 80 0
w 2000 208 1712 208 0
w 1680 288 1712 288 0
w 1712 272 1712 320 0
w 2000 208 2000 160 1
w 2016 80 2032 80 3
w 1680 0 1840 0 0
t 2000 112 2000 80 0 -1 0.041613283676598556 0.613393498374784 100
r 2000 112 2000 160 0 2200
w 1984 80 1968 80 1
w 1728 320 1712 320 0
w 1712 272 1712 256 3
w 1840 112 1840 128 1
w 1840 336 1760 336 1
w 1840 96 1840 112 2
w 1840 320 1840 336 0
w 1856 320 1840 320 0
w 1888 288 1888 304 2
w 1840 400 1840 432 1
w 1840 320 1840 288 2
w 1888 432 1840 432 0
w 1888 336 1888 432 1
w 1888 80 1872 80 0
w 1888 80 1888 96 2
w 1840 0 1840 32 1
w 1840 0 1888 0 0
w 1888 0 1888 16 1
w 1888 96 1888 224 1
r 1888 224 1888 288 0 2200
r 1840 224 1840 288 0 2200
r 1888 16 1888 80 0 2200
r 1840 336 1840 400 0 2200
t 1872 80 1840 80 0 -1 -0.587853323042955 -0.6294666249956018 100
t 1856 320 1888 320 0 1 0.6032038700972268 0.6297697242397984 100
r 1712 208 1712 256 0 2200
t 1728 320 1760 320 1 1 0.5898352012281516 0.5895776955139154 100
w 1760 288 1760 304 0
w 1632 432 1840 432 0
d 1760 288 1712 288 2 1N4148
w 1632 0 1680 0 0
w 1520 208 1712 208 0
162 960 128 960 240 2 default-led 1 0 0 0.01
r 960 240 960 432 0 1000
w 928 432 960 432 0
w 1408 432 1440 432 0
r 1440 240 1440 432 0 1000
162 1440 128 1440 240 2 default-led 1 0 0 0.01
w 1888 432 1920 432 0
r 1920 240 1920 432 0 1000
162 1920 128 1920 240 2 default-led 1 0 0 0.01
w 1200 288 1232 288 0
r 1200 0 1200 64 0 1000
162 1200 64 1200 288 2 default-led 1 0 0 0.01
162 1680 64 1680 288 2 default-led 1 0 0 0.01
r 1680 0 1680 64 0 1000
w 1632 288 1680 288 0
r 2160 0 2160 64 0 1000
162 2160 64 2160 288 2 default-led 1 0 0 0.01
w 2112 0 2160 0 0
w 2112 288 2160 288 0
w 2160 288 2160 480 0
w 2160 480 672 480 0
r 672 400 672 464 0 10000
t 672 384 704 384 0 1 -0.5833454879263659 0.04667733496586305 100
w 672 288 672 336 0
w 672 336 704 336 0
w 704 336 704 368 0
w 672 384 672 400 0
w 704 400 704 432 0
w 704 432 880 432 0
d 1584 144 1584 208 2 default
d 2064 144 2064 208 2 default
R 752 144 752 96 0 2 1000000 1.5 1.5 0 0.5
w 672 480 672 464 0
d 1104 144 1104 208 2 default
o 34 8 0 4355 5 0.003125 0 2 34 3
o 71 8 0 4355 5 0.003125 0 2 71 3
o 141 8 0 4355 5 0.003125 0 2 141 3
o 142 8 0 4355 5 0.003125 0 2 142 3

But it's good to have it for later use !

Discussions