EDA一位二进制全减器设计.doc
文本预览下载声明
实验一 1位二进制全减器设计
一、实验目的
实验八 序列信号发生器和序列信号检测器
实验八 序列信号发生器和序列信号检测器
实验八 序列信号发生器和序列信号检测器
实验八 序列信号发生器和序列信号检测器
1.熟悉EDA技术开发流程;
2.熟悉Quartes II集成开发软件的使用;
3.初步熟悉PH-1V型实验装置的使用;
4.学习用原理图输入法和文本输入法进行简单的数字电路设计。
二、实验要求
1.用文本输入法和原理图输入法分别实现一位二进制全减器的设计。
2.进行时序波形仿真,并分析仿真波形图
3.在仿真正确的情况下,对1位二进制全减器分别下载到实验箱中做硬件测试。
三、设计思路/原理图
(1)一位全减器的设计
表一、半减器真值表(so差值 co 向高位的借位) 表二
a b so co 0
1
0
1 1 0
1 1
1 0
0 0 ain bin cin sub cout 0 0 0 0 0 0 0 1 1 1 0 1 0 1 1 0 1 1 0 1 1 0 0 1 0 1 0 1 0 0 1 1 0 0 0 1 1 1 1 1
表二、全减器真值表(cin低位来的借位 cout向高位的借位)
根据半减器真值表可以用文本输入法(VHDL语言)设计出半减器,,再根据全减器的真值表通过文本输入法(VHDL语言)调用两个半减器构成一个全减器。
此外还可以通过原理图输入法设计出半减器,然后通过两个半减器和一个或门构成一个全减器。实验原理图如下
(1)由半减器真值表可画出其原理图如下:
将半减器设计成可调用元件如下:
(2)由全减器的真值表可以画出原理图如下:
四、实验程序
(1)一位半减器文本描述
LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL;
ENTITY h_sub IS
PORT(a,b:IN STD_LOGIC;
co,so:OUT STD_LOGIC);
END ENTITY h_sub;
ARCHITECTURE fh1 OF h_sub is
BEGIN
so=NOT(a XOR (NOT b));co=(NOT a)AND b;
END ARCHITECTURE fh1;
(2)或门逻辑描述
LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL;
ENTITY or2a IS
PORT(a,b:IN STD_LOGIC;
c:OUT STD_LOGIC);
END ENTITY or2a;
ARCHITECTURE one OF or2a IS
BEGIN
c=a OR b;
END ARCHITECTURE one;ne;
(3)一位二进制全减器顶层文件描述
LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL;
ENTITY f_sub IS
PORT (ain,bin,cin:IN STD_LOGIC;
cout,sub:OUT STD_LOGIC);
END ENTITY f_sub;
ARCHITECTURE fd1 OF f_sub IS
COMPONENT h_sub—调用半减器的声明语句
PORT(a,b:IN STD_LOGIC;
co,so:OUT STD_LOGIC);
END COMPONENT;
COMPONENT or2a—调用或门的声明语句
PORT(a,b:IN STD_LOGIC;
c:OUT STD_LOGIC);
END COMPONENT;
SIGNAL d,e,f:STD_LOGIC;
BEGIN
u1:h_sub PORT MAP(a=ain,b=bin,co=d,so=e);--例化语句
u2:h_sub PORT MAP(a=e,b=cin,co=f,so=sub);
u3:or2a PORT MAP(a=d,b=f,c=cout);
END ARCHITECTURE fd1;
实验步骤
1、建立工作库文件和编辑设计文件
(1)在D盘新建一个文件夹用来保存工程文件
显示全部