The Group abstraction allows distinct instructions to be grouped together arbitrarily in one single entity. This entity can be used to define approximations, energy models, and operating parameters at once, with no need to rewrite the definition of the group.
The code snippet bellow exemplifies the definition of the group ALU, that contains some basic logic and arithmetic instructions.
group ALU {
instruction = {
add, addu,
sub, subu,
and, and,
or,
not
};
}
Additionally to defining the specific instructions that are part of a group, the group abstraction also allows that these instructions are subject to different energy models and operating parameters.
group ALU {
instruction = {
add, addu,
sub, subu,
and, and,
or,
not
};
energy = alu_em();
parameters = alu_op;
}