MIPS is a reduced instruction set computer (RISC) architecture that has both 32 and 64-bit variants. The technology is often licensed as IP cores to manufacturers. The Microchip PIC32 series is an example of a common microcontroller based on the MIPS M4K core and several FPGAs include a MIPS ...

learn more… | top users | synonyms

0
votes
0answers
24 views

MIPS c.gt.s command throwing syntax errors

So basically, i am trying to do a comparison of an input between 2 values. I am asking it to return to the loop if the value is less than 45 or greater than 90. Here is the code: ...
0
votes
1answer
39 views

Difference in the datapath of Load Upper Immediate to Load Word in a 32 bit MIPS processor

For the MIPS insturction Load Word I have got the following Datapath: How does the datapath for the Instruction ...
0
votes
2answers
62 views

Difference between LW and SW in MIPS assembly

One of my homework questions was to find the 3rd element stored in an array in MIPS, here is my code ...
1
vote
2answers
77 views

Can `ADD` create a control hazard while in the `MEM` stage?

Imagine there is a machine that has shared memory for both data and instructions (which means a control hazard can occur between the MEM and ...
1
vote
0answers
59 views

Pipelining and Branches (MIPS)

I'm having some trouble determining how to figure out which cycle these instructions are in for the following question: For each instruction show which stage of the traditional MIPS five-stage ...
1
vote
0answers
81 views

How are the control signals determined for a jump instruction in the MIPS pipeline?

NOTE: Let me point out that I did try extensively to solve this on my own. The problem is that, based on that circuit, it would appear that this processor cannot jump. At best the jump instruction ...
1
vote
1answer
662 views

ARM9 vs ARM11 performance? [closed]

This may be a loaded question, but is there a general understanding of the performance increase per clock between ARM9 and ARM11? Say, for a math-heavy function (FFT)? Thanks!
4
votes
1answer
305 views

Atomic operations using extended inline assembler of C32

I'm trying to write atomic code, in my example below I need to perform simple operation a ^= 1; ...
2
votes
1answer
105 views

In disassembly, I see instruction LI, but I can't find such instruction in MIPS instruction set

I have little test project for PIC32MX CPU, here's a part of disassembly: (I know this code is not atomic, I'm just testing things. Actually, I'm pretty newbie in MIPS) ...
2
votes
1answer
274 views

PIC32: “16-bit code” doesn't work (many errors “unknown opcode”)

I have very little test project for PIC32MX440F512H, which builds (with XC32 v1.21) and works correctly. Then I tried to generate 16-bit code, set checkbox "Generate 16-bit code", additional option ...
1
vote
2answers
298 views

Classic RISC pipeline question

Consider the following instruction sequence: Add R3, R4, R5 (R4+R5->R3) Or R2, R4, R5 (R4 OR R5->R2) Add R1, R2, R3 (R2+R3->R1) Assuming no data ...
0
votes
1answer
59 views

How to know which element replaces which for a cache?

If I assume that the first element of the matrix that is fetched to the D-cache is a[0][0], for associativity 4, please tell me which element in which matrix that ...
0
votes
2answers
114 views

Understanding branch prediction

On page 376 of Hennesay's book Computer Organization And Design, the following illustration is listed to illustrate branch prediction. But what do "IM" and "DM" mean? Does IM stand for instruction ...
0
votes
1answer
4k views

How does the Store Word(SW) and Load Word(LW) instructions work, MIPS

The SW and LW instructions are defined as: ...
0
votes
1answer
142 views

Writing a method using MIPS code

I am trying to understand how convert C code to MIPS code and I have having trouble understanding why the stack pointer( $sp ) needs to be manipulated before and after the procedural code.Isn't the ...
3
votes
1answer
178 views

Parallel multiplication hardware

This picture is taken from Computer Organization and Design, Fourth Edition, David A. Patterson, John L. Hennessy. Sorry for the low resolution. I cannot get my head around it. I can see why the ...
0
votes
2answers
1k views

Stalling and Flushing in MIPS Piplining

I am learning MIPS data path with piplining and I am a little confused in the following two things? How do we perform Stall in MIPS data path? What is the difference between Stall and Flush? Here ...
1
vote
2answers
202 views

MIPS Relative Addressing

Can somebody please help me answer these three questions?: Two identified here: When we multiply the immediate operand by 4, do we multiply the binary or the decimal by 2^2? Is the addition sign for ...
1
vote
4answers
865 views

What was the advantage of a 64-bit processor in the N64?

The Nintendo 64 debuted in 1996 and featured a 64-bit MIPS processor. My understanding is that PCs didn't start appearing with 64-bit CPUs until 2003. What was the advantage of using a 64-bit CPU in ...
2
votes
1answer
927 views

Implementing Bne in MIPS Processor Circuit

I am trying to include BNE instruction in the following circuit without introducing a new control line. I have thought of many possible ways like adding muxes or and gates etc to implement it but ...
4
votes
1answer
226 views

Using JTAG to “explore” a board without damaging it?

I have one Amontec JTAGKey2 Generic USB JTAG cable interface. What I am looking for is some explanation of how to "explore" a device of which I don't know all exact details, but for which I have a ...
2
votes
2answers
373 views

Clarification on what the max freq of PIC24FJ64 is?

I'm confusing myself a bit here. The following is taken from this datasheet: High-Performance CPU: Modified Harvard Architecture Up to 16 MIPS Operation @ 32 MHz Now I want 16 MIPS, which is its ...
4
votes
1answer
1k views

MIPS (PIC32): branch vs. branch likely

It's been a while since I've looked at the recent Microchip processors & I've been trying to learn a little bit about the PIC32 MIPS instruction set. I noticed there are two sets of branch ...
2
votes
1answer
492 views

MIPS Pipeline Forwarding to MEM

Consider the following (incomplete) instruction schedule for a MIPS pipeline where loads and stores take three cycles: ...
1
vote
1answer
531 views

MIPS Main Control Logic

In the Patterson & Hennessy book, This is for these 4 instructions, if I need to implement instructions like andi, addi, ori, j, etc, do I add on to this table? Or do I do something else? ...
8
votes
3answers
817 views

How are various functions (eg. add, subtract, and, etc) implemented in ALU?

I am wondering since there are so many functions an ALU need to do, how might I start implementing one (a homework where I am supposed to implement a MIPS system with Logisim, using basic Gates, ...
5
votes
1answer
2k views

MIPS Assembly Memory Addressing “Pseudo Direct Addressing”

Could anyone explain how does Pseudo Direct Addressing work in MIPS? I don't really get how does using the last 4 bits from the PC (Program Counter) fit into the picture? Suppose I want to goto ...
3
votes
2answers
978 views

MIPS: MARS editor not showing correct value for ASCII string?

I'm using the MARS simulator to explore the MIPS cpu. I have a simple assembly program: .data ascii1: .asciiz "8C@2" I expect the value in the memory address ...