【正文】
。)THEN CASE Z IS WHEN11101=N=0000。 WHEN00011=N=0001。 WHEN00101=N=0010。 WHEN00110=N=0011。 WHEN01011=N=0100。 WHEN01101=N=0101。 WHEN01110=N=0110。 WHEN10011=N=0111。 WHEN10101=N=1000。 WHEN10110=N=1001。 WHEN OTHERS=N=0000。 END CASE。 END IF。 IF C_QD39。EVENT AND C_QD=39。139。 THEN CASE Z IS WHEN11011=F=0100。 WHEN11110=F=0001。 WHEN OTHERS=F=0100。 END CASE。 END IF。 END PROCESS。 FN=NOT(N(3)AND N(2)AND N(1) AND N(0))。 FF=F(2) OR F(0)。 END BLOCK KEY_DECODER。END ARCHITECTURE ART。ENTITY CTRL ISPORT( DATA_N: IN STD_LOGIC_VECTOR(3 DOWNTO 0)。 DATA_F: IN STD_LOGIC_VECTOR(3 DOWNTO 0)。 FLAG_N: IN STD_LOGIC。 FLAG_F: IN STD_LOGIC。 MIMAIN: BUFFER STD_LOGIC。 SETIN: BUFFER STD_LOGIC。 OLD: BUFFER STD_LOGIC。 CQD: IN STD_LOGIC。 ENLOCK: OUT STD_LOGIC。 DATA_BCD: OUT STD_LOGIC_VECTOR(15 DOWNTO 0))。END ENTITY CTRL。ARCHITECTURE ART OF CTRL IS SIGNAL ACC,REG:STD_LOGIC_VECTOR(15 DOWNTO 0)。 BEGIN PROCESS(CQD,FLAG_F) IS BEGIN IF CQD39。EVENT AND CQD=39。039。 THEN IF FLAG_F=39。139。 THEN IF(DATA_F=0100)THEN ACC=1111111111111111。 MIMAIN=39。039。SETIN=39。039。OLD=39。039。 ELSIF(DATA_F=0001)THEN IF(MIMAIN=39。039。AND SETIN=39。039。)THEN CASE ACC(7 DOWNTO 0) IS WHEN00010001=ENLOCK=39。139。 WHEN10011001=MIMAIN=39。139。 ACC=1111111111111111。 WHEN01010101=SETIN=39。139。 ACC=1111111111111111。 OLD=39。139。 WHEN OTHERS =NULL。 END CASE。 ELSIF(MIMAIN=39。139。)THEN IF ACC=REG THEN ENLOCK=39。039。 MIMAIN=39。039。 ELSE MIMAIN=39。039。 END IF。 ELSIF(SETIN=39。139。)THEN IF(OLD=39。139。)THEN IF(ACC=REG)THEN OLD=39。039。 ELSE SETIN=39。039。 OLD=39。039。 END IF。 ELSE IF(ACC1001100110011001)THEN REG=ACC。 SETIN=39。039。 END IF。 END IF。 END IF。 END IF。 ELSIF FLAG_N=39。139。 THEN ACC=ACC(11 DOWNTO 0)amp。DATA_N。 END IF。 END IF。 END PROCESS。 DATA_BCD=ACC。 END ARCHITECTURE ART。ENTITY YM IS PORT(DATA_BCD:IN STD_LOGIC_VECTOR(3 DOWNTO 0)。 DOUT7: OUT STD_LOGIC_VECTOR(6 DOWNTO 0))。END YM。ARCHITECTURE ART OF YM ISBEGIN PROCESS(DATA_BCD) BEGIN CASE DATA_BCD IS WHEN0000=DOUT7=0111111。 WHEN0001=DOUT7=0000110。 WHEN0010=DOUT7=1011011。 WHEN0011=DOUT7=1001111。 WHEN0100=DOUT7=1100110。 WHEN0101=DOUT7=1101101。 WHEN0110=DOUT7=1111101。 WHEN0111=DOUT7=0000111。 WHEN1000=DOUT7=1111111。 WHEN1001=DOUT7=1101111。 WHEN OTHERS=DOUT7=0000000。 END CASE。 END PROCESS。 END ARCHITECTURE ART。20