电子设计自动化第6章

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第6章 常用接口控制电路
图6.3 8位可编程并行接口器件mPIO的项目实现及编译结果
第6章 常用接口控制电路
2.器件、引脚分配 根据上述编译结果,初选器件EPM240T100C3完全可以 满足本例的并口器件,且宏单元占有率仅为29%,端口占用 率仅为46%,容许以后对器件的控制逻辑进行一定的修改以 升级系统;所选PLD为3.3 V低功耗器件,TQFP封装面积较 小,速度等级较高,器件选择较合理,因此考虑到后续的制 版、布线等问题本例最终指定在项目中使用器件 EPM240T100C3,本例中并行接口mPIO的引脚分配与器件 指定如图6.4所示。
第6章 常用接口控制电路
图6.5 可编程并行接口mPIO的仿真输入
第6章 常用接口控制电路 在上述仿真激励作用下,并行接口mPIO的仿真输出波
形如图6.6所示。
图6.6 可编程并行接口mPIO的仿真结果
第6章 常用接口控制电路
2.时序分析 通过Processing菜单下的时间分析工具,得到8位并行接 口mPIO的时序分析结果如图6.7所示。其中输出延迟时间tpd、 数据建立时间tsu、时钟输出延迟时间tco与信号保持时间th 见图中的时间分析工具窗Classic Timing Analyzer Tool。
第6章 常用接口控制电路
图6.11 定时/计数电路工作模式2的工作时序
第6章 常用接口控制电路
计数器工作模式2的特点如下: (1) 计数器工作于模式2时可以实现重复计数,即计数器 响应脉冲的下降沿,执行减计数,计数值减到数值“1”时, 电路输出单周期的负脉冲;然后,电路自动重装计数值,计 数器输出回变为电平,开始新一轮的计数过程。 (2) 计数器连续工作,输出固定频率的脉冲。 (3) 当门控信号G为高电平时,允许计数;为低电平时, 暂停计数。
统计算机及各构成电路提供数据转换、传送通道,实现系统 内不同构成单元之间的动态数据交互。相对而言,并行接口 能够一次实现多位数据的传输交换,无需串并转换及并串转 换电路,具有结构简单、传输速度高等优势,是计算机控制 系统中应用较为广泛的一种数据接口。
第6章 常用接口控制电路
8255是一种典型的传统可编程并行接口器件,具有A、 B、C三个8位并行接口,根据需要,可通过编程配置为通用 输入/输出端口、带选通的输入/输出端口、双向传输端口等 工作模式,同时,端口C具备位操作功能,器件的端口A或 B工作于选通输入/输出或双向传输模式时,端口C的相关数 据位可用作选通或状态信号,辅助完成计算机与外设的数据 传输任务。8255器件具有A0、A1两条地址线,占用4个地址, 分别为A、B、C接口地址与控制字寄存器地址。
第6章 常用接口控制电路
图6.4 并行接口mPIO的引脚与器件分配
第6章 常用接口控制电路
图中的带阴影引脚为已分配信号的引脚,按逆时针顺序, 从引脚1到引脚77,端口上被分配的信号依次为并行接口的8 位双向数据端D、片选信号CS、地址信号A、控制计算机读 信号Rd、写信号Wr、A口外设响应nAckA、选通nStbA、输 入缓冲满标志nIbfA、输出缓冲满标志nObfA、端口PA、端 口PB、输出缓冲满标志nObfB、输入缓冲满标志nIbfB、外 设响应nAckB、选通nStbB。各信号与实现器件引脚之间的 详细对应关系如表6.1所示。
第6章 常用接口控制电路
图6.7 并行接口mPIO的时序分析及结果
第6章 常用接口控制电路
6.2 可编程定时/计数电路
6.2.1 逻辑功能与分析 1.功能分析 定时计数功能是计算机控制系统的基本功能单元,主要
为计算机及其他功能电路提供精确的时间控制、脉冲计数等 功能。8253是一种典型的可编程定时/计数电路,器件具有8 位外部CPU并行接口,内置0、1、2三个16位计数器。
第6章 常用接口控制电路
3) 模式1——可编程单脉冲发生器 定时/计数电路工作于模式1时的工作时序如图6.10所示。 电路工作于模式1时,门控信号的上升沿启动计数;计数开 始时,输出端变为低电平,在计数脉冲的下降沿上,计数器 执行减计数,减至“0”时,输出变为高电平。若门控信号 端出现上升沿,计数器装入计数初值,重新开始计数。
为便于器件描述,在编程实现时,程序的所有端口、变 量、信号定义以及进程设计与图6.2中的描述严格一致,电 路的VHDL实现程序如下。
第6章 常用接口控制电路 例6-1-1 8位可编程并行接口器件的VHDL描述:
第6章 常用接口控制电路
第6章 常用接口控制电路
第6章 常用接口控制电路
第6章 常用接口控制电路
第6章 常用接口控制电路
图6.8 可编程定时/计数电路的逻辑功能结构及信息交互
第6章 常用接口控制电路
在图6.8中,定时/计数器件通过8位的CPU读写控制电路, 接收外部计算机提供的地址、数据与控制信息,根据地址、 控制条件分别收发各定时/计数电路的模式控制字、计数值 等数据。各计数器电路在计数与I/O控制电路作用下,根据 外部计算机设定的计数参数、模式控制参数,实现器件要求 的定时/计数功能。同时,各计数器定时送出当前计数值, 供外部计算机查询。
第6章 常用接口控制电路
第6章 常用接口控制电路
6.1 可编程并行接口电路 6.2 可编程定时/计数电路 6.3 SPI总线接口器件 6.4 堆栈(STACK)电路 6.5 先入先出(FIFO)电路 习题与思考
第6章 常用接口控制电路
6.1 可编程并行接口电路
6.1.1 逻辑功能与分析 1.功能分析 数据接口电路是计算机控制系统的重要构成单元,为系
第6章 常用接口控制电路
考虑到兼容性与通用性,本例的可编程定时/计数电路 保留8253传统的8位CPU并行总线接口,同时内部保留3个16 位的定时/计数电路,依次命名为计数器0、1与计数器2。每 个计数器均具有6种工作模式,通过编程,各计数器可分别 工作于模式0~5。器件中同样设置了计数器0、1、2的计数 值专用寄存器与工作模式控制字寄存器,器件需占用4个地 址以及两条地址总线。本例的可编程定时/计数电路的逻辑 功能结构及其信息交互如图6.8所示。
第6章 常用接口控制电路
第6章 常用接口控制电路
第6章 常用接口控制电路
第6章 常用接口控制电路
6.1.3 电路实现 1.项目创建与编译 利用6.1.2节中的VHDL程序描述并行并口器件,将其作
为设计项目的顶层实体,实现8位并行接口电路。创建项目 时,项目名称、顶层实体名称保持一致,均设置为mPIO, 顶层实体的VHDL实现程序名称与顶层实体严格一致,命名 为mPIO.vhd。根据程序复杂程度,初选MAX II系列的CPLD 作为并口电路的实现器件,具体器件由开发系统根据编译结 果自行选择。
第6章 常用接口控制电路
其中,数据位D(5)和D(4)为计数器选择位,取值 “、D(1)、D(0)为相应计数器的工作模式选 择位,取值“000”~“101”依次对应计数器的工作模式 1~工作模式5。各计数器的缺省工作模式为模式0,若器件 未设定工作模式则按模式0工作。
(1) 写入计数值,计数值立即装入计数器;当门控信号 为“1”时,计数器响应CLK下降沿,做减运算,输出变为 低电平。当计数值减至0时,计数结束,输出变为高电平。
(2) 重新计数需重写计数值。 (3) 计数过程中写入新值,计数器按新值重新计数。 (4) 若门控信号为“0”,暂停计数;若门控信号为 “1”,计数继续。
第6章 常用接口控制电路
4) 模式2——频率发生器 定时/计数电路按模式2工作时的时序如图6.11所示。电 路工作于模式2时,计数器初始输出为高电平,如GATE为 高电平,计数器响应计数脉冲的下降沿,执行减计数。当计 数值减至“1”时,计数器输出端变为低电平并维持一个计 数脉冲周期;然后,计数器重新装入原始计数值,计数器输 出端输出一个周期的低电平后,重新变为高电平,开始新一 轮计数。
第6章 常用接口控制电路
5) 模式3——方波发生器 定时/计数电路工作于模式3时的工作时序如图6.12所示。 定时/计数电路工作于模式3时,如果门控信号G为高电平, 计数器响应计数脉冲的下降沿,执行减计数,输出端输出并 保持高电平;当计数值减至计数初值的1/2时,计数器输出 端转为低电平并保持;一次计数结束后,器件重装计数初值, 计数输出回复高电平,开始新一轮的计数过程。
第6章 常用接口控制电路
第6章 常用接口控制电路
6.1.4 电路测试及分析 1.功能仿真 如图6.5所示为8位可编程并行接口mPIO的仿真输入波
形文件,图中仿真栅格设置为20 ns,仿真总时长设置为2 μs。 图中的信号D为控制计算机双向数据总线的数据设置情况, Data为仿真工作中电路数据总线D上的实际信号变化状况; 同样,信号PA、PB为并行端口上的数据设置情况,响应的 信号rPA与rPB分别为端口PA、PB在电路仿真工作过程中的 实际信号变化状况。
第6章 常用接口控制电路
2.器件逻辑与功能结构 参考8255的典型功能与基本逻辑结构,对本例中的可编 程并行接口适当简化,得到整个器件的逻辑功能结构及其信 息交互如图6.1所示。
第6章 常用接口控制电路
图6.1 可编程并行接口器件的逻辑功能结构及其信息交互
第6章 常用接口控制电路
3.实现原理 参照前述的器件逻辑结构,本例通过多进程描述实现相 应的可编程并行接口。根据器件功能与数据处理过程,分别 设计专用电路的模式设置、数据写入、输出控制等进程,各 进程间的输入/输出与启动关系如图6.2所示。
第6章 常用接口控制电路 2) 模式0-计数结束中断 在定时/计数器件中,各计数器工作于模式0时的工作时
序如图6.9所示。
图6.9 定时/计数电路工作模式0的工作时序
第6章 常用接口控制电路
工作于模式0时,计数器响应计数脉冲,在脉冲的下降 沿上,计数器做减1运算,减至0值,计数结束。计数结束后, 计数值不能重装,如需重新计数,需重新写入计数值。门控 信号控制计数过程,若门控信号为“1”,计数启动;若为 “0”,计数暂停。计数器工作模式0的特点如下:
第6章 常用接口控制电路
2.工作模式及控制 本例的定时/计数电路共有6种工作模式,在实际系统中 实现定时或计数时,需首先通过外部计算机设定器件的工作 模式,才能启动电路实现预定功能。 1) 模式控制字 定时/计数电路的工作模式控制字共8位,按照功能分别 为工作模式选择位、计数器选择位与保留位三部分,如表 6.2所示。
第6章 常用接口控制电路
图6.2 并口器件的进程与启动关系
第6章 常用接口控制电路
6.1.2 电路的VHDL描述 参照图6.2所述的接口电路描述结构,设定本例的并行
接口的8位双向数据端口为D、两位地址输入端为A、器件片 选端为CS,器件的数据写入端、读出端分别定义为WR、 RD,且均为低电平有效。器件并行端口为PA、PB,均为8 位双向并行接口。
第6章 常用接口控制电路
如图6.3所示为按照上述方法创建的8位可编程并行接口 器件mPIO的实现项目及其编译结果。根据器件所需要的逻 辑复杂程度、I/O端口数量等资源状况,开发系统在MAX II 系列的CPLD中初步选择使用器件EPM240T100C3来实现电 路;器件提供240个逻辑宏单元,电路实际占用70个宏单元, 宏单元占用率为29%;器件提供80个I/O端口,占用37个端 口,端口占用率为46%。EPM240T100C3器件采用100脚 TQFP封装,速度等级为C3,相对较高。
第6章 常用接口控制电路
图6.10 定时/计数电路工作模式1的工作时序
第6章 常用接口控制电路
计数器工作模式1的特点如下: (1) 门控信号出现升沿,电路响应计数脉冲下降沿启动 计数,输出变为低电平;计数结束时,输出恢复高电平。 (2) 计数完成后,如门控信号端重新出现升沿,计数器 重装计数初值并重新计数。 (3) 若在计数过程中门控信号端出现升沿,则按计数初 值重新计数,输出端电平状态不变。 (4) 若在计数过程中写入新计数值,立即按新值计数。
相关文档
最新文档