Fury is basically a new 64-bit RISC ISA under development. It is inspired by the comparison of RISC ISAs in Appendix D of Hennessy and Patterson's Computer Organization and Design.
These features will change as the architecture evolves.
The Fury ISA is meant to be conservative, even more than what you'd expect from a RISC pedigree. So, you may find that Fury lacks some features found in other RISC architectures. But they are not showstoppers.
Some other items must be clarified:
Does the lack of some features mean that Fury will be slow? A bad ISA can affect performance, but there is nothing in Fury that hinders a high- performance hardware implementation. The level of performance will be based on the quality of a hardware implementation. Simulating Fury in software will be slow as it lacks convenience instructions, i.e., different ways of doing more or less the same thing. This is RISC. Some operations take more than one Fury instruction. But multiple-issue hardware implementations won't be affected.
ldc.l r1 c1; load control register into gpr stc.l r1 c1; save gpr into control register add.l ; 32-bit integer add add.q ; 64-bit integer add add.s ; single FP add add.d ; double FP add j off ; jump immediate off jr r1 ; jump to offset in r1 jg r1 r2 ; jump to offset in r1 if r2 > 0 jge r1 r2 ; jump to offset in r1 if r2 >= 0 jl r1 r2 ; jump to offset in r1 if r2 < 0 jle r1 r2 ; jump to offset in r1 if r2 <= 0 jz r1 r2 ; jump to offset in r1 if r2 == 0 jnz r1 r2 ; jump to offset in r1 if r2 != 0
Here are the key pieces of software that we need to add Fury support to:
This should be a project to create a free GNU/Linux operating system distribution for the Fury architecture.
SoC, VHDL implementation, cycle-accurate simulation, virtual benchmarks, Herb
We use Git as the version control system for the Fury source code repository. To get a copy of the Fury repository, use the command:
git clone git://git.banu.com/fury.git
fury-listis the mailing list for Fury user and developer discussions.
fury-announce-listis the mailing list for receiving news about new Fury releases.
fury-commits-listis the mailing list for Fury commit notifications.
fury-bugs-listis the mailing list for Fury bug change notifications.
We don't have meetings for Fury yet.
The Fury AUTHORS file lists all the authors who have contributed code and documentation to Fury.