//: version "1.6g" //: property discardChanges = 1 module ALU(F, A, B, Z); //: interface /sz:(89, 65) /bd:[ Ti0>A[7:0](20/89) Ti1>B[7:0](67/89) Li0>F[1:0](28/65) Bo0AIN[7:0](46/94) Li0>SA[1:0](14/80) Li1>SB[1:0](34/80) Li2>ck(56/80) Bo00 Li0>1 Li1>0 Li2>1 Bo0<3 Bo1<3 ] ALU alu (.B(w15), .A(w29), .F(w26), .Z(w17)); //: @(681, 365) /sz:(89, 65) /p:[ Ti0>0 Ti1>0 Li0>1 Bo0<1 ] //: comment g17 /dolink:1 /link:"@T/sim_tut.v" @(630,130) /sn:0 /anc:1 //: /line:"Combinational Simulation" //: /end //: switch g25 (a) @(45,456) /sn:0 /w:[ 0 ] /st:0 //: joint g29 (a) @(106, 456) /w:[ 2 -1 1 4 ] led g62 (.I(w6)); //: @(773,245) /sn:0 /w:[ 5 ] /type:2 led g52 (.I(s)); //: @(230,486) /sn:0 /R:2 /w:[ 1 ] /type:0 //: dip g42 (w14) @(440,322) /sn:0 /w:[ 1 ] /st:248 //: dip data_in (w25) @(620,233) /R:1 /w:[ 0 ] /st:11 pmos g5 (.Z(w5), .S0(w13), .G0(w1)); //: @(250,367) /sn:0 /w:[ 1 9 3 ] led g56 (.I(w13)); //: @(295,374) /sn:0 /w:[ 5 ] /type:0 //: comment g14 /dolink:1 /link:"@T/seqsim_tut.v" @(630,145) /sn:0 /anc:1 //: /line:"Sequential Simulation" //: /end //: switch g44 (w19) @(344,430) /sn:0 /w:[ 1 ] /st:1 //: comment g47 /dolink:0 /link:"" @(249,285) /sn:0 /anc:1 //: /line:"to get started." //: /end //: comment g21 /dolink:1 /link:"@T/edit2_tut.v" @(630,85) /sn:0 /anc:1 //: /line:"Group Editing Features" //: /end xor g24 (.I0(w8), .I1(ci), .Z(s)); //: @(202,462) /sn:0 /w:[ 0 3 0 ] add g36 (.A(w14), .B(reg_out), .S(w16), .CI(w11), .CO(w18)); //: @(456,375) /sn:0 /w:[ 0 3 1 1 0 ] xor g23 (.I0(a), .I1(b), .Z(w8)); //: @(127,459) /sn:0 /w:[ 3 3 3 ] //: supply0 g41 (w9) @(387,401) /sn:0 /w:[ 0 ] mux g40 (.I0(w9), .I1(w16), .S(w19), .Z(w20)); //: @(421,430) /sn:0 /w:[ 1 0 0 0 ] led g54 (.I(w1)); //: @(194,351) /sn:0 /w:[ 5 ] /type:0 //: joint g60 (w15) @(773, 335) /w:[ 2 4 1 -1 ] //: switch data_select (w28) @(620,293) /w:[ 0 ] /st:0 //: comment g22 /dolink:0 /link:"" @(605,40) /sn:0 /anc:1 //: /line:"->" //: /end //: comment g0 /dolink:0 /link:"" @(13,16) /anc:1 //: /line:"Welcome to TkGate!" //: /line:"" //: /line:"Copyright (C) 1987-2000 by Jeffery P. Hansen" //: /line:" TKGate comes with ABSOLUTELY NO WARRANTY; see 'Help...License' menu" //: /line:" for license and warranty details. Report problems to hansen@cmu.edu" //: /line:"" //: /line:" * This tutorial appears automatically when first starting TkGate." //: /line:" You can disable it by selecting \"Options...\" from the \"File\" menu" //: /line:" and turning off \"Novice Mode\"." //: /line:"" //: /line:" * You can create a new circuit from scratch by selecting \"New\" from" //: /line:" the \"File\" menu or load a circuit from a file by selecting \"Open...\"" //: /line:" from the \"File\" menu." //: /line:"" //: /line:" * See http://www.cs.cmu.edu/~hansen/tkgate for complete TkGate documentation." //: /line:"" //: /line:"This is a brief tutorial on how to use TkGate. Use the hyperlinks in the upper" //: /line:"right corner to navigate through the tutorial. Alternatively, you can select" //: /line:"a tutorial using the \"Help\" menu. On each tutorial, follow the steps in the" //: /line:"order in which they are numbered. When you have completed all of the tutorials," //: /line:"you can also select from a number of example circuits under the \"Help\" menu." //: /end //: switch g26 (b) @(45,491) /sn:0 /w:[ 0 ] /st:1 register g35 (.Q(reg_out), .D(w20), .EN(w12), .CLR(w10), .CK(clk)); //: @(421,476) /sn:0 /w:[ 0 1 1 0 1 ] //: comment g45 /dolink:0 /link:"" @(17,285) /sn:0 /anc:1 //: /line:"Now click on " //: /end //: comment g46 /dolink:1 /link:"@T/create_tut.v" @(105,285) /sn:0 /anc:1 //: /line:"\"Creating a Circuit\"" //: /end //: comment g18 /dolink:0 /link:"@T/welcome_tut.v" @(630,40) /sn:0 /anc:1 //: /line:"TkGate Introduction" //: /end //: switch g12 (w1) @(139,367) /sn:0 /w:[ 0 ] /st:0 //: joint g30 (b) @(100, 491) /w:[ -1 2 1 4 ] //: joint g33 (ci) @(166, 464) /w:[ 2 1 -1 4 ] //: joint g49 (reg_out) @(468, 523) /w:[ 2 -1 1 4 ] endmodule