8.VHDL语言基础(六)

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
3、三态总线设计
8位4通道三态总线驱动器设计一
17
双向和三态电路信号赋值
3、三态总线设计
8位4通道三态总线驱动器设计一
18
双向和三态电路信号赋值
3、三态总线设计
8位4通道三态总线驱动器设计一
19
双向和三态电路信号赋值
3、三态总线设计
8位4通道三态总线驱动器设计二
20
双向和三态电路信号赋值
3、三态总线设计
双向和三态电路信号赋值
2、双向端口设计 用INOUT模式设计双向端口也必须考虑三 态的使用,因为双向端口的设计与三态端口的 设计十分相似,都必须考虑端口的三态控制。 这是由于双向端口在完成输入功能时,必须使 原来呈输出模式的端口呈高阻态,否则,待输 入的外部数据势必会与端口处原有电平发生 “线与”,导致无法将外部数据正确地读入, 从而实现“双向”的功能。
VHDL语言基础 (六)
双向和三态电路设计
1
双向和三态电路信号赋值
1、三态门设计
三态门,简称TSL(Three-state Logic)门,是在普 通门电路的基础上,附加使能控制端和控制电路构成 的。三态门除了通常的高电平和低电平两种输出状态 外,还有第三种输出状态-高阻态。处于高阻态时,电 路与负载之间相当于开路。
2
双向和三态电路信号赋值
1、三态门设计
3
双向和三态电路信号赋值
1、三态门设计 三态门用途之一是实现总线传输。总线 传输的方式有两种,单向总线和双向总线。 单向总线方式下,要求只有需要传输信息的 那个三态门的控制端处于使能状态,其余各 门皆处于禁止状态。
4
双向和三态电路信号赋值
三态门实现总线传输的原理:
15
双向和三态电路信号赋值
3、三态总线设计 为构成芯片内部的总线系统,必须设计 三态总线驱动器电路(注意,大部分FPGA 中 无法形成三态电路),这可以有多种表达方法, 但必须注意信号多驱动源的处理问题。下面 两个例程都试图描述一个 8位4通道的三态总 线驱动器,但其中一个程序是错误的。
16
双向和三态电路信号赋值
11
双向和三态电路信号赋值
2、双向端口设计
双向端口设计实例
12
双向和三态电路信号赋值
2、双向端口设计
双向端口设计实例
13
双向和三态电路信号赋值
14
双向和三态电路信号赋值
2、双向端口设计
分析:
q定义为双向端口,而x定义为三态控制输出口。 在q履行输入功能时,前者没有将其设定为高 阻态输出,即执行语句:q<=“ZZZZZZZZ”,从 而没有使q成为真正的双向端口,导致了错误 的逻辑电路; 执行语句:q<=“ZZZZZZZZ”,使q 在IF 语句 中有了完整的条件描述,从而克服了时序元件 的引入。
wenku.baidu.com
双向和三态电路信号赋值
1、三态门设计
6
双向和三态电路信号赋值
1、三态门设计
7
双向和三态电路信号赋值
8 位三态控制门电路
8
双向和三态电路信号赋值
1、三态门设计
9
双向和三态电路信号赋值
1、三态门设计
注 意:
由于'Z'在综合中是一个不确定的值,不同的综合 器可能会给出不同的结果,因而对于VHDL 综合前的 行为仿真与综合后功能仿真结果也可能是不同的,有 时虽然能通过综合,但却不能获得正确的时序仿真结 果,所以建议尽可能不要将'Z'用作比较值,或用作表 达式或操作数; 虽然对于关键词,VHDL 语法规定不区分大小写, 但当把表示高阻态的'Z'值赋给一个数据类型为 STD_LOGIC 的变量或信号时,'Z'必须是大写,这是 因为在IEEE 库中对数据类型STD_LOGIC 的预定义 已经将高阻态确定为大写'Z'。 10
24
双向和三态电路信号赋值
课堂练习:
修改8位4通道三态总线驱动器的第一 个设计,使其能综合出正确的电路。
25
一般门与其它电路的连接,无非是两种状态,1或者0。 在比较复杂的系统中,为了能在一条传输线上传送不同部件 的信号,通常采用了总线连接的方式,因为总线只允许同时 只有一个使用者,三态门作为一种扩展逻辑功能的输出级, 它的高阻态,也就是高阻抗,相当于该门和它连接的电路处 于断开的状态,相当于没有接在总线上,不影响其它器件的 工作(因为实际电路中你不可能去断开它,所以设置这样一个 状态使它处于断开状态)。 如果你的设备端口要挂在一个总线上, 必须通过三态缓冲 器。因为在一个总线上同时只能有一个端口作输出, 这时其他 端口必须在高阻态, 同时可以输入这个输出端口的数据。 所以 你还需要有总线控制管理,访问到哪个端口,那个端口的三 态缓冲器才可以转入输出状态。这是典型的三态门应用,如 5 果在线上没有两个以上的输出设备, 当然用不到三态门。
8位4通道三态总线驱动器设计二
21
双向和三态电路信号赋值
22
双向和三态电路信号赋值
...
23
双向和三态电路信号赋值
3、三态总线设计
分析:
设计一中除了input0外,其余3个8位输入端都悬空 没能用上,显然是因为恰好将input0安排作为进程中 output的最后一个激励信号的原因; 设计二中在结构体中使用了4个并列的WHENELSE并行语句,结构体中的每一条并行语句都等同 于一个独立运行的进程,它们独立监测各并行语句中 作为敏感信号的输入值ctl; 设计二表明,要设计出能产生独立控制的多通道的 电路结构,必须使用并行语句结构。
相关文档
最新文档