实验13 VHDL 三态门
实验十三三态门、OC门的设计与仿真
一、实验内容
1.在Quartus II中用逻辑图和VHDL语言设计三态门,三态门的使能端对低电平有效。
2.在Quartus II中用逻辑图和VHDL语言设计一个OC门(集电极开路门)。
二、电路要求
三态门、OC门的逻辑图;
用VHDL语言设计三态门、OC门,用尽量多的方法来描述;
三、电路功能介绍
1.三态门,又名三态缓冲器(Tri-State Buffer)
用途:用在总线传输上,有效而又灵活地控制多组数据在总线上通行,起着交通信号灯的作用。
逻辑图
真值表
VHDL程序
行为描述:
结构体描述:
波形图
2.OC门,又名集电极开路门(opndrn)
用途:集电极开路门(OC门)是一种用途广泛的门电路。
典型应用是可以实
现线与的功能。
逻辑图
真值表
VHDL程序
行为描述:
结构体描述:
波形图。
第三章VHDL程序设计案例
第三章VHDL程序设计案例
37
带允许端的十二进制计数器
第三章VHDL程序设计案例
38
可逆计数器(加减计数器)
第三章VHDL程序设计案例
39
可逆计数器仿真结果:
第三章VHDL程序设计案例
40
例:六十进制(分、秒)计数器
第三章VHDL程序设计案例
end decoder;
architecture rtl of decoder is
begin
process(inp)
begin
outp<=(others=>’0’);
outp(conv_integer(inp))<=‘1’;
end process;
end rtl;
第三章VHDL程序设计案例
sel=000 sel =001 sel =010 sel =011 sel =100 sel =101 sel =110 sel =111
第三章VHDL程序设计案例
25
clock sig_in reset 同步复位 sig_out1 异步复位 sig_out2
第三章VHDL程序设计案例
26
二) 常用时序电路设计
1、触发器(Flip_Flop) 1)D触发器
第三章VHDL程序设计案例
27
异步置位/复位D触发器
第三章VHDL程序设计案例
1)“”序列发生器
第三章VHDL程序设计案例
49
第三章VHDL程序设计案例
50
第三章VHDL程序设计案例
51
仿真结果:
第三章VHDL程序设计案例
52
2)序列信号检测器的状态机设计与实现, 检测“”
三态门及其应用
G
A
Y
0
0/1
1
0/1
2、三态门的应用 (1)利用三态门构成数据总线分时传输信息。
G1 G2 A1
1 G1
A
Y
EN1 1 1
1 G2
011
EN
A2 Y
1 G1 B
EN0
1 G2
0
EN
11
01
E
10
多路开关
(b) 双向传输
总线
逻辑笔
G1 1
EN
E1 A1
G2 1
EN
E2 A2
Gn 1
… EN
分别接逻 辑En开An关
4G 12
4A 4Y 11
3G 10 3A 9
3Y
8
74LS125
1 1A 2 1Y 3 2A 4 2Y 5 3A 6 3Y 7 GND
Vcc
14
6A
13
6Y
12
5A
11
5Y
10
4A
9
4Y
8
74LS04
四、实验内容
1、74LS125三态门逻辑功能测试 将三态门的输入端、控制端分别接逻辑开关,输 出端接逻辑笔的输入插口。按下表测试三态门的 逻辑功能。
实验一 三态门及其应用
一、实验目的 1、学习中规模集成门电路的使用。 2、掌握三态门的逻辑功能。 3、学会三态门的应用。 二、预习要求 1、复习三态门的功能。
三、实验器材
1、数字电路实验箱 2、集成电路芯片:74LS125、74LS04
1 1G
2 1A
3 1Y
8.VHDL语言基础(六)
双向和三态电路设计
1
双向和三态电路信号赋值
1、三态门设计
三态门,简称TSL(Three-state Logic)门,是在普 通门电路的基础上,附加使能控制端和控制电路构成 的。三态门除了通常的高电平和低电平两种输出状态 外,还有第三种输出状态-高阻态。处于高阻态时,电 路与负载之间相当于开路。
双向和三态电路信号赋值
2、双向端口设计 用INOUT模式设计双向端口也必须考虑三 态的使用,因为双向端口的设计与三态端口的 设计十分相似,都必须考虑端口的三态控制。 这是由于双向端口在完成输入功能时,必须使 原来呈输出模式的端口呈高阻态,否则,待输 入的外部数据势必会与端口处原有电平发生 “线与”,导致无法将外部数据正确地读入, 从而实现“双向”的功能。
24
双向和三态电路信号赋值
课堂练习:
修改8位4通道三态总线驱动器的第一 个设计,使其能综合出正确的电路。
25
2
双向和三态电路信号赋值
1、三态门设计
3
双向和三态电路信号赋值
1、三态门设计 三态门用途之一是实现总线传输。总线 传输的方式有两种,单向总线和双向总线。 单向总线方式下,要求只有需要传输信息的 那个三态门的控制端处于使能状态,其余各 门皆处于禁止状态。
4
双向和三态电路信号赋值
三态门实现总线传输的原理:
11
双向和三态电路信号赋值
2、双向端口设计
双向端口设计实例
12
双向和三态电路信号赋值
2、双向端口设计
双向端口设计实例
13
双向和三态电路信号赋值
14
双向和三态电路信号赋值
2、双向端口设计
分析:
q定义为双向端口,而x定义为三态控制输出口。 在q履行输入功能时,前者没有将其设定为高 阻态输出,即执行语句:q<=“ZZZZZZZZ”,从 而没有使q成为真正的双向端口,导致了错误 的逻辑电路; 执行语句:q<=“ZZZZZZZZ”,使q 在IF 语句 中有了完整的条件描述,从而克服了时序元件 的引入。
实验三 0C门和三态门的应用(3)
图4.26
用OC门实现两组数据传输线路图
实验三 0C门和三态门的应用
三、实验内容及步骤
表4.8
M 0 1 0 1 A1 A2 A3 A4 1 0 0 0 0 0 1 1 1.集电极开路(OC)门实验
OC门数据分时传输
B1 B2 B3 B4 0 0 0 1 1 1 1 0 L1 L2 L3 L4
L1 A 1 M B1M A 1M B1M M 0, L1 B1 M 1, L1 A 1
实验三 0C门和三态门的应用
二、实验原理和电路
1.集电极开路门(OC门)
图4.19
Hale Waihona Puke 0C与非门逻辑符号 图4.20 0C与非门“线与”应用
实验三 0C门和三态门的应用
二、实验原理和电路
1.集电极开路门(OC门) RL的计算方法可通过图4.21来说明。如果n个OC门“线与” 上式中: 驱动N个TTL“与非”门,则负载电阻 RL可以根据“线与”的“与非” 门(OC)数目n和负载门的数目N来进行选择。 为保证输出电平符合逻辑关系,RL的数值范围为: IOH—OC门输出管的截止漏电流。 ILM—OC门输出管允许的最大负载电流。 IIL—负载门的低电平输入电流。 EC—负载电阻RL所接的外接电源电压。 IIH—负载门的高电平输入电流。 n—“线与”输出OC门的个数。 N—负载门的个数。 m—接入电路的负载门输入端个数。 RL的大小会影响输出波形的边沿时间,在工 作速度较高时,RL的值应尽量小,接近RLmin。
图4.21
实验三 0C门和三态门的应用
二、实验原理和电路
2.三态门
三态门有三种状态0、1、高阻态。处于高阻态时,电路与负载之 间相当于开路。图4.22(a)是三态门的逻辑符号,它有一个控制 N 端(又称禁止端或使能端) E, =1为禁止工作状态,Q呈高阻状态; EN =0为正常工作状态,Q=A。 EN
三态门和集电极开路(OC)门实验报告
4、验证 74LS03 集成电机开路门的逻辑功能
接上拉电阻
不接上拉电阻
A/V
B/V
Y/V
A/V
B/V
Y/V
4.93
4.93
0.17
4.93
4.93
0
4.93
0
12.15
0
0
0
0
4.93
12.15
0
4.93
0
0
0
12.15
4.93
0
0
由上表可得,当不接上拉电阻时,Y 端始终为 0;当接上拉电阻时,Y 当且仅
ENi
Ai/V
Yi/V
0
4.92
3.65
0
0
0.12
当 EN=0V 时,Y 端的逻2、用 74LS125 三态门构成 1 位 2 选 1 数据选择器
S0
D0
D1
Y
0
1KHZ
1
3V
1KHZ, 2.8V
5V
4.2V
由上表可知,当 S0=0 时,Y=D0;当 S0=1 时,Y=D1。
• 分别在输出端接上拉电阻和不接上拉电阻的情况下,测量 74LS03的一个逻辑门的逻辑关系,并填入下表
• 注意:芯片电源电压必须是 5V!若接 12V 将导致器件烧毁!
5、74LS03 实现线与、电平转换功能
• 按右图VCC接5V,测量输入端A,B及 输出端Y 的电压值,填入下表
• 若将多个相同集电极开路门的输出连在 一起接上拉电阻,则只要有输出门为低 电平,输出端就为低电平,逻辑功能上 是与的关系,称为线与
2、用 74LS125 三态门构成 1 位 2 选 1 数据选择器
1. 用74LS125按右图连接电路
vhdl课程设计三态门
vhdl课程设计三态门一、教学目标通过本节课的学习,学生应掌握三态门的基本原理和VHDL语言的编程方法,能够独立完成三态门电路的设计和验证。
具体目标如下:1.了解三态门的基本原理和功能;2.掌握VHDL语言的基本语法和编程方法;3.熟悉三态门电路的设计流程和验证方法。
4.能够运用VHDL语言编写三态门电路的代码;5.能够使用相关工具对三态门电路进行仿真和验证;6.能够分析并解决三态门电路设计中遇到的问题。
情感态度价值观目标:1.培养学生的创新意识和团队协作精神;2.增强学生对电子工程领域的兴趣和热情;3.培养学生严谨的科学态度和良好的沟通能力。
二、教学内容本节课的教学内容主要包括以下几个部分:1.三态门的基本原理和功能;2.VHDL语言的基本语法和编程方法;3.三态门电路的设计流程和验证方法;4.实际案例分析和相关练习。
具体的教学大纲如下:1.引言:介绍三态门的概念和应用场景;2.三态门的基本原理:讲解三态门的工作原理和电路结构;3.VHDL语言基础:介绍VHDL语言的基本语法和编程方法;4.三态门电路设计:讲解三态门电路的设计流程和注意事项;5.电路验证与仿真:介绍如何使用相关工具对三态门电路进行仿真和验证;6.案例分析与练习:分析实际案例,并进行相关练习。
三、教学方法为了提高学生的学习兴趣和主动性,本节课将采用以下教学方法:1.讲授法:讲解三态门的基本原理和VHDL语言的基本语法;2.讨论法:引导学生进行小组讨论,共同解决问题;3.案例分析法:分析实际案例,让学生更好地理解三态门电路的设计和验证;4.实验法:引导学生动手实践,完成三态门电路的设计和验证。
四、教学资源为了支持教学内容和教学方法的实施,丰富学生的学习体验,我们将准备以下教学资源:1.教材:提供相关教材,为学生提供理论知识的学习参考;2.参考书:提供相关参考书,帮助学生深入了解三态门电路的设计和验证;3.多媒体资料:制作课件和教学视频,为学生提供直观的学习资源;4.实验设备:准备实验设备,让学生能够动手实践,提高实际操作能力。
数电实验之三态输出门与集电极开路门
三态输出门与集电极开路门一、实验目的1.学习中规模集成门电路的使用。
2.掌握三态输出门的逻辑功能。
3.学会三态输出门的应用。
二 实验原理三态门是一种特殊的门电路,它与普通的门电路有所不同,它的输出端除了通常为高、低电平两种状态外,还有第三种输出状态—高阻状态,处于高阻状态时,电路与负载之间相当于开路。
它有一个控制端(禁止端或使能端)。
三态门按逻辑功能及控制方式来分有各种不同类型,本实验所采用的型号是74LS125为三态输出四总线缓冲器。
三态门主要用途之一是分时实现总线传输,即用一个传输通道(总线),以选通方式传送多路信息。
电路中将若干个三态门输出端直接接在一总线上,使用时,要求只有一个传输信息的TS 三态输出门控制端处于使能,而其余各TS 门的控制端均处于禁止态。
因为由理论课学习我们知道TS 门输出端不允许并联使用。
所以显然不能同时有两个或两个以上的TS 门的控制端处于使能。
2. 本实验所用OC 与非门(集电极开路门)型号为74LS03(2输入四与非门)。
OC 与非门的输出管的集电极是悬空的,工作时输出端必须通过一只外接电阻R L 和电源V CC ’相连接,以保证输出电平符合电路要求。
OC 门的应用主要有以下三个方面1、 利用电路的“线与”特性,可方便的完成某些特定的逻辑功能。
如下图13.2(A )所示,将两个OC 与非门输出端直接并联在一起,则它们的输出Y = F A +F B = 21A A ·21B B =2121B B A A即把两个或两个以上OC 与非门“线与”后,可完成“与或非”的逻辑功能。
2、实现多路信息采集,使两路以上的信息共用一个传输通道(总线)。
3、实现逻辑电平的转换,以推动荧光数码管、继电器、MOS 器件等多种数字集成电路。
图13.1 OC 与非门内部逻辑图(A)(B )图13.2OC 门输出并联运用时负载电阻R L 的选择:图13.1(B )中由n 个OC 与非门“线与”驱动有m 个输入端的N 个TTL 与非门,为保证OC 与非门输出电平符合逻辑要求,负载电阻R L 阻值的选择范围为;R L (max ) =IHH H CCmInI V V --'00R L (min ) =ILLML CC I m I V V '--'0式中:I 0H :OC 门输出管截止时(输出高电平)的漏电流(约50uA ) I LM :OC 门输出低电平时允许最大灌入负载电流(约20mA ) I IH :负载门高电平输入电流(<50uA)I IL:负载门低电平输入电流(<1.6m A=V CC’:R L外接电源电压n:OC门个数N:负载门个数m:接入电路的负载门输入端总个数。
三态门(总线)
三态门(总线)2.2 三态门1.基本原理在数字系统中,常常需要把多个门电路的输出端连接在⼀起,⽐如接到数据总线上。
但⼀般的门电路都只有两个输出状态:输出⾼电平状态与输出低电平状态。
把这些门电路的输出端连接在⼀起,在某⼀个时刻,可能会出现⼀个以上的门电路的输出同时为⾼电平状态或者低电平状态,这样就会引起逻辑电平的不确定。
使⽤三态门可以很好地解决这个问题。
三态门电路有三个输出状态:输出⾼电平状态、输出低电平状态,以及输出⾼阻状态。
当三态门电路输出为⾼阻状态时,三态门的输出端相当于开路,对总线上连接的其它器件没有影响。
我们可以利⽤三态门的这个优点对需要通过总线的数据进⾏分时传送,这样数据的传送就不会出现混乱了。
简单的三态门电路如图2.2.1a所⽰,图2.2.1b是它的代表符号。
其中EN为⽚选信号输⼊端,A为数据输⼊端,L为数据输出端。
图2.2.1 三态门电路(a) 电路图(b) 代表符号当EN=0时,TP2和TN2同时导通,为正常的⾮门,输出L=-A;当EN=1时,TP2和TN2同时截⽌,输出为⾼阻状态。
所以,这是⼀个低电平有效的三态门。
三态门的真值表如表2.2.1所⽰。
由真值表可以得出逻辑表达式:当EN=0时,L=-A;当EN=1时,L=Z。
其中Z表⽰⾼阻状态。
表2.2.1 三态门的真值表2.实现⽅案通过FPGA来实现三态门的功能有以下⼏种⽅式:(1) ⽤case语句和if….else语句来实现。
先判断EN是否等于1,如果EN 等于1,则输出端L=Z;如果不等于1,再判断A是否等于0,如果等于0,则输出端L=1,如果不等于0,则输出端L=0。
(2) ⽤if….else语句来实现。
先判断EN是否等于1,如果EN等于1,则输出端L=Z;如果不等于1,则输出L=~A。
(3) ⽤“?:”语句来实现,输出端L=EN ? 1’bZ : (~A)。
3.FPGA的实现下⾯以第三种⽅案为例来进⾏FPGA的实现。
(1) 创建⼯程并设计输⼊①在E:\project\⽬录下,新建名为notif的新⼯程器件族类型(Device Family)选择“Virtex2P”,器件型号(Device)选“XC2VP30 ff896 -7”,综合⼯具(Synthesis Tool)选“XST (VHDL/Verilog)”,仿真器(Simulator)选“ISE Simulator(VHDL/Verilog)”。
实验三 三态门
实验三三态门一、实验目的1.熟悉计三态输出门的逻辑功能和使用方法。
2.掌握用三态门构成公共总线的特点和方法。
二、实验器材1.数字逻辑实验箱2.双踪示波器3.与非门74LS00(1片)、三态门74LS125(1片)三、预习要求1.复习三态门有关知识,了解其逻辑功能及管脚。
2.复习三态门实现总线传输的方法。
四、实验原理1.三态门(TS)三态门有三种输出状态:高电平输出、低电平输出和高阻输出状态。
常见的三态门有控制端高电平有效和低电平有效两种类型。
三态输出门除了有多输入三态与非门,还经常做成单输入、单输出的总线驱动器,并且输入与输出有同相和反相两种类型。
例如:74LS125就是单输入、单输出的控制端低电平有效的同相三态输出门。
即E=0时,Y=A;E=1时为高阻态。
三态门主要用途之一是实现总线传输,各三态门输出端可以并联使用一个传输通道,以选通的方式传送多路信息。
使用时注意输出端并接的三态门只能有一个处于工作状态(E=0)。
其余必须处于高阻状态(E=1)。
三态门驱动能力强,开关速度快,在中大规模集成电路中广泛采用三态门输出电路,作为计算机和外围电路的接口电路。
如图2-1为三态门逻辑符号。
A B图2-1 三态门逻辑符号五、实验内容1.三态门逻辑功能测试:查出三态门74LS125的引脚图,验证各三态门逻辑功能。
按图2-1(A)在实验箱上连线,先接上电源和地线,然后用逻辑电平控制输入端A和使能端E,用L显示输出Y的状态,实验结果填入下表:表2-1 74LS125逻辑功能表:2.用三态门74LS125构成公共总线:要求:用三个三态门构成一条公共总线,参考图21(B)。
使三个输入端状态分别为“0”、“1”、CP,观测公共总线输出状态。
(1)按上述要求画出公共总线的逻辑图。
(2)在实验箱上连线:A1、0(GND),A2、1(Vcc),A3、CP(1KHz或100KHz信号源输出),三个使能端E1……E3分别由三个逻辑开关控制其电平的高低。
数字电路设计实验vhdl语言实验报告
实验一秒表计数器的设计实验目的:本实验通过设计四种频率可选的数字时钟系统, 以达到熟悉VHDL 语言编程语法、设计思路和熟练掌握Quartus II 开发软件的目的。
二、实验内容:该数字时钟的显示格式如下所示: HH: MM: SS, 其中HH表示时计数的两位, MM表示分计数的两位, SS表示秒计数的两位。
本系统输入信号分别为复位信号rst(高有效)、sel(两位信号, 分别可以选择2分频、4分频8分频和16分频)、clk_in(时钟信号)、8位时输出、8位分输出、8位秒输出(其中高4为表示对应的高半字节、低4位表示的低半字节, 譬如当时间为08:59:30时, 时输出为”0000_1000”,分输出为”0101_1001”,秒输出为”0011_0000”)。
该时钟系统可以通过Sel信号时钟运行的快慢。
三、实验流程:通过对实验内容的分析: 可以考虑时钟系统的可由三部分组成: 1.分频器:分频器为时序电路并且通过《数字电路》理论课程的学习可知由计数器来实现, 同学可以回想一下实验1中是如何实现计数器电路的设计), 该模块主要产生2.4.8、16分频的时钟信号;2.多路选择器:在VHDL中多路选择器为组合逻辑, 可以有多种实现方法, 在这里主要选用了case语句来实现。
该模块的作用是从分频器中根据Sel信号选择适当的时钟信号;3.时钟控制器:该模块比较复杂, 主要实现功能是实现一个24小时的计时。
当时间为00:00:59的时候下一个时钟到来时状态的跳变为00:01:00, 计时中多数计数为加1操作, 有几个特殊状态需要重点考虑:当时间产生分进数时, 譬如上例。
当时间产生时进数时, 譬如00:01:59时刻的下一个状态为00:02:00;当时间产生时进数时, 譬如00:59:59是个的下一个状态为01:00:00。
当时间产生天进数时, 譬如23:59:59的下一个状态为00:00:00。
四、仿真要求:1、本次试验的结果全部采用功能仿真分析:在结果图中能够看到让复位信号rst为有效的情况下, 所有的输出为00:00:00;2.当频率选择输出分别为”00”、”01”、”10”、”11”时秒为的进数分别包含2.4.8、16倍clk_in的时钟周期;3.可以看到完整的计时周期00:00:00->23:59:59->00:00:00。
