27.06.2013 Views

EE 675 Advanced Microprocessors ARM – A little history

EE 675 Advanced Microprocessors ARM – A little history

EE 675 Advanced Microprocessors ARM – A little history

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

PC behavior <strong>–</strong> Pipeline<br />

• As a consequence of pipeline, the PC (r15) needs to run<br />

ahead of current instruction<br />

• Instruction fetches the next instruction but one during<br />

their first cycle, i.e., PC points 8 bytes ahead of current<br />

instruction.<br />

• So a user using the PC in a program must account for the<br />

pipeline effects<br />

• The situation is more complex in cycles later than the<br />

first cycle.<br />

<strong>EE</strong> <strong>675</strong> @ SDSU 11<br />

<strong>ARM</strong> multi-cycle LDMIA (load<br />

multiple) instruction<br />

ldmia<br />

r0,{r2,r3}<br />

sub r2,r3,r6<br />

cmp r2,#3<br />

Instruction delayed<br />

fetch decode ex ld r2 ex ld r3<br />

fetch<br />

decode ex sub<br />

Decode stage occupied<br />

since ldmia must continue to<br />

remember decoded instruction<br />

fetch decode ex cmp<br />

time<br />

sub fetched at normal time but<br />

not decoded until LDMIA is finishing<br />

<strong>EE</strong> <strong>675</strong> @ SDSU 12<br />

6

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!