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.

The <strong>ARM</strong>6 carry-select adder<br />

scheme<br />

• Compute sums of<br />

various fields of<br />

the word<br />

for carry-in of zero<br />

and carry-in of one<br />

• Final result is<br />

selected by using<br />

the correct carry-in<br />

value to control a<br />

multiplexer<br />

a,b[3:0]<br />

sum[3:0] sum[7:4]<br />

Worst case:<br />

O(log 2 [word width]) gates long<br />

+ +, +1 +, +1<br />

c s s+1<br />

mux<br />

sum[15:8]<br />

sum[31:16]<br />

a,b[31:28]<br />

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

mux<br />

mux<br />

Note: Be careful! Fan-out on some of these<br />

gates is high so direct comparison with previous<br />

schemes is not applicable.<br />

The <strong>ARM</strong>6 ALU organization<br />

• Not easy to merge the arithmetic and logic<br />

functions =>a separate logic unit runs in parallel<br />

with the adder, and multiplexor selects the output<br />

invert A<br />

function<br />

logic/arithmetic<br />

A operand latch B operand latch<br />

XOR gates XOR gates<br />

logic functions<br />

result mux<br />

zero detect<br />

adder<br />

invert B<br />

C in<br />

C<br />

V<br />

result<br />

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

N<br />

Z<br />

16

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

Saved successfully!

Ooh no, something went wrong!