Hi,
It looks like this group has been slumbering for a bit. This seems to
be the ideal place to have my discussion, but I'm not sure if there
will be anyone listening? I see that there are lots of members of
this group, but not many postings.
I am returning to my project to implement a small CPU in an FPGA. I
had looked at some of Jan Gray's work back in 2002 or so. I don't
see
where he has done anything on those CPUs since then. The gr0040 looks
to be very interesting, but it appears that he has not released the
tools he developed.
I also found a tiny8 on opencores.org that looks interesting. Many of
the projects there are very incomplete, some even have never produced
a single document of any sort. Only a few have produced a working
processor complete with tools.
What small CPUs have people used in FGPAs? What do you use for tools?
Has anyone found a usable CPU with tools that uses less than 500 LUTs?
Rick
To post a message, send it to: f...
To unsubscribe, send a blank message to: f...
Small CPUs in FPGAs
Started by ●July 31, 2008
Reply by ●July 31, 20082008-07-31
----- Original Message -----
From: "Rick Collins"
To:
Sent: Thursday, July 31, 2008 3:18 PM
Subject: [fpga-cpu] Small CPUs in FPGAs
> Hi,
>
> It looks like this group has been slumbering for a bit. This seems to
> be the ideal place to have my discussion, but I'm not sure if there
> will be anyone listening? I see that there are lots of members of
> this group, but not many postings.
>
> I am returning to my project to implement a small CPU in an FPGA. I
> had looked at some of Jan Gray's work back in 2002 or so. I don't see
> where he has done anything on those CPUs since then. The gr0040 looks
> to be very interesting, but it appears that he has not released the
> tools he developed.
>
> I also found a tiny8 on opencores.org that looks interesting. Many of
> the projects there are very incomplete, some even have never produced
> a single document of any sort. Only a few have produced a working
> processor complete with tools.
>
> What small CPUs have people used in FGPAs? What do you use for tools?
> Has anyone found a usable CPU with tools that uses less than 500 LUTs?
The Tiny8 does look interesting; I like the resemblance to the TI 9900
architecture. I worked with a 9995 many years ago and wrote a
cross-assembler for it using Microsoft Macro80 macros, because we couldn't
afford the TI tools. I've got an Altera Flex 10K10 board I designed some
years ago, I could put it on that, although it would be more useful on my
Spartan 3 board.
Leon
To post a message, send it to: f...
To unsubscribe, send a blank message to: f...
From: "Rick Collins"
To:
Sent: Thursday, July 31, 2008 3:18 PM
Subject: [fpga-cpu] Small CPUs in FPGAs
> Hi,
>
> It looks like this group has been slumbering for a bit. This seems to
> be the ideal place to have my discussion, but I'm not sure if there
> will be anyone listening? I see that there are lots of members of
> this group, but not many postings.
>
> I am returning to my project to implement a small CPU in an FPGA. I
> had looked at some of Jan Gray's work back in 2002 or so. I don't see
> where he has done anything on those CPUs since then. The gr0040 looks
> to be very interesting, but it appears that he has not released the
> tools he developed.
>
> I also found a tiny8 on opencores.org that looks interesting. Many of
> the projects there are very incomplete, some even have never produced
> a single document of any sort. Only a few have produced a working
> processor complete with tools.
>
> What small CPUs have people used in FGPAs? What do you use for tools?
> Has anyone found a usable CPU with tools that uses less than 500 LUTs?
The Tiny8 does look interesting; I like the resemblance to the TI 9900
architecture. I worked with a 9995 many years ago and wrote a
cross-assembler for it using Microsoft Macro80 macros, because we couldn't
afford the TI tools. I've got an Altera Flex 10K10 board I designed some
years ago, I could put it on that, although it would be more useful on my
Spartan 3 board.
Leon
To post a message, send it to: f...
To unsubscribe, send a blank message to: f...
Reply by ●July 31, 20082008-07-31
Hi Rick,
On Thu, 2008-07-31 at 14:18 +0000, Rick Collins wrote:
> It looks like this group has been slumbering for a bit. This seems to
> be the ideal place to have my discussion, but I'm not sure if there
> will be anyone listening?
I am... ;-)
> I am returning to my project to implement a small CPU in an FPGA. I
> had looked at some of Jan Gray's work back in 2002 or so. I don't see
> where he has done anything on those CPUs since then. The gr0040 looks
> to be very interesting, but it appears that he has not released the
> tools he developed.
>
> I also found a tiny8 on opencores.org that looks interesting. Many of
> the projects there are very incomplete, some even have never produced
> a single document of any sort. Only a few have produced a working
> processor complete with tools.
>
> What small CPUs have people used in FGPAs? What do you use for tools?
> Has anyone found a usable CPU with tools that uses less than 500
> LUTs?
I developed my own 32 bit CPU "ECO32" together with a set of tools.
However, I'm not sure if that counts as 'small'... :-)
Briefly, the specs are:
MIPS-like instruction set, but without floating-point
hardware shift/multiply/divide unit
32 32-bit registers
32 bit virtual addressing
MMU with TLB support (32 entries, fully associative)
two CPU modes (kernel/user)
16 exceptions + 16 interrupts
occupies around 30% of a Spartan-3 XC3S1000 FPGA
runs at 50 MHz on an XESS XSA-3S1000 board
this board has 32 MByte SDRAM and 2 MByte Flash-ROM
Peripherals:
32-bit synchronous bus
Flash-ROM controller
SDRAM controller
(I used the one provided by Dave Vanden Bout from XESS)
timer
memory-mapped character display
keyboard
two serial lines
IDE disk
(the latter two interfaces provided by an extender
board XST-3, which also has ethernet and USB support
on it, but are not used by ECO32 yet)
Software:
assembler/linker
C compiler (LCC with ECO32 back-end)
machine monitor (running from Flash-ROM)
Furthermore, I have written a simulator for the whole system,
so that developing the software is a lot easier (in fact, I
started the project with the simulator; at that time I didn't
realize that it could eventually be built in hardware). We
use the simulator in compiler and operating system courses.
Right now I am porting an operating system (UNIX V7/32V) to
my machine. I am planning to have it finished next spring.
In fact this is my second attempt to do this - it's a lot
more work than I first anticipated.
The hole project including all tools is open source and can
be downloaded from
http://homepages.fh-giessen.de/~hg53/eco32/
(simulator, assembler/linker, FPGA implementation) and
http://homepages.fh-giessen.de/~hg53/eos32/
(C compiler, many ROMs with test programs, machine monitor).
Please feel free to ask any questions about the system; the
documentation is in a horrible state, I must confess...
Hellwig
To post a message, send it to: f...
To unsubscribe, send a blank message to: f...
On Thu, 2008-07-31 at 14:18 +0000, Rick Collins wrote:
> It looks like this group has been slumbering for a bit. This seems to
> be the ideal place to have my discussion, but I'm not sure if there
> will be anyone listening?
I am... ;-)
> I am returning to my project to implement a small CPU in an FPGA. I
> had looked at some of Jan Gray's work back in 2002 or so. I don't see
> where he has done anything on those CPUs since then. The gr0040 looks
> to be very interesting, but it appears that he has not released the
> tools he developed.
>
> I also found a tiny8 on opencores.org that looks interesting. Many of
> the projects there are very incomplete, some even have never produced
> a single document of any sort. Only a few have produced a working
> processor complete with tools.
>
> What small CPUs have people used in FGPAs? What do you use for tools?
> Has anyone found a usable CPU with tools that uses less than 500
> LUTs?
I developed my own 32 bit CPU "ECO32" together with a set of tools.
However, I'm not sure if that counts as 'small'... :-)
Briefly, the specs are:
MIPS-like instruction set, but without floating-point
hardware shift/multiply/divide unit
32 32-bit registers
32 bit virtual addressing
MMU with TLB support (32 entries, fully associative)
two CPU modes (kernel/user)
16 exceptions + 16 interrupts
occupies around 30% of a Spartan-3 XC3S1000 FPGA
runs at 50 MHz on an XESS XSA-3S1000 board
this board has 32 MByte SDRAM and 2 MByte Flash-ROM
Peripherals:
32-bit synchronous bus
Flash-ROM controller
SDRAM controller
(I used the one provided by Dave Vanden Bout from XESS)
timer
memory-mapped character display
keyboard
two serial lines
IDE disk
(the latter two interfaces provided by an extender
board XST-3, which also has ethernet and USB support
on it, but are not used by ECO32 yet)
Software:
assembler/linker
C compiler (LCC with ECO32 back-end)
machine monitor (running from Flash-ROM)
Furthermore, I have written a simulator for the whole system,
so that developing the software is a lot easier (in fact, I
started the project with the simulator; at that time I didn't
realize that it could eventually be built in hardware). We
use the simulator in compiler and operating system courses.
Right now I am porting an operating system (UNIX V7/32V) to
my machine. I am planning to have it finished next spring.
In fact this is my second attempt to do this - it's a lot
more work than I first anticipated.
The hole project including all tools is open source and can
be downloaded from
http://homepages.fh-giessen.de/~hg53/eco32/
(simulator, assembler/linker, FPGA implementation) and
http://homepages.fh-giessen.de/~hg53/eos32/
(C compiler, many ROMs with test programs, machine monitor).
Please feel free to ask any questions about the system; the
documentation is in a horrible state, I must confess...
Hellwig
To post a message, send it to: f...
To unsubscribe, send a blank message to: f...
Reply by ●July 31, 20082008-07-31
It's a just a coincidence that the "The littlest CPU" thread on
comp.arch.fpga touches on this very issue and offers an interesting candidate
just under 500 LUT?
I know nothing of zpu, but I quote Henri:
Maybe something worth checking:
http://www.zylin.com/zpu.htm
From the above website:
1. The ZPU is now open source. See ZPU mailing list for more details.
2. BSD license for HDL implementations--no hiccups when using in
proprietary commercial products. Under the open source royalty free
license, there are no limits on what type of technology (FPGA,
anti-fuse, or ASIC) in which the ZPU can be implemented.
3. GPL license for architecture, documentation and tools
4. Completely FPGA brand and type neutral implementation
5. 298 LUT @ 125 MHz after P&R with 16 bit datapath and 4kBytes BRAM
6. 442 LUT @ 95 MHz after P&R with 32 bit datapath and 32kBytes BRAM
7. Codesize 80% of ARM thumb
8. Configurable 16/32 bit datapath
9. GCC toolchain(GDB, newlib, libstdc++)
10. Debugging via simulator or GDB stubs
11. HDL simulation feedback to simulator for powerful profiling
capabilities
12. Eclipse ZPU plug-in
13. eCos embedded operating system support.
Henri
--- On Thu, 7/31/08, Rick Collins wrote:
> From: Rick Collins
> Subject: [fpga-cpu] Small CPUs in FPGAs
> To: f...
> Date: Thursday, July 31, 2008, 7:18 AM
> Hi,
>
> It looks like this group has been slumbering for a bit.
> This seems to
> be the ideal place to have my discussion, but I'm not
> sure if there
> will be anyone listening? I see that there are lots of
> members of
> this group, but not many postings.
>
> I am returning to my project to implement a small CPU in an
> FPGA. I
> had looked at some of Jan Gray's work back in 2002 or
> so. I don't see
> where he has done anything on those CPUs since then. The
> gr0040 looks
> to be very interesting, but it appears that he has not
> released the
> tools he developed.
>
> I also found a tiny8 on opencores.org that looks
> interesting. Many of
> the projects there are very incomplete, some even have
> never produced
> a single document of any sort. Only a few have produced a
> working
> processor complete with tools.
>
> What small CPUs have people used in FGPAs? What do you use
> for tools?
> Has anyone found a usable CPU with tools that uses less
> than 500 LUTs?
>
> Rick
>
>
> To post a message, send it to: f...
> To unsubscribe, send a blank message to:
> f...
I know nothing of zpu, but I quote Henri:
Maybe something worth checking:
http://www.zylin.com/zpu.htm
From the above website:
1. The ZPU is now open source. See ZPU mailing list for more details.
2. BSD license for HDL implementations--no hiccups when using in
proprietary commercial products. Under the open source royalty free
license, there are no limits on what type of technology (FPGA,
anti-fuse, or ASIC) in which the ZPU can be implemented.
3. GPL license for architecture, documentation and tools
4. Completely FPGA brand and type neutral implementation
5. 298 LUT @ 125 MHz after P&R with 16 bit datapath and 4kBytes BRAM
6. 442 LUT @ 95 MHz after P&R with 32 bit datapath and 32kBytes BRAM
7. Codesize 80% of ARM thumb
8. Configurable 16/32 bit datapath
9. GCC toolchain(GDB, newlib, libstdc++)
10. Debugging via simulator or GDB stubs
11. HDL simulation feedback to simulator for powerful profiling
capabilities
12. Eclipse ZPU plug-in
13. eCos embedded operating system support.
Henri
--- On Thu, 7/31/08, Rick Collins wrote:
> From: Rick Collins
> Subject: [fpga-cpu] Small CPUs in FPGAs
> To: f...
> Date: Thursday, July 31, 2008, 7:18 AM
> Hi,
>
> It looks like this group has been slumbering for a bit.
> This seems to
> be the ideal place to have my discussion, but I'm not
> sure if there
> will be anyone listening? I see that there are lots of
> members of
> this group, but not many postings.
>
> I am returning to my project to implement a small CPU in an
> FPGA. I
> had looked at some of Jan Gray's work back in 2002 or
> so. I don't see
> where he has done anything on those CPUs since then. The
> gr0040 looks
> to be very interesting, but it appears that he has not
> released the
> tools he developed.
>
> I also found a tiny8 on opencores.org that looks
> interesting. Many of
> the projects there are very incomplete, some even have
> never produced
> a single document of any sort. Only a few have produced a
> working
> processor complete with tools.
>
> What small CPUs have people used in FGPAs? What do you use
> for tools?
> Has anyone found a usable CPU with tools that uses less
> than 500 LUTs?
>
> Rick
>
>
> To post a message, send it to: f...
> To unsubscribe, send a blank message to:
> f...
Reply by ●July 31, 20082008-07-31
Something that came out of this group for me. It put me in contact with Martin
and prompt to continue work on YARI, used in this research:
http://www.vmars.tuwien.ac.at/php/pserver/extern/docdetail.php?DID$31&viewmode=paper&year
08
YARI (http://thorn.ws/yari) is a MIPS implementation (thus with a very mature GNU tool-chain) with very decent performance. Lots of effort has gone into avoiding pipeline stalls, including
# a 4-way associative instruction cache (default 8 KiB)
# a 4-way associative data cache (default 16 KiB)
# a store buffer
Fmax has only been a secondary goal to pipeline efficiency, but it does reach 80 MHz in a Altera Cyclone EP1C12C6. Size has been a non-concern, so the 5,500 - 7,000 LE for SoC puts it outside the realm of "small" I guess. (Well, it's very small compared to others projects of mine).
Released under GPL, so take a look. I'd appreciate all comments.
Cheers
Tommy
--- On Thu, 7/31/08, Rick Collins wrote:
> From: Rick Collins
> Subject: [fpga-cpu] Small CPUs in FPGAs
> To: f...
> Date: Thursday, July 31, 2008, 7:18 AM
> Hi,
>
> It looks like this group has been slumbering for a bit.
> This seems to
> be the ideal place to have my discussion, but I'm not
> sure if there
> will be anyone listening? I see that there are lots of
> members of
> this group, but not many postings.
>
> I am returning to my project to implement a small CPU in an
> FPGA. I
> had looked at some of Jan Gray's work back in 2002 or
> so. I don't see
> where he has done anything on those CPUs since then. The
> gr0040 looks
> to be very interesting, but it appears that he has not
> released the
> tools he developed.
>
> I also found a tiny8 on opencores.org that looks
> interesting. Many of
> the projects there are very incomplete, some even have
> never produced
> a single document of any sort. Only a few have produced a
> working
> processor complete with tools.
>
> What small CPUs have people used in FGPAs? What do you use
> for tools?
> Has anyone found a usable CPU with tools that uses less
> than 500 LUTs?
>
> Rick
>
>
> To post a message, send it to: f...
> To unsubscribe, send a blank message to:
> f...
YARI (http://thorn.ws/yari) is a MIPS implementation (thus with a very mature GNU tool-chain) with very decent performance. Lots of effort has gone into avoiding pipeline stalls, including
# a 4-way associative instruction cache (default 8 KiB)
# a 4-way associative data cache (default 16 KiB)
# a store buffer
Fmax has only been a secondary goal to pipeline efficiency, but it does reach 80 MHz in a Altera Cyclone EP1C12C6. Size has been a non-concern, so the 5,500 - 7,000 LE for SoC puts it outside the realm of "small" I guess. (Well, it's very small compared to others projects of mine).
Released under GPL, so take a look. I'd appreciate all comments.
Cheers
Tommy
--- On Thu, 7/31/08, Rick Collins wrote:
> From: Rick Collins
> Subject: [fpga-cpu] Small CPUs in FPGAs
> To: f...
> Date: Thursday, July 31, 2008, 7:18 AM
> Hi,
>
> It looks like this group has been slumbering for a bit.
> This seems to
> be the ideal place to have my discussion, but I'm not
> sure if there
> will be anyone listening? I see that there are lots of
> members of
> this group, but not many postings.
>
> I am returning to my project to implement a small CPU in an
> FPGA. I
> had looked at some of Jan Gray's work back in 2002 or
> so. I don't see
> where he has done anything on those CPUs since then. The
> gr0040 looks
> to be very interesting, but it appears that he has not
> released the
> tools he developed.
>
> I also found a tiny8 on opencores.org that looks
> interesting. Many of
> the projects there are very incomplete, some even have
> never produced
> a single document of any sort. Only a few have produced a
> working
> processor complete with tools.
>
> What small CPUs have people used in FGPAs? What do you use
> for tools?
> Has anyone found a usable CPU with tools that uses less
> than 500 LUTs?
>
> Rick
>
>
> To post a message, send it to: f...
> To unsubscribe, send a blank message to:
> f...
Reply by ●July 31, 20082008-07-31
--- In f..., Hellwig Geisse
wrote:
>
> Hi Rick,
>
> On Thu, 2008-07-31 at 14:18 +0000, Rick Collins wrote:
>
> > It looks like this group has been slumbering for a bit. This seems to
> > be the ideal place to have my discussion, but I'm not sure if there
> > will be anyone listening?
>
> I am... ;-)
>
> > I am returning to my project to implement a small CPU in an FPGA. I
> > had looked at some of Jan Gray's work back in 2002 or so. I don't see
> > where he has done anything on those CPUs since then. The gr0040 looks
> > to be very interesting, but it appears that he has not released the
> > tools he developed.
> >
> > I also found a tiny8 on opencores.org that looks interesting. Many of
> > the projects there are very incomplete, some even have never produced
> > a single document of any sort. Only a few have produced a working
> > processor complete with tools.
> >
> > What small CPUs have people used in FGPAs? What do you use for tools?
> > Has anyone found a usable CPU with tools that uses less than 500
> > LUTs?
>
> I developed my own 32 bit CPU "ECO32" together with a set of tools.
> However, I'm not sure if that counts as 'small'... :-)
>
> Briefly, the specs are:
> MIPS-like instruction set, but without floating-point
> hardware shift/multiply/divide unit
> 32 32-bit registers
> 32 bit virtual addressing
> MMU with TLB support (32 entries, fully associative)
> two CPU modes (kernel/user)
> 16 exceptions + 16 interrupts
> occupies around 30% of a Spartan-3 XC3S1000 FPGA
> runs at 50 MHz on an XESS XSA-3S1000 board
> this board has 32 MByte SDRAM and 2 MByte Flash-ROM
> Peripherals:
> 32-bit synchronous bus
> Flash-ROM controller
> SDRAM controller
> (I used the one provided by Dave Vanden Bout from XESS)
> timer
> memory-mapped character display
> keyboard
> two serial lines
> IDE disk
> (the latter two interfaces provided by an extender
> board XST-3, which also has ethernet and USB support
> on it, but are not used by ECO32 yet)
> Software:
> assembler/linker
> C compiler (LCC with ECO32 back-end)
> machine monitor (running from Flash-ROM)
>
> Furthermore, I have written a simulator for the whole system,
> so that developing the software is a lot easier (in fact, I
> started the project with the simulator; at that time I didn't
> realize that it could eventually be built in hardware). We
> use the simulator in compiler and operating system courses.
>
> Right now I am porting an operating system (UNIX V7/32V) to
> my machine. I am planning to have it finished next spring.
> In fact this is my second attempt to do this - it's a lot
> more work than I first anticipated.
>
> The hole project including all tools is open source and can
> be downloaded from
>
> http://homepages.fh-giessen.de/~hg53/eco32/
>
> (simulator, assembler/linker, FPGA implementation) and
>
> http://homepages.fh-giessen.de/~hg53/eos32/
>
> (C compiler, many ROMs with test programs, machine monitor).
>
> Please feel free to ask any questions about the system; the
> documentation is in a horrible state, I must confess...
Thanks for the reply. This sounds like a pretty nice CPU. It is a
bit large for my needs since it is about 50% larger than the FPGA I
have to put it in... 8^*
But it does appear that you have done a lot with it. The
documentation is always the part that is left to the end and so gets
the short shrift.
If I ever need a more powerful processor in an FPGA, I'll know where
to look.
Thanks,
Rick
To post a message, send it to: f...
To unsubscribe, send a blank message to: f...
wrote:
>
> Hi Rick,
>
> On Thu, 2008-07-31 at 14:18 +0000, Rick Collins wrote:
>
> > It looks like this group has been slumbering for a bit. This seems to
> > be the ideal place to have my discussion, but I'm not sure if there
> > will be anyone listening?
>
> I am... ;-)
>
> > I am returning to my project to implement a small CPU in an FPGA. I
> > had looked at some of Jan Gray's work back in 2002 or so. I don't see
> > where he has done anything on those CPUs since then. The gr0040 looks
> > to be very interesting, but it appears that he has not released the
> > tools he developed.
> >
> > I also found a tiny8 on opencores.org that looks interesting. Many of
> > the projects there are very incomplete, some even have never produced
> > a single document of any sort. Only a few have produced a working
> > processor complete with tools.
> >
> > What small CPUs have people used in FGPAs? What do you use for tools?
> > Has anyone found a usable CPU with tools that uses less than 500
> > LUTs?
>
> I developed my own 32 bit CPU "ECO32" together with a set of tools.
> However, I'm not sure if that counts as 'small'... :-)
>
> Briefly, the specs are:
> MIPS-like instruction set, but without floating-point
> hardware shift/multiply/divide unit
> 32 32-bit registers
> 32 bit virtual addressing
> MMU with TLB support (32 entries, fully associative)
> two CPU modes (kernel/user)
> 16 exceptions + 16 interrupts
> occupies around 30% of a Spartan-3 XC3S1000 FPGA
> runs at 50 MHz on an XESS XSA-3S1000 board
> this board has 32 MByte SDRAM and 2 MByte Flash-ROM
> Peripherals:
> 32-bit synchronous bus
> Flash-ROM controller
> SDRAM controller
> (I used the one provided by Dave Vanden Bout from XESS)
> timer
> memory-mapped character display
> keyboard
> two serial lines
> IDE disk
> (the latter two interfaces provided by an extender
> board XST-3, which also has ethernet and USB support
> on it, but are not used by ECO32 yet)
> Software:
> assembler/linker
> C compiler (LCC with ECO32 back-end)
> machine monitor (running from Flash-ROM)
>
> Furthermore, I have written a simulator for the whole system,
> so that developing the software is a lot easier (in fact, I
> started the project with the simulator; at that time I didn't
> realize that it could eventually be built in hardware). We
> use the simulator in compiler and operating system courses.
>
> Right now I am porting an operating system (UNIX V7/32V) to
> my machine. I am planning to have it finished next spring.
> In fact this is my second attempt to do this - it's a lot
> more work than I first anticipated.
>
> The hole project including all tools is open source and can
> be downloaded from
>
> http://homepages.fh-giessen.de/~hg53/eco32/
>
> (simulator, assembler/linker, FPGA implementation) and
>
> http://homepages.fh-giessen.de/~hg53/eos32/
>
> (C compiler, many ROMs with test programs, machine monitor).
>
> Please feel free to ask any questions about the system; the
> documentation is in a horrible state, I must confess...
Thanks for the reply. This sounds like a pretty nice CPU. It is a
bit large for my needs since it is about 50% larger than the FPGA I
have to put it in... 8^*
But it does appear that you have done a lot with it. The
documentation is always the part that is left to the end and so gets
the short shrift.
If I ever need a more powerful processor in an FPGA, I'll know where
to look.
Thanks,
Rick
To post a message, send it to: f...
To unsubscribe, send a blank message to: f...
Reply by ●July 31, 20082008-07-31
Rick Collins wrote:
> Hi,
>
> It looks like this group has been slumbering for a bit. This seems to
> be the ideal place to have my discussion, but I'm not sure if there
> will be anyone listening? I see that there are lots of members of
> this group, but not many postings.
>
> I am returning to my project to implement a small CPU in an FPGA. I
> had looked at some of Jan Gray's work back in 2002 or so. I don't see
> where he has done anything on those CPUs since then. The gr0040 looks
> to be very interesting, but it appears that he has not released the
> tools he developed.
>
> I also found a tiny8 on opencores.org that looks interesting. Many of
> the projects there are very incomplete, some even have never produced
> a single document of any sort. Only a few have produced a working
> processor complete with tools.
>
> What small CPUs have people used in FGPAs? What do you use for tools?
> Has anyone found a usable CPU with tools that uses less than 500 LUTs?
>
> Rick
>
>
Well define small ... a PDP 8 is a small computer but I suspect
it is harder to fit than a RISC machine using the features of
modern FPGA's. Right now I am designing a 12/24 bit, bit slice computer
using 2901's , 512x8 proms and lots of LS chips. This is slowly
turing in to a PC clone - 1 meg of memory, XT connectors and
a bit faster. Since I don't have any way to program proms I am
having a 64 cell CPLD replace my proms. I plan to stick to TTL
& CPLD's since I don't need a serial configuration prom on boot
up.
Ben alias woodelf
To post a message, send it to: f...
To unsubscribe, send a blank message to: f...
> Hi,
>
> It looks like this group has been slumbering for a bit. This seems to
> be the ideal place to have my discussion, but I'm not sure if there
> will be anyone listening? I see that there are lots of members of
> this group, but not many postings.
>
> I am returning to my project to implement a small CPU in an FPGA. I
> had looked at some of Jan Gray's work back in 2002 or so. I don't see
> where he has done anything on those CPUs since then. The gr0040 looks
> to be very interesting, but it appears that he has not released the
> tools he developed.
>
> I also found a tiny8 on opencores.org that looks interesting. Many of
> the projects there are very incomplete, some even have never produced
> a single document of any sort. Only a few have produced a working
> processor complete with tools.
>
> What small CPUs have people used in FGPAs? What do you use for tools?
> Has anyone found a usable CPU with tools that uses less than 500 LUTs?
>
> Rick
>
>
Well define small ... a PDP 8 is a small computer but I suspect
it is harder to fit than a RISC machine using the features of
modern FPGA's. Right now I am designing a 12/24 bit, bit slice computer
using 2901's , 512x8 proms and lots of LS chips. This is slowly
turing in to a PC clone - 1 meg of memory, XT connectors and
a bit faster. Since I don't have any way to program proms I am
having a 64 cell CPLD replace my proms. I plan to stick to TTL
& CPLD's since I don't need a serial configuration prom on boot
up.
Ben alias woodelf
To post a message, send it to: f...
To unsubscribe, send a blank message to: f...
Reply by ●July 31, 20082008-07-31
--- In f..., Tommy Thorn wrote:
>
> It's a just a coincidence that the "The littlest CPU" thread on
comp.arch.fpga touches on this very issue and offers an interesting
candidate just under 500 LUT?
No coincidence. I am the OP of that thread. The ZPU looks good in
many ways, but it is very short of documentation. The Zylin web site
has virtually no info on it and directs you to the opencores.org site.
The project there has very little documentation and is hard to navigate.
I really like the <300 LUT implementation for the 16 bit data path
version. That would be very useful. I think the addressable program
space is a bit on the small side, but that might be expanded a bit (or
two).
I had started to look outside of the nearly hundred CPU projects on
opencores.org (most of which are not beyond the planning/alpha stage)
and thought I would ask here. There was an interesting lead at
fpgacpu.org, (gr0040), but that turned out to have a restrictive
license. I have sent an email asking about commercial use. We'll see
what comes back. He also has not released the tools for this
particular processor even though he made an LCC port.
Rick
> I know nothing of zpu, but I quote Henri:
>
> Maybe something worth checking:
>
> http://www.zylin.com/zpu.htm
>
> From the above website:
>
> 1. The ZPU is now open source. See ZPU mailing list for more
details.
> 2. BSD license for HDL implementations--no hiccups when using in
> proprietary commercial products. Under the open source royalty free
> license, there are no limits on what type of technology (FPGA,
> anti-fuse, or ASIC) in which the ZPU can be implemented.
> 3. GPL license for architecture, documentation and tools
> 4. Completely FPGA brand and type neutral implementation
> 5. 298 LUT @ 125 MHz after P&R with 16 bit datapath and 4kBytes BRAM
> 6. 442 LUT @ 95 MHz after P&R with 32 bit datapath and 32kBytes BRAM
> 7. Codesize 80% of ARM thumb
> 8. Configurable 16/32 bit datapath
> 9. GCC toolchain(GDB, newlib, libstdc++)
> 10. Debugging via simulator or GDB stubs
> 11. HDL simulation feedback to simulator for powerful profiling
> capabilities
> 12. Eclipse ZPU plug-in
> 13. eCos embedded operating system support.
>
> Henri
To post a message, send it to: f...
To unsubscribe, send a blank message to: f...
>
> It's a just a coincidence that the "The littlest CPU" thread on
comp.arch.fpga touches on this very issue and offers an interesting
candidate just under 500 LUT?
No coincidence. I am the OP of that thread. The ZPU looks good in
many ways, but it is very short of documentation. The Zylin web site
has virtually no info on it and directs you to the opencores.org site.
The project there has very little documentation and is hard to navigate.
I really like the <300 LUT implementation for the 16 bit data path
version. That would be very useful. I think the addressable program
space is a bit on the small side, but that might be expanded a bit (or
two).
I had started to look outside of the nearly hundred CPU projects on
opencores.org (most of which are not beyond the planning/alpha stage)
and thought I would ask here. There was an interesting lead at
fpgacpu.org, (gr0040), but that turned out to have a restrictive
license. I have sent an email asking about commercial use. We'll see
what comes back. He also has not released the tools for this
particular processor even though he made an LCC port.
Rick
> I know nothing of zpu, but I quote Henri:
>
> Maybe something worth checking:
>
> http://www.zylin.com/zpu.htm
>
> From the above website:
>
> 1. The ZPU is now open source. See ZPU mailing list for more
details.
> 2. BSD license for HDL implementations--no hiccups when using in
> proprietary commercial products. Under the open source royalty free
> license, there are no limits on what type of technology (FPGA,
> anti-fuse, or ASIC) in which the ZPU can be implemented.
> 3. GPL license for architecture, documentation and tools
> 4. Completely FPGA brand and type neutral implementation
> 5. 298 LUT @ 125 MHz after P&R with 16 bit datapath and 4kBytes BRAM
> 6. 442 LUT @ 95 MHz after P&R with 32 bit datapath and 32kBytes BRAM
> 7. Codesize 80% of ARM thumb
> 8. Configurable 16/32 bit datapath
> 9. GCC toolchain(GDB, newlib, libstdc++)
> 10. Debugging via simulator or GDB stubs
> 11. HDL simulation feedback to simulator for powerful profiling
> capabilities
> 12. Eclipse ZPU plug-in
> 13. eCos embedded operating system support.
>
> Henri
To post a message, send it to: f...
To unsubscribe, send a blank message to: f...
Reply by ●August 2, 20082008-08-02
Rick,
what exactly are your requirements/design goals
for that small CPU?
IMHO, this is the most important question. It is
not very difficult to design a small CPU and to
write the necessary tools, but only after it is
well understood what shall be achieved.
Hellwig
To post a message, send it to: f...
To unsubscribe, send a blank message to: f...
what exactly are your requirements/design goals
for that small CPU?
IMHO, this is the most important question. It is
not very difficult to design a small CPU and to
write the necessary tools, but only after it is
well understood what shall be achieved.
Hellwig
To post a message, send it to: f...
To unsubscribe, send a blank message to: f...
Reply by ●August 2, 20082008-08-02
Rick,
How you looked at Xilinx's implementation of a cpu in FPGA. ?
Yash
--- On Thu, 7/31/08, Rick Collins wrote:
From: Rick Collins
Subject: [fpga-cpu] Small CPUs in FPGAs
To: f...
Date: Thursday, July 31, 2008, 7:18 AM
Hi,
It looks like this group has been slumbering for a bit. This seems to
be the ideal place to have my discussion, but I'm not sure if there
will be anyone listening? I see that there are lots of members of
this group, but not many postings.
I am returning to my project to implement a small CPU in an FPGA. I
had looked at some of Jan Gray's work back in 2002 or so. I don't see
where he has done anything on those CPUs since then. The gr0040 looks
to be very interesting, but it appears that he has not released the
tools he developed.
I also found a tiny8 on opencores.org that looks interesting. Many of
the projects there are very incomplete, some even have never produced
a single document of any sort. Only a few have produced a working
processor complete with tools.
What small CPUs have people used in FGPAs? What do you use for tools?
Has anyone found a usable CPU with tools that uses less than 500 LUTs?
Rick
To post a message, send it to: f...
To unsubscribe, send a blank message to: f...
How you looked at Xilinx's implementation of a cpu in FPGA. ?
Yash
--- On Thu, 7/31/08, Rick Collins wrote:
From: Rick Collins
Subject: [fpga-cpu] Small CPUs in FPGAs
To: f...
Date: Thursday, July 31, 2008, 7:18 AM
Hi,
It looks like this group has been slumbering for a bit. This seems to
be the ideal place to have my discussion, but I'm not sure if there
will be anyone listening? I see that there are lots of members of
this group, but not many postings.
I am returning to my project to implement a small CPU in an FPGA. I
had looked at some of Jan Gray's work back in 2002 or so. I don't see
where he has done anything on those CPUs since then. The gr0040 looks
to be very interesting, but it appears that he has not released the
tools he developed.
I also found a tiny8 on opencores.org that looks interesting. Many of
the projects there are very incomplete, some even have never produced
a single document of any sort. Only a few have produced a working
processor complete with tools.
What small CPUs have people used in FGPAs? What do you use for tools?
Has anyone found a usable CPU with tools that uses less than 500 LUTs?
Rick
To post a message, send it to: f...
To unsubscribe, send a blank message to: f...