/* This file is generated by topld.pl */ /* Please don't edit it. */ Name rx8i ; PartNo cpld ; Date 4/29/2020 ; Revision 01 ; Designer ; Company ; Assembly None ; Location E1 ; Device f1508isptqfp100; $DEFINE OPTIMIZE $UNDEF OPTIMIZE /* Input Pins */ pin = bac00; pin = bac01; pin = bac02; pin = bac03; pin = bac04; pin = bac05; pin = bac06; pin = bac07; pin = bac08; pin = bac09; pin = bac10; pin = bac11; pin = biop1; pin = biop2; pin = biop4; pin = bmb00; pin = bmb01; pin = bmb02; pin = bmb09; pin = bmb10; pin = bmb11; pin = bts3; pin = n_t_1x; pin = n_t_5x; pin = n_t_6x; pin = rx_done_low; pin = rx_error_low; pin = rx_out_low; pin = rx_shift_low; pin = rx_tr_req_low; /* Output Pins */ pin = ac00l; pin = ac01l; pin = ac02l; pin = ac03l; pin = ac04l; pin = ac05l; pin = ac06l; pin = ac07l; pin = ac08l; pin = ac09l; pin = ac10l; pin = ac11l; pin = baclr; pin = birq; pin = bskip; pin = initialize; pin = md03_low; pin = md04_low; pin = md05_low; pin = md06_low; pin = md07_low; pin = md08_low; pin = n_t_7x; pin = n_t_8x; pin = n_t_9x; pin = rx_12_bit_low; pin = rx_data_low; pin = rx_init_low; pin = rx_run_low; pin = tp4; node eight; node maint; node gdollar_0; node gdollar_1; node gdollar_2; node gdollar_3; node n_t_45x; node n_t_60x; node n_t_2x; node n_t_33x; node msb12; node n_t_76x; node run; node n_t_64x; node n_t_63x; node n_t_62x; node msb8; node n_t_68x; node n_t_69x; node n_t_61x; node n_t_70x; node parity_low; node n_t_59x; node n_t_72x; node n_t_65x; node n_t_67x; node n_t_66x; node n_t_31x; node io_pause_low; /* Internal nodes */ $IFNDEF OPTIMIZE node 'b'1; node b; node c0_low; node c1_low; node clk_parity_low; node data0; node data0_low; node data1; node data10; node data10_low; node data11; node data11_low; node data1_low; node data2; node data2_low; node data3; node data3_low; node data4; node data4_low; node data5; node data5_low; node data6; node data6_low; node data7; node data7_low; node data8; node data8_low; node data9; node data9_low; node done; node done_skip_low; node enb_buf_ld_low; node err_skip_low; node error; node init; node init_iot_low; node int_rqst_low; node internal_io_low; node intr_iot_low; node iot; node lcd_iot_low; node n_t_12x; node n_t_21x; node n_t_32x; node n_t_34x; node n_t_35x; node n_t_36x; node n_t_38x; node n_t_39x; node n_t_3x; node n_t_40x; node n_t_41x; node n_t_42x; node n_t_46x; node n_t_48x; node n_t_49x; node n_t_4x; node n_t_51x; node n_t_52x; node n_t_53x; node n_t_54x; node n_t_55x; node n_t_56x; node n_t_57x; node n_t_58x; node n_t_71x; node n_t_78x; node n_t_79x; node n_t_80x; node n_t_81x; node n_t_82x; node n_t_83x; node n_t_84x; node n_t_85x; node parity; node powerok; node rd; node rx_data; node sdn_iot_low; node ser_iot_low; node shift; node skip_low; node str_iot_low; node strobe; node tr_skip_low; node xfer_iot_low; node xfer_req; $ENDIF /* Code nodes */ /* Equations */ /* a27: m916 */ /* b27: m916 */ /* c1: c_us */ /* c2: c_us */ /* c3: c_us */ /* c4: c_us */ /* c5: c_us */ /* c6: c_us */ /* c7: c_us */ /* c8: c_us */ /* c9: c_us */ /* c10: c_us */ /* c11: c_us */ /* c12: c_us */ /* c13: c_us */ /* c14: c_us */ /* c15: c_us */ /* c16: c_us */ /* c17: c_us */ /* c18: c_us */ /* c19: c_us */ /* c20: c_us */ /* c21: c_us */ /* c22: c_us */ /* c23: c_us */ /* c24: c_us */ /* c25: c_us */ /* c26: c_us */ /* c27: m916 */ /* c27a: c_us */ /* c28: c_us */ /* c29: c_us */ /* c30: c_us */ /* c31: c_us */ /* c32: c_us */ /* c33: c_us */ /* c34: c_us */ /* c35: c_us */ /* c36: c_us */ /* c37: c_us */ /* c38: c_us */ /* c39: c_us */ /* c40: c_us */ /* c41: c_us */ /* c42: cpol_use */ /* c43: cpol_use */ /* c44: cpol_use */ /* c45: cpol_use */ /* d27: m916 */ /* e1: ds8837n */ data5 = !data5_low & !internal_io_low; data4 = !data4_low & !internal_io_low; data3 = !data3_low & !internal_io_low; data2 = !data2_low & !internal_io_low; data1 = !data1_low & !internal_io_low; data0 = !data0_low & !internal_io_low; /* e2: sn7474 */ eight.ar = init; eight.d = data5; eight.ck = n_t_48x; eight.ap = !'b'1; maint.ar = init; maint.d = data4; maint.ck = n_t_48x; maint.ap = !'b'1; /* e3: sn7410 */ n_t_38x = !(!eight & msb12 & !parity); n_t_39x = !(!parity & eight & msb8); n_t_42x = !(n_t_39x & n_t_40x & n_t_38x); /* e4: sn74161 */ gdollar_0.ar = init; gdollar_0.ck = clk_parity_low; gdollar_0.j = !(!'b'1 & !enb_buf_ld_low) & ('b'1 # !enb_buf_ld_low); gdollar_0.k = !('b'1 & !enb_buf_ld_low) & ('b'1 # !enb_buf_ld_low); gdollar_1.ar = init; gdollar_1.ck = clk_parity_low; gdollar_1.j = !(!'b'1 & !enb_buf_ld_low) & (('b'1 & gdollar_0) # !enb_buf_ld_low); gdollar_1.k = !('b'1 & !enb_buf_ld_low) & (('b'1 & gdollar_0) # !enb_buf_ld_low); gdollar_2.ar = init; gdollar_2.ck = clk_parity_low; gdollar_2.j = !(!n_t_21x & !enb_buf_ld_low) & (('b'1 & gdollar_0 & gdollar_1) # !enb_buf_ld_low); gdollar_2.k = !(n_t_21x & !enb_buf_ld_low) & (('b'1 & gdollar_0 & gdollar_1) # !enb_buf_ld_low); gdollar_3.ar = init; gdollar_3.ck = clk_parity_low; gdollar_3.j = !(!enb_buf_ld_low) & (('b'1 & gdollar_0 & gdollar_1 & gdollar_2) # !enb_buf_ld_low); gdollar_3.k = (('b'1 & gdollar_0 & gdollar_1 & gdollar_2) # !enb_buf_ld_low); parity = 'b'1 & gdollar_3 & gdollar_2 & gdollar_1 & gdollar_0; /* e5: ds8881n */ /* data0_low = !(n_t_12x & msb12); */ /* data1_low = !(n_t_12x & n_t_33x); */ /* data2_low = !(n_t_12x & n_t_2x); */ /* data3_low = !(n_t_12x & n_t_60x); */ /* e6: sn7402 */ n_t_48x = !(strobe # lcd_iot_low); n_t_71x = !(strobe # intr_iot_low); n_t_46x = !(run # init); /* e7: sn7474 */ n_t_45x.ar = !'b'1; n_t_45x.d = init_iot_low; n_t_45x.ck = !strobe; n_t_45x.ap = tp4; /* e8: sn7404 */ /* e9: sn74179 */ n_t_60x.ar = init; n_t_60x.ck = !clk_parity_low; n_t_60x.d = msb8 & enb_buf_ld_low # data3 & !enb_buf_ld_low & b # n_t_60x & !enb_buf_ld_low & !b; n_t_2x.ar = init; n_t_2x.ck = !clk_parity_low; n_t_2x.d = n_t_60x & enb_buf_ld_low # data2 & !enb_buf_ld_low & b # n_t_2x & !enb_buf_ld_low & !b; n_t_33x.ar = init; n_t_33x.ck = !clk_parity_low; n_t_33x.d = n_t_2x & enb_buf_ld_low # data1 & !enb_buf_ld_low & b # n_t_33x & !enb_buf_ld_low & !b; msb12.ar = init; msb12.ck = !clk_parity_low; msb12.d = n_t_33x & enb_buf_ld_low # data0 & !enb_buf_ld_low & b # msb12 & !enb_buf_ld_low & !b; /* e10: sn7410 */ n_t_32x = !(!xfer_iot_low & n_t_34x & !eight); n_t_34x = !(!maint & !done & !rd); !skip_low = !(tr_skip_low & err_skip_low & done_skip_low); /* e11: ds8640n */ /* e12: sn7400 */ n_t_21x = !(n_t_35x & n_t_36x); !c0_low = !(lcd_iot_low & n_t_32x); n_t_36x = !(data5 & !lcd_iot_low); n_t_35x = !(!xfer_iot_low & eight); /* e14: ds8881n */ /* c0_low = c0_low; */ /* rx_data_low = !(!rd & n_t_42x); */ /* rx_12_bit_low = eight; */ /* c1_low = !(!eight & n_t_34x); */ /* e15: sn7474 */ n_t_76x.ar = init; n_t_76x.d = data11; n_t_76x.ck = n_t_71x; n_t_76x.ap = !'b'1; run.ar = !n_t_83x; run.d = 'b'1; run.ck = n_t_85x; run.ap = !'b'1; /* e16: sn7408 */ n_t_12x = (!eight & n_t_3x); n_t_79x = (xfer_iot_low & lcd_iot_low); n_t_83x = (n_t_81x & !init); enb_buf_ld_low = (!maint & n_t_82x); /* e17: ds8881n */ /* data4_low = !(n_t_3x & msb8); */ /* data5_low = !(n_t_3x & n_t_62x); */ /* data6_low = !(n_t_3x & n_t_63x); */ /* data7_low = !(n_t_3x & n_t_64x); */ /* e18: ds8881n */ /* internal_io_low = internal_io_low; */ /* int_rqst_low = !(n_t_76x & n_t_69x); */ /* skip_low = skip_low; */ /* rx_run_low = !run; */ /* e19: sn7402 */ clk_parity_low = !(n_t_84x # shift); n_t_54x = !(n_t_49x # init); n_t_49x = !(strobe # done_skip_low); n_t_3x = !(n_t_4x # xfer_iot_low); /* e20: sn7427 */ n_t_84x = !(strobe # n_t_79x # enb_buf_ld_low); n_t_4x = !(maint # rd # done); /* e21: sn74179 */ n_t_64x.ar = init; n_t_64x.ck = !clk_parity_low; n_t_64x.d = n_t_31x & enb_buf_ld_low # data7 & !enb_buf_ld_low & b # n_t_64x & !enb_buf_ld_low & !b; n_t_63x.ar = init; n_t_63x.ck = !clk_parity_low; n_t_63x.d = n_t_64x & enb_buf_ld_low # data6 & !enb_buf_ld_low & b # n_t_63x & !enb_buf_ld_low & !b; n_t_62x.ar = init; n_t_62x.ck = !clk_parity_low; n_t_62x.d = n_t_63x & enb_buf_ld_low # data5 & !enb_buf_ld_low & b # n_t_62x & !enb_buf_ld_low & !b; msb8.ar = init; msb8.ck = !clk_parity_low; msb8.d = n_t_62x & enb_buf_ld_low # data4 & !enb_buf_ld_low & b # msb8 & !enb_buf_ld_low & !b; /* e22: sn7474 */ n_t_68x.ar = !n_t_54x; n_t_68x.d = b; n_t_68x.ck = done; n_t_68x.ap = maint; n_t_69x.ar = init; n_t_69x.d = n_t_68x; n_t_69x.ck = tp4; n_t_69x.ap = !b; /* e23: sn7402 */ n_t_58x = !(n_t_57x # init); n_t_55x = !(n_t_56x # init); n_t_56x = !(strobe # err_skip_low); n_t_57x = !(strobe # tr_skip_low); /* e24: sn7400 */ init = !(!initialize & n_t_45x); n_t_85x = !(n_t_80x & n_t_78x); n_t_82x = !(n_t_81x & !rd); n_t_40x = !(parity_low & parity); /* e25: ds8837n */ data11 = !data11_low & !internal_io_low; data10 = !data10_low & !internal_io_low; data9 = !data9_low & !internal_io_low; data8 = !data8_low & !internal_io_low; data7 = !data7_low & !internal_io_low; data6 = !data6_low & !internal_io_low; /* e26: sn7474 */ n_t_61x.ar = !n_t_55x; n_t_61x.d = b; n_t_61x.ck = error; n_t_61x.ap = maint; n_t_70x.ar = init; n_t_70x.d = n_t_61x; n_t_70x.ck = tp4; n_t_70x.ap = !b; /* e27: sn7476 */ parity_low.ap = !n_t_46x; parity_low.k = n_t_42x; parity_low.j = n_t_42x; parity_low.ck = clk_parity_low; parity_low.ar = !b; /* e28: sn7420 */ n_t_78x = !(!maint & !strobe & !lcd_iot_low & done); n_t_80x = !(!xfer_iot_low & !done & !maint & !strobe); /* e29: ds8881n */ /* data8_low = !(n_t_3x & n_t_31x); */ /* data9_low = !(n_t_3x & n_t_66x); */ /* data10_low = !(n_t_3x & n_t_67x); */ /* data11_low = !(n_t_3x & n_t_65x); */ /* e30: sn7474 */ n_t_59x.ar = !n_t_58x; n_t_59x.d = b; n_t_59x.ck = xfer_req; n_t_59x.ap = maint; n_t_72x.ar = init; n_t_72x.d = n_t_59x; n_t_72x.ck = tp4; n_t_72x.ap = !b; /* e32: sn7404 */ /* e33: sn74179 */ n_t_65x.ar = init; n_t_65x.ck = !clk_parity_low; n_t_65x.d = rx_data & enb_buf_ld_low # data11 & !enb_buf_ld_low & b # n_t_65x & !enb_buf_ld_low & !b; n_t_67x.ar = init; n_t_67x.ck = !clk_parity_low; n_t_67x.d = n_t_65x & enb_buf_ld_low # data10 & !enb_buf_ld_low & b # n_t_67x & !enb_buf_ld_low & !b; n_t_66x.ar = init; n_t_66x.ck = !clk_parity_low; n_t_66x.d = n_t_67x & enb_buf_ld_low # data9 & !enb_buf_ld_low & b # n_t_66x & !enb_buf_ld_low & !b; n_t_31x.ar = init; n_t_31x.ck = !clk_parity_low; n_t_31x.d = n_t_66x & enb_buf_ld_low # data8 & !enb_buf_ld_low & b # n_t_31x & !enb_buf_ld_low & !b; /* e34: sn7400 */ err_skip_low = !(n_t_70x & !ser_iot_low); tr_skip_low = !(!str_iot_low & n_t_72x); done_skip_low = !(!sdn_iot_low & n_t_69x); /* e35: sp314n */ internal_io_low = md03_low # md05_low # md04_low # io_pause_low # n_t_1x # n_t_5x # n_t_6x; /* e36: ds8837n */ error = !rx_error_low & !maint; xfer_req = !rx_tr_req_low & !maint; done = !rx_done_low & !maint; rx_data = !rx_data_low & !maint; shift = !rx_shift_low & !maint; rd = !rx_out_low & !maint; /* e37: ds8881n */ /* rx_init_low = !init; */ /* e38: sn7404 */ /* e39: sp384n */ n_t_81x = done # xfer_req; /* e40: ds8837n */ n_t_9x = !md06_low & !io_pause_low; n_t_8x = !md07_low & !io_pause_low; n_t_7x = !md08_low & !io_pause_low; n_t_53x = bmb11 & !internal_io_low; n_t_52x = bmb10 & !internal_io_low; n_t_51x = bmb09 & !internal_io_low; /* e41: sn7442 */ !lcd_iot_low = !internal_io_low & !n_t_51x & !n_t_52x & n_t_53x; !xfer_iot_low = !internal_io_low & !n_t_51x & n_t_52x & !n_t_53x; !str_iot_low = !internal_io_low & !n_t_51x & n_t_52x & n_t_53x; !ser_iot_low = !internal_io_low & n_t_51x & !n_t_52x & !n_t_53x; !sdn_iot_low = !internal_io_low & n_t_51x & !n_t_52x & n_t_53x; !intr_iot_low = !internal_io_low & n_t_51x & n_t_52x & !n_t_53x; !init_iot_low = !internal_io_low & n_t_51x & n_t_52x & n_t_53x; /* e42: sn7438 */ /* data0_low = !(bac00 & c1_low); */ /* data1_low = !(bac01 & c1_low); */ /* data2_low = !(bac02 & c1_low); */ /* data3_low = !(bac03 & c1_low); */ /* e43: sn7438 */ /* data4_low = !(bac04 & c1_low); */ /* data5_low = !(bac05 & c1_low); */ /* data6_low = !(bac06 & c1_low); */ /* data7_low = !(bac07 & c1_low); */ /* e44: sn7438 */ /* data8_low = !(bac08 & c1_low); */ /* data9_low = !(bac09 & c1_low); */ /* data10_low = !(bac10 & c1_low); */ /* data11_low = !(bac11 & c1_low); */ /* ic1: sn7404 */ /* ic2: sn7407 */ /* bskip = !(!skip_low); */ /* birq = !(!int_rqst_low); */ /* ic3: sn7474 */ io_pause_low.ap = !strobe; io_pause_low.d = !iot; io_pause_low.ck = !bts3; io_pause_low.ar = 'b'0; /* ic4: sn7400 */ iot = !(n_t_41x & bmb02); baclr = !(!io_pause_low & !c0_low); n_t_41x = !(bmb00 & bmb01); /* ic5: sn7402 */ !ac06l = !(c1_low # data6_low); !ac07l = !(data7_low # c1_low); !ac08l = !(c1_low # data8_low); !ac09l = !(data9_low # c1_low); /* ic6: sn7402 */ !ac10l = !(c1_low # data10_low); !ac11l = !(data11_low # c1_low); !ac04l = !(data4_low # c1_low); !ac05l = !(data5_low # c1_low); /* ic7: sn7406 */ /* ac06l = ac06l; */ /* ac07l = ac07l; */ /* ac08l = ac08l; */ /* ac09l = ac09l; */ /* ac10l = ac10l; */ /* ac11l = ac11l; */ /* ic8: sn7402 */ !ac00l = !(data0_low # c1_low); !ac01l = !(data1_low # c1_low); !ac02l = !(data2_low # c1_low); !ac03l = !(data3_low # c1_low); /* ic9: sn7427 */ strobe = !(biop1 # biop2 # biop4); /* ic10: sn7406 */ /* ac00l = ac00l; */ /* ac01l = ac01l; */ /* ac02l = ac02l; */ /* ac03l = ac03l; */ /* ac04l = ac04l; */ /* ac05l = ac05l; */ /* ic19: sn7404 */ /* r1: r_us_ */ /* r2: r_us_ */ /* r3: r_us_ */ /* r4: r_us_ */ /* r5: r_us_ */ /* r6: r_us_ */ /* r7: r_us_ */ /* r8: r_us_ */ /* r9: r_us_ */ /* r10: r_us_ */ /* r11: r_us_ */ /* r12: r_us_ */ /* r13: r_us_ */ /* r14: r_us_ */ /* r15: r_us_ */ /* r16: r_us_ */ /* r17: r_us_ */ /* r18: r_us_ */ /* r19: r_us_ */ /* r20: r_us_ */ b = 'b'1; /* r25: r_us_ */ /* r26: r_us_ */ /* r27: r_us_ */ /* r28: r_us_ */ /* r29: r_us_ */ /* r30: r_us_ */ /* r31: r_us_ */ /* r32: r_us_ */ /* r33: r_us_ */ /* r34: r_us_ */ /* r35: r_us_ */ /* r36: r_us_ */ /* r37: r_us_ */ /* r38: r_us_ */ /* r39: r_us_ */ /* r40: r_us_ */ /* u$2: quad */ /* Open collector 'wire-or's */ property atmel {open_collector= ac00l}; ac00l.oe = !ac00l; property atmel {open_collector= ac01l}; ac01l.oe = !ac01l; property atmel {open_collector= ac02l}; ac02l.oe = !ac02l; property atmel {open_collector= ac03l}; ac03l.oe = !ac03l; property atmel {open_collector= ac04l}; ac04l.oe = !ac04l; property atmel {open_collector= ac05l}; ac05l.oe = !ac05l; property atmel {open_collector= ac06l}; ac06l.oe = !ac06l; property atmel {open_collector= ac07l}; ac07l.oe = !ac07l; property atmel {open_collector= ac08l}; ac08l.oe = !ac08l; property atmel {open_collector= ac09l}; ac09l.oe = !ac09l; property atmel {open_collector= ac10l}; ac10l.oe = !ac10l; property atmel {open_collector= ac11l}; ac11l.oe = !ac11l; property atmel {open_collector= birq}; !birq = (!int_rqst_low); birq.oe = (!int_rqst_low); property atmel {open_collector= bskip}; !bskip = (!skip_low); bskip.oe = (!skip_low); !c1_low = (!eight & n_t_34x); !data0_low = (n_t_12x & msb12) # (bac00 & c1_low); !data10_low = (n_t_3x & n_t_67x) # (bac10 & c1_low); !data11_low = (n_t_3x & n_t_65x) # (bac11 & c1_low); !data1_low = (n_t_12x & n_t_33x) # (bac01 & c1_low); !data2_low = (n_t_12x & n_t_2x) # (bac02 & c1_low); !data3_low = (n_t_12x & n_t_60x) # (bac03 & c1_low); !data4_low = (n_t_3x & msb8) # (bac04 & c1_low); !data5_low = (n_t_3x & n_t_62x) # (bac05 & c1_low); !data6_low = (n_t_3x & n_t_63x) # (bac06 & c1_low); !data7_low = (n_t_3x & n_t_64x) # (bac07 & c1_low); !data8_low = (n_t_3x & n_t_31x) # (bac08 & c1_low); !data9_low = (n_t_3x & n_t_66x) # (bac09 & c1_low); !int_rqst_low = (n_t_76x & n_t_69x); property atmel {open_collector= rx_12_bit_low}; !rx_12_bit_low = !eight; rx_12_bit_low.oe = !eight; property atmel {open_collector= rx_data_low}; !rx_data_low = (!rd & n_t_42x); rx_data_low.oe = (!rd & n_t_42x); property atmel {open_collector= rx_init_low}; !rx_init_low = init; rx_init_low.oe = init; property atmel {open_collector= rx_run_low}; !rx_run_low = run; rx_run_low.oe = run;