1//: version "2.1" 2//: property encoding = "utf-8" 3//: property locale = "uk" 4//: property prefix = "_GG" 5//: property title = "Редагування дротів" 6//: property useExtBars = 0 7//: property showSwitchNets = 0 8//: property discardChanges = 1 9//: property timingViolationMode = 2 10//: property initTime = "0 ns" 11 12`timescale 1ns/1ns 13 14//: /netlistBegin PAGE1 15module PAGE1; //: root_module 16//: enddecls 17 18 //: comment g10 @(10,310) /sn:0 /R:14 /anc:1 19 //: /line:"<tutorial-navigation>" 20 //: /end 21 //: comment g0 @(185,114) /sn:0 /anc:1 22 //: /line:"<img src=netprops.gif>" 23 //: /end 24 //: comment MAIN_TEXT1 @(10,10) /anc:1 25 //: /line:"<h3>Редагування дротів</h3>" 26 //: /line:"" 27 //: /line:"This chapter will introduce the basic wire editing features of TkGate." 28 //: /end 29 30endmodule 31//: /netlistEnd 32 33//: /netlistBegin PAGE3 34module PAGE3(); 35//: interface /sz:(40, 40) /bd:[ ] /pd: 0 /pi: 0 /pe: 0 /pp: 1 36reg c0; //: {0}(18:118,113)(224,113)(224,155){1} 37//: {2}(226,157)(249,157){3} 38//: {4}(224,159)(224,169){5} 39reg a0; //: {0}(40:118,149)(162,149){1} 40//: {2}(166,149)(174,149){3} 41//: {4}(164,151)(164,205)(181,205){5} 42reg b0; //: {0}(50:118,184)(156,184){1} 43//: {2}(158,182)(158,154)(174,154){3} 44//: {4}(158,186)(158,210)(181,210){5} 45wire w7; //: /sn:0 {0}(202,208)(217,208)(217,220){1} 46wire s0; //: {0}(36:270,155)(300,155){1} 47wire w4; //: /sn:0 {0}(222,190)(222,220){1} 48wire c1; //: {0}(99:220,241)(220,260){1} 49wire w9; //: /sn:0 {0}(249,152)(221,152){1} 50//: {2}(217,152)(195,152){3} 51//: {4}(219,154)(219,169){5} 52//: enddecls 53 54 //: LED g37 (s0) @(307,155) /sn:0 /R:3 /w:[ 1 ] /type:0 55 //: comment g2 @(9,10) /anc:1 56 //: /line:"<h3>Редагування дротів</h3> <b>(I/O inverters)</b>" 57 //: /line:"" 58 //: /line:"To place or remove an inverter on a gate input or output, select the <img src=\"inv_curs.gif\" bgcolor=gray> tool" 59 //: /line:"and click on the port at which you want to place or remove an inveter. Try" 60 //: /line:"using the inverter tool to place and remove inverters in the circuit below." 61 //: /end 62 _GGNAND2 #(6) g1 (.I0(!w7), .I1(w4), .Z(c1)); //: @(220,231) /sn:0 /R:3 /w:[ 1 1 0 ] 63 //: comment g10 @(10,310) /sn:0 /R:14 /anc:1 64 //: /line:"<tutorial-navigation>" 65 //: /end 66 _GGAND2 #(6) g28 (.I0(a0), .I1(b0), .Z(w7)); //: @(192,208) /sn:0 /w:[ 5 5 0 ] 67 //: SWITCH g27 (c0) @(101,113) /sn:0 /w:[ 0 ] /st:0 /dn:0 68 //: joint g32 (w9) @(219, 152) /w:[ 1 -1 2 4 ] 69 _GGAND2 #(6) g31 (.I0(w9), .I1(c0), .Z(w4)); //: @(222,180) /sn:0 /R:3 /w:[ 5 5 0 ] 70 //: SWITCH g25 (a0) @(101,149) /sn:0 /w:[ 0 ] /st:0 /dn:0 71 //: joint g29 (a0) @(164, 149) /w:[ 2 -1 1 4 ] 72 _GGNXOR2 #(8) g24 (.I0(!w9), .I1(c0), .Z(s0)); //: @(260,155) /sn:0 /w:[ 0 3 0 ] 73 _GGNXOR2 #(6) g23 (.I0(a0), .I1(b0), .Z(w9)); //: @(185,152) /sn:0 /w:[ 3 3 3 ] 74 //: SWITCH g26 (b0) @(101,184) /sn:0 /w:[ 0 ] /st:0 /dn:0 75 //: joint g30 (b0) @(158, 184) /w:[ -1 2 1 4 ] 76 //: joint g33 (c0) @(224, 157) /w:[ 2 1 -1 4 ] 77 78endmodule 79//: /netlistEnd 80 81//: /netlistBegin PAGE5 82module PAGE5(); 83//: interface /sz:(40, 40) /bd:[ ] /pd: 0 /pi: 0 /pe: 0 /pp: 1 84reg c0; //: {0}(9:155,153)(54:261,153)(261,195){1} 85//: {2}(263,197)(286,197){3} 86//: {4}(261,199)(261,209){5} 87reg a0; //: {0}(20:155,189)(199,189){1} 88//: {2}(203,189)(211,189){3} 89//: {4}(201,191)(201,245)(218,245){5} 90reg b0; //: {0}(50:155,224)(193,224){1} 91//: {2}(195,222)(195,194)(211,194){3} 92//: {4}(195,226)(195,250)(218,250){5} 93wire w7; //: /sn:0 {0}(239,248)(254,248)(254,260){1} 94wire s0; //: {0}(36:307,195)(337,195){1} 95wire w4; //: /sn:0 {0}(259,230)(259,260){1} 96wire c1; //: {0}(99:257,281)(257,300){1} 97wire w9; //: /sn:0 {0}(286,192)(258,192){1} 98//: {2}(254,192)(232,192){3} 99//: {4}(256,194)(256,209){5} 100//: enddecls 101 102 //: LED g37 (s0) @(344,195) /sn:0 /R:3 /w:[ 1 ] /type:0 103 //: comment g2 @(7,10) 104 //: /line:"<h3>Редагування дротів</h3> <b>(wire labels)</b>" 105 //: /line:"" 106 //: /line:"Wire label editing is performed with the <img src=mov_curs.gif bgcolor=gray> tool. Select this tool if it is not already selected. Existing" 107 //: /line:"wire labels can be moved by left clicking and dragging the label to a new position. Wire labels can only" 108 //: /line:"be moved to a different locations on the wire from which it was grabbed. If you drop the label too far from" 109 //: /line:"its wire, the label will be discarded. To display a new label right click on the wire and choose the <font color=red2>Show" 110 //: /line:"Label</font> option. You can also hide a specific label (<font color=red2>Hide Label</font>) or hide all labels for a wire (<font color=red2>Hide All Labels</font>)." 111 //: /end 112 _GGNAND2 #(4) g1 (.I0(w7), .I1(w4), .Z(c1)); //: @(257,271) /sn:0 /R:3 /w:[ 1 1 0 ] 113 _GGNAND2 #(4) g28 (.I0(a0), .I1(b0), .Z(w7)); //: @(229,248) /sn:0 /w:[ 5 5 0 ] 114 //: SWITCH g27 (c0) @(138,153) /sn:0 /w:[ 0 ] /st:0 /dn:0 115 //: joint g32 (w9) @(256, 192) /w:[ 1 -1 2 4 ] 116 _GGNAND2 #(4) g31 (.I0(w9), .I1(c0), .Z(w4)); //: @(259,220) /sn:0 /R:3 /w:[ 5 5 0 ] 117 //: SWITCH g25 (a0) @(138,190) /sn:0 /w:[ 0 ] /st:0 /dn:0 118 //: joint g29 (a0) @(201, 189) /w:[ 2 -1 1 4 ] 119 _GGXOR2 #(8) g24 (.I0(w9), .I1(c0), .Z(s0)); //: @(297,195) /sn:0 /w:[ 0 3 0 ] 120 _GGXOR2 #(8) g23 (.I0(a0), .I1(b0), .Z(w9)); //: @(222,192) /sn:0 /w:[ 3 3 3 ] 121 //: SWITCH g26 (b0) @(138,224) /sn:0 /w:[ 0 ] /st:0 /dn:0 122 //: comment g0 @(10,310) /sn:0 /anc:1 123 //: /line:"<tutorial-navigation>" 124 //: /end 125 //: joint g30 (b0) @(195, 224) /w:[ -1 2 1 4 ] 126 //: joint g33 (c0) @(261, 197) /w:[ 2 1 -1 4 ] 127 128endmodule 129//: /netlistEnd 130 131//: /netlistBegin PAGE2 132module PAGE2(); 133//: interface /sz:(40, 40) /bd:[ ] /pd: 0 /pi: 0 /pe: 0 /pp: 1 134reg c0; //: {0}(18:118,113)(224,113)(224,155){1} 135//: {2}(226,157)(249,157){3} 136//: {4}(224,159)(224,169){5} 137reg a0; //: {0}(40:118,149)(162,149){1} 138//: {2}(166,149)(174,149){3} 139//: {4}(164,151)(164,205)(181,205){5} 140reg b0; //: {0}(50:118,184)(156,184){1} 141//: {2}(158,182)(158,154)(174,154){3} 142//: {4}(158,186)(158,210)(181,210){5} 143wire w7; //: /sn:0 {0}(202,208)(217,208)(217,220){1} 144wire s0; //: {0}(36:270,155)(300,155){1} 145wire w4; //: /sn:0 {0}(222,190)(222,220){1} 146wire c1; //: {0}(99:220,241)(220,260){1} 147wire w9; //: /sn:0 {0}(249,152)(221,152){1} 148//: {2}(217,152)(195,152){3} 149//: {4}(219,154)(219,169){5} 150//: enddecls 151 152 //: LED g37 (s0) @(307,155) /sn:0 /R:3 /w:[ 1 ] /type:0 153 //: comment g2 @(9,10) /anc:1 154 //: /line:"<h3>Редагування дротів</h3> <b>(cutting)</b>" 155 //: /line:"" 156 //: /line:"To cut a wire, select the <img src=\"cut_curs.gif\" bgcolor=gray> tool and click on a wire at the point you wish to cut. Try" 157 //: /line:"using the wire cutter tool to cut some of the wires in the circuit below." 158 //: /end 159 _GGNAND2 #(4) g1 (.I0(w7), .I1(w4), .Z(c1)); //: @(220,231) /sn:0 /R:3 /w:[ 1 1 0 ] 160 _GGNAND2 #(4) g28 (.I0(a0), .I1(b0), .Z(w7)); //: @(192,208) /sn:0 /w:[ 5 5 0 ] 161 //: comment g10 @(10,310) /sn:0 /R:14 /anc:1 162 //: /line:"<tutorial-navigation>" 163 //: /end 164 //: SWITCH g27 (c0) @(101,113) /sn:0 /w:[ 0 ] /st:0 /dn:0 165 //: joint g32 (w9) @(219, 152) /w:[ 1 -1 2 4 ] 166 _GGNAND2 #(4) g31 (.I0(w9), .I1(c0), .Z(w4)); //: @(222,180) /sn:0 /R:3 /w:[ 5 5 0 ] 167 //: SWITCH g25 (a0) @(101,149) /sn:0 /w:[ 0 ] /st:0 /dn:0 168 //: joint g29 (a0) @(164, 149) /w:[ 2 -1 1 4 ] 169 _GGXOR2 #(8) g24 (.I0(w9), .I1(c0), .Z(s0)); //: @(260,155) /sn:0 /w:[ 0 3 0 ] 170 _GGXOR2 #(8) g23 (.I0(a0), .I1(b0), .Z(w9)); //: @(185,152) /sn:0 /w:[ 3 3 3 ] 171 //: SWITCH g26 (b0) @(101,184) /sn:0 /w:[ 0 ] /st:0 /dn:0 172 //: joint g30 (b0) @(158, 184) /w:[ -1 2 1 4 ] 173 //: joint g33 (c0) @(224, 157) /w:[ 2 1 -1 4 ] 174 175endmodule 176//: /netlistEnd 177 178//: /netlistBegin PAGE4 179module PAGE4(); 180//: interface /sz:(40, 40) /bd:[ ] /pd: 0 /pi: 0 /pe: 0 /pp: 1 181supply1 w7; //: /sn:0 {0}(320,176)(335,176)(335,158){1} 182reg [15:0] w3; //: /sn:0 {0}(#:184,170)(184,208)(212,208)(212,224){1} 183supply0 w8; //: /sn:0 {0}(271,250)(271,238)(252,238){1} 184supply0 w5; //: /sn:0 {0}(339,207)(339,186)(320,186){1} 185wire [15:0] w6; //: /sn:0 {0}(281,171)(281,146)(371,146)(371,268)(#:228,268)(#:228,253){1} 186wire w4; //: /sn:0 {0}(204,238)(189,238){1} 187wire [15:0] w1; //: /sn:0 {0}(244,224)(244,211)(#:281,211)(#:281,192){1} 188wire w2; //: /sn:0 {0}(85,181)(244,181){1} 189//: enddecls 190 191 //: DIP g8 (w3) @(184,160) /sn:0 /w:[ 0 ] /st:66 /dn:0 192 //: GROUND g4 (w5) @(339,213) /sn:0 /w:[ 0 ] 193 //: comment g2 @(9,10) /anc:1 194 //: /line:"<h3>Редагування дротів</h3> <b>(bit widths)</b>" 195 //: /line:"" 196 //: /line:"To change the bit size of one or more wires, first enter the desired bit size in the" 197 //: /line:"bit size selector <img src=\"size_example.gif\">. Next, choose the <img src=\"size_curs.gif\" bgcolor=gray> tool, and click on each wire" 198 //: /line:"to be changed to that size. Try changing the 8-bit wires in the circuit below to 16-bit wires." 199 //: /line:"" 200 //: /end 201 _GGREG16 #(10, 10, 20) g1 (.Q(w1), .D(w6), .EN(w5), .CLR(w7), .CK(w2)); //: @(281,181) /sn:0 /w:[ 1 0 1 0 1 ] 202 //: comment g10 @(10,310) /sn:0 /R:14 /anc:1 203 //: /line:"<tutorial-navigation>" 204 //: /end 205 _GGCLOCK_P100_0_50 g6 (.Z(w2)); //: @(72,181) /sn:0 /w:[ 0 ] /omega:100 /phi:0 /duty:50 206 //: GROUND g7 (w8) @(271,256) /sn:0 /w:[ 0 ] 207 //: VDD g5 (w7) @(346,158) /sn:0 /w:[ 1 ] 208 _GGADD16 #(132, 134, 126, 128) g0 (.A(w3), .B(w1), .S(w6), .CI(w8), .CO(w4)); //: @(228,240) /sn:0 /w:[ 1 0 1 1 0 ] 209 210endmodule 211//: /netlistEnd 212 213