{ ===================================================== } { 74LP148 } { ===================================================== } logicname 74LP148 { ----------------------------------------------------- } { 実効譜 } { ----------------------------------------------------- } entity TTL input EI; input D[8]; output Y[3]; output GS,EO; if (EI) Y=0b111; GS=1; EO=1; else if (D==0xFF) Y=0b111; GS=1; EO=0; else if (!D.7) Y=0; GS=0; EO=1; else if (D.6:7==0b10) Y=1; GS=0; EO=1; else if (D.5:7==0b110) Y=2; GS=0; EO=1; else if (D.4:7==0b1110) Y=3; GS=0; EO=1; else if (D.3:7==0b11110) Y=4; GS=0; EO=1; else if (D.2:7==0b111110) Y=5; GS=0; EO=1; else if (D.1:7==0b1111110) Y=6; GS=0; EO=1; else if (D.0:7==0b11111110) Y=7; GS=0; EO=1; endif endif endif endif endif endif endif endif endif endif ende { ----------------------------------------------------- } { 機能実行譜 } { ----------------------------------------------------- } entity sim output EI; output D[8]; output Y[3]; output GS,EO; bitr tc[4]; part TTL(EI,D,Y,GS,EO) tc=tc+1; switch(tc) case 5: D=0b11111111; case 6: D=0b00000000; case 7: D=0b11111110; case 8: D=0b11111100; case 9: D=0b11111000; case 10: D=0b11110000; case 11: D=0b11100000; case 12: D=0b11000000; case 13: D=0b10000000; endswitch if ((tc>=5)&(tc<=14)) EI=0; else EI=1; endif ende endlogic