/* This file is generated by ttl2pld.pl */ /* Please don't edit it. */ Name war ; PartNo cpld ; Date 12/5/2018 ; Revision 01 ; Designer ; Company ; Assembly None ; Location E3 ; Device f1508ispplcc84; /* Input Pins */ pin 84 = del_1_low; pin 1 = grn_delay; pin 25 = initialize; pin 81 = ld_del_low; pin 50 = md3_low; pin 44 = md4_low; pin 41 = md5_low; pin 40 = md6_low; pin 39 = md7_low; pin 22 = md8_low; pin 21 = md9_low; pin 20 = md10_low; pin 18 = md11_low; pin 54 = n_t_35x; pin 33 = pause_low; pin 83 = red_delay; pin 52 = set_done; pin 29 = tp3; $IFDEF HCONNECTOR pin = x_ac_low; pin = x_dec; pin = x_inc; pin = y_ac_low; pin = y_dec; pin = y_inc; pin = z_pulse; $ENDIF pin 2 = !d00; pin 4 = !d01; pin 5 = !d02; pin 6 = !d03; pin 8 = !d08; pin 9 = !d09; pin 10 = !d10; pin 11 = !d11; /* Output Pins */ pin 55 = b_dixy_low; pin 51 = btp3; pin 31 = c0_low; pin 30 = c1_low; pin 57 = chan_low; pin 56 = col_red_low; pin 49 = data00_low; pin 48 = data01_low; pin 46 = data02_low; pin 45 = data03_low; pin 37 = data04_low; pin 36 = data05_low; pin 35 = data06_low; pin 34 = data07_low; pin 17 = data08_low; pin 16 = data09_low; pin 15 = data10_low; pin 12 = data11_low; pin 63 = dly_done_low; pin 58 = erase_low; pin 28 = internal_io_low; pin 27 = interrupt_low; pin 61 = n_t_27x; pin 80 = non_store_low; pin 24 = skip_low; pin 60 = write_thru_low; pin 77 = load_x; pin 79 = load_y; pin 64 = !di02; pin 65 = di03; pin 67 = di04; pin 68 = di05; pin 69 = di06; pin 70 = di07; pin 73 = di08; pin 74 = di09; pin 75 = di10; pin 76 = di11; /* Internal nodes */ node write_thru; node store; node erase; node chan; node color; node int_en; node n_t_1x; node x02; node x03; node x04; node x05; node x06; node x07; node x08; node x09; node x10; node x11; node y02; node y03; node y04; node y05; node y06; node y07; node y08; node y09; node y10; node y11; node int_enable; node device_flag; /* Equations */ spare1 = 'b'0; /* BUGBUG: The !! in the next line should not be needed! */ n_t_15x = n_t_14x; /* W1 */ /*n_t_15x = md5_low; /* W2 */ $IFNDEF HCONNECTOR x_ac_low = 'b'1; x_inc = 'b'1; x_dec = 'b'1; y_ac_low = 'b'1; y_inc = 'b'1; y_dec = 'b'1; z_pulse = 'b'1; $ENDIF /* e3: sn7402 */ dly_done_low = !(red_delay # grn_delay); n_t_26x = !(clear # set_done); n_t_34x = !(grn_delay # red_delay); clear_done_low = !(n_t_35x # erase); /* e5: sn7474 */ write_thru.ar = clear; write_thru.d = n_t_13x; write_thru.ck = ld_en_reg; store.ar = clear; store.d = n_t_22x; store.ck = ld_en_reg; /* e6: sn7474 */ erase.ar = !n_t_26x; erase.d = n_t_24x; erase.ck = ld_en_reg; color.ar = clear; color.d = n_t_11x; color.ck = ld_en_reg; color_low = !color; /* e7: n8881n */ /* col_red_low = !color; */ /* !n_t_27x = !(!store & color_low); */ /* e8: n8881n */ /* data07_low = !(!dire_low & store); */ /* data09_low = !(color & !dire_low); */ /* data06_low = !(!dire_low & write_thru); */ /* e9: sp380n */ !n_t_24x = data08_low # load_data_low; !n_t_22x = load_data_low # data07_low; !n_t_13x = data06_low # load_data_low; !n_t_11x = load_data_low # data09_low; /* e10: sn7406 */ /* erase_low = !erase; */ /* n_t_27x = n_t_27x; */ /* write_thru_low = !write_thru; */ /* n_t_43x = !color_low; */ /* non_store_low = store; */ /* e11: sp380n */ !n_t_14x = md5_low # pause_low; !n_t_17x = pause_low # md7_low; !n_t_12x = md4_low # pause_low; !n_t_10x = pause_low # md3_low; /* e12: sp314n */ /*!iot = n_t_15x # pause_low # n_t_17x # n_t_12x # n_t_10x # md6_low # md8_low;*/ iot = !(n_t_15x # pause_low # n_t_17x # n_t_12x # n_t_10x # md6_low # md8_low); /* e13: sp380n */ !di10 = data10_low # load_data_low; !di11 = data11_low # load_data_low; /* e13b: n8881n */ /* data11_low = !(d11 & !iot4l); */ /* data10_low = !(d10 & !iot4l); */ /* data09_low = !(d09 & !iot4l); */ /* data08_low = !(d08 & !iot4l); */ /* e14: sn7404 */ btp3 = tp3; /* e16: n8881n */ /* data10_low = !(chan & !dire_low); */ /* data11_low = !(!dire_low & int_en); */ /* c0_low = !n_t_4x; */ /* c1_low = dire_low; */ /* e17: n8881n */ /* skip_low = !(!disd_low & n_t_1x); */ /* interrupt_low = !(n_t_1x & int_en); */ /* internal_io_low = !iot; */ /* data00_low = !(n_t_1x & !dire_low); */ /* e18: sn7474 */ chan.ar = clear; chan.d = di10; chan.ck = ld_en_reg; int_en.ar = clear; int_en.d = di11; int_en.ck = ld_en_reg; /* e19: sn7474 */ n_t_1x.ar = !cl_done_low; n_t_1x.d = 'b'1; n_t_1x.ck = n_t_3x; /* e20: sn7402 */ ld_en_reg = !(dile_low # !tp3); load_en_low = !(!dilx_low # !dily_low); n_t_23x = !(dicl_low # !tp3); /* e21: sn7404 */ /* e22: sn7400 */ b_dicd_low = !(btp3 & !dicd_low); b_dixy_low = !(btp3 & !dixy_low); load_x = !(!dilx_low & btp3); load_y = !(btp3 & !dily_low); /* e23: sn74h21 */ cl_done_low = !clear & b_load_en_low & b_dixy_low & b_dicd_low; n_t_3x = del_1_low & !set_done & dly_done_low & ld_del_low; /* e24: sp380n */ !n_t_19x = md11_low # !iot; !n_t_20x = !iot # md10_low; clear = initialize # n_t_23x; !n_t_21x = md9_low # !iot; /* e25: dec8251 */ !dicl_low = iot & !n_t_21x & !n_t_20x & !n_t_19x; !dicd_low = iot & !n_t_21x & !n_t_20x & n_t_19x; !disd_low = iot & !n_t_21x & n_t_20x & !n_t_19x; !dilx_low = iot & !n_t_21x & n_t_20x & n_t_19x; !dily_low = iot & n_t_21x & !n_t_20x & !n_t_19x; !dixy_low = iot & n_t_21x & !n_t_20x & n_t_19x; !dile_low = iot & n_t_21x & n_t_20x & !n_t_19x; !dire_low = iot & n_t_21x & n_t_20x & n_t_19x; /* e26: sn7400 */ n_t_4x = !(dile_low & dire_low); !load_data_low = !(dile_low & load_en_low); n_t_2x = !(load_en_low & clear_done_low); b_load_en_low = !(n_t_2x & btp3); /* e27: sn7400 */ !n_t_9x = !(z_pulse & del_1_low); /* e28: sn7416 */ /* chan_low = !chan; */ /* n_t_9x = n_t_9x; */ /* !clear = !clear; */ /* clear = clear; */ /* !iot = !iot; */ /* load_data_low = load_data_low; */ /* e29: sn7404 */ /* e30: sn7404 */ /* e31: sp380n */ !di03 = data03_low # load_en_low; !di02 = load_en_low # data02_low; !di09 = data09_low # load_en_low; !di08 = load_en_low # data08_low; /* e32: sp380n */ !di04 = data04_low # load_en_low; !di05 = load_en_low # data05_low; !di06 = load_en_low # data06_low; !di07 = load_en_low # data07_low; /* e33: sn74193 */ y03.ap = !load_y & di03; y03.ar = !load_y & !di03; y03.t = 'b'1; y03.ck = n_t_64x # n_t_65x; y02.ap = !load_y & di02; y02.ar = !load_y & !di02; y02.t = 'b'1; y02.ck = n_t_64x & !y03 # n_t_65x & y03; /* e34: sn74193 */ x03.ap = !load_x & di03; x03.ar = !load_x & !di03; x03.t = 'b'1; x03.ck = n_t_60x # n_t_61x; x02.ap = !load_x & di02; x02.ar = !load_x & !di02; x02.t = 'b'1; x02.ck = n_t_60x & !x03 # n_t_61x & x03; /* e35: sn74193 */ y07.ap = !load_y & di07; y07.ar = !load_y & !di07; y07.t = 'b'1; y07.ck = n_t_66x # n_t_67x; y06.ap = !load_y & di06; y06.ar = !load_y & !di06; y06.t = 'b'1; y06.ck = n_t_66x & !y07 # n_t_67x & y07; y05.ap = !load_y & di05; y05.ar = !load_y & !di05; y05.t = 'b'1; y05.ck = n_t_66x & !y07 & !y06 # n_t_67x & y07 & y06; y04.ap = !load_y & di04; y04.ar = !load_y & !di04; y04.t = 'b'1; y04.ck = n_t_66x & !y05 & !y07 & !y06 # n_t_67x & y05 & y07 & y06; n_t_65x = y07 & y06 & y05 & y04; n_t_64x = !y07 & !y06 & !y05 & !y04; /* e36: sn74193 */ x07.ap = !load_x & di07; x07.ar = !load_x & !di07; x07.t = 'b'1; x07.ck = n_t_62x # n_t_63x; x06.ap = !load_x & di06; x06.ar = !load_x & !di06; x06.t = 'b'1; x06.ck = n_t_62x & !x07 # n_t_63x & x07; x05.ap = !load_x & di05; x05.ar = !load_x & !di05; x05.t = 'b'1; x05.ck = n_t_62x & !x07 & !x06 # n_t_63x & x07 & x06; x04.ap = !load_x & di04; x04.ar = !load_x & !di04; x04.t = 'b'1; x04.ck = n_t_62x & !x05 & !x07 & !x06 # n_t_63x & x05 & x07 & x06; n_t_61x = x07 & x06 & x05 & x04; n_t_60x = !x07 & !x06 & !x05 & !x04; /* e37: sn74193 */ y11.ap = !load_y & di11; y11.ar = !load_y & !di11; y11.t = 'b'1; y11.ck = y_dec # y_inc; y10.ap = !load_y & di10; y10.ar = !load_y & !di10; y10.t = 'b'1; y10.ck = y_dec & !y11 # y_inc & y11; y09.ap = !load_y & di09; y09.ar = !load_y & !di09; y09.t = 'b'1; y09.ck = y_dec & !y11 & !y10 # y_inc & y11 & y10; y08.ap = !load_y & di08; y08.ar = !load_y & !di08; y08.t = 'b'1; y08.ck = y_dec & !y09 & !y11 & !y10 # y_inc & y09 & y11 & y10; n_t_67x = y11 & y10 & y09 & y08; n_t_66x = !y11 & !y10 & !y09 & !y08; /* e38: sn74193 */ x11.ap = !load_x & di11; x11.ar = !load_x & !di11; x11.t = 'b'1; x11.ck = x_dec # x_inc; x10.ap = !load_x & di10; x10.ar = !load_x & !di10; x10.t = 'b'1; x10.ck = x_dec & !x11 # x_inc & x11; x09.ap = !load_x & di09; x09.ar = !load_x & !di09; x09.t = 'b'1; x09.ck = x_dec & !x11 & !x10 # x_inc & x11 & x10; x08.ap = !load_x & di08; x08.ar = !load_x & !di08; x08.t = 'b'1; x08.ck = x_dec & !x09 & !x11 & !x10 # x_inc & x09 & x11 & x10; n_t_63x = x11 & x10 & x09 & x08; n_t_62x = !x11 & !x10 & !x09 & !x08; /* e39: dec8235 */ /* data10_low = !(y11 & !y_ac_low # x11 & !x_ac_low); */ /* data11_low = !(y10 & !y_ac_low # x10 & !x_ac_low); */ /* data09_low = !(y09 & !y_ac_low # x09 & !x_ac_low); */ /* data08_low = !(y08 & !y_ac_low # x08 & !x_ac_low); */ /* e40: dec8235 */ /* data07_low = !(y07 & !y_ac_low # x07 & !x_ac_low); */ /* data06_low = !(y06 & !y_ac_low # x06 & !x_ac_low); */ /* data05_low = !(y05 & !y_ac_low # x05 & !x_ac_low); */ /* data04_low = !(y04 & !y_ac_low # x04 & !x_ac_low); */ /* e41: dec8235 */ /* data03_low = !(y03 & !y_ac_low # x03 & !x_ac_low); */ /* data02_low = !(y02 & !y_ac_low # x02 & !x_ac_low); */ /* e46: sn7430 */ iotl = !(md8_low & md3_low & md4_low & !md5_low & !pause_low & md7_low & !md6_low); /* e47: sn7474 */ int_enable.ap = !iot1l; int_enable.d = 'b'1; int_enable.ck = 'b'0; int_enable.ar = !n_t_208x; device_flag.ar = !n_t_219x; device_flag.d = 'b'0; device_flag.ck = 'b'0; device_flag.ap = !rd_rqst; /* e49: n8881n */ /* skip_low = iot3l; */ /* int_rqst_low = !(device_flag & int_enable); */ /* e50: n8881n */ /* data03_low = !(d03 & !iot4l); */ /* data02_low = !(d02 & !iot4l); */ /* data01_low = !(d01 & !iot4l); */ /* data00_low = !(d00 & !iot4l); */ /* e51: sn7442 */ !iot0l = !iotl & md9_low & md10_low & md11_low; !iot1l = !iotl & md9_low & md10_low & !md11_low; !iot2l = !iotl & md9_low & !md10_low & md11_low; !iot3l = !iotl & md9_low & !md10_low & !md11_low; !iot4l = !iotl & !md9_low & md10_low & md11_low; /* e52: sn7410 */ !n_t_208x = !(!initialize & iot0l & iot2l); !n_t_219x = !(iot2l & !initialize & iot4l); /* e55: n8881n */ /* internal_io_low = iotl; */ /* c1_low = iot4l; */ /* c0_low = iot4l; */ /* r168: r_us_ */ rd_rqst = 'b'1; /* Open collector 'wire-or's */ property atmel {open_collector= c0_low}; !c0_low = (n_t_4x) # (!iot4l); c0_low.oe = (n_t_4x) # (!iot4l); property atmel {open_collector= c1_low}; !c1_low = (!dire_low) # (!iot4l); c1_low.oe = (!dire_low) # (!iot4l); property atmel {open_collector= chan_low}; !chan_low = chan; chan_low.oe = chan; property atmel {open_collector= clear}; clear.oe = !clear; property atmel {open_collector= col_red_low}; !col_red_low = color; col_red_low.oe = color; property atmel {open_collector= data00_low}; !data00_low = (n_t_1x & !dire_low) # (d00 & !iot4l); data00_low.oe = (n_t_1x & !dire_low) # (d00 & !iot4l); property atmel {open_collector= data01_low}; !data01_low = (d01 & !iot4l); data01_low.oe = (d01 & !iot4l); property atmel {open_collector= data02_low}; !data02_low = (y02 & !y_ac_low # x02 & !x_ac_low) # (d02 & !iot4l); data02_low.oe = (y02 & !y_ac_low # x02 & !x_ac_low) # (d02 & !iot4l); property atmel {open_collector= data03_low}; !data03_low = (y03 & !y_ac_low # x03 & !x_ac_low) # (d03 & !iot4l); data03_low.oe = (y03 & !y_ac_low # x03 & !x_ac_low) # (d03 & !iot4l); property atmel {open_collector= data04_low}; !data04_low = (y04 & !y_ac_low # x04 & !x_ac_low); data04_low.oe = (y04 & !y_ac_low # x04 & !x_ac_low); property atmel {open_collector= data05_low}; !data05_low = (y05 & !y_ac_low # x05 & !x_ac_low); data05_low.oe = (y05 & !y_ac_low # x05 & !x_ac_low); property atmel {open_collector= data06_low}; !data06_low = (!dire_low & write_thru) # (y06 & !y_ac_low # x06 & !x_ac_low); data06_low.oe = (!dire_low & write_thru) # (y06 & !y_ac_low # x06 & !x_ac_low); property atmel {open_collector= data07_low}; !data07_low = (!dire_low & store) # (y07 & !y_ac_low # x07 & !x_ac_low); data07_low.oe = (!dire_low & store) # (y07 & !y_ac_low # x07 & !x_ac_low); property atmel {open_collector= data08_low}; !data08_low = (d08 & !iot4l) # (y08 & !y_ac_low # x08 & !x_ac_low); data08_low.oe = (d08 & !iot4l) # (y08 & !y_ac_low # x08 & !x_ac_low); property atmel {open_collector= data09_low}; !data09_low = (color & !dire_low) # (d09 & !iot4l) # (y09 & !y_ac_low # x09 & !x_ac_low); data09_low.oe = (color & !dire_low) # (d09 & !iot4l) # (y09 & !y_ac_low # x09 & !x_ac_low); property atmel {open_collector= data10_low}; !data10_low = (d10 & !iot4l) # (chan & !dire_low) # (y11 & !y_ac_low # x11 & !x_ac_low); data10_low.oe = (d10 & !iot4l) # (chan & !dire_low) # (y11 & !y_ac_low # x11 & !x_ac_low); property atmel {open_collector= data11_low}; !data11_low = (d11 & !iot4l) # (!dire_low & int_en) # (y10 & !y_ac_low # x10 & !x_ac_low); data11_low.oe = (d11 & !iot4l) # (!dire_low & int_en) # (y10 & !y_ac_low # x10 & !x_ac_low); property atmel {open_collector= erase_low}; !erase_low = erase; erase_low.oe = erase; property atmel {open_collector= int_rqst_low}; !int_rqst_low = (device_flag & int_enable); int_rqst_low.oe = (device_flag & int_enable); property atmel {open_collector= internal_io_low}; !internal_io_low = (iot) # (!iotl); internal_io_low.oe = (iot) # (!iotl); property atmel {open_collector= interrupt_low}; !interrupt_low = (n_t_1x & int_en); interrupt_low.oe = (n_t_1x & int_en); n_t_27x = (!store & color_low); property atmel {open_collector= n_t_27x}; n_t_27x.oe = !n_t_27x; property atmel {open_collector= n_t_43x}; !n_t_43x = color_low; n_t_43x.oe = color_low; property atmel {open_collector= non_store_low}; !non_store_low = !store; non_store_low.oe = !store; property atmel {open_collector= skip_low}; !skip_low = (!disd_low & n_t_1x) # (!iot3l); skip_low.oe = (!disd_low & n_t_1x) # (!iot3l); property atmel {open_collector= write_thru_low}; !write_thru_low = write_thru; write_thru_low.oe = write_thru;