{ ===================================================== } { 74LP153 } { ===================================================== } logicname 74LP153 { ----------------------------------------------------- } { 手続き譜 } { ----------------------------------------------------- } procedure mpx2to4 input ST; input D[4]; input SEL[2]; output Y; if (ST) Y=0; else switch(SEL) case 0: Y=D.0; case 1: Y=D.1; case 2: Y=D.2; case 3: Y=D.3; endswitch endif endp { ----------------------------------------------------- } { 実効譜 } { ----------------------------------------------------- } entity TTL input STA,STB; input DA[4],DB[4]; input SELA[2],SELB[2]; output YA,YB; YA=mpx2to4(STA,DA,SELA); YB=mpx2to4(STB,DB,SELB); ende { ----------------------------------------------------- } { 機能実行譜 } { ----------------------------------------------------- } entity sim output STA,STB; output DA[4],DB[4]; output SELA[2],SELB[2]; output YA,YB; bitr tc[5]; part TTL(STA,STB,DA,DB,SELA,SELB,YA,YB) tc=tc+1; { - - - - - - - - - - - - - - - - - - - - - - - - - - - } { A } { - - - - - - - - - - - - - - - - - - - - - - - - - - - } switch(tc) case 5: DA.0=0; SELA=0; case 6: DA.0=1; SELA=0; case 7: DA.1=0; SELA=1; case 8: DA.1=1; SELA=1; case 9: DA.2=0; SELA=2; case 10: DA.2=1; SELA=2; case 11: DA.3=0; SELA=3; case 12: DA.3=1; SELA=3; endswitch if ((tc>=5)&(tc<=15)) STA=0; else STA=1; endif { - - - - - - - - - - - - - - - - - - - - - - - - - - - } { B } { - - - - - - - - - - - - - - - - - - - - - - - - - - - } switch(tc) case 5: DB.0=0; SELB=0; case 6: DB.0=1; SELB=0; case 7: DB.1=0; SELB=1; case 8: DB.1=1; SELB=1; case 9: DB.2=0; SELB=2; case 10: DB.2=1; SELB=2; case 11: DB.3=0; SELB=3; case 12: DB.3=1; SELB=3; endswitch if ((tc>=5)&(tc<=15)) STB=0; else STB=1; endif ende endlogic