EDA实验三VHDL语言设计简单电路

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验三VHDL 语言设计简单电路

一、实验目的

1、学习非门、与门、与非门、或门、或非门、异或门和异或非门的VHDL描述;

2、学习VHDL的文字规范描述、程序书写方法和Quartus II 6.0功能仿真;

二、实验内容

1、参考教材3.1.5节,用VHDL分别设计并仿真基本门电路1位全加器f_adder.vhd 和二选一数据选择器mux21.vhd。分析比较输出的波形仿真图并验证程序的正确性。

三、实验步骤

1。新建一个工程

2/新建vhdl文件

3/输入自己编写好的程序

4/设置顶层实体名,进行综合编译;

5/建立波形文件

6/导入引脚7/设计波形

8/编译

9得到结果波形

10根据波形图可以分析得出仿真结果符合图中所要求的结果

二选一数据选择器;

输入程序;

2/设置顶层实体名3/进行编译

4.创建波形文件

5.进行编译得出结果波形

6由图中波形可知,Y是二选一数据选择器的结果

实验内容二、检查下面程序,改正错误之处LIBRARY IEEE;

USE IEEE.STD_LOGIC_1164.ALL;

ENTITY shifter IS

PORT(d,clk:IN STD_LOGIC;

q:OUT STD_LOGIC_VECTOR(0 TO 3));

END shifter;

ARCHITECTURE#shifter OF shift IS

BEGIN

PROCESS(clk)

BEGIN

IF (clk'EVENT AND clk='1')THEN

q0: =d;

q1: =q0;

q2: =q1

q3: =q2;

END IF;

END PROCESS;

END#shifter;

改错后

程序二:

Use IEEE.STD_LOGIC_1164.ALL; Entity one-bit-adder is

Port(A:IN STD_LOGIC;

B:IN STD_LOGIC;

S:OUT STD_LOGIC;

C_OUT: OUT STD_LOGIC

)

END one-bit-adder;

Architecture sll of one_bit_adder is Begin

S:=A XOR BXOR C_IN;

C_out<=A and B or C_in and A xor B; END SLL

改错后:

程序三

LIBRARY IEEE;

Use ieee.std_logic_1164.all; Entity ABC is

Port(A,B,C:in std_logic;

F,Q:out std_logic); End;

Architecture ABC_arch of ABC is VARIABLE temp:intergen; Begin

Process(A,B,C)

BEIGN

If(A=’1’)AND(B=’1’)THEN

F:=”1”;

Elsif(B=’1’)and(C=’1’)then

F:=”1”;

Elsif(A=’1’)and(C=’1’)then

F:=”1”;

Else

F:=”0”;

End if;

Temp<=’1110101’;

Temp srl 1;

q<=temp;

end XYZ_arch;

相关文档
最新文档