Home grown CPU core legal?

Hi Peter,
Yeah, the home built processor is great fun. I did a Xilinx VirtexII one
when the parts first appeared and learnt a lot about the carry chain, those
FMUX thingies, and the mighty 'mult_and'! It also teaches you a lot about
the dual port block rams and multipliers. I called it nanoblaze, kind of
halfway between Micro and Pico, because it used about 250 LUTs, 16 bits, 16
GP regs in a LUT RAM file, stack and program in a block ram, multiply
instruction with the hard multiplier. If you target a particular
architecture you can get suprisingly good performance, I got ~90MIPS in a
VirtexII-slowestgrade, non-pipelined, i.e. 1 clock per most instructions
including conditional relative jumps. Even single cycle interrupts!
Once again, as you can tell(!!), I found it great fun, and an excellent
way to learn about the fabric of the FPGA. Also, can teach you a lot about
floorplanning and performance optimisation. I also used it to learn PERL to
write the assembler, which was probably the best thing to come out of the
whole project! BUT... I'd almost certainly NOT use it in a commercial
product, too much documentation involved and soon every FPGA will have a
hard processor anyway.
Good luck, Syms.


"H. Peter Anvin" <hpa@zytor.com> wrote in message
news:bosgmt$n0i$1@cesium.transmeta.com...
Followup to: <3FB15BB3.5B87@designtools.co.nz
By author: jim.granville@designtools.co.nz
In newsgroup: comp.arch.fpga

H. Peter Anvin wrote:

I have no way to know how this is turning out. My current goal is to
make sure it implements in < 1000 LEs on Cyclone, without using
blockRAM for the register file.

Isn't some form of BlockRAM a defacto standard on all
'consider for new design' FPGAs - so not using that would
restrict your options ?


Some form thereof, yes, but I tend to run out of blockram a lot faster
than running out of LUTs. Note that it's not that I'm saying you
couldn't use it, I'm saying I want to be at < 1000 LE without using
blockram. About 300-400 of that would be replacable with a blockram.

-hpa


--
hpa@transmeta.com> at work, <hpa@zytor.com> in private!
If you send me mail in HTML format I will assume it's spam.
"Unix gives you enough rope to shoot yourself in the foot."
Architectures needed: ia64 m68k mips64 ppc ppc64 s390 s390x sh v850 x86-64
 

Welcome to EDABoard.com

Sponsor

Back
Top