增强型并行端口EPP扩展移位寄存器输出接口的方 - 数模混合 -
来源: 网络用户发布,如有版权联系网管删除 2018-09-28
【摘 要】 基于EPP协议的特点,应用复杂可编程逻辑器件(CPLD)开发了移位寄存器输出接口。介绍了EPP协议和接口的Verilog HDL描述。
关键词:增强型并行端口(EPP),移位寄存器输出,CPLD,Verilog HDL
1 引 言
由于ISA总线插槽在台式机中逐渐减少,甚至消失,微机控制系统中越来越多地利用并行口进行数据传送。增强型并行端口EPP(Enhanced ParallelPort)不但与传统的标准并行端口(SPP)兼容,而且传送速率可以达到500k~2Mbyte/s(相当于ISA总线的传送速率),特别是EPP提供了硬件握手信号,为软硬件设计提供了方便。因此,工业控制中基于EPP的应用日益广泛。
一些诸如热印头,LED显示驱动器等点阵控制器件,由于控制点数多,一般使用移位寄存器接收数据。若采用并行I/O口产生移位寄存器输出数据和同步脉冲,通常需要多个I/O读写周期。这里介绍一种利用EPP并行端口扩展移位寄存器输出接口的方案,可在一个I/O读写周期完成一个字节的输出,达到高速传送的效果。
2 EPP协议简介
EPP协议是IEEE1284中规定的一种双向传送并行接口,它保持了与标准并行口(SPP)的兼容性。表1是SPP和EPP的引脚定义及其功能。
EPP寄存器占用8个相邻的I/O地址空间。基地址+0~+2与SPP相同,分别为SPP的数据寄存器、状态寄存器和控制寄存器,对它们进行I/O操作不会产生EPP读写周期。基地址+3为EPP地址口,基地址+4为EPP数据口,对他们进行I/O操作就可以产生EPP地址或数据的读写周期。
3 移位寄存器输出接口的实现
本文提出的EPP并行口扩展移位寄存器输出接口方案,主要用了Wait握手信号。在移位寄存器移位过程中,保持Wait信号为低,阻止EPP周期结束,使移位输出在一个EPP周期内完成。另外使用一个计数器来控制移位寄存器移位,保证一个EPP周期内只发生8个移位动作,以防数据出错。
硬件电路使用Altera公司的复杂可编程逻辑器件(CPLD)来实现。其结构用Verilog HDL语言描述。其中,nCs为片选信号,由地址译码产生(地址输出及译码的描述省略),Clk为外部时钟源,DataOut和ClkOut分别为输出数据和输出同步脉冲。为防止系统超时,Clk应有较高的频率,大约为10 MHz左右。接口的Verilog HDL描述如下:
4 结束语
用EPP并行口扩展移位寄存器输出接口,充分利用了EPP的握手信号,因而在软件设计时不需要对移位寄存器的状态进行查询,只需对基地址+4端口进行写操作,即可完成一个字节的移位寄存器输出,简化了软件编程,实现了高的传送速率(传送速率可达8Mbit/s)。以此为例还可扩展出多路开关量通道等接口。
参考文献
2 宋万杰等.CPLD技术及其应用.西安:西安电子科技大学出版社,1999
3 J.Bhasker.Verilog HDL硬件描述语言.北京:机械工业出版社,2000
查看评论 回复