EDA技术复习题_第1页
EDA技术复习题_第2页
EDA技术复习题_第3页
EDA技术复习题_第4页
EDA技术复习题_第5页
已阅读5页,还剩22页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、这是一份vhdl的复习题,考试题大多数都来自此处,一、 EDA名词解释1、 ASIC:专用集成电路(Application Specific Integrated Circuits)2、 EDA:电子设计自动化(Electronic Design Automation)3、 PROM:可编程只读存储器(Programmable Read Memory)4、 IP:知识产权核(Intellectual Property )5、 SOC: 片上系统(System On Chip)6、 VHDL:超高速集成电路硬件描述语言(VHSIC Hardware Description Language)。7

2、、 RTL: 寄存器传输级(Register Transport Level)8、 SOPC:可编程片上系统(System On Programmable Chip)9、 PLD:可编程逻辑器件(Programmable Logic Array)10、 GAL:通用阵列逻辑(Geniric Array Logic)11、 FPGA:现场可编程门阵列(Field Programmable Gate Array )12、 CPLD:复杂可编程逻辑器件(Complex Programmable Logic Device)二、 简答题1、 简述VHDL程序的基本结构。库、程序包、实体、结构体、配置2、

3、 子程序分为那两类,其结构为什么。子程序有两种类型,即过程(PROCEDURE)和函数(FUNCTION)。FUNCTION 函数名(参数表) RETURN 数据类型 -函数首FUNCTION 函数名(参数表)RETURN 数据类型 IS - 函数体说明部分 BEGIN 顺序语句 ;END FUNCTION 函数名;PROCEDURE 过程名(参数表) - 过程首PROCEDURE 过程名(参数表) IS - 过程体说明部分BIGIN 顺序语句;END PROCEDURE 过程名;3、 信号与变量的赋值有何区别?。信号延时赋值,变量立即赋值;信号的代入使用<=,变量的代入使用:=;信号在

4、实际的硬件当中有对应的连线,变量没有4、 可编程器件分为哪些类?答:一类是集成度较低的,早期出现的PROM、PLD、PAL、GAL,可用的逻辑门数大约在500门以下,称为简单PLD。另一类是芯片集成度较高的,如现在大量使用的CPLD和FPGA器件,称为复杂PLD。5、 CASE语句使用当中的注意事项。(1)条件句中的选择值必在表达式的取值范围内。(2)除非所有条件句中的选择值能完整覆盖CASE语句中表达式的取值,否则最末一个条件句中的选择必须用"OTHERS”表示,它代表己给的所有条件句中未能列出的其它可能的取值。关键词OTHERS只能出现一次,目只能作为最后一种条件取值。使用OTH

5、ERS的目的是为了使条件句中的所有选择值能涵盖表达式的所有取值,以免综合器会插入不必要的锁存器。这一点对于定义为STD_ LOGIC和STD_ LOGIC_VECTOR数据类型的值尤为重要,因为这些数据对象的取值除了1和0以外,还可能有其它的取值,如高阻态Z、不定态X等。(3) CASE语句中每一条件句的选择值只能出现一次,不能有相同选择值的条件语句出现。 (4) CASE语句执行中必须选中,目只能选中所列条件语句中的一条。这表明CASE语句中至少要包含一个条件语句。6、 赋值语句分哪些类,分别写出一句赋值语句。信号赋值语句,S<=变量赋值语句,V7、 数据对象有哪些种,分别写出定义这些

6、数据对象的一般表述格式。Constant(常量)在程序中不可以被赋值Variable(变量)在程序中可以被赋值(用“:=”),赋值后立即变化为新值。Signal(信号)在程序中可以被赋值(用“<=”),但不立即更新,当进程挂起后,才开始更新。8、 简述进程语句的使用要点?进程名:process(触发信号列表)定义语句;begin串行处理语句sequential statement;end processPROCESS.END PROCESS9、 写出VHDL常用的顺序语句的名称。赋值语句流程控制语句等待语句子程序调用语句返回语句空操作语句10、 VHDL语言中的逻辑操作符有那些?逻辑运算

