From: Adam Megacz Date: Fri, 29 May 2009 06:39:08 +0000 (+0000) Subject: simplify ripple-carry logic X-Git-Url: http://git.megacz.com/?a=commitdiff_plain;h=0b00c062d4bfb9a0cd5336a1b8f7a923ba2a31de;p=fleet.git simplify ripple-carry logic --- diff --git a/electric/kesselsCounter.jelib b/electric/kesselsCounter.jelib index cf5da65..976b5d1 100644 --- a/electric/kesselsCounter.jelib +++ b/electric/kesselsCounter.jelib @@ -388,7 +388,7 @@ Eval|~val|D5G2;Y2;|pin@15||B X # Cell counter_oneBit;1{sch} -Ccounter_oneBit;1{sch}||schematic|1242938375621|1243546134615| +Ccounter_oneBit;1{sch}||schematic|1242938375621|1243579053003| Ngeneric:Facet-Center|art@0||0|0||||AV NOff-Page|conn@11||-22|77|||XRRR| NOff-Page|conn@12||24|46|||X| @@ -410,8 +410,6 @@ Igasp_dn;1{ic}|gasp_2x2@0||-27|-2|X||D5G4; Igasp_dn;1{ic}|gasp_2x2@1||-27|18|X||D5G4; Igasp_load;1{ic}|gasp_loa@0||-17|25|X||D5G4; IredFive:inv;1{ic}|inv@7||-119|-22|||D5G4;|ATTR_Delay(D5G1;NPX2;Y-2;)I100|ATTR_X(D5FLeave alone;G1.5;NOLPX1.5;Y2;)S1|ATTR_drive0(P)Sstrong0|ATTR_drive1(P)Sstrong1 -IredFive:inv;1{ic}|inv@10||-92|10|||D5G4;|ATTR_X(D5FLeave alone;G1.5;NOLPX1.5;Y2;)S1|ATTR_drive0(P)Sstrong0|ATTR_drive1(P)Sstrong1 -IredFive:inv;1{ic}|inv@11||-116|16|||D5G4;|ATTR_X(D5FLeave alone;G1.5;NOLPX1.5;Y2;)S1|ATTR_drive0(P)Sstrong0|ATTR_drive1(P)Sstrong1 IredFive:inv;1{ic}|inv@13||-102|-24|||D5G4;|ATTR_Delay(D5G1;NPX2;Y-2;)I100|ATTR_X(D5FLeave alone;G1.5;NOLPX1.5;Y2;)S1|ATTR_drive0(P)Sstrong0|ATTR_drive1(P)Sstrong1 IredFive:inv;1{ic}|inv@15||-119|-26|||D5G4;|ATTR_Delay(D5G1;NPX2;Y-2;)I100|ATTR_X(D5FLeave alone;G1.5;NOLPX1.5;Y2;)S1|ATTR_drive0(P)Sstrong0|ATTR_drive1(P)Sstrong1 IredFive:inv;1{ic}|inv@16||-102|-13|||D5G4;|ATTR_Delay(D5G1;NPX2;Y-2;)I100|ATTR_X(D5FLeave alone;G1.5;NOLPX1.5;Y2;)S1|ATTR_drive0(P)Sstrong0|ATTR_drive1(P)Sstrong1 @@ -424,22 +422,20 @@ IredFive:inv;1{ic}|inv@25||-102|-36|||D5G4;|ATTR_Delay(D5G1;NPX2;Y-2;)I100|ATTR_ IredFive:inv;1{ic}|inv@26||-119|-38|||D5G4;|ATTR_Delay(D5G1;NPX2;Y-2;)I100|ATTR_X(D5FLeave alone;G1.5;NOLPX1.5;Y2;)S1|ATTR_drive0(P)Sstrong0|ATTR_drive1(P)Sstrong1 IredFive:inv;1{ic}|inv@28||-86|-40|||D5G4;|ATTR_Delay(D5G1;NPX2;Y-2;)I100|ATTR_X(D5FLeave alone;G1.5;NOLPX1.5;Y2;)S1|ATTR_drive0(P)Sstrong0|ATTR_drive1(P)Sstrong1 IredFive:inv;1{ic}|inv@29||-128|-36|||D5G4;|ATTR_Delay(D5G1;NPX2;Y-2;)I100|ATTR_X(D5FLeave alone;G1.5;NOLPX1.5;Y2;)S1|ATTR_drive0(P)Sstrong0|ATTR_drive1(P)Sstrong1 -IredFive:inv;1{ic}|inv@30||-77|9|||D5G4;|ATTR_Delay(D5G1;NPX2;Y-2;)I100|ATTR_X(D5FLeave alone;G1.5;NOLPX1.5;Y2;)S1|ATTR_drive0(P)Sstrong0|ATTR_drive1(P)Sstrong1 -IredFive:inv;1{ic}|inv@31||-116|5|||D5G4;|ATTR_X(D5FLeave alone;G1.5;NOLPX1.5;Y2;)S1|ATTR_drive0(P)Sstrong0|ATTR_drive1(P)Sstrong1 -IredFive:inv;1{ic}|inv@32||-116|-2|||D5G4;|ATTR_X(D5FLeave alone;G1.5;NOLPX1.5;Y2;)S1|ATTR_drive0(P)Sstrong0|ATTR_drive1(P)Sstrong1 +IredFive:inv;1{ic}|inv@33||-103|11|||D5G4;|ATTR_Delay(D5G1;NPX2;Y-2;)I100|ATTR_X(D5FLeave alone;G1.5;NOLPX1.5;Y2;)S1|ATTR_drive0(P)Sstrong0|ATTR_drive1(P)Sstrong1 IlatchesK:latch1in10A;1{ic}|latch1in@0||-22|54|XRRR||D5G4; IredFive:nand2;1{ic}|nand2@4||-126|16|||D5G4;|ATTR_Delay(D5G1;NPX2.5;Y-3;)I100|ATTR_X(D5FLeave alone;G1.5;NOLPX2.5;Y2.5;)S1|ATTR_drive0(P)Sstrong0|ATTR_drive1(P)Sstrong1 IredFive:nand2;1{ic}|nand2@5||-126|5|||D5G4;|ATTR_Delay(D5G1;NPX2.5;Y-3;)I100|ATTR_X(D5FLeave alone;G1.5;NOLPX2.5;Y2.5;)S1|ATTR_drive0(P)Sstrong0|ATTR_drive1(P)Sstrong1 IredFive:nand2;1{ic}|nand2@6||-126|-2|||D5G4;|ATTR_Delay(D5G1;NPX2.5;Y-3;)I100|ATTR_X(D5FLeave alone;G1.5;NOLPX2.5;Y2.5;)S1|ATTR_drive0(P)Sstrong0|ATTR_drive1(P)Sstrong1 +IredFive:nand2;1{ic}|nand2@7||-113|11|||D5G4;|ATTR_Delay(D5G1;NPX2.5;Y-3;)I100|ATTR_X(D5FLeave alone;G1.5;NOLPX2.5;Y2.5;)S1|ATTR_drive0(P)Sstrong0|ATTR_drive1(P)Sstrong1 +IredFive:nand2;1{ic}|nand2@8||-83|9|||D5G4;|ATTR_Delay(D5G1;NPX2.5;Y-3;)I100|ATTR_X(D5FLeave alone;G1.5;NOLPX2.5;Y2.5;)S1|ATTR_drive0(P)Sstrong0|ATTR_drive1(P)Sstrong1 IredFive:nand3;1{ic}|nand3@0||-110|-24|||D5G4;|ATTR_Delay(D5G1;NPX4;Y-2.5;)I100|ATTR_X(D5FLeave alone;G1.5;NOLPX3;Y2.5;)S1|ATTR_drive0(P)Sstrong0|ATTR_drive1(P)Sstrong1 IredFive:nand3;1{ic}|nand3@1||-110|-13|||D5G4;|ATTR_Delay(D5G1;NPX4;Y-2.5;)I100|ATTR_X(D5FLeave alone;G1.5;NOLPX3;Y2.5;)S1|ATTR_drive0(P)Sstrong0|ATTR_drive1(P)Sstrong1 IredFive:nand3;1{ic}|nand3@3||-110|-47|||D5G4;|ATTR_Delay(D5G1;NPX4;Y-2.5;)I100|ATTR_X(D5FLeave alone;G1.5;NOLPX3;Y2.5;)S1|ATTR_drive0(P)Sstrong0|ATTR_drive1(P)Sstrong1 IredFive:nand3;1{ic}|nand3@4||-110|-36|||D5G4;|ATTR_Delay(D5G1;NPX4;Y-2.5;)I100|ATTR_X(D5FLeave alone;G1.5;NOLPX3;Y2.5;)S1|ATTR_drive0(P)Sstrong0|ATTR_drive1(P)Sstrong1 -IredFive:nor2;1{ic}|nor2@0||-99|10|||D5G4;|ATTR_Delay(D5G1;NPX2.5;Y-2;)I100|ATTR_X(D5FLeave alone;G1.5;NOLPX2.25;Y2.5;)S1|ATTR_drive0(P)Sstrong0|ATTR_drive1(P)Sstrong1 IredFive:nor2;1{ic}|nor2@1||-93|-17|||D5G4;|ATTR_Delay(D5G1;NPX2.5;Y-2;)I100|ATTR_X(D5FLeave alone;G1.5;NOLPX2.25;Y2.5;)S1|ATTR_drive0(P)Sstrong0|ATTR_drive1(P)Sstrong1 IredFive:nor2;1{ic}|nor2@2||-77|-24|||D5G4;|ATTR_Delay(D5G1;NPX2.5;Y-2;)I100|ATTR_X(D5FLeave alone;G1.5;NOLPX2.25;Y2.5;)S1|ATTR_drive0(P)Sstrong0|ATTR_drive1(P)Sstrong1 IredFive:nor2;1{ic}|nor2@3||-93|-40|||D5G4;|ATTR_Delay(D5G1;NPX2.5;Y-2;)I100|ATTR_X(D5FLeave alone;G1.5;NOLPX2.25;Y2.5;)S1|ATTR_drive0(P)Sstrong0|ATTR_drive1(P)Sstrong1 -IredFive:nor2;1{ic}|nor2@4||-84|9|||D5G4;|ATTR_Delay(D5G1;NPX2.5;Y-2;)I100|ATTR_X(D5FLeave alone;G1.5;NOLPX2.25;Y2.5;)S1|ATTR_drive0(P)Sstrong0|ATTR_drive1(P)Sstrong1 Icounter_oneBit;1{ic}|oneBit@0||-121|60|X||D5G4; NWire_Pin|pin@27||-11|4|||X| NWire_Pin|pin@30||-23|35|||X| @@ -474,19 +470,12 @@ Ngeneric:Invisible-Pin|pin@67||-52.5|74.5|||||ART_message(D5G4;)Sone bit of a Ke Ngeneric:Invisible-Pin|pin@68||-51.5|70.5|||||ART_message(D5G3;)Sam 27 May 2009 Ngeneric:Invisible-Pin|pin@69||-50.5|79.5|||||ART_message(D5G6;)SoneBit NWire_Pin|pin@71||-141|15|||| -NWire_Pin|pin@76||-111|16|||| -NWire_Pin|pin@77||-111|11|||| NWire_Pin|pin@90||-141|-22|||| -NWire_Pin|pin@100||-111|5|||| -NWire_Pin|pin@101||-111|9|||| Ngeneric:Invisible-Pin|pin@104||-118.5|25.5|||||ART_message(D5G6;)Sripple-carry logic NWire_Pin|pin@109||-145|-24|||| NWire_Pin|pin@110||-130.5|15|||| -NWire_Pin|pin@111||-113.5|16|||| NWire_Pin|pin@113||-145|17|||| Ngeneric:Invisible-Pin|pin@114||-168|-22|||||ART_message(D5G2;)S[why is there no 2-input,xor in redFive?] -NWire_Pin|pin@126||-108.5|9|||| -NWire_Pin|pin@128||-108.5|11|||| NWire_Pin|pin@136||-114.5|-24|||| NWire_Pin|pin@140||-141|-26|||| NWire_Pin|pin@141||-145|-13|||| @@ -520,17 +509,22 @@ NWire_Pin|pin@179||-116.5|-49|||| NWire_Pin|pin@180||-121.5|-49|||| NWire_Pin|pin@181||-116.5|-34|||| NWire_Pin|pin@182||-121.5|-34|||| -NWire_Pin|pin@183||-87.5|7|||| -NWire_Pin|pin@184||-87.5|0|||| -NWire_Pin|pin@185||-100|0|||| NWire_Pin|pin@186||-130.5|4|||| NWire_Pin|pin@187||-145|6|||| NWire_Pin|pin@188||-141|4|||| NWire_Pin|pin@189||-130.5|-3|||| NWire_Pin|pin@190||-145|-1|||| NWire_Pin|pin@191||-141|-3|||| -NWire_Pin|pin@192||-105|-2|||| -NWire_Pin|pin@193||-105|0|||| +NWire_Pin|pin@195||-118.5|5|||| +NWire_Pin|pin@196||-118.5|16|||| +NWire_Pin|pin@197||-118.5|12|||| +NWire_Pin|pin@198||-115.5|5|||| +NWire_Pin|pin@200||-74.5|9|||| +NWire_Pin|pin@201||-96.5|11|||| +NWire_Pin|pin@202||-96.5|10|||| +NWire_Pin|pin@203||-105|-2|||| +NWire_Pin|pin@204||-105|7|||| +NWire_Pin|pin@205||-85.5|7|||| Awire|ci|D5G2;||0|nand2@4|inb|-128.5|17|pin@113||-145|17 Awire|ci|D5G2;||0|pin@136||-114.5|-24|pin@109||-145|-24 Awire|ci|D5G2;||0|inv@18|in|-121.5|-11|pin@145||-141|-11 @@ -587,18 +581,8 @@ Awire|net@133|||0|gasp_loa@0|zero|-27|22|pin@64||-31|22 Awire|net@134|||0|conn@21|a|-8|-36|dnU@0|next|-17|-36 Awire|net@136|||2700|pin@65||-39|-16|pin@41||-39|-16 Awire|net@138|||900|pin@66||-17|-16|gasp_2x2@0|dec|-17|-16 -Awire|net@154|||900|pin@76||-111|16|pin@77||-111|11 -Awire|net@182|||2700|pin@100||-111|5|pin@101||-111|9 Awire|net@190|||0|pin@45||-27|14|conn@16|y|-44|14 -Awire|net@199|||0|pin@76||-111|16|pin@111||-113.5|16 Awire|net@202|||1800|pin@110||-130.5|15|nand2@4|ina|-128.5|15 -Awire|net@221|||1800|pin@101||-111|9|pin@126||-108.5|9 -Awire|net@223|||1800|pin@77||-111|11|pin@128||-108.5|11 -Awire|net@224|||1800|pin@128||-108.5|11|nor2@0|inb|-101.5|11 -Awire|net@225|||1800|pin@126||-108.5|9|nor2@0|ina|-101.5|9 -Awire|net@231|||1800|nor2@0|out|-96.5|10|inv@10|in|-94.5|10 -Awire|net@233|||1800|inv@11|out|-113.5|16|pin@111||-113.5|16 -Awire|net@234|||0|inv@11|in|-118.5|16|nand2@4|out|-123.5|16 Awire|net@251|||1800|nand3@0|out|-107.5|-24|inv@13|in|-104.5|-24 Awire|net@255|||1800|inv@18|out|-116.5|-11|nand3@1|inc|-112.5|-11 Awire|net@256|||1800|pin@142||-114.5|-13|nand3@1|inb|-112.5|-13 @@ -642,20 +626,24 @@ Awire|net@311|||0|nand3@4|inc|-112.5|-34|pin@181||-116.5|-34 Awire|net@312|||1800|pin@168||-132.5|-36|inv@29|in|-130.5|-36 Awire|net@313|||1800|inv@29|out|-125.5|-36|nand3@4|inb|-112.5|-36 Awire|net@314|||1800|pin@182||-121.5|-34|pin@181||-116.5|-34 -Awire|net@315|||1800|nor2@4|out|-81.5|9|inv@30|in|-79.5|9 -Awire|net@316|||1800|inv@10|out|-89.5|10|nor2@4|inb|-86.5|10 -Awire|net@317|||1800|inv@30|out|-74.5|9|conn@27|a|-70|9 -Awire|net@318|||450|nor2@4|ina|-86.5|8|pin@183||-87.5|7 -Awire|net@319|||900|pin@183||-87.5|7|pin@184||-87.5|0 -Awire|net@320|||0|pin@184||-87.5|0|pin@185||-100|0 Awire|net@321|||1800|pin@186||-130.5|4|nand2@5|ina|-128.5|4 -Awire|net@322|||0|inv@31|in|-118.5|5|nand2@5|out|-123.5|5 -Awire|net@323|||1800|inv@31|out|-113.5|5|pin@100||-111|5 Awire|net@324|||1800|pin@189||-130.5|-3|nand2@6|ina|-128.5|-3 -Awire|net@325|||0|inv@32|in|-118.5|-2|nand2@6|out|-123.5|-2 -Awire|net@326|||1800|inv@32|out|-113.5|-2|pin@192||-105|-2 -Awire|net@327|||2700|pin@192||-105|-2|pin@193||-105|0 -Awire|net@328|||1800|pin@193||-105|0|pin@185||-100|0 +Awire|net@330|||1800|nand2@5|out|-123.5|5|pin@195||-118.5|5 +Awire|net@331|||1800|nand2@4|out|-123.5|16|pin@196||-118.5|16 +Awire|net@332|||900|pin@196||-118.5|16|pin@197||-118.5|12 +Awire|net@333|||1800|pin@197||-118.5|12|nand2@7|inb|-115.5|12 +Awire|net@334|||1800|pin@195||-118.5|5|pin@198||-115.5|5 +Awire|net@335|||2700|pin@198||-115.5|5|nand2@7|ina|-115.5|10 +Awire|net@338|||1800|nand2@7|out|-110.5|11|inv@33|in|-105.5|11 +Awire|net@341|||0|conn@27|a|-70|9|pin@200||-74.5|9 +Awire|net@342|||1800|inv@33|out|-100.5|11|pin@201||-96.5|11 +Awire|net@343|||1800|nand2@8|out|-80.5|9|pin@200||-74.5|9 +Awire|net@344|||900|pin@201||-96.5|11|pin@202||-96.5|10 +Awire|net@345|||1800|pin@202||-96.5|10|nand2@8|inb|-85.5|10 +Awire|net@346|||1800|nand2@6|out|-123.5|-2|pin@203||-105|-2 +Awire|net@347|||2700|pin@203||-105|-2|pin@204||-105|7 +Awire|net@348|||1800|pin@204||-105|7|pin@205||-85.5|7 +Awire|net@349|||2700|pin@205||-85.5|7|nand2@8|ina|-85.5|8 Awire|one|D5G2;RRRY-4;||900|pin@64||-31|22|pin@38||-31|4 Awire|one|D5G2;||0|inv@15|in|-121.5|-26|pin@140||-141|-26 Awire|one|D5G2;||0|inv@17|in|-121.5|-15|pin@144||-141|-15