【正文】
ITECTURE A OF MMM ISBEGIN PROCESS(CLR,SE,T2) BEGIN IF(CLR=39。039。) THEN UA=39。039。 ELSIF(SE=39。039。)THEN UA=39。139。 ELSIF(T239。EVENT AND T2=39。139。) THEN UA=D。 END IF。 END PROCESS。END A。12)控制存儲器:LIBRARY IEEE。USE 。USE 。USE 。ENTITY CONTROM ISPORT(ADDR: IN STD_LOGIC_VECTOR(5 DOWNTO 0)。 UA:OUT STD_LOGIC_VECTOR(5 DOWNTO 0)。 D:OUT STD_LOGIC_VECTOR(18 DOWNTO 0) )。END CONTROM。ARCHITECTURE A OF CONTROM ISSIGNAL DATAOUT: STD_LOGIC_VECTOR(24 DOWNTO 0)。BEGIN PROCESS(ADDR) BEGIN CASE ADDR IS WHEN 000000 = DATAOUT=1110011001001111000000010。 WHEN 000010 = DATAOUT=1001011001001011010001000。 WHEN 000011 = DATAOUT=1000111001001011000000000。 WHEN 000100 = DATAOUT=1000011011001111100000000。 WHEN 000110 = DATAOUT=1000001001011111000010000。 WHEN 000111 = DATAOUT=1000010001101111000010101。 WHEN 001000 = DATAOUT=1000111001001101000000000。 WHEN 001001 = DATAOUT=1110011001001111000000011。 WHEN 001010 = DATAOUT=1000001001101111000000100。 WHEN 001011 = DATAOUT=1110011001001111001100000。 WHEN 001100 = DATAOUT=1000010001101111000000110。 WHEN 001101 = DATAOUT=1000001001101111000010010。 WHEN 001110 = DATAOUT=1110011001001111000010011。 WHEN 001111 = DATAOUT=1000010001000110000000000。 WHEN 010000 = DATAOUT=1000111000001111000000000。 WHEN 010010 = DATAOUT=1000111100001111000000000。 WHEN 010011 = DATAOUT=0100011001001011000000000。 WHEN 010101 = DATAOUT=1000001001011111000010110。 WHEN 010110 = DATAOUT=1000111110001111000000000。 WHEN 100000 = DATAOUT=0100011001001011000000000。 WHEN 110000 = DATAOUT=1000011001001111000000000。 WHEN OTHERS = DATAOUT=1000011001001111000000000。 END CASE。 UA(5 DOWNTO 0)=DATAOUT(5 DOWNTO 0)。 D(18 DOWNTO 0)=DATAOUT(24 DOWNTO 6)。 END PROCESS。END A。13)微命令寄存器:LIBRARY IEEE。USE 。USE 。USE 。ENTITY MCOMMAND ISPORT( T2,T3,T4,I3,I2,I1,I0:IN STD_LOGIC。 O:IN STD_LOGIC_VECTOR(18 DOWNTO 0)。 P1,P2,LOAD,LDPC,LDAR,LDIR,LDR0,LDR1,LDR2,R0_B,R1_B,R2_B,S1,S0,ALU_B,LDAC,LDDR,WR,CS,SW_B,LED_B,LDFR:OUT STD_LOGIC )。END MCOMMAND。ARCHITECTURE A OF MCOMMAND ISSIGNAL DATAOUT:STD_LOGIC_VECTOR(18 DOWNTO 0)。BEGIN PROCESS(T2) BEGIN IF(T239。EVENT AND T2=39。139。)THEN DATAOUT(18 DOWNTO 0)=O(18 DOWNTO 0)。 END IF。 P2=DATAOUT(0)。 P1=DATAOUT(1)。 LDFR=DATAOUT(2) AND T4。 LED_B=DATAOUT(3)。 SW_B=DATAOUT(4)。 CS=DATAOUT(5)。 WR=DATAOUT(6)OR(NOT T3)。 LDDR=DATAOUT(7) AND T4。 LDAC=DATAOUT(8) AND T4。 ALU_B=DATAOUT(9)。 S0=DATAOUT(10)。 S1=DATAOUT(11)。 R2_B=(DATAOUT(13)OR(NOT I1)OR I0)AND(DATAOUT(12)OR(NOT I3)OR I2)。 R1_B=(DATAOUT(13)OR(NOT I0)OR I1)AND(DATAOUT(12)OR(NOT I2)OR I3)。 R0_B=(DATAOUT(13)OR I1 OR I0)AND(DATAOUT(12)OR I3 OR I2)。 LDR2=T4 AND DATAOUT(14)AND I1 AND (NOT I0)。 LDR1=T4 AND DATAOUT(14)AND (NOT I1) AND I0。 LDR0=T4 AND DATAOUT(14)AND (NOT I1) AND (NOT I0)。 LDIR=DATAOUT(15)AND T3。 LDAR=DATAOUT(16)AND T3。 LDPC=DATAOUT(17)AND T4。 LOAD=DATAOUT(18)。 END PROCESS。END A。16