From: Jaap van Ganswijk To: William Borgen Subject: Re: Would like to know which CPU has the simplest/smallest instruction set. Just curious.... At 18:59 1997-07-17 -0700, William Borgen wrote: >Hi, >Love your website! just curious about which mass produced cpu on the >market has the smallest/simplest opcode set.... The MISC (Minimal Instruction Set Computing) processors should (by definition) have the smallest instruction set. (See on the ChipDir site or use a search engine. I can also send you the archive of the mailing list...) After that come probably some of the best (most regular) RISC processors, (like DEC's Alpha) but some 4-bitters may also be serious contenders. The transputer also has a fairly small instruction set. The very old 32008/32016/32032-series from NS was also very small and regular. That MISC processor is stack oriented, by the way. (It's a Forth language interpreting processor). So the Hobbit that never became a success may also be a good contender... 'The smallest opcode' is not a real criterium for anything, but 'simplest' is, at least for the programmer that very actively needs to memorize the instruction set if he has to program in assembler, but that is hardly done anymore (I hope for all those other poor programmers ;-), so more relevant is what instruction set is easiest for the compiler? And even that isn't the criterium anymore since the complexity of the compiler together with the complexity of the design should be considered and weighed against the performance of the software/hardware combination... Oops, stop me, it's one of my favorite subjects... ;-) NEW NEWS: Date: Sat, 01 Nov 1997 22:11:45 PST From: Sean Vincent To: MISC@pisa.rockefeller.edu Subject: intro I apologize if I'm barging in on discussions that I have no knowledge of . I subscribed to the MISC mailing list because I have a strong interest in a drive to make more efficient software instead of buying heftier hardware. Is anyone else here? Do I have to have a CS degree to follow along? ______________________________________________________ Get Your Private, Free Email at http://www.hotmail.com Date: Sun, 2 Nov 1997 23:26:04 +0100 (MET) From: Fare Rideau To: MISC@pisa.rockefeller.edu (MISC mailing list) Subject: Re: intro Dear Sean, dear MISCers, > I apologize if I'm barging in on discussions that I have no knowledge of > .. I subscribed to the MISC mailing list because I have a strong > interest in a drive to make more efficient software instead of buying > heftier hardware. Is anyone else here? Do I have to have a CS degree to > follow along? You might or not be interested in my Tunes project (see my .sig below). As in any domain, what counts most is motivation. Of course, though the degree itself is not much, something that DOES help is the fact of being able to freely study for several years in a proper environment, with a varsity library, insightful teachers, and fellow students. You sure CAN learn the same (and more) outside of such an environment, but it's harder and demands more motivation. As for MISC itself, I fear that people at iTV are overworked: they try to do too much with too small funds, i.e. developing a new chip design, a new micro-electronic implementation technology, a new OS, new language, new compilers, new libraries, new documentation, new interface, new everything. They're reinventing computing from almost scratch, with low-level tools and little resources (seems to me that they are far below the point where non-linearity effects prevent progress by spending more ressources, but I'm too far away to be sure). I hope they succeed, but it's too bad we can't see usable results at reach. [well, I admit the same happens to my Tunes project, too, though it tackles higher-level concerns :( However the fact that too little funds are invested in Tunes is much clearer: there are none] Best regards, == Faré -=- (FR) François-René Rideau -=- (VN) Уng-Vû Bân == Join a project for a free reflective computing system! | 6 rue Augustin Thierry TUNES is a Useful, Not Expedient System. | 75019 PARIS FRANCE http://www.eleves.ens.fr:8080/home/rideau/Tunes/ -=- Reflection&Cybernethics == Date: Mon, 03 Nov 1997 01:56:05 GMT From: Paul E. Bennett To: MISC@pisa.rockefeller.edu Subject: Re: intro Sean Vincent writes: > I apologize if I'm barging in on discussions that I have no knowledge of > . I subscribed to the MISC mailing list because I have a strong > interest in a drive to make more efficient software instead of buying > heftier hardware. Is anyone else here? Do I have to have a CS degree to > follow along? You're welcome Sean. We all have that interest and most of us are waiting to hear from Jeff Fox and company at Ultra Technology Inc. regarding the new F21 chip. I know that there is at least two more devices on the stocks out there and information about those is also awaited. My interests lie in processors for High Integrity Controllers. The Stack Computer concept seems most suitable for this. -- Paul E. Bennett Transport Control Technology Ltd. +44 (0)117-9499861 Going Forth Safely Date: Mon, 3 Nov 97 01:36:05 +0000 From: Luis To: Subject: Re: intro Yep, there is life out here! Thing is I got some postings when I subscribed, but they seem to have died down to zero all of a sudden! Luis. Date: Tue, 04 Nov 1997 04:53:01 +1000 From: Wayne Morellini Organization: Monash University Student Network To: misc@pisa.rockefeller.edu Subject: Re: intro > Date sent: Sun, 2 Nov 1997 23:26:04 +0100 (MET) > From: Fare Rideau > To: Sean Vincent > Copies to: MISC (MISC mailing list) > Subject: Re: intro > Dear Sean, dear MISCers, > > > I apologize if I'm barging in on discussions that I have no knowledge o= > f > > .. I subscribed to the MISC mailing list because I have a strong > > interest in a drive to make more efficient software instead of buying > > heftier hardware. Is anyone else here? Do I have to have a CS degree t= > o > > follow along? > You might or not be interested in my Tunes project (see my .sig below). > > As in any domain, what counts most is motivation. > Of course, though the degree itself is not much, > something that DOES help is the fact of being able to freely study > for several years in a proper environment, > with a varsity library, insightful teachers, and fellow students. > You sure CAN learn the same (and more) outside of such an environment, > but it's harder and demands more motivation. A funny thing a freind of mine who is a high up in the IT department of my last uni said. It went something lie this, that while a person with the experience can do the job people with degrees tend to think beyond the job and can progress further. He himself was recruited back in the late 70's from senior yaer at high school to meet a shortage. He has done well and is very proficent and respected in his job but he definitly does see the advantage of degrees in the computer feild at least. One explanation is that doing the formalised heavy study required expands your minds potential, another is that it shows you new ideas and teachs you how to think differently towards the greater horizon. I found that I seem to be able to take things on board much better myself, and I had the ability to think about broader ideas anyway. Now beleive it or not I probably would get greater pleasure writing novels, but that doesn't pay the bills. > > As for MISC itself, I fear that people at iTV are overworked: > they try to do too much with too small funds, i.e. developing > a new chip design, a new micro-electronic implementation technology, > a new OS, new language, new compilers, new libraries, new documentation, > new interface, new everything. They're reinventing computing from almost > scratch, with low-level tools and little resources (seems to me > that they are far below the point where non-linearity effects prevent > progress by spending more ressources, but I'm too far away to be sure). > I hope they succeed, but it's too bad we can't see usable results at reac= > h. Good to here they are doing that. Wayne. ------------------------------------------------------------------------ Wayne Morellini Former Post Graduate Student Representative. Rusden Campus, Deakin University, Vic, Australia. GradDip Media Studies (Current), Bach InfoTech (Distinction) & AD Business (Computing). ------------------------------------------------------------------------ Date: Wed, 05 Nov 1997 11:00:12 +1000 From: Wayne Morellini Organization: Monash University Student Network To: misc@pisa.rockefeller.edu Subject: Re: intro > Date: Tue, 04 Nov 1997 04:53:01 +1000 > From: Wayne Morellini > To: misc > Subject: Re: intro And (never start a sentence with and :) my apologies for the early morning spelling grammar mistakes. I shall now pay more attention to my next to useless email spell checker. Wayne Date: Mon, 3 Nov 1997 14:53:19 -0400 From: KC5TJA To: Sean Vincent cc: MISC@pisa.rockefeller.edu Subject: Re: intro > . I subscribed to the MISC mailing list because I have a strong > interest in a drive to make more efficient software instead of buying > heftier hardware. Is anyone else here? Do I have to have a CS degree to > follow along? I don't think you need a CS degree. If that's the case, I'm in the wrong list!! :D I don't know about anyone else here, but I enjoy making my own CPUs. In other words, I enjoy making my own processors from discrete TTL chips. But I've no degrees of any kind. And believe me, stack CPUs are the best kind to make for home-brewing. Not only is it fun, but you get a lot of educational experience from it as well. Anybody else share the hobby of building home-made processors? > From: Dan C. Rinnert To: kc5tja Cc: MISC@pisa.rockefeller.edu Subject: Re: Re: intro Date: 14 Nov 1997 23:05:27 GMT Organization: Canville Virtual Village KC5TJA writes: >Anybody else share the hobby of building home-made processors? That's something I'm interested in. Any tips for beginners? Date: Fri, 14 Nov 1997 17:43:19 -0800 (PST) From: KC5TJA To: Dan C. Rinnert cc: MISC@pisa.rockefeller.edu Subject: Re: Re: intro On 14 Nov 1997, Dan C. Rinnert wrote: > KC5TJA writes: > >Anybody else share the hobby of building home-made processors? > > That's something I'm interested in. Any tips for beginners? Yes. 1) ALWAYS have a clean distinction between functional units in your CPU. Design your CPU as you'd design a Forth program -- always abstracting. Unlike analog electronics, digital circuits make this quite easy. 2) ALWAYS keep timing parameters in mind. I can't tell you how difficult it was to get my first 4-bit execution unit running... 3) ALWAYS treat the CPU as if it were a PERIPHERAL on the bus, not the bus-master proper. This means the CPU will use an external bus arbiter, but that's OK -- it makes for better bus design anyway. 4) The CPU *ALWAYS* has the least bus priority anywhere. Otherwise, things like sound peripherals and video peripherals would loose all of their data streams before they could refresh themselves. 5) KISS. Don't strive for too much too fast. My first CPU was a 4 bit unit that could only address 128 bytes of RAM (256x4), and had eight instructions (load/store accumulator, display accumulator, hide display, increment accumulator, decrement accumulator, jump if zero, and no operation). Theoretically, my first CPU was Turing complete, but with only 256 addressable nybbles, it didn't do too much... :) 6) RE-USE EXISTING DESIGNS. If the bus arbiter for the 4-bit architecture worked like a dream, then use the same technology for the 8-bit and 16-bit CPUs you build!! :) 7) DOCUMENTATION, DOCUMENTATION, DOCUMENTATION. I'm literally kicking myself everyday because I never recorded my results when I built my 4 and 8 bit units. I wish I had, because then I could write to magazine articles on the subject. I even pondered the concept of a GNU Processor Architecture, of a freely redistributable and GNU copylefted processor architecture design. Unfortunately, with me having so little time, it never took off. ============================================================================= "Tongue Tied and Twisted, Just an Earthbound Misfit..." - Pink Floyd Long live the AMIGA!! HAM Radio: KC5TJA/6, Tech +, 146.730MHz http://www3.axisinternet.com/~kc5tja Grid Square DM13 Project Leader: Dolphin Operating System (mailing list: ddg@axisinternet.com) PGP block temporarily unavailable... Another is coming soon. Date: Fri, 14 Nov 1997 22:53:33 -0500 (EST) From: Ales Hvezda To: MISC@pisa.rockefeller.edu Subject: Homebuilt processors Hi All, >>>Anybody else share the hobby of building home-made processors? >>That's something I'm interested in. Any tips for beginners? Yup I'm into homebrew as well. See http://www.cybercom.net/~ahvezda/hardware/ for some (hopefully) useful stuff related to homebrew. kc5tja had some good tips; here's some of my comments. > 1) ALWAYS have a clean distinction between functional units in your CPU. > Design your CPU as you'd design a Forth program -- always abstracting. > Unlike analog electronics, digital circuits make this quite easy. Critical! Since once you get several functional units on the same board debugging is a whole lot easier if you can debug each one without too many interdependencies between them. Granted you can't necessarily achieve total isolation of functional units, but by starting with a "known working part" and build upon each incremental checkout (or test), eventually you will (hopefully) end up with a totally working processor. > 2) ALWAYS keep timing parameters in mind. I can't tell you how difficult > it was to get my first 4-bit execution unit running... I always sit down before I even touch any hardware and run through all the various data/control paths (especially the critical paths: the longest paths) just to make sure I'm not violating any setup, hold, or other timing parameters. > 3) ALWAYS treat the CPU as if it were a PERIPHERAL on the bus, not the > bus-master proper. This means the CPU will use an external bus arbiter, > but that's OK -- it makes for better bus design anyway. > 4) The CPU *ALWAYS* has the least bus priority anywhere. Otherwise, > things like sound peripherals and video peripherals would loose all of > their data streams before they could refresh themselves. Agreed. > 5) KISS. Don't strive for too much too fast. My first CPU was a 4 bit > unit that could only address 128 bytes of RAM (256x4), and had eight > instructions (load/store accumulator, display accumulator, hide display, > increment accumulator, decrement accumulator, jump if zero, and no > operation). Theoretically, my first CPU was Turing complete, but with > only 256 addressable nybbles, it didn't do too much... :) Ah my favorite concept, KISS. Don't try to overdue the processor. It's a whole lot easier to debug a simple straightforward processor that a processor that's loaded with nasty complexities. Especially if it's your first time (that is homebrewing :-) My first CPU had an 8 bits data bus with a 16 bit address bus. Check out Brad Rodriguez's "A Minimal TTL Processor for Architecture Exploration" paper for an idea for what is pretty close to KISS. http://www.forth.org/fig/piscedu2.html Also related, don't try to make the first try run too fast. My first CPU ran at 2.5 MHz with some of the control paths running at 5 MHz. This was plenty fast for me and I probably could have run my CPU faster. I plan to run my next processor at the same rate initially but this time I plan to increase the rate to the max that my control/data paths allow. > 6) RE-USE EXISTING DESIGNS. If the bus arbiter for the 4-bit architecture > worked like a dream, then use the same technology for the 8-bit and 16-bit > CPUs you build!! :) Yup. Gives you a warm fuzzy feeling knowing that that arbitrator is a known design and will work as you expect it. You can spend less time worrying about it and spend that time worrying about the other new units. > 7) DOCUMENTATION, DOCUMENTATION, DOCUMENTATION. I'm literally kicking > myself everyday because I never recorded my results when I built my 4 and > 8 bit units. I wish I had, because then I could write to magazine > articles on the subject. Ah another really important point! I was forced to write documentation on my first homebrew (did it as school project), and I still have all of it. I am constantly looking at it seeing how I did something or another. Keep all documentation. I kept everything, including the source to the various incremental microcode tests. Now I document everything I do; I keep everything related to a project in a big three ring binder. > I even pondered the concept of a GNU Processor Architecture, of a freely > redistributable and GNU copylefted processor architecture design. > Unfortunately, with me having so little time, it never took off. I've pondered this as well ( even though I probably wouldn't release it under GNU, probably something a bit more like BSD ) Fortunately I do have the time :-), so I am continuing to explore this idea with the next generation of my CPUs; which has been on the drawing board for sometime, since I keep realizing the mistakes I made on previous projects, and redefining what I hope to achieve. Hope to have something finalized by this December (that's a hard deadline for me.) There is a mailing list about homebrew processors (which I archive the articles for) which has totally died down in traffic, so if you want to discuss homebrew more, see my web page for more details (http://www.cybercom.net/~ahvezda/hardware/hotwired.html) Gee I hope that list is still up. Anyway enough of my rambling. -Ales -- v v Ales V. Hvezda http://www.cybercom.net/~ahvezda Date: Fri, 14 Nov 1997 23:59:48 -0400 From: Kragen "Skewed" Sitaker To: KC5TJA cc: misc@pisa.rockefeller.edu Subject: Re: Re: intro On Fri, 14 Nov 1997, KC5TJA wrote: > I even pondered the concept of a GNU Processor Architecture, of a freely > redistributable and GNU copylefted processor architecture design. > Unfortunately, with me having so little time, it never took off. One of the reasons I use gcc, Linux, etc., is that I don't have to build them. I might have to ask the computer to build them, but I don't have to construct them by hand myself. Software is funny that way. Once you have a complete design for a program, you can run it, and so can everyone else. The only 'manufacturing' effort is copying bytes one after another from disk into memory or vice versa. I don't think I would really want to build my own processor, except for fun. On the other hand, there are some very interesting projects in the research phase right now. Printing circuits with standard laser printers on 8 1/2 by 11 inch pieces of glass film, then coating with plastic semiconductor material -- in the prototype phase. Small machines capable of assembling other small machines atom by atom -- in the wild theory stage. Industrial robots capable of machining their own parts -- common practice in machine shops. If these become common enough, we *can* have a GNU processor architecture. Then we just need to loosen intellectual-property restrictions enough that it's legal for people other than Intel to make CPUs. Kragen From: Dan C. Rinnert To: misc@pisa.rockefeller.edu Subject: Re: Re: Re: intro Date: 16 Nov 1997 21:40:58 GMT Organization: Canville Virtual Village Kragen "Skewed" Sitaker writes: >If these become common enough, we *can* have a GNU processor architecture. >Then we just need to loosen intellectual-property restrictions enough that >it's legal for people other than Intel to make CPUs. I'm not sure I follow what you're saying. It *is* legal for people other than Intel to make CPUs. AMD, Cyrix, IBM and Motorola are among the non-Intel alternatives. And, in my experience, the non-Intel CPUs are often the better ones. Date: Sun, 16 Nov 1997 16:08:28 -0800 (PST) From: KC5TJA To: Dan C. Rinnert cc: misc@pisa.rockefeller.edu Subject: Re: Re: Re: intro > I'm not sure I follow what you're saying. It *is* legal for people other > than Intel to make CPUs. AMD, Cyrix, IBM and Motorola are among the > non-Intel alternatives. And, in my experience, the non-Intel CPUs are often > the better ones. The problem is, the whole concept of a "cpu" is patented under U.S. Law. I'm not sure what the patent number is, but I know that both Intel and motorola got socked big-time, having to back-pay the patentee. I'm not sure when the patent was placed into effect; but the patent should be released shortly; patents only last 17 years, then the idea is placed in the public domain... :) ============================================================================= "Tongue Tied and Twisted, Just an Earthbound Misfit..." - Pink Floyd Long live the AMIGA!! HAM Radio: KC5TJA/6, Tech +, 146.730MHz http://www3.axisinternet.com/~kc5tja Grid Square DM13 Project Leader: Dolphin Operating System (mailing list: ddg@axisinternet.com) PGP block temporarily unavailable... Another is coming soon. From: Dan C. Rinnert To: misc@pisa.rockefeller.edu Subject: Building it... & MISC Date: 17 Nov 1997 01:30:14 GMT Organization: Canville Virtual Village My last question brought to mind a new question, how are y'all housing your homebuilt projects? Are they simply on exposed PCBs, or have you built/bought cases to put them in? Other than building the processors for the fun of it, are you putting them to use in any way? What peripherals do you have? Hard drive, keyboard, LCD or monitor, floppy drive, etc.? Did you buy those, or fabricate your own? And, back on the sybject of MISC , does the concept of MISC extend beyond the processor? In other words, in a MISC world, would individual computers perform only minimal tasks, like computer A would perform word processing and computer B perform communications functions? And, computer A & B would network to transmit information? This is an extremely simplified example, but I hope it conveys my conceptual question. Date: 17 Nov 1997 01:12:59 GMT From: Dan C. Rinnert Organization: Canville Virtual Village To: misc@pisa.rockefeller.edu Subject: Re: Re: Re: Re: intro KC5TJA writes: >The problem is, the whole concept of a "cpu" is patented under U.S. Law. Okay, I understand now. So, all the CPU homebrewers are federal law breakers, eh? Date: Sun, 16 Nov 1997 23:47:03 -0500 (EST) From: Penio Penev cc: misc@pisa.rockefeller.edu Subject: Re: Re: Re: intro To: MISC@pisa.rockefeller.edu On Sun, 16 Nov 1997, KC5TJA wrote: > The problem is, the whole concept of a "cpu" is patented under U.S. Law. When dealing with the law, one should be extremely careful, since the wording matters a lot. It is generally best if one consulted with a lawyer before making judgments as to what the law is. Short of that, the law is on the web, and the patent law is pretty straightforward. A good starting point is www.uspto.gov, as well as patent.womplex.ibm.com . > I'm not sure when the patent was placed into effect; but the patent should > be released shortly; patents only last 17 years, then the idea is placed > in the public domain... :) Under U.S. Law, I've been told, neither a "concept" , nor an "idea" is patentable. What is patentable is a pretty well described in the law itself and it takes less than half an hour to familiarize oneself with that. I truly hope that this forum will non become a substitute for soc.culture.us.law.intellectual-property. though :-) -- Penio Penev 1-212-327-7423 Date: Sun, 16 Nov 1997 23:49:38 -0500 (EST) From: Penio Penev cc: misc@pisa.rockefeller.edu Subject: Re: Building it... & MISC To: MISC@pisa.rockefeller.edu On 17 Nov 1997, Dan C. Rinnert wrote: > And, back on the sybject of MISC , does the concept of MISC extend beyond > the processor? In other words, in a MISC world, would individual computers > perform only minimal tasks, like computer A would perform word processing and > computer B perform communications functions? And, computer A & B would > network to transmit information? This is an extremely simplified example, > but I hope it conveys my conceptual question. No. MISC is a minimal *instruction* set, meaning that it is the minimal set of instructions to build a *general purpose* computer. -- Penio Penev From: Sean Vincent To: MISC@pisa.rockefeller.edu Subject: Fwd: Re: Re: Re: intro Date: Sun, 16 Nov 1997 21:58:44 PST >> The problem is, the whole concept of a "cpu" is patented under U.S. Law. Home brew is not considered patent infringement. Educational and not-for-profit activity usually falls under acceptable use. You have to start making money from someone's patented invention before they will want to sue you. It's civil law, not criminal law. The closest comparison is real estate. If you start growing and selling tomatoes on your neighbor's front lawn, you should pay him a portion of your profits or expect him to sue you. > >When dealing with the law, one should be extremely careful, since the >wording matters a lot. It is generally best if one consulted with a lawyer >before making judgments as to what the law is. If you have what you think may be a patentable invention, find a good patent lawyer. If you are just curious, you don't want to have to pay a retainer. > >Short of that, the law is on the web, and the patent law is pretty >straightforward. A good starting point is www.uspto.gov, as well as >patent.womplex.ibm.com . Good idea. If anyone is interested, I'll email them URL's with lots of helpful info. > >> I'm not sure when the patent was placed into effect; but the patent should >> be released shortly; patents only last 17 years, then the idea is placed >> in the public domain... :) yep. unless it was filed after june 1995. in that case, it would have a term of 20 years starting with the date of filing. Patents are useless, however, if the owner stops paying the maintenence fees. > >Under U.S. Law, I've been told, neither a "concept" , nor an "idea" is >patentable. What is patentable is a pretty well described in the law >itself and it takes less than half an hour to familiarize oneself with >that. Ideas are inventions. Some inventions are patentable. Usually manipulative methods, compositions of matter and machines are the only inventions which can be patented. > >I truly hope that this forum will non become a substitute for >soc.culture.us.law.intellectual-property. though :-) > I agree. I Let's talk more about creating circuits with laser printers. Date: Mon, 17 Nov 1997 11:00:14 -0800 (PST) From: KC5TJA To: Dan C. Rinnert cc: misc@pisa.rockefeller.edu Subject: Re: Re: Re: Re: intro On 17 Nov 1997, Dan C. Rinnert wrote: > KC5TJA writes: > >The problem is, the whole concept of a "cpu" is patented under U.S. Law. > > Okay, I understand now. > > So, all the CPU homebrewers are federal law breakers, eh? Only if you sell them, or otherwise make them publicly available to the community. I don't believe the patent discusses homebrew processors... :) ============================================================================= "Tongue Tied and Twisted, Just an Earthbound Misfit..." - Pink Floyd Long live the AMIGA!! HAM Radio: KC5TJA/6, Tech +, 146.730MHz http://www3.axisinternet.com/~kc5tja Grid Square DM13 Project Leader: Dolphin Operating System (mailing list: ddg@axisinternet.com) PGP block temporarily unavailable... Another is coming soon. Date: Mon, 17 Nov 1997 10:57:05 -0800 (PST) From: KC5TJA To: Dan C. Rinnert cc: misc@pisa.rockefeller.edu Subject: Re: Building it... & MISC On 17 Nov 1997, Dan C. Rinnert wrote: > My last question brought to mind a new question, how are y'all housing your > homebuilt projects? Are they simply on exposed PCBs, or have you > built/bought cases to put them in? Other than building the processors for > the fun of it, are you putting them to use in any way? What peripherals do > you have? Hard drive, keyboard, LCD or monitor, floppy drive, etc.? Did you > buy those, or fabricate your own? My first two processors were a 4-bit and 8-bit unit respectively. The former could address 256 nybbles of memory, and the latter could address 4096 bytes. The 4 bit unit WAS upward compatible with the eight bit unit, if you had an 'expanding' loader (that is, a loader that unpacked nybbles into separate bytes). The four-bit processor had the following instruction set: 0 NOP 1 LDA $nn ; Load A from memory location $nn 2 STA $nn ; Store A to memory location $nn 3 JAZ $nn ; Jump if A is zero 4 INC ; Increment A 5 DEC ; Decrement A 6 DSP ; Display A on the CPU's internal LEDs 7 CLR ; Clear the CPU's internal LEDs 8-F --- ; unused. The eight-bit CPU had exactly the same instruction set, with the following additions: Bit 7 of each opcode was unused, and always set to zero. Bit 6-4 of each opcode specified WHICH accumulator to use. Capable of addressing up to eight 8-bit accumulators, I only implemented four, as that's all the hardware I had at the time. Bits 3-0 of each opcode are as above. Addresses for jumps were expanded to two bytes, with the intention of addressing 64K of memory; however, hardware and cost limitations limitted me to only 12 bits of address space. As you can tell by the above descriptions, the hardware for the execution unit and bus arbiters weren't all that complicated. For this reason, I didn't package my CPU at all -- it simply sat out in the open, a massive entanglement of wires and Radio Shack expandable breadboards, all ultimately connected to a single 12V power supply, with a 5V voltage regulator on it... :) My plans for my 16-bit stack architecture CPU, however, is a radical departure from the previous CPUs I've built. About the only thing that's common between architectures is the bus arbiter. The 4/8-bit units were designed soley to see if I could do it, and if so, see if I could write anything useful with them. The 16-bit architecture, however, I want to actually USE. My first set of applications will likely be a port of my Dolphin operating system (as a proof of portability), and thereafter, I want to experiment with the applications of wavelet analysis to RF signals. My plans for the 16-bit unit include: 64K address space per process, 16MB of virtual address space, and 256K of physical address space. Page tables will be placed in registers, maintained by software, not hardware. This will also be the first CPU I've built that will handle interrupts. 16-bit instruction set, 16-bit cell width, 8-bit character width. Memory-mapped I/O space. User and Supervisor modes to help support multitasking and protection. All stacks placed in RAM to help with context switch delays. ============================================================================= "Tongue Tied and Twisted, Just an Earthbound Misfit..." - Pink Floyd Long live the AMIGA!! HAM Radio: KC5TJA/6, Tech +, 146.730MHz http://www3.axisinternet.com/~kc5tja Grid Square DM13 Project Leader: Dolphin Operating System (mailing list: ddg@axisinternet.com) PGP block temporarily unavailable... Another is coming soon. Date: Mon, 17 Nov 1997 11:30:20 -0800 (PST) From: KC5TJA To: Sean Vincent cc: MISC@pisa.rockefeller.edu Subject: Re: Fwd: Re: Re: Re: intro > >> be released shortly; patents only last 17 years, then the idea is > placed > >> in the public domain... :) > > yep. unless it was filed after june 1995. in that case, it would have > a term of 20 years starting with the date of filing. Patents are > useless, however, if the owner stops paying the maintenence fees. I believe the patent was filed before 1994; in fact, long before 1994. It was described in an IEEE Spectrum(??) magazine, in a biography of the REAL inventor of the CPU (Ted Hoff I believe his name was), who worked at Intel at the time. "It was such an obvious design," I remember the quote, "I didn't think of patenting it." Whoops. But then again, perhaps it is a GOOD thing that Intel doesn't have the patent.. :) > I agree. I Let's talk more about creating circuits with laser printers. And homebrewing your own stack-based CPUs... :) But I guess there's a dedicated mailing list for that, so perhaps I should join that list too? :) ============================================================================= "Tongue Tied and Twisted, Just an Earthbound Misfit..." - Pink Floyd Long live the AMIGA!! HAM Radio: KC5TJA/6, Tech +, 146.730MHz http://www3.axisinternet.com/~kc5tja Grid Square DM13 Project Leader: Dolphin Operating System (mailing list: ddg@axisinternet.com) PGP block temporarily unavailable... Another is coming soon.