数字电路与逻辑设计实验报告
实验二 三态门,OC门的设计与仿真
一、实验目的
熟悉三态门、OC门的原理,用逻辑图和VHDL语言设计三态门、OC门,并仿真。
二、实验内容
1.用逻辑图和VHDL语言设计三态门,三态门的使能端对低电平有效。 2.用逻辑图和VHDL语言设计一个OC门(集电极开路门)。
三、实验原理
1.三态门,又名三态缓冲器(Tri-State Buffer)
用途:用在总线传输上,有效而又灵活地控制多组数据在总线上通行,起着
交通信号灯的作用。
功能:三态逻辑输出三种不同的状态,其中两种状态常见的逻辑1和逻辑0,第三个状态高阻值,称为高阻态,用Hi-Z或者Z或z表示三态缓冲器比普通缓冲器多了一个使能输入EN,即连接到缓冲器符号底部的信号。从真值表可以看出,如果是EN=1.则OUT等于IN,就像普通缓冲器一样。但是当EN=0时,无论输入的值什么,输出结果为高阻态(Hi-Z)。 逻辑图
真值表
EN 0 0 1 1 波形图
第 1 页 共 8 页
A 0 1 0 1 OUT Hi-Z Hi-Z 0 1 数字电路与逻辑设计实验报告
2.OC门,又名集电极开路门(opndrn)
用途:集电极开路门(OC门)是一种用途广泛的门电路。典型应用是
可以实现线与的功能。
逻辑图
真值表
A 0 1
波形图
B 0 Hi-Z
第 2 页 共 8 页
数字电路与逻辑设计实验报告
四、实验方法与步骤
实验方法:
采用基于FPGA进行数字逻辑电路设计的方法。
采用的软件工具是QuartusII软件仿真平台,采用的硬件平台是Altera EPF10K20TI144_4的FPGA试验箱。
实验步骤:
1、编写源代码。打开QuartusⅡ软件平台,点击File中得New建立一个文件。编写的文件名与实体名一致,点击File/Save as以“.vhd”为扩展名存盘文件。VHDL设计源代码如下: 三态门: LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL; ENTITY tri_s IS PORT (
enable,datain:IN STD_LOGIC; dataout:OUT STD_LOGIC ); END tri_s;
ARCHITECTURE bhv OF tri_s IS BEGIN
PROCESS (enable,datain) BEGIN
IF enable='1' THEN dataout<=datain; ELSE dataout<='Z'; END IF; END PROCESS; END bhv;
第 3 页 共 8 页
数字电路与逻辑设计实验报告
OC门: LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL; ENTITY oc IS PORT(
datain:IN STD_LOGIC; dataout:OUT STD_LOGIC ); END oc;
ARCHITECTURE bhv OF oc IS BEGIN
PROCESS (datain) BEGIN
IF (datain='0') THEN dataout<='0'; ELSE dataout<='Z'; END IF; END PROCESS; END bhv;
2、按照实验箱上FPGA的芯片名更改编程芯片的设臵。操作是点击Assign/Device,选取芯片的类型,一般选“Altera的EPF10K20TI144_4” 3、编译与调试。
确定源代码文件为当前工程文件,点击Complier进行文件编译。编译结果有错误或警告,则将要调试修改直至文件编译成功。 4、波形仿真及验证。
在编译成功后,点击Waveform开始设计波形。点击“insert the node”,按照程序所述插入三个节点。设臵参数:选择菜单Edit->End Time和Edit ->Gird Size设臵结束时间和网格大小。然后输入信号激励,可生成波形图,最后点击保存按钮保存。
第 4 页 共 8 页
数字电路与逻辑设计实验报告
5、时序,功能仿真。
选择菜单Assignments->Settings命令,易可以选择时序仿真或功能,。
6、FPGA芯片编程及验证。
(1)将下载电缆线与USB接口(DDA_I型实验板)连接,打开实验平台电源开关。 (2)选择Tools->Programmer命令,单击Hardware Setup按钮,单击Add Hardware按钮,在Hardware type下拉列表中选择ByteBlassMV or ByteBlasterII项,Port为LPT1.单击OK确认设臵后单击Close按钮,完成电缆配臵。
(3)完成配臵后,单击Start按钮,Progress栏中出现100%,下载成功。 (4)初始化电路,根据设臵好的管脚资源操作实验,完成异或门测试。
五、实验结果与分析
1、编译过程
a)编译过程、调试结果:
选择菜单Processing-->Compiler Tool命令,弹出全编译工具窗口,单击Start按钮,执行全编译。根据Message窗口中警告和错误信息提示,修改电路重新编译直至编译成功。
b)结果分析及结论 编译成功。 2、功能仿真
a) 功能仿真过程
选择菜单Assignments->Settings命令,弹出的仿真设计对话框,点击Simulator Settings选项后,在右侧的Simulator mode下拉列表中选择Fuctional,其他按默认设臵,单击OK按钮完成设臵。 b) 及仿真结果 三态门功能仿真图
OC门功能仿真图
第 5 页 共 8 页