1、 out std_logic);end and2;architecture Behavioral of and2 isbegin process(a) begin if a = 0 then b=_; else_ end if; end process;end Behavioral;27下面两个分别描述了一个电平驱动的D触发器和一个脉冲驱动的D触发器区别一个信号在什么情况下是电平?什么情况下是脉冲?这两个例题还说明了ELSE可以不出现在IF结构中。28下面VHDL包含了一个IF嵌套结构,说明它描述的电路的功能29上面VHDL描述语句elsif是否应为elseif?30分析下面的电路描述,体会多
2、分支结构,说明电路的功能 Port ( a,b : c : -c cX end case;31说明循环控制结构中NEXT和EXIT分别类似于C中那两个语句?32下面VHDL描述包括了一个循环结构,说明电路的功能,将FOR结构改为WHILE实现33下面是一个函数应用实例LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL;ENTITY axamp IS PORT(dat1,dat2 : IN STD_LOGIC_VECTOR(3 DOWNTO 0); dat3,dat4 : out1,out2 : OUT STD_LOGIC_VECTOR(3 DOWNTO 0) )
3、; END; ARCHITECTURE bhv OF axamp ISFUNCTION max( a,b : IN STD_LOGIC_VECTOR) -定义函数体 RETURN STD_LOGIC_VECTOR IS BEGIN IF a b THEN RETURN a; ELSE RETURN b; END IF; END FUNCTION max; -结束FUNCTION语句 out1 = max(dat1,dat2); PROCESS(dat3,dat4) out2 = max(dat3,dat4); END PROCESS;说明语句out1 和语句out2 调用函数后out1 、ou
4、t2的结果是什么?34下面是一个过程应用实例 -主程序USE IEEE.STD_LOGIC_1164.ALL;ENTITY EX IS PORT( e,f,g,h : IN STD_LOGIC ; x : OUT STD_LOGIC );ARCHITECTURE bhv OF EX ISPROCEDURE nand4a (SIGNAL a,b,c,d : 过程 SIGNAL y : OUT STD_LOGIC ) IS BEGIN yAB; (M) CRDX=0 DB GI=0 IR;(PC)+1 PINC=0 PC; (A) GC=0 ACT; MPLD=0;1MOV A, RiT1:(Ri
5、) MA=0 S=011 ALU MB=00DB GA=0 A;2MOV Ri, A(ACT) S=010ALU MB=00 DB WRE=0 Ri;3MOV A, Ri(Ri) MA=1 S=011 DB GA2=0 ADRL; T2:7EH S=111 DB GA1=0 ADRH;T3:(ADR) MC=01 4MOV Ri, AT2: (ACT) S=010 DB CWRX=0 M;5MOV A, #data (PC)+1 PINC=0 6MOV Ri, #data 7ADD A, Ri(ACT)+(Ri) MA=1 S=000 COUT CP=0 ME=0 CY;8SUB A, Ri(
6、ACT)-(Ri) MA=1 S=001 9SUB A,addrDB GT=0 TMP;T4: (PC) MC=00 (ACT)-(TEMP) MA=1 S=001 10LDA addr11STA addr12JC addrAB PLD2,1,0=001 13JMP addrAB PLD2,1,0=010 14JNKB addrAB PLD2,1,0=011 15JNPB addrAB PLD2,1,0=100 16JNZ addr17RSP 7FFFH SSP=11 SP;18PUSH A (SP) MC=10 (SP)-1 SSP=0 119POP A (SP)+1 SSP=10 A20C
7、MP A,#dataTEMP;A-TEMP CP=0,ZP=0 置位21RRC AA与CY循环右移22CPL Ri T4: /(TMP) S=100 23CALL addr(SP) MC=10 (PCH) MB=01 (PCL) MB=10 (SP)-1 SSP =01 T5:24RET (SP)+1 SSP=10 (SP) MC=11 (ADR) MC=01 21结合整机框图,在CPU8B.VHD中找出下面部件的信号定义及描述(1)寄存器(2)运算器(3)累加器A,暂存器ACT、TMP,指令指针PC,指令寄存器IR、ADRH、ADRL。CPU8B.VHD的内容如下Library IEEE;
8、use IEEE.std_logic_1164.all; use IEEE.std_logic_unsigned.all; use IEEE.std_logic_arith.all;entity cpu8bv1 is Port ( DB:inout std_logic_vector(15 downto 0); AB:buffer std_logic_vector(15 downto 0); MUX: in std_logic_vector(0 to 2); CLKG,CLK,RESET,RUN: CI: buffer std_logic_vector(31 downto 0); CO: in
9、std_logic_vector(31 downto 0); CWR,CRD,IOW,IOR,CTRL1,CTRL2,CTRL3,CTRL4,MCLK: buffer std_logic; PRIX,KRIX:in std_logic );end cpu8bv1;architecture cpu8bv1_behav of cpu8bv1 is signal PC:std_logic_vector(15 downto 0); signal MPC,MD:std_logic_vector(10 downto 0); signal A,ACT,TMP,IR,ADRL,ADRH,DBL:std_log
10、ic_vector(7 downto 0); signal R0,R1,R2,R3,R4,R5,R6,R7,ROUT,FB: signal FF:std_logic_vector(8 downto 0); signal MIR:std_logic_vector(31 downto 0); signal CC,CA,CG,SL,SR,X0,X1,CT,GT,MXB,ZD,COUT,CIN:std_logic; signal CP,CCK,CY,P0,P1,P2,RD,WRC,WRE,RA,RB,RC,OB: signal GI,CIR,CA1,CA2,GA1,GA2,PINC,PCK,PLD,PRST,MXA1: signal MCLR,MPCK,MPINC,MPLD,MICK,RUNX: signal S,PL:std_logic_vector(2 downto 0); constant bz: std_logic_vector:=ZZZZZZZZ constant wz:ZZZZZZZZZZZZZZZZ constant hz:ZZZZZZZZZZZZZZZZZZZZZZZZ DBL = DB(7 downto 0); DB(15 downto 8) = bz when CRD = else 00000000 process (M
copyright@ 2008-2023 冰点文库 网站版权所有
经营许可证编号:鄂ICP备19020893号-2