6502.org Forum  Projects  Code  Documents  Tools  Forum
It is currently Fri Apr 26, 2024 8:27 pm

All times are UTC




Post new topic Reply to topic  [ 82 posts ]  Go to page 1, 2, 3, 4, 5, 6  Next
Author Message
 Post subject: Minimalistic CPU
PostPosted: Tue Feb 14, 2012 2:23 pm 
Offline
User avatar

Joined: Mon Aug 08, 2011 2:48 pm
Posts: 808
Location: Croatia
I would like to have a minimalistic cpu schematic with as few gates as possible and it should be inspired by the simplicity of the 6502. The cpu could be 4 bit, Harvard architecture. The idea is to make the cpu, so that it can be constructed with different technologies(mechanical, pneumatic or other exotic methods), or as virtual cores. Also the cpu should be made as fast as possible, and useful(oversimplifying may lead to extremely poor performances). I would appreciate any help with this.

Edit: It would be good if it would be a bit-slice cpu(it doesn't have to be).


Last edited by Dajgoro on Sun Jul 22, 2012 3:54 am, edited 1 time in total.

Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Tue Feb 14, 2012 5:19 pm 
Offline

Joined: Fri Jun 27, 2003 8:12 am
Posts: 618
Location: Meadowbrook
Look up the manual to the arcade game Star Castle. It is a 12 bit based on the PDP-11 and built up from TTL and has a good explanation of how it all works. Good starting point to play with...

_________________
"My biggest dream in life? Building black plywood Habitrails"


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Tue Feb 14, 2012 5:41 pm 
Offline
User avatar

Joined: Fri Aug 30, 2002 9:02 pm
Posts: 1681
Location: Sacramento, CA
here's another link:

http://www.bradrodriguez.com/papers/piscedu2.htm

its a 16 bit mpu but that could probably be reduced (or expanded) as needed. The schematic is linked at the bottom of the page.

Daryl


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Tue Feb 14, 2012 8:25 pm 
Offline
User avatar

Joined: Fri Aug 30, 2002 1:09 am
Posts: 8428
Location: Southern California
So do you want to make your own processor, or are you thinking of a CPU board and you put this in the "Programmable Logic" section because you expect that programmable logic is needed to minimize the glue logic and maybe I/O too?

As for getting the most processor power in the least number of gates in the processor itself, the best ratio seems to come from stack processors. Their assembly language is basically Forth. Book "Stack Computers: The New Wave" downloadable here. One I remember seeing the announcement for over 20 years ago from Silicon Composers, Inc, was the Harris RTX2000 which ran at 16-20MHz and did approximately one Forth instruction per cycle but with optimization in the compilation, could peak out at four instructions per cycle (burst only). I don't think it really took any significant pipelining or branch prediction etc. to achieve it. To get that kind of performance over 20 years ago was really screaming; yet it was a pretty simple processor. To get the same sustained performance from a 6502 running indirect-threaded Forth like I do would require well over a GHz. IIRC, interrupt latency was 4 clocks, and return from interrupt was zero clocks. I think the SC32 was kind of the bigger brother to the RTX2000, with wider buses.


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Wed Feb 15, 2012 2:13 pm 
Offline
User avatar

Joined: Mon Aug 08, 2011 2:48 pm
Posts: 808
Location: Croatia
Thanks for the tips, the cpu doesn't necessary have to be built from scratch. I placed this topic here, because i was expecting at some point to try to make it using programmable logic, or at least a part of it(i do have some 74LS181).
Also because a complete hdl core could be made.


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Wed Feb 15, 2012 8:16 pm 
Offline
User avatar

Joined: Fri Aug 30, 2002 1:09 am
Posts: 8428
Location: Southern California
Lots of links about stack computers are at http://www.ultratechnology.com/chips.htm . Some of the links are dead and some redirect after a few seconds, but there still seems to be quite a bit there. The i21 processor link says it does 500MIPS in a 68-pin PLCC, and has video and other things onboard that aren't normally onboard. I know some of these get the fantastic MIPS rates by routinely doing several instructions per clock. You'll also find Don Golding's VHDL code there for a stack processor, and it's surprisingly short. Besides just being able to use smaller & cheaper FPGA's, another part of his goal was to have it simple enough that you can put multiple processors in a single FPGA if you like.

I would sure like to find out what happened to Rob Finch who is a member here. He also has a microprocessor-design forum on Yahoo Forums which was rather 6502-oriented but I have not been able to get hold of him in a couple of years.

Ruud, also a member here, has a web page on building your own 6502 with TTL at http://www.baltissen.org/newhtm/ttl6502.htm .

There was recently a post here (hopefully someone can remember enough search terms to find it) about a 6502-like processor someone designed as a hobby that was much simpler because it lacked and least one of the index registers and most of the indirect and indexed addressing modes. It may have only had something like 32 op codes. Anyone remember?

It has been mentioned that you could also emulate a processor of your own design using a microcontroller-- although its performance would be poor.

See my post about an available book on microprocessor design, at viewtopic.php?p=8549#p8549 . [Edit, Dec 2016: The link on McGraw-Hill's site is dead, but you might be able to find the book elsewhere.]

_________________
http://WilsonMinesCo.com/ lots of 6502 resources
The "second front page" is http://wilsonminesco.com/links.html .
What's an additional VIA among friends, anyhow?


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Wed Feb 15, 2012 8:31 pm 
Offline

Joined: Mon Mar 02, 2009 7:27 pm
Posts: 3258
Location: NC, USA
GARTHWILSON wrote:
...There was recently a post here (hopefully someone can remember enough search terms to find it) about a 6502-like processor someone designed as a hobby that was much simpler because it lacked and least one of the index registers and most of the indirect and indexed addressing modes. It may have only had something like 32 op codes. Anyone remember?...

Yes, I'm pretty sure BigEd had posted it. I think 'the author' fit it into a CPLD. I could be wrong, memory is not serving me very well. I will look further...

GARTHWILSON wrote:
...another part of his goal was to have it simple enough that you can put multiple processors in a single FPGA if you like....

The 65Org16 takes very little resources as well, at least in a Spartan 6 FPGA, especially if external RAM/ROM is used instead of internal BlockRAM, although this would take away from the top-speed aspect...


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Wed Feb 15, 2012 8:39 pm 
Offline

Joined: Mon Mar 02, 2009 7:27 pm
Posts: 3258
Location: NC, USA
ElEctric_EyE wrote:
GARTHWILSON wrote:
...There was recently a post here (hopefully someone can remember enough search terms to find it) about a 6502-like processor someone designed as a hobby that was much simpler because it lacked and least one of the index registers and most of the indirect and indexed addressing modes. It may have only had something like 32 op codes. Anyone remember?...

Yes, I'm pretty sure BigEd had posted it. I think 'the author' fit it into a CPLD. I could be wrong, memory is not serving me very well. I will look further..

Here it is. Was made recently by Steve Chamberlin who did Big Mess O' Wires. Another breadboard fan :roll: . But seems he went right into HDL?... Nice transition! :evil:


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Wed Feb 15, 2012 8:54 pm 
Offline
User avatar

Joined: Fri Aug 30, 2002 1:09 am
Posts: 8428
Location: Southern California
Thanks. Wow-- on a CPLD! 36 op codes. I bookmarked it.


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Wed Feb 15, 2012 11:51 pm 
Offline
User avatar

Joined: Fri Dec 11, 2009 3:50 pm
Posts: 3346
Location: Ontario, Canada
GARTHWILSON wrote:
I would sure like to find out what happened to Rob Finch who is a member here.

A very talented fellow! I was admiring his web site (no longer online) when much to my astonishment I discovered Rob is a neighbor of mine. This is a small town, so the coincidence seems remarkable. However, we've never met -- there's just an extremely sporadic email correspondence. He says he's been absorbed with more non-electronic things recently -- but ends up talking about the subject anyway! :wink: I'll let him know he's missed, & ask him to look you up if you like.

-- Jeff


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Thu Feb 16, 2012 12:06 am 
Offline
User avatar

Joined: Fri Aug 30, 2002 1:09 am
Posts: 8428
Location: Southern California
Quote:
I'll let him know he's missed, & ask him to look you up if you like.

Yes! I was afraid he had died or something. Have him check in on the forum at least and update his email address in his profile. I tried several different ways to get hold of him, but had no success. That might have been just before we started talking about the 65Org32 in the long topic "Improving the 6502, some ideas".


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Thu Feb 16, 2012 12:17 am 
Offline
User avatar

Joined: Mon Aug 08, 2011 2:48 pm
Posts: 808
Location: Croatia
What about a 4 bit cpu, with 16 instructions, with less than 100 gates, or fitting it in a XC9572?
Is it possible?


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Thu Feb 16, 2012 3:18 am 
Offline
User avatar

Joined: Fri Aug 30, 2002 9:02 pm
Posts: 1681
Location: Sacramento, CA
Dajgoro wrote:
What about a 4 bit cpu, with 16 instructions, with less than 100 gates, or fitting it in a XC9572?
Is it possible?


Here's a 4-bit machine:
http://www.vttoth.com/CMS/index.php/pro ... ck-diagram


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Thu Feb 16, 2012 7:52 am 
Offline
User avatar

Joined: Tue Nov 16, 2010 8:00 am
Posts: 2353
Location: Gouda, The Netherlands
Dajgoro wrote:
What about a 4 bit cpu, with 16 instructions, with less than 100 gates, or fitting it in a XC9572?
Is it possible?


Yes. http://opencores.org/project,mcpu

Well, it's a CPU on a XC9572. I haven't looked at the architecture.


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Thu Feb 16, 2012 1:08 pm 
Offline

Joined: Mon Mar 02, 2009 7:27 pm
Posts: 3258
Location: NC, USA
Arlet wrote:
...Well, it's a CPU on a XC9572. I haven't looked at the architecture.

Actually, I read in the doc's it fits in a XC9536, Xilinx' smallest CPLD.


Top
 Profile  
Reply with quote  
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 82 posts ]  Go to page 1, 2, 3, 4, 5, 6  Next

All times are UTC


Who is online

Users browsing this forum: No registered users and 6 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to: