generated from cc3-ug/proj02-logisim-cpu
-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathalu.circ
148 lines (147 loc) · 5.42 KB
/
alu.circ
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<project source="2.7.1" version="1.0">
This file is intended to be loaded by Logisim (http://www.cburch.com/logisim/).
<lib desc="#Wiring" name="0"/>
<lib desc="#Gates" name="1"/>
<lib desc="#Plexers" name="2"/>
<lib desc="#Arithmetic" name="3"/>
<lib desc="#Memory" name="4">
<tool name="ROM">
<a name="contents">addr/data: 8 8
0
</a>
</tool>
</lib>
<lib desc="#I/O" name="5"/>
<lib desc="#Base" name="6">
<tool name="Text Tool">
<a name="text" val=""/>
<a name="font" val="SansSerif plain 12"/>
<a name="halign" val="center"/>
<a name="valign" val="base"/>
</tool>
</lib>
<main name="ALU"/>
<options>
<a name="gateUndefined" val="ignore"/>
<a name="simlimit" val="1000"/>
<a name="simrand" val="0"/>
</options>
<mappings>
<tool lib="6" map="Button2" name="Menu Tool"/>
<tool lib="6" map="Button3" name="Menu Tool"/>
<tool lib="6" map="Ctrl Button1" name="Menu Tool"/>
</mappings>
<toolbar>
<tool lib="6" name="Poke Tool"/>
<tool lib="6" name="Edit Tool"/>
<tool lib="6" name="Text Tool">
<a name="text" val=""/>
<a name="font" val="SansSerif plain 12"/>
<a name="halign" val="center"/>
<a name="valign" val="base"/>
</tool>
<sep/>
<tool lib="0" name="Pin">
<a name="tristate" val="false"/>
</tool>
<tool lib="0" name="Pin">
<a name="facing" val="west"/>
<a name="output" val="true"/>
<a name="labelloc" val="east"/>
</tool>
<tool lib="1" name="NOT Gate"/>
<tool lib="1" name="AND Gate"/>
<tool lib="1" name="OR Gate"/>
</toolbar>
<circuit name="ALU">
<a name="circuit" val="ALU"/>
<a name="clabel" val=""/>
<a name="clabelup" val="east"/>
<a name="clabelfont" val="SansSerif plain 12"/>
<appear>
<text font-family="Dialog" font-size="8" font-weight="bold" text-anchor="middle" x="40" y="63">A</text>
<text font-family="Dialog" font-size="12" font-weight="bold" text-anchor="middle" x="63" y="114">ALU</text>
<polygon fill="none" points="30,20 30,99 40,109 30,119 30,159 30,199 110,159 110,59" stroke="#000000" stroke-width="2"/>
<text font-family="Dialog" font-size="8" font-weight="bold" text-anchor="middle" x="89" y="160">Op</text>
<text font-family="Dialog" font-size="8" font-weight="bold" text-anchor="middle" x="95" y="113">OUT</text>
<text font-family="Dialog" font-size="8" font-weight="bold" text-anchor="middle" x="40" y="163">B</text>
<circ-port height="8" pin="150,220" width="8" x="26" y="56"/>
<circ-port height="8" pin="150,330" width="8" x="26" y="156"/>
<circ-port height="8" pin="150,410" width="8" x="86" y="166"/>
<circ-port height="10" pin="1280,210" width="10" x="105" y="105"/>
<circ-anchor facing="east" height="6" width="6" x="107" y="107"/>
</appear>
<wire from="(50,160)" to="(210,160)"/>
<wire from="(50,440)" to="(210,440)"/>
<wire from="(1270,210)" to="(1280,210)"/>
<wire from="(150,220)" to="(170,220)"/>
<wire from="(150,330)" to="(170,330)"/>
<wire from="(150,410)" to="(170,410)"/>
<wire from="(1390,160)" to="(1390,390)"/>
<wire from="(390,80)" to="(980,80)"/>
<wire from="(390,30)" to="(980,30)"/>
<wire from="(1210,160)" to="(1210,390)"/>
<wire from="(390,30)" to="(390,80)"/>
<wire from="(50,160)" to="(50,440)"/>
<wire from="(210,160)" to="(210,440)"/>
<wire from="(980,30)" to="(980,80)"/>
<wire from="(1210,160)" to="(1390,160)"/>
<wire from="(1210,390)" to="(1390,390)"/>
<comp lib="0" loc="(150,410)" name="Pin">
<a name="width" val="4"/>
<a name="tristate" val="false"/>
<a name="label" val="ALU Op"/>
</comp>
<comp lib="0" loc="(150,220)" name="Pin">
<a name="width" val="32"/>
<a name="tristate" val="false"/>
<a name="label" val="A"/>
</comp>
<comp lib="6" loc="(72,154)" name="Text">
<a name="text" val="Inputs"/>
<a name="font" val="SansSerif bold 12"/>
</comp>
<comp lib="0" loc="(150,330)" name="Pin">
<a name="width" val="32"/>
<a name="tristate" val="false"/>
<a name="label" val="B"/>
</comp>
<comp lib="0" loc="(1270,210)" name="Tunnel">
<a name="facing" val="east"/>
<a name="width" val="32"/>
<a name="label" val="Out"/>
</comp>
<comp lib="6" loc="(1239,152)" name="Text">
<a name="text" val="Outputs"/>
<a name="font" val="SansSerif bold 12"/>
</comp>
<comp lib="0" loc="(1280,210)" name="Pin">
<a name="facing" val="west"/>
<a name="output" val="true"/>
<a name="width" val="32"/>
<a name="label" val="Out"/>
<a name="labelloc" val="east"/>
</comp>
<comp lib="0" loc="(170,220)" name="Tunnel">
<a name="width" val="32"/>
<a name="label" val="A"/>
</comp>
<comp lib="6" loc="(686,60)" name="Text">
<a name="text" val="Please do not modify/replace/move/change/delete/etc input and output pins"/>
<a name="font" val="SansSerif bold 13"/>
</comp>
<comp lib="6" loc="(665,25)" name="Text">
<a name="text" val="NOTE"/>
<a name="font" val="SansSerif bold 14"/>
</comp>
<comp lib="0" loc="(170,410)" name="Tunnel">
<a name="width" val="4"/>
<a name="label" val="Op"/>
</comp>
<comp lib="0" loc="(170,330)" name="Tunnel">
<a name="width" val="32"/>
<a name="label" val="B"/>
</comp>
</circuit>
</project>