/* This file is generated by topld.pl!! */ /* Please don't edit it. */ Name M840K ; PartNo cpld ; Date XX/XX/XXXX ; Revision 01 ; Designer ; Company ; Assembly None ; Location E1 ; Device f1508isptqfp100; $DEFINE OPTIMIZE $UNDEF OPTIMIZE /* Input Pins */ pin = multi_out_l; pin = n3vr40; pin = n_t_101x; pin = n_t_108x; pin = n_t_116x; pin = n_t_22x; pin = n_t_33x; pin = n_t_34x; pin = n_t_70x; pin = n_t_72x; pin = n_t_75x; pin = n_t_76x; pin = n_t_7x; pin = n_t_81x; pin = n_t_82x; pin = n_t_88x; pin = pun_to_speed; pin = punch_feed_l; pin = r_feed_sw_l; pin = r_offline_l; pin = rd_hole1; pin = rd_hole2; pin = rd_hole3; pin = rd_hole4; pin = rd_hole5; pin = rd_hole6; pin = rd_hole7; pin = rd_hole8; /* Output Pins */ pin = ba; pin = ba_l; pin = bb; pin = bb_l; pin = c1_l; pin = data04_l; pin = data05_l; pin = data06_l; pin = data07_l; pin = data08_l; pin = data09_l; pin = data10_l; pin = data11_l; pin = enable; pin = enable_l; pin = initialize; pin = internal_io_l; pin = interrupt_l; pin = md10_l; pin = md11_l; pin = md3_l; pin = md4_l; pin = md5_l; pin = md6_l; pin = md7_l; pin = md8_l; pin = md9_l; pin = motor_power; pin = motor_stopping_l; pin = n15v; pin = n_t_100x; pin = n_t_106x; pin = n_t_107x; pin = n_t_112x; pin = n_t_115x; pin = n_t_129x; pin = n_t_131x; pin = n_t_132x; pin = n_t_18x; pin = n_t_73x; pin = n_t_83x; pin = n_t_84x; pin = n_t_85x; pin = n_t_86x; pin = n_t_87x; pin = n_t_89x; pin = n_t_93x; pin = pause_l; pin = pls; pin = pn_hole1; pin = pn_hole2; pin = pn_hole3; pin = pn_hole4; pin = pn_hole5; pin = pn_hole6; pin = pn_hole7; pin = pn_hole8; pin = punch_done; pin = punch_done_l; pin = rdata_to_bus; pin = skip_l; pin = tp3; node rdr_run; node n_t_90x; node n_t_49x; node n_t_48x; node n_t_126x; node punch_flag; node n_t_78x; node n_t_23x; node int_ena; node n_t_24x; node n_t_26x; node n_t_27x; node n_t_28x; node n_t_56x; node n_t_57x; node n_t_58x; node n_t_59x; node n_t_29x; node n_t_30x; node n_t_31x; node n_t_32x; node n_t_60x; node n_t_63x; node n_t_61x; node n_t_62x; /* Internal nodes */ $IFNDEF OPTIMIZE node a_or_b; node ab_l; node btp3; node catch_pulse_l; node clock_pulse; node clock_pulse_l; node ena_pun_buffr_l; node have_tape; node init_or_eot_l; node initialize_l; node iot01; node iot02; node iot_l; node n_t_109x; node n_t_10x; node n_t_110x; node n_t_111x; node n_t_113x; node n_t_114x; node n_t_117x; node n_t_118x; node n_t_119x; node n_t_120x; node n_t_121x; node n_t_122x; node n_t_123x; node n_t_124x; node n_t_125x; node n_t_127x; node n_t_128x; node n_t_12x; node n_t_130x; node n_t_14x; node n_t_15x; node n_t_16x; node n_t_17x; node n_t_19x; node n_t_1x; node n_t_20x; node n_t_25x; node n_t_35x; node n_t_36x; node n_t_37x; node n_t_39x; node n_t_40x; node n_t_41x; node n_t_42x; node n_t_43x; node n_t_46x; node n_t_47x; node n_t_4x; node n_t_50x; node n_t_51x; node n_t_52x; node n_t_53x; node n_t_54x; node n_t_55x; node n_t_5x; node n_t_64x; node n_t_65x; node n_t_66x; node n_t_67x; node n_t_69x; node n_t_6x; node n_t_71x; node n_t_74x; node n_t_79x; node n_t_80x; node out_of_tape; node pce_l; node pcf_l; node piop0; node piop1; node piop2; node piop4; node ppc_l; node psf_l; node punch_strobe_l; node rbc_l; node rdata_strobe; node rdr_run_l; node rfc_l; node riop0; node riop1; node riop2_l; node riop4_l; node rotate_pulse; node rpe_l; node rrb_l; node rsf_l; node shift_pulse_l; $ENDIF /* Code nodes */ /* Equations */ /* 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: c_us */ /* c28: c_us */ /* c29: c_us */ /* c30: c_us */ /* c31: cpol_use */ /* 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: c_us */ /* c43: c_us */ /* c44: c_us */ /* c45: cpol_use */ /* c46: cpol_use */ /* c47: cpol_use */ /* c48: cpol_use */ /* c52: cpol_use */ /* c53: cpol_use */ /* c54: cpol_use */ /* c55: c_us */ /* c56: cpol_use */ /* c57: cpol_use */ /* c58: cpol_use */ /* c59: cpol_use */ /* c60: c_us */ /* c61: c_us */ /* c62: c_us */ /* c63: c_us */ /* c64: c_us */ /* c65: cpol_use */ /* c66: cpol_use */ /* e1: sn7410 */ n_t_121x = !(riop2_l & riop4_l & init_or_eot_l); shift_pulse_l = !(enable & n_t_72x & n_t_74x); n_t_74x = !(n_t_71x & n_t_75x); /* e2: sn7474 */ rdr_run.ar = !init_or_eot_l; rdr_run.d = 'b'0; rdr_run.ck = rdata_strobe; rdr_run.ap = !riop4_l; rdr_run_l = !rdr_run; n_t_90x.ap = !initialize_l; n_t_90x.d = !n_t_120x; n_t_90x.ck = clock_pulse; n_t_90x.ar = !n_t_113x; /* e3: sn7404 */ bb_l = !n_t_48x; ba_l = !n_t_49x; bb = !n_t_47x; ba = !n_t_69x; n_t_71x = !multi_out_l; n_t_109x = !n_t_110x; /* e5: sn7400 */ clock_pulse_l = !(n_t_71x & n_t_76x); n_t_130x = !(n_t_35x & initialize_l); n_t_35x = !(out_of_tape & clock_pulse); enable = !(n_t_90x & r_feed_sw_l); /* e6: sn7400 */ n_t_119x = !(r_feed_sw_l & n_t_125x); rotate_pulse = !(catch_pulse_l & shift_pulse_l); ab_l = !(n_t_49x & n_t_48x); catch_pulse_l = !(n_t_88x & n_t_89x); /* e8: sn7404 */ motor_power = !n_t_78x; n_t_51x = !n_t_121x; init_or_eot_l = !n_t_130x; n_t_73x = !n_t_74x; clock_pulse = !clock_pulse_l; n_t_113x = !n_t_119x; /* e9: sn7474 */ n_t_49x.ar = !n_t_70x; n_t_49x.d = n_t_47x; n_t_49x.ck = rotate_pulse; n_t_49x.ap = !n_t_70x; n_t_69x = !n_t_49x; n_t_48x.ar = !n_t_70x; n_t_48x.d = n_t_49x; n_t_48x.ck = rotate_pulse; n_t_48x.ap = !n_t_70x; n_t_47x = !n_t_48x; /* e10: sn7474 */ n_t_126x.ap = !initialize_l; n_t_126x.d = 'b'1; n_t_126x.ck = punch_done_l; n_t_126x.ar = !punch_strobe_l; punch_flag.ar = !n_t_124x; punch_flag.d = n_t_81x; punch_flag.ck = n_t_126x; punch_flag.ap = !n_t_81x; /* e11: sn7410 */ n_t_120x = !(ab_l & a_or_b & rdr_run_l); n_t_125x = !(clock_pulse_l & rdr_run & motor_stopping_l); riop4_l = !(btp3 & have_tape & n_t_25x); /* e12: sn7474 */ n_t_78x.ap = !n3vr40; n_t_78x.d = 'b'1; n_t_78x.ck = motor_stopping_l; n_t_78x.ar = !shift_pulse_l; n_t_23x.ar = !n_t_51x; n_t_23x.d = rdr_run; n_t_23x.ck = rdata_strobe; n_t_23x.ap = !n_t_33x; /* e13: sn7400 */ n_t_127x = !(punch_feed_l & n_t_126x); n_t_122x = !(btp3 & piop2); a_or_b = !(n_t_69x & n_t_47x); n_t_128x = !(n_t_127x & pun_to_speed); /* e14: sn7474 */ int_ena.ar = !n_t_80x; int_ena.d = n_t_81x; int_ena.ck = n_t_79x; int_ena.ap = !initialize_l; n_t_129x.ap = !n3vr40; n_t_129x.d = !n_t_128x; n_t_129x.ck = n_t_22x; n_t_129x.ar = !punch_done_l; /* e16: sp384n */ n_t_6x = pause_l; ena_pun_buffr_l = n_t_18x; /* e17: n8881n */ /* internal_io_l = !iot02; */ /* internal_io_l = !iot01; */ /* c1_l = !rdata_to_bus; */ /* n_t_93x = !(n_t_109x & n_t_107x); */ /* e18: n8881n */ /* skip_l = !(piop1 & punch_flag); */ /* skip_l = !(n_t_23x & riop1); */ /* interrupt_l = !(n_t_23x & int_ena); */ /* interrupt_l = !(int_ena & punch_flag); */ /* e20: sp380n */ !n_t_17x = md7_l # n_t_6x; !n_t_5x = n_t_6x # md6_l; !n_t_14x = md5_l # n_t_6x; !n_t_12x = n_t_6x # md4_l; /* e21: sp314n */ !iot01 = n_t_10x # n_t_17x # n_t_5x # n_t_14x # n_t_12x # md8_l # n_t_6x; /* e22: sn7400 */ riop2_l = !(rdata_to_bus & btp3); n_t_80x = !(btp3 & piop0); n_t_79x = !(riop0 & btp3); punch_strobe_l = !(btp3 & piop4); /* e23: sn7400 */ n_t_111x = !(n_t_106x & n_t_110x); out_of_tape = !(n_t_107x & r_offline_l); n_t_115x = !(n_t_108x & n_t_106x); /* e24: sp380n */ !iot_l = iot01 # iot02; !n_t_15x = n_t_6x # md8_l; !n_t_10x = md3_l # n_t_6x; !n_t_1x = tp3; /* e25: sp314n */ !iot02 = n_t_12x # n_t_14x # n_t_15x # n_t_5x # md7_l # n_t_10x # n_t_6x; /* e26: sn7404 */ n_t_106x = !n_t_7x; enable_l = !enable; n_t_37x = !rdata_strobe; btp3 = !n_t_1x; have_tape = !out_of_tape; punch_done = !punch_done_l; /* e27: dec8251 */ !pce_l = !n_t_18x & !n_t_4x & !n_t_19x & !n_t_20x; !psf_l = !n_t_18x & !n_t_4x & !n_t_19x & n_t_20x; !pcf_l = !n_t_18x & !n_t_4x & n_t_19x & !n_t_20x; !ppc_l = !n_t_18x & n_t_4x & !n_t_19x & !n_t_20x; !pls = !n_t_18x & n_t_4x & n_t_19x & !n_t_20x; /* e28: sn7400 */ rdata_to_bus = !(rbc_l & rrb_l); n_t_25x = !(rbc_l & rfc_l); piop2 = !(pcf_l & pls); piop4 = !(pls & ppc_l); /* e29: sn7404 */ riop1 = !rsf_l; riop0 = !rpe_l; n_t_18x = !iot02; piop0 = !pce_l; piop1 = !psf_l; n_t_16x = !iot01; /* e30: sp380n */ !n_t_20x = md11_l # iot_l; !initialize_l = initialize; !n_t_19x = md10_l # iot_l; !n_t_4x = iot_l # md9_l; /* e31: dec8251 */ !rpe_l = !n_t_16x & !n_t_4x & !n_t_19x & !n_t_20x; !rsf_l = !n_t_16x & !n_t_4x & !n_t_19x & n_t_20x; !rrb_l = !n_t_16x & !n_t_4x & n_t_19x & !n_t_20x; !rfc_l = !n_t_16x & n_t_4x & !n_t_19x & !n_t_20x; !rbc_l = !n_t_16x & n_t_4x & n_t_19x & !n_t_20x; /* e32: sn7400 */ n_t_114x = !(n_t_112x & n_t_116x); n_t_118x = !(a_or_b & ab_l); n_t_117x = !(clock_pulse & n_t_118x); n_t_112x = !(n_t_117x & n_t_114x); /* e33: n8881n */ /* data04_l = !(n_t_24x & rdata_to_bus); */ /* data05_l = !(n_t_26x & rdata_to_bus); */ /* data07_l = !(rdata_to_bus & n_t_28x); */ /* data06_l = !(rdata_to_bus & n_t_27x); */ /* e34: dec8271 */ n_t_24x.ar = !n_t_34x; n_t_24x.d = rd_hole8 & n_t_34x # n_t_24x & !n_t_34x; n_t_24x.ck = !n_t_37x; n_t_26x.ar = !n_t_34x; n_t_26x.d = rd_hole7 & n_t_34x # n_t_26x & !n_t_34x; n_t_26x.ck = !n_t_37x; n_t_27x.ar = !n_t_34x; n_t_27x.d = rd_hole6 & n_t_34x # n_t_27x & !n_t_34x; n_t_27x.ck = !n_t_37x; n_t_28x.ar = !n_t_34x; n_t_28x.d = rd_hole5 & n_t_34x # n_t_28x & !n_t_34x; n_t_28x.ck = !n_t_37x; /* e35: sn7420 */ n_t_110x = !(n_t_90x & n_t_111x & n_t_111x); n_t_123x = !(initialize_l & n_t_122x & n_t_122x); /* e36: sp380n */ !n_t_50x = data07_l # ena_pun_buffr_l; !n_t_46x = ena_pun_buffr_l # data06_l; !n_t_43x = data05_l # ena_pun_buffr_l; !n_t_42x = ena_pun_buffr_l # data04_l; /* e37: dec8271 */ n_t_56x.ar = !punch_feed_l; n_t_56x.d = n_t_50x & n_t_34x # n_t_56x & !n_t_34x; n_t_56x.ck = !punch_strobe_l; n_t_57x.ar = !punch_feed_l; n_t_57x.d = n_t_46x & n_t_34x # n_t_57x & !n_t_34x; n_t_57x.ck = !punch_strobe_l; n_t_58x.ar = !punch_feed_l; n_t_58x.d = n_t_42x & n_t_34x # n_t_58x & !n_t_34x; n_t_58x.ck = !punch_strobe_l; n_t_59x.ar = !punch_feed_l; n_t_59x.d = n_t_43x & n_t_34x # n_t_59x & !n_t_34x; n_t_59x.ck = !punch_strobe_l; /* e38: sn7404 */ pn_hole7 = !n_t_53x; n_t_55x = !n_t_56x; n_t_54x = !n_t_57x; n_t_53x = !n_t_59x; n_t_52x = !n_t_58x; pn_hole8 = !n_t_52x; /* e39: n8881n */ /* data08_l = !(n_t_29x & rdata_to_bus); */ /* data09_l = !(rdata_to_bus & n_t_30x); */ /* data10_l = !(n_t_31x & rdata_to_bus); */ /* data11_l = !(rdata_to_bus & n_t_32x); */ /* e40: dec8271 */ n_t_29x.ar = !n_t_34x; n_t_29x.d = rd_hole4 & n_t_34x # n_t_29x & !n_t_34x; n_t_29x.ck = !n_t_37x; n_t_30x.ar = !n_t_34x; n_t_30x.d = rd_hole3 & n_t_34x # n_t_30x & !n_t_34x; n_t_30x.ck = !n_t_37x; n_t_31x.ar = !n_t_34x; n_t_31x.d = rd_hole2 & n_t_34x # n_t_31x & !n_t_34x; n_t_31x.ck = !n_t_37x; n_t_32x.ar = !n_t_34x; n_t_32x.d = rd_hole1 & n_t_34x # n_t_32x & !n_t_34x; n_t_32x.ck = !n_t_37x; /* e41: sn7404 */ pn_hole3 = !n_t_65x; pn_hole4 = !n_t_64x; pn_hole5 = !n_t_55x; pn_hole6 = !n_t_54x; pn_hole2 = !n_t_66x; pn_hole1 = !n_t_67x; /* e42: sp380n */ !n_t_36x = data11_l # ena_pun_buffr_l; !n_t_39x = ena_pun_buffr_l # data10_l; !n_t_40x = data09_l # ena_pun_buffr_l; !n_t_41x = ena_pun_buffr_l # data08_l; /* e43: dec8271 */ n_t_60x.ar = !punch_feed_l; n_t_60x.d = n_t_36x & n_t_34x # n_t_60x & !n_t_34x; n_t_60x.ck = !punch_strobe_l; n_t_63x.ar = !punch_feed_l; n_t_63x.d = n_t_39x & n_t_34x # n_t_63x & !n_t_34x; n_t_63x.ck = !punch_strobe_l; n_t_61x.ar = !punch_feed_l; n_t_61x.d = n_t_41x & n_t_34x # n_t_61x & !n_t_34x; n_t_61x.ck = !punch_strobe_l; n_t_62x.ar = !punch_feed_l; n_t_62x.d = n_t_40x & n_t_34x # n_t_62x & !n_t_34x; n_t_62x.ck = !punch_strobe_l; /* e44: sn7404 */ n_t_124x = !n_t_123x; rdata_strobe = !n_t_116x; n_t_67x = !n_t_60x; n_t_66x = !n_t_63x; n_t_65x = !n_t_62x; n_t_64x = !n_t_61x; /* Open collector 'wire-or's */ property atmel {open_collector= c1_l}; !c1_l = rdata_to_bus; c1_l.oe = rdata_to_bus; property atmel {open_collector= data04_l}; !data04_l = (n_t_24x & rdata_to_bus); data04_l.oe = (n_t_24x & rdata_to_bus); property atmel {open_collector= data05_l}; !data05_l = (n_t_26x & rdata_to_bus); data05_l.oe = (n_t_26x & rdata_to_bus); property atmel {open_collector= data06_l}; !data06_l = (rdata_to_bus & n_t_27x); data06_l.oe = (rdata_to_bus & n_t_27x); property atmel {open_collector= data07_l}; !data07_l = (rdata_to_bus & n_t_28x); data07_l.oe = (rdata_to_bus & n_t_28x); property atmel {open_collector= data08_l}; !data08_l = (n_t_29x & rdata_to_bus); data08_l.oe = (n_t_29x & rdata_to_bus); property atmel {open_collector= data09_l}; !data09_l = (rdata_to_bus & n_t_30x); data09_l.oe = (rdata_to_bus & n_t_30x); property atmel {open_collector= data10_l}; !data10_l = (n_t_31x & rdata_to_bus); data10_l.oe = (n_t_31x & rdata_to_bus); property atmel {open_collector= data11_l}; !data11_l = (rdata_to_bus & n_t_32x); data11_l.oe = (rdata_to_bus & n_t_32x); property atmel {open_collector= internal_io_l}; !internal_io_l = (iot02) # (iot01); internal_io_l.oe = (iot02) # (iot01); property atmel {open_collector= interrupt_l}; !interrupt_l = (n_t_23x & int_ena) # (int_ena & punch_flag); interrupt_l.oe = (n_t_23x & int_ena) # (int_ena & punch_flag); property atmel {open_collector= n_t_93x}; !n_t_93x = (n_t_109x & n_t_107x); n_t_93x.oe = (n_t_109x & n_t_107x); property atmel {open_collector= skip_l}; !skip_l = (piop1 & punch_flag) # (n_t_23x & riop1); skip_l.oe = (piop1 & punch_flag) # (n_t_23x & riop1);