- 1、本文档共17页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
HDL语言的INOUT双向端口仿真暨三态门仿真
/u/1726672527
HDL语言的INOUT端口仿真暨三态门仿真
------VHDL 和 VerilogHDL
韦志恒 weizhiheng99@
关键词:inout 双向端口 三态门原理 inout 双向端口方针 三态门仿真
概述
三态门是 FPGA 编程开发中经常遇到的一个问题。一个典型的应用就是 TI 的 DSP 的
EMIF 总线。针对 HDL 语言的三态门应用示例和仿真示例在网上很多,但是往往只讲述一
种语言的,没有给予两种语言下三态门的一个综合评述,如讲述二者使用、仿真时的区别等。
特别是 VerilogHDL 语言下的三态门仿真,很多讲述都是语焉不详,包括使用 Force 语句等,
这些使用人手工干预的仿真方法明显违背了 EDA 自动化的宗旨,是使用者对其仿真方法不
明确的情况下的一种权益之计。
本文将使用一个 DSP EMIF 接口逻辑的例子,详细讲述:
(0)什么叫做 Z 态?三态的晶体管级实现是怎样的?
(1)VHDL 语言下同步、异步三态门的实现和仿真;
(2)VerilogHDL 语言下同步、异步三态门的实现和仿真;
(3)综述两种语言下仿真的要点。
一 双向管脚 INOUT 与三态门介绍
图 1 一个典型的 FPGA 的管脚
由图 1 可以看出,一个 FPGA 的管脚由一个输入缓冲器和一个三态输出缓冲器构成。
三态输出缓冲器,即三态门,是指逻辑门的输出除有高、低电平两种状态外,还有第三
种状态——高阻状态的门电路。高阻态相当于隔断状态(电阻很大,相当于开路)。 三态门
都有一个 EN 控制使能端,来控制门电路的通断。 可以具备这三种状态的器件就叫做三态。
准确来讲,三态的高阻态(Z 态)指的就是门的输出脚的两个驱动 TTL 或 MOS 管都处
于截止状态时的输出状态。参考图 2、图 3 和图 4 有更详细的理解。
1/9 韦志恒 weizhiheng99@
/u/1726672527
图 2 TTL 逻辑三态门的构成图
当 EN 端接低电平时,反相器输出一个高电平给 T1 ,使整个电路处于工作状态,这样,
电路将按与非关系把 A, B 接受到的信号传送到输出端, 使 Y 或为高电平,或为低电平。
当 EN 端接高电平时,反相器输出低电平给 T1,使 T1、T5 截止。另一方面,通过 D 把 T4
的基极电位钳在 1v 左右,使 T4 截止。由于 T4、T5 均截止,从输出端 Y 看进去,电路处
于高阻状态。
图 3 CMOS 三态门实现 A
对于 CMOS 的三态门,可以分析:当 EN 为 0 时,T1’和 T2’都处于导通状态,因此 T1
和 T2 能够在 A 为 1 或 0 时分别导通,因此 Y 输出 A 的状态;反之,当 EN 为 1 时,T1’
和 T2’都处于截止状态,T1 和 T2 自然也处于截止状态,因此 Y 就处于高阻状态。
图 4 CMOS 三态门实现 B— 利用传输门实现的三态门
2/9 韦志恒 weizhiheng99@
/u/1726672527
图 5 传输门的逻辑构成图
对于利用传输门实现的三态门,分析传输门的逻辑构成可知,当 S 即 EN 为 0 时,传输
门导通,反之,传输门的两个 MOS 管截止,门输出高阻态。
通过上面几种情况的介绍,希望大家能够深刻理解下面这句话:
高阻态(Z 态)指的就是门的输出脚的两个驱动 TTL 或 MOS 管都处于截
止状态时的输出状态。
图 6 文章中的所要仿真的三态总线
如图 7 所示,总线宽度设为 4bit。WE 和 RE 分别是读写使能信号,低有效。假设这是
一个和 DSP 的 EMIF 接口的逻辑模块,在 DSP 写(WE=0)时,将 dataInOut(EMIF)上的数
据从 dataOut 输出;当 DSP 读(RE=0)时,将 dataIn 上的数据送到 dataInOut(EMIF)上。约
定 WE 和 RE 在空闲时都为高,并且二者不能同时为低。[附:DSP 总线往往还有 CE 即片选
信号,这里为简单计,略去。]
二 VHDL 的三态门实现与仿真
library IEEE;
use IEEE.STD_LOGIC_1164.ALL;
use IEEE.STD_LOGIC_ARITH.ALL;
use IEEE.STD_LOGIC_UNSIGNED.ALL;
---- Uncomment the following library declaration if instantiating
---- any Xilinx primitives in this code.
--library UNISIM;
--use UNISIM.VComponents.all;
entity vhdlTBUF is
Por
文档评论(0)