That is the whole point though. Since it is a RISC (Reduced Instruction Set Computer) processor.
It also had to be a processor that a one or two student team could design in a semester.
One of the people there in the brainstorming session said he didn't need multiplication and division in his processors (his company made microcontrollers for solid state storage drives) and some of the students didn't want to spend time implementing that either. So that was also made into an extension. Not part of the base ISA. You can implement multiplication in software with shifts and adds anyway.
But you also have the huge (and growing) standard extensions if you want more. And if you want even more instructions you can add your own. That is also possible. None of the other ISAs were designed like this. That definition is to the credit of the Berkeley team really.
Some people in the brainstorming session said this would lead to too much fragmentation in the implementations. But a couple of us came up with the profiles scheme. We "copied" it from the way the OpenGL graphics extensions and standards are defined.
It also had to be a processor that a one or two student team could design in a semester.
One of the people there in the brainstorming session said he didn't need multiplication and division in his processors (his company made microcontrollers for solid state storage drives) and some of the students didn't want to spend time implementing that either. So that was also made into an extension. Not part of the base ISA. You can implement multiplication in software with shifts and adds anyway.
But you also have the huge (and growing) standard extensions if you want more. And if you want even more instructions you can add your own. That is also possible. None of the other ISAs were designed like this. That definition is to the credit of the Berkeley team really.
Some people in the brainstorming session said this would lead to too much fragmentation in the implementations. But a couple of us came up with the profiles scheme. We "copied" it from the way the OpenGL graphics extensions and standards are defined.
Last edited: