Main TCA2 architecture: use new name of behavioral clock generator.
[trinary.git] / circuits / main.asc
blobc80bdfcb21bf40f9ed27071c5fd42b7206768895
1 Version 4\r
2 SHEET 1 2116 2028\r
3 WIRE 1024 -1216 992 -1216\r
4 WIRE 1104 -1216 1024 -1216\r
5 WIRE 1040 -1184 992 -1184\r
6 WIRE 1104 -1184 1040 -1184\r
7 WIRE 1056 -1152 992 -1152\r
8 WIRE 1104 -1152 1056 -1152\r
9 WIRE -176 -1136 -496 -1136\r
10 WIRE -64 -1136 -176 -1136\r
11 WIRE 64 -1136 -32 -1136\r
12 WIRE 1056 -1120 1056 -1152\r
13 WIRE 1056 -1120 960 -1120\r
14 WIRE 1360 -1120 1216 -1120\r
15 WIRE 1456 -1120 1360 -1120\r
16 WIRE 560 -1104 464 -1104\r
17 WIRE 640 -1104 560 -1104\r
18 WIRE -384 -1088 -448 -1088\r
19 WIRE 1040 -1088 1040 -1184\r
20 WIRE 1040 -1088 992 -1088\r
21 WIRE 1360 -1088 1216 -1088\r
22 WIRE 1456 -1088 1360 -1088\r
23 WIRE 560 -1056 464 -1056\r
24 WIRE 1360 -1056 1216 -1056\r
25 WIRE 1456 -1056 1360 -1056\r
26 WIRE -224 -1008 -256 -1008\r
27 WIRE -144 -1008 -224 -1008\r
28 WIRE 64 -1008 64 -1136\r
29 WIRE 64 -1008 16 -1008\r
30 WIRE 112 -1008 64 -1008\r
31 WIRE 208 -1008 112 -1008\r
32 WIRE 560 -1008 464 -1008\r
33 WIRE 1712 -1008 1664 -1008\r
34 WIRE 1760 -1008 1712 -1008\r
35 WIRE 1968 -1008 1920 -1008\r
36 WIRE 2000 -1008 1968 -1008\r
37 WIRE 1104 -992 944 -992\r
38 WIRE -496 -976 -496 -1136\r
39 WIRE -400 -976 -496 -976\r
40 WIRE -144 -960 -224 -960\r
41 WIRE 1104 -960 944 -960\r
42 WIRE 1360 -960 1264 -960\r
43 WIRE 1456 -960 1360 -960\r
44 WIRE 1760 -960 1712 -960\r
45 WIRE -656 -944 -688 -944\r
46 WIRE -448 -944 -448 -1088\r
47 WIRE -400 -944 -448 -944\r
48 WIRE -256 -944 -256 -1008\r
49 WIRE -256 -944 -288 -944\r
50 WIRE 1104 -928 944 -928\r
51 WIRE 1360 -928 1296 -928\r
52 WIRE 1456 -928 1360 -928\r
53 WIRE -656 -912 -688 -912\r
54 WIRE -464 -912 -544 -912\r
55 WIRE -400 -912 -464 -912\r
56 WIRE 1360 -896 1344 -896\r
57 WIRE 1456 -896 1360 -896\r
58 WIRE -656 -880 -688 -880\r
59 WIRE -224 -880 -224 -960\r
60 WIRE 304 -864 224 -864\r
61 WIRE 1568 -832 1488 -832\r
62 WIRE -608 -816 -608 -832\r
63 WIRE -352 -816 -352 -864\r
64 WIRE 304 -816 224 -816\r
65 WIRE 640 -816 640 -1104\r
66 WIRE 640 -816 496 -816\r
67 WIRE 1712 -816 1712 -960\r
68 WIRE 1712 -816 1648 -816\r
69 WIRE 1568 -800 1488 -800\r
70 WIRE 1152 -784 1152 -880\r
71 WIRE 1152 -784 1136 -784\r
72 WIRE 304 -768 224 -768\r
73 WIRE 1024 -656 1024 -1216\r
74 WIRE 1072 -656 1024 -656\r
75 WIRE 992 -624 992 -1088\r
76 WIRE 1072 -624 992 -624\r
77 WIRE 960 -592 960 -1120\r
78 WIRE 1072 -592 960 -592\r
79 WIRE 1264 -560 1264 -960\r
80 WIRE 1264 -560 1184 -560\r
81 WIRE 592 -544 544 -544\r
82 WIRE 1296 -528 1296 -928\r
83 WIRE 1296 -528 1184 -528\r
84 WIRE 384 -512 256 -512\r
85 WIRE 592 -512 544 -512\r
86 WIRE 1344 -496 1344 -896\r
87 WIRE 1344 -496 1184 -496\r
88 WIRE 384 -480 256 -480\r
89 WIRE 592 -480 544 -480\r
90 WIRE 896 -464 848 -464\r
91 WIRE 992 -464 944 -464\r
92 WIRE 1040 -464 992 -464\r
93 WIRE -320 -432 -368 -432\r
94 WIRE 1040 -432 1040 -464\r
95 WIRE 1072 -432 1040 -432\r
96 WIRE 896 -400 848 -400\r
97 WIRE 992 -400 944 -400\r
98 WIRE 1072 -400 992 -400\r
99 WIRE 208 -384 176 -384\r
100 WIRE -320 -368 -368 -368\r
101 WIRE 320 -368 288 -368\r
102 WIRE 384 -368 320 -368\r
103 WIRE 1072 -368 1040 -368\r
104 WIRE 208 -352 176 -352\r
105 WIRE 896 -336 848 -336\r
106 WIRE 992 -336 944 -336\r
107 WIRE 1040 -336 1040 -368\r
108 WIRE 1040 -336 992 -336\r
109 WIRE 1120 -224 1120 -320\r
110 WIRE 1120 -224 1040 -224\r
111 FLAG -80 -384 $G_Vss\r
112 FLAG -80 -448 $G_Vdd\r
113 FLAG 560 -1104 I0_opcode\r
114 FLAG 560 -1056 I1\r
115 FLAG 560 -1008 I2\r
116 FLAG -176 -1136 PC_PLUS_1\r
117 FLAG 224 -864 IS_CMP\r
118 FLAG 224 -816 IS_LWI\r
119 FLAG 224 -768 IS_BE\r
120 FLAG 592 -544 A0\r
121 FLAG 592 -512 A1\r
122 FLAG 592 -480 A2\r
123 FLAG 384 -544 0\r
124 FLAG 256 -512 I1\r
125 FLAG 256 -480 I2\r
126 FLAG 176 -384 IS_LWI\r
127 FLAG -224 -880 FETCH\r
128 FLAG 176 -352 EXECUTE\r
129 FLAG 112 -1008 PC\r
130 FLAG -224 -1008 NEXT_PC\r
131 FLAG 1712 -1008 S_IN\r
132 FLAG 1968 -1008 S\r
133 FLAG 992 -1152 0\r
134 FLAG 992 -1216 0\r
135 FLAG 992 -1184 $G_Vss\r
136 FLAG 1104 -1104 0\r
137 FLAG 1104 -1072 0\r
138 FLAG 1104 -1040 0\r
139 FLAG 944 -992 A0_BUF\r
140 FLAG 944 -960 A1_BUF\r
141 FLAG 944 -928 A2_BUF\r
142 FLAG 1136 -784 I1\r
143 FLAG 1072 -544 0\r
144 FLAG 1072 -512 0\r
145 FLAG 1072 -480 0\r
146 FLAG 992 -464 A0_BUF\r
147 FLAG 992 -336 A2_BUF\r
148 FLAG 1040 -224 I2\r
149 FLAG 1360 -1120 ALU_IN_A2\r
150 FLAG 1360 -1088 ALU_IN_A1\r
151 FLAG 1360 -1056 ALU_IN_A0\r
152 FLAG 1360 -960 ALU_IN_B2\r
153 FLAG 1360 -928 ALU_IN_B1\r
154 FLAG 1360 -896 ALU_IN_B0\r
155 FLAG 1712 -816 CLK_STATUS\r
156 FLAG 1488 -832 IS_CMP\r
157 FLAG 1488 -800 EXECUTE\r
158 FLAG 320 -368 CLK_A\r
159 FLAG -320 -432 FETCH\r
160 FLAG -320 -368 EXECUTE\r
161 FLAG 848 -400 A1\r
162 FLAG 992 -400 A1_BUF\r
163 FLAG 848 -464 A0\r
164 FLAG 848 -336 A2\r
165 FLAG -352 -816 IS_BE\r
166 FLAG -464 -912 JUMP_ADDR\r
167 FLAG -384 -1088 0\r
168 FLAG -608 -816 S\r
169 FLAG -688 -912 I1\r
170 FLAG -688 -944 I2\r
171 FLAG -688 -880 I2\r
172 SYMBOL tpower -80 -416 R0\r
173 SYMATTR InstName X2\r
174 SYMBOL tcycle_up -48 -1136 M0\r
175 SYMATTR InstName CYCLE_PC\r
176 SYMBOL mux3-1 -336 -976 R0\r
177 SYMATTR InstName MUX_PC\r
178 SYMBOL decoder1-3 400 -864 M0\r
179 WINDOW 0 -75 -36 Left 0\r
180 SYMATTR InstName INSTR_DEC\r
181 SYMBOL trit_reg3 464 -592 R0\r
182 SYMATTR InstName REGISTER_A\r
183 SYMBOL min 240 -368 R0\r
184 SYMATTR InstName DO_LWI\r
185 SYMBOL mux9-3 1168 -1216 R0\r
186 SYMATTR InstName MUX_ALU_A\r
187 SYMBOL mux9-3 1136 -656 R0\r
188 SYMATTR InstName MUX_ALU_B\r
189 SYMBOL min 1600 -816 R0\r
190 SYMATTR InstName DO_CMP\r
191 SYMBOL alu 1504 -1120 R0\r
192 SYMATTR InstName ALU\r
193 SYMBOL dtflop-ms2 -64 -1056 R0\r
194 SYMATTR InstName PROGRAM_COUNTER\r
195 SYMBOL dtflop-ms2 1840 -1056 R0\r
196 SYMATTR InstName STATUS_REG\r
197 SYMBOL tbuf 912 -400 R0\r
198 SYMATTR InstName BUF_A1\r
199 SYMBOL tbuf 912 -464 R0\r
200 SYMATTR InstName BUF_A0\r
201 SYMBOL tbuf 912 -336 R0\r
202 SYMATTR InstName BUF_A2\r
203 SYMBOL mux3-1 -592 -944 R0\r
204 SYMATTR InstName JUMP_MUX\r
205 SYMBOL swrom-guess 256 -1104 R0\r
206 WINDOW 0 43 -51 Left 0\r
207 SYMATTR InstName SWROM\r
208 SYMBOL clock_gen-fast -448 -480 R0\r
209 SYMATTR InstName cg\r
210 TEXT -8 -760 Left 0 !.tran 320u\r
211 TEXT 736 -1192 Left 0 ;IN "Register"\n(User input)\r
212 TEXT 736 -1088 Left 0 ;OUT "Register"\n(Cannot read from)\r
213 TEXT 712 -968 Left 0 ;A Register\r
214 TEXT 704 -632 Left 0 ;IN "Register"\n(User input)\r
215 TEXT 704 -560 Left 0 ;OUT "Register"\n(Cannot read from)\r
216 TEXT 696 -408 Left 0 ;A Register\r
217 TEXT -728 -912 Left 0 ;=\r
218 TEXT -728 -944 Left 0 ;<\r
219 TEXT -728 -880 Left 0 ;>\r
220 TEXT 296 -944 Left 0 ;guess.t\r
221 TEXT 280 -272 Left 0 ;LWI Instruction\r
222 TEXT 1296 -192 Left 0 ;CMP Instruction\r
223 TEXT -600 -720 Left 0 ;BE Instruction\r
224 TEXT 352 -1440 Left 0 ;3-TRIT TRINARY COMPUTER ARCHITECTURE\r
225 RECTANGLE Normal 640 -240 64 -640\r
226 RECTANGLE Normal 2112 -160 688 -1344\r
227 RECTANGLE Normal -272 -688 -752 -1184\r