MIPS vs RISC - muneeb-mbytes/computerArchitectureCourse GitHub Wiki
MIPS vs RISC
MIPS (Microprocessor without Interlocked Pipelined Stages) is a family of reduced instruction set computer (RISC) instruction set architectures.
• MIPS and RISC-V share the same design philosophy.
• All instructions are 32 bits wide for both architectures. Both have 32 general-purpose registers, with one register being hardwired to 0.
• The only way to access memory is via load and store instructions on both architectures.
• The differences between RISC-V and MIPS is for conditional branches other than equal or not equal.
• RISCV simply provides branch instructions to compare two registers, MIPS relies on a comparison instruction that sets a register to 0 or 1 depending on whether the comparison is true.
• MIPS only performs less than comparisons, leaving it up to the programmer to switch order of operands or to switch the condition being tested by the branch to get all the desired outcomes.
• MIPS is a much larger instruction set than RISC-V.
• RISC-V has a relaxed memory model, which means that it allows some reordering and buffering of memory operations to improve performance and reduce power consumption.
• MIPS has a strict memory model, which means that it guarantees the sequential consistency of memory operations by default. This makes MIPS programs easier to reason about and debug, but also limits the potential for optimization and parallelism.
• The MIPS has a smaller and shrinking ecosystem of implementations, which means that there are fewer options and alternatives for developers and users to find or create the optimal MIPS processor for their scenarios and constraints.