Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

What's the pipeline mode in ARM processors?

Status
Not open for further replies.

leomecma

Full Member level 5
Joined
Jun 17, 2005
Messages
242
Helped
14
Reputation
28
Reaction score
1
Trophy points
1,298
Location
Brasil
Activity points
3,917
Anyone can explain what's the pipeline mode in ARM processors, and why in this mode the processor can work more fast ....

Thanks,

leomecma
 

amraldo

Advanced Member level 4
Joined
Aug 29, 2004
Messages
1,185
Helped
145
Reputation
290
Reaction score
40
Trophy points
1,328
Location
Egypt
Activity points
5,880
Re: ARM in pipeline mode

ARM operates only in pipeline mode (3 or 5 pipes).
Any instruction can be divided into different cycles which determine the pipe length.
For 3 stages pipe (fetch- decode - execute):
During fetch memory is accesed for instruction.
During decode control logic makes control for the execute cycle.
During execute dataflow path is occupied.
Without pipelining each instruction will pass by the 3 phases & needs three cycles to execute.
The 3 phases are in most cases unintersecting so while decoding the current instruction a new instruction can be fetched.
It will appear as if the process is executing an instruction in one cycle only due to the usage of pipelining. Thus appears faster.
Regards,
Amr.
 

SkyHigh

Advanced Member level 1
Joined
Jan 13, 2005
Messages
432
Helped
79
Reputation
158
Reaction score
27
Trophy points
1,308
Activity points
7,319
Re: ARM in pipeline mode

ARM7 has a 3-stage pipeline.
ARM9 has a 5-stage pipeline.
ARM10 has 6 and ARM11 has 8, both with branch prediction to avoid pipeline stall due to branching.

A simple 3-stage pipeline consists of fetch, decode and execute.
fetch - to fetch the instruction from the code memory indicated by the program counter.
decode - interpret the opcode from the instruction.
execute - based on the opcode, perform required operation on the operand(s).

How a 3-stage pipeline works?

Time Fetch Decode Execute
------------------------------------------------
time 0: Fetch 1 - -
time 1: Fetch 2 Decode 1 -
time 2: Fetch 3 Decode 2 Execute 1
time 3: Fetch 4 Decode 3 Execute 2

Pipelining - an efficient technique to complete an average of one instruction per cycle.

Notice I used the word "average".
Pipeline is not efficient when working with branch.
 

leomecma

Full Member level 5
Joined
Jun 17, 2005
Messages
242
Helped
14
Reputation
28
Reaction score
1
Trophy points
1,298
Location
Brasil
Activity points
3,917
Re: ARM in pipeline mode

If ARM always work in pipeline mode, why datasheet of TMS470 says: 28MHz in normal mode and 48MHz in pipeline mode? Is it MCU different?

leomecma
 

jinboqiu

Member level 1
Joined
Nov 25, 2001
Messages
39
Helped
2
Reputation
4
Reaction score
0
Trophy points
1,286
Activity points
255
Re: ARM in pipeline mode

in the tms470 datasheet ,it means the embedded" flash memory " can run 28MHz in normal mode,fast in FLASH pipeline mode.not say the ARM core run in such mode.
 

Status
Not open for further replies.

Similar threads

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Top