7、符AND、OR、NAND、NOR、XOR、XNOR及NOT11、 使用原理图输入设计功能的优势何优点?与传统的数字电路实验相比,Quartus提供原理图设计功能具有不可比拟的优势和先进性:设计者不必具备许多诸如编程技术、硬件描述语言等知识就能迅速设计入门,完成大规模的电路系统设计能进行任意层次的数字系统设计(传统的数字电路实验只能完成单一层次的设计);能对系统中的任一层次,或任一元件的功能进行精确的时序仿真通过时序仿真,能迅速定位电路系统的错误所在,并随时纠正。能对设计方案进行随时更改,并储存设计工程中所有电路和测试文件入档;通过编译和下载,能在FPGA或CPLD上对设计项目随时进行硬件测试验

8、证;如果使用FPGA和配置编程方式,将不会有损坏和损耗的问题符合现代电子设计技术规范。12、 VHDL的操作符有那几大类?每一类的操作符分别是什么?每一类操作符可以对那些数据进行操作(运算)?在VHDL中有四类操作符即逻辑操作符(Logical Operator)、关系操作符(Relational Operator)、算术操作符(Arithmetic Operator)和符号操作符(Sign Operator)。前三类操作符是完成逻辑和算术运算的最基本的操作符单元。13、 标准逻辑位数据类型常用的数值有哪几种?'U'-Uninitialized未初始化的'X'-

9、Forcing Unknown强未知的'0'-Forcing 0强0'1'-Forcing 1强1'Z'-High Impedance 高阻态'W'-Weak Unknown弱未知的'L'-Weak 0 弱0'H'-Weak 1弱1'-'-Don't care忽略 14、 在VHDL语言中常见的数据类型有那些?VHDL中的数据类型可以分成四大类。标量型(Scalar Type)复合类型(Composite Type)存取类型(Access Type)文件类型(Files Ty

10、pe)15、 实体部分的端口模式有四个类型。IN模式:IN定义的通道确定为输入端口,并规定为单向只读模式,可以通过此端口将变量(Variable)信息或信号(Signal)信息读入设计实体中。OUT模式:OUT定义的通道确定为输出端口,并规定为单向输出模式,可以通过此端口将信号输出设计实体,或者说可以将设计实体中的信号向此端口赋值。INOUT模式:INOUT定义的通道确定为输入输出双向端口,即从端口的内部看,可以对此端口进行赋值,也可以通过此端口读入外部的数据信息;而从端口的外部看,信号既可以从此端口流出,也可以向此端口输入信号。INOUT模式包含了IN,OUT和BUFFER二种模式,因此可替

11、代其中任何一种模式,但为了明确程序中各端口的实际任务,一般不作这种替代。BUFFER模式:BUFFER定义的通道确定为具有数据读入功能的输出端口,它与双向端口的区别在于只能接受一个驱动源。16、 VHDL语句中顺序描述语句有哪几种?赋值语句流程控制语句等待语句子程序调用语句返回语句空操作语句17、 用WAIT语句设置4种不同的条件分别是什么?对于不同的结束挂起条件的设置,WAIT语句有以下四种不同的语句格式。WAIT; - 第一种语句格式WAIT ON 信号表; - 第二种语句格式WAIT UNTIL 条件表达式; - 第三种语句格式WAIT FOR 时间表达式; - 第四种语句格式, 超时等

12、待语句18、 常用的if语句有哪几种?写出其书写格式。A. 门闩IF条件句Then -第一种IF语句结构顺序语句END IFB. 二选一IF条件句Then -第二种IF语句结构顺序语句ELSE顺序语句END IFC. 多选择IF条件句Then -第三种IF语句结构顺序语句ELSIF条件句Then顺序语句.ELSE顺序语句END IFD. IF的嵌套IF条件句ThenIF条件句Then.END IFEND IF19、 如何描述时钟上升沿和下降沿?时钟脉冲的上升沿的条件可以写为:IF clock_signal=current_value AND clock_signalLAST_VALUE AND

13、 clock_signalEVENT也可以简写为:IF clock_signal= clock_signalEVENT AND current_value 时钟脉冲的下降沿的条件可以写为:IF clock_signal=current_value AND clock_signalLAST_VALUE AND clock_signalEVENT20、 指出信号和变量有哪些区别?简单的说,信号是全局的,用于结构体中并行语句间数据流的传递;变量则是局部的,他主要用于单个进程中中间变量的存储.主要用于对暂时数据进行局部存储。临时数据,没有物理意义只能在Process和Function中定义,并只在其内

