URL
https://opencores.org/ocsvn/pavr/pavr/trunk
[/] [pavr/] [tags/] [noReleaseTag/] [doc/] [html/] [group__pavr__hwres__alu.html] - Blame information for rev 4
Go to most recent revision |
Details |
Compare with Previous |
View Log
Line No. |
Rev |
Author |
Line |
1 |
4 |
doru |
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
|
2 |
|
|
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
|
3 |
|
|
<title>ALU</title>
|
4 |
|
|
<link href="doxygen.css" rel="stylesheet" type="text/css">
|
5 |
|
|
</head><body>
|
6 |
|
|
<!-- Generated by Doxygen 1.2.16 -->
|
7 |
|
|
<center>
|
8 |
|
|
<a class="qindex" href="main.html">Main Page</a> <a class="qindex" href="modules.html">Modules</a> <a class="qindex" href="pages.html">Related Pages</a> </center>
|
9 |
|
|
<hr><h1>ALU<br>
|
10 |
|
|
<small>
|
11 |
|
|
[<a class="el" href="group__pavr__hwres.html">Hardware resources</a>]</small>
|
12 |
|
|
</h1><table border=0 cellpadding=0 cellspacing=0>
|
13 |
|
|
</table>
|
14 |
|
|
<dl compact><dt><b>
|
15 |
|
|
ALU connectivity:</b><dd>
|
16 |
|
|
<br>
|
17 |
|
|
<div align="center">
|
18 |
|
|
<img src="pavr_hwres_alu_01.gif" alt="pavr_hwres_alu_01.gif">
|
19 |
|
|
</div>
|
20 |
|
|
<br>
|
21 |
|
|
<a class="el" href="group__pavr__pipeline__alu.html#alu_pipe_ref_01">Here</a> it can be seen how the ALU plugs into the pipeline. <br>
|
22 |
|
|
<br>
|
23 |
|
|
The ALU is a 100% <b>combinational</b> device. <br>
|
24 |
|
|
It accepts 2 operands: <ul>
|
25 |
|
|
<li> a 16 bit operand <br>
|
26 |
|
|
This is taken through the Bypass Unit. <li> an 8 bit operand <br>
|
27 |
|
|
This is taken through the Bypass Unit. </ul>
|
28 |
|
|
The ALU output is 16 bits wide. <br>
|
29 |
|
|
</dl><dl compact><dt><b>
|
30 |
|
|
ALU opcodes:</b><dd>
|
31 |
|
|
<ul>
|
32 |
|
|
<li>NOP <br>
|
33 |
|
|
<li>OP1 <br>
|
34 |
|
|
Transfers operand 1 directly to the ALU output. <br>
|
35 |
|
|
OP2 <br>
|
36 |
|
|
Transfers operand 2 directly to the lower 8 bits of ALU output. <br>
|
37 |
|
|
<li>ADD8 <br>
|
38 |
|
|
ADC8 <br>
|
39 |
|
|
Adds with carry lower 8 bits of operand 1 with operand 2. <br>
|
40 |
|
|
SUB8 <br>
|
41 |
|
|
SBC8 <br>
|
42 |
|
|
<li>AND8 <br>
|
43 |
|
|
EOR8 <br>
|
44 |
|
|
OR8 <br>
|
45 |
|
|
<li>INC8 <br>
|
46 |
|
|
DEC8 <br>
|
47 |
|
|
<li>COM8 <br>
|
48 |
|
|
NEG8 <br>
|
49 |
|
|
SWAP8 <br>
|
50 |
|
|
<li>LSR8 <br>
|
51 |
|
|
ASR8 <br>
|
52 |
|
|
ROR8 <br>
|
53 |
|
|
<li>ADD16 <br>
|
54 |
|
|
Adds without carry operand 1 with operand 2 sign extended to 16 bits. <br>
|
55 |
|
|
SUB16 <br>
|
56 |
|
|
<li>MUL8 <br>
|
57 |
|
|
MULS8 <br>
|
58 |
|
|
MULSU8 <br>
|
59 |
|
|
FMUL8 <br>
|
60 |
|
|
FMULS8 <br>
|
61 |
|
|
FMULSU8 <br>
|
62 |
|
|
</ul>
|
63 |
|
|
</dl><dl compact><dt><b>
|
64 |
|
|
ALU flags:</b><dd>
|
65 |
|
|
<ul>
|
66 |
|
|
<li>H (half carry)<li>S (sign)<li>V (two's complement)<li>N (negative)<li>Z (zero)<li>C (carry) </ul>
|
67 |
|
|
</dl><hr><address align="right"><small>Generated on Tue Dec 31 20:26:30 2002 for Pipelined AVR microcontroller by
|
68 |
|
|
<a href="http://www.doxygen.org/index.html">
|
69 |
|
|
<img src="doxygen.png" alt="doxygen" align="middle" border=0
|
70 |
|
|
width=110 height=53></a>1.2.16 </small></address>
|
71 |
|
|
</body>
|
72 |
|
|
</html>
|
© copyright 1999-2024
OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.