// DSCH 2.7a
// 2012-12-16 18:58:54
// E:\Elektrotechnika\3 rok\semestr 5\Podstawy sterowania logicznego\DSCH\uklad_arytmetyczny.sch
module uklad_arytmetyczny( WRITE,CLK,D2,D1,SET_FUN,Y0,Y1,Y2,
Y3,Y4,Y5,Y6,Y7,BUSY);
input WRITE,CLK,D2,D1,SET_FUN;
output Y0,Y1,Y2,Y3,Y4,Y5,Y6,Y7;
output BUSY;
wire w33,w34,w35,w36,w37,w38,w39,w40;
wire w41,w42,w43,w44,w45,w46,w47,w48;
wire w49,w50,w51,w52,w53,w54,w55,w56;
wire w57,w58,w59,w60,w61,w62,w63,w64;
wire w65,w66,w67,w68,w69,w70,w71,w72;
wire w73,w74,w75,w76,w77,w78,w79,w80;
wire w81,w82,w83,w84,w85,w86,w87,w88;
wire w89,w90,w91,w92,w93,w94,w95,w96;
wire w97,w98,w99,w100,w101,w102,w103,w104;
wire w105,w106,w107,w108,w109,w110,w111,w112;
wire w113,w114,w115,w116,w117,w118,w119,w120;
wire w121,w122,w123,w124,w125,w126,w127,w128;
wire w129,w130,w131,w132,w133,w134,w135,w136;
wire w137,w138,w139,w140,w141,w142,w143,w144;
wire w145,w146,w147,w148,w149,w150,w151,w152;
wire w153,w154,w155,w156,w157,w158,w159,w160;
wire w161,w162,w163,w164,w165,w166,w167,w168;
wire w169,w170,w171,w172,w173,w174,w175,w176;
wire w177,w178,w179,w180,w181,w182,w183,w184;
wire w185,w186,w187,w188,w189,w190,w191,w192;
nand #(7) nand2_AL1(Y6,w33,w34);
nand #(7) nand2_AL2(w36,SET_FUN,w35);
nand #(7) nand2_AL3(w33,SET_FUN,w37);
nand #(7) nand2_AL4(w34,w38,vss);
nand #(7) nand2_AL5(w39,w38,vss);
nand #(7) nand2_AL6(w41,SET_FUN,w40);
nand #(7) nand2_AL7(Y5,w41,w39);
nand #(7) nand2_AL8(Y4,w42,w43);
nand #(7) nand2_AL9(w42,SET_FUN,w44);
nand #(7) nand2_AL10(w43,w38,w45);
nand #(7) nand2_AL11(w46,w38,vss);
nand #(7) nand2_AL12(Y7,w36,w46);
nand #(7) nand2_AL13(Y3,w47,w48);
nand #(7) nand2_AL14(w48,w38,w49);
nand #(7) nand2_AL15(w51,w38,w50);
nand #(7) nand2_AL16(w53,SET_FUN,w52);
nand #(7) nand2_AL17(Y0,w53,w51);
nand #(7) nand2_AL18(Y1,w54,w55);
nand #(7) nand2_AL19(w54,SET_FUN,w56);
nand #(7) nand2_AL20(w55,w38,w57);
nand #(7) nand2_AL21(w59,w38,w58);
nand #(7) nand2_AL22(w61,SET_FUN,w60);
nand #(7) nand2_AL23(w47,SET_FUN,w62);
nand #(7) nand2_AL24(Y2,w61,w59);
not #(31) inv_AL25(w38,SET_FUN);
and #(19) and2_mn1_AL26(w63,w7,w4);
and #(19) and2_mn2_AL27(w64,w8,w2);
and #(19) and2_mn3_AL28(w65,w8,w3);
and #(19) and2_mn4_AL29(w66,w8,w4);
and #(19) and2_mn5_AL30(w67,w5,w4);
and #(19) and2_mn6_AL31(w68,w5,w3);
and #(19) and2_mn7_AL32(w69,w5,w2);
and #(13) and2_mn8_AL33(w70,w5,w1);
and #(19) and2_mn9_AL34(w71,w6,w1);
and #(19) and2_mn10_AL35(w72,w6,w2);
and #(19) and2_mn11_AL36(w73,w6,w3);
and #(19) and2_mn12_AL37(w74,w6,w4);
and #(19) and2_mn13_AL38(w75,w8,w1);
and #(19) and2_mn14_AL39(w76,w7,w2);
and #(19) and2_mn15_AL40(w77,w7,w3);
and #(19) and2_mn16_AL41(w78,w7,w4);
xor #(8) xor2_su1_mn17_AL42(w79,w69,w71);
xor #(13) xor2_su2_mn18_AL43(w81,w79,w80);
nand #(7) nand2_su3_mn19_AL44(w82,w71,w69);
xor #(8) xor2_su4_mn20_AL45(w83,vss,w74);
xor #(19) xor2_su5_mn21_AL46(w85,w83,w84);
nand #(7) nand2_su6_mn22_AL47(w86,w74,vss);
nand #(7) nand2_su7_mn23_AL48(w87,vss,w84);
nand #(7) nand2_su8_mn24_AL49(w88,w74,w84);
nand #(7) nand2_su9_mn25_AL50(w89,w69,w80);
nand #(7) nand2_su10_mn26_AL51(w90,w71,w80);
nand #(20) nand3_su11_mn27_AL52(w91,w82,w89,w90);
xor #(8) xor2_su12_mn28_AL53(w52,w70,vss);
and #(20) and2_su13_mn29_AL54(w80,vss,w70);
xor #(8) xor2_su14_mn30_AL55(w92,w68,w72);
xor #(19) xor2_su15_mn31_AL56(w93,w92,w91);
nand #(7) nand2_su16_mn32_AL57(w94,w72,w68);
nand #(7) nand2_su17_mn33_AL58(w95,w68,w91);
nand #(7) nand2_su18_mn34_AL59(w96,w72,w91);
nand #(20) nand3_su19_mn35_AL60(w97,w94,w95,w96);
nand #(18) nand3_su20_mn36_AL61(w98,w86,w87,w88);
nand #(20) nand3_su21_mn37_AL62(w84,w99,w100,w101);
nand #(7) nand2_su22_mn38_AL63(w101,w73,w97);
nand #(7) nand2_su23_mn39_AL64(w100,w67,w97);
nand #(7) nand2_su24_mn40_AL65(w99,w73,w67);
xor #(19) xor2_su25_mn41_AL66(w103,w102,w97);
xor #(8) xor2_su26_mn42_AL67(w102,w67,w73);
xor #(8) xor2_su27_mn43_AL68(w104,w93,w76);
xor #(13) xor2_su28_mn44_AL69(w106,w104,w105);
nand #(7) nand2_su29_mn45_AL70(w107,w76,w93);
xor #(8) xor2_su30_mn46_AL71(w108,w98,w63);
xor #(19) xor2_su31_mn47_AL72(w110,w108,w109);
nand #(7) nand2_su32_mn48_AL73(w111,w63,w98);
nand #(7) nand2_su33_mn49_AL74(w112,w98,w109);
nand #(7) nand2_su34_mn50_AL75(w113,w63,w109);
nand #(7) nand2_su35_mn51_AL76(w114,w93,w105);
nand #(7) nand2_su36_mn52_AL77(w115,w76,w105);
nand #(20) nand3_su37_mn53_AL78(w116,w107,w114,w115);
xor #(8) xor2_su38_mn54_AL79(w56,w81,vss);
and #(20) and2_su39_mn55_AL80(w105,vss,w81);
xor #(8) xor2_su40_mn56_AL81(w117,w103,w77);
xor #(19) xor2_su41_mn57_AL82(w118,w117,w116);
nand #(7) nand2_su42_mn58_AL83(w119,w77,w103);
nand #(7) nand2_su43_mn59_AL84(w120,w103,w116);
nand #(7) nand2_su44_mn60_AL85(w121,w77,w116);
nand #(20) nand3_su45_mn61_AL86(w122,w119,w120,w121);
nand #(18) nand3_su46_mn62_AL87(w123,w111,w112,w113);
nand #(20) nand3_su47_mn63_AL88(w109,w124,w125,w126);
nand #(7) nand2_su48_mn64_AL89(w126,w78,w122);
nand #(7) nand2_su49_mn65_AL90(w125,w85,w122);
nand #(7) nand2_su50_mn66_AL91(w124,w78,w85);
xor #(19) xor2_su51_mn67_AL92(w128,w127,w122);
xor #(8) xor2_su52_mn68_AL93(w127,w85,w78);
xor #(8) xor2_su53_mn69_AL94(w129,w118,w75);
xor #(8) xor2_su54_mn70_AL95(w62,w129,w130);
nand #(7) nand2_su55_mn71_AL96(w131,w75,w118);
xor #(8) xor2_su56_mn72_AL97(w132,w123,w66);
xor #(8) xor2_su57_mn73_AL98(w37,w132,w133);
nand #(7) nand2_su58_mn74_AL99(w134,w66,w123);
nand #(7) nand2_su59_mn75_AL100(w135,w123,w133);
nand #(7) nand2_su60_mn76_AL101(w136,w66,w133);
nand #(7) nand2_su61_mn77_AL102(w137,w118,w130);
nand #(7) nand2_su62_mn78_AL103(w138,w75,w130);
nand #(20) nand3_su63_mn79_AL104(w139,w131,w137,w138);
xor #(8) xor2_su64_mn80_AL105(w60,w106,vss);
and #(20) and2_su65_mn81_AL106(w130,vss,w106);
xor #(8) xor2_su66_mn82_AL107(w140,w128,w64);
xor #(8) xor2_su67_mn83_AL108(w44,w140,w139);
nand #(7) nand2_su68_mn84_AL109(w141,w64,w128);
nand #(7) nand2_su69_mn85_AL110(w142,w128,w139);
nand #(7) nand2_su70_mn86_AL111(w143,w64,w139);
nand #(20) nand3_su71_mn87_AL112(w144,w141,w142,w143);
nand #(7) nand3_su72_mn88_AL113(w35,w134,w135,w136);
nand #(20) nand3_su73_mn89_AL114(w133,w145,w146,w147);
nand #(7) nand2_su74_mn90_AL115(w147,w65,w144);
nand #(7) nand2_su75_mn91_AL116(w146,w110,w144);
nand #(7) nand2_su76_mn92_AL117(w145,w65,w110);
xor #(8) xor2_su77_mn93_AL118(w40,w148,w144);
xor #(8) xor2_su78_mn94_AL119(w148,w110,w65);
and #(19) and2_su95_AL120(w149,w5,w1);
xor #(8) xor2_su96_AL121(w50,w1,w5);
nand #(7) nand3_su97_AL122(w45,w150,w151,w152);
nand #(7) nand2_su98_AL123(w152,w8,w153);
nand #(7) nand2_su99_AL124(w151,w4,w153);
nand #(7) nand2_su100_AL125(w150,w8,w4);
xor #(8) xor2_su101_AL126(w49,w154,w153);
xor #(8) xor2_su102_AL127(w154,w4,w8);
nand #(18) nand3_su103_AL128(w158,w155,w156,w157);
nand #(7) nand2_su104_AL129(w157,w6,w149);
nand #(7) nand2_su105_AL130(w156,w2,w149);
nand #(7) nand2_su106_AL131(w155,w6,w2);
xor #(8) xor2_su107_AL132(w57,w159,w149);
xor #(8) xor2_su108_AL133(w159,w2,w6);
xor #(8) xor2_su109_AL134(w160,w3,w7);
xor #(8) xor2_su110_AL135(w58,w160,w158);
nand #(7) nand2_su111_AL136(w161,w7,w3);
nand #(7) nand2_su112_AL137(w162,w3,w158);
nand #(7) nand2_su113_AL138(w163,w7,w158);
nand #(18) nand3_su114_AL139(w153,w161,w162,w163);
dreg #(6) dreg69_re140(w23,w164,w22,vss,w20);
dreg #(6) dreg70_re141(w28,w165,D1,vss,w20);
dreg #(6) dreg71_re142(w26,w166,w27,vss,w20);
dreg #(6) dreg72_re143(w22,w167,w21,vss,w20);
dreg #(6) dreg73_re144(w21,w168,D2,vss,w20);
dreg #(6) dreg74_re145(w24,w169,w23,vss,w20);
dreg #(6) dreg75_re146(w25,w170,w26,vss,w20);
dreg #(6) dreg76_re147(w27,w171,w28,vss,w20);
dreg #(6) dreg109_re148(w7,w172,w23,vss,w29);
dreg #(6) dreg110_re149(w2,w173,w27,vss,w29);
dreg #(6) dreg111_re150(w1,w174,w28,vss,w29);
dreg #(6) dreg112_re151(w5,w175,w21,vss,w29);
dreg #(6) dreg113_re152(w3,w176,w26,vss,w29);
dreg #(6) dreg114_re153(w6,w177,w22,vss,w29);
dreg #(6) dreg115_re154(w4,w178,w25,vss,w29);
dreg #(6) dreg116_re155(w8,w179,w24,vss,w29);
not #(5) inv_li156(BUSY,w180);
dreg #(10) dreg1_li157(w183,w181,w181,w182,w20);
not #(5) inv_li158(w185,w184);
not #(5) inv_li159(w187,w186);
not #(10) inv_li160(w20,CLK);
dreg #(6) dreg2_li161(w182,w188,vdd,w185,w186);
not #(5) inv_li162(w184,w187);
and #(13) and2_li163(w29,w189,w190);
dreg #(10) dreg3_li164(w180,w189,vdd,w182,w29);
not #(9) inv_li165(w186,WRITE);
and #(8) and2_li166(w190,w191,w183);
dreg #(10) dreg4_li167(w191,w192,w192,w182,w183);
endmodule
// Simulation parameters in Verilog Format
always
#10 WRITE=~WRITE;
#20 CLK=~CLK;
#40 D2=~D2;
#80 D1=~D1;
#160 SET_FUN=~SET_FUN;
// Simulation parameters
// WRITE CLK 10 10
// CLK CLK 20 20
// D2 CLK 40 40
// D1 CLK 80 80
// SET_FUN CLK 160 160
Wyszukiwarka
Podobne podstrony:
UKŁAD ARYTMETYCZNO – LOGICZNY (ALU)Układ Regulacji Kaskadowej 2F 15 Układ do pomiaru czasów przełączania diodyukład moczowo płciowyUkład ze wspólnym kolektorem, cz 13Budowa uklad okresowego pierwiastowArytmetyka resztowa HDLutk uklad binarnywięcej podobnych podstron