GDFeDfjpk8@iqqvArial,8'vld_wcntk8iqqvArial,8vresetk8iqqvArial,8 vclkk8iqqvArial,8.v addr[5..0]kPhh iqhqvArial,8Cvcnt_from[5..0]k@iqqvArial,8vld_cntkxx@iqxqvArial,8(vce_fromk hhkp piq pqvArial,84v fromv[5..0]kp0piqpqvArial,8vresetk`0`iq`qvArial,8$vld_fromk0@iqqvArial,8 vclkk0hiqhqvArial,8.v addr[5..0]kXXiqXqvArial,8 vclkkP0PiqPqvArial,8.v addr[5..0]k0XpX iqpXqvArial,8&v din[7..0]k0(h(iqh(qvArial,8 vclkk@iqqvArial,8vresetk@iq@qvArial,8'v tov[5..0]k8iqqvArial,8 vclkk8iqqvArial,8vresetk8iqqvArial,8vld_tok0piqpqvArial,8vresetk8`iqqvArial,8.v addr[5..0]k0iqqvArial,8vwekH((iqH(qvArial,8 vclkkHHiqHqvArial,8*v rdin[7..0]kX88 iq8qvArial,82v raddr[5..0]k88`iq8qvArial,8Kvadata[3..0][5..0]k@@kiqqvArial,8(vfsm_wekiqqvArial,8vwekpiqxqvArial,8vresetk(Xiq0qvArial,8 vclkkX`k@`kXiqqvArial,8vld_cntkXiqqvArial,8vce_tok iq qvArial,86v cnt_to[5..0]kH0H iq0HqvArial,8Mvcnt_words[5..0]kxHx@iqxqvArial,8vld_cntkXHX@iqXqvArial,82vce_wordskkHHHk08H8iq08qvArial,8 vclkkXiq`qvArial,8vresetk``iqqvArial,8?vadata[1][5..0]k@iq@qvArial,8Cvcnt_from[5..0]k`xxiqxqvArial,8?vadata[0][5..0]k@xxiqHxqvArial,8.v addr[5..0]kPiqqvArial,8vbusykhxxiqhxqvArial,8 vclkk hh@iqhhqvArial,8*vclr_busykiqhqvArial,8-vset_busyk((k@(p(iq@(qvArial,8vresetk iqqvArial,8*v rdin[7..0]k` iqqvArial,8Kvddata[1..0][7..0]k(` iqqvArial,8?vddata[0][7..0]k8 iqqvArial,8&v din[7..0]k@HH iq@HqvArial,86v cnt_to[5..0]k`HH iqHqvArial,8?vadata[2][5..0]kH iqqvArial,8-v dout[7..0]kH` iqHqvArial,8?vddata[1][7..0]k(H(` iq(qvArial,8-v dout[7..0]k` iq`qvArial,86v cnt_to[5..0]kp iqqvArial,8?vadata[3][5..0]k ( l l h p`cl0clcl@@clH dldl@dl(PdldiqqvArial,8)vdata_sell((diq(qvArial,8Bvaddr_sel[1..0]qX8kvArial,86v COUNT regqXkvArial,8<v FROM RegqpkvArial,8'v TO RegqkvArial,8v*This Counter configured to COUNT DOWN!!!!!qXkvArial,8v&This counter configured to count UP!!!qkvArial,8v"This Counter configured to cout UPqkvArial,8v'Need to check for when it reaches zero!qPpkvArial,8v+This is a 4/1 mux, could have used 3/1 mux gfjxpkXX`kHH` k88@ k(( k k`h` kh8x8 kh@ lhh` l`eq3hvArial,8 vinclockp8qShvArial,8 vdata[]vdata[LPM_WIDTH-1..0]pXqChvArial,8, v address[]vaddress[LPM_WIDTHAD-1..0]pHqhvArial,8 vwepq.#hvArial,8' voutclockp(qX3hvArial,8 vq[]vq[LPM_WIDTH-1..0]px8q`nvArial,10Xv LPM_RAM_DQq2qvArial,7TvkLPM_ADDRESS_CONTROL= LPM_FILE= LPM_INDATA= LPM_NUMWORDS= LPM_OUTDATA="UNREGISTERED" LPM_WIDTH= LPM_WIDTHAD=rhq)fvArial,6 v5q3hvArial,8 vinclockqShvArial,8 vdata[]vdata[LPM_WIDTH-1..0]qChvArial,8, v address[]vaddress[LPM_WIDTHAD-1..0]qhvArial,8 vweq.#hvArial,8' voutclockqX3hvArial,8 vq[]vq[LPM_WIDTH-1..0]uq2qvArial,7TvLPM_ADDRESS_CONTROL="REGISTERED" LPM_FILE= LPM_INDATA="REGISTERED" LPM_NUMWORDS= LPM_OUTDATA="UNREGISTERED" LPM_WIDTH=8 LPM_WIDTHAD=6gfj`kkPP kHH k88 k(( k` k88 lP lPeqRQnvREG6qChvclkpHq3hvresetp8q#hvldp(qhv din[5..0]pqh3hv dout[5..0]p8r8hq)fv8qChvclkq3hvresetq#hvldqhv din[5..0]qh3hv dout[5..0]r08hq)fv7qChvclkq3hvresetq#hvldqhv din[5..0]qh3hv dout[5..0]r8hq)fv39qChvclkq3hvresetq#hvldqhv din[5..0]qh3hv dout[5..0]gfjk\uk\ u kyl\\ mu yemuyqHv1pqnvArial,6 vINPUTrhq9vArial,6 vVCCq)fvArial,6 v21qyvArial,8$vld_fromqHv1rhq9vArial,6 vVCCq)fvArial,6 v30qyvArial,8vxferqHv1rhq9vArial,6 vVCCq)fvArial,6 v28qyvArial,8vweqHv1rhq9vArial,6 vVCCq)fvArial,6 v20qyvArial,8vld_toqHv1rhq9vArial,6 vVCCq)fvArial,6 v12qyvArial,8vresetqHv1rPhq9vArial,6 vVCCq)fvArial,6 v10qyvArial,8&v din[7..0]qHv1r hq9vArial,6 vVCCq)fvArial,6 v11qyvArial,8 vclkqHv1rhq9vArial,6 vVCCq)fvArial,6 v9qyvArial,8.v addr[5..0]qHv1rhq9vArial,6 vVCCq)fvArial,6 v40qyvArial,8'vld_wcntqHv1gfjkk@kkHHkxxk88k((@kXX@khhkxhhkxkxkxXX`l88@lHHflXX@flhh@flflxxfmPXfmX`q2@qvArial,7P<v>LPM_SVALUE= LPM_AVALUE= LPM_MODULUS= LPM_DIRECTION= LPM_WIDTH=q.hvArial,8 vssetpqhvArial,8 vsloadpqhvArial,8% vupdownpqshvArial,8 vcnt_enpxqchvArial,8 vdata[]vdata[LPM_WIDTH-1..0]phqRHvArial,8 vclockpXqChvArial,8 vclk_enpHq.3hvArial,8 vsconstp8q.#hvArial,8 vsclrp(qnvArial,10av LPM_COUNTERq.JvArial,8 valoadpXq?vArial,8 vaclrpHq.-vArial,8 vasetp8q.VvArial,8 vaconstphqichvArial,8 vq[]vq[LPM_WIDTH-1..0]phq/cShvArial,8 veq[]v eq[15..0]pXrhq)fvArial,6 v14q.hvArial,8 vssetqhvArial,8 vsloadq.hvArial,8% vupdownqshvArial,8 vcnt_enqchvArial,8 vdata[]vdata[LPM_WIDTH-1..0]qRHvArial,8 vclockq.ChvArial,8 vclk_enq.3hvArial,8 vsconstq.#hvArial,8 vsclrq.JvArial,8 valoadq?vArial,8 vaclrq.-vArial,8 vasetq.VvArial,8 vaconstqichvArial,8 vq[]vq[LPM_WIDTH-1..0]q/cShvArial,8 veq[]v eq[15..0]uq2qvArial,7c<vCLPM_AVALUE= LPM_DIRECTION="UP" LPM_MODULUS= LPM_SVALUE= LPM_WIDTH=6rHhq)fvArial,6 v42q.hvArial,8 vssetqhvArial,8 vsloadq.hvArial,8% vupdownqshvArial,8 vcnt_enqchvArial,8 vdata[]vdata[LPM_WIDTH-1..0]qRHvArial,8 vclockq.ChvArial,8 vclk_enq.3hvArial,8 vsconstq.#hvArial,8 vsclrq.JvArial,8 valoadq?vArial,8 vaclrq.-vArial,8 vasetq.VvArial,8 vaconstqichvArial,8 vq[]vq[LPM_WIDTH-1..0]q/cShvArial,8 veq[]v eq[15..0]uq2qvArial,7t<vELPM_AVALUE= LPM_DIRECTION="DOWN" LPM_MODULUS= LPM_SVALUE= LPM_WIDTH=6rX0hq)fvArial,6 v41q.hvArial,8 vssetqhvArial,8 vsloadq.hvArial,8% vupdownqshvArial,8 vcnt_enqchvArial,8 vdata[]vdata[LPM_WIDTH-1..0]qRHvArial,8 vclockq.ChvArial,8 vclk_enq.3hvArial,8 vsconstq.#hvArial,8 vsclrq.JvArial,8 valoadq?vArial,8 vaclrq.-vArial,8 vasetq.VvArial,8 vaconstqichvArial,8 vq[]vq[LPM_WIDTH-1..0]q/cShvArial,8 veq[]v eq[15..0]uq2qvArial,7P<v?LPM_AVALUE= LPM_DIRECTION= LPM_MODULUS= LPM_SVALUE= LPM_WIDTH=6gfjpXk(,(`kD(p(k,k8,8lDD8@l,,Hgl88`gm,HD8@gm,D@qK)hvArial,8 vresult[]vresult[LPM_WIDTH-1..0]pp(q;hvArial,8 vsel[]vsel[LPM_WIDTHS-1..0]p8qHnvArial,10=vLPM_MUXq)hvArial,8! vdata[][]v#data[LPM_SIZE-1..0][LPM_WIDTH-1..0]p(q.hvArial,8 vclockpq.7hvArial,8 vaclrp8q2qvArial,70vBLPM_PIPELINE= LPM_SIZE= LPM_WIDTH= LPM_WIDTHS=CEIL(LOG2(LPM_SIZE))r`hq)fvArial,6 v34qK)hvArial,8 vresult[]vresult[LPM_WIDTH-1..0]q;hvArial,8 vsel[]vsel[LPM_WIDTHS-1..0]q)hvArial,8! vdata[][]v#data[LPM_SIZE-1..0][LPM_WIDTH-1..0]q.hvArial,8 vclockq.7hvArial,8 vaclruq2qvArial,70vDLPM_PIPELINE= LPM_SIZE=2 LPM_WIDTH=8 LPM_WIDTHS=CEIL(LOG2(LPM_SIZE))rhq)fvArial,6 v15qK)hvArial,8 vresult[]vresult[LPM_WIDTH-1..0]q;hvArial,8 vsel[]vsel[LPM_WIDTHS-1..0]q)hvArial,8! vdata[][]v#data[LPM_SIZE-1..0][LPM_WIDTH-1..0]q.hvArial,8 vclockq.7hvArial,8 vaclruq2qvArial,70vDLPM_PIPELINE= LPM_SIZE=4 LPM_WIDTH=6 LPM_WIDTHS=CEIL(LOG2(LPM_SIZE))gfjk4k4 N @k4Nl44 mN RgmRNmNRqHv1pqnvArial,6 vOUTPUTrPhq)fvArial,6 v23qZyvArial,8vbusyqHv1rH hq)fvArial,6 v16qZyvArial,8-v dout[7..0]qHv1gfj0kk k k`l l gqR!nvBUF6qhv din[5..0]pqhhv dout[5..0]pr`hq)fv18qhv din[5..0]qhhv dout[5..0]rhq)fv50qhv din[5..0]qhhv dout[5..0]r0hq)fv43qhv din[5..0]qhhv dout[5..0]rhq)fv17qhv din[5..0]qhhv dout[5..0]gfj@(k@kkkk0?n ;Z@n1%5@n$15@qHv2pq Hv3pq4Hv1p@qnvArial,6 vOR2rhq)fvArial,6 v19qHv2q Hv3q4Hv1gfj@Pk D4D@k 4 k8 8k k( (k48@8l4 4D@l Dhl . /@hl L P@hl hm( !hm 0(@o Ho q(EHv6p Pq(Hv5p qHv3pq;Hv2p8q7<Hv1p@8q(Hv4p(qGnvArial,6 vJKFFq zvArial,6 vCLRNq,3zvArial,6 vQqzvArial,6 vKq3zvArial,6 vJq;zvArial,6 vPRNrPhq)fvArial,6 v22q(EHv6q(Hv5qHv3q;Hv2q7<Hv1q(Hv4gfj0 k'0k l  m im o#qHv2pq(Hv1p0qv2qnvArial,6 vNOTrphq)fvArial,6 v24qHv2q(Hv1gfj klqHv1pqnvArial,6 vVCCrhq)fvArial,6 v25qHv1gfj0kk k`k`l l @iqR!nvBUF8qhv din[7..0]pqhhv dout[7..0]pr8hq)fv38qhv din[7..0]qhhv dout[7..0]rHhhq)fv45qhv din[7..0]qhhv dout[7..0]t