Yes - No - Maybe? The goal is to completely step away from the normal binary system and investigate alternative computing systems.
This project was created on 05/03/2014 and last updated a month ago.
Sad when life gets in the way of things, this summer has just been too busy to keep up with everything. Two jobs and a family among other things that take priority ^^. I will continue working on these projects as time and money permits and updating them here, but I guess I wont be in the next round for the hackaday prize. Thank you everyone for the skull :)
The project progress has been slow going. I am working a job and an internship right now. I have done a bit of experimentation with getting an adder implemented and have met with several issues. The totals if I added the numbers are different depending on which input I use for each number. With the hackaday prize deadline fast approaching and lack of components I may have to call this one for now and complete it at a later date when I can afford to get the proper parts shipped to Alaska.
Quick snapshot of the breadboard right now.... I am playing with different ways of manipulating the voltage, in this case it is a basic "voltage divider" setup just to see if I can solve part of my input issue with addition.
The little circuit board at the top is an opamp "virtual ground" to split the 5 volt source that I am working with. The 6 switches let me input the voltage I want into each input, in this case -2.5v, 0v, +2.5v.
In other news:
I have been toying with another project idea and posted it at http://hackaday.io/project/1905-Toner%2FLaser-3D-Printer
Sorry I haven't posted much lately, just been busy ^^
I have already ordered some components to do a first build, still waiting on 1 more shipment to arrive. Until then, I have been working on different setups for building a functioning ALU. However, I am keeping logs and plan on releasing everything right here, including my thought processes. Even when things are wrong I have been including it. Its a great way to learn from mistakes and documents the entire project.
Also, I love the meaningful feedback people have! It leads me down even more rabbit holes. I plan to get some photos up and maybe even some video of the ALU when the time comes.
Thanks everyone for supporting me in this project :D
What's old is new again! Thanks for entering your ternary computer in The Hackaday Prize. It's an ambitious project, But I think you're on the right track by looking at it both at the transistor level and from the FPGA side. Keep those notebook images coming, documenting is a big part of winning!
http://tunguska.sourceforge.net/ this is a ternary VM/emulator, has assembly demos and a manual of all mnemonics included. It has some examples which are using the GUI of the emulator, so graphics is possible too. I found this "at random" while looking for some info about the Setun.
This has to have a lot of applications and advantages. I hope you win and publicize this; raising interest in non standard technologies. There are other logic systems, but binary is the hammer and nail of computing. Some types of data would hold together better with a trinary system; the same way so many physical assemblies use screws instead of nails.
There exists an esoteric language TriINTERCAL http://esolangs.org/wiki/TriINTERCAL, which is ternary. Maybe worth a look. Did you consider to develop an simulator for your ternary hardware? I wrote a virtual machine which executes wordcode written in assembly or in my own high level language N. So I have some experience developing virtual machines.
Weird, I just started to follow you on twitter yesterday, and now I see you featured on HaD !
I did a project a bit similar to yours long ago. Instead of using real logic gates, I used cheap µC that I programmed to act as the logic gates I needed. Did you think of using something like PIC12F1571 ? you can have 2 ADC for input, 1 DAC for output, and should be able to read analog input at 200 to 400kHz with 2 bits of precision.
Fun thing is that you could have some kind of serial protocol to re-configure the gates, a bit like FPGAs.
Digikey will send you 100 pieces for $45. No external oscillator needed.
1. The first part you want to try to build is an ALU. If you can construct an ALU, then try to construct a single byte of memory. The RAM is the hardest part in my experience (I have tried something like this before with limited success, I found an inelegant solution to RAM). From there instead of trying to design your own processor, it might be prudent to try to make a ternary equivalent of an existing antiquated processor such as the Intel 4004, doing this will save you time debugging the design of the processor and will allow you to focus on the ternary component of the project. Look up the Wikipedia page on the 4004 for a usable schematic. Basically, anything real-time processing related will be simple in the scheme of things; storage of data is where problems (in my experience) arrive. As this is not a commercial project, I see no issue in doing this.
2. It was unclear from reading it as to whether or not you are doing balanced or unbalanced ternary. I noticed you mentioned considering both, however the outcome of that consideration was unclear to me (I may have overlooked it). I noticed your books show unbalanced, but your captions said balanced.
I recommend also weighing the pro's and con's of using analog circuitry vs digital circuitry vs a mixed approach.
Finally, for a project of this magnitude, you may want to rethink your budget.
Good luck, I hope you are more successful in this than I was!
While the actual schematics are probably lost for Setun (I too have been looking for them), there are descriptions of it here: http://mason.gmu.edu/~drine/History-of-Ternary-Computers.htm
and here: http://www.computer-museum.ru/english/setun.htm
Thanks! I have been doing a lot of thinking about how to get this done, and the reason I my books look different than the voltages is that I am basically using a balanced system but using that to represent a nonbalanced system XD
Also, I am a university student, so my budget isnt really my own choice ^^ I am waiting on some more components to get the job done. I have some ideas for a basic memory system and have been working on constructing a decent adder and subtraction circuit.
A cool idea. I'm really interested to see how you do this. Countless times I have daydreamed about this very idea, even writing silly ternary math programs for fun. If you are ever looking for a collaborator, let me know.
By the way, your logic table image is incorrect for "A or B". But looking at it makes me wonder about non-commutative logic... nevermind.
hehe, yeah I was looking at that myself. That is the kleene truth table. I was looking at coming up with my own, spent most of the day playing with numbers on what would be the most useful implementation for my purpose :)
I am currently waiting for components to arrive in the mail before I begin serious building and taking photos but I do have a circuit simulator that I have been using to design as much as I can design. I keep looking at exploiting some "side effects" of certain chips and effects to make it more efficient.
This is the project that has basically 100% of my interest right now. I know the CO2 laser one I posted gets a lot of traffic right now, but I hope this one does even better :) Keep hoping I am not the only one out there that is interested in this. I build things for myself, to see if I can do them. The same reason other people do crosswords.
If I need help with the design or want a collaboration I will keep you in mind! Thanks ^^