14、部有效要使其全局有效,先转换为Signal。用 := 进行赋值 variable result : std_logic := '0'变量说明的格式:VARIABLE 变量名:数据类型 约束条件:=表达式;例:VARIABLE X,Y:INTEGER; VARIABLE C:INTEGER RANGE 0 TO 255:=10;(表示变量C的数据类型是整型,变量范围从0到255,初始值为10。)变量只能在进程语句、函数语句和过程语句结构中使用,它是一个局部量。在仿真过程中,它不像信号那样,到了规定的仿真时间才进行赋值,变量是立即生效的。信号是抽象的电子电路内部硬件连接。它除了没有

15、数据流动方向说明以外,其它性质几乎和前面所述的端口概念一致。信号通常在构造体、包集合和实体内说明。信号说明的格式:SIGNAL 信号名;数据类型 约束条件:=表达式;例:SIGNAL a,b,c:STD_LOGIC; SIGNAL COUNT_2:STD_LOGIC_VECTOR(1 DOWNTO 0); SIGNAL S_CLK:BIT:='0'信号(Signals)代表连线,Port也是一种信号。没有方向性,可给它赋值,也可当作输入在Entity中和Architecture中定义设定的初始值在综合时没有用,只是在仿真时在开始设定一个起始值。用<=进行赋值。信号和变量值

16、的代入不仅形式不同,而且其操作过程也不同。在变量的赋值语句中,该语句一旦被执行,其值立即被赋予变量。在执行下一条语句时,该变量的值就为上一句新赋的值。变量赋值符为“:=”。信号代入语句采用“<=”代入符,该语句即使被执行也不会使信号立即发生代入。下一条语句执行时,仍使用原来的信号值。由于信号代入语句是同时进行处理的,因此,实际代入过程和代入语句的处理是分开进行的。21、 信号赋值语句在什么情况下作为并行语句?在什么情况下作顺序语句?信号赋值和变量赋值符号分别是什么?两种赋值符号有什么区别?信号赋值语句在进程外作并行语句,并发执行,与语句所处的位置无关。信号赋值语句在进程内或子程序内做顺序

17、语句,按顺序执行,与语句所处的位置有关。信号赋值符号为“<=”变量赋值用“:=”。信号赋值符号用于信号赋值动作,不立即生效。变量,赋值符号用于变量赋值动作,立即生效。22、 进程的敏感信号表指的是什么?简述敏感信号表在进程中的作用? 进程的“敏感信号表”也称敏感表,是进程的激活条件,可由一个或多个信号组成,各信号间以“,”号分隔。当敏感信号表中的任一个信号有事件发生,即发生任意变化,此时,进程被激活,进程中的语句将从上到下逐句执行一遍,当最后一条语句执行完毕之后,进程即进入等待挂起状态,直到下一次敏感表中的信号有事件发生,进程再次被激活,如此循环往复。23、 什么是库、程序包、子程序、过

18、程调用和函数调用?库和程序包用来描述和保存元件、类型说明和子程序等,以便在其它设计中通过其目录可查询、调用。子程序由过程和函数组成。在子程序调用过程中,过程能返回多个变量,函数只能返回一个变量。若子程序调用的是一个过程,就称为过程调用,若子程序调用的是一个函数,则称为函数调用。过程调用、函数调用都是子程序调用。24、 简述WHEN_ELSE条件信号赋值语句和IF_ELSE顺序语句的异同。答:WHEN_ELSE条件信号赋值语句中无标点,只有最后有分号;必须成对出现;是并行语句,必须放在结构体中。IF_ELSE顺序语句中有分号;是顺序语句,必须放在进程中。三、 综合题1、 完成A. 解释带有下划线

19、的语句。B. 画出该程序的原理图符号。C. 说明该程序逻辑功能。D. 改用WITH_SELECT_WHEN语句编写下列程序。Library ieee; Use ieee.std_logic_1164.all; 定义元件库 entity qk_11 isport( a,b,c,d,en:in std_logic; s:in std_logic_vector(1 downto 0); 输入信号s是两位的输入总线 op:out std_logic );end qk_11;architecture ar_1 of qk_11 is signal f:std_logic_vector(2 downto

20、0);beginf<=en&s; 将输入信号en和s连接赋值给f process (f) 敏感信号f的变化将启动进程 process begin case f is when"100"=>op<=a; when"101"=>op<=b; when"110"=>op<=c; when others=>op<=d; 其他情况,将输入信号d赋值给opend case;end process;end ar_1;逻辑功能是:带有使能端en的四选一数据选择器。用WITH_SELECT_

21、WHEN语句编写上述程序:Library ieee; Use ieee.std_logic_1164.all;entity qk_11 isport( a,b,c,d,en:in std_logic; s:in std_logic_vector(1 downto 0); op:out std_logic );end qk_11;architecture ar_1 of qk_11 is signal f:std_logic_vector(2 downto 0);beginf<=en&s; with f select op<=a when "100", b

22、 when "101", c when "110", d when others; end ar_1;2、 以下是一个模为24(023)的8421BCD码加法计数器VHDL描述,请补充完整LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY tb IS PORT ( CLK : IN STD_LOGIC ; SHI, GE : OUT INTEGER RANGE 0 TO 9 ) ; END ; ARCHITECTURE bhv OF tb ISSIGNAL SHI1,GE1 : INTEGER RANGE 0

23、TO 9; BEGIN PROCESS (CLK) BEGIN IF CLK'EVENT AND CLK='1' then IF GE1 = 9 THEN GE1 <= 0 ; SHI1<=SHI1+1; ELSIF SHI1=2 AND GE1=3 THEN SHI1<=0; GE1<=0; ELSE GE1 <= GE1+1; END IF; END IF; END PROCESS ; GE <= GE1; SHI <=SHI1;END bhv;3、 下面程序是参数可定制带计数使能异步复位计数器的VHDL描述,试补充完整。-

24、 N-bit Up Counter with Load, Count Enable, and- Asynchronous Resetlibrary ieee;use IEEE.std_logic_1164.all;use IEEE.std_logic_unsigned.all;use IEEE.std_logic_arith.all;entity counter_n isgeneric (width : integer := 8);port(data : in std_logic_vector (width-1 downto 0);load, en, clk, rst : in std_log

25、ic;q : out std_logic_vector (width - 1 downto 0);end counter_n;architecture behave of counter_n issignal count : std_logic_vector (width-1 downto 0);beginprocess(clk, rst)beginif rst = '1' thencount <= (others => 0); 清零elsif clkevent and clk = 1 then 边沿检测if load = '1' thencount

26、 <= data;elsif en = '1' thencount <= count + 1;end if;end if;end process;q <= count;end behave;4、 补全下列六进制计数器cnt6程序 (10分)LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_ARITH.ALL;ENTITY cnt6 IS PORT (reset,en,clk:IN STD_LOGIC; carry:OUT STD_LOGIC; q:OUT STD_ULOGIC_VECTOR(

27、2 DOWNTO 0);END cnt6;ARCHITECTURE rtl OF cnt6 ISSIGNAL qs:STD_LOGIC_VECTOR(2 DOWNTO 0);SIGNAL ca:STD_LOGIC;BEGIN PROCESS(clk) VARIABLE q6:INTEGER; BEGIN IF(clk'EVENT AND clk = '1') THEN END IF; qs<=CONV_STD_LOGIC_VECTOR(q6,3); q<=TO_STDULOGICVECTOR(qs); END PROCESS; PROCESS(ca,en)

28、BEGIN carry<=ca AND en; END PROCESS;END rtl;5、 补全以下二选一VHDL程序(本题10分)Entity mux isport(d0,d1,sel:in bit;q:out BIT ); end mux;architecture connect of MUX is signal tmp1, TMP2 ,tmp3:bit; begin cale:block begin tmp1<=d0 and sel; tmp2<=d1 and (not sel) tmp3<= tmp1 and tmp2;q <= tmp3; end bl

29、ock cale; end CONNECT ; 6、 根据下表填写完成一个3-8线译码器的VHDL程序(10分)。LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY decoder_3_to_8 IS PORT (a,b,c,g1,g2a,g2b:IN STD_LOGIC; y:OUT STD_LOGIC_VECTOR (7 DOWNTO 0); END decoder_3_to_8;ARCHITECTURE rtl OF decoder_3_to_8 IS SIGNAL indata:STD_LOGIC_VECTOR (2 DOWNTO 0);BE

30、GIN indata <= c & b & a;PROCESS (indata,g1,g2a,g2b) BEGIN IF (g1 = '1' AND g2a = '0' AND g2b = '0' ) THEN CASE indata IS WHEN "000"=> y <= "11111110" WHEN "001" => y <= "11111101" WHEN "010" => y <

31、= "11111011" WHEN "011" => y <= "11110111" WHEN "100" => y <= "11101111" WHEN "101" => y <= "11011111" WHEN "110" => y <= "10111111" WHEN "111" => y <= "01111111&quo

32、t; WHEN OTHERS=> y <= "XXXXXXXX" END CASE; ELSE y <= "11111111" END IF; END PROCESS;(16)END rtl; 7、 填写完成一个8-3线编码器的VHDL程序(16分)。Library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_arith.all;use ieee.std_logic_unsigned.all;entity eight_tri is port(b:in std_logic_vec

33、tor(7 downto 0); en:in std_logic;y:outstd_logic_vector(2 downto 0) );end eight_tri;architecture a of eight_tri is signal sel: std_logic_vector(8 downto 0);beginsel<=en & b; y<= “000” when (sel=”100000001”)else“001” when (sel=”100000010”)else“010” when (sel=”100000100”)else“011” when (sel=”

34、100001000”)else“100” when (sel=”100010000”)else“101” when (sel=”100100000”)else“110” when (sel=”101000000”)else“111” when (sel=”110000000”)else“zzz”;end a;LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_ARITH.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;entity full_add isport (a,b: instd_logic_ve

35、ctor (3 downto 0); (2)carr: inout std_logic_vector (4 downto 0);sum: outstd_logic_vector (3 downto 0);end full_add;architecture full_add_arch of full_add iscomponent adder port (a,b,c:instd_logic;carr: inoutstd_logic;sum: out std_logic );end component;begincarr(0)<='0'u0:adder port map(a(

36、0),b(0),carr(0),carr(1),sum(0);u1:adder port map(a(1) , b(1),carr(1),carr(2),sum(1); u2:adder port map(a(2),b(2),carr(2),carr(3),sum(2); u3:adder port map(a(3),b(3),carr(3),carr(4) , sum(3);end full_add_arch;8、 补充完整如下代码,使之完成4状态不断循环。(本题10分)ARCHITECTURE arc OF ss IStype states is ( st0,st1,st2,st3 );

37、signal outc: states; BEGINPROCESS(clk) BEGIN IF reset='1' then outc <=st0 ; elsif clk'event and clk='1' then CASE outc IS WHEN st0 => outc <= st1; WHEN st1 => outc <= st2; WHEN st2 => outc <= st3; WHEN st3 => outc <= st0; WHEN OTHERS => outc <=st0

38、; END CASE; end if;END PROCESS;END arc; 9、 根据一下四选一程序的结构体部分,完成实体程序部分(本题8分)LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL;entity MUX4 is port( s:in std_logic_vector(1 downto 0);d:in std_logic_vector(3 downto 0);y:out std_logic ); end MUX4; architecture behave of MUX4 isbeginprocess(s)beginif (s="00&qu

39、ot;) theny<=d(0); elsif (s="01") theny<=d(1); elsif (s="10") theny<=d(2); elsif (s="11") theny<=d(3); elsenull; end if;end process;end behave; 四、 编程题1、 用IF语句编写一个二选一电路,要求输入a、b, sel为选择端,输出q。(本题10分)Entity sel2 isPort (a,b : in std_logic;sel : in std_logic;q : o

40、ut std_logic);End sel2;Architecture a of sel2 isbeginif sel = 0 thenq <= a;elseq <= b;end if;end a;2、 填写完成一个8-3线编码器的真值表(5分),并写出其VHDL程序(10分)。8 -3线编码器真值表enby0y1y21000000000001000000100011000001000101000010000111000100001001001000001011010000001101100000001110xxxxxxxx高阻态entity eight_tri is port(b

41、:in std_logic_vector(7 downto 0);en:in std_logic;y:outstd_logic_vector(2 downto 0);end eight_tri;architecture a of eight_tri is signal sel: std_logic_vector(8 downto 0);beginsel<=en & b;y<= “000” when (sel=”100000001”)else“001” when (sel=”100000010”)else“010” when (sel=”100000100”)else“011

42、” when (sel=”100001000”)else“100” when (sel=”100010000”)else“101” when (sel=”100100000”)else“110” when (sel=”101000000”)else“111” when (sel=”110000000”)else“zzz”;end a;3、 试用VHDL描述一个外部特性如图所示的D触发器。(10分)参考程序如下:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY mydff IS PORT(CLK:IN STD_LOGIC; D:IN STD_LOGI

43、C; Q:OUT STD_LOGIC);END;ARCHITECTURE bhv OF mydff ISBEGIN PROCESS(CLK) BEGIN IF CLK'EVENT AND CLK='1' THEN Q<=D; END IF; END PROCESS;END;4、 下图为某一状态机对应的状态图,试用VHDL语言描述这一状态机。(18分)参考程序如下:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY FSM2 IS PORT ( clk,reset,in1 : IN STD_LOGIC; out1 : OU

44、T STD_LOGIC_VECTOR(3 downto 0);END;ARCHITECTURE bhv OF FSM2 IS TYPE state_type IS (s0, s1, s2, s3); SIGNALcurrent_ state,next_state: state_type;BEGIN P1:PROCESS(clk,reset) BEGIN IF reset = 1 THEN current_state <= s0; ELSIF clk='1' AND clk'EVENT THEN current_state <=next_state; END

45、IF; END PROCESS; P2:PROCESS(current_state) BEGIN case current_state is WHEN s0 => IF in1=1THEN next_state<=s1; ELSE next_state<=s0; END IF; WHEN s1 => IF in1='0'THEN next_state<=S2; ELSE next_state<=s1; END IF; WHEN s2 => IF in1='1'THEN next_state<=S3; ELSE ne

46、xt_state<=s2; END IF; WHEN s3 => IF in1='0'THEN next_state<=S0; ELSE next_state<=s3; END IF; end case; END PROCESS;p3:PROCESS(current_state) BEGIN case current_state is WHEN s0 => IF in1=1THEN out1<=“1001”; ELSE out1<="0000" END IF; WHEN s1 => IF in1='0&

47、#39;THEN out1<="1100" ELSE out1<="1001" END IF; WHEN s2 => IF in1='1'THEN out1<="1111" ELSE out1<="1001" END IF; WHEN s3 => IF in1='1'THEN out1<="0000" ELSE out1<="1111" END IF; end case; END PROCESS;

48、 end bhv; 5、 数据选择器MUX,其系统模块图和功能表如下图所示。试采用下面四种方式中的两种来描述该数据选择器MUX的结构体。(a) 用if语句。(b) 用case 语句。 (c) 用when else 语句。 (d) 用with select 语句。Library ieee;Use ieee.std_logic_1164.all;Entity mymux isPort (sel : in std_logic_vector(1 downto 0);- 选择信号输入Ain, Bin : in std_logic_vector(1 downto 0);- 数据输入Cout : out s

49、td_logic_vector(1 downto 0) );End mymux;Architecture one of mymux isBeginProcess (sel, ain, bin)BeginIf sel = “00” then cout <= ain or bin; Elsif sel = “01” then cout <= ain xor bin;Elsif sel = “10” then cout <= ain and bin;Else cout <= ain nor bin;End if;End process;End one;Architecture

50、 two of mymux isBeginProcess (sel, ain, bin)BeginCase sel iswhen “00” => cout <= ain or bin; when “01” => cout <= ain xor bin;when “10” => cout <= ain and bin;when others => cout <= ain nor bin;End case;End process;End two;6、 根据下面原理图,写出相应VHDL描述Library ieee;Use ieee.std_logic_

51、1164.all;Entity mycir isPort (ain , bin , clk : in std_logic;Cout : out std_logic);End mycir;Architecture one of mycir isSignal tb, tc;BeginProcess (clk) beginIf clkevent and clk = 1 thentb <= bin;end if;End process;Process (clk, tc) beginIf clk = 1 then cout <= tc;end if;End process;Tc <= ain xor tb;End one;7、 用两种以上的按照下图设计一个四选一多路选择器8、 使用元件例化语句编写下图所示的顶层文件,其中adder_1为一个由原理图输入法设计的完整的设计实体。3、已知4位全加器电路原理图如下,请用元件例化语句编写其程序。9、 在数字显示中,经常使用LED数码管,下面是采用共阳极的7段显示。BCD码输入与LED显示器对应的关系如下表:10、 在数字显示中,经常使用LED数码管,下面是采用共阳极的7段显示。BCD码输入与LED显示器对应的关系如下表:

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论