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.

Instruction set

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

Software implementation

Here are the key pieces of software that we need to add Fury support to:

Patches to the GNU toolchain


Fury Linux distribution

This should be a project to create a free GNU/Linux operating system distribution for the Fury architecture.

Hardware implementation

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



Sprints and meetings

We don't have meetings for Fury yet.


The Fury AUTHORS file lists all the authors who have contributed code and documentation to Fury.