Ternary computer

A project log for Trixy

A ternary computer.

alice  crushalice crush 10/12/2020 at 17:512 Comments

But what will it be made from?  Relays, dg 403's, or more basic parts, like transitors and diodes... I'm leaning towards relays, but then I saw another project here building from diodes and transitors.  Hmm first design decision...


Yann Guidon / YGDES wrote 10/24/2020 at 16:02 point

As you're shopping around for ideas, techniques, tricks and perspective, I believe it's a good idea to use your first log to collect the questions and answers that arise. Logs and comments are great for that :-)

Did you see my first relay explorations at #SPDT16: 16-bits arithmetic unit with relays  ? It was a first failure for me, and you'll save a lot of time/money/efforts by reading it :-)

For example : "know your relays" and all the electrical characteristics. In the case of the RES15, the alluring point was that it used a very low voltage, but this greatly increases the current so one relay output can only drive 2 parallel relay coils, limiting the "fanout". Typical relays have a much higher fanout so I had to adapt my approach and find new topologies.

For example this forces me to use multiple higher voltage rails and put the relay coils in series, which also complicates the design. But that's the great advantage of relays : the coil is isolated from the switch and can float or be reversed, you can get creative ! Transistors have only 3 pins and are forced to use a common reference rail for input and output, which strongly favors binary systems.

More sensitive relay types exist, called "reed relays" but they have a significantly lower output current handling and are mostly in SPST configuration, which also adds topological constraints.

From the logic design perspective, the hierarchy is :

* SPST : limited use, stay away unless you can't do otherwise.
* SPDT : less cumbersome than SPST but still needs tricks to be efficient in many cases
* DPDT : here we're talking :-)

Konrad Zuse used to hack his own relays, scrapped from telephone exchanges, and some of them had "many" contacts, which greatly simplified his designs. Almost a century later, we're using cheap mass-produced parts that are less flexible so we must invent new tricks.

Due to the stock I have, I use SPDT for most of the design, but I sprinkle SPST reed relays where I need low power and sensitivity (such as the register set of #YGREC8 ), and DPDT where it's too hard or too complex to use 2 SPDT in parallel. One such example is the ALU where the whole chain of XOR can be performed efficiently in DPDT.

If you want to build a computer, whatever the technology, you'll also need to be very familiar not only with the architecture, but also with each type of circuit that you'll need, and how to most efficiently implement all of them in the technology of your choice, which in turn could influence your architecture.

I know many examples of #Relay-based projects  and some ternary projects, but I am not sure I've yet seen a ternary relay computer. It's going to be quite an endeavour and the chances of succeeding are slim, which makes your project even more interesting and valuable !

Shoot for the stars, you'll always learn and do something :-)

  Are you sure? yes | no

Yann Guidon / YGDES wrote 10/22/2020 at 04:47 point

I could say : it depends on what you want that circuit to do. What is its purpose. Should it be Turing complete ? How fast ? Do you consider an instruction set ? What are you most familiar with ?
What sort of signaling will you use ? 3-level signals (like -5V/0V/5V) or use a "floating" level for the 3rd level (0/Z/1) ?
And since pretty much all electronic components (relays, transistors...) are bistable (on/off), what benefits do you expect from ternary logic, if you have to code one signal with 2 wires ?

Will you test the basic principles with a scaled-down circuit, such as a clock or a simple basic counter ?

Questions, questions, questions...

  Are you sure? yes